当宏不合理时需要额外的费用

当宏不合理时需要额外的费用

我制作了这个宏来帮助编写并联电阻等效公式。以下是代码:

\usepackage{xparse,etoolbox,pgffor}
\newcommand{\parallelResist}[1]{
        % TODO: fix extra + appearing at begining
        % TODO: fix requiring $ around resistors when already in math mode
        \ensuremath{
            \frac{1}{
                \def\nextitem{+}% Separator
                \renewcommand*{\do}[1]{
                    \nextitem\frac{1}{\textsf{##1}}
                }
                \docsvlist{#1}% Process list
            }
        }
    }

出于某种原因,在数学模式下使用此命令时,我必须用 $ 将参数括起来,如下所示:

\begin{equation}
    R_{eq} = \parallelResist{$R_1$, $R_2$, $R_3$}
\end{equation}

我希望能够在不使用 $ 的情况下使用它,如下所示:

\begin{equation}
    R_{eq} = \parallelResist{R_1, R_2, R_3}
\end{equation}

但这给了我一个错误:Missing $ inserted.

我的宏中的什么东西导致了这种情况?

相关内容