highlight-indentation emacs启动

时间:2011-12-16 10:13:00

标签: emacs elisp config

我一直在学习emacs和lisp,所以我确定我错过了一些东西,但是当我开始使用emacs时,我正试图让突出显示缩进工作。

我的emacs路径中有highlight-indentation.el文件,启动后我可以

M-x高亮缩进

并且一切正常,但我如何在启动时使用它。我想放

(高亮压痕)

我的.emacs文件中的

会起作用,但事实并非如此。这是因为突出显示缩进是一个交互功能吗?

3 个答案:

答案 0 :(得分:5)

该功能仅适用于当前缓冲区。我建议使用如下所示的 hook 。当为特定缓冲区启用主模式时,将执行添加到主模式挂钩的功能。

(defun my-emacs-lisp-mode-hook ()
  (highlight-indentation))
(add-hook 'emacs-lisp-mode-hook 'my-emacs-lisp-mode-hook)

答案 1 :(得分:3)

highlight-indentation.el实际上创建了一个次要模式,它将自动突出显示缩进,适当地称为高亮缩进模式。您可以在

部分下看到相关功能
  

;;; ###自动加载

  

define-minor-mode highlight-indentation-mode

  

define-minor-mode highlight-indentation-current-column-mode

要使用它们,请添加一个像Lindydancer建议的钩子,但是不要创建一个调用highlight-indentation函数的新钩子,只需写下:

  

(add-hook'magcs-lisp-mode-hook'intece-indentation-mode)

我更喜欢(相当冗长)highlight-indentation-current-column-mode,它只是突出显示光标所在的列。它有点干净,但仍然显示了不同级别代码之间的关系。

编辑:我对此进行了两年的更新,但对于希望获得突出显示缩进模式适用于所有编程联盟的未来互联网漫游者,您可以这样做:

  

(add-hook'prog-mode-hook'highlight-indentation-mode)

答案 2 :(得分:0)

这实际上取决于highlight-indentation的作用。检查其效果是否在*scratch*缓冲区中不可见。