四個層級的範例

四個層級的範例

Linguex只允許 3 級範例,但我需要能夠重現這一點(除非我不需要第一級標籤來包含章節號或向右刷新)。

  • 我想保留子範例的本機引用,即跳過父子標籤。

  • 如果我們想像(1b)那樣跳過第一層和第二層而不是(28.E.1b),並且如果涉及點作為分隔符,則refcount可以調用該包,從而使用\gobbletodot和\ getrefkeybykeydefault 宏

在此輸入影像描述

答案1

它可能並不理想,但列舉項包包當然可以處理類似的事情。

編輯:我已經編輯了答案,還包括右側範例數字的計數器;這有點老套,可能有更優雅的解決方案,特別是如果那些也可以在左邊的話。也許有人會有更好的主意。

\documentclass{article}

\usepackage{enumitem}

\newcounter{myexample}
\setcounter{myexample}{0}

\newenvironment{myexamples}{%
    \hbox{\smash{\raisebox{-1\baselineskip}{\parbox{\linewidth}{\hfill% 
        \refstepcounter{myexample}(\themyexample)}}}}\nointerlineskip%
    \vspace*{-0.5\baselineskip}\begin{enumerate}%
}{%
    \end{enumerate}
}

\setlist{noitemsep}
\setlist[1]{label=\Alph*.,leftmargin=4em}
\setlist[2]{label=\arabic*.,leftmargin=1.5em,labelsep=0.3em,
    ref=\arabic{myexample}.\Alph{enumi}.\arabic*}
\setlist[3]{label=\alph*.,leftmargin=*,
    ref=\arabic{myexample}.\Alph{enumi}.\arabic{enumii}\alph*}

\begin{document}

\begin{myexamples}
    \item \begin{enumerate}
        \item \begin{enumerate}
                \item John is a robber.\label{johnrobber}
                \item John is a thief.
              \end{enumerate}
        \item \begin{enumerate}
                \item John robs things.
                \item *John thieves things. (compare \emph{thievery}) \label{johnthievery}
              \end{enumerate}
    \end{enumerate}
\end{myexamples}

As you can see in \ref{johnrobber} and \ref{johnthievery} \ldots

\end{document}

更新清單輸出

(如果您需要與另一個範例集共用這些數字,例如對於 linguex,可能需要做更多工作。)

相關內容