Wie kann man den Abstand der Listenauflistung schnell ändern, um zwei statt vier Leerzeichen zu verwenden?

Wie kann man den Abstand der Listenauflistung schnell ändern, um zwei statt vier Leerzeichen zu verwenden?

Ich arbeite an einigen LaTeX-Codelisten und habe beschlossen, meinen Zeilenabstand von vier auf zwei zu ändern. Das Problem ist, dass mein Dokument (das ca. 500 Seiten umfasst) eine Menge Listen enthält. Gibt es eine Möglichkeit, alle Listen schnell so umzuformatieren, dass zwei statt vier/acht/zwölf/... Leerzeichen verwendet werden?

Antwort1

Mit der Taste können Sie literateaus vier aufeinanderfolgenden Feldern zwei Ausgabefelder machen:

\documentclass{article}

\usepackage{listings}
\lstset{literate={\ \ \ \ }{\space\space}{2}}

\begin{document}
\begin{lstlisting}[language=python]
if x is None:
    print('yes')
   # just a quick test that 3 spaces aren't touched
     # just a quick test that 5 spaces are touched
\end{lstlisting}
\end{document}

Bildbeschreibung hier eingeben

Blöcke mit acht Leerzeichen sind dasselbe wie zwei Blöcke mit vier Leerzeichen, die obige Ersetzung über den literateSchlüssel funktioniert. Wenn Sie mehr Ersetzungen benötigen, können Sie diese einfach hinzufügen, der literateSchlüssel akzeptiert beliebig viele Ersetzungsregeln als Blöcke mit drei Argumenten (was ersetzt werden soll, die Ersetzung, die Anzahl der virtuellen Spalten, die die Ersetzung einnehmen wird).

\documentclass{article}

\usepackage{listings}
\lstset
  {
    literate=
      {\ \ \ \ }{\space\space}{2}
      {yes}{no}{2}
  }

\begin{document}
\begin{lstlisting}[language=python]
if x is None:
    print('yes')
    if y is None:
        print('yes again')
   # just a quick test that 3 spaces aren't touched
     # just a quick test that 5 spaces are touched
\end{lstlisting}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen