http://www.nongnu.org/xbindkeys/xbindkeys.html 키보드는 물론 마우스까지 조합해서 쓸 수 있게 해주는 환경으로, 외부 명령으로 할 수 있는 건 죄다 된다. 예를 들어 wmctl을 사용하면 굳이 창 관리자 자체의 단축키 없이도 창 관리자의 EWMH 프로토콜을 통해 어떤 창을 닫거나 키우거나 숨기거나 다른 작업공간으로 옮길 수 있다. 혹은 dbus-send 명령을 쓰면 dbus를 지원하는 프로그램도 제어할 수 있다.설정을 할 때는 --defaults 옵션을 통해 기본 설정을 출력한 뒤 그걸 저장해서 고쳐 쓰면 된다.맨 왼쪽에 있는 이름은 조합키(modifier)로 xmodmap을 실행하면 나온다. 가령 alt-x는 mod1+x로 쓰면 된다.다음은 내가 썼던 ~/.xbindkeysrc 내용이다.# screenshot"gnome-screenshot"Print"gnome-screenshot --window"mod1 + Sys_Req # is equal to Print# file browser#"nautilus --browser --no-desktop""thunar"mod5 + e# gaim"gaim-remote.py GaimBlistSetVisible?show=1"mod5 + b# QuodLibet"quodlibet"mod5 + q"quodlibet --toggle-window"mod5 + a# rhythmbox"rhythmbox --toggle-hide"mod5 + h# run dialog# from openbox package"gnome-panel-control --run-dialog"mod5 + r# menu# from openbox package"grootmenu"mod5 + m# Liferea"liferea"mod5 + l# show desktop# from http://kldp.org/node/55824"if [ `xprop -root _NET_SHOWING_DESKTOP | awk -F "=" '{print $2}' ` -eq 0 ]; then wmctrl -k on; else wmctrl -k off; fi"mod5 + d# terminal"mlterm"mod4 + t# resize the window toggle"wmctrl -r :ACTIVE: -b toggle,maximized_vert,maximized_horz"Scroll_Lock"wmctrl -r :ACTIVE: -b toggle,maximized_horz"shift + Scroll_Lock"wmctrl -r :ACTIVE: -b toggle,maximized_vert"mod1 + Scroll_Lock"wmctrl -r :ACTIVE: -b toggle,fullscreen"control + Scroll_Lock# always on top toggle"wmctrl -r :ACTIVE: -b toggle,above"mod4 + Page_Up# close the window"wmctrl -c :ACTIVE:"Pause# switch to Nth desktop"wmctrl -s 0"mod4 + 1"wmctrl -s 1"mod4 + 2"wmctrl -s 2"mod4 + 3"wmctrl -s 3"mod4 + 4"wmctrl -s 4"mod4 + 5"wmctrl -s 5"mod4 + 6"wmctrl -s 6"mod4 + 7"wmctrl -s 7"mod4 + 8"wmctrl -s 8"mod4 + 9"wmctrl -s 9"mod4 + 0# move the window to Nth desktop"wmctrl -r :ACTIVE: -t 0"shift + mod4 + 1"wmctrl -r :ACTIVE: -t 1"shift + mod4 + 2"wmctrl -r :ACTIVE: -t 2"shift + mod4 + 3"wmctrl -r :ACTIVE: -t 3"shift + mod4 + 4"wmctrl -r :ACTIVE: -t 4"shift + mod4 + 5"wmctrl -r :ACTIVE: -t 5"shift + mod4 + 6"wmctrl -r :ACTIVE: -t 6"shift + mod4 + 7"wmctrl -r :ACTIVE: -t 7"shift + mod4 + 8"wmctrl -r :ACTIVE: -t 8"shift + mod4 + 9"wmctrl -r :ACTIVE: -t 9"shift + mod4 + 0 |