Emacs、AUCTeX 和自定义命令的缩进
Posted
技术标签:
【中文标题】Emacs、AUCTeX 和自定义命令的缩进【英文标题】:Emacs, AUCTeX and indentation of custom commands 【发布时间】:2018-06-08 16:02:20 【问题描述】:我正在准备一个包含彩色表格的文档(使用 colortbl),为了纠正这些表格中出现的细白线,我正在使用自定义换行宏来弥补这一点。但是,AUCTeX 无法识别新宏并尝试以一种奇怪的方式缩进表格。
\begintable[h]
\centering\sffamily
\begintabularlcc
\rowcolorrow1 \textbfNominative & \emphWer? & Who? \mynewline
\rowcolorrow2\textbfAccusative & \emphWen? & Who(m)? \\
\rowcolorrow1 \textbfDative & \emphWem? & To who(m)? \\
\rowcolorrow2 \textbfGenitive & \emphWessen? & Whose? \mynewline
\endtabular
\endtable
如何让AUCTeX 理解\mynewline
与\\
扮演相同的角色?
【问题讨论】:
【参考方案1】:在许多情况下,如果您将TeX-parse-self
和TeX-auto-save
设置为t
,AUCTeX 应该能够自动了解您自己的命令。见https://www.gnu.org/software/auctex/manual/auctex/Parsing-Files.html#Parsing-Files
如果这还不够,您可以使用样式文件告诉 AUCTeX 您自己的宏和环境。有关更多信息,请参阅https://www.gnu.org/software/auctex/manual/auctex/Style-Files.html#Style-Files。归结为正确使用函数TeX-add-symbols
。
请注意,距离我上次这样做已经有好几年了。
AUCTeX 附带一个用于 longtable 的样式文件,它似乎包含您需要的内容。见http://git.savannah.gnu.org/cgit/auctex.git/tree/style/longtable.el#n92
(TeX-add-symbols
;; Commands to end table rows
'("endhead" 0)
'("endfirsthead" 0)
'("endfoot" 0)
'("endlastfoot" 0)
;; Caption commands
'("caption*" 1))
【讨论】:
谢谢!我对获得答案有点失去希望......我将符号添加到列表中,但它仍然无法正常工作,我不知道为什么。现在 auctex 知道自定义换行命令,但我不确定它知道如何缩进,因为缩进的行为方式相同。至少,这对我来说是一个指针。至少现在我知道要寻找什么了!! =)以上是关于Emacs、AUCTeX 和自定义命令的缩进的主要内容,如果未能解决你的问题,请参考以下文章