[ < ] [ > ]   [ << ] [Plus haut] [ >> ]         [Racine] [Table des matières] [Index] [ ? ]

3.1 Agencement du code

@translationof Input structure

LilyPond traite des fichiers textuels. Ces fichiers portent par convention une extension .ly.


[ < ] [ > ]   [ << ] [Plus haut] [ >> ]         [Racine] [Table des matières] [Index] [ ? ]

3.1.1 Structure d’une partition

@translationof Structure of a score

Un bloc \score contient obligatoirement une seule expression musicale délimitée par des accolades :

 
\score {
…
}

Note : Il ne doit y avoir qu’une seule expression musicale globale dans un bloc \score, et elle doit être bornée par une paire d’accolades.

Cette unique expression musicale peut être de n’importe quelle taille et contenir d’autres expressions musicales aussi complexes soient elles. Voici quelques exemples d’expression musicale :

 
{ c'4 c' c' c' }
 
{
  { c'4 c' c' c' }
  { d'4 d' d' d' }
}

[image of music]

 
<<
  \new Staff { c'4 c' c' c' }
  \new Staff { d'4 d' d' d' }
>>

[image of music]

 
{
  \new GrandStaff <<
    \new StaffGroup <<
      \new Staff { \flute }
      \new Staff { \hautbois }
    >>
    \new StaffGroup <<
      \new Staff { \violonI }
      \new Staff { \violonII }
    >>
  >>
}

Les commentaires constituent l’une des rares exceptions à cette règle immuable – voir Structure de fichier pour les autres. Qu’il s’agisse d’une seule ligne ou de tout un bloc – délimité par %{ … %} – un commentaire peut se placer n’importe où dans le fichier source, aussi bien à l’intérieur qu’à l’extérieur du bloc \score, ou encore à l’intérieur ou à l’extérieur de l’expression musicale contenue dans un bloc \score.

Lorsqu’un fichier ne comprend qu’un bloc \score, celui-ci est implicitement inclus dans un bloc \book. Le bloc \book d’un fichier source permet la production d’au moins un fichier dont le nom sera, par défaut, déduit du fichier source : le traitement de ‘fandangopourelephants.ly’ produira donc ‘fandangopourelephants.pdf’.

Pour de plus amples informations à propos du bloc \book, lisez Plusieurs partitions dans un même ouvrage, Plusieurs éditions pour une même source et Structure de fichier.

Voir aussi

Manuel d’initiation : (learning)La partition est une (unique) expression musicale composée section ‘La partition est une (unique) expression musicale composée’ dans Manuel d’initiation, (learning)Les expressions musicales en clair section ‘Les expressions musicales en clair’ dans Manuel d’initiation, (learning)Travail sur les fichiers d’entrée section ‘Travail sur les fichiers d'entrée’ dans Manuel d’initiation.


[ < ] [ > ]   [ << ] [Plus haut] [ >> ]         [Racine] [Table des matières] [Index] [ ? ]

3.1.2 Plusieurs partitions dans un même ouvrage

@translationof Multiple scores in a book

Un ouvrage peut se composer de plusieurs morceaux et de texte. C’est le cas des cahiers d’exercices ou d’une partie d’orchestre avec ses différents mouvements. Chaque mouvement fait l’objet d’un bloc \score,

 
\score {
  …musique…
}

et le texte est contenu dans un bloc \markup,

 
\markup {
  …texte…
}

Les différents mouvements et textes qui apparaissent dans un même fichier ‘.ly’ ne composeront en principe qu’un seul fichier résultant.

 
\score {
  …
}
\markup {
  …
}
\score {
  …
}

Attention cependant si vous travaillez avec lilypond-book : il vous faudra explicitement mentionner le bloc \book, en l’absence de quoi seul le premier \score ou \markup apparaîtra après traitement.

L’entête de chaque pièce peut se placer au sein du bloc \score ; le contenu du champ piece viendra s’imprimer avant chaque mouvement. De même, le titre de l’ouvrage peut se placer au sein du bloc \book. Dans le cas contraire, le contenu du bloc \header placé en début de fichier sera utilisé.

 
\header {
  title = "Huit miniatures"
  composer = "Igor Stravinsky"
}
\score {
  …
  \header { piece = "Romance" }
}
\markup {
   …texte du second couplet…
}
\markup {
   …texte du troisième couplet…
}
\score {
  …
  \header { piece = "Menuet" }
}

