\seq_put_right 放置在枚举项中时不会执行

\seq_put_right 放置在枚举项中时不会执行
\documentclass[a4paper, titlepage, twocolumn]{article}

\usepackage{expl3}

\ExplSyntaxOn

\seq_new:N \myStack

\begin{document}
    \begin{enumerate}
        \item\seq_put_right:Nn \myStack {1}
    \end{enumerate}

    \seq_put_right:Nn \myStack {1}  

    \seq_count:N \myStack
\end{document}

此代码输出:

  1.
1

这让我相信,\seq_put_right当命令放在 中时,它不会被执行\item。然而,它在枚举之外有效。

我如何才能执行此命令并将值添加到序列/堆栈中?

答案1

它确实执行,但进行了在 处被丢弃的局部分配\end{enumerate},您会看到与简单组相同的情况{},它与 无关\item

\documentclass[a4paper, titlepage, twocolumn]{article}

\usepackage{expl3}

\ExplSyntaxOn

\seq_new:N \myStack

\begin{document}
{\seq_put_right:Nn \myStack {1}}


    \seq_put_right:Nn \myStack {1}  

    \seq_count:N \myStack
\end{document}

您可以使用\seq_gput_right:Nn它来进行全局分配。

相关内容