使用新命令而不是 \begin{something} 的缺点是什么?

使用新命令而不是 \begin{something} 的缺点是什么?

定义和使用 \newcommand 而不是 \begin{something} 是否存在缺点。例如如果我使用

\newcommand{btkz}{\begin{tikzpicture}} \newcommand{etkz}{\end{tikzpicture}} \btkz \node{Hello World}; \etkz

实际上,我正在制作 Beamer 演示文稿,我经常使用 tikzpicture 和 itemize,每次都输入东西真的让我很厌烦。而且我真的很懒(我相信你现在已经猜到我有多懒了)。那么像上面那样使用和\begin{} \end{}会有什么坏处吗?这会在某个阶段给我带来麻烦吗?\btkz\etkz

答案1

许多人将编辑器设置为自动执行此类操作。我个人使用片段里面vim,我强烈推荐,用于此类事情。例如,要编写tikzpicture环境,我只需键入tikz,然后单击<tab>。这会插入完整环境,比您的两个快捷方式快得多。大多数编辑器都有类似的工具。

我认为定义此类快捷方式的主要缺点是:

  • 它们使其他人更难阅读你的 tex 文件
  • 有些期刊会抱怨,有些则不接受与他们一起撰写的论文(例如,对于 AMS,非标准宏可能会延迟您的论文发表)
  • 它们对合作者来说尤其成问题
  • 如果你没有仔细定义快捷方式,那么你可能会意外破坏某些东西。例如,正如 Gonzalo 上面指出的那样,你的 tikz 快捷方式不接受可选参数,因此即使你没有破坏任何东西,你也失去了功能
  • 快捷方式通常会导致更加隐秘的错误信息,而且比 TeX 生成的“标准”隐秘错误信息更难追踪。

相关内容