我正在尝试定义一个\dfix
可以处理参数中换行符的新命令。当参数中没有换行符时,该命令可以正常工作\\
,但如果我包含换行符,LaTeX 就会出错。
如何创建一个对于换行来说是安全的命令/宏?
我想\dfix
在以下情况下
\begin{align*}
&\dfix{(A\\
&B)}{C}
\end{align*
产生与
\begin{align*}
&(A\\
&B)^\ddag_{C}
\end{align*}
类似地,$\dfix{A}{B}$
应该产生与相同的输出$A^\ddag_B$
。
这里是定义命令并尝试在各个地方使用它的 MWE。
\documentclass{minimal}
\usepackage{amsmath}
\newcommand{\dfix}[2]{\ensuremath{{#1}^\ddag_{#2}}}
\begin{document}
% This causes: ./mwe.tex:9: Missing } inserted.
\begin{align*}
&\dfix{A\\
&B}{C}
\end{align*}
% This is OK
\begin{align*}
&\dfix{A B}{C}
\end{align*}
% This also produces errors.
\begin{multline*}
\dfix{A\\
B}{C}
\end{multline*}
\end{document}
答案1
这可以满足您的要求,但是似乎构造非常奇怪,您确定这是您所需要的吗?
\documentclass{minimal}
\usepackage{amsmath}
\newcommand{\dfix}[2]{(#1)^\ddag_{#2}}
\begin{document}
% This causes: ./mwe.tex:9: Missing } inserted.
\begin{align*}
&\dfix{A\\
&B}{C}
\end{align*}
% This is OK
\begin{align*}
&\dfix{A B}{C}
\end{align*}
% This also produces errors.
\begin{multline*}
\dfix{A\\
B}{C}
\end{multline*}
\end{document}