是否可以自定义 emacs(使用 AucTeX),以便可以添加新模板以加快排版速度。例如,如果我想准备一封具有特定格式的信件,那么我想创建一个示例信件 tex 文件并将其保存为宏或环境并调用它,只需传递所需的参数(如日期、名称、内容等)并生成 pdf?
答案1
过了很长一段时间,我很高兴地发现了这一点:https://github.com/capitaomorte/yasnippet
我使用模板,例如用于信件,但也用于插入代码。这封信的一部分片段如下:
# -*- mode: snippet -*-
# contributor: XX
# key: YXZ-let
# group: skeleton
# name: \documentclass{scrlettr2} ...
# --
\documentclass[12pt,ngerman,zippelius8]{scrlttr2}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\setkomavar{Sachbearbeiter}{my secretary...}
\begin{document}
\begin{letter}{${1:Name}\\\
${2:Strasse}\\\
${3:PLZ Ort}\\\[1.5cm]
${4:$$(yas/choose-value '("Vorab per Telefax: " "Per Telefax: " "Vorab per E-mail: " "Per E-mail: " " "))}
\emph{${5: }}
}
但请注意,使用内置 AUCTeX 命令可以快速插入许多内容。例如,插入环境的最快方法是 Cc Ce。
上面的代码是代码片段的开头。因此语法是 yassnippet 的语法,而不是 LaTeX 的语法。以 # 开头的初始行之后的部分将作为模板插入。