我目前正在用 LaTeX 创建通用发票。稍后我不想更改文档,而是更改只包含变量的一小部分。目前它运行良好,但现在我想引入一个在英语和德语之间切换语言的变量。因为 babel 包的 \selectlanguage 只在文档部分中起作用,所以我必须为此定义一个变量。
我尝试过
\def\documentLanguage{english}
和
\newcommand{\documentLanguage}{english}
然后在文档部分
\begin{document}
\selectlanguage{\documentLanguage}
这两个方法都不起作用,因为出现错误“您尚未定义 documentLanguage”。我认为 \ 不知何故被删除了,解析器只是将“documentLanguage”读取为字符串。
有办法纠正这个问题吗?
谢谢!
答案1
你可以做
\expandafter\selectlanguage\expandafter{\documentLanguage}
(由于历史原因,\selectlanguage
其参数被字符串化,因此那里的控制序列没有扩展)。
我更喜欢采用不同的方法,但这需要了解实施的细节。