选项卡中的嵌套环境

选项卡中的嵌套环境

似乎在制表环境中使用嵌套环境以及新行会导致错误Extra }, or forgotten \endgroup

这是一个最小的工作示例:

\documentclass{article}

\usepackage{xparse}

\newenvironment{myouter}{\begin{tabbing}}{\end{tabbing}}
\newenvironment{myinner}{}{}

\begin{document}
    \begin{myouter}
        this works \\
    \end{myouter}

    \begin{myouter}
        \begin{myinner}
            so does this
        \end{myinner}
    \end{myouter}

    \begin{myouter}
        \begin{myinner}
            this doesn't \\
        \end{myinner}
    \end{myouter}
\end{document}

有人知道如何解决这个问题,或者是什么原因造成的?

答案1

如果您的内部环境设置了一个\\具有适当定义的环境,那么它就可以正常工作。

\documentclass{article}


\newenvironment{myouter}{\begin{tabbing}}{\end{tabbing}}
\newenvironment{myinner}{\begin{minipage}{2cm}}{\end{minipage}}

\begin{document}
    \begin{myouter}
        this works \\
    \end{myouter}

    \begin{myouter}
        \begin{myinner}
            so does this
        \end{myinner}
    \end{myouter}

    \begin{myouter}
        \begin{myinner}
            this doesn't \\
        \end{myinner}
    \end{myouter}
\end{document}

如果环境定义是空的,则\\内部环境中的是\\tabbing,并且不能像所有对齐单元格一样作为制表单元格工作,它们是组您不能在一个组中启动环境并在另一个组中结束它,它本质上是这样的,这会产生相同的错误

\documentclass{article}

\newenvironment{myinner}{}{}

\begin{document}
 { \begin{myinner} }  { \end{myinner} }
\end{document}

相关内容