Latex kann Lilypond nicht finden

Begonnen von C_E, Sonntag, 28. Juni 2020, 10:49

« vorheriges - nächstes »

C_E

Hallo ihr alle,

Mal wieder ein Latex/Lilypond-Problem. Ich habe das Forum einigermaßen durchforstet, falls ich doch eine auf meine Frage passende Antwort übersehen habe freue ich mich über Hinweise.

Meine Spezifikationen: Windows 10 v1903; MikTex 2.9, lilypond 2.20.0
Meine Umgebung(?) für Latex ist TexStudio, für Lilypond Frescobaldi
Sämtliche Pakete, inkl lyluatex, sind auf dem aktuellsten Stand (von gestern Nachmittag)

In TexStudio habe ich folgende Einstellungen gemacht, wie hier https://lilypondforum.de/index.php/topic,617.msg4011.html#msg4011 besprochen:
• Optionen→Konfigurieren→Befehle→LuaLaTeX lualatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex (bin mir grad nicht sicher, warum shell-escape zwei Bindestriche bekommen hat, dachte, es wäre nur einer nötig)
• Optionen→Konfigurieren→Erzeugen→Standardcompiler txs:///lualatex

Außerdem habe ich die in den Windows Umgebungsvariablen die Variable Path um den Pfad zu Lilypond, also bei mir C:\Program Files (x86)\LilyPond\usr\bin erweitert.
Allerdings, falls das einen Unterschied macht, eine Zeile unter den anderen Variablen wie C:\Windows\system32, zum Zwecke der Übersichtlichkeit.


So, und nun das Problem:
Ich will als Test dieses Beispiel kompilieren, das ich gekürzt aus dem Lilypond "Benutzung" Handbuch 3.1 für meine Version genommen habe:

\documentclass[a4paper]{article}

\usepackage[program=lilypond]{lyluatex}

\begin{document}


\begin{lilypond}
\relative c' {
  c2 e2 \tuplet 3/2 { f8 a b } a2 e4
}
\end{lilypond}


\begin{lilypond}[fragment,quote,staffsize=26,verbatim]
  c'4 f16
\end{lilypond}

\end{document}


Leider erkennt aber Latex den Befehl "Lilypond" nicht. Der untere Abschnitt ( c'4 f16) wird als einfache Zeichenkette dargestellt, und der obere gar nicht.

Die Meldungen von TexStudio helfen dabei auch nicht wirklich weiter
Prozess gestartet: lualatex --shell-escape -synctex=1 -interaction=nonstopmode "lilybook".tex
Das System kann den angegebenen Pfad nicht finden.
Das System kann den angegebenen Pfad nicht finden.
Prozess endete mit Fehler(n)


Ich bin mir nicht sicher, wie sehr lyluatex genutzt wird und wie sehr lilypond-book, nur scheinen LaTex Foren in dieser Hinsicht noch weniger zu helfen.
Vielen Dank schonmal,

Caspar

Malte

Hallo Caspar,

da ich mich mit Windows nicht auskenne, kann ich dir nicht zuverlässig helfen, ich würde aber mal folgende drei Dinge probieren:

program=lilypond.exe (→ Dateiendung)
program=C:\Program Files (x86)\LilyPond\usr\bin\lilypond.exe (→ ganzer Pfad)
program=C:/Program Files (x86)/LilyPond/usr/bin/lilypond.exe (→ ganzer Pfad, aber mit den Unix-typischen / statt \, die evtl. auch unter LaTeX Standard sind ...)

Viele Grüße
Malte

Edit: Es könnte sein, daß die Leerzeichen im Programme-Ordner noch ein Problem darstellen, also brauchst du ggf. noch Anführungszeichen (program="C:...lilypond.exe")

Arnold

Hallo C_E,

vielleicht auch nur das Bin-Verzeichnis der Lilypondinstallation in den Windows-Suchpfad (Umgebungsvariable PATH) aufnehmen,
denn das macht der Windows-Installer von Lilypond nicht.
Wenn das geschehen ist, dann würde in jeder Kommandozeileneingabe/Eingabeaufforderung (»cmd.exe«) auch Lilypond gefunden werden.

Arnold

C_E

Vielen Dank an euch,

Malte, danke für die Tipps, die letzte Version mit UNIX-Slashes und Anführungszeichen wurden angenommen, gebracht hat es aber nicht viel, das System kann den Pfad immer noch nicht finden.
Ich habe den Pfad nochmal kontrolliert, und TexStudio neu installiert, da hat sich auch nichts geändert.

Und ich habe die Anführungszeichen auch mal in die Path-Variable gesetzt, da kam die gleiche Fehlermeldung wie sonst.

@Arnold, danke, aber das hatte ich leider schon gemacht.


Ich habe vor kurzem den Benutzernamen meines Windows-Kontos geändert (Leerzeichen sind böse), dachte aber eigentlich, ich hätte an alles gedacht inkl. Registry. Hoffe, dass das keine Nachwehen davon sind.

Ich werde mal versuchen, Lilypond als Package für Latex zu installieren, mal sehen.

C_E


Edit: Arnold, könntest du mir genau sagen, was ich eingeben muss, um in der cmd nach Lilypond zu suchen? (Ich gehe mal davon aus, dass ich es ohne cd machen sollte, das ist so ziemlich der einzige Befehl den ich kenne :) ) Dann wäre ich schonmal einen Schritt weiter und wüsste, ob es an Windows oder an TeX liegt.


