如何定义可破坏、可恢复的三列表环境

如何定义可破坏、可恢复的三列表环境

我如何获得以下内容?它应该具有一些特点:

  1. 列表环境可以跨页;
  2. 列表环境中的每一行都有 3 列。第 1 列(计数器)左对齐。第 2 列右对齐。第 3 列左对齐。
  3. 列表环境能够恢复。在下面的文件中,3b 之后我们有一些文本,之后我们有 4a。
  4. 我们可以为每个列表项添加一个标签(例如\label{1a}\label{2}),并且可以在正文的任何​​地方引用此项目。例如,我们将其放入in \ref{1a}TeX 文件中,输出文件中就会有in 1a.。

在此处输入图片描述

答案1

longtable可以在这里提供帮助(更新了子项目编号,并根据要求再次调整了编号): 在此处输入图片描述

\documentclass{article}
\usepackage{array,longtable}

\setlength\textheight{10\baselineskip}

\begin{document}


\renewcommand\theenumii{\alph{enumii}}
\makeatletter
\def\subitem{\omit\@arstrut 
\ifnum\value{enumii}=0 \stepcounter{enumi}\fi
\refstepcounter{enumii}\theenumi\theenumii\hfill}
\def\item{\omit\setcounter{enumii}{0}\let\omit\relax}
\makeatother

\begin{longtable}{>{\refstepcounter{enumi}\setcounter{enumii}{0}\theenumi}lrl}
& something& something else\\
& foo&bar\\
\label{this}& red&blue\\
& something about \ref{this} & or that\\
& foo&bar\\
\subitem& foo&bar\\
\subitem& foo&bar\\
\item
\subitem& foo&bar\\
\subitem& foo&bar\\
\item
\subitem& foo&bar\\
& foo&bar\\
&a & b\\
&c & d\\
\subitem\label{thissubi}& foo&bar\\
\subitem& foo&bar\\
& foo&bar\\
& foo& ref subitem: \ref{thissubi}\\
& foo&bar\\
& foo&bar\\
& foo&bar
\end{longtable}


some text

\begin{longtable}{>{\refstepcounter{enumi}\theenumi}lrl}
& something& something else\\
& foo&bar\\
\label{thisb}& red&blue\\
& something about \ref{thisb} & or that\\
& foo&bar\\
\subitem& foo&bar\\
\subitem& foo&bar\\
& foo&bar\\
\end{longtable}

\end{document}

相关内容