Portál AbcLinuxu, 9. května 2025 23:58
Mám jmenovanou klávesnici z titulku. Po levé straně je ovládací kolečko a dvě klávesy pro spouštění kancelářských aplikací. Pohyby kolečka emulují klávesy PgUp a PgDn. Stisky kláves pro spouštění kancelářských aplikací a kolečka negenerují žádné události pozorovatelné v xev
, ale /var/log/messages
mi radí, že pomocí setkeycodes e013 a e014 <keycode>
těmto klávesám můžu přiřadit nějaký kód. Takže jsem pro stisknutí kolečka nastavil na Enter příkazem setkeycodes e023 28.
Teď bych navíc potřeboval na zbývající tlačítka namapovat nějaké XF86 symboly, nejlépe XF86Excel
a XF86Word
, ale nějak jsem nepochopil konfiguráky klávesnice pro x11. Poradí mi někdo jak na to?
Jistě, po stisknutí kolečka se "stiskne" Enter. Dál jsem podle stránek namapoval i ty dvě klávesy:
setkeycodes e013 147 setkeycodes e014 148
Ty už generují události v xev
a jsem schopný k nim přiřadit symboly:
xmodmap -e 'keycode 147 = XF86Word' xmodmap -e 'keycode 159 = XF86Excel'
Mezitím se někde keycode 148 přeloží na 159, ve druhém řádku není chyba. Jenže xmodmap upraví jen aktivní rozložení klávesnice a po přepnutí z výchozího (US) do alternativního (CZ) je potřeba modmapovat znovu.
Jenže xmodmap upraví jen aktivní rozložení klávesnice a po přepnutí z výchozího (US) do alternativního (CZ) je potřeba modmapovat znovu.
Mělo by pomoct namapování scancodu na keycody dát do init skriptů a konfiguraci xmodmap uložit do souboru ~/.Xmodmap případně /etc/X11/xinit/.Xmodmap
Nakonec jsem to vyřešil následovně:
1. do startup scriptů jsem přidal:
setkeycodes e023 28 setkeycodes e013 147 setkeycodes e014 148
2. doplnil jsem keykódy do /usr/share/X11/xkb/symbols/inet
(cesta v distribuci openSuSE 11.0), do sekce xkb_symbols "geniuscomfy2"
viz přiložený patch.
key <I13> { [ XF86Word ] }; key <I1F> { [ XF86Excel ] };
3. používám model klávesnice "geniuscomfy2" - setxkbmap -model geniuscomfy2
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.