AUCTeX:使新环境可在 Cc Ce 之后完成

AUCTeX:使新环境可在 Cc Ce 之后完成

我已经定义了一个新环境。argument现在我想将“参数”作为点击后的可能补全之一C-c C-e,并在选择它时提示输入可选参数。

不幸的是,我甚至无法完成这两个步骤中的第一步,添加“参数”作为可能的完成之一,更不用说被提示了。

我已将以下内容添加到我的.emacs文件中,最低限度地改编了手册中的示例。

(add-hook 'LaTeX-mode-hook
   (lambda ()
     (LaTeX-add-environments
       '("argument" LaTeX-env-label))))

但是重新加载配置文件之后,我点击了C-c C-e并且没有得到“参数”作为选项之一。

答案1

完成手写 LaTeX 包的通常做法是编写相应的 AUCTeX 样式文件。假设您的 LaTeX 文件如下所示:

\documentclass{article}

\usepackage{myenvs}

\begin{document}
\begin{argument}[Optional argument}
  Content
\end{argument}
\end{document}

%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:

argument并且您已在 中定义了环境myenvs.sty。AUCTeX 样式myenvs.el应如下所示:

(TeX-add-style-hook
 "myenvs"
 (lambda ()
   (LaTeX-add-environments
    '("argument" [ "argument" ])))
 TeX-dialect)

将此文件保存在存储在变量中的目录中TeX-style-private,例如在您的初始化文件中像这样的内容或使用customize

(setq TeX-style-private (expand-file-name "~/.emacs.d/auctex-styles"))

确保您还必须TeX-parse-selft现在重新启动 Emacs 并再次打开您的 .tex 文件。

相关内容