【发布时间】:2014-02-06 14:03:33
【问题描述】:
我有几个主要模式(例如:Yaml 和 NXML),我不想要电子缩进模式(我想要它用于类似 C 的语言),但如果关闭,我将无法关闭。要启用我有:
(electric-indent-mode 1)
来自文档(用于可变电缩进模式)
如果启用了 Electric-Indent 模式,则为非 nil。 见命令
electric-indent-mode' for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info nodeEasy Customization') 或者调用函数“electric-indent-mode”。
对于函数
切换即时重新缩进(电动缩进模式)。带前缀 参数 ARG,如果 ARG 为正,则启用 Electric Indent 模式,并且 否则禁用它。如果从 Lisp 调用,如果 ARG 是启用模式 省略或为零。
所以我尝试将其关闭:
(add-hook 'yaml-mode-hook (lambda ()
(electric-indent-mode -1)))
(实际上我使用 after-change-major-mode-hook 并检查 (memql major-mode '(yaml-mode python-mode nxml-mode)) 我可以在列表中添加更多模式)。
但是不行,我也试过了:
(set (make-local-variable 'electric-indent-mode) nil)
没有快乐。但是当我从 .emacs 文件中评估 (electric-indent-mode -1) 时它会起作用。
【问题讨论】:
标签: emacs elisp major-mode