最近发布的(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}}}