Wie benutze ich Pdflatex mit Pandoc?

2826
ahmed

Ich verwende Pandoc, um meine Markdown-Dateien in verschiedene Formate zu konvertieren, einschließlich htmlund docx. Mit PDF erhalte ich jedoch die Nachricht pdflatex not found, obwohl sie installiert wurde, und ich kann sie sogar direkt von Cygwin anrufen.

Warum erkennt Pandoc Pdflatex nicht und wie kann ich dieses Problem beheben?

3
Wie haben Sie Pandoc installiert? evilsoup vor 9 Jahren 0

2 Antworten auf die Frage

3
Wisco crew

Ich bin nur darauf gestoßen - ich vermute, Sie haben die Windows-Version von Pandoc installiert. Wenn du rennst, bekommst du in Cygwin which pandocso etwas /cygdrive/c/Program Files (x86)/Pandoc/pandoc?

Wenn ja, scheint diese Version Windows-Pfade zu erwarten (z. B. C: \ path \ to \ pdflatex), aber cygwin gibt wahrscheinlich etwas wie "/ path / to / pdflatex" an.

In Ihrer cygwin-Umgebung können Sie Erfolg beim Aufbau von Pandoc von der Quelle aus finden.

Ich habe mir das gerade angeschaut und ich glaube, ich sehe, was Pandoc wirft. Auf Cygwin ist pdflatex ein Symlink zu pdftex.exe. Wenn Sie den vollständigen Pfad mit dem Schalter --latex-engine angeben, wird die Fehlermeldung "pandoc.exe: latex-engine muss pdflatex, lualatex oder xelatex sein." Michael vor 8 Jahren 1
1
Michael

@ Wiscocrews Antwort ist auf dem richtigen Weg, aber leider ist es etwas komplizierter.

Pandoc erlaubt es Ihnen, den vollständigen Pfad pdflatexmit dem --latex-engineSchalter zu übergeben (siehe http://pandoc.org/README.html#options-affecting-specific-writers ), aber wenn Sie so etwas tun

--latex-engine=`cygpath -w /usr/bin/pdflatex` 

Pandoc gibt einen anderen Fehler: pandoc.exe: latex-engine must be pdflatex, lualatex, or xelatex.. Der Grund für diesen Fehler ist, dass Cygwins pdflatex ein Symlink ist:

$ ls -lh /usr/bin/pdflatex lrwxrwxrwx 1 myuser Domain Users 10 Mar 14 11:52 /usr/bin/pdflatex -> pdftex.exe 

Meine Arbeit war um kopieren /usr/bin/pdftex.exezu /usr/local/bin/pdflatex.exeund übergeben Sie es wie so Pandoc:

pandoc Foo.md -o Foo.pdf --latex-engine='C:\\cygwin64\\usr\\local\\bin\\pdflatex.exe' -t latex -s 
Ich denke, um diese Arbeit nahtlos zu gestalten, müssten wir in erster Linie pandoc für cygwin kompilieren. CMCDragonkai vor 7 Jahren 0
Ich würde es denken, aber jedes Mal, wenn ich versucht habe, GHC auf Cygwin aufzubauen, entschied ich, dass das Leben für diese Übung einfach zu kurz ist. Michael vor 7 Jahren 1
Ich danke dir sehr. Endlich ein PDF von Markdown unter Cygwin! Du hast den Tag gerettet. Andreas Spindler vor 5 Jahren 0