私はAwesome WMmod+R
を使い始めましたが、現在のレイアウトがUSではない場合、たとえばRUの場合、「実行」ウィジェット () の入力を無視するのが面倒でした。また、ランチャー/メインメニューや「クライアントリスト」などの入力 (マウスクリック、キーボード - Esc などのレイアウト固有のキーでさえも) を無視します。私は Arch Linux を使用し~/.xinitrc
ており、次の行があります。
setxkbmap -layout "us, ru" -option "grp:caps_toggle, grp_led:caps"
Awesome のrc.lua
デフォルト設定にはレイアウトも capslock 固有のものもありませんが、問題を切り分けようとして xinitrc から capslock トグル オプションを削除しました。これはまったく役に立ちませんでした。
xev
出力は、(capslock を使用して) レイアウトを切り替えたときに変化するものだけが「状態」であることを示しています。
-- マウスの左クリック (現在のレイアウト: US、すべて OK) --
LeaveNotify event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13419931, (151,498), root:(835,518),
mode NotifyGrab, detail NotifyAncestor, same_screen YES,
focus YES, state 256
EnterNotify event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13419931, (151,498), root:(835,518),
mode NotifyUngrab, detail NotifyAncestor, same_screen YES,
focus YES, state 256
KeymapNotify event, serial 33, synthetic NO, window 0x0,
keys: 4294967189 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ButtonPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13419931, (151,498), root:(835,518),
state 0x0, button 1, same_screen YES
ButtonRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13420028, (151,498), root:(835,518),
state 0x100, button 1, same_screen YES
-- Caps Lock (レイアウト変更 US -> RU) --
KeyPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13420911, (151,498), root:(835,518),
state 0x0, keycode 66 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13420998, (151,498), root:(835,518),
state 0x2000, keycode 66 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
-- 左マウス クリック (現在、Awesome はウィジェット/ダイアログ/... でマウス クリックを認識できません) --
LeaveNotify event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13422624, (151,498), root:(835,518),
mode NotifyGrab, detail NotifyAncestor, same_screen YES,
focus YES, state 8448
EnterNotify event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13422625, (151,498), root:(835,518),
mode NotifyUngrab, detail NotifyAncestor, same_screen YES,
focus YES, state 8448
KeymapNotify event, serial 33, synthetic NO, window 0x0,
keys: 4294967189 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ButtonPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13422624, (151,498), root:(835,518),
state 0x0, button 1, same_screen YES
ButtonRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13422721, (151,498), root:(835,518),
state 0x2100, button 1, same_screen YES
-- Caps Lock (レイアウト変更 RU -> US) --
KeyPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13423836, (151,498), root:(835,518),
state 0x2000, keycode 66 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13423947, (151,498), root:(835,518),
state 0x0, keycode 66 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
-- エスケープ (たとえば、awesome のメインメニューを閉じます) --
KeyPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13426419, (151,498), root:(835,518),
state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
XLookupString gives 1 bytes: (1b) ""
XmbLookupString gives 1 bytes: (1b) ""
XFilterEvent returns: False
KeyRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13426514, (151,498), root:(835,518),
state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
XLookupString gives 1 bytes: (1b) ""
XFilterEvent returns: False
-- Caps Lock (レイアウト変更 US -> RU) --
KeyPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13427017, (151,498), root:(835,518),
state 0x0, keycode 66 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13427096, (151,498), root:(835,518),
state 0x2000, keycode 66 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
-- エスケープ (無視) --
KeyPress event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13427782, (151,498), root:(835,518),
state 0x2000, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
XLookupString gives 1 bytes: (1b) ""
XmbLookupString gives 1 bytes: (1b) ""
XFilterEvent returns: False
KeyRelease event, serial 33, synthetic NO, window 0x1600001,
root 0x95, subw 0x0, time 13427877, (151,498), root:(835,518),
state 0x2000, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
XLookupString gives 1 bytes: (1b) ""
XFilterEvent returns: False
PS: また、awesome (例: Shift_R) の主要な略語がどこにあるのか、これらの Mod1、Mod2 などは正確には何を意味するのかも知りません。
UPD:この質問で説明されているのとほぼ同じ問題ですが、著者はデフォルト ( Alt- ) トグルではなく、capslock-toggle についてのみ述べていShiftます。