也许这种方法大家早就知道了, 我发现在我的Windows10电脑上将 Caps Lock
按键修改成对Emacs友好的 Hyper
键后,Emacs好用多了.
具体来说,我是怎么做的:
第一步. 使用AutoHotKey 来映射 Caps Lock
键为 Windows Menu
键(AutoHotKey将之称为AppsKey).
;; Add this to your standard AutoHotKey configuration
CapsLock::AppsKey
第二步. 使用下面这段elisp代码 来捕获传递给emacs的Menu键,并将之映射成 Hyper modifier
:
;; http://ergoemacs.org/emacs/emacs_hyper_super_keys.html
(setq w32-pass-apps-to-system nil)
(setq w32-apps-modifier 'hyper) ; Menu/App key
第三步. 完成了! 我现在可以设置带 H- modifier
的快捷键了. 例如下面这段代码摘自我的PHP配置:
(defun bs-php-mode-hook ()
(local-set-key '[backtab] 'indent-relative)
(local-set-key (kbd "<H-left>") 'beginning-of-defun)
(local-set-key (kbd "<H-right>") 'end-of-defun)
(auto-complete-mode t)
(require 'ac-php)
(setq ac-sources '(ac-source-php ))
(yas-global-mode 1)
(setq indent-tabs-mode nil)
(setq php-template-compatibility nil)
(setq c-basic-offset 2))
这段配置让我打开PHP文件后,再按下 Caps Lock
键,就可以通过左右按键在函数定义见跳转了.
这个键盘及快捷键的设定让我好像中了奖了一样,太爽了.