3.2.5 Table des matières

La commande \markuplist \table-of-contents vous permettra de générer une table des matières. Les éléments qui la composeront sont créés par la commande \tocItem, insérée indépendamment ou au sein d’une expression musicale.

\markuplist \table-of-contents
\pageBreak

\tocItem \markup "Premier mouvement"
\score {
  {
    c'4  % ...
    \tocItem \markup "Passage spécifique du premier mouvement"
    d'4  % ...
  }
}

\tocItem \markup "Second mouvement"
\score {
  {
    e'4 % ...
  }
}

Les markups dévolus à la mise en forme de la table des matières se définissent dans le bloc \paper. Il s’agit par défaut de tocTitleMarkup pour le titre de la table, et de tocItemMarkup pour ses éléments – composés de leur libellé et numéro de page. Vous pouvez bien entendu personnaliser ces variables :

\paper {
  %% Translate the toc title into French:
  tocTitleMarkup = \markup \huge \column {
    \fill-line { \null "Table des matières" \null }
    \hspace #1
  }
  %% use larger font size
  tocItemMarkup = \markup \large \fill-line {
    \fromproperty #'toc:text \fromproperty #'toc:page
  }
}

Notez bien la manière de référencer le libellé et le numéro de page dans la définition de tocItemMarkup.

N’hésitez pas à définir vous-même d’autres commandes et markups afin de construire une table plus élaborée :

Dans l’exemple qui suit, nous avons créé un nouveau style d’élément dans le but de mentionner les actes dans la table des matières d’un opéra :

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

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

[image of music]

L’élément et son numéro de page peuvent se rejoindre par une ligne pointillée :

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

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

[image of music]

Commandes prédéfinies

\table-of-contents, \tocItem.

Voir aussi

Fichiers d’initialisation : ‘../ly/toc-init.ly’.


Autres langues : English, deutsch, español, italiano, 日本語.
About automatic language selection.

LilyPond — Manuel de notation