Hallo an alle,

dies ist meine erste Frage hier ^^

Ich verwende MacTeX unter macOS und wollte wollte eine Anleitung mit Code-Blöcken schreiben. Bei einer Recherche im Internet sah ich die Empfehlung lieber das Paket minted anstatt listings zu verwenden.

Allerdings ich erhalte ich eine "komplexe" Fehlermeldung (zu lange, um sie in den Titel dieses Posts zu schreiben)

Argument of " has an extra }. ...dows@echo@test{echo \string# "\ip@file"}

Die Fehlermeldung kommt aus der Datei ifplatform.sty

Aus diesem Code-Bereich

\ifluatex
  \csname\directlua{
      if os.type == "unix" then
        tex.sprint("@ip@nix@true")
      elseif os.type == "windows" then
        tex.sprint("windowstrue")
      end
    }\endcsname
\else
  \IfFileExists{nul:}{\@ip@nix@false}{\@ip@nix@true}
  \IfFileExists{/dev/null}{\windowsfalse}{\windowstrue}
\edef\ip@windows@echo@test{echo \string# > "\ip@file"}
  \def\ip@backupplan{%
    \IfFileExists{\ip@file}{%
      \PackageWarningNoLine{ifplatform}{^^J \space\space\space
        Please delete the file "\ip@file" and try again%
      }%
      \ip@cantdecide
    }{%
      \ShellEscape{\ip@windows@echo@test}%
      \IfFileExists{\ip@file}{%
        \ShellEscape{del "\ip@file"}%
        \windowstrue
      }{%
        \@ip@nix@true
      }%
    }%
  }

Die Fehlermeldung verweist auf diese spezifische Zeile:

\edef\ip@windows@echo@test{echo \string# > "\ip@file"}

Konnte bislang nicht die überflüssige } Klammer finden. Jetzt habe ich aber auch von Programmieren Null Ahnung, vielleicht liegt der Auslöser woanders.

Meine installierte MacTex Version:

❯ latex -v
pdfTeX 3.141592653-2.6-1.40.22 (TeX Live 2021)
kpathsea version 6.3.3
Copyright 2021 Han The Thanh (pdfTeX) et al.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.37; using libpng 1.6.37
Compiled with zlib 1.2.11; using zlib 1.2.11
Compiled with xpdf version 4.03

Alle Pakete sind auf dem neuesten Stand.

Hier noch ein Minimalbeispiel

\documentclass[11pt,a4paper]{article}
\usepackage{ngerman}

\usepackage{minted}

\begin{document}
    Dies ist ein Minimalbeispiel.
\end{document}

Die Fehlermeldung tritt bei den TeX-Editoren TeX-Studio und TeX-Maker auf, denke jedoch nicht, dass es am TeX-Editor liegt.

Vielen Dank für Eure Tipps, wie ich das Problem gelöst bekomme.

gefragt 10 Aug, 14:06

Paisquy's gravatar image

Paisquy
362
Akzeptiert-Rate: 0%


Der Fehler kommt von der Verwendung des veralteten Pakets ngerman. Das Paket ändert die Bedeutung von " zu früh. Dadurch kommen viele andere Pakete aus dem Tritt. Deshalb sollte man stattdessen das Paket babel mit Option ngerman verwenden.

\documentclass[11pt,a4paper]{article}
\usepackage[ngerman]{babel}

\usepackage{minted}

\begin{document}
    Dies ist ein Minimalbeispiel.
\end{document}

Ich weiß das auch nur, weil ich leider ebenfalls mit einer alten Vorlage gearbeitet habe, die ein ganz ähnliches Problem verursacht hat. Seither mache ich einen Bogen um irgendwelche LaTeX-Vorlagen. Ich kopiere höchstens noch einzelne Code-Teile aus den Vorlagen und suche dazu auch immer beispielsweise in l2tabu, ob die dabei verwendeten Pakete so noch in Ordnung gehen.

Permanenter link

beantwortet 10 Aug, 14:43

huibub's gravatar image

huibub
2164
Akzeptiert-Rate: 77%

Vielen, vielen Dank,

das hat mein Problem gelöst.

Darauf wäre ich gar nicht gekommen. Lustigerweise hatte ich \usepackage[ngerman]{babel} ausgekommentiert und \usepackage{ngerman} genommen.

(11 Aug, 09:11) Paisquy
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×9
×5

gestellte Frage: 10 Aug, 14:06

Frage wurde gesehen: 253 Mal

zuletzt geändert: 11 Aug, 12:03