新的命令定义-帮助理解

新的命令定义-帮助理解

我正在尝试理解如何使用下面的用户定义命令。有人能帮我理解这个命令是如何工作的吗?特别是,我对[0.25em]这里的{@{}l}{l@{}}的作用有点困惑。后两者似乎是某种对齐,但我似乎找不到关于此的明确信息。

另外,if else最后的声明有什么作用?

\newcommand*{\customcventry}[7][.25em]{
  \begin{tabular}{@{}l} 
    {\bfseries #4}
  \end{tabular}
  \hfill% move it to the right
  \begin{tabular}{l@{}}
     {\bfseries #5}
  \end{tabular} \\
  \begin{tabular}{@{}l} 
    {\itshape #3}
  \end{tabular}
  \hfill% move it to the right
  \begin{tabular}{l@{}}
     {\itshape #2}
  \end{tabular}
  \ifx&#7&%
  \else{\\%
    \begin{minipage}{\maincolumnwidth}%
      \small#7%
    \end{minipage}}\fi%
  \par\addvspace{#1}}

下面是其用法的一个示例(实际上,自从我下载模板后我已经改变了它,所以我不确定这是否是最初的预期用途):

{\customcventry{Adviser:}{Degree Name}{University of Blah}{Expected Graduate date}{}{Concentration: }}

以及相应的输出 在此处输入图片描述

相关内容