%20im%20Artikel%20verwenden%3F.png)
Ich möchte die lstsample
Umgebung aus dem lstdoc
Paket ausprobieren, das mit demlistings
Paket.
Dazu habe ich folgendes Dokument verfasst:
\documentclass{article}
\usepackage{lstdoc}
\usepackage{lipsum}
\begin{document}
\begin{lstsample}{}{}
\color{blue}
\lipsum[68]
\end{lstsample}
\end{document}
Die Kompilierung schlägt jedoch mit der folgenden Meldung fehl:
! Undefined control sequence.
\lst@sampleInput ->\MakePercentComment
\catcode `\^^M=10\relax \small \lst@s...
l.10 \end{lstsample}
Was vermisse ich?
Antwort1
Das lstdoc
Paket ist in erster Linie für die Verwendung in Dokumenten gedacht, die die ltxdoc
Klasse verwenden. Diese lädt doc
intern die Klasse, die zwei Makrodefinitionen enthält, die hier besonders relevant sind:
\def\MakePercentIgnore{\catcode`\%9\relax}
\def\MakePercentComment{\catcode`\%14\relax}
Da die lstsample
Umgebung diese beiden Makros benötigt, die von Ihnen verwendete Klasse article
sie jedoch nicht definiert, meldet LaTeX diese Makros beim Versuch, Ihren Code zu kompilieren, zu Recht als undefiniert. Das Hinzufügen der beiden oben gezeigten Definitionen in Ihrer Präambel löst dieses Problem.
Eine Besonderheit dieser lstsample
Umgebung ist, dass, damit alles richtig funktioniert,alle Zeilen darin müssen mit einem beginnen, %
gefolgt von mindestens 4 LeerzeichenBefolgen Sie diese Regel und Sie werden glücklich sein.
\documentclass{article}
\usepackage{lstdoc}
\usepackage{xcolor}
\usepackage{lipsum}
% The following definitions are taken from doc.dtx.
% see http://mirrors.ctan.org/macros/latex/base/doc.dtx
\def\MakePercentIgnore{\catcode`\%9\relax}
\def\MakePercentComment{\catcode`\%14\relax}
\begin{document}
\begin{lstsample}{}{}
% \color{blue}
% \lipsum[68]
\end{lstsample}
\end{document}