我当前的一项任务是编写一个辅助文件,其中包含要在单独编译时加载的额外命令。以下是 MWE:
\documentclass{memoir}
\newwrite\testaux
\immediate\openout\testaux=\jobname.myaux
\begin{document}
\makeatletter
\immediate\write\testaux{\noexpand\dont@want@spaces@after@this words}
\immediate\write\testaux{\unexpanded{\dont@want@spaces@after@this@either}words}
\makeatother
Here is a body.
\end{document}
这将生成一个.myaux
包含以下内容的文件:
\dont@want@spaces@after@this words \dont@want@spaces@after@this@either words
我不明白为什么这两个 e-TeX 宏都在它们的“扩展”后面放置了一个空格。我该怎么做才能写这个?
\dont@want@spaces@after@thiswords \dont@want@spaces@after@this@eitherwords
答案1
\documentclass{memoir}
\newwrite\testaux
\immediate\openout\testaux=\jobname.myaux
\begin{document}
\makeatletter
\immediate\write\testaux{\string\dont@want@spaces@after@this words}
\immediate\write\testaux{\string\dont@want@spaces@after@this@either words}
\makeatother
Here is a body.
\end{document}