Autor Thema: \newcommand in lilypond-book  (Gelesen 292 mal)

jonas

  • Newbie
  • *
  • Beiträge: 21
\newcommand in lilypond-book
« am: Samstag, 2. Februar 2019, 14:45 »
Hallo zusammen,
ich möchte meine Sammlung an geschriebenen Stücken zu einem Lilypond book vereinen. Ordnerstruktur:

├── maersche/
...
│   └── zeppelin
│       ├── zeppelin.ly
│       ├── zeppelin.midi
│       └── zeppelin.pdf
├── schwarzes-marschbuch.lytex
└── schwarzes-marschbuch.pdf

Gedacht hatte ich mir das so, dass ich einen neuen Command \marsch erstelle, den ich dann anpasse, um z.B. Formatänderungen durchzuführen.

\documentclass[a4paper]{article}

\begin{document}

\newcommand{\marsch}[1] {
    \lilypondfile{ #1 }
    \newpage
}

\marsch[maersche/zeppelin/zeppelin.ly]
% \marsch  2
% \marsch  3
% ...
\end{document}

Das schlägt allerdings bei pdflatex fehl:
! Undefined control sequence.
\marsch #1-> \lilypondfile
                           { #1 } \newpage
l.11 \marsch[
             maersche/zeppelin/zeppelin.ly]

Ist diese Vorgehensweise vernünftig? Wenn ja, wie definiere ich den Command korrekt?

Malte

  • Sr. Member
  • ****
  • Beiträge: 430
Antw:\newcommand in lilypond-book
« Antwort #1 am: Samstag, 2. Februar 2019, 16:30 »
Hm … Soweit ich weiß, erkennt LilyPond-Book relativ „dumm“ nur das, was es kennt, also \begin{lilypond} und ein paar Befehle. \marsch gehört nicht dazu, weil es sich nicht um \newcommand kümmert. Ich fürchte, daß es keinen einfachen Weg gibt, lilypond-book sowas beizubringen.

Es gibt aber möglicherweise einen einfacheren Weg: Du könntest statt lilypond-book als Präprozessor mit anschließendem LaTeX-Aufruf das neue Paket lyluatex verwenden. Damit ruft (Lua)LaTeX LilyPond selbst auf und kann auch solche selbst definierten Befehle anständig behandeln. Hab gerade keine Zeit, das zu testen, aber vielleicht hilfts dir ja schon ;)
Fugen komponier ich so selten …

jonas

  • Newbie
  • *
  • Beiträge: 21
Antw:\newcommand in lilypond-book
« Antwort #2 am: Montag, 4. Februar 2019, 18:54 »
Funktioniert prima, danke.  :)