新环境、多色和空间问题

新环境、多色和空间问题

为什么跳线在这里会引起问题?

\documentclass{article}
\usepackage{multicol,xparse}

\NewDocumentEnvironment{DeuxCols}
    {
    D<>{30pt}
    O{.5pt}
    mm
    }{%
    \setlength{\multicolsep}{0pt}%
    \setlength{\columnsep}{#1}%
    \setlength{\columnseprule}{#2}%
    \begin{multicols}{#3}%
    #4}{%
    \end{multicols}%
    \addvspace{2pt}}

\begin{document}

\begin{DeuxCols}{2} % works
Bla
\end{DeuxCols}

\begin{DeuxCols}{2} % doesn't work

Bla
\end{DeuxCols}

\end{document}

答案1

这里您不需要它,只需在第一种情况下#4拾取环境的第一个标记,在第二种情况下(产生错误)拾取环境的第一个标记。B\par

\NewDocumentEnvironment{DeuxCols}
    {
    D<>{30pt}
    O{.5pt}
    m
    }{%
    \setlength{\multicolsep}{0pt}%
    \setlength{\columnsep}{#1}%
    \setlength{\columnseprule}{#2}%
    \begin{multicols}{#3}%
    }{%
    \end{multicols}%
    \addvspace{2pt}}

相关内容