在特定模式下设置变量emacs
问题描述:
寻找在乳胶模式下设置变量。这个想法是,在latex模式下设置的值将覆盖custom部分中设置的相同变量的值。我对emacs非常陌生,所以这些是我的尝试:在特定模式下设置变量emacs
(add-hook 'LaTeX-mode-hook '(setq line-move-visual t))
(add-hook 'latex-mode-hook (lambda() (setq line-move-visual t)))
为什么这些不起作用?我该怎么做呢?
澄清:寻找设置变量(setq线移动可视T),因为我有它(setq线移动可视为零)的所有其他文件
答
如果你只是setq
在变量您LaTeX-mode-hook也会影响其他任何打开的缓冲区。这是可能做出改变仅仅影响当前缓冲:当您使用
(add-hook 'LaTeX-mode-hook
(lambda()
(make-variable-buffer-local 'line-move-visual)
(setq line-move-visual nil)))
而且,请注意,对于在Emacs LaTeX的默认模式的挂钩被latex-mode-hook
但钩(远远优于) AUCTeX被称为LaTeX-mode-hook
第二行应该工作。你是如何将“line-move-visual”设置为零的?这两个设置可能会造成干扰。 – legoscia
对不起,刚刚意识到你已经在你的问题中提到过。想不到第二行不行的原因,那么...... – legoscia
如果你使用的是AUCTeX库而不是内置的'tex-mode.el',那么试试如何?:((add -hook'LaTeX-mode-hook(lambda()(setq line-move-visual t)))'每个使用AUCTeX的人都会对钩子感到困惑,因为它们与内置库非常相似: https://www.gnu.org/software/auctex/manual/auctex/Modes-and-Hooks.html – lawlist