Как изменить метку одного элемента в списке enumitem

Как изменить метку одного элемента в списке enumitem

Я хочу изменить метку одного элемента в списке. Я использую пакет enumitem, он мне очень нравится, и мне нужно продолжать его использовать (много другого кода сломается).

МВЭ:

\documentclass[a4paper,10pt]{article}

\usepackage[]{enumitem}

\begin{document}
Foobar

\begin{enumerate}[label={(\arabic*)}]
        \item baz
\end{enumerate}
\begin{enumerate}[resume,label={(*\arabic*)}]
        \item xyzzy
\end{enumerate}
\begin{enumerate}[resume,label={(\arabic*)}]
        \item quux
\end{enumerate}

Lorem ipsum
\end{document}

Результатом является список

 (1) baz
(*2) xyzzy
 (3) quux

Однако я хотел бы сделать что-то вроде

\documentclass[a4paper,10pt]{article}

\usepackage[]{enumitem}

\begin{document}
Foobar

\begin{enumerate}[label={(\arabic*)}]
        \item baz
        \staritem xyzzy
        \item quux
\end{enumerate}

Lorem ipsum
\end{document}

Было бы очень здорово, если бы enumitemпакет делал возможным код вроде \item[label=(*\arabic*)]этого. Но насколько мне известно, простого решения пока нет.

Что бы вы сделали? Пожалуйста, определите команду \staritemв своем ответе, так как это было бы более ортогональным решением, чем взлом прямо в текст документа. В качестве альтернативы взлом \itemдля принятия опций (как в \item[label=(*\arabic*)]) был бы потрясающим!

решение1

Поставьте звездочку в спецификации этикетки:

\documentclass[a4paper,10pt]{article}

\usepackage{enumitem}

\newcommand{\staritem}{\global\asterisktrue\item}
\newcommand{\perhapsasterisk}{%
  \ifasterisk*\global\asteriskfalse\fi
}
\newif\ifasterisk

\begin{document}
Foobar

\begin{enumerate}[label={(\protect\perhapsasterisk\arabic*)}]
\item baz
\staritem xyzzy
\item quux
\staritem xxx
\end{enumerate}

Lorem ipsum
\end{document}

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

решение2

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

\documentclass[a4paper,10pt]{article}

\usepackage{enumitem}


\begin{document}
Foobar

\begin{enumerate}[label={(\arabic*)}]
        \item baz
        \item[\refstepcounter{enumi}(*\number\value{enumi})] xyzzy
        \item quux
\end{enumerate}

Lorem ipsum
\end{document}

Полагаю, что \refstepcounterутверждение внутри []необходимо, поскольку счетчик не продвигается вперед, если установить метку вручную.

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

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