Suprimir nova linha após macro

Suprimir nova linha após macro

Como posso suprimir uma nova linha que será inserida posteriormente por uma macro? Existe algum comando que desativa as novas linhas exatamente uma vez e as ativa novamente após a que foi ignorada?
Como ignorar que a macro a seguir começa criando um novo parágrafo antes de escrever o texto.
Assim, apenas o texto será impresso, mas não o avanço de linha que inicia o parágrafo. Esse comando é possível?

Conforme solicitado, um exemplo:
escreve: "primeiros espaços de quebra de linha foo"
queria: "primeiros espaços foo"

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{enumitem}
\begin{document}
\begin{itemize}
\item[]{first} \begin{verbatim}             foo
             bar
\end{verbatim} \item[] {second} more text
\end{itemize}
\end{document}

Responder1

O caso de verbatimé “complicado”: ​​por padrão este ambiente emite um comando de quebra de linha e digita seu conteúdo em todo o comprimento da linha (levando em consideração, aqui, que está em uma lista).

Você pode usar recursos fancyvrbpara boxear o ambiente literal:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{enumitem}
\usepackage{fancyvrb}
\begin{document}

\begin{itemize}
\item[first]
\begin{BVerbatim}[baseline=t]
foo
bar
\end{BVerbatim}

\item[second] more text
\end{itemize}
\end{document}

Observe que você não deve recuar o conteúdo de um ambiente literal, a menos que queira uma saída recuada.

Seu uso \item[] {first}é duvidoso: o comando \itempossui apenas um argumento opcional e nenhum obrigatório, então você obtém exatamente a mesma saída que

\item[] first

Coloquei firstcomo argumento opcional; faça como preferir. Se você quer um labelless itemize, é mais fácil dizer

\begin{itemize}[label={}]

e simplesmente use \item, já que você está usando enumitem.

insira a descrição da imagem aqui

Aqui está a lista modificada, sem rótulo:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{enumitem}
\usepackage{fancyvrb}
\begin{document}

\begin{itemize}[label={}]
\item first 
\begin{BVerbatim}[baseline=t]
foo
bar
\end{BVerbatim}

\item second more text
\end{itemize}
\end{document}

insira a descrição da imagem aqui

informação relacionada