折腾Emacs的键盘布局
绑定空格键支持Ctrl键
用Emacs时间长了以后,会有一种称为Emacs小拇指的症状。(http://zh.wikipedia.org/wiki/Emacs#Emacs.E5.B0.8F.E6.8B.87.E6.8C.87)
主要是因为Emacs非常依赖于Ctrl,Alt等来完成组合快捷键。
很多人觉得Ctrl键不好按,尤其是在笔记本的键盘上,因而发展出了若干对应的方法。
具体可以参见http://www.emacswiki.org/emacs/MovingTheCtrlKey
其中利用AutoHotKey以及BigCtrl,可以在Windows上重新定义空格键来模拟Ctrl键。
绑定后,单独按下空格键时还是普通的空格,和其他键一起按下时相当于Ctrl键。
Auto-HotKey地址:http://www.autohotkey.com/
BigCtrl地址:https://github.com/benhansenslc/BigCtrl
具体用法参照各自的Readme,写得很清楚。
不过我用的时候有一个问题,就是在VirtualBox中使用Emacs时会导致原来的Ctrl键动作异常,没办法按住Ctrl键不放连续操作。
稍微修改了一下BigCtrl的脚本,把142行和151行中的RCtrl改为Control,改后如下:
GetKeyState, state1, LCtrl if state1 = D Modifiers = %Modifiers%^ GetKeyState, state1, RCtrl if state1 = D Modifiers = %Modifiers%^
用了Emacs之后,深刻领会到常用击键位置(黄金区域)的重要性。
如果击键范围一直位于这个区域内,手不需要挪动来挪动去,可以提高击键的效率。(也许还提高腱鞘炎的几率?)
CapsLock也位于这个区域内,但使用率很低。
Backspace的使用率很高,却位于这个区域的边缘,需要右手离开自己的主要击键位置才能够着。
在Windows下可以使用KeyMapper(http://code.google.com/p/keymapper/)来调换着两个键。
Emacs不息,折腾不止。。。
/********************************************************************
* 不落魄的书生的记事簿[blog.csdn.net/songyuanyao]