2011-10-12 65 views
3

我想用Emacs守护进程交换C-x和C-u(因为我切换到Dvorak布局)。常规的keyboard-translate不适用于Emacs守护进程。在help-gnu-emacs中,我找到了一个解决方案:我应该使用(define-key key-translation-map ...)而不是(keyboard-translate ...)。然而,即使交换在许多情况下没有问题(例如,Cxs),我一直在找到交换不能正常工作的情况,比如在Cu Mx eshell中(当我输入最后一条命令时,我所得到的是“eeee”,但是如果我键入Mx两次,命令按照它应该的那样工作)。你知道这个问题的解决方案吗?Emacs守护进程:交换密钥

进一步了解详细:

这就是我在我的.emacs:

;; swap C-x and C-u 
(define-key key-translation-map [?\C-x] [?\C-u]) 
(define-key key-translation-map [?\C-u] [?\C-x]) 

我使用Emacs 23.3.1。

谢谢!

回答

2

您正在看到现有的Emacs bug。我不确定此错误的优先级,但是如果您将用户故事发送到错误跟踪器电子邮件:[email protected],它将获得更多可见性并可能得到修复。