将Evil-Ex-Command映射到Emacs中的“ei”

时间:2016-06-29 13:53:52

标签: emacs evil-mode

在Emacs evil-mode中,我正在尝试将字符串“ei”绑定到打开我的init文件的ex命令。这就是我想出的:

(defun edit-init () (find-file "~/.emacs"))
(evil-ex-define-cmd "ei" 'edit-init)

当我尝试运行ex命令(使用“:ei”)时,Emacs告诉我“未知命令”ei“)。

我检查了evil-ex-commands变量,并且新命令正确存储在列表中。它看起来像这样:

("ei" . edit-init)

我的第一个想法是编辑的“e”的默认ex命令以某种方式干扰了命令,但是我尝试将“ew”绑定到其他窗口并且它工作正常。

我是否遗漏了有关如何创建evil-ex命令的内容?可以使用哪些字符有限制吗?

由于

1 个答案:

答案 0 :(得分:1)

您需要定义一个命令,而不仅仅是一个函数。换句话说,您的命令缺少(interactive)子句:

(defun edit-init ()
  (interactive)
  (find-file "~/.emacs"))