是否明确加载 emacs 中的语法着色所需的 xparser?

是否明确加载 emacs 中的语法着色所需的 xparser?

\usepackage{xparse}我很惊讶地发现,为了使语法着色适用于 emacs 中的 LaTeX3 宏,必须将其放入序言中——或者加载xparse诸如 的包fontspec。没有\usepackage{xparse}emacs 看起来像这样: 没有 xparse非 LaTeX3 宏的颜色与预期一致。

使用\usepackage{xparse}emacs 看起来像这样: 使用 xparse

在这个网站上,人们普遍认为没有必要明确地加载,因为xparse其中的大部分内容都内置在当前的 LaTeX 版本中。然而,LaTeX3 的语法着色确实需要它。我想这可能是 AUCTeX 的问题,但我没有发现任何关于加载xparse和 AUCTeX 的具体要求。

答案1

正如 @DavidCarlisle 提到的,这是 Emacs/AUCTeX 的事情。但是,您可以xparse通过将以下内容添加到 来自动解析 praeambel 中的包并始终加载init.el

(setq TeX-parse-self t)
(add-hook 'LaTeX-mode-hook 'my/LaTeX-mode-setup)
(defun my/LaTeX-mode-setup ()
  (TeX-run-style-hooks "xparse"))

一般来说,latex3 AUCTeX 还不支持高亮显示。不过,请看一下这里获得一些好的工作技巧。

答案2

支持文档命令解析器 (又名xparse) 现在是 AUCTeX 的一部分latex.el,可从 ELPA 版本 13.2.3 (2023-12-07) 获得。此版本提供补全、字体化等 OOTB 功能,无需加载xparse.el(除了提供软件包选项外,现在几乎无需操作)。

相关内容