
Ich schreibe einen einfachen LaTeX-Leitfaden, der sich an Redakteure einer Studentenarbeit richtet. Die Arbeit richtet sich an Mathematik- und Physikstudenten an meiner Universität, und deshalb verwenden wir LaTeX.
Wie dem auch sei, ich möchte viele Beispiele in die Anleitung aufnehmen, aber es ist etwas umständlich geworden. Ich verwende derzeit das folgende Format:
\hspace{20pt}
\begin{framed}
\begin{minipage}{0.8\textwidth}
\begin{verbatim}
Some code
\end{verbatim}
$\quad \Rightarrow$\\
\mbox{}\\
Some code
\end{minipage}
\end{framed}
Die Zeile „ Some code
“ wird zunächst wörtlich angezeigt und dann nach außen verschoben, damit sie vollständig kompiliert werden kann und die Ausgabe angezeigt wird.
Ich wollte dies in einem einzigen Befehl vereinfachen, etwa so:
\newcommand{\verandshow}{1}
{
\hspace{20pt}
\begin{framed}
\begin{minipage}{0.8\textwidth}
\begin{verbatim}
#1
\end{verbatim}
$\quad \Rightarrow$\\
\mbox{}\\
#1
\end{minipage}
\end{framed}
}
aber die verbatim
Umgebung bringt alles durcheinander. Dasselbe gilt für das Erstellen einer neuen Umgebung und das Einfügen der \begin{verbatim}
und \end{verbatim}
-Anweisungen an jedem Ende.
Ich habe von alternativen Möglichkeiten zur Anzeige von Code gehört, wie listings
und anderen, aber sie haben nicht besonders gut funktioniert. Und selbst wenn sie es getan hätten, bleibt eine Frage unbeantwortet, auf die ich keine einfache Antwort gefunden habe, nämlich: Wie definiert man einen Befehl oder eine Umgebung, die Argumente in eine wörtliche Umgebung einfügt?
Antwort1
Dies zeigt nur einen kleinen Teil der tcolorbox
Funktionen listings
:
\documentclass{article}
\usepackage[most]{tcolorbox}
\begin{document}
\begin{tcblisting}{listing options={numbers=left},colback=green,arc=0mm,auto outer arc}
Some Code with math output:
\[ E = mc^2 \]
\end{tcblisting}
% And now listing only
\begin{tcblisting}{colback=yellow,arc=0mm,auto outer arc,listing only}
Some Code with math output: \[ E = mc^2 \]
\end{tcblisting}
\end{document}