定義可重複使用內容-最好在正文中或在標題中

定義可重複使用內容-最好在正文中或在標題中

我正在編寫一份文檔,其中人 A 的姓名將出現在 A 部分的多個位置。

有什麼方法可以在A節之前定義一個變量,例如PersonName,為其分配與A人相關的值,並在A節中使用它。 ,等等。

如果PersonName不能在body中定義,我可以在序言中聲明它並在body中繼續為其分配不同的值嗎?

答案1

這正是宏的用途。您可以使用 定義自己的巨集\newcommand{\command}{<actions>},並使用 重新定義它們\renewcommand。這兩個命令都可以在文件中的任何位置給出,因此您可以執行以下操作:

\documentclass{article}
\begin{document}
\section{Section A}
\newcommand{\PersonName}{Person A}
Some text written by \PersonName.

\section{Section B}
\renewcommand{\PersonName}{Person B}
Some text written by \PersonName.
\end{document}

答案2

隨著scontents包很容易滿足您的需求。全部存儲在內存中,當然,如果您喜歡外部文件,可以使用環境版本和密鑰write-env=file.tex,除了將它們存儲在內存中之外,您還可以將內容放在單獨的文件中,然後使用\input.我更喜歡保存在內存中:)

\documentclass{article}
\usepackage{scontents}
\setupsc{store-cmd=person}
\Scontents{Person A}
\Scontents{Person B}
\begin{document}
\section{Section A}
Some text written by \getstored[1]{person}

\section{Section B}
Some text written by \getstored[2]{person}
\end{document}

相關內容