xkb
xkbの概略が分かる. kecodeと symbolの関係 xevを使う
より詳しい解説がある
symbols
symbol, type, action, groupを定義
1通りの手順がわかる
levelの設定の意味がわからない...
The basic keyboard mapping package is XKB.
The X service is tightly coupled with XKB ...
modifier keys:
control+n,p を down,upにしたいのは..
3rd level modifier にいろいろ設定すればよい??
The configuration directory
1. to graphically display the layout
2. to configure the key mapping, layout
3. to enable the conf
2が大切か。1は自作用?
ここが一番よいか?
modifiersは8つある。
Control, Shift, Lock, mo1,mod2, mod3, mod4, mod5
virtual modifiers?は、上記のものと、上記の組み合わせで作る modifiersを抽象化したもの?
types, co mpat はこのために?使われる
levels and groups
modifiersは膨大になるので、構造化するために、levels and groupsがある。
level: shiftが関与するもの a->Aは、level shift.
groupsは?
単にもう一つ別の軸を作るということ?
key codes
数字
keyが has been pressed, has been released の2つ状態, 手元では38
key symbols
characters or glyphs a,A,1, !,....など Enter, Downとかも $ cat /usr/include/X11/keysymdef.h |grep "XK_a "
#define XK_a 0x0061 /* U+0061 LATIN SMALL LETTER A */
keycodeがmapされてkey symbolsになる。全射でよい? 対応が無いと warningをみたような
全射でもない、写像ではなく、行き先は複数
Symbol maps usually list multiple symbols for each key,
そして、level, groupで決定(lookup)される
with the group and level being used to look up the appropriate symbol.
typeがわかってない。
he levels available for various keys and how to shift between the levels
Each key can have its own type and have differing numbers of levels and differing ways of switching between levels
key(code?, symbol?) は1つのtypeを持ち、複数のlevelを持ち、levelを変えるやり方も複数ある。
only alphabetic characters are shifted when the Caps Lock key is on
keyがalphabetに対応するkeycode?, caps Lockがtype? shiftがlevel変更方法?
typeが無い場合, levelは次のように決まる
symbolが1つ。 typeはONE_LEVEL
level1が lower case, level2がupper case typeは ALPHABETIC (shift, caps lockが適用可能)
keypad symbolがあれば、typeはKEYPAD (shift, numlockが適用可能)
それ以外は、TWO_LEVEL (shiftのみ適用可能)