Portál AbcLinuxu, 6. května 2024 17:21

Jak zprovoznit speciální klávesy u klávesnice?

Na klávesnicích existují dva typy kláves nad rámec těch běžných:


Zprovozněním přídavných tlačítek na klávesnici se podrobně zabývá článek Multimediální a jinak vylepšené klávesnice.

Dále uvedené se týká grafického prostředí X, pro konzoli je postup odlišný.

X Window přijímá kódy kláves z klávesnice (keycode) a přiřazuje jim vlastní "symboly" (keysym). Například kód klávesy 0x0061 bez modifikátoru má přiřazen symbol "a". Pokud tedy změníme mapování kódu klávesy na symboly X serveru, po jejím stisku vyšle X server námi definovaný kód.

Ke zjištění keycode, který daná klávesa posílá, slouží program xev. Ten vytvoří jednoduché okno a do konzole zobrazuje události, které okno dostalo. Po stisku klávesy se v konzoli zobrazí výpis, obsahující mimo jiné i keycode a keysym. První je kód, který vyslala klávesnice, druhý je symbol, na který byl kód přeložen.

Každá klávesa by měla vygenerovat dvě události, KeyPress při stisknutí a KeyRelease při uvolnění. V následujícím vzorovém výstupu je zvýrazněna hodnota keycode, která vás zajímá.

KeyPress event, serial 28, synthetic NO, window 0x3e00001,
    root 0x48, subw 0x0, time 45480466, (125,51), root:(410,836),
    state 0x2000, keycode 222 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 31, synthetic NO, window 0x3e00001,
    root 0x48, subw 0x0, time 45480575, (125,51), root:(410,836),
    state 0x2000, keycode 222 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:

K těmto číslům nyní přiřadíte klávesy (symboly). Přiřadit můžete jaké chcete, kupříkladu F13 až F35. Seznam možných symbolů naleznete v souboru /usr/include/X11/keysymdef.h. Z názvů odstraňte prefix XK_ a vznikne název symbolu. Kupříkladu z definice XK_F13 vznikne symbol F13. K přiřazení slouží nástroj xmodmap, do souboru ve vašem domovském adresáři .Xmodmap přiřadíte klávesy následujícím způsobem.

keycode 222=F13

Nyní potřebujete tyto klávesy nějak využít, různá desktopová prostředí to umožňují přímo jako například KDE, nebo můžete využít program xbindkeys, popsaný v článku Multimediální a jinak vylepšené klávesnice.

Související dokumenty

klavesnice s tlacitky navic - jak v X (diskuse)
Jak na klavesy Power, Sleep... (diskuse)
specialni klavesy (diskuse)
Jak na specialni klavesy na notebooku? (diskuse)
Specialni klavesnice (diskuse)

Dokument vytvořil: Leoš Literák, 27.7.2005 20:53 | Poslední úprava: Fluttershy, yay!, 6.7.2013 21:30 | Další přispěvatelé: Pavell, Robert Krátký | Historie změn | Zobrazeno: 6332×

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.