Разные перечисления в одном списке

Разные перечисления в одном списке

Я хочу создать уникальный список, в котором у меня будет два разных перечисления, одно перечисление для каждой Демонстрации, а другое для Определений. Что-то вроде:

1) Определение Пиппо

2) Определение Плутона

[1] Докажите, что Плутон — собака Пиппо.

3) Оборона Тополино

[2] Докажите, что Тополино и Пиппо — друзья.

Идея кода будет примерно такой:

\begin{enumerate} 
\item_def Def. of Pippo
\item_def Def. of Pluto
\item_proof Prove that Pluto is the dog of Pippo
\item_def Def. of Topolino
\item_proof Prove that Topolino and Pippo are friends
\end{enumerate}

решение1

В качестве альтернативы, если вы хотите избежать пакета enumitem*, это может оказаться полезным.

Не знаю, нужны ли вам отступы — если да, то вы всегда можете добавить немного пробелов в определение.

\newcounter{enumcounter} % Used to reset counters - if you've only two new itemtypes,
                         % probably as easy to reset them explicitly, but for more this
                         % is more efficient
\newcounter{defcount}[enumcounter] % Counts your definition items,  resets every time enumcounter increments
\newcounter{proofcount}[enumcounter]

\newenvironment{myenumerate}{\begin{description}\stepcounter{enumcounter}}{\end{description}}
% defined a new environment, which uses description instead of enumerate or itemize, to avoid the pre-existing
% counters. The spacing is not identical, granted.

\newcommand*{\itemdef}{\item\addtocounter{defcount}{1}(\thedefcount) } % increments the counter, describes item look 
\newcommand*{\itemproof}{\item\addtocounter{proofcount}{1}[\theproofcount] }

\begin{document}
Here is an example:
\begin{myenumerate} 
\itemdef Def. of Pippo
\itemdef Def. of Pluto
\itemproof Prove that Pluto is the dog of Pippo
\itemdef Def. of Topolino
\itemproof Prove that Topolino and Pippo are friends
\end{myenumerate}

And another list of things to check that counters reset:
\begin{myenumerate}
\itemproof Blah
\itemdef Bleep
\itemproof Bloop
\end{myenumerate}
And another line to check that vertical spacing is fine.

введите описание изображения здесь

*Я понимаю, что всем здесь он нравится, и это справедливо, но это один из первых пакетов, который приходится удалять, когда он попадает в очередь на монтаж из-за конфликтов с нашей настройкой.

решение2

Что-то вроде этого должно сделать то, что вам нужно. Пакет enumitemпозволяет вам легко создавать пользовательские списки, и списки могут быть указаны для возобновления. В текущем контексте, поскольку возобновленный список находится внутри списка определений, его счетчик будет локальным для этого списка. Обратитесь к enumitemдокументации (или другим вопросам на сайте) для параметров интервала и т. д.

\documentclass{article}
\usepackage{enumitem}
\newlist{defn}{enumerate}{1}
\newlist{demo}{enumerate}{1}
\setlist[defn]{label={\arabic*)}}
\setlist[demo]{label={[\arabic*]},resume}
\begin{document}
\begin{defn}

\item Def. of Pippo

\item Def. of Pluto

\begin{demo}
\item Prove that Pluto is the dog of Pippo
\end{demo}

\item Def. of Topolino

\begin{demo}
\item Prove that Topolino and Pippo are friends
\end{demo}
\end{defn}
\end{document}

вывод кода

Связанный контент