Plusieurs pièces seront regroupées dans un même « chapitre » à l’aide d’un bloc \bookpart. Ces différents « chapitres » sont séparés par un saut de page et peuvent comporter un titre à l’instar de l’ouvrage dès lors que vous y insérez un bloc \header.

 
\bookpart {
  \header {
    title = "Titre de l'ouvrage"
    subtitle = "Première partie"
  }
  \score { … }
  …
}
\bookpart {
  \header {
    subtitle = "Deuxième partie"
  }
  \score { … }
  …
}

[ < ] [ > ]   [ << ] [Plus haut] [ >> ]         [Racine] [Table des matières] [Index] [ ? ]

3.1.3 Plusieurs éditions pour une même source

@translationof Multiple output files from one input file

Dès lors que vous inscrivez plusieurs blocs \book dans un même fichier ‘.ly’, chacun d’eux donnera lieu à un résultat indépendant. Lorsqu’aucun bloc \book n’est spécifié dans le fichier source, LilyPond considère que l’intégralité du fichier constitue un bloc \book unique, comme indiqué à la rubrique Structure de fichier.

LilyPond fait en sorte, lorsque plusieurs fichiers sont produits à partir d’une même source, qu’aucun résultat d’un bloc \book n’écrase celui qui a été généré pour un bloc \book précédent.

Dans les faits, et si le nom du fichier produit est repris de sa source – comportement par défaut –, un suffixe lui sera ajouté pour chaque \book. Il s’agit en principe d’un pseudo numéro de version. Ainsi, le fichier ‘huitminiatures.ly’ qui contiendrait

 
\book {
  \score { … }
  \paper { … }
}
\book {
  \score { … }
  \paper { … }
}
\book {
  \score { … }
  \paper { … }
}

générera


[ < ] [ > ]   [ << ] [Plus haut] [ >> ]         [Racine] [Table des matières] [Index] [ ? ]

3.1.4 Nom des fichiers de sortie

@translationof Output file names

LilyPond vous permet de prendre le contrôle dans la dénomination des fichiers que vous voulez générer, quel que soit le moteur de rendu utilisé.

Nous avons vu dans la rubrique précédente que LilyPond évite les conflits de nom des fichiers qu’il génère à partir d’une même source. Vous pouvez même définir vous-même le suffixe qui sera appliqué à chacun des blocs \book. Ainsi, en reprenant l’exemple ci-avant, vous obtiendrez les fichiers ‘huitminiatures-Romance.pdf’, ‘huitminiatures-Menuet.pdf’ et ‘huitminiatures-Nocturne.pdf’ en ajoutant simplement une déclaration \bookOutputSuffix au sein de chaque bloc \book.

 
\book {
  \bookOutputSuffix "Romance"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputSuffix "Menuet"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputSuffix "Nocturne"
  \score { … }
  \paper { … }
}

La déclaration \bookOutputName vous permet de définir vous-même le nom du fichier généré pour un bloc \book :

 
\book {
  \bookOutputName "Romance"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputName "Menuet"
  \score { … }
  \paper { … }
}
\book {
  \bookOutputName "Nocturne"
  \score { … }
  \paper { … }
}

Le traitement de ce fichier produira :


[ < ] [ > ]   [ << ] [Plus haut] [ >> ]         [Racine] [Table des matières] [Index] [ ? ]

3.1.5 Structure de fichier

@translationof File structure

Un fichier .ly peut contenir un certain nombre d’expressions de haut niveau. Les expressions de haut niveau sont les suivantes :

Voici trois éléments que vous pouvez placer à un niveau supérieur :

 
\layout {
  % pas en pleine largeur
  ragged-right = ##t
}

\header {
   title = "Do-re-mi"
}

{ c'4 d' e2 }

Vous pouvez placer, n’importe où dans votre fichier, les instructions suivantes :

Vous pouvez insérer des espaces dans votre fichier source afin de lui apporter une meilleure lisibilité. Les espaces superflus sont normalement ignorés. Notez cependant qu’il est des cas où l’espace est requis pour éviter tout risque d’erreur :

Voir aussi

Manuel d’initiation : (learning)Organisation des fichiers LilyPond section ‘Organisation des fichiers LilyPond’ dans Manuel d’initiation.

Manuel de notation : Généralités en matière de titrages, Le bloc \layout.


[ < ] [ > ]   [ << ] [Plus haut] [ >> ]

Ce document a été généré le le 13 juillet 2020 par gub en utilisant texi2html 1.82.

Autres langues : English, català, deutsch, español, italiano, 日本語.
À propos de la sélection automatique de la langue.