Zum Inhalt springen

minted in Scissor LaTeX

Das Paket minted funktioniert in Scissor LaTeX teilweise: \begin{minted}{python} und \mintinline funktionieren ohne Python und ohne -shell-escape, mit Syntaxfarben aus einem festen Schema; Optionen wie linenos, \setminted, \usemintedstyle, die Beschriftung der Umgebung listing, \mint und \inputminted werden nicht unterstützt.

Was das Paket macht

minted färbt Quellcode mit der Bibliothek Pygments ein. Sie schreiben \begin{minted}{python} ... \end{minted} oder \mintinline{python}{code} innerhalb eines Satzes. Optionen wie linenos und frame=lines ändern das Layout, \setminted legt sie für das ganze Dokument fest, und \usemintedstyle wählt ein Farbschema. In einer TeX-Installation braucht minted Python mit Pygments, und das Dokument muss mit -shell-escape übersetzt werden.

Was hier funktioniert

FunktionIn Scissor LaTeXHinweise
\begin{minted}{lang} ... \end{minted}FunktioniertEingefärbt, ohne Python und Shell-Escape.
\mintinline{lang}{code}FunktioniertDicktengleich, ohne Farben.
Optionen: [linenos, frame=lines, bgcolor=...]EntfälltOhne Meldung ignoriert.
\setminted{...}, \usemintedstyle{...}EntfälltOhne Meldung ignoriert; die Farben sind fest.
Umgebung listing mit \captionTeilweiseDer Code wird angezeigt und die Beschriftung als einfacher Text ausgegeben, ohne „Listing 1“; ein \ref darauf zeigt „??“.
\mint{lang}|code|Nicht unterstütztMit einer Meldung übersprungen; Sprache und Code erscheinen als einfacher Text.
\inputminted{lang}{file}Nicht unterstütztMit einer Meldung übersprungen.
\newminted, \newmintinlineNicht unterstütztMit einer Meldung übersprungen, und die Argumente erscheinen als Text.

Die Sprachnamen sind dieselben wie bei listings: Python, C, C++, Java, JavaScript, Rust, Go, R, MATLAB, SQL, Bash, HTML, TeX und viele weitere, in Groß- oder Kleinschreibung.

Beispiele

Ein minted-Block mit einer Sprache:

minted mit JavaScript

LaTeXPräambel: \usepackage{minted}Im Editor öffnen (öffnet in einem neuen Tab)
\begin{minted}{javascript}
// greet a list of people
const people = ["Erika", "Hans", "John"];
for (const name of people) {
  console.log(`Hello, ${name}!`);
}
\end{minted}
Gesetzt von Scissor LaTeX: minted mit JavaScript

Optionen werden akzeptiert und ignoriert, deshalb hat dieser Block hier weder Zeilennummern noch Rahmen:

linenos und frame werden ignoriert

LaTeXPräambel: \usepackage{minted}Im Editor öffnen (öffnet in einem neuen Tab)
\begin{minted}[linenos, frame=lines]{rust}
fn main() {
    let total: u32 = (1..=8).sum();
    println!("{}", total + 8); // 44
}
\end{minted}
Gesetzt von Scissor LaTeX: linenos und frame werden ignoriert

Für eine nummerierte Beschriftung verwenden Sie eine figure statt der Umgebung listing von minted. Hier lautet die Beschriftung „Listing 1“, und \ref liefert die Nummer:

Ein beschrifteter minted-Block in einer Abbildung

LaTeXPräambel: \usepackage{minted}Im Editor öffnen (öffnet in einem neuen Tab)
\begin{figure}[h]
\begin{minted}{python}
print(sum(range(44)))
\end{minted}
\caption{Adding the numbers below 44}
\label{lst:sum}
\end{figure}
Listing~\ref{lst:sum} prints 946.
Gesetzt von Scissor LaTeX: Ein beschrifteter minted-Block in einer Abbildung

Kompatibilität

  • Von einer TeX-Installation hierher: Jeder minted-Block wird mit Farben angezeigt. Optionen und Stile werden nicht angewendet; ersetzen Sie \mint durch \mintinline und fügen Sie Code aus Dateien von \inputminted direkt ins Dokument ein.
  • Von hier in eine TeX-Installation: minted-Blöcke lassen sich dort übersetzen, wenn Python, Pygments und -shell-escape verfügbar sind. Eine figure um einen minted-Block wird dort mit „Figure 1“ beschriftet.

Das vollständige Handbuch steht auf CTAN: ctan.org/pkg/minted. Siehe auch Code-Listings in LaTeX.

Fragen und Antworten

Funktioniert minted ohne Shell-Escape?

Hier ja. Scissor LaTeX färbt minted-Blöcke selbst ein, deshalb braucht es weder Python noch -shell-escape. In einer TeX-Installation ist beides weiterhin nötig.

Soll ich minted oder listings verwenden?

Hier funktionieren beide gleich: Die Sprache wird gelesen, die übrigen Optionen werden ignoriert. Muss sich das Dokument auch anderswo ohne Shell-Escape übersetzen lassen, ist listings die sicherere Wahl.

Jedes Beispiel auf dieser Seite wird beim Erstellen der Website von Scissor LaTeX gesetzt. Zuletzt aktualisiert am 2026-11-07.