image image


Worknote und Thread: Pandoc, MacTeX und El Capitan

image

Eine unserer Auszubildenden wollte ich auf ihrem MacBook unter MacOS 10.11 (El Capitan) Pandoc mit LaTeX (um PDFs auszugeben) unterjubeln, weil sie dies für ein Projekt benötigt. Doch nachdem wir MacTeX heruntergeladen und installiert hatten, wollte ich mit diesem Bash-Skript (wie hier beschrieben)

#!/bin/bash
PATH=$PATH:/usr/texbin:/usr/local/bin

pandoc -o ~/git/slip/slip.pdf ~/git/slip/slip.md  --latex-engine=pdflatex  -V geometry:margin=1in -V lang=german

Pandoc starten, doch die Shell überraschte mich mit der Aussage, daß sie die LaTeX-Engine pdflatex nicht finden könne. Ich war erst einmal platt, doch dann hatte ich auf den Seiten von MacTeX die Erklärung gefunden: Bisher waren die TeX-Binaries immer in /usr/texbin zu finden, doch aus irgendwelchen Gründen, die wohl nur Apple selber weiß, ist ab El Capitan das Verzeichnis /usr nur für Apple beschreibbar – nicht einmal Nutzer mit root-Rechten können dies ändern. Daher sind die MacTeX-Binaries ab El Capitan im Verzeichnis /Library/TeX/texbin abgelegt. Eine Änderung der Pfadangaben des Skriptes zu

PATH=$PATH:/Library/TeX/texbin:/usr/texbin:/usr/local/bin

schafft Abhilfe und schon findet Pandoc auch die TeX-Binaries wieder (/usr/texbin habe ich dringelassen, damit das Skript auch unter älteren MaOS-X-Versionen läuft, denn weder unter Mavericks noch unter Yosemite hatte ich bisher Probleme).

Okay, das Problem ist gelöst, jetzt aber die Frage an Euch da draußen: Starte ich nun das Skript, findet Pandoc zwar die TeX-Engine, diese aber offensichtlich nicht das Babel-Paket für die deutsche Sprache, sondern kommt mit der Fehlermeldung hoch

pandoc error you haven't specified a language option

und weigert sich, ein PDF herauszuschreiben. Entferne ich die letzte Option -V lang=german aber einfach aus dem Skript, dann läuft Pandoc ohne Fehlermeldung durch, bringt aber dann die englisch-spezifische Ausgaben (zum Beispiel Figure 1 statt Abbildung 1), die ich eigentlich mit dieser Option abschalten wollte. Eine Google-Suche brachte zwar Lösungen für viele andere auf LaTeX aufsetzenden Programme und Pakete, wie etwa LyX oder Beamer, aber ich war nicht in der Lage, diese soweit zu verallgemeinern, daß ich sie auch auf Pandoc anwenden konnte. Wenn also jemand von Euch da draußen eine Lösung weiß, den oder die bitte ich um Hinweise in meinen (Email-) Kommentaren. Danke!

Caveat

Unter El Capitan scheint es noch weitere Probleme mit MacTeX zu geben. Diese Seite von Herbert Schulz listet sie auf und erklärt, wie man Abhilfe schafft. Und an MacOS Sierra denke ich nur mit Schrecken. Aber auch hierzu hat Herbert Schulz dankenswerterweise schon etwas geschrieben. Übrig bleibt nur die Frage: Will Apple seine Nutzer eigentlich mit Absicht verägern?


5 (Email-) Kommentare


Ich muß auch unter Linux neu eingespielte oder selbst kompilierte Pakete mittels "texhash" dem System erst bekanntmachen. Ist das unter MacOS auch so (bin kein Mac user).

– Bruno H. (Kommentieren) (#)


Bisher zumindest nicht und MacTeX kommt »Batteries included«.

– Jörg Kantel. (Kommentieren) (#)


In der Doku steht, dass die lang-Variable nach den "Tags for Identifying Languages" kodiert sein soll. Pandoc ändert es dann je nach Ausgabeformat. Daher reicht vielleicht ein "de" schon aus? http://pandoc.org/MANUAL.html#language-variables

– Mirko O. (Kommentieren) (#)


… doch aus irgendwelchen Gründen, die wohl nur Apple selber weiß, ist ab El Capitan das Verzeichnis /usr nur für Apple beschreibbar – nicht einmal Nutzer mit root-Rechten können dies ändern

Ich habe letztens auf einem Mac Mini mit 10.11 ein selbst kompiliertes Python 2.7.12 unter /usr/local installiert.
Vermutlich ging das, weil unter Systemeintellungen->Sicherheit->Allgemein->Apps-Download erlauben von: Keine Einschränkungen eingestellt war.
Ab 10.12 soll es so langsam unmöglich geworden sein.

– Karsten W. (Kommentieren) (#)


Laut dieser Seite ist /usr/local von der Sperre als einzige Ausnahme ausdrücklich ausgenommen. Und den dort gezeigten Trick, wie man die Sperre aushebeln kann, sollte man wirklich nur in Notfällen anwenden.

– Jörg Kantel (Kommentieren) (#)


(Kommentieren)  Pandoc, MacTeX und El Capitan – 20161102 bitte flattrn

image image



Über …

Der Schockwellenreiter ist seit dem 24. April 2000 das Weblog digitale Kritzelheft von Jörg Kantel (Neuköllner, EDV-Leiter, Autor, Netzaktivist und Hundesportler — Reihenfolge rein zufällig). Hier steht, was mir gefällt. Wem es nicht gefällt, der braucht ja nicht mitzulesen. Wer aber mitliest, ist herzlich willkommen und eingeladen, mitzudiskutieren!

Alle eigenen Inhalte des Schockwellenreiters stehen unter einer Creative-Commons-Lizenz, jedoch können fremde Inhalte (speziell Videos, Photos und sonstige Bilder) unter einer anderen Lizenz stehen.

Der Besuch dieser Webseite wird aktuell von der Piwik Webanalyse erfaßt. Hier können Sie der Erfassung widersprechen.

Diese Seite verwendet keine Cookies. Warum auch? Was allerdings die iframes von Amazon, YouTube und Co. machen, entzieht sich meiner Kenntnis.


Werbung


Werbung


image  image  image
image  image  image