| [ < ] | [ > ] | [ << ] | [Plus haut] | [ >> ] | [Racine] | [Table des matières] | [Index] | [ ? ] |
@translationof Input structure
LilyPond traite des fichiers textuels. Ces fichiers portent par
convention une extension .ly.
| 3.1.1 Structure d’une partition | ||
| 3.1.2 Plusieurs partitions dans un même ouvrage | ||
| 3.1.3 Plusieurs éditions pour une même source | ||
| 3.1.4 Nom des fichiers de sortie | ||
| 3.1.5 Structure de fichier |
| [ < ] | [ > ] | [ << ] | [Plus haut] | [ >> ] | [Racine] | [Table des matières] | [Index] | [ ? ] |
@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' } }
<< \new Staff { c'4 c' c' c' } \new Staff { d'4 d' d' d' } >>
{
\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.
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] | [ ? ] |
@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] | [ ? ] |
@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] | [ ? ] |
@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] | [ ? ] |
@translationof File structure
Un fichier .ly peut contenir un certain nombre d’expressions de
haut niveau. Les expressions de haut niveau sont les suivantes :
\paper, \midi et
\layout. Ces définitions, lorsqu’elles se trouvent à un niveau
supérieur, s’appliqueront à l’intégralité de l’ouvrage. Si l’une de ces
expression apparaît à plusieurs reprises à un niveau supérieur, les
différents contenus seront combinés, à ceci près qu’en cas de
déclarations conflictuelles, la dernière aura préséance. Des
informations complémentaires sont disponibles à la rubrique
Le bloc \layout.
#(set-default-paper-size "a7" 'landscape) ou
#(ly:set-option 'point-and-click #f).
\header, dont le contenu sera valide pour tout le
fichier. Il comporte en général les valeurs par défaut des champs de
titrage, tels le titre ou l’auteur entre autres, communs à tous les
blocs \book inclus dans le fichier – voir
Généralités en matière de titrages.
\score pour la partition. Cette partition sera assemblée
avec les autres partitions se trouvant au même niveau pour composer le
\book. Vous pouvez modifier ce comportement à l’aide de la
variable toplevel-score-handler placée en tête. Le gestionnaire
par défaut est défini dans le fichier d’initialisation
‘../scm/lily.scm’, et les réglages par défaut dans le fichier
‘../ly/declarations-init.ly’.
\book permet de regrouper naturellement plusieurs
mouvements – autrement dit plusieurs blocs \score – dans un
même document. Lorsqu’il y a plusieurs \score, LilyPond génère
un seul fichier dans lequel les mouvements sont mis les uns à la suite
des autres, ce pour chacun des blocs \book rencontrés. La seule
raison qui peut vous demander d’expliciter plusieurs blocs \book
dans un fichier ‘.ly’ est lorsque vous avez besoin de générer
différents documents à partir d’une même source. La présence explicite
d’un bloc \book est aussi nécessaire lorsque vous travaillez sur
un document lilypond-book qui reprendrait plusieurs \score ou
\markup dans un même extrait. Vous pouvez modifier ce
comportement à l’aide de la variable toplevel-book-handler
placée en tête. Le gestionnaire par défaut est défini dans le fichier
d’initialisation ‘../scm/lily.scm’.
\bookpart. Un ouvrage peut se découper en plusieurs
parties à l’aide de blocs \bookpart, aussi bien pour alléger le
travail de l’algorithme de calcul des sauts de page, que si les réglages
du bloc \paper diffèrent d’une partie à l’autre.
{ c'4 d' e'2 }
|
Ce bout de code sera placé dans un \score et intégré à l’ouvrage
en même temps que tous les autres \score ou expressions
musicales. En d’autres termes, un fichier qui ne contiendrait que cette
simple expression musicale sera traduit en
\book {
\score {
\new Staff {
\new Voice {
{ c'4 d' e'2 }
}
}
\layout { }
}
\paper { }
\header { }
}
|
Vous pouvez modifier ce comportement à l’aide de la variable
toplevel-music-handler placée en tête. Le gestionnaire par
défaut est défini dans le fichier d’initialisation
‘../scm/lily.scm’.
\markup {
2. Le première ligne du deuxième couplet.
}
|
De tels markups seront imprimés là où ils apparaissent, avant, après ou entre les expressions musicales.
toto = { c4 d e d }
|
Vous pourrez la réutiliser plus loin dans votre fichier en saisissant
simplement \toto. Le nom des identificateurs ne doit pas
comporter de chiffre (ASCII), de succession de caractères
souligné (_) ou de tiret ni aucune espace. Tous les autres
caractères Unicode sont permis, aussi bien latins, grecs, chinois que
cyrilliques. Les souligné ou tiret isolés sont autorisés. Autrement dit,
les variables CorIII ou αβγXII sont valides.
Toute combinaison de caractères est permise dès lors que le nom de la
variable est borné par des guillemets informatiques. En pareil cas, les
antislashes et guillemets doivent être « échappés » par un antislash.
Sont donc valides : "toto tutu", "a-b-c" et "Cor 3".
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 :
\version
\include
\sourcefilename
\sourcefileline
%.
%{ … %}.
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 :
\ ;
# ;
lyricmode – avant et après les commandes
\override et \set.
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.