如何为特定模式设置Emacs的fill-column?

19

我想在Clojure-mode下将Emacs中的fill-column设置为120,但否则保留默认值(80)。

我该如何在我的.emacs文件中完成这个操作?

谢谢。

2个回答

29

将调用 set-fill-column 添加到 clojure-mode-hook 中。

(add-hook 'clojure-mode-hook
          (lambda ()
            (set-fill-column 120)))

fill-column是缓冲区本地变量,它不会影响其他缓冲区。实际上,您可以通过M-x set-fill-column RET 120在任何 Emacs 缓冲区中交互式地设置填充列。

您可以通过调用帮助:C-h v fill-column 来检查变量是否为缓冲区本地变量,该命令说明:

在任何方式下设置后将自动成为缓冲区本地变量。


2

fill-column是一个缓冲区本地变量,即它可以在每个缓冲区中具有唯一的值(如果您希望)。因此,您可以在clojure-mode挂钩中设置它。


更多信息请参见Emacs Wiki页面上的缓冲区本地变量:https://www.emacswiki.org/emacs/BufferLocalVariable另请参阅Emacs手册第11.10节:https://www.gnu.org/software/emacs/manual/html_node/elisp/Buffer_002dLocal-Variables.html#Buffer_002dLocal-Variables - Christian Herenz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接