这看起来像一些基本的Emacs配置问题,我不明白。在Emacs中禁用软件包的键绑定覆盖
我在网站上预装了Emacs 24.3。在Verilog文件中,按M-s绑定到p4-current-file“edit”(Perforce操作),同样M-e绑定到p4-current-file“sync”。一切都很好。 问题出在VHDL文件中,M-s也是这样,但是M-e绑定到“vhdl-end-of-statement”。我希望它能像Verilog一样进行“p4编辑”。
似乎vhdl-mode覆盖了M-e键功能,而且我也找不到如何永久地改变它。如果我执行本地未设置密钥并取消设置M-e,我会得到期望的结果,M-e会执行p4编辑,但是当我重新启动Emacs M-e时,会再次执行“vhdl-end-of-statement”。
如何更改M-e永久执行“p4编辑”?我在Lisp中不太流利,但很乐意得到如何改变这个问题的说明。 谢谢。
注意,在许多重大的模式, “我”将被设置为与句子结尾/句末相当的部分。您可能会发现在日志运行中更容易重新绑定您的perforce绑定。 – Squidly 2014-12-02 14:30:53
在VHDL模式下查看它使用的键盘映射代码 - 很可能是'vhdl-mode-map'。在该键盘映射中定义“M-e”作为你想要的命令。如果需要的话(例如,如果模式映射一开始就没有定义),你可以在模式钩子中放入'define-key' sexp,以便在模式打开时生效。 – Drew 2014-12-02 15:14:46
MrBones,感谢您的建议,我会这样做,这也是最简单的解决方案来更改perforce绑定(请参阅下文) – avshae 2014-12-03 11:54:03