我已经定义了一个新环境。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-self
。 t
现在重新启动 Emacs 并再次打开您的 .tex 文件。