繁体   English   中英

排除LaTeX模式挂钩是个好主意吗?

[英]Is it a good idea to factor out LaTeX-mode-hook?

排除(add-hook 'LaTeX-mode-hook)是个好主意吗? 这样做有什么优点和缺点。

例如,您可以编写:

(add-hook 'LaTeX-mode-hook (lambda ()
;;(add-to-list [...]
)

(add-hook 'LaTeX-mode-hook 'TeX-PDF-mode)

;;[...lots of other LaTeX config stuff]

(add-hook 'LaTeX-mode-hook 'flyspell-mode)

或者可以排除LaTeX-mode-hook语句并编写如下内容:

(add-hook 'LaTeX-mode-hook (lambda ()

;;(add-to-list) [...]

(TeX-PDF-mode)

;;[...lots of other LaTeX config stuff]

(flyspell-mode)
))

您的问题有两个部分:分解和使用lambda。

我发现分解是一个好主意,因为维护.emacs文件更容易,因为在其中添加钩子的位置只有一个。 但是,为此目的而使用lambda却很少。 如果您在使用lambda之后查看钩子的值,您会发现它是“丑陋的”。 此外,在该钩子上工作将更加困难。 例如,有时您想使用remove-hook禁用remove-hook 当显式命名钩子而不是使用lambda时,这样做会更容易。

我不会说这很重要:您可以通过使用两种类型的语句在*scratch*评估LaTeX-mode-hook来进行检查。 看起来会稍有不同,但是执行行为应该相同。

将其保留在一个lambda一个优点是它更易于维护。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM