如何使清單包僅在控制序列之後中斷 TeX 程式碼?

如何使清單包僅在控制序列之後中斷 TeX 程式碼?

Packagelistings總是喜歡破壞 TeX 程式碼反斜杠。怎麼讓它總是斷反斜線?

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

編輯:這個問題應該說得更清楚——如何使listings套件僅中斷 TeX 程式碼控制序列?

在此輸入影像描述

答案1

\您可以透過將其作為一封信來防止之後的中斷alsoletter={\\}。然而,先前的任意中斷\是危險的,並且從 tex TeX 的角度來看可能會給出錯誤的語法。

\def\a{\b}

不等於

\def\a{
\b}

這相當於

\def\a{ \b}

另一方面

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

是等價的。我建議您在適當的地方添加空格,例如可以輸入:

樣本輸出

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

相關內容