标题中全是。如何在 中输出回车符\message
。出于调试目的,我需要获取可读的消息。显然,这行不通:\message{A\cr B}
输出A\cr B
并\message{A\\B}
产生如下错误
Undefined control sequence.
\\ ->\let \reserved@e
\relax \let \reserved@f
感谢您的帮助 !
答案1
你没有说,但\reserved@a
建议你在这种情况下使用乳胶
\message{ab^^Jcde}
虽然使用乳胶结构更好,例如\typeout
或\PackageInfo
在普通的 TeX 中,\message
如果您设置
\newlinechar=`\^^J
答案2
原\message
语以与 相同的方式扩展输入,\edef
并且需要一些产生“原始”新行的东西来获得所需的效果。另一方面,\\
是产生换行符的命令排版,所以在这里失败了(它也不可扩展,因此出现了奇怪的错误)。因此,您需要插入一个等于 的字符\newlinechar
。在 LaTeX 格式中,这是^^J
:
\message{a^^JB}
\stop
对于没有设置的格式(如纯文本),你还需要覆盖
\begingroup
\newlinechar=`^^J %
\message{a^^JB}
\endgroup
\end