我习惯于为经常使用的任何数学表达式定义自己的小宏。例如,我有一个用于随机变量的期望值的宏:
\providecommand{\ev}[1]{\mathbb{E} \left[#1 \right]}
事实证明,这非常有用,原因如下:
- 我没什么可写的。
- 我的文档源很整洁。
- 我可以专注于语义而不是排版。
在非数学模式下,这是默认设置:我指定我想要的内容(例如小节),而不是它应该是什么样子(例如大号和粗体,字母大写)。即使在数学模式下,某些命令(例如\frac
)也带有附加的语义。我能想到的另一个优点是,可以更轻松地根据不同的喜好调整文档:有些人可能习惯于使用\mathbb{E}
,其他人则习惯于使用粗体或甚至普通的E
来表示预期值。具有语义的宏将允许快速更改符号。
考虑到所有这些,我竟然找不到提供此类命令的软件包,这似乎相当令人惊讶。我是在错误的地方寻找,还是有充分的理由不去做我尝试做的事情?
答案1
答案2
当然,在编写 TeX/LaTeX 文档时,用 LaTeX 宏替换常用的字母/字符序列(尤其是当这些序列体现了可能会发生全局变化的风格和审美选择(例如,由于期刊的内部风格))是一个很好的习惯。您观察到:
似乎相当令人惊讶的是,我没能找到一个能提供此类命令的包。
我怀疑你自己的一组有用且方便的宏,显然在很大程度上取决于该领域你并且嵌入在这些宏中的风格偏好很可能是为了适应你的需求和工作习惯,它们可能对其他人没有多大用处。相反,如果其他人写了一个包,收集了他们的最喜欢的缩写并融入他们的偏好,最终的软件包可能在极小的圈子之外没有多大用处。
也就是说,如果您有本科生和/或研究生正在学习使用 TeX 和 Friends,您可以给他们提供您的宏集合作为模板,让他们可以调整和扩展,这对他们有很大帮助。:-)
我想,如果《LaTeX 初学者指南》的作者强调养成良好工作习惯的重要性,并且指出这些良好工作习惯之一就是制定一套宏,这样以后可以节省大量时间,那么这也是一个好主意。:-)
答案3
以 section 命令为例。这是一个很好的语义命令。我们都明白对它的期望是什么。那么为什么有多个包重新定义了该命令的功能和外观呢?因为人们希望他们的 section 命令看起来不同。数学形式主义也面临同样的压力。
除了定义一堆快捷方式之外,你还指望这个假定的包能做什么?如果它只做这些,那它就没用了。拥有一个你必须在手册中查找的快捷方式而不是你自己编写的快捷方式有什么意义呢?