modキーはXの中で共通の設定っぽい。
- 現在の設定の確認
-
$ xmodmap xmodmap: up to 4 keys per modifier, (keycodes in parentheses): shift Shift_L (0x32), Shift_R (0x3e) lock Caps_Lock (0x42) control Control_L (0x25), Control_R (0x69) mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd) mod2 Num_Lock (0x4d) mod3 mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf) mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
- modキーのマップで、右Altだけのグループを作る
-
上の出力の場合、~/.Xmodmap を
remove Mod1 = Alt_R add Mod3 = Alt_R
とし、~/.xprofile あたりで
xmodmap .Xmodmap
- xmonadのmodMaskを設定する
-
xmonad.hsのxmonadに渡すコンフィグのところを
, modMask = mod3Mask
とか。
外で変数に代入している場合は、そこで指定。
言わずもがな、modキーを使うのがあらゆるアプリの中でxmonadだけ、というわけではないので、他のアプリで使えなくなってもいいキーにした方がいいと思われ。
emacsは、メタキーのないよくあるキーボードを使っていると、Altキーでメタキーの役割を代替していると思うが、modキーの割り当てを変えてもメタキーは働く。
ただし、xmonadでキーバインドしている組み合わせを押した場合は、xmonadにキーを奪われてemacsでは動作しないんで注意。
よーするに、xmodmapでないところでemacsのキーバインドは動作しているっぽいんで、xmonadとキーバインドが被ってなければ使えるっぽいよ。