我正在尝试为emacs 23设置多项,但是
(setq term-unbind-key-list '("C-z" "C-x" "C-c" "C-h" "C-y"))
排除了我所看到的所有推荐用于摆脱键绑定冲突的网站不起作用 - 例如,我仍然不能将C-z从man页面中删除。 在emacs 23中有什么变化吗?我如何正确解开它们?
答案 0 :(得分:4)
变量term-unbind-key-list
仅影响键映射term-raw-map
中的绑定。你可以通过查看函数multi-term-keystroke-setup
的文档找到这个(不知道为什么这个信息不适用于变量本身......)
按键设置`term-char-mode'。
默认情况下,
term-char-mode' conflict with user's keystroke. So this function unbinds some keys with
term-raw-map'的键绑定和 用“term-raw-map”绑定一些击键。
所以......很可能 C-z 仍然绑定到suspend-frame
b / c,这就是Emacs默认做的事情。
如果您想将 C-z 绑定到终端(suspend-job
)中的正常位置,您可以这样做:
(require 'multi-term)
(add-to-list 'term-bind-key-alist '("C-z" . term-stop-subjob))
这使得绑定做了你想要的(我猜)。