LaTeX-Code in verbatim/lstlisting kompilieren

LaTeX-Code in verbatim/lstlisting kompilieren

Für einen Vortrag (in beamer) zum ThemaSo nutzen Sie LaTeX für Ihre Abschlussarbeitan meiner Uni wollte ich jede Menge LaTeX-Codeschnipsel hinzufügen und kompilieren. Momentan habe ich .texfür jedes Beispiel eine eigene Datei und kompiliere jede Datei einzeln. Anschließend binde ich die benötigten Zeilen (z.B. ohne Präambel) mit ein lstlistingund binde das kompilierte PDF über ein \includegraphics.

Das ist ziemlich umständlich. Sicher, ich kann die Kompilierung von Dutzenden von Dateien automatisieren, z. B. mit latexmk, aber ich muss den Überblick behalten und so viele Dateien öffnen. Einfach denselben Code zweimal in die Präsentation einzutippen, einmal wörtlich und einmal als reinen Code, damit LaTeX diesen Ausschnitt kompiliert, ist die beste Option, aber dann müsste ich alle Schriftarten auf Standard articlestatt auf zurücksetzen beamer, und lokale Einstellungen (z. B. mit enumitem) können mit anderen Einstellungen von in Konflikt geraten beamer.

Haben Sie eine Idee, was die beste Lösung sein könnte?

Antwort1

Schauen Sie sich tcblistingdas tcolorboxPaket an. Es ermöglicht die automatische Anzeige der Quelle und des Ergebnisses.

Hier ein kurzes Beispiel für den Einstieg. Werfen Sie aber auch einen Blick in die Dokumentation, dort finden Sie jede Menge Optionen zur individuellen Anpassung des Ergebnisses:

% !TeX program = txs:///arara
% arara: pdflatex: {synctex: on, interaction: nonstopmode, shell: yes}
\documentclass{beamer}

\usepackage[most]{tcolorbox}

\begin{document}

\begin{frame}[fragile]
\begin{tcblisting}{before lower=\rmfamily}
\LaTeX\ example with serif font like in article 
\end{tcblisting}
\end{frame}

\begin{frame}[fragile]
\begin{tcblisting}{
  listing and comment,
  pdf comment,
  freeze pdf,
  compilable listing,
  run pdflatex,
}
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}
\item test
\end{enumerate}
\end{document}
\end{tcblisting}

\end{frame}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen