Повторение пронумерованных элементов списка и их исходного номера

Повторение пронумерованных элементов списка и их исходного номера

Иногда нумерованные списки используются для перечисления примеров предложений, на которые ссылаются в тексте по их номерам в списке. Но поскольку такие ссылки делаются с далеких страниц, читателю может быть неприятно перелистывать все эти страницы, чтобы добраться до упомянутого предложения. Чтобы избежать этого, можно повторить некоторые пункты списка вместе с их исходным номером. Вот примерный пример того, как это будет выглядеть:

1. Пример 1
 2. Пример 2

Некоторый текст со ссылками на 1. и 2.

 3. Пример 3.

Текст на нескольких страницах.

 1. Пример 1

Некоторый текст со ссылками на 1.

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

Вот пример неудачной попытки достичь этой цели:

\documentclass{article}

\usepackage{enumitem}

\newcommand\extwo{Example 2}

\begin{document}    
\begin{enumerate}
\item Example 1
\item \extwo
\end{enumerate}
Text
\begin{enumerate}[resume]
\item Example 3
\end{enumerate}
Text
\begin{enumerate}[start=2]
\item \extwo% Example 2 repeated with its original number, i.e. "1."
\end{enumerate}
Text
\begin{enumerate}[resume]
\item Example 4% Is listed as "3." when I want it be listed as "4."
\end{enumerate}
\end{document}

В этом примере есть две основные проблемы:

  1. Пример 4 должен возобновлять последовательность номеров списка после примера 3, но это не так.
  2. Он хрупкий. Если порядок Примера 1 и Примера 2 должен быть изменен, то аргумент третьего списка должен быть изменен на [start=1].

Можно ли исправить этот пример, чтобы добиться желаемого, или есть какой-то более подходящий способ добиться этого?

решение1

Лично мне не нравится такой тип повторения, хотя некоторые его используют. Я думаю, что предпочтительнее повторить пример с новым номером. Но независимо от этого мнения, эффект легко достигается как с помощью упаковки, так и с помощью gb4eпакета linguex.

gb4e

Он предоставляет \exr{<label>}команду, которая форматирует пример на основе ссылки на метку.

\documentclass{article}

\usepackage{gb4e}

\newcommand\extwo{Example 2}

\begin{document}    
\begin{exe}
\ex Example 1
\ex \extwo \label{ex2}
\end{exe}
Text
\begin{exe}
\ex Example 3
\end{exe}
Text
\begin{exe}
\exr{ex2} \extwo% Example 2 repeated with its original number, i.e. "1."
\end{exe}
Text
\begin{exe}
\item Example 4% Is listed as "3." when I want it be listed as "4."
\end{exe}
\end{document}

linguex

Он позволяет своей \ex.команде иметь следующий необязательный аргумент для установки метки. Этот аргумент может содержать \ref{}команду.

\documentclass{article}
\usepackage{linguex}
\newcommand\extwo{Example 2}
\begin{document}

\ex. Example 1

\ex. \extwo \label{ex2}

Text.

\ex. Example 3

Text.

\ex.[\ref{ex2}] \extwo

Text
\ex. Example 4

\end{document}

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