假设我正在写一篇很长的文档,我想用字母$n$
来表示尺寸,例如在$\mathbb R^n$
整个论文中。在写作过程的后期,我意识到我想$n$
代表其他东西,并决定改用$m$
。我不能只搜索和替换字母n
;regex
搜索可能太宽泛,但例如替换$\mathbb R^n$
可能太狭窄$\mathbb R^{2n+1}$
。
为了避免这种情况,使用命令(例如\newcommand{\dimn}{n}
,在文档的任何地方使用$\mathbb R^{\dimn}$
,就像编程语言中的常量一样)是一种好的做法吗?或者这是误用/滥用还是不是一个好主意?我将与其他人合作撰写此文档。
答案1
最好为这些事物定义命令(或控制序列),因为它允许在全球范围内进行更改。也许,更进一步,你甚至应该在其他层次结构项目中定义命令
\newcommand{\Rn}[1]{\mathbb{R}^{#1}}
因为您可能有兴趣使用\mathcal
而不是\mathbb
稍后再使用。有关此内容的更多信息以及其他一些一致性建议,请参阅一致的字体。您会注意到@egreg 的回答正是出于保持一致性的目的而提供了这一建议。基于宏的语言(如 (La)TeX)默认会适应(甚至可能鼓励)这一点。
另一个建议是定义一些通用命令并使用可选参数或带星号的版本,从而使生成的输出更加具体。为此,xparse
可能会很有帮助。以我上面的例子为例:你可以\Rn
定义\Cn
\usepackage{xparse}% http://ctan.org/pkg/xparse
\NewDocumentCommand{\Rn}{O{R} m}{\mathbb{#1}^{#2}}%
这将允许您使用\Rn{\ndim}
或\Rn[C]{\ndim}
。也就是说,只有一个命令,带有一个可选参数,允许对您的符号进行小幅修改。本质上,它归结为同一件事,因此可能取决于个人喜好。