Como alterar o rótulo de um item em uma lista enumitem

Como alterar o rótulo de um item em uma lista enumitem

Quero alterar o rótulo de um item em uma lista. Estou usando o enumitempacote, gosto muito dele e tenho que continuar usando (muitos outros códigos quebrariam).

MWE:

\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}

O resultado é uma lista

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

No entanto, eu gostaria de fazer algo como

\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}

Seria muito legal se o enumitempacote tornasse o código \item[label=(*\arabic*)]possível. Mas, tanto quanto sei, não existe uma solução fácil.

O que você faria? Defina um comando \staritemem sua resposta, pois seria uma solução mais ortogonal do que invadi-lo diretamente no texto do documento. Alternativamente, hackear \itempara aceitar opções (como em \item[label=(*\arabic*)]) seria incrível!

Responder1

Coloque o asterisco na especificação do rótulo:

\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}

insira a descrição da imagem aqui

Responder2

Não tenho certeza se é isso que você deseja alcançar, mas você pode definir explicitamente o rótulo de um item.

\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}

Suponho que a \refstepcounterinstrução dentro de []é necessária porque o contador não avança se o rótulo for definido manualmente.

insira a descrição da imagem aqui

informação relacionada