AUCTeX中的乳胶 - 电 - 对 - 模式

时间:2012-10-31 15:46:33

标签: emacs latex elisp auctex

普通tex模式的人有added一个非常好的功能,emacs 24.1,一个名为 latex-electric-env-pair-mode 的小模式,它保持现有的{{ 1}}对匹配。即更改\begin{...} [...] \end{...}标记中的环境名称时,其对应的\begin{...}会自动更改(从星号更改为非加星标的版本时非常好,反之亦然)。

然而,当与AUCTeX比较时,tex模式仍然很糟糕......但我真的很喜欢新的次要模式。我试图通过将看起来像是从tex-mode.el中使用的所有内容复制到新文件并更改所有描述符来创建一个独立的次要模式(因此它们不会与AUCTeX或tex的任何剩余部分冲突)模式)。不幸的是,这不起作用,可以打开次要模式,但它已经破了:没有任何事情发生。

我不是(e)lisp程序员,也就是说我不太了解代码。但也许有人喜欢这种次要模式的功能,并可以将其移植到一个独立的版本? 还有可能有一些包提供类似/相同的功能?

我很感激任何帮助!

1 个答案:

答案 0 :(得分:3)

您可能错过了tex-env-mark(设置了latex-electric-env-pair-mode稍后用于查找环境启动器/启动器的标记)或latex-syntax-propertize-rules(在tex-env-marks上运行syntax-propertize-function的相关部分。缓冲区)或latex-syntax-propertize-rules的设置(使用(defconst my-latex-syntax-propertize-function (with-temp-buffer (latex-mode) syntax-propertize-function)) (add-hook 'LaTeX-mode-hook (lambda () (set (make-local-variable 'syntax-propertize-function) my-latex-syntax-propertize-function) (latex-electric-env-pair-mode 1))) 以便实际使用这些规则)。

顺便说一句,我建议您尝试下面未经测试的代码,而不是复制这些内容:

{{1}}