mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-25 00:11:07 +00:00
43a8118d2e
Issue #3483
75 lines
2.4 KiB
Plaintext
75 lines
2.4 KiB
Plaintext
XKB to Genode input_filter configuration
|
|
|
|
Christian Helmuth
|
|
|
|
|
|
This tool generates Genode input_filter XML configuration files from
|
|
X11 XKB configuration. It must be built and run on Linux with
|
|
libxkbcommon development packages installed.
|
|
|
|
For pragmatic (and realistic reasons) this tool assumes a standard
|
|
105-keys PC keyboard. This assumption automatically includes US
|
|
keyboards with 104 keys. The differences are:
|
|
|
|
- PC105 has an additional 105th Less Then / Greater Then key <LSGT>
|
|
right of Left Shift <LFSH> as additional 105th key
|
|
- PC105 has the Backslash key <BKSL> left of Return <RTRN>
|
|
|
|
xkb2ifcfg supports Shift, AltGr, and Caps Lock modifiers, as well as
|
|
localized dead-key/compose sequences. The tool does not support
|
|
latched modifiers.
|
|
|
|
|
|
Build
|
|
=====
|
|
|
|
Just execute 'make' and 'xkb2ifcfg' should be built.
|
|
|
|
|
|
Usage
|
|
=====
|
|
|
|
! xkb2ifcfg <command> <layout> <variant> <locale>
|
|
!
|
|
! Commands
|
|
!
|
|
! generate generate input_filter config
|
|
! dump dump raw XKB keymap
|
|
! info simple per-key information
|
|
!
|
|
! Examples
|
|
!
|
|
! xkb2ifcfg generate us "" en_US.UTF-8 > en_US.chargen
|
|
! xkb2ifcfg info de nodeadkeys de_DE.UTF-8 > de_DE.chargen
|
|
|
|
All information is printed on standard output while diagnostic
|
|
messages are written to standard error.
|
|
|
|
Valid 'layout' and 'variant' options can be figured out from the
|
|
LAYOUTS section in
|
|
|
|
! man 7 xkeyboard-config
|
|
|
|
'variant' strings are depicted in parentheses after the layout (e.g.,
|
|
'us(euro)').
|
|
|
|
The 'locale' option has the standard locale syntax (see
|
|
/usr/share/i18n/locales).
|
|
|
|
|
|
Generation of keyboard-layout PDFs (and other examples)
|
|
=======================================================
|
|
|
|
setxkbmap -print -rules evdev -model pc104 -layout us -variant "" -option "" | xkbcomp -xkm - - | xkbprint -color -label name - - | ps2pdf - t.pdf
|
|
setxkbmap -print -rules evdev -model pc105 -layout de -variant "nodeadkeys" -option "" | xkbcomp -xkm - - | xkbprint -color -label symbols - - | ps2pdf - t.pdf
|
|
|
|
setxkbmap -print -model pc104 -option -layout us
|
|
setxkbmap -print -model pc105 -option -layout de -variant nodeadkeys
|
|
setxkbmap -print -model pc105 -option -layout ch -variant de_nodeadkeys
|
|
setxkbmap -print -model pc105 -option -layout ch -variant fr_nodeadkeys
|
|
|
|
setxkbmap -print -model pc105 -option -layout gb
|
|
setxkbmap -print -model pc104 -option -layout us -variant euro
|
|
setxkbmap -print -model pc104 -option -layout us -variant workman
|
|
|