3.2.5 Inhaltsverzeichnis

Ein Inhaltsverzeichnis kann eingefügt werden mit dem Befehl \markuplist \table-of-contents. Die Elemente, die im Inhaltsverzeichnis aufgelistet werden sollen, werden mit dem \tocItem-Befehl markiert, welches sowohl auf höchster Ebene als auch in einem musikalischen Ausdruck verwendet werden kann.

\markuplist \table-of-contents
\pageBreak

\tocItem \markup "Erste Partitur"
\score {
  {
    c'4  % ...
    \tocItem \markup "Ein bestimmter Punkt innerhalb der ersten Partitur"
    d'4  % ...
  }
}

\tocItem \markup "zweite Partitur"
\score {
  {
    e'4 % ...
  }
}

Die Beschriftungen, die benutzt werden um das Inhaltsverzeichnis zu formatieren, sind in der \paper-Umgebung definiert. Die Standardformatierungselemente sind tocTitleMarkup um die Überschrift zu formatieren und tocItemMarkup um die einzelnen Inhaltselemente zu formatieren, bestehend aus dem Titelelement und einer Seitenzahl. Die Variablen können durch den Benutzer geändert werden:

\paper {
  %% Übersetzung der Inhaltsverzeichnisüberschrift nach französisch:
  tocTitleMarkup = \markup \huge \column {
    \fill-line { \null "Table des matières" \null }
    \hspace #1
  }
  %% hier größere Schriftarten
  tocItemMarkup = \markup \large \fill-line {
    \fromproperty #'toc:text \fromproperty #'toc:page
  }
}

Die Inhaltsverzeichniselemente Text und Seitenzahl werden in der Definition von tocItemMarkup aufgerufen mit #'toc:text und #'toc:page.

Neue Befehle und Beschriftungen können auch definiert werden, um eigene Inhaltsverzeichnisse zu gestalten:

Das folgende Beispiel definiert einen neuen Stil um Akt-Bezeichnungen einer Oper in das Inhaltsverzeichnis aufzunehmen:

\paper {
  tocActMarkup = \markup \large \column {
    \hspace #1
    \fill-line { \null \italic \fromproperty #'toc:text \null }
    \hspace #1
  }
}

tocAct =
#(define-music-function (text) (markup?)
   (add-toc-item! 'tocActMarkup text))

[image of music]

Die Zeile zwischen dem Inhalt und der Seitenzahl kann mit einer gepunkteten Linie gefüllt werden:

\header { tagline = ##f }
\paper {
  tocItemMarkup = \tocItemWithDotsMarkup
}

\book {
  \markuplist \table-of-contents
  \tocItem \markup { Allegro }
  \tocItem \markup { Largo }
  \markup \null
}

[image of music]

Siehe auch

Installierte Dateien: ly/toc-init.ly.

Vordefinierte Befehle

\table-of-contents, \tocItem.


LilyPond Benutzerhandbuch v2.25.22 (development-branch).