在 LaTeX 中定義新參數

在 LaTeX 中定義新參數

我已經嘗試過很多次類似以下的事情:

\def\variable{English}

稍後可以透過以下方式使用:

\selectlanguage{\variable}

我正在尋找一種解決此類問題的通用方法(我想預先定義可以傳遞給命令的參數)。

類似的問題如下:您想要定義\list傳遞給 的參數字串\printbibliography[\list]

如果有人能幫助我,我將非常感激,因為我無法透過谷歌解決這個問題。

答案1

好吧,我自己來回答我的問題:

正如egreg 提供的連結中指出的,技巧是使用\expandafter

在第一種情況下:

\def\Language{english}
\expandafter\selectlanguage\expandafter{\Language}

在第二種情況下:

\def\arg{prenote=note}
\expandafter\printbibliography\expandafter[\arg]

(當然,假設您已經使用例如定義了“註釋” \defbibnote{note}{testnote})。

進一步演示應用程式的另一個用例可能是\includegraphics

    \def\options{height=3em}
    \expandafter\includegraphics\expandafter[\options]{pathtopicture}

感謝egreg 提供的有用連結!

相關內容