Codeauflistung innerhalb der Tabu-Umgebung

Codeauflistung innerhalb der Tabu-Umgebung

Ich versuche, eine kleine Codeliste in eine tabuTabelle einzufügen, kann jedoch kein PDF erstellen.

Der Code, den ich zu verwenden versuche (also eine vereinfachte Form davon), lautet wie folgt:

% !TEX encoding = UTF-8 Unicode
\documentclass[11pt]{article} % use larger type; default would be 10pt
\usepackage[utf8]{inputenc} % set input encoding (not needed with XeLaTeX)

%%% PAGE DIMENSIONS
\usepackage{geometry} % to change the page dimensions
\geometry{a4paper} % or letterpaper (US) or a5paper or....

%%% PACKAGES
\usepackage{listings} % code listings
\usepackage{tabu} % for tables

\begin{document}

\begin{tabu}{X|X}
  \begin{lstlisting}
    myFunction() {
      do.Something();
    }
  \end{lstlisting}
  & This does something
\end{tabu}

\end{document}

Und hier sind die Fehler im Build-Protokoll:

D:/mwe.tex:22: Forbidden control sequence found while scanning use of \lst@next. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Forbidden control sequence found while scanning use of \lst@next. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Missing $ inserted. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Forbidden control sequence found while scanning use of \lst@next. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing \endgroup inserted. [\end{tabu}]
D:/mwe.tex:22: Missing } inserted. [\end{tabu}]

Wenn sich die Auflistung außerhalb der tabuUmgebung befindet, funktioniert alles wie erwartet. Bei Verwendung einer anderen Tabellenumgebung, wie beispielsweise tabular, wird die Auflistung innerhalb einer Tabelle erstellt.

Gibt es ein Problem mit meinem Tex-Code? tabuUnterstützt er keine Codeauflistungen? Oder habe ich etwas ganz Offensichtliches übersehen? Ich benutze LaTeX erst seit ein paar Tagen, also verzeihen Sie mir, wenn das der Fall ist!

Antwort1

Soweit ich weiß, wird dies nicht einmal in der Umgebung tabuunterstützt .listingstabu*

Ich habe jedoch festgestellt, dass es pythontexfunktioniert:

\documentclass[11pt]{article} % use larger type; default would be 10pt
\usepackage[utf8]{inputenc} % set input encoding (not needed with XeLaTeX)

%%% PAGE DIMENSIONS
\usepackage{geometry} % to change the page dimensions
\geometry{a4paper} % or letterpaper (US) or a5paper or....

%%% PACKAGES
\usepackage{pythontex} % code listings
\usepackage{tabu} % for tables

\begin{document}

\begin{tabu*}{X|X}
  \begin{pygments}{c}
    myFunction() {
      do.Something();
    }
  \end{pygments}
  & This does something
\end{tabu*}

\end{document}

Man muss rennen

pdflatex <filename>
pythontex <filename>
pdflatex <filename>

und dann ist die Ausgabe

Bildbeschreibung hier eingeben

verwandte Informationen