Изменение нумерации вложенных списков в среде Enumerate, в LaTeX - PullRequest
5 голосов
/ 12 января 2010

Я хочу произвести следующее в LaTeX:

1. Item
    2. Item
    3a. Item
    3b. Item
    4. Item
5. Item

В основном я уже пытался использовать вложенные среды enumerate, но у меня проблема с реализацией различных нумераций.

Как я могу сделать выше в LaTeX?

Ответы [ 3 ]

9 голосов
/ 12 января 2010

Целью среды {enumerate} является алгоритмическая нумерация вещей. Если вы действительно хотите, чтобы числа отображались так, как показано в вашем вопросе, я не могу определить, какой алгоритм вы хотите использовать. Для примера, который вы показываете, я думаю, что самый простой способ - это просто программировать метки самостоятельно, а не пытаться программировать LaTeX для этого. Я бы просто сделал это так:

\begin{itemize}
\item[1.]  Item
   \begin{itemize}
    \item[2.  ] Item
    \item[3a. ] Item
    \item[3b. ] Item
    \item[4.  ] Item
   \end{itemize}
\item [5. ] Item
\end{itemize}

С помощью LaTeX самый быстрый путь к решению часто включает в себя грубую силу: -)

2 голосов
/ 12 января 2010

Быстро и грязно:

\documentclass{article}
\begin{document}

\renewcommand{\labelenumii}{\addtocounter{enumi}{1}\arabic{enumi}}
%% Second list uses first counter

\def\startenumtuple{\setcounter{enumii}{1}\addtocounter{enumi}{1}
  \renewcommand{\labelenumii}{\arabic{enumi}.\alph{enumii}}}
\def\endenumtuple{
  \renewcommand{\labelenumii}{\addtocounter{enumi}{1}\arabic{enumi}}}

\noindent Here's my list:

\begin{enumerate}
\item Item
\begin{enumerate}
\item Item
\startenumtuple
\item Item
\item Item
\endenumtuple
\item Item
\item Item
\end{enumerate}
\item Item
\end{enumerate}
\end{document}

(версия Mica использовалась в первой итерации этого кода)

Правильный способ заключается в определении сред на основе перечисления, которые правильно работают со счетчиками: для корректной работы приведенного выше кода потребуется настройка, если вы хотите изменить вложение сред списков.

1 голос
/ 12 января 2010
\renewcommand{\labelenumi}{\Roman{enumi}.}
\renewcommand{\labelenumii}{\Roman{enumi}. \alph{enumii}}

\noindent Here's my list:

\begin{enumerate}
\item Item 1.
\begin{enumerate}
\item List 2, Item 1
\item List 2, Item 2
\end{enumerate}
\item Item 2.
\item Item 3.
\end{enumerate}

Затем измените \Roman в renewcommand на то, что вы хотите: \alph или \arabic

...