Como fazer com que o pacote de listagens quebre o código TeX somente após as sequências de controle?

Como fazer com que o pacote de listagens quebre o código TeX somente após as sequências de controle?

O pacote listingssempre gosta de quebrar o código TeXdepoisbarras invertidas. Como fazer isso sempre quebrarantesbarras invertidas?

\documentclass{article}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[basicstyle=\ttfamily,breaklines,language=TeX]
\def\beamer@toc@subsubsectionstyle#1{\beamer@toc@ssprocess\beamer@toc@csss\beamer@toc@osss\beamer@toc@oosss\beamer@toc@ooosss#1////}
\end{lstlisting}
\end{document}

Editar: A questão deve ficar mais clara como -Como fazer com que listingso pacote quebre apenas o código TeXdepoissequências de controle?

insira a descrição da imagem aqui

Responder1

Você pode evitar as quebras \tornando-a uma carta, via alsoletter={\\}. No entanto, quebras arbitrárias anteriores \são perigosas e podem fornecer uma sintaxe errada do ponto de vista do tex TeX.

\def\a{\b}

não é o mesmo que

\def\a{
\b}

o que equivale a

\def\a{ \b}

Por outro lado

\def\a{\b\c}
\def\a{\b \c}
\def\a{\b
\c}

são equivalentes. Sugiro que você adicione espaços quando apropriado, por exemplo, poderia ser inserido:

Exemplo de saída

\documentclass{article}

\usepackage{listings}

\begin{document}

\begin{lstlisting}[basicstyle=\ttfamily,breaklines,language=TeX,alsoletter={\\}]
  \def\beamer@toc@subsubsectionstyle#1{%
  \beamer@toc@ssprocess \beamer@toc@csss \beamer@toc@osss \beamer@toc@oosss \beamer@toc@ooosss#1////}
\end{lstlisting}

\end{document}

informação relacionada