修正する

修正する

mod-4私はAppleキーボードを持っていて、Emacsを使うときにキーがバーの左側にある最初のキーになるようにキーを再マップする必要があります。Space以下のスクリプトは、dwmウィンドウマネージャを使用したときにうまく機能しましたが、Openboxに切り替えた後、オプションキーとコマンドキーの間のキーコードを置き換える代わりに、2つのキーが同じことをすることがわかりました。

奇妙なことは、新しい設定で「実行」をクリックしshowkeyてオプションキーとコマンドキーを押すとそれぞれ56と125が表示されますが、64と125の代わりに以下のスクリプトに挿入するとこれらのキーが機能することです。まったく動作しません。 133.

認めなければなりません。動作するまで修正して以下のスクリプトを作成したので、おそらくより良い方法があります。

.xmodmap

# switch alt and command...the switch is not being done properly
xmodmap -e "keycode 64 = Alt_L"
xmodmap -e "keycode 133 = Meta_L"

# remap of mod 4
xmodmap -e "clear Mod4"
xmodmap -e "add Mod4 = Super_L"

修正する

以前のキーボード設定に慣れて調整をあきらめました。残念ながら、最近の再起動後はもう動作CapsLockしなくなり、Ctrlここに戻りました。

今回は、上記で使用したマッピングを使用するのではなく、キーを実行して調整しましたxmodmap -pke > ~/.xmod(はるかに簡単でした)。

しかし、まだ何かが正しくありません。CapsLockコマンドを実行しないと、まだうまくいきます。xev次に、正しいマッピングを表示するように見える次のものを返します。

# caplock
KeyRelease event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4858000, (57,-31), root:(426,402),
state 0x2, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes: 
XFilterEvent returns: False

# ctrl-L
KeyRelease event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4805947, (686,148), root:(1055,581),
state 0x4, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

# Alt-L
KeyPress event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4555825, (-158,-649), root:(959,133),
state 0x0, keycode 64 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

# Super-L
KeyRelease event, serial 40, synthetic NO, window 0x2200001,
root 0x156, subw 0x0, time 4920564, (-63,169), root:(306,602),
state 0x40, keycode 133 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

答え1

始めに以下を入れることができます。~/.xmod

remove Lock = Caps_Lock
remove Control = Control_L
remove Mod1 = Alt_L Meta_L
remove Mod4 = Super_L Hyper_L

そして一番下の内容~/.xmod

add Control = Control_L
add Mod1 = Alt_L Meta_L
add Mod4 = Super_L Hyper_L

これにより、これらのキーの修飾子属性を認識するようにシステムが更新されます。

関連情報