Als ich gerade meinen Beitrag editieren wollte, wurde mir gesagt, dass das nicht geht weil "das Textfeld nicht ausgefüllt ist". Was habe ich da falsch gemacht?

Arnold

Hallo C_E,

das CD-Kommando kannst Du ja schon, aber ich tippe da meistens »cd /d « (mit Leerzeichen am Schluß) ein, und ziehe dann von einem Windows-Explorer ein Verzeichnis in das CMD-Fenster hinein. Nachdem der Pfad zu diesem Ordner im CMD-Fenster erscheint, drücke ich die RETURN-Taste um den Verzeichniswechsel- (und durch die Option »/d« auch Laufwerkswechsel-) Anweisung auszuführen.

Das in der Kommandozeile ausführbare Lilypond-Programm nennt sich - wie könnte es anders sein - »lilypond«.
Wird es so, ohne weitere Option oder Dateiangabe in der Eingabeaufforderung ausgeführt, dann sollte ein Hinweis ausgegeben werden, wie dieses Programm zu verwenden ist. Wird diese Anwendung aber nicht gefunden, dann ist wohl die Pfadangabe im Suchpfad falsch (wenn ich mich recht entsinne, das Unterverzeichnis »usr/bin« von der Lilypond-Installation)

Um dann eine einfache Lilypond-Testdatei zu übersetzten, die am besten sogar im aktuellen Arbeitsverzeichnis liegt, wird dann an den Programmbefehl noch der Dateiname angehängt, also z. Bsp. »lilypond test.ly«.

Mit »dir /od« zeige ich mir dann meist den Inhalt des aktuellen Verzeichnisses an. Die Option »/od« sorgt dafür, daß die Dateien nach Erstellungsdatum sortiert werden.

Wenn Du dann den Namen der erstellten PDF-Datei (einschließlich der Endung .pdf) eingibts (hoffentlich ein Dateiname ohne Leerzeichen, sonst muß man noch die passenden »"« setzen), startet in den meisten Installation der Acrobat Reader. Bei dem heißt es aufzupassen, denn er sperrt diese angezeigte PDF-Datei vor Veränderungen, muß also geschlossen werden bevor lilypond neu übersetzen kann. SumatraPDF ist in diesem Punkt für die Anwendung mit Lilypond besser geeignet.

Arnold

C_E

ZitatWird es so, ohne weitere Option oder Dateiangabe in der Eingabeaufforderung ausgeführt,
und auch ohne im entsprechenden Directory zu sein, oder?

Danke für die Tipps mit der cmd. Da ich ja sonst immer mit Frescobaldi arbeite, habe ich das bis jetzt nicht gebraucht, nur wollte ich für dieses Problem so viel Software wie möglich auslassen.

Leider hat sich das Problem in so fern erledigt, als dass es definitiv an der Namensänderung des Windows-Benutzerkontos liegt. Immer wieder stoße ich auf den alten Namen, der anscheinend doch nicht so vollständig ausgetauscht wurde wie beworben. Nach einem Tipp aus dem Windows-Forum werde ich retten, was noch zu retten ist, und versuchen alles auf einen anderen Benutzer umzulegen (ohne Leerzeichen :D

Trotzdem danke für die Hilfe!