分类: BSD
2007-12-29 21:47:30
示例 ~/.xbindkeysrc
#—————————–【运行程序】————————————-
“gnome-terminal”
alt+grave
“grun”
F1
“opera”
alt+w
“nautilus –no-desktop”
Mod4+q
“stardict”
control+Mod4+s
“gaim”
control+Mod4+g
“rox”
Mod4+r
“banshee”
control+Mod4+b
“firefox”
control+Mod4+f
“liferea”
control+Mod4+l
“wxmaxima”
control+Mod4+c
“krusader”
control+Mod4+k
“/opt/MultiGet/MultiGet”
control+Mod4+m
“kfind”
control+Mod1+f
“gnome-terminal -e htop”
control+Mod4+Delete
“gnome-system-monitor”
control+Mod1+Delete
#—————————–【桌面操作】————————————-
#屏幕截图
“ksnapshot”
control+Mod2+Print
“ksnapshot -c”
alt+Mod2+Print#清空回收站
“rm -r ~/.Trash/*”
Mod4+e#锁屏
“xscreensaver-command –lock”
Mod4+l#打开光驱
“eject&”
Mod1 + F12#音量 +5%
“amixer sset Master 1+ unmute”
control + Up#音量 -5%
“amixer sset Master 1- unmute”
control + Down#静音
“amixer sset Master mute”
control + Mod1 + q
#——————————————————————————
#keystate_numlock = enable
#keystate_capslock = enable
#keystate_scrolllock= enable
#——————————————————————————
很显然,每个热键包括两行,第一行用双引号括起来的部分是要执行的程序的完整路径(正常情况下安装(没有自定义安装路径)的程序不需要输入路径),然后第二行是对应的快捷键。
xbindkeys对应的一些比较特殊的快捷键如下,括号外是可以直接写在配置文件里面的名称,括号内是对应的键盘上的键名:
Release(似乎是个事件吧,我不太清楚这是个什么东西,一般也用不到), control(Ctrl), shift(Shift), Mod1
(Alt), Mod2 (NumLock), Mod3 (CapsLock), Mod4(Windows徽标键), Mod5 (Scroll)。
默认状态下,xbindkeys对以下三个键不敏感,也就是使用它们作热键的话不论这些键会产生什么系统事件,该热键都会得到执行。如果设置成敏 感,则在这些键产生一些事件的时候,该热键不会得到执行。我试了一下,绑定Num_Lock键到stardict,设置成敏感的时候,该键对应的灯由暗变 亮的那次击键可以执行stardict,由亮变暗的那次击键就不会执行。如果设置成不敏感,则无论任何时候该键都是可以执行热键的。不过说实话,我没看出 来这有什么用。
这三个键是:NumLock, CapsLock and ScrollLock.
在上面的配置文件中去掉与这三个键对应的设置前面的#号时就表示设置为敏感,加上#号表示不敏感。
另外,在终端中键入命令:
xbindkeys -k
来调出一个窗口,在你按了键盘上的某一个或多个键后将这些键的名字打印到屏幕上,以方便不知道要设置的热键的真实名字的用户。它比系统自带的同样功能的工具“xev”好的地方在于后者的提示信息复杂且只能针对一个按键,而前者可以显示组合键。
由于热键经常需要进行修改,每次都键入这样的命令有些麻烦,故可以定义系统命令的别名,以缩短这些命令,这是Linux的一个很重要的技巧:
sudo vim /etc/bash.bashrc
在最下方,加上这样几句:
alias mhk=’vim ~/.xbindkeysrc’
alias thk=’xbindkeys -k’
alias rhk=’pkill xbindkeys && xbindkeys &’
alias shk=’xbindkeys_show’
mhk,thk,rhk,shk分别是“modify hotkeys”,“test hotkeys”,“restart hotkeys”,“show hotkeys”的简称,你也可以换成任何喜欢的名字,保存退出后,重新启动终端,你就可以使用这些别名来执行后面对应的命令了。
每次执行mhk之后,如果对热键进行了更改,这些更改并不会立即生效,所以需要重新启动xbindkeys,这时就要执行rhk了,如果窨的热键太多,忘了某些键设置了,可以执行shk来查看都是定义了哪些热键。