宏的基本定义
定义新的基本命令
可以使用\newcommand
定义宏。例如:
\newcommand{\foo}{Just foo, you see?}
定义了一个扩展为 Just foo, you see?
的宏\foo
。然后可以像任何内置命令一样使用它,例如在该定义之后:
He said: ``\foo''
扩展到
He said: ``Just foo, you see?''
使用参数定义新命令
宏也可以有参数。参数数量作为命令名称和替换文本之间的可选参数给出。在替换文本中,使用 #1
,#2
等访问参数。例如:
\newcommand{\better}[2]{A #1 is better than a #2.}
\better{solution}{problem} % gives: A solution is better than a problem
重新定义现有命令
如果已经定义了宏,则\newcommand
会给出错误。要为现有命令提供新定义,请改用\renewcommand
。除了不同的名称,语法完全相同。例如,在上面的\foo
的定义之后,可以使用:
\renewcommand{\foo}{Another foo, please.}
在重新定义之后,宏观\foo
不再扩展到 Just foo, you see?
而是扩展到 Another foo, please.