Suprimir saída de um grupo

Suprimir saída de um grupo

Eu tenho um \itemcomando de estilo onde preciso suprimir a saída do texto a seguir. Posso fazer isso com \nullfont, mas parece um hack ruim. Existe uma declaração que suprimirá toda a saída, nos moldes de um \sbox0mas que é uma declaração e não um comando?

Aqui está um exemplo prático mínimo (o real \myiteme o contexto em que é usado são mais complicados).

\documentclass{report}

\newcommand{\myitem}[1]{%
  \nullfont% <-- want a better way to do this
}

\begin{document}
  \begin{enumerate}
    \item[foo] show this
    \myitem{bar} suppress this
    \item[foobar] show this too
  \end{enumerate}
\end{document}

Observe que isso é semelhante aessa questãomas não consigo modificar a fonte tex original e, portanto, não tenho um manipulador para o final do texto associado ao item. Não há saltos de parágrafo entre os itens.

Responder1

Como você diz que não possui várias entradas de parágrafo, pode usá-las \parpara finalizar o item:

insira a descrição da imagem aqui

\documentclass{report}

\def\myitem{\setbox0\vbox\bgroup\def\par{\endgraf\egroup\par}}

\begin{document}
  \begin{enumerate}
    \item[foo] show this
    \myitem{bar} suppress this
    \item[foobar] show this too
  \end{enumerate}
\end{document}

informação relacionada