私はFluxBoxでUbuntu13.10を実行しているmacbookproを持っています。残念ながら、電源ボタンは、削除キーが入ると予想されるバックスペースの上に物理的にあります。OSXでは、PowerKeyプログラムを使用して、削除する電源キーを再マップできます。 X Windowsで同様のことを行うにはどうすればよいですか?
/etc/systemd/logind.conf
を編集して電源キーを無効にしました HandlePowerKey = ignore
を設定します この後、ラップトップをシャットダウンせずに電源ボタンを押すことができます。
xev -event keyboard
を実行しています 電源キーのKeyPressが通常、別のプロセスによって消費されていることを示しています:
MappingNotify event, serial 36, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248
KeymapNotify event, serial 36, synthetic NO, window 0x0,
keys: 1 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
KeymapNotify event, serial 37, synthetic NO, window 0x0,
keys: 1 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
ただし、コンソールから直接xtermのみを実行することで、キーコードを正常に取得し、キーを再マップすることができました。
xinit /usr/bin/xterm -- :1
xev -event keyboard | tee /tmp/junk.txt
tail -n ???? /tmp/junk.txt
MappingNotify event, serial 28, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248
KeyPress event, serial 28, synthetic NO, window 0x600001,
root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 28, synthetic NO, window 0x600001,
root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
MappingNotify event, serial 29, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248
この時点で、xmodmapを使用してキーをマップすることも可能でした。削除するよりも見やすいバックスラッシュにマップしました:
xmodmap -e "keycode 124 = backslash bar"
これを~/.fluxbox/keys
に追加することで、実行とほぼ同等の機能を得ることができます。 しかし、これは醜く、使用できないほど遅いです。
# Remap the power off to a delete key...
XF86PowerOff :Exec xdotool key Delete
xmodmapまたはsetxkbmapを使用して、通常のウィンドウマネージャーと同時に電源ボタンを使用するにはどうすればよいですか?
承認された回答:
最後の文である質問を正確に理解していませんが、質問のタイトル「電源キーを再マッピングして削除する」に関連付けることができます。
「XF86PowerOff」またはキーボードに対応するものだけを/usr/ share / X11 / xkb / symbol/inetの「Delete」に置き換えてみてください。
関連:High Sierraにアップグレードしてから、「UPSB:Thunderboltの電源オンに失敗しました」というカーネルパニックが1時間ごとに発生しますか?そのファイルを更新するシステム更新の後で、これを繰り返す必要があります。