在文本后面呼应特定的短语

在文本后面呼应特定的短语

我正在写大学课程大纲。它包含一个表格,其中概述了日期和主题,以及文本后面特定主题的更详细的大纲。理想情况下,我想将日期输入表格中,并让文本中的其他地方回显日期,这样我就不必在多个地方进行更改。我确信这是可能的,我只是不知道怎么做。

答案1

使用xparse,您可以执行类似这样的操作。请注意,这使用了 LaTeX3 团队的新实验性(但稳定)语法。它适用于类和包开发人员,因此它遵循与 LaTeX 和 TeX 非常不同的语法。当然,也可以在 TeX 中编写相同的代码。

在这里,您可以通过书写获取信息\vars{name},其中name会显示您的姓名。

当然,您可以只使用常规方法\newcommand{\myname}{John Doe},然后通过调用来获得变量\myname。这取决于您想要哪种语法。

输出

在此处输入图片描述

代码

\documentclass{article}

\usepackage{xparse}

\ExplSyntaxOn
\NewDocumentCommand{\vars}{m}
 {
    \str_case_x:nn {\str_foldcase:n {#1}}
     {
      {name}{John\ Doe}
      {phone}{555\,12345}
      {mytable}{%
        \begin{tabular}{lr}
          \hline
          Foo & Bar \\
          \hline
          \vars{name} & \vars{phone}\\
          \hline
        \end{tabular}
        }
     }
 }
\ExplSyntaxOff

\begin{document}

My name is \vars{name}.

\begin{table}[hbt]
  \centering
  \caption{My info}
  \vars{mytable}
\end{table}


\end{document}

相关内容