\newcommand 定义带有可选参数的快捷方式(衍生包)

\newcommand 定义带有可选参数的快捷方式(衍生包)

最近发布的(2021 年 6 月)衍生物\odif软件包中包含了可用于排版差异的命令。

例如,\odif[order={3}]{x}产生类似的结果d^3x

因为我正在替换物理包,所以我想添加一个来\newcommand替换。\dd[3]{x}\odif[order={3}]{x}

我知道那\newcommand{\dd}[1]{\odif{#1}}会取代\dd{x}\odif{x}我不知道如何处理可选参数。

答案1

当可选参数为空时,您可以提供标记来决定是否存在可选参数。

\newcommand*\dd[2][\relax]{\ifx\relax#1\odif{#2}\else \odif[order={#1}]{#2}\fi}

xparse有一个机制:

\NewDocumentCommand\dd{ o m }{\IfNoValueTF{#1}{\odif{#2}}{\odif[order={#1}]{#2}}}

相关内容