Ich versuche, meinem Dokument Code hinzuzufügen, aber immer wenn ein Code in einer Zeichenfolge ein Leerzeichen enthält, wird ein Eimer(?) angezeigt. Ich habe den Code und die Ausgabe unten bereitgestellt:
\documentclass[a4paper]{article}
\usepackage{listings}
\begin{document}
\section*{Code}
\begin{lstlisting}[language=python]
# comment
a = 24
print (a)
string = "some string"
\end{lstlisting}
\end{document}
Antwort1
Das ist kein Fehler, sondern eine Funktion! Mit Ihren aktuellen Einstellungen werden Leerzeichen innerhalb einer Zeichenfolge mithilfe dieses „Buckets“, wie Sie ihn nennen, visualisiert. Dies kann insbesondere hilfreich sein, wenn Sie mehr als ein Leerzeichen haben.
Wenn Sie sie nicht möchten, können Sie sie durch die Einstellung deaktivieren showstringspaces=false
, entweder nur für Ihren aktuellen Eintrag (Option 1) oder für das gesamte Dokument (Option 2).
\documentclass[a4paper]{article}
\usepackage{listings}
%\lstset{showstringspaces=false} % option 1
\begin{document}
\section*{Code}
\begin{lstlisting}[
language=python,
showstringspaces=false, % option 2
]
# comment
a = 24
print (a)
string = "some string"
\end{lstlisting}
\end{document}
Sie können dies sogar für „normale“ Leerzeichen, also außerhalb von Zeichenfolgen, aktivieren, indem Sie festlegen showspaces=true
, wenn Sie möchten.