Weekend Prosjekt: Konfigurer Keyboard Into Submission

De fleste av oss tar våre tastaturer for gitt når de jobber jevnt; kanskje vi kjemper for litt med å finne den riktige tastaturoppsettet når du gjør en fersk Linux installere, men når OS er oppe og går de en tendens til å være ute av vår måte. Bortsett fra de en eller to taster som aldri helt gjøre det de er ment til. Fra programmet " hurtigtaster " på full-størrelse eller multimedietastatur til de særegne tilleggene sported av noen bærbare og netbook-modeller, er det bundet til å være en eller to spesialtaster som trenger tilpasning. Du trenger litt tid og et par ekstra terminal vinduer å konfigurere dem til underkastelse.

Keyboard Madness Modern Linux-desktop-miljøer gjør den grunnleggende prosessen tastaturet konfigurasjon langt enklere enn det pleide å være, men det er fortsatt forvirrende . GNOME, for eksempel, deler konfigurasjon mellom to grafiske verktøy: gnome-tastatur-egenskaper (lansert fra System - > Innstillinger - > Tastatur menyen oppføring), og gnome-hurtigtasten-egenskaper (finnes på System - > Innstillinger - > Tastatursnarveier). KDE legger mer av sine tastaturkonfigurasjonsmuligheter på ett sted, KControl, men den deler dem også inn i kategorier som gir mening bare for utbygger, skiller Systeminnstillinger - > Computer Administrasjon - > Tastatur & Mouse - > Global Hurtigtaster fra Systeminnstillinger - > Computer Administrasjon - > Input Handlinger fra Systeminnstillinger - > Computer Administrasjon - > Tastatur & Mouse - > Standard tastatursnarveier. I tillegg verken verktøyet virkelig gir deg full kontroll, men bare en pre-valgt undergruppe av hva X egentlig kan gjøre. For virkelig å ta ansvar, må du grave i X tastaturet forlengelse og forstå hva disse grafiske verktøyene faktisk gjør. Starter Simple: Multimedia og " Internet " Keys Fordi multimedia, e-post og WWW tastene på nyere tastaturer ikke brukes til generell skriving, er det lettest å komme i gang på tasten kartlegging med dem - det er færre konsekvenser hvis du gjør en feil. Den generelle omrisset er at du vil finne ut hvilke keycode
hver tast faktisk sender når den trykkes, så opp disse keycodes og tildele en mening til hver av dem i en konfigurasjonsfil. For å fange kodene, kjøre kommandoen XEV fra en skallet spørsmål. Dette vil starte et firkantet vindu som heter " Hendelses Tester " eller noe omtrent tilsvarende. Alle X inngangs handlinger du utfører på innsiden at vinduet (både tastetrykk og musehandlinger) vil bli rapportert som effekt i skallet vinduet. Beveg musen over vinduet og trykker på en av multimedia-knapper. Du vil forhåpentligvis se to avsnitt av produksjonen, en for tastetrykk hendelsen og en for KeyRelease hendelsen som følger den. Mesteparten av produksjonen er irrelevant for denne øvelsen, men legg merke til keycode
nummer på den tredje linjen. Du bør notere dette ned i en teksteditor, og vil du også legge merke til om noen keysym
er i dag tildelt i parentes følgende nøkkelkoder. Caps Lock-tasten, for eksempel, produserer dette i tråd tre: state 0x0, at denne nøkkelen er keycode 66 (keysym 0xffe5, Caps_Lock), same_screen ja, er nøkkelkode 66, og tilstedeværelsen av Caps_Lock strengen etter komma forteller oss allerede tildelt. En ledig tast som en multimedietasten vil si (keysym 0x0, NoSymbol) i stedet. Når du har samlet de keycodes for alle de knappene du trenger å tildele, lage en ren tekstfil som heter .Xmodmap i hjemmekatalogen. På en kommandolinje, kjøre xmodmap -pke. Dette er din nåværende tastaturoppsett, som du bør kopiere og lime inn i din nye ~ /.Xmodmap fil. På hver linje, vil du se en oppføring for en nøkkel, med syntaksen: keycode NNN = SomeKeysym

For eksempel keycode 162 = XF86AudioPlay. De keysyms for normale tegn er tegnet seg selv, fra A til Å, pluss tegnsetting, tall, og så videre. Det er trolig ingen grunn til å stadig ta på dem. Bare bla ned til keycodes for de knappene du trenger å tildele, og hvis keysym verdien er blank, tilsett en. Hvis hele linjen er fraværende, kan du legge den til. For å laste tastaturoppsett, kjører xmodmap ~ /.Xmodmap. For å sørge for at det går på hver innlogging, legge til at linje i .xinitrc fil. XF86AudioPlay i eksempelet ovenfor er en av de forhåndsdefinerte " ekstra " keysyms tilgjengelige for multimedietastatur og en del av Xorg. En liste over de nyeste eksisterende definisjoner er tilgjengelig på de fleste distroer på /usr /share /X11 /XKeysymDB, men kan også bli funnet i Xorg kildekoden. Mange er definert til å passe vanlige kommersielle tastatur, slik som XF86Audio * kontroller eller XF86Mail, men noen er generisk, slik som XF86Launch0 gjennom XF86LaunchF. Du kan bruke disse til å få mest mulig ut av en særegen tastatur design. Hva virkningen hver av disse utvidede keysyms utfører bestemmes av sesjonen; det er her GNOME og KDE-verktøy kan komme inn i bildet. GNOME-hurtigtasten-egenskaper og KDE Standard tastatursnarvei redaktører har lister over vanlige kommandoer, mange av dem (som " Launch e-postklient ") kan være direkte knyttet til en av de keysyms tastaturet sender nå. Du binder den valgte handlingen til nøkkelen bare ved å merke den og trykke på ønsket multimedietasten. Problem Keys Som du sikkert allerede har gjettet, bruker du samme fremgangsmåte for å kartlegge meningsfulle funksjoner til de resterende ubrukte taster på tastaturet. Så lenge det er en keysym definert for handling, karakter, eller atferd du vil tilordne, kan .Xmodmap gjøre det. Det forbeholdet her er at hvis du rotet opp og deaktivere alle dine " Returner " eller " Shift " nøkler, kan det hende du må starte maskinen på strømbryteren, slippe inn i en virtuell terminal, og fjerne det .Xmodmap filen til å gjenopprette. Dette er hva du trenger å gjøre for å ta vare på vanlige tastatur quirks som ellers ubrukelig " Windows " nøkkel eller Mac-sentriske " Åpne Apple " nøkkel. Bare ta tak i nøkkelkode rapportert av XEV, og tilordne den til en nyttig keysym. Størst full Xorg listen i kildekoden hvis du er usikker på riktig keysym navn; det er " Shift_L " ikke " L_Shift, " og " Før " i stedet for ". Page_Up " Her er noen detaljer kan være lurt å starte med .... Den Compose-tasten brukes til å angi mange aksent og utvidede tegn kalles " Multi_key " keysym. Mange brukere på Apple hardware kartlegge " Åpne Apple " nøklene til " Control_L " og " Control_R " grunn av den praktiske nærhet og mangel på normal " Control " nøkler. Apple bærbare datamaskiner er vanligvis mangler " Alt_R " nøkkel, men har en ekstra Enter-tasten i stedet, noe som åpner for en enkel løsning. En nøkkel som ikke er så lett er det " Funksjon " eller " Fn " nøkkel. Fn sin keysym er " F35 " men det vanligvis fungerer som en valgtast a la Shift eller Ctrl, og dens oppførsel er ikke forenlig på tvers av plattformer fordi det er knyttet til system-BIOS og ikke til det fysiske tastaturet selv. Derfor, for en bærbar PC, må du kanskje søke etter hjelp spesifikke for produsenten, og for en stasjonær maskin vil du ønsker å lete etter hjelp basert på produsenten av hovedkortet. Heldigvis, i disse dager den vanligste problemet er ikke anbefale at Fn-tasten er ukjent, men at dens atferd er " invertert " - Det vil si, du må holde nede Fn-tasten for å få normal F1 til F12 tastetrykk, og uten å holde nede Fn, hva bør de endrede funksjoner (for eksempel Print Screen) blir videreformidlet. Hvis du bare ønsker å tilordne funksjoner til F-tastene modifiserte, vil XEV rapportere de riktige keycodes både for umodifiserte og Fn-modifiserte tastetrykkene. Du kan også kartlegge en ellers ubrukt nøkkel til en mus middels eller høyreklikk på bærbare datamaskiner som har bare én eller to styreflaten knappene. De keysyms er Pointer_Button2 og Pointer_Button3 hhv. Avansert keyboarding Det gjenstår noen få hardware-orienterte nøkler som vanligvis finnes på netbooks og bærbare datamaskiner som krever spesialbehandling fordi de omgå vanlig tastatur system, istedenfor å generere Advanced Configuration and Power Interface (ACPI) eller andre lavnivå samtaler. Eksempler er Søvn /opphev knapper, optiske enheten utløserknappene, WiFi og Bluetooth veksle, og lysstyrken på skjermen. Aktivering av disse tastene er vanligvis en samling av ad-hoc løsninger som varierer fra produsent til produsent, men det kan nesten alltid gjøres. For Asus Eee PC, installere eeepc-acpi-scripts pakken. For Lenovo Thinkpads, ThinkPad-ACPI drivere fylle den samme rollen, samt en eldre løsning kalt TPB. Apple hardware eiere bør se etter nvidia-BL-dkms å Aktiver tastaturstøtte bakgrunnsbelysning, og pommed for andre hurtigtaster. Det er irriterende, men minst å ha gått gjennom X tastaturoppsett remapping prosessen, forstår du hvorfor disse plattformspesifikke tastene ikke alltid bare fungere ut av boksen. Til slutt, med unntak av ACPI-spesifikke verktøy som er nevnt i foregående avsnitt, merk at de fleste av eksemplene håndtere remapping nøkler gjennom X Window system. Det er trolig for bruk til et bredt spekter av brukere, spesielt for " multimedia " funksjoner som ikke har noen analog i ikke-X miljøer, men det inkluderer ikke alle. Hvis du trenger å justere tastaturoppsett på terminalen, kan du gjøre mange av de samme oppgavene som utføres av xmodmap bruke loadkeys verktøyet i stedet. Syntaksen til loadkeys konfigurasjonen er bare litt annerledes, og dumpkeys verktøyet utfører de fleste av de samme funksjonene som betjenes av XEV, med resultater som vil være gyldig på en terminal-only server eller over en SSH-tilkobling. Prøv å ikke bruke loadkeys og xmodmap å ape med konfigurasjonen på samme system, men - resultatene vil ikke være pen for å feilsøke. Extra Credit tross for alle strøm X, xmodmap, og de forskjellige Linux ACPI-systemer gir deg over tastaturet oppførsel, en ting fortsatt ikke vil endre seg - og det er det faktum at ingen har bruk for den Scroll Lock-tasten. Du kan tilordne det lett nok med informasjonen ovenfor, men hvis du virkelig vil ha en utfordring, prøv å se på å gjøre bedre bruk av tastaturet LED som følger med det, Num Lock, og Caps Lock. Et prosjekt som heter ledcontrol finnes som forsøk på å gi deg full kontroll over de blinkende lysene på fingertuppene - med fantasien den eneste begrensningen. Alternativt kan du finne det mer givende å binde noen av de utvidede Xorg keysyms å jobbe med en full multimedia program som MythTV; ofte disse programmene gir funksjonalitet utover den grunnleggende én-tastetrykk-per-kommandoen modell, er så spesielle tiltak kreves for å aktivere full bruk av multimedia taster. Du har alt fra 100 til 120 taster på tastaturet, så du vil kan like godt sette dem til maksimal bruk.