只要提供 newcommand/def,就将其应用于下标

只要提供 newcommand/def,就将其应用于下标

我定义了一个\blue经常与下标一起使用的命令,例如

\newcommand{\blue}[1]{{\color{blue} \textup{\textbf{#1}}}}
\blue{v}_{\blue{ij}}

问题:有没有办法定义\blue这样一种方式,我可以简单地

\blue{v}_{ij}

获得与 相同的结果\blue{v}_{\blue{ij}},而不改变 的行为\blue{v}

答案1

就我个人而言,我不太喜欢这种将其行为隐藏在明显更简单的语法之下的构造,但是您可以这样做:

\documentclass{article}

\usepackage{color}
\NewDocumentCommand{\blue}{me{_}}{\mathcolor{blue}{\mathbf{#1}\IfValueT{#2}{_{\mathbf{#2}}}}}

\begin{document}
See $\blue{v}$ or $\blue{v}_{ij}$, but $\blue{v}^a$
\end{document}

在此处输入图片描述

相关内容