Emacs:禁用所有 Lisp 缓冲区的特定次要模式

标签 emacs lisp elisp evil-mode paredit

我想避免 evil-mode 之间发生冲突和 paredit通过对后者处于事件状态的缓冲区禁用前者。

以下代码不起作用:

(add-hook 'emacs-lisp-mode-hook 'turn-off-evil-mode)
(add-hook 'lisp-mode-hook 'turn-off-evil-mode)
(add-hook 'lisp-interaction-mode-hook 'turn-off-evil-mode)
(add-hook 'inferior-lisp-mode-hook 'turn-off-evil-mode)
(add-hook 'clojure-mode-hook 'turn-off-evil-mode)
(add-hook 'scheme-mode-hook 'turn-off-evil-mode)
(add-hook 'ielm-mode-hook 'turn-off-evil-mode)
(add-hook 'eval-expression-minibuffer-setup-hook 'turn-off-evil-mode)

换句话说,如何自动禁用所有 Lisp 缓冲区的 evil-mode ?

最佳答案

您可以建议paredit-mode:

(defadvice paredit-mode (around paredit-disable-evil activate)
  (if paredit-mode
      ad-do-it
    (turn-off-evil-mode)
    ad-do-it))

另外,你尝试过lispy吗? ?这是我的 受 vi 启发的类似 Paredit 的包。它的功能比 Paredit,如内联评估、区域操作和轮廓。

关于Emacs:禁用所有 Lisp 缓冲区的特定次要模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28026117/

相关文章:

emacs - tmux 覆盖 emacs 快捷方式

emacs - Emacs 中 C-i 和 tab 是什么关系?

lisp - 如何使用 SBCL 的 SB-SPROF 分配分析?

emacs isearch 整个缓冲区的惰性突出显示

emacs - 如何在我的 elisp 包中优雅地放弃对旧版 emacsen 的支持?

emacs - Bookmark+ 使用临时文件,尽管已要求特定文件

arrays - 在 SBCL 中读取带有类型槽的结构

评估函数时出现 Lisp void-variable 错误

regex - 恢复 Emacs 中的垂直缓冲区位置

emacs - 你的 .emacs 里有什么?