web-dev-qa-db-ja.com

xmodmapの修飾キーの機能は何ですか?

Xmodmapを実行すると、次のようになります。

shift       shift_l (0x32),  shift_r (0x3e)
lock      
control     control_l (0x25),  control_l (0x42),  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)

シフトグループとコントロールグループを取得します。しかし、他のmod1、mod2、mod3、mod4は何のためにありますか?

とにかく、次のように2つの修飾子しか使用できないようです。

keysym <keysymname> = <key> <shift+key> <mode_switch+key> <mode_switch+shift+key>

何かを<mod4+key>に設定できないのはなぜですか?

7
user128063

X11は、任意のキー押下に8つの修飾子を提供します。 shiftcontrol、およびlockに明らかなマッピングがある、かなり従来型のセットがあるようです。

mod1通常は Meta または Alt、およびmod2からmod5は、キーボードにある他の修飾キーで使用でき、多くの場合、ラベルが付けられています Super または Hyper。通常、これらは文字の入力には使用されませんが、アプリケーションによって解釈されます-たとえば、Emacsでは Super+TAB に相当 Meta+TAB

(define-key function-key-map (read-kbd-macro "s-<tab>") (read-kbd-macro "ESC TAB"))

キーボードでこれらの修飾子を使用して文字を生成する場合は、xmodmapの機能が十分ではないため、代わりにsetxkbmapを調べてください。しかし、それはこの答えには大きすぎるトピックです。

2
Toby Speight