
Я много раз пробовал что-то вроде следующего:
\def\variable{English}
который можно будет использовать позже следующим образом:
\selectlanguage{\variable}
Я ищу универсальный способ решения таких проблем (я хочу заранее определить аргументы, которые можно будет передавать командам).
Похожая проблема может быть следующей: вы хотите определить строку аргументов, \list
передаваемых в \printbibliography[\list]
.
Я был бы очень благодарен, если бы кто-нибудь мог мне помочь, так как я не смог решить эту проблему с помощью Google.
решение1
Хорошо, я сам отвечу на свой вопрос:
Хитрость, как указано в ссылке, предоставленной egreg, заключается в использовании \expandafter
:
В первом случае:
\def\Language{english}
\expandafter\selectlanguage\expandafter{\Language}
Во втором случае:
\def\arg{prenote=note}
\expandafter\printbibliography\expandafter[\arg]
(конечно, если вы определили «note», используя, например \defbibnote{note}{testnote}
).
Другим вариантом использования для дальнейшей демонстрации приложений может быть \includegraphics
:
\def\options{height=3em}
\expandafter\includegraphics\expandafter[\options]{pathtopicture}
Спасибо egreg за полезную ссылку!