FluxBox와 함께 Ubuntu 13.10을 실행하는 macbook pro가 있습니다. 불행하게도, 전원 버튼은 물리적으로 삭제 키가있는 백 스페이스 위에 있습니다. OS X에서는 PowerKey 프로그램 을 사용하여 삭제하도록 전원 키를 다시 매핑 할 수 있습니다. X Windows에서 비슷한 작업을 어떻게 수행 할 수 있습니까?
편집 /etc/systemd/logind.conf
및 설정을 통해 전원 키를 비활성화했습니다. HandlePowerKey = ignore
이 후 랩톱을 종료하지 않고 전원 버튼을 누를 수 있습니다.
Running 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을 사용하여 일반 창 관리자와 동시에 전원 버튼을 사용하려면 어떻게해야합니까?