Vor einigen Wochen begann ich, das Paket Listings aus Texlive 2007 zu verwenden, um ABAP Codings in LaTeX darzustellen. Dabei traten eine ganze Anzahl von Problemen auf, die ich via Googlen lösen konnte. Die Fixes sind auf dieser Seite zusammenfasst.
Sprachauswahl
Laut Beschreibung soll ein einfaches
\lstset{language=ABAP} "funktioniert nicht
reichen, um ABAP als Sprache auszuwählen. Dummerweise funktioniert es so nicht. Nur bei Angabe des Dialektes werden die ABAP-Definitionen geladen. Fix von www.mrunix.de:
\lstset{language=[R/3 6.10]ABAP}
Listings und KOMA-Skript
Es zeigte sich, das \lstlistoflistings sich nicht mit dem KOMA-Skript verträgt. Der Fix von www.komascript.de half:
\makeatletter
\renewcommand*{\lstlistoflistings}{%
\begingroup
\if@twocolumn
\@restonecoltrue\onecolumn
\else
\@restonecolfalse
\fi
\lol@heading
\setlength{\parskip}{\z@}%
\setlength{\parindent}{\z@}%
\setlength{\parfillskip}{\z@ \@plus 1fil}%
\@starttoc{lol}%
\if@restonecol\twocolumn\fi
\endgroup
}
\makeatother
Kommentare am Zeilenanfang
Des weiteren wurden ABAP Kommentare mit einem * am Zeilenanfang nicht erkannt. Die Lösung aus de.comp.text.tex:
\lstset{morecomment=[f][commentstyle][0]*}
UTF-8
Ich wollte es nicht glauben, das man im Jahr 2009 noch ein Umlautproblem bekommen kann. Aber listings.sty kann kein UTF-8 verarbeiten. Damit enthalten meine Kommentare nun keine Umlaute mehr. Es gibt zwar ein Paket listingsutf8.sty, dies ist aber in Texlive 2007 nocht nicht enthalten.