从一系列环境到一张桌子

从一系列环境到一张桌子

我有三个环境AB并且C,在我的文档中A始终跟着BA并且B始终包含在中C

例如 :

\begin{C}
 \begin{A}
  blabla
 \end{A}
 \begin{B}
  blabla
 \end{B}
\end{C}

是否可以重新定义这些环境来制作表格。

我尝试过类似

\newenvironment{C}{\begin{tabular}{cc}}{\end{tabular}{cc}}
\newenvironment{A}{}{&}
\newenvironment{B}{}{\\}

但它不起作用。

答案1

是的,但分组导致了问题。由于你只对调整\end{<env>}函数的方式感兴趣,etoolbox \AfterEndEnvironment{<env>}可以在这里提供帮助。

在此处输入图片描述

\documentclass{article}

\usepackage{etoolbox}
\newenvironment{C}{\begin{tabular}{cc}}{\end{tabular}}
\newenvironment{A}{}{}
\AfterEndEnvironment{A}{&}
\newenvironment{B}{}{}
\AfterEndEnvironment{B}{\\}

\begin{document}

\begin{C}
  \begin{A} 1 blabla A \end{A}
  \begin{B} 2 blabla B \end{B}
  \begin{A} 3 blabla A \end{A}
  \begin{B} 4 blabla B \end{B}
  \begin{A} 5 blabla A \end{A}
  \begin{B} 6 blabla B \end{B}
\end{C}

\end{document}

相关内容