Portál AbcLinuxu, 2. května 2025 05:49
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.
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: 6504×
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.