キーボード上のCaps Lock と Control を交換する場合には以下のようにしてくださ い.(キーマップ0-15の使用を前提としています.dumpkeys | head -1 でチェック できます)
% loadkeys
keymaps 0-15
keycode 58 = Control
keycode 29 = Caps_Lock
%
X の場合だけを変更するなら:
% xmodmap .xmodmaprc
でOKです. .xmodmaprc には以下の行が含まれているものとします.
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
キーナンバーリングは一体どうなっているのでしょう?バックスペースはLinux にお いては14なのにXでは22?ナンバーはでたらめについていると考えておいたほうがい いでしょう.Linuxのキー番号は showkey(1)で, Xのキー番号は xdv(1)を使えば調 べられます.Linuxのキー番号に8を加えたのが Xのキー番号になっていることが多い ようです.
Shift, Ctrl, Alt の各キーをトグルキーにできるかということですね.以下のよう にすれば可能です.
% loadkeys
keycode 29 = Control_Lock
keycode 42 = Shift_Lock
keycode 56 = Alt_Lock
%
これで 左 Ctrl, Shift, Altがトグルキーになります.キー番号はshowkey を使えば 取得できます.(通常は,左右コントロール=29,97,左右シフト=42,54, 左右アルト=54,56となっています)機能名はそれぞれControl_Lock, Shift_Lock, Alt_Lock, ALtGr_Lock.です.
"sticky" modifer keys というのは何でしょう? これは 1.3.33 以降の カーネルに取り入れた機能ですが,新しい kbd パッケージはまだ発表されていません. 従って,stick modifier keys を利用するには,以下の例のように16進法コードを 代入してやるしかありません.
% loadkeys
keymaps 0-15
keycode 54 = 0x0c00
keycode 97 = 0x0c02
keycode 100 = 0x0c03
%
これで右shift・Ctrl・Altキーが各対応左キーの sticky version になります.