[Racine][Table des matières][Index][ ? ] |
LilyPond — Manuel de notation
Ce document constitue le manuel de notation de GNU LilyPond 2.13.27. Sa lecture requiert une familiarité avec le contenu présenté dans le Manuel d’initiation. |
1. Notation musicale générale | notation générale. | |
2. Notation spécialisée | notation à usage spécifique. | |
3. Généralités en matière d’entrée et sortie | généralités sur les fichiers sources et les sorties. | |
4. Gestion de l’espace | mise en page de la musique sur le papier. | |
5. Modification des réglages prédéfinis | ajustement de la gravure. | |
6. Interfaces pour les programmeurs | utilisation avancée. | |
Annexes | ||
---|---|---|
A. Tables du manuel de notation | tables et diagrammes. | |
B. Aide-mémoire | résumé de la syntaxe de LilyPond. | |
C. Grammaire de LilyPond | diagramme syntaxique pour l’analyseur de LilyPond | |
D. GNU Free Documentation License | licence de ce document. | |
E. Index des commandes LilyPond | ||
F. Index de LilyPond |
Pour connaître la place qu’occupe ce manuel dans la documentation, consultez la page Manuels. Si vous ne disposez pas de certains manuels, la documentation complète se trouve sur http://www.lilypond.org/. |
[ << Top ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Top ] | [ Plus haut: Top ] | [ Hauteurs > ] |
1. Notation musicale générale
Ce chapitre explique comment créer la notation musicale standard.
1.1 Hauteurs | écriture et gravure des hauteurs de note. | |
1.2 Rythme | écriture et gravure des durées. | |
1.3 Signes d’interprétation | ajout de signes d’exécution et d’interprétation. | |
1.4 Répétitions et reprises | différents types de répétitions de musique. | |
1.5 Notes simultanées | polyphonie et accords. | |
1.6 Notation sur la portée | gravure de la portée. | |
1.7 Notation éditoriale | annotations d’édition ou à usage pédagogique. | |
1.8 Texte | ajout de texte à la partition. |
1.1 Hauteurs
Cette section détaille la façon d’indiquer la hauteur des notes, sous trois aspects : la saisie des hauteurs, la modification des hauteurs et les options de gravure.
1.1.1 Écriture des hauteurs de note | ||
1.1.2 Modification de plusieurs hauteurs | ||
1.1.3 Gravure des hauteurs | ||
1.1.4 Têtes de note |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Hauteurs ] | [ Plus haut: Hauteurs ] | [ Hauteurs avec octave absolue > ] |
1.1.1 Écriture des hauteurs de note
Cette section explique la manière d’indiquer les hauteurs de note. Deux modes permettent d’indiquer l’octave des notes : le mode absolu, et le mode relatif. Ce dernier est le plus pratique lors de la saisie d’un fichier source au clavier de l’ordinateur.
Hauteurs avec octave absolue | ||
Octaves relatives | ||
Altérations | ||
Noms de note dans d’autres langues | ||
Noms de note et altérations non-occidentaux |
Hauteurs avec octave absolue
La hauteur s’écrit – à moins de préciser une autre langue – avec la
notation batave, en utilisant les lettres de a
à g
.
Les notes c
(do) et b
(si) sont écrites une octave sous le
do central.
\clef bass c d e f g a b c d e f g
L’octave peut être précisée sous forme d’une série
d’apostrophes '
ou d’une série de virgules ,
.
Chaque '
hausse la note d’une octave ;
chaque ,
baisse la note d’une octave.
\clef treble c' c'' e' g d'' d' d c \clef bass c, c,, e, g d,, d, d c
Voir aussi
Glossaire musicologique : Pitch names.
Morceaux choisis : Pitches.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Hauteurs avec octave absolue ] | [ Plus haut: Écriture des hauteurs de note ] | [ Altérations > ] |
Octaves relatives
On spécifie les octaves en ajoutant '
ou ,
aux
noms de hauteur. En recopiant de la musique, on a vite fait de mettre
une note à la mauvaise octave ; ce genre d’erreur est difficile à
retrouver. Le mode d’écriture en octave relative prévient ces erreurs
dans la mesure où elles deviennent beaucoup plus évidentes : une
seule erreur décale le reste de la pièce à une mauvaise octave.
\relative hauteur_de_référence expression_musicale
En mode relatif, chaque note est considérée comme étant le plus proche possible de celle qui la précède. L’octave des notes mentionnées dans expression_musicale va être calculée de la manière suivante :
- Si aucun signe de changement d’octave n’est utilisé, l’intervalle de base entre la note actuelle et la précédente sera toujours au plus d’une quarte. Cet intervalle est déterminé sans tenir compte des altérations.
-
Un signe de changement d’octave
'
ou,
peut être ajouté pour hausser ou baisser la note d’une octave par rapport à la hauteur calculée sans spécification. -
Ces signes de changement d’octave peuvent être multipliés. Par exemple,
''
ou,,
ajouteront une octave supplémentaire. -
Lorsque l’on entre en mode
\relative
, une hauteur absolue de départ peut être spécifiée, et agira dès lors comme si elle précédait la première note de musicexpr. Nous vous recommandons de faire référence à un do (c
).
Voici le mode \relative
en action.
\relative c { \clef bass c d e f g a b c d e f g }
On utilise les signes de changement d’octave pour les intervalles dépassant la quarte.
\relative c'' { c g c f, c' a, e'' c }
Bien que ne comportant aucun signe de changement d’octave, une séquence de notes peut tout à fait couvrir un intervalle important.
\relative c { c f b e a d g c }
Lorsque plusieurs blocs \relative
sont imbriqués, c’est la
dernière clause \relative
qui est prise en compte.
\relative c' { c d e f \relative c'' { c d e f } }
\relative
est sans effet sur un bloc \chordmode
.
\new Staff { \relative c''' { \chordmode { c1 } } \chordmode { c1 } }
\relative
n’est pas permis au sein d’un bloc \chordmode
.
Pour utiliser le mode d’octave relative dans de la musique transposée,
une clause \relative
additionnelle doit être placée au sein du
bloc \transpose
.
\relative c' { d e \transpose f g { d e \relative c' { d e } } }
Si l’expression précédente est un accord, c’est la première note de l’accord qui détermine l’emplacement de la première note du prochain accord. À l’intérieur de l’accord, les notes sont placées relativement à celle qui précède. Examinez avec attention l’exemple suivant, et tout particulièrement le positionnement des do.
\relative c' { c <c e g> <c' e g'> <c, e, g''> }
Comme nous l’avons vu, l’octaviation est déterminée sans tenir compte des altérations. Ainsi un mi double-dièse qui suit un si naturel sera placé au-dessus de celui-ci, alors qu’un fa double-bémol se retrouvera en dessous. En d’autres termes, une quarte doublement augmentée demeure considérée comme un intervalle plus petit qu’une quinte diminuée, bien que la quarte doublement augmentée soit de sept demi-tons et la quinte diminuée de seulement six demi-tons.
\relative c'' { c2 fis c2 ges b2 eisis b2 feses }
Voir aussi
Glossaire musicologique : fifth, interval, Pitch names.
Manuel de notation : Vérifications d’octave.
Morceaux choisis : Pitches.
Référence des propriétés internes : RelativeOctaveMusic.
Altérations
Note : Les nouveaux utilisateurs sont parfois déroutés par la gestion
des altérations et de l’armure. Pour LilyPond, une hauteur n’est que du
matériau brut ; l’armure et la clef ne feront que déterminer
comment ce matériau sera retranscrit. Un simple c
signifie
tout bonnement « do naturel » quelles que soient l’armure et la clef
en question. Pour plus d’information, reportez-vous au chapitre
Altérations et armure.
Dans la notation par défaut, un dièse est formé en ajoutant
is
après le nom de note, un bémol en ajoutant
es
. Les double-dièses et double-bémols
sont obtenus en ajoutant respectivement isis
ou eses
au
nom de note. Ce sont les noms de note hollandais. Pour les autres
langues, consultez Noms de note dans d’autres langues.
ais1 aes aisis aeses
Un bécarre annule l’effet d’une altération, qu’elle soit accidentelle ou à l’armure. Cependant, dans la syntaxe des noms de note, les bécarres ne s’écrivent pas avec un suffixe ; un simple nom de note donnera une note bécarre.
a4 aes a2
Les demi-bémols et demi-dièses s’écrivent en ajoutant respectivement
eh
et ih
. Voici une série de dos altérés en hauteurs
croissantes :
ceseh1 ces ceh c cih cis cisih
Les micro-intervalles sont aussi exportés dans le fichier MIDI.
Normalement, les altérations sont imprimées automatiquement, mais il se
peut que vous vouliez les imprimer manuellement. On peut forcer
l’impression d’une altération, dite « de précaution », en ajoutant un
point d’exclamation !
après la hauteur de note. Une
altération entre parenthèses peut être obtenue en ajoutant un point
d’interrogation ?
après la hauteur de note. Ces signes
peuvent aussi être utilisés pour imprimer des bécarres.
cis cis cis! cis? c c c! c?
Lorsqu’une note est prolongée par une liaison de tenue, l’altération ne sera réimprimée que s’il y a un saut de ligne.
cis1 ~ cis ~ \break cis
Morceaux choisis
Suppression des bécarres superflus
En accord avec les règles standards de l’écriture musicale, on grave
un bécarre avant un dièse ou un bémol si on a besoin d’annuler une
altération précédente. Pour modifier ce comportement, assignez la propriété
extraNatural
du contexte Staff
à la valeur ##f
(faux).
\relative c'' { aeses4 aes ais a \set Staff.extraNatural = ##f aeses4 aes ais a }
Voir aussi
Glossaire musicologique : sharp, flat, double sharp, double flat, Pitch names, quarter tone.
Manuel d’initiation : Altérations et armure.
Manuel de notation : Altérations accidentelles automatiques, Altérations accidentelles suggérées, Noms de note dans d’autres langues.
Morceaux choisis : Pitches.
Références internes du programme : Accidental_engraver, Accidental, AccidentalCautionary, accidental-interface.
Problèmes connus et avertissements
Il n’y a pas de standard universellement accepté pour noter le bémol et demi (qui abaisse la hauteur trois quarts de ton), le symbole de LilyPond n’est donc conforme à aucun standard.
Noms de note dans d’autres langues
Vous disposez de jeux prédéfinis de noms de note pour plusieurs autres
langues. Pour les utiliser, incluez le fichier d’initialisation
spécifique à la langue voulue. Par exemple, pour les langues romanes,
ajoutez \include "italiano.ly"
au début du fichier source.
Note : Dans la mesure où certains fichiers d’initialisation, comme
predefined-fretboards.ly
, utilisent les conventions bataves,
la commande \include
concernant la langue que vous désirez
utiliser doît intervenir après toutes les autres inclusions de fichier
d’initialisation de LilyPond.
Les fichiers de langue disponibles ainsi que les noms de note utilisés sont les suivants :
Fichier linguistique
Nom des notes
‘nederlands.ly’
c d e f g a bes b
‘arabic.ly’
do re mi fa sol la sib si
‘catalan.ly’
do re mi fa sol la sib si
‘deutsch.ly’
c d e f g a b h
‘english.ly’
c d e f g a bf b
‘espanol.ly’
do re mi fa sol la sib si
‘italiano.ly’
do re mi fa sol la sib si
‘norsk.ly’
c d e f g a b h
‘portugues.ly’
do re mi fa sol la sib si
‘suomi.ly’
c d e f g a b h
‘svenska.ly’
c d e f g a b h
‘vlaams.ly’
do re mi fa sol la sib si
et les suffixes d’altération correspondants :
Fichier linguistique
dièse
bémol
double dièse
double bémol
‘nederlands.ly’
-is
-es
-isis
-eses
‘arabic.ly’
-d
-b
-dd
-bb
‘catalan.ly’
-d/-s
-b
-dd/-ss
-bb
‘deutsch.ly’
-is
-es
-isis
-eses
‘english.ly’
-s/-sharp
-f/-flat
-ss/-x/-sharpsharp
-ff/-flatflat
‘espanol.ly’
-s
-b
-ss/-x
-bb
‘italiano.ly’
-d
-b
-dd
-bb
‘norsk.ly’
-iss/-is
-ess/-es
-ississ/-isis
-essess/-eses
‘portugues.ly’
-s
-b
-ss
-bb
‘suomi.ly’
-is
-es
-isis
-eses
‘svenska.ly’
-iss
-ess
-ississ
-essess
‘vlaams.ly’
-k
-b
-kk
-bb
Notez qu’en hollandais, en allemand, en norvégien et en suédois, un
la altéré de bémol se note aes
et
aeses
. Ces formes sont contractées en as
et ases
(ou plus communément asas
). Dans certains fichiers
linguistiques, seules ces formes abrégées ont été définies.
a2 as e es a ases e eses
Certaines musiques utilisent des microtonalités, pour lesquelles les altérations sont des fractions de dièse ou bémol « normaux ». Le tableau suivant répertorie les noms de note en quart de ton, tels que définis dans plusieurs fichiers linguistiques. Les préfixes semi- et sesqui- correspondent au demi- et trois demis. À noter qu’aucune définition n’existe à ce jour pour le norvégien, le suédois, le catalan et l’espagnol.
Fichier linguistique
semi-dièse
semi-bémol
sesqui-dièse
sesqui-bémol
‘nederlands.ly’
-ih
-eh
-isih
-eseh
‘arabic.ly’
-sd
-sb
-dsd
-bsb
‘deutsch.ly’
-ih
-eh
-isih
-eseh
‘english.ly’
-qs
-qf
-tqs
-tqf
‘espanol.ly’
-cs
-cb
-tcs
-tcb
‘italiano.ly’
-sd
-sb
-dsd
-bsb
‘portugues.ly’
-sqt
-bqt
-stqt
-btqt
Voir aussi
Glossaire musicologique : Pitch names.
Morceaux choisis : Pitches.
Noms de note et altérations non-occidentaux
De nombreuses musiques autres qu’occidentales – et même certaines formes de musique traditionnelle occidentales – ont recours à des systèmes de notation alternatifs ou étendus, qui ne s’intègrent pas forcément dans notre système standard.
Sans certains cas où la notation standard est utilisée, ces différences de hauteurs seront implicites. Par exemple, la musique arabe est reproduite en notation standard, et utilise des quarts de ton, l’altération réelle dépendant du contexte. D’autres, par contre, font appel à une notation étendue, voire toute particulière.
La musique classique turque, ou musique ottomane, utilise des formes mélodiques appelées makamlar, dans laquelle les tons sont divisés en 9 intervalles. Du point de vue actuel des pratiques de notation, il est possible d’utiliser les notes occidentales (do, ré, mi…) auxquelles on ajoutera l’atlération spécifique à la musique turque. Ces différentes altérations sont définies dans le fichier ‘makam.ly’ – reportez vous au chapitre Autres sources de documentation pour le localiser sur votre système. Vous trouverez, dans le tableau suivant, le nom de ces altérations, le suffixe à utiliser, ainsi que la fraction de ton entier à laquelle elles conrrespondent.
Nom d’altération
suffixe
altération
büyük mücenneb (dièse)
-bm
+8/9
kücük mücenneb (dièse)
-k
+5/9
bakiye (dièse)
-b
+4/9
koma (dièse)
-c
+1/9
koma (bémol)
-fc
-1/9
bakiye (bémol)
-fb
-4/9
kücük mücenneb (bémol)
-fk
-5/9
büyük mücenneb (bémol)
-fbm
-8/9
Pour plus d’information sur la musique classique turque et les makamlar, reportez-vous au chapitre Musique classique turque.
Morceaux choisis
Exemple de musique « Makam »
Le « makam » est une forme de mélodie turque qui utilise des altérations
d’un neuvième de ton. Consultez le fichier d’initialisation
makam.ly
pour plus de détails sur les hauteurs et altérations
utilisées (voir le chapitre 4.6.3 - Autres sources d’information du
manuel d’initiation pour le localiser).
% Initialize makam settings \include "makam.ly" \relative c' { \set Staff.keySignature = #`((6 . ,(- KOMA)) (3 . ,BAKIYE)) c4 cc db fk gbm4 gfc gfb efk fk4 db cc c }
1.1.2 Modification de plusieurs hauteurs
Cette partie traite de la manière de modifier les hauteurs de note.
Vérifications d’octave | ||
Transposition |
Vérifications d’octave
Les tests d’octave rendent la correction d’erreurs d’octave plus facile
dans le mode d’octave relative
– un ,
ou
un '
oublié, ça n’arrive pas qu’aux autres !
Une note peut être suivie de =
apostrophes/virgules
pour indiquer à quelle octave absolue elle devrait être. Dans l’exemple
suivant, le d
générera un avertissement, puisqu’on attend un
d''
mais qu’on obtient un d'
– il n’y a qu’une tierce
entre b'
et d''
. Sur la partition, l’octave sera corrigée
pour donner un d''
et la prochaine note sera calculée en fonction
de d''
et non de d'
.
\relative c'' { c2 d='4 d e2 f }
Il existe aussi une vérification d’octave qui ne produit pas de musique
imprimée, ayant pour syntaxe
\octaveCheck
hauteur_référence –
hauteur_référence étant spécifiée en mode absolu. Cette commande
vérifie que l’intervalle entre la note qui précède et
hauteur_référence est inférieur à la quinte comme il se doît en
mode relatif. Dans le cas contraire, un message sera émis et la note
précédente ne sera pas modifiée. Les notes suivantes seront, par
contre, positionnées relativement à hauteur_référence.
\relative c'' { c2 d \octaveCheck c' e2 f }
Dans les deux mesures qui suivent, les premier et troisième
\octaveCheck
échouent, mais le deuxième est concluant.
\relative c'' { c4 f g f c4 \octaveCheck c' f \octaveCheck c' g \octaveCheck c' f }
Voir aussi
Morceaux choisis : Pitches.
Référence des propriétés internes : RelativeOctaveCheck.
Transposition
Une expression musicale peut être transposée avec \transpose
.
Voici la syntaxe :
\transpose note_de_départ note_d_arrivée expression_musicale
Cela signifie que expression_musicale est transposé de
l’intervalle séparant note_de_départ et
note_d_arrivée : toute note dont la hauteur était
note_de_départ
est changée en note_d_arrivée
; les
autres notes seront changées selon le même intervalle.
Note : La musique contenue dans un bloc \transpose
est en
octaves absolus, sauf à inclure dans ce même bloc une clause
\relative
.
Prenons comme exemple une pièce écrite en ré majeur. Si cette pièce est un peu trop basse pour l’interprète, elle peut être transposée en mi majeur. Vous noterez que l’armure est automatiquement modifiée.
\transpose d e { \relative c' { \key d \major d4 fis a d } }
Regardons maintenant une partie écrite pour violon – un instrument en ut. Si cette partie doit être jouée par une clarinette en la (écrite à la tierce mineure supérieure, un do écrit donnant un la réel), la transposition suivante créera la partie appropriée.
\transpose a c' { \relative c' { \key c \major c4 d e g } }
La présence de \key c \major
s’explique par le fait que, bien
que les notes soient effectivement transposées, l’armure ne sera
imprimée que dans la mesure où elle est explicitement mentionnée.
\transpose
fait la distinction entre les notes enharmoniques :
\transpose c cis
et \transpose c des
transposeront
la pièce un demi-ton plus haut, au détail près que la première version
écrira des dièses et la deuxième des bémols.
music = \relative c' { c d e f } \new Staff { \transpose c cis { \music } \transpose c des { \music } }
On peut aussi utiliser \transpose
pour entrer des notes écrites
pour un instrument transpositeur. Normalement, les hauteurs dans
LilyPond sont écrites en ut, c’est à dire en sons réels, mais elles
peuvent être écrites dans un autre ton. Prenons l’exemple d’un morceau
pour trompette en si bémol commençant sur un ré à l’oreille ; on
pourrait écrire
musiqueEnSiBemol = { e4 … } \transpose c bes, \musiqueEnSiBemol
Pour imprimer cette musique en fa – et de ce fait produire une partie
de cor au lieu d’un conducteur en notes réelles – on utilisera un
deuxième transpose
:
musiqueEnSiBemol = { e4 … } \transpose f c' { \transpose c bes, \musiqueEnSiBemol }
Pour plus d’information à ce sujet, consultez Instruments transpositeurs.
Morceaux choisis
Transposition et réduction du nombrer d’altérations accidentelles
Cet exemple, grâce à un peu de code Scheme, donne la priorité aux enharmoniques afin de limiter le nombre d’altérations supplémentaires. La règle appliquable est :
- Les altérations doubles sont supprimées
- Si dièse -> Do
- Mi dièse -> Fa
- Do bémol -> Si
- Fa bémol -> Mi
Cette façon de procéder aboutit à plus d’enharmoniques naturelles.
#(define (naturalize-pitch p) (let ((o (ly:pitch-octave p)) (a (* 4 (ly:pitch-alteration p))) ;; alteration, a, in quarter tone steps, ;; for historical reasons (n (ly:pitch-notename p))) (cond ((and (> a 1) (or (eq? n 6) (eq? n 2))) (set! a (- a 2)) (set! n (+ n 1))) ((and (< a -1) (or (eq? n 0) (eq? n 3))) (set! a (+ a 2)) (set! n (- n 1)))) (cond ((> a 2) (set! a (- a 4)) (set! n (+ n 1))) ((< a -2) (set! a (+ a 4)) (set! n (- n 1)))) (if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7)))) (if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7)))) (ly:make-pitch o n (/ a 4)))) #(define (naturalize music) (let ((es (ly:music-property music 'elements)) (e (ly:music-property music 'element)) (p (ly:music-property music 'pitch))) (if (pair? es) (ly:music-set-property! music 'elements (map (lambda (x) (naturalize x)) es))) (if (ly:music? e) (ly:music-set-property! music 'element (naturalize e))) (if (ly:pitch? p) (begin (set! p (naturalize-pitch p)) (ly:music-set-property! music 'pitch p))) music)) naturalizeMusic = #(define-music-function (parser location m) (ly:music?) (naturalize m)) music = \relative c' { c4 d e g } \score { \new Staff { \transpose c ais { \music } \naturalizeMusic \transpose c ais { \music } \transpose c deses { \music } \naturalizeMusic \transpose c deses { \music } } \layout { } }
Voir aussi
Manuel de notation : Octaves relatives, Instruments transpositeurs.
Morceaux choisis : Pitches.
Référence des propriété internes : TransposedMusic.
Problèmes connus et avertissements
Si vous voulez utiliser en même temps \transpose
et
\relative
, vous devez mettre \transpose
en dehors de
\relative
, puisque \relative
n’aura aucun effet sur la
musique apparaissant dans un \transpose
.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Transposition ] | [ Plus haut: Hauteurs ] | [ Clefs > ] |
1.1.3 Gravure des hauteurs
Nous allons voir dans cette partie comment influer sur la gravure des hauteurs.
Clefs | ||
Armure | ||
Marques d’octaviation | ||
Instruments transpositeurs | ||
Altérations accidentelles automatiques | ||
Ambitus |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Gravure des hauteurs ] | [ Plus haut: Gravure des hauteurs ] | [ Armure > ] |
Clefs
La clé indique quelles lignes de la portée correspondent à quelles hauteurs. Elle peut changer au fil du morceau, comme dans l’exemple suivant qui indique le do médium dans différentes clefs :
\clef treble c2 c \clef alto c2 c \clef tenor c2 c \clef bass c2 c
LilyPond met à votre disposition d’autres clefs :
\clef french c2 c \clef soprano c2 c \clef mezzosoprano c2 c \clef baritone c2 c \break \clef varbaritone c2 c \clef subbass c2 c \clef percussion c2 c \break \clef G % synonym for treble c2 c \clef F % synonym for bass c2 c \clef C % synonym for alto c2 c
En ajoutant _8
ou ^8
au nom de la clé, celle-ci est
transposée à l’octave respectivement inférieure ou supérieure, et
_15
ou ^15
la transpose de deux octaves. D’autres nombres
entiers peuvent être utilisés selon les besoins. L’argument
clefname doit être mis entre guillemets lorsqu’il contient des
caractères supplémentaires. Par exemple,
\clef treble c2 c \clef "treble_8" c2 c \clef "bass^15" c2 c \clef "alto_2" c2 c \clef "G_8" c2 c \clef "F^5" c2 c
Il existe d’autres clefs, destinées à un usage particulier. Voir à ce sujet Tablatures par défaut et Tablatures personnalisées.
Morceaux choisis
Affinage des propriétés d’une clef
La commande \clef "treble_8"
équivaut à définir clefGlyph
,
clefPosition
– qui contrôle la position verticale de la clé –
middleCPosition
et clefOctavation
. Une clé est imprimée
lorsque l’une de ces propriétés, hormis middleCPosition
, est
modifiée. Les exemples suivant font apparaître des possibilités de
réglage manuel de ces propriétés.
Modifier le glyphe, la position de la clef ou son octaviation ne
changera pas la position des notes ; il faut pour y parvenir modifier
aussi la position du do médium. Le positionnement est relatif à la
ligne médiane, un nombre positif faisant monter, chaque ligne ou
interligne comptant pour 1. La valeur de clefOctavation
devrait
être de 7, -7, 15 ou -15, bien que rien ne vous empêche de lui affecter
une autre valeur.
Lorsqu’un changement de clef intervient en même temps qu’un saut de
ligne, la nouvelle clef est imprimer à la fois en fin de ligne et au
début de la suivante. Vous pouvez toujours supprimer cette « clef de
précaution » en affectant la valeur end-of-line-invisible
à la
propriété explicitClefVisibility
du contexte Staff
. Le
comportement par défaut sera réactivé par
\unset Staff.explicitClefVisibility
.
Les exemples qui suivent illustrent les différentes possibilités de définir ces propriétés manuellement. Sur la première ligne, la position relative des notes par rapport aux clefs sont préservées, ce qui n’est pas le cas pour la deuxième ligne.
\layout { ragged-right = ##t } { % The default treble clef c'1 % The standard bass clef \set Staff.clefGlyph = #"clefs.F" \set Staff.clefPosition = #2 \set Staff.middleCPosition = #6 c'1 % The baritone clef \set Staff.clefGlyph = #"clefs.C" \set Staff.clefPosition = #4 \set Staff.middleCPosition = #4 c'1 % The standard choral tenor clef \set Staff.clefGlyph = #"clefs.G" \set Staff.clefPosition = #-2 \set Staff.clefOctavation = #-7 \set Staff.middleCPosition = #1 c'1 % A non-standard clef \set Staff.clefPosition = #0 \set Staff.clefOctavation = #0 \set Staff.middleCPosition = #-4 c'1 \break % The following clef changes do not preserve % the normal relationship between notes and clefs: \set Staff.clefGlyph = #"clefs.F" \set Staff.clefPosition = #2 c'1 \set Staff.clefGlyph = #"clefs.G" c'1 \set Staff.clefGlyph = #"clefs.C" c'1 \set Staff.clefOctavation = #7 c'1 \set Staff.clefOctavation = #0 \set Staff.clefPosition = #0 c'1 % Return to the normal clef: \set Staff.middleCPosition = #0 c'1 }
Voir aussi
Manuel de notation : @ref{Mensural clefs}, @ref{Gregorian clefs}, Tablatures par défaut, Tablatures personnalisées.
Morceaux choisis: Pitches.
Référence des propriétés internes : Clef_engraver, Clef, OctavateEight, clef-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Clefs ] | [ Plus haut: Gravure des hauteurs ] | [ Marques d'octaviation > ] |
Armure
Note : Les nouveaux utilisateurs sont parfois déroutés par la gestion
des altérations et de l’armure. Pour LilyPond, une hauteur n’est que du
matériau brut ; l’armure et la clef ne feront que déterminer comment ce
matériau sera retranscrit. Un simple c
signifie tout
bonnement « do naturel » quelles que soient l’armure et la clef en
question. Pour plus d’information, reportez-vous au chapitre
Altérations et armure.
L’armure indique la tonalité dans laquelle la pièce doit être jouée. Elle comprend un ensemble d’altérations (dièses ou bémols) à la clef, c’est-à-dire au début de la portée.
On définit ou modifie l’armure avec la commande \key
\key
hauteur mode
Ici, mode doit être \major
ou \minor
afin d’avoir
respectivement hauteur-majeur ou hauteur-mineur. Vous pouvez
aussi avoir recours aux modes anciens que sont \ionian
,
\locrian
, \aeolian
, \mixolydian
, \lydian
,
\phrygian
et \dorian
.
\key g \major fis1 f fis
Morceaux choisis
Suppression des bécarres superflus après un changement de tonalité
Après un changement de tonalité, un bécarre est imprimé pour annuler
toute altération précédente. Ceci peut être supprimé en réglant à
"false"
la propriété printKeyCancellation
du contexte
Staff
.
\relative c' { \key d \major a4 b cis d \key g \minor a4 bes c d \set Staff.printKeyCancellation = ##f \key d \major a4 b cis d \key g \minor a4 bes c d }
Armures inhabituelles
La commande \key
détermine la propriété keySignature
d’un
contexte Staff
.
Des armures inhabituelles peuvent être spécifiées en modifiant directement cette propriété. Il s’agit en l’occurence de définir une liste :
\set Staff.keySignature = #`(((octave . pas) . altération) ((octave
. pas) . altération) …)
dans laquelle, et pour chaque élément,
octave
spécifie l’octave (0 pour celle allant du
do médium au si supérieur), pas
la note dans cette octave
(0 pour do et 6 pour si), et altération
sera
,SHARP ,FLAT ,DOUBLE-SHARP
etc. (attention à la virgule en
préfixe).
Une formulation abrégée – (pas . altération)
– signifie que
l’altération de l’élément en question sera valide quel que soit l’octave.
Voici, par exemple, comment générer une gamme par ton :
\relative c' { \set Staff.keySignature = #`(((0 . 6) . ,FLAT) ((0 . 5) . ,FLAT) ((0 . 3) . ,SHARP)) c4 d e fis aes4 bes c2 }
Voir aussi
Glossaire musicologique : church mode, scordatura.
Manuel d’initiation : Altérations et armure.
Morceaux choisis : Pitches.
Référence des propriétés internes : KeyChangeEvent, Key_engraver, Key_performer, KeyCancellation, KeySignature, key-cancellation-interface, key-signature-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Armure ] | [ Plus haut: Gravure des hauteurs ] | [ Instruments transpositeurs > ] |
Marques d’octaviation
Les marques d’octaviation, Ottava, permettent d’introduire une
transposition spécifique d’une octave pour la portée en cours. C’est
la fonction ottava
qui s’en charge.
a2 b \ottava #-2 a2 b \ottava #-1 a2 b \ottava #0 a2 b \ottava #1 a2 b \ottava #2 a2 b
Morceaux choisis
Texte des marques d’octaviation
En interne, la fonction \ottava
détermine les
propriétés ottavation
(p.ex. en "8va"
ou "8vb"
)
et centralCPosition
. Vous pouvez modifier le texte d’une marque
d’octaviation en définissant ottavation
après avoir fait appel
à ottava
:
{ \ottava #1 \set Staff.ottavation = #"8" c''1 \ottava #0 c'1 \ottava #1 \set Staff.ottavation = #"Text" c''1 }
Voir aussi
Glossarire musicologique : octavation.
Morceaux choisis : Pitches.
Référence des propriétés internes : Ottava_spanner_engraver, OttavaBracket, ottava-bracket-interface.
Instruments transpositeurs
Lorsque l’on saisit une partition d’ensemble incluant des instruments transpositeurs, certaines parties peuvent être dans une autre tonalité que la tonalité de concert. Il faudra en pareil cas indiquer la tonalité spécifique de ces instruments transpositeurs, sous peine de fichier MIDI erroné et de citations incorrectes. Pour plus de détails sur les citations, consultez le chapitre Citation d’autres voix.
\transposition hauteur
La hauteur donnée en argument à \transposition
doit
correspondre à la note entendue lorsqu’un do
écrit sur la
portée est joué par l’instrument transpositeur. Cette hauteur doit être
mentionnée en mode absolu. Par exemple, lorsque
vous saisissez une partition en notes réelles, toutes les voix
devraient être en ut ; si un instrument joue un ton au dessus, il
faudra lui ajouter un \transposition d'
. La commande
\transposition
s’utilise si et seulement si les notes à
saisir ne sont pas dans la tonalité de concert.
Voici un fragment pour violon et clarinette en si bémol (B-flat) pour lequel les parties respectives ont été recopiées à partir du conducteur. Les deux instruments sont à l’unisson.
\new GrandStaff << \new Staff = "violin" { \relative c'' { \set Staff.instrumentName = #"Vln" \set Staff.midiInstrument = #"violin" % not strictly necessary, but a good reminder \transposition c' \key c \major g4( c8) r c r c4 } } \new Staff = "clarinet" { \relative c'' { \set Staff.instrumentName = \markup { Cl (B\flat) } \set Staff.midiInstrument = #"clarinet" \transposition bes \key d \major a4( d8) r d r d4 } } >>
La \transposition
peut évoluer au cours d’un morceau. Un
clarinettiste peut être amené à jongler entre une clarinette en la et
une autre en si bémol.
\set Staff.instrumentName = #"Cl (A)" \key a \major \transposition a c d e f \textLengthOn s1*0^\markup { Switch to B\flat clarinet } R1 \key bes \major \transposition bes c2 g
Voir aussi
Glossaire musicologique : concert pitch, transposing instrument.
Manuel de notation : Citation d’autres voix, Transposition.
Morceaux choisis : Pitches.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Instruments transpositeurs ] | [ Plus haut: Gravure des hauteurs ] | [ Ambitus > ] |
Altérations accidentelles automatiques
LilyPond dispose d’une fonction chargée de regrouper les règles suivant lesquelles s’impriment les altérations. Elle s’invoque de la manière suivante :
\new Staff << #(set-accidental-style 'voice) { … } >>
La règle de gestion des altérations s’applique par défaut au contexte
Staff
en cours, exception faite des styles piano
et
piano-cautionary
comme nous allons le voir. Cette fonction
accepte un éventuel argument supplémentaire chargé de spécifier
le champ d’action de la règle à suivre. À titre d’exemple, il faudra
utiliser, pour que toutes les portées d’un même système – contexte
StaffGroup
– soient soumises à la même règle :
#(set-accidental-style 'voice 'StaffGroup)
Nous vous présentons ci-après les différentes régles d’altération prises en charge. Pour les besoins de la démonstration, nous partirons de l’exemple suivant :
musicA = { << \relative c' { cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\ \relative c' { ais'2 cis, | fis8 b a4 cis2 | } >> } musicB = { \clef bass \new Voice { \voiceTwo \relative c' { <fis, a cis>8 <fis a cis> \change Staff = up cis' cis \change Staff = down <fis, a> <fis a> \showStaffSwitch \change Staff = up dis'4 | \change Staff = down <fis, a cis>4 gis <f a d>2 | } } } \new PianoStaff { << \context Staff = "up" { #(set-accidental-style 'default) \musicA } \context Staff = "down" { #(set-accidental-style 'default) \musicB } >> }
Notez bien que pour appliquer le même style aux deux portées, seules les dernières lignes de cet exemple nous intéressent.
\new PianoStaff { << \context Staff = "haut" { %%% voici la ligne à modifier en conséquence : #(set-accidental-style 'default 'Score) \musicA } \context Staff = "bas" { \musicB } >> }
-
default
-
C’est la règle d’impression par défaut, qui se rapporte à l’usage en vigueur au XVIIIe siècle : les altérations accidentelles sont valables tout une mesure, et uniquement à leur propre octave. C’est la raison pour laquelle il n’y a pas de bécarre avant le si de la deuxième mesure, ni avant le dernier do.
-
voice
-
En principe, LilyPond se souvient de toutes les altérations présentes sur la portée (contexte
Staff
). Avec cette règle, cependant, les altérations sont indépendantes pour chacune des voix tout en obéissant à la règledefault
.Les altérations d’une voix sont de fait ignorées dans les autres voix, ce qui peut donner lieu à un résultat malencontreux. Dans l’exemple suivant, il est difficile de dire si le deuxième la est dièse ou naturel. La règle
voice
n’est donc à envisager que dans le cas de voix devant être lues par des musiciens différents. S’il s’agit d’un « conducteur », ou d’une portée destinée à un seul musicien, il vaut mieux utilisermodern
oumodern-cautionary
. -
modern
-
Cette règle est la plus courante au XXe siècle. Les altérations accidentelles sont imprimées comme avec le style
default
, mais lorsqu’une note non-altérée apparaît à une octave différente, ou bien dans la mesure suivante, des bécarres de précaution sont ajoutés. Dans l’exemple suivant, notez ainsi les deux bécarres dans la deuxième mesure de la main droite. -
modern-cautionary
-
Cette règle est équivalente à
modern
, mais les bécarres de précaution (absents dans la règledefault
) sont imprimés de façon particulière : soit plus petit, soit (par défaut) entre parenthèses – il est possible de le définir au moyen de la propriétécautionary-style
de l’objetAccidentalSuggestion
. -
modern-voice
-
Cette règle sert aux altérations dans de la musique polyphonique destinée autant à des musiciens différents qu’à quelqu’un qui lirait l’ensemble des voix. Les altérations sont imprimées voix par voix, mais les autres voix d’un même contexte
Staff
en tiennent compte cette fois. C’est pourquoi le la de la dernière mesure est affublé d’un bécarre bien qu’il y en ait déjà eu un dans la mesure précédente, et que le ré de la main gauche en ait un alors qu’il avait auparavant concerné la main droite. -
modern-voice-cautionary
-
Cette régle est similaire à la précédente, mais les altérations de précaution (celles que n’aurait pas ajoutées
voice
), sont imprimées de façon particulière. On retrouve donc toutes les altérations qu’imprimeraitdefault
, mais certaines sont considérées comme étant « de précaution ». -
piano
-
Cette règle est communément employée pour les partitions de piano au XXe siècle. Très similaire à
modern
de par son comportement, elle s’en distingue en ce que les altérations tiennent compte des autre portées du contexteGrandStaff
ouPianoStaff
.Cette règle s’applique par défaut dans un
GrandStaff
et dans unPianoStaff
. -
piano-cautionary
-
Identique au style
piano
, mais les altérations de précaution sont imprimées différemment. -
neo-modern
-
Cette règle suit les pratiques de la musique contemporaine : les altérations accidentelles apparaîssent comme dans le style
modern
, à ceci près qu’elles sont répétées dans la même mesure – sauf si elles concernent deux notes consécutives. -
neo-modern-cautionary
-
Identique au style
neo-modern
, mais les altérations de précaution sont imprimées différemment. -
neo-modern-voice
-
Cette règle sert aux altérations dans de la musique polyphonique destinée autant à des musiciens différents qu’à quelqu’un qui lirait l’ensemble des voix. Les altérations sont imprimées voix par voix comme avec le style
neo-modern
mais les autres voix dans le même contexteStaff
en tiennent aussi compte. -
neo-modern-voice-cautionary
-
Cette règle est indentique à
neo-modern-voice
, mais les altérations de précaution sont imprimées soit entre parenthèses (par défaut), soit en plus petit. -
dodecaphonic
-
Cette règle reproduit ce que certains compositeurs du début du XXe siècle ont introduit dans leur désir d’abolir la distinction entre les notes naturelles ou non. Ainsi, chaque note est affublée d’une altération, même si elle est naturelle.
-
teaching
-
Cette règle est à usage pédagogique : l’impression d’une simple gamme fera apparaître une altération de précaution pour toute note altérée. Les altérations accidentelles sont imprimées selon le style
modern
, et une altération de précaution est ajoutée pour chaque dièse ou bémol à la clef – sauf dans le cas de notes consécutives. -
no-reset
-
C’est la même règle que
default
, mais l’effet des altérations accidentelles ne cesse jamais, même dans les mesures suivantes. -
forget
-
Tout le contraire de
no-reset
: l’effet des altérations cesse aussitôt ; toutes les altérations, quelque soit leur place dans la mesure, sont de ce fait imprimées en fonction de l’éventuelle armure. À l’inverse du styledodecaphonic
, aucun bécarre ne sera ici imprimé.
Morceaux choisis
Le dodécaphonisme : toute note est altérée
Au début du XXème siècle, Schoenberg, Berg et Webern – la « Seconde » école de Vienne – imaginèrent de donner une importance comparable aux douze notes de la gamme chromatique, et éviter ainsi toute tonalité. Pour ce faire, ces compositions font apparaître une altération à chaque note, y compris un bécarre, pour mettre en exergue cette nouvelle approche de la théorie et du langage musicaux.
Voici comment obtenir une telle notation.
\markup { This snippet is deprecated as of version 2.12 and will be removed from the documentation in 2.14. }
Voir aussi
Référence des propriétés internes : Accidental, Accidental_engraver, GrandStaff et PianoStaff, Staff, AccidentalSuggestion, AccidentalPlacement. accidental-suggestion-interface.
Problèmes connus et avertissements
Les notes simultanées sont considérées comme des évènements séquentiels.
Ceci implique que, dans un accord, les altérations accidentelles
seront imprimées comme si les notes de l’accord apparaissaient l’une après
l’autre, en fonction de l’ordre dans lequel elles ont été saisies – ce qui
peut poser problème lorsqu’au sein d’un accord certaines altérations
dépendent les unes des autres.
Ce problème est à résoudre manuellement, en insérant des !
et des ?
après les notes concernées.
L’absence d’altération de précaution est déterminée par l’examen de la
mesure précédente. Néanmoins, lorsqu’un bloc \alternative
suit
une section \repeat volta N
, la logique voudrait que
l’on regarde la dernière mesure jouée plutôt que la dernière
imprimée. Dans l’exemple qui suit, vous conviendrez que le do de
la seconde alternative ne nécessite pas son bécarre.
L’astuce suivante, qui définit temporairement le recours au style
forget
, permet d’obtenir quelque chose de présentable.
forget = #(define-music-function (parser location music) (ly:music?) #{ #(set-accidental-style 'forget) $music #(set-accidental-style 'modern) #}) { #(set-accidental-style 'modern) \time 2/4 \repeat volta 2 { c'2 } \alternative { cis' \forget c' } }
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Altérations accidentelles automatiques ] | [ Plus haut: Gravure des hauteurs ] | [ Têtes de note > ] |
Ambitus
L’ambitus est l’amplitude des hauteurs d’une voix donnée dans une partition. Ce terme peut aussi désigner la tessiture qu’un instrument est capable d’atteindre. Souvent, cet ambitus est imprimé au début des partitions vocales, afin que les exécutants puissent voir au premier coup d’œil s’ils sont en mesure de tenir la partie en question.
Pour exprimer l’ambitus d’une pièce, on indique avant la clé deux notes représentant la hauteur la plus basse et la plus haute. Les éventuelles altérations accidentelles seront automatiquement ajoutées.
\layout { \context { \Voice \consists "Ambitus_engraver" } } \relative c'' { aes c e2 cis,1 }
Morceaux choisis
Un ambitus par voix
L’ambitus
peut être individualisé par voix. Il faut en pareil
cas éviter qu’ils se chevauchent.
\new Staff << \new Voice \with { \consists "Ambitus_engraver" } \relative c'' { \override Ambitus #'X-offset = #2.0 \voiceOne c4 a d e f1 } \new Voice \with { \consists "Ambitus_engraver" } \relative c' { \voiceTwo es4 f g as b1 } >>
Ambitus sur plusieurs voix
Si plusieurs voix se trouvent sur une même portée, on peut attribuer le
graveur Ambitus_engraver
au contexte Staff
afin d’obtenir
l’ambitus de toutes les voix cumulées, non d’une seule des voix actives.
\new Staff \with { \consists "Ambitus_engraver" } << \new Voice \relative c'' { \voiceOne c4 a d e f1 } \new Voice \relative c' { \voiceTwo es4 f g as b1 } >>
Voir aussi
Glossaire musicologique : ambitus.
Morceaux choisis : Pitches.
Référence des propriétés internes : Ambitus_engraver, Voice, Staff, Ambitus, AmbitusAccidental, AmbitusLine, AmbitusNoteHead, ambitus-interface.
Problèmes connus et avertissements
LilyPond ne gère pas les collisions entre plusieurs ambitus présents sur une même portée.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Ambitus ] | [ Plus haut: Hauteurs ] | [ Têtes de note spécifiques > ] |
1.1.4 Têtes de note
Nous allons voir dans ce chapitre comment modifier l’aspect des têtes de note.
Têtes de note spécifiques | ||
Têtes de note avec nom de note | ||
Têtes de note à forme variable | ||
Improvisation |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Têtes de note ] | [ Plus haut: Têtes de note ] | [ Têtes de note avec nom de note > ] |
Têtes de note spécifiques
L’apparence des têtes de note peut évoluer au cours de la partition :
c4 b \override NoteHead #'style = #'cross c4 b \revert NoteHead #'style a b \override NoteHead #'style = #'harmonic a b \revert NoteHead #'style c4 d e f
Pour une liste exhaustive des styles de tête de note, consultez Styles de tête de note.
Certains instruments utilisent des têtes de note différentes à des fins spécifiques – des croix pour le parlato des chanteurs ou les notes étouffées des guitares :
c4 b \xNotesOn a b c4 b \xNotesOff c4 d
Cette commande opère aussi bien sur des notes isolées qu’au sein d’un accord, dans une portée traditionnelle ou dans un contexte de tablature :
c4 b \xNote { e f } c b < g \xNote c f > b
Vous pouvez utiliser, en lieu et place de \xNote
,
\xNotesOn
et \xNotesOff
, les commandes
\deadNote
, \deadNotesOn
et \deadNotesOff
.
Il existe un raccourci pour les notes en losange qui indiquent les harmoniques des cordes :
<c f\harmonic>2 <d a'\harmonic>4 <c g'\harmonic>
Commandes prédéfinies
\harmonic
,
\xNotesOn
,
\xNotesOff
,
\xNote
.
Voir aussi
Morceaux choisis : Pitches.
Manuel de notation : Styles de tête de note, Notes en accords, Indication des harmoniques et notes étouffées.
Référence des propriétés internes : note-event, Note_heads_engraver, Ledger_line_engraver, NoteHead. LedgerLineSpanner, note-head-interface, ledger-line-spanner-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Têtes de note spécifiques ] | [ Plus haut: Têtes de note ] | [ Têtes de note à forme variable > ] |
Têtes de note avec nom de note
Les notes « easy play » comportent le nom de la note à l’intérieur de la tête. On l’utilise dans des partitions pour débutants. L’impression doit être de plus grande taille, afin que les lettres soient lisibles. Voir à ce propos Définition de la taille de portée.
#(set-global-staff-size 26) \relative c' { \easyHeadsOn c2 e4 f g1 \easyHeadsOff c,1 }
Commandes prédéfinies
\easyHeadsOn
,
\easyHeadsOff
.
Morceaux choisis
Numbers as easy note heads
Easy notation note heads use the note-names
property
of the NoteHead
object to determine what appears inside
the note head. By overriding this property, it is possible
to print numbers representing the scale-degree.
A simple engraver can be created to do this for every note head object it sees.
#(define Ez_numbers_engraver (list (cons 'acknowledgers (list (cons 'note-head-interface (lambda (engraver grob source-engraver) (let* ((context (ly:translator-context engraver)) (tonic-pitch (ly:context-property context 'tonic)) (tonic-name (ly:pitch-notename tonic-pitch)) (grob-pitch (ly:event-property (event-cause grob) 'pitch)) (grob-name (ly:pitch-notename grob-pitch)) (delta (modulo (- grob-name tonic-name) 7)) (note-names (make-vector 7 (number->string (1+ delta))))) (ly:grob-set-property! grob 'note-names note-names)))))))) #(set-global-staff-size 26) \layout { ragged-right = ##t \context { \Voice \consists \Ez_numbers_engraver } } \relative c' { \easyHeadsOn c4 d e f g4 a b c \break \key a \major a,4 b cis d e4 fis gis a \break \key d \dorian d,4 e f g a4 b c d }
Voir aussi
Manuel de notation : Définition de la taille de portée.
Morceaux choisis : Pitches.
Référence des propriétés internes : note-event, Note_heads_engraver, NoteHead, note-head-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Têtes de note avec nom de note ] | [ Plus haut: Têtes de note ] | [ Improvisation > ] |
Têtes de note à forme variable
En notation profilée, le profil d’une tête de note correspond à la fonction harmonique de cette note dans la gamme. Ce style de notation était très en vogue dans les recueils de chansons américains du XIXe siècle. Voici comment procéder :
\aikenHeads c, d e f g2 a b1 c \break \sacredHarpHeads c,4 d e f g2 a b1 c \break \southernHarmonyHeads c,4 d e f g2 a b1 c \break
Les profils sont déterminés par la hauteur dans la gamme, le premier
degré étant défini par la commande \key
. Pour une tonalité
mineure, les degrés sont déterminés par rapport au relatif majeur :
\key a \minor \aikenHeads a b c d e2 f g1 a \break \aikenHeadsMinor a,4 b c d e2 f g1 a \break \sacredHarpHeadsMinor a,2 b c d \break \southernHarmonyHeadsMinor a2 b c d \break
Commandes prédéfinies
\aikenHeads
,
\aikenHeadsMinor
,
\sacredHarpHeads
.
\sacredHarpHeadsMinor
,
\southernHarmonyHeads
,
\southernHarmonyHeadsMinor
.
Morceaux choisis
Profilage des notes selon leur degré dans la gamme
La propriété shapeNoteStyles
permet d’affecter un profil
particulier à chaque degré de la gamme – à partir de l’armure ou
de la propriété tonic
. Ses valeurs sont constituées d’une liste
de symboles, qu’il s’agisse de formes géométriques (triangle
,
cross
, ou xcircle
) ou basés sur la tradition des graveurs
américains (avec quelques noms de note latins).
LilyPond dispose de deux raccourcis, \aikenHeads
et
\sacredHarpHeads
, permettant de reproduire déanciens recueils de
chansons américaines.
L’exemple suivant montre plusieurs manières de profiler les têtes de note, ainsi que la capacité de trnsposer tout en respectant la fonction harmonique de chaque note dans la gamme.
fragment = { \key c \major c2 d e2 f g2 a b2 c } \new Staff { \transpose c d \relative c' { \set shapeNoteStyles = #'#(do re mi fa #f la ti) \fragment } \break \relative c' { \set shapeNoteStyles = #'#(cross triangle fa #f mensural xcircle diamond) \fragment } }
Pour une liste exhaustive des styles de tête de note, consultez Styles de tête de note.
Voir aussi
Morceaux choisis : Pitches.
Manuel de notation : Styles de tête de note.
Référence des propriétés internes : note-event, Note_heads_engraver, NoteHead, note-head-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Têtes de note à forme variable ] | [ Plus haut: Têtes de note ] | [ Rythme > ] |
Improvisation
L’improvisation peut quelquefois s’indiquer à l’aide de notes de forme allongée (slash). L’interprète jouera alors les notes qu’il veut, en respectant toutefois le rythme affiché. Ces têtes de notes sont créées ainsi :
\new Voice \with { \consists "Pitch_squash_engraver" } { e8 e g a a16( bes) a8 g \improvisationOn e8 ~ e2 ~ e8 f4 f8 ~ f2 \improvisationOff a16( bes) a8 g e }
Commandes prédéfinies
\improvisationOn
,
\improvisationOff
.
Voir aussi
Morceaux choisis : Pitches.
Référence des propriétés internes : Pitch_squash_engraver, Voice, RhythmicStaff.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Improvisation ] | [ Plus haut: Notation musicale générale ] | [ Écriture du rythme > ] |
1.2 Rythme
Cette section traite du rythme : durées, silences, barres de ligature et de mesure.
1.2.1 Écriture du rythme | ||
1.2.2 Écriture des silences | ||
1.2.3 Gravure du rythme | ||
1.2.4 Barres de ligature | ||
1.2.5 Mesures | ||
1.2.6 Fonctionnalités rythmiques particulières |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Rythme ] | [ Plus haut: Rythme ] | [ Durées > ] |
1.2.1 Écriture du rythme
Durées | ||
Nolets | ||
Changement d’échelle des durées | ||
Liaisons de prolongation |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Écriture du rythme ] | [ Plus haut: Écriture du rythme ] | [ Nolets > ] |
Durées
Dans les modes de notes, d’accords et de paroles, les durées sont
écrites avec des chiffres et des points : les durées sont indiquées par
leur valeur fractionnaire par rapport à la durée d’une ronde. Une
noire, par exemple, qui équivaut à un 1/4 de ronde – quarter note
en anglais – s’écrit 4
, alors qu’une blanche –
half-note, 1/2 ronde – s’écrit 2
. Pour des notes plus
longues qu’une ronde, vous devrez utiliser les commandes \longa
pour une longue, et \breve
pour une brève, aussi appelée carrée.
Des durées plus courtes que la quintuple-croche – 1/128 de ronde –
sont possibles, à condition de les ligaturer.
\time 8/1 c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c64
Voici ces mêmes durées sans la fonction de ligature automatique.
\time 8/1 \autoBeamOff c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c64
Une note dont la durée est de quatre brèves s’obtient par la commande
\maxima
. Celle-ci n’est toutefois disponible que dans le cadre de
la notation ancienne. Pour plus de détails, voir Notations anciennes.
Si la durée d’une note n’est pas précisée, elle est alors assimilée à la
durée de la note précédente. La valeur par défaut pour la première note
est la noire (4
).
a a a2 a a4 a a1 a
Pour obtenir des notes pointées, ajoutez simplement un point
(.
) au chiffre. Les notes doublement pointées sont créées de
la même façon.
a4 b c4. b8 a4. b4.. c8.
Certaines durées ne peuvent s’obtenir à partir de chiffres et de points, mais uniquement en « liant » deux ou plusieurs notes entre elles. Voir Liaisons de prolongation à ce sujet.
Quant à la manière de spécifier la durée des syllabes ou bien d’aligner des paroles par rapport aux notes, reportez-vous au chapitre Musique vocale.
Espacer les notes selon leur durée relative est tout à fait possible. Pour plus de détails à ce sujet et sur les autres réglages propres à cette forme de notation, reportez-vous à Notation proportionnelle.
Les points sont normalement haussés pour éviter les lignes de portée, sauf dans certaines polyphonies. Des commandes prédéfinies permettent de manuellement forcer une orientation particulière, comme indiqué au chapitre Direction et positionnement.
Commandes prédéfinies
\autoBeamOff
,
\dotsUp
,
\dotsDown
,
\dotsNeutral
.
Voir aussi
Glossaire musicologique : breve, longa, maxima, note value, Duration names notes and rests.
Manuel de notation : Barres de ligature automatiques, Liaisons de prolongation, Hampes, Écriture du rythme, Écriture des silences, Musique vocale, Notations anciennes, Notation proportionnelle.
Morceaux choisis : Rhythms.
Manuel des références internes : Dots, DotColumn.
Problèmes connus et avertissements
Il n’existe pas à proprement parler de limite (inférieure ou supérieure) en terme de durée d’un silence. Cependant, le nombre de glyphes disponibles ne couvre que les silences allant du trente-deuxième de soupir à la maxime (valant huit pauses).
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Durées ] | [ Plus haut: Écriture du rythme ] | [ Changement d'échelle des durées > ] |
Nolets
Les nolets – triolets, quintolets, etc. – sont obtenus en multipliant toutes les durées d’une expression musicale par une fraction.
\times fraction { expression_musicale }
La durée de expression_musicale sera multipliée par la fraction. Le dénominateur de cette fraction sera imprimé au-dessus ou au-dessous des notes, parfois avec un crochet. Le nolet le plus courant est le triolet, dans lequel 3 notes ont la durée de 2, et où les notes durent donc 2/3 de leur valeur écrite.
a2 \times 2/3 { b4 b b } c4 c \times 2/3 { b4 a g }
Des commandes prédéfinies permettent de déroger au positionnement automatique du crochet en surplomb ou au-dessous des notes – voir le chapitre Direction et positionnement.
Les nolets peuvent être imbriqués ; par exemple,
\autoBeamOff c4 \times 4/5 { f8 e f \times 2/3 { e[ f g] } } f4 |
Lorsque, dans une imbrication, les nolets débutent au même instant, il
vous faut recourir à la commande \tweak
.
Vous pouvez interférer sur la durée des notes sans imprimer de crochet, comme indiqué au chapitre Changement d’échelle des durées.
Commandes prédéfinies
\tupletUp
,
\tupletDown
,
\tupletNeutral
.
Morceaux choisis
Plusieurs triolets avec une seule commande \times
La propriété tupletSpannerDuration
spécifie la longueur voulue de
chaque crochet. Avec elle, vous pouvez faire plusieurs nolets en ne
tapant \times
qu’une fois, ce qui évite une longue saisie.
Dans l’exemple suivant, deux triolets sont imprimés avec une seule fonction
\times
.
Pour plus d’information sur make-moment
, voir la section
appropriée du manuel de notation.
\relative c' { \time 2/4 \set tupletSpannerDuration = #(ly:make-moment 1 4) \times 2/3 { c8 c c c c c } }
Modifier l’apparence du chiffre de nolet
L’apparence du chiffre est déterminée par la propriété text
dans
TupletNumber
. La valeur par défaut imprime seulement le
dénominateur, mais si elle est définie par la fonction
tuplet-number::calc-fraction-text
, la fraction entière
num:den sera imprimée à la place.
\relative c'' { \times 2/3 { c8 c c } \times 2/3 { c8 c c } \override TupletNumber #'text = #tuplet-number::calc-fraction-text \times 2/3 { c8 c c } \override TupletNumber #'stencil = ##f \times 2/3 { c8 c c } }
Nolets au chiffrage inhabituel
LilyPond sait aussi gérer des nolets dont le chiffrage imprimé ne correspond pas exactement à la fraction de mesure à laquelle ils se réfèrent, tout comme ceux auxquels une valeur de note vient en complément au chiffre.
\relative c'' { \once \override TupletNumber #'text = #(tuplet-number::non-default-tuplet-denominator-text 7) \times 2/3 { c4. c4. c4. c4. } \once \override TupletNumber #'text = #(tuplet-number::non-default-tuplet-fraction-text 12 7) \times 2/3 { c4. c4. c4. c4. } \once \override TupletNumber #'text = #(tuplet-number::append-note-wrapper (tuplet-number::non-default-tuplet-fraction-text 12 7) "8") \times 2/3 { c4. c4. c4. c4. } \once \override TupletNumber #'text = #(tuplet-number::append-note-wrapper tuplet-number::calc-denominator-text "4") \times 2/3 { c8 c8 c8 c8 c8 c8 } \once \override TupletNumber #'text = #(tuplet-number::append-note-wrapper tuplet-number::calc-fraction-text "4") \times 2/3 { c8 c8 c8 c8 c8 c8 } \once \override TupletNumber #'text = #(tuplet-number::fraction-with-notes "4." "8") \times 2/3 { c4. c4. c4. c4. } \once \override TupletNumber #'text = #(tuplet-number::non-default-fraction-with-notes 12 "8" 4 "4") \times 2/3 { c4. c4. c4. c4. } }
Saut de ligne au milieu d’un nolet avec ligature
Cet exemple peu académique démontre comment il est possible d’insérer un saut de ligne dans un nolet portant une ligature. Ces ligatures doivent toutefois être explicites.
\layout { \context { \Voice % Permit line breaks within tuplets \remove "Forbid_line_break_engraver" % Allow beams to be broken at line breaks \override Beam #'breakable = ##t } } \relative c'' { a8 \repeat unfold 5 { \times 2/3 { c[ b a] } } % Insert a manual line break within a tuplet \times 2/3 { c[ b \bar "" \break a] } \repeat unfold 5 { \times 2/3 { c[ b a] } } c8 }
Voir aussi
Music Glossary: triplet, tuplet, polymetric.
Manuel d’apprentissage : Méthodes de retouche.
Manuel de notation :
Gestion du temps,
Changement d’échelle des durées,
La commande \tweak
,
Notation polymétrique.
Morceaux choisis : Rhythms.
Références internes : TupletBracket, TupletNumber, TimeScaledMusic.
Problèmes connus et avertissements
Lorsqu’un nolet en début de portée est précédé d’une note d’ornement,
celle-ci doit se placer avant la commande \times
pour éviter
toute erreur. Ailleurs dans la partition, les notes d’ornement peuvent
se placer au sein de l’expression du nolet.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Nolets ] | [ Plus haut: Écriture du rythme ] | [ Liaisons de prolongation > ] |
Changement d’échelle des durées
Vous pouvez altérer la durée des notes, silences ou accords en leur
joignant une fraction N/M, donnant « *
N/M » – ou
« *
N » si M=1. Ceci ne modifiera en rien l’apparence
des notes ou silences produits, mais affectera le rendu MIDI.
Dans l’exemple suivant, les trois premières notes prennent exactement deux temps, mais aucun triolet n’est imprimé.
\time 2/4 % Alter durations to triplets a4*2/3 gis4*2/3 a4*2/3 % Normal durations a4 a4 % Double the duration of chord <a d>4*2 % Duration of quarter, appears like sixteenth b16*4 c4
La durée d’un silence invisible ou saut de notes (skip) peut
elle aussi être affectée d’un multiplicateur. Cette technique permet
tout simplement de sauter plusieurs mesures, comme par exemple un
s1*23
.
Il est tout à fait possible d’échelonner des fragments musicaux plus ou moins longs à l’aide d’une simple fraction, comme si chaque note, accord ou silence était affecté de ce même quotient. L’apparence de cette musique ne sera en rien modifiée ; seule la durée des notes est multipliée en interne par la fraction numérateur/dénominateur. N’oubliez pas de préserver les espaces de part et d’autre du point. Voici un exemple illustrant la manière de comprimer ou étirer de la musique :
\time 2/4 % Normal durations <c a>4 c8 a % Scale music by *2/3 \scaleDurations #'(2 . 3) { <c a f>4. c8 a f } % Scale music by *2 \scaleDurations #'(2 . 1) { <c' a>4 c8 b }
Cette technique est tout à fait appropriée à la notation polymétrique – voir Notation polymétrique.
Voir aussi
Manuel de notation : Nolets, Silences invisibles, Notation polymétrique.
Morceaux choisis : Rhythms.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Changement d'échelle des durées ] | [ Plus haut: Écriture du rythme ] | [ Écriture des silences > ] |
Liaisons de prolongation
Une liaison de tenue (ou de prolongation) relie deux notes adjacentes de même hauteur. Dans les faits, elle prolonge la durée d’une note.
Note : Une liaison de tenue ne doit pas être confondue avec une liaison d’articulation ou de phrasé. Une liaison de tenue est un moyen parmi d’autres pour prolonger la durée d’une note, tout comme les points.
Une liaison de tenue s’indique au moyen d’un tilde ~
.
a2 ~ a
Les liaisons de tenue sont utilisées soit lorsque la note dépasse de la mesure, soit quand les points ne suffisent pas à donner la bonne durée. Lorsque l’on utilise ces liaisons, les valeurs rythmiques les plus longues doivent s’aligner sur les subdivisions de la mesure, comme ici :
\relative { r8^"oui" c8 ~ c2 r4 | r8^"non" c2 ~ c8 r4 }
Lorsque l’on doit lier de nombreuses notes sur plusieurs mesures, il devient plus facile d’avoir recours à la division automatique des notes – voir Découpage automatique des notes. Ce procédé divise automatiquement les notes trop longues, et les lie par-delà les barres de mesure.
Quand une liaison de tenue se trouve entre deux accords, toutes les notes de même hauteur entre ces deux accords sont reliées. S’il n’y en a aucune, aucune liaison n’est créée. Il est également possible de lier partiellement deux accords, en mettant les liaisons à l’intérieur des accords.
<c e g> ~ <c e g> <c~ e g~ b> <c e g b>
Lorsqu’une mesure « de seconde fois » après une reprise commence sur une note liée, la liaison doit être répétée, comme ici :
\repeat volta 2 { c g <c e>2 ~ } \alternative { % First alternative: following note is tied normally { <c e>2. r4 } % Second alternative: following note has a repeated tie { <c e>2\repeatTie d4 c } }
Les liaisons « Laissez vibrer » (L.v.) sont utilisées pour le piano, la harpe, et certains instruments de percussion. Elles indiquent à l’instrumentiste de laisser sonner la note ou l’accord au lieu de l’étouffer. Elles s’indiquent de la manière suivante :
<c f g>\laissezVibrer
Le positionnement vertical des liaisons de prolongation peut être affiné – voir à ce sujet les « commandes prédéfinies » et, pour de plus amples détails, Direction et positionnement.
Les liaisons de prolongation peuvent s’imprimer sous la forme de ligne continue, discontinue ou pointillée.
\tieDotted c2 ~ c \tieDashed c2 ~ c \tieHalfDashed c2 ~ c \tieHalfSolid c2 ~ c \tieSolid c2 ~ c
Il est même possible d’en personnaliser l’allure :
\tieDashPattern #0.3 #0.75 c2 ~ c \tieDashPattern #0.7 #1.5 c2 ~ c \tieSolid c2 ~ c
Que ce soit pour une tenue ou un phrasé, le motif d’une ligne discontinue formant une liaison se définit de la même manière. Pour de plus amples détails à ce sujet, reportez-vous au chapitre Liaisons d’articulation.
Commandes prédéfinies
\tieUp
,
\tieDown
,
\tieNeutral
,
\tieDotted
,
\tieDashed
,
\tieDashPattern
,
\tieHalfDashed
,
\tieHalfSolid
,
\tieSolid
.
Morceaux choisis
Liaison de tenue et arpège
Les liaisons de tenue servent parfois à rendre un accord arpégé. Dans
ce cas, les notes liées ne sont pas toutes consécutives. Il faut alors
assigner à la propriété tieWaitForNote
la valeur #t
(true pour « vrai »). Cette même méthode peut servir, par
exemple, à lier un trémolo à un accord.
\relative c' { \set tieWaitForNote = ##t \grace { c16[ ~ e ~ g] ~ } <c, e g>2 \repeat tremolo 8 { c32 ~ c' ~ } <c c,>1 e8 ~ c ~ a ~ f ~ <e' c a f>2 \tieUp c8 ~ a \tieDown \tieDotted g8 ~ c g2 }
Dessin à main levée de liaisons de tenue
Il est possible de graver manuellement les liaisons de tenue, en
modifiant la propriété tie-configuration
. Pour chaque paire, le
premier nombre indique la distance à la portée, en espaces de portée, et
le second la direction (1 pour haut, -1 pour bas).
\relative c' { <c e g>2 ~ <c e g> \override TieColumn #'tie-configuration = #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1)) <c e g>2 ~ <c e g> }
Voir aussi
Glossaire musical : tie, laissez vibrer.
Dans ce manuel : Découpage automatique des notes.
Morceaux choisis : Rhythms.
Référence du programme : LaissezVibrerTie, LaissezVibrerTieColumn, TieColumn, Tie.
Problèmes connus et avertissements
Un changement de portée, lorsqu’une liaison de tenue est active, ne peut produire une liaison oblique.
Un changement de clé ou d’octave pendant une liaison de tenue produit un résultat indéfini. Dans ces cas-là, il est préférable d’utiliser un legato.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Liaisons de prolongation ] | [ Plus haut: Rythme ] | [ Silences > ] |
1.2.2 Écriture des silences
On saisit les silences dans une expression musicale tout comme les notes.
Silences | ||
Silences invisibles | ||
Silences valant une mesure |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Écriture des silences ] | [ Plus haut: Écriture des silences ] | [ Silences invisibles > ] |
Silences
Les silences sont écrits comme des notes avec le nom de note r
.
Les durées supérieures à la pause s’indiquent à l’aide de commandes
prédéfinies :
\new Staff { % These two lines are just to prettify this example \time 16/1 \override Staff.TimeSignature #'stencil = ##f % Print a maxima rest, equal to four breves r\maxima % Print a longa rest, equal to two breves r\longa % Print a breve rest r\breve r1 r2 r4 r8 r16 r32 r64 r128 }
Les pauses d’une mesure complète, qui sont placées au centre de la mesure, doivent être entrées comme des mesures de silence. Elles peuvent être utilisées pour une seule mesure comme pour plusieurs, et leur utilisation est expliquée dans la section Silences valant une mesure.
Pour spécifier explicitement la position verticale d’un silence, écrivez
une note suivie de \rest
. Un silence de même durée sera placé
à la position où serait imprimée la note. Cela rend plus facile la mise
en place de musique polyphonique, puisque le formateur automatique de
collision des silences laissera ces silences tranquilles.
a'4\rest d'4\rest
Morceaux choisis
Styles de silences
Les silences peuvent être gravés selon différents styles.
\layout { indent = 0 \context { \Staff \remove "Time_signature_engraver" } } \new Staff \relative c { \cadenzaOn \override Staff.Rest #'style = #'mensural r\maxima^\markup \typewriter { mensural } r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128 \bar "" \override Staff.Rest #'style = #'neomensural r\maxima^\markup \typewriter { neomensural } r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128 \bar "" \override Staff.Rest #'style = #'classical r\maxima^\markup \typewriter { classical } r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128 \bar "" \override Staff.Rest #'style = #'default r\maxima^\markup \typewriter { default } r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128 }
Voir aussi
Glossaire musicologique : breve, longa, maxima.
Manuel de notation : Silences valant une mesure.
Morceaux choisis : Rhythms.
Référence du programme : Rest.
Problèmes connus et avertissements
Il n’existe pas à proprement parler de limite (inférieure ou supérieure) en terme de durée d’un silence. Cependant, le nombre de glyphes disponibles ne couvre que les silences allant du trente-deuxième de soupir à la maxime (équivalant à huit pauses).
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Silences ] | [ Plus haut: Écriture des silences ] | [ Silences valant une mesure > ] |
Silences invisibles
Un silence invisible – que l’on pourrait appeler un « saut » –
peut être entré comme une note avec le nom de note s
ou avec
\skip durée
c4 c s c s2 c
La syntaxe s
est seulement disponible pour les modes d’entrée
de notes et d’accords. Dans les autres situations, pour l’entrée de
paroles par exemple, vous devrez utiliser la commande \skip
, qui
requiert une durée explicite.
<< { a2 \skip2 a2 a2 } \new Lyrics { \lyricmode { foo2 \skip 1 bla2 } } >>
La commande de saut génère simplement une case musicale vide. Le code
de saut s
crée tout de même les contextes Staff
et
Voice
lorsque nécessaire, à l’instar des notes ou des silences :
s1 s s
Un \skip
ne fait que sauter du temps musical ; il ne produit rien
du tout, pas même un symbole transparent.
% This is valid input, but does nothing \skip 1 \skip1 \skip 1
Voir aussi
Morceaux choisis : Rhythms.
Référence du programme : SkipMusic.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Silences invisibles ] | [ Plus haut: Écriture des silences ] | [ Gravure du rythme > ] |
Silences valant une mesure
Un silence valant une ou plusieurs mesures entières s’entre avec un
R
majuscule.
% Rest measures contracted to single measure \compressFullBarRests R1*4 R1*24 R1*4 b2^"Tutti" b4 a4
Ceci ne peut être utile que pour une mesure complètement vide. Sa durée doit donc correspondre à la longueur de la mesure telle que définie par la métrique. C’est la raison pour laquelle on utilisera aussi des points d’augmentation ou des fractions :
\compressFullBarRests \time 2/4 R1 | R2 | \time 3/4 R2. | R2.*2 | \time 13/8 R1*13/8 | R1*13/8*12 | \time 10/8 R4*5*4 |
Un R
qui s’étend sur une seule mesure s’imprime tantôt comme
une pause, tantôt comme une brève – ou « bâton de pause » – et
sera centré sur la mesure quelle qu’en soit la métrique :
\time 4/4 R1 | \time 6/4 R1*3/2 | \time 8/4 R1*2 |
Par défaut, un silence multimesures sera répété sur autant de mesures que nécessaire. Il peut aussi n’être imprimé qu’une seule fois, surplombé du nombre de mesures vides – ou « à compter » :
% Default behavior \time 3/4 r2. | R2.*2 | \time 2/4 R2 | \time 4/4 % Rest measures contracted to single measure \compressFullBarRests r1 | R1*17 | R1*4 | % Rest measures expanded \expandFullBarRests \time 3/4 R2.*2 |
Vous pouvez aussi ajouter du texte à un silence multimesure en utilisant
la syntaxe note-markup
(cf. Mise en forme du texte). La
variable \fermataMarkup
quant à elle permet d’ajouter un point
d’orgue :
\compressFullBarRests \time 3/4 R2.*10^\markup { \italic "ad lib." } R2.^\fermataMarkup
Note : C’est MultiMeasureRestText
qui créera le texte, et
non TextScript
. Les commandes de dérogation ou de redéfinition
doivent s’adresser à l’objet concerné, comme vous pouvez le constater
dans l’exemple suivant.
% Ceci échouera : il y a erreur quant à l'objet spécifié \override TextScript #'padding = #5 R1^"pas bon !" % Formulation correcte, qui fonctionnera \override MultiMeasureRestText #'padding = #5 R1^"ça marche !"
Un silence multimesure placé directement après une commande
\partial
risque fort de perturber le vérificateur de limites et
numéros de mesure.
Commandes prédéfinies
\textLengthOn
,
\textLengthOff
,
\fermataMarkup
,
\compressFullBarRests
,
\expandFullBarRests
.
Morceaux choisis
Modifier l’apparence d’un silence multi-mesures
Dans le cas où ce silence dure moins de dix mesures, LilyPond imprime sur
la portée des « silences d’église » – Kirchenpause en
allemand – et qui sont une simple suite de rectangles. La propriété
expand-limit
permet d’obtenir un silence unique :
\relative c'' { \compressFullBarRests R1*2 | R1*5 | R1*9 \override MultiMeasureRest #'expand-limit = #3 R1*2 | R1*5 | R1*9 }
Positionnement des silences multi-mesures
Si l’on peut positionner verticalement un silence simple en le rattachant à une note, il n’en va pas de même pour un silence multi-mesures. Néanmoins, et uniquement dans le cadre de musique polyphonique, les silences multi-mesures sont positionnés différemment selon qu’ils appartiennent à une voix au numéro pair ou impair. Le positionnement des silences multi-mesures peut se contrôler ainsi :
\relative c'' { % MMR - Multi-Measure Rest % MMRs by default are set under the fourth line R1 % They can be moved with an override \override MultiMeasureRest #'staff-position = #-2 R1 % A value of 0 is the default position; % the following trick moves the rest to the center line \override MultiMeasureRest #'staff-position = #-0.01 R1 % MMRs in odd-numbered voices are under the top line << { R1 } \\ { a1 } >> % MMRs in even-numbered voices are under the bottom line << { c1 } \\ { R1 } >> % They remain separated even in empty measures << { R1 } \\ { R1 } >> % This brings them together even though there are two voices \compressFullBarRests << \revert MultiMeasureRest #'staff-position { R1*3 } \\ \revert MultiMeasureRest #'staff-position { R1*3 } >> }
Ajout de texte à un silence multi-mesures
Lorsque du texte est attaché à un silence multi-mesures, il sera centré dans la mesure, au-dessus ou en dessous de la portée. Afin d’étirer la mesure dans le cas ou ce texte est relativement long, il suffit d’insérer un silence invisible auquel on attache le texte en question, avant le silence multi-mesures.
Rappelez-vous qu’un silence invisible génère une barre de mesure. Le texte attaché à ce silence invisible sera alors aligné sur la gauche de là où serait positionnée la note. Cependant, si la taille de la mesure est déterminée par la longueur du texte, il apparaîtra comme centré.
\relative c' { \compressFullBarRests \textLengthOn s1*0^\markup { [MAJOR GENERAL] } R1*19 s1*0_\markup { \italic { Cue: ... it is yours } } s1*0^\markup { A } R1*30^\markup { [MABEL] } \textLengthOff c4^\markup { CHORUS } d f c }
Voir aussi
Glossaire musicologique : multi-measure rest.
Manuel de notation : Durées, Texte, Mise en forme du texte, Commentaires textuels.
Morceaux choisis : Rhythms.
Référence du programme : MultiMeasureRest. MultiMeasureRestNumber, MultiMeasureRestText.
Problèmes connus et avertissements
Vous ne pouvez pas utiliser de doigtés (p.ex. R1*10-4
) pour
positionner des nombres au dessus d’un silence multimesure, le numéro
de doigt (4) risquant de chevaucher le nombre de mesures à compter (10).
Condenser plusieurs silences en un unique silence multimesure ne peut être automatisé.
Les silences multimesure peuvent générer des collisions avec d’autres silences.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Silences valant une mesure ] | [ Plus haut: Rythme ] | [ Métrique > ] |
1.2.3 Gravure du rythme
Métrique | ||
Levées | ||
Musique sans métrique | ||
Notation polymétrique | ||
Découpage automatique des notes | ||
Gravure de lignes rythmiques |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Gravure du rythme ] | [ Plus haut: Gravure du rythme ] | [ Levées > ] |
Métrique
Le chiffre de mesure indique le mètre d’une pièce : une alternance régulière de temps forts et de temps faibles. Il est indiqué par une fraction au début de la portée :
\time 2/4 c2 \time 3/4 c2.
La métrique est imprimée en début de morceau, et à chaque fois qu’elle est modifiée. Si cette modification intervient au niveau d’un saut de ligne, une métrique « de précaution » sera imprimée avant de passer à la ligne suivante. Ce comportement par défaut peut être modifié, comme indiqué au chapitre Visibilité des objets.
\time 2/4 c2 c \break c c \break \time 4/4 c c c c
Le symbole de métrique utilisé pour les mesures à 2/2 et 4/4 peut être changé pour un style numérique :
% Default style \time 4/4 c1 \time 2/2 c1 % Change to numeric style \numericTimeSignature \time 4/4 c1 \time 2/2 c1 % Revert to default style \defaultTimeSignature \time 4/4 c1 \time 2/2 c1
Les métriques anciennes sont abordées au chapitre Métriques anciennes.
Commandes prédéfinies
\numericTimeSignature
,
\defaultTimeSignature
.
Morceaux choisis
Changement de métrique sans affecter les règles de ligature
La commande \time
gère les propriétés
timeSignatureFraction
, beatLength
, beatGrouping
et measureLength
dans le contexte Timing
, normalement
rattaché à Score
. Le fait de modifier la valeur de
timeSignatureFraction
aura pour effet de changer l’apparence du
symbole affiché sans pour autant affecter les autres propriétés de la
métrique :
\markup { This snippet is deprecated as of 2.13.5 and will be removed in 2.14 }
Métrique décomposée
Des métriques telles que « 5/8 » peuvent s’interpréter sous une forme décomposée — « 3/8 + 2/8 » par exemple — qui combine plusieurs métriques. LilyPond est capable de rendre ce type de notation, plus facile à lire et à interpréter, en imprimant cette métrique composite et en adaptant les règles de ligature automatique en conséquence.
#(define ((compound-time one two num) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ((#:column (one num)) #:vcenter "+" (#:column (two num))))))) \relative c' { \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8") \time 5/8 \overrideBeamSettings #'Staff #'(5 . 8) #'end #'((* . (2 3))) c8 d e fis gis c8 fis, gis e d c8 d e4 gis8 }
Voir aussi
Glossaire musicologique : time signature
Manuel de notation : Métriques anciennes, Gestion du temps.
Morceaux choisis : Rhythms.
Références internes : TimeSignature, Timing_translator.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Métrique ] | [ Plus haut: Gravure du rythme ] | [ Musique sans métrique > ] |
Levées
Les mesures incomplètes, telles que les anacrouses ou levées, doivent
être entrées avec la commande \partial
. La syntaxe de cette
commande est
\partial durée
où durée
correspond à la valeur rythmique devant être ajoutée
avant la première mesure complète :
\partial 4 e4 | a2. c,4 |
Une mesure incomplète peut être de n’importe quelle longueur inférieure à la mesure complète :
\partial 8*3 c8 d e | a2. c,4 |
Le programme traduit cette commande en
\set Timing.measurePosition = -durée
La propriété measurePosition
contient un nombre rationnel qui
indique, à ce point précis, où l’on en est de la mesure. Notez qu’il
peut s’agir d’un nombre négatif ; \partial 4
signifie, pour le
programme : « Dans cette mesure, il reste juste une noire ».
Voir aussi
Glossaire musicologique : anacrusis.
Manuel de notation : Notes d’ornement.
Morceaux choisis : Rhythms.
Références internes : Timing_translator.
Problèmes connus et avertissements
\partial
n’est destiné à être utilisé qu’en début de pièce.
Si on l’utilise ailleurs qu’au début, des messages d’erreurs peuvent
s’afficher.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Levées ] | [ Plus haut: Gravure du rythme ] | [ Notation polymétrique > ] |
Musique sans métrique
Les barres de mesure et les numéros de mesure sont calculés
automatiquement, ce qui n’est pas souhaitable dans le cas d’une musique
non mesurée – les cadences, par exemple. Les commandes
\cadenzaOn
et \cadenzaOff
permettent de désactiver et de
rétablir la métrique automatique.
c4 d e d \cadenzaOn c4 c d8 d d f4 g4. \cadenzaOff \bar "|" d4 e d c
La numérotation reprend dès la fin d’une cadence, comme si celle-ci n’avait pas existé :
% Show all bar numbers \override Score.BarNumber #'break-visibility = #all-visible c4 d e d \cadenzaOn c4 c d8 d d f4 g4. \cadenzaOff \bar "|" d4 e d c
Notez bien que ces commandes prédéfinies affecteront toutes les portées
de la partition, même si vous ne les placez que dans un simple contexte
Voice
. Pour éviter ce désagrément, transférez le
Timing_translator
du contexte Score
au contexte
Staff
, comme indiqué au chapitre Notation polymétrique.
Commandes prédéfinies
\cadenzaOn
,
\cadenzaOff
.
Voir aussi
Glossaire musicologique : cadenza.
Manuel de notation : Visibilité des objets, Notation polymétrique.
Morceaux choisis : Rhythms.
Problèmes connus et avertissements
LilyPond ne change de ligne ou de page qu’au niveau des barres de mesure. Si votre musique non mesurée s’étend sur plus d’une ligne, il vous faudra insérer des barres de mesure invisibles,
\bar ""
pour indiquer où des sauts de ligne peuvent prendre place.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Musique sans métrique ] | [ Plus haut: Gravure du rythme ] | [ Découpage automatique des notes > ] |
Notation polymétrique
LilyPond gère les métriques composites, aussi bien de manière explicite que de manière détournée – modification de l’indicateur de métrique et échelonnement de la durée des notes.
Portées aux métriques différentes, mesures d’égale longueur
Il suffit, pour obtenir cette forme de notation, de tout d’abord affecter
une même métrique aux différentes portées. L’indicateur de métrique sera
ensuite remplacé dans chacune des portées par un quotient donné en
argument à la propriété timeSignatureFraction
. La durée des
notes sera enfin proratisée selon la métrique commune (voir
Métrique) grâce à la fonction \scaleDurations
, qui
s’utilise tout comme la commande \times
– sans toutefois créer
de crochet de nolet (voir Changement d’échelle des durées).
L’exemple suivant utilise parallèlement des mesures à 3/4, 9/8 et 10/8. Pour la deuxième portée les durées sont multipliées par 2/3 de telle sorte que 2/3 * 9/8 = 3/4 ; pour la troisième elles sont multipliées par 3/5, de telle sorte que 3/5 * 10/8 = 3/4. Les ligatures devront être explicites, la fonction d’échelonnement venant perturber les règles de ligature automatique.
\relative c' << \new Staff { \time 3/4 c4 c c | c c c | } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(9 . 8) \scaleDurations #'(2 . 3) \repeat unfold 6 { c8[ c c] } } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(10 . 8) \scaleDurations #'(3 . 5) { \repeat unfold 2 { c8[ c c] } \repeat unfold 2 { c8[ c] } | c4. c4. \times 2/3 { c8[ c c] } c4 } } >>
Portées aux métriques différentes, mesures de longueur inégale
Il arrive aussi que chaque portée ait sa propre métrique. Vous y
parviendrez en déplaçant le Timing_translator
et le
Default_bar_line_engraver
dans le contexte Staff
.
\layout { \context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver" } \context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver" } } % Now each staff has its own time signature. \relative c' << \new Staff { \time 3/4 c4 c c | c c c | } \new Staff { \time 2/4 c4 c | c c | c c | } \new Staff { \time 3/8 c4. | c8 c c | c4. | c8 c c | } >>
Morceaux choisis
Métrique décomposée
Des métriques telles que « 5/8 » peuvent s’interpréter sous une forme décomposée — « 3/8 + 2/8 » par exemple — qui combine plusieurs métriques. LilyPond est capable de rendre ce type de notation, plus facile à lire et à interpréter, en imprimant cette métrique composite et en adaptant les règles de ligature automatique en conséquence.
#(define ((compound-time one two num) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ((#:column (one num)) #:vcenter "+" (#:column (two num))))))) \relative c' { \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8") \time 5/8 \overrideBeamSettings #'Staff #'(5 . 8) #'end #'((* . (2 3))) c8 d e fis gis c8 fis, gis e d c8 d e4 gis8 }
Voir aussi
Glossaire musicologique : polymetric, polymetric time signature, meter.
Manuel de notation : Métrique, Changement d’échelle des durées.
Morceaux choisis : Rhythms.
Références internes : TimeSignature, Timing_translator, Default_bar_line_engraver, Staff.
Problèmes connus et avertissements
L’utilisation de métriques différentes en parallèle entraine un alignement vertical. De ce fait, les barres de mesure ont tendance à fausser l’espacement régulier entre les portées.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Notation polymétrique ] | [ Plus haut: Gravure du rythme ] | [ Gravure de lignes rythmiques > ] |
Découpage automatique des notes
On peut convertir automatiquement les notes longues en notes liées. Il
suffit pour cela de remplacer le graveur Note_heads_engraver
par le graveur Completion_heads_engraver
. Dans l’exemple
suivant, les notes qui dépassent de la mesure sont divisées et liées.
\new Voice \with { \remove "Note_heads_engraver" \consists "Completion_heads_engraver" } { c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 }
Ce graveur divise toutes les notes qui sortent de la mesure, et insère des liaisons de prolongation. Dans la pratique, cette fonctionnalité permet de déboguer des partitions complexes : si les mesures ne sont pas entièrement remplies, alors les liaisons de prolongation montrent exactement la durée des décalages de mesure.
Voir aussi
Glossaire musicologique : tie
Manuel d’apprentissage : Tout savoir sur les graveurs, Ajout et suppression de graveurs.
Morceaux choisis : Rhythms.
Références internes : Note_heads_engraver, Completion_heads_engraver, Forbid_line_break_engraver.
Problèmes connus et avertissements
Bien que toutes les durées – particulièrement celles contenant des
nolets – ne puissent être exactement représentées avec des notes
normales et des points, le graveur Completion_heads_engraver
n’insèrera pas de nolet.
Completion_heads_engraver
affecte seulement les notes, il ne
divise pas les silences.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Découpage automatique des notes ] | [ Plus haut: Gravure du rythme ] | [ Barres de ligature > ] |
Gravure de lignes rythmiques
Au moyen d’une portée rythmique – rhythmic staff en anglais – on peut montrer seulement le rythme d’une mélodie : toutes les notes sont ramenées à la même hauteur, sur une portée d’une seule ligne.
<< \new RhythmicStaff { \new Voice = "myRhythm" { \time 4/4 c4 e8 f g2 r4 g g f g1 } } \new Lyrics { \lyricsto "myRhythm" { This is my song I like to sing } } >>
L’utilisation combinée du Pitch_squash_engraver
et de
\improvisationOn
permet d’afficher la structure rythmique d’une
grille d’accords :
<< \new ChordNames { \chordmode { c1 f g c } } \new Voice \with { \consists Pitch_squash_engraver } \relative c'' { \improvisationOn c4 c8 c c4 c8 c f4 f8 f f4 f8 f g4 g8 g g4 g8 g c4 c8 c c4 c8 c } >>
Commandes prédéfinies
\improvisationOn
,
\improvisationOff
.
Morceaux choisis
Rythmique et guitare
En matière de notation pour guitare, il arrive que soient indiqués les « coups de gratte » en plus de la mélodie, grilles d’accords et diagrammes de tablature.
\include "predefined-guitar-fretboards.ly" << \new ChordNames { \chordmode { c1 | f | g | c } } \new FretBoards { \chordmode { c1 | f | g | c } } \new Voice \with { \consists "Pitch_squash_engraver" } { \relative c'' { \improvisationOn c4 c8 c c4 c8 c f4 f8 f f4 f8 f g4 g8 g g4 g8 g c4 c8 c c4 c8 c } } \new Voice = "melody" { \relative c'' { c2 e4 e4 f2. r4 g2. a4 e4 c2. } } \new Lyrics { \lyricsto "melody" { This is my song. I like to sing. } } >>
Voir aussi
Snippets: Rhythms.
Référence du programme : RhythmicStaff. Pitch_squash_engraver.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Gravure de lignes rythmiques ] | [ Plus haut: Rythme ] | [ Barres de ligature automatiques > ] |
1.2.4 Barres de ligature
Barres de ligature automatiques | ||
Définition des règles de ligature automatique | ||
Barres de ligature manuelles | ||
Liens de croches en soufflet |
Barres de ligature automatiques
LilyPond décide automatiquement de la manière de grouper les notes et d’imprimer les ligatures.
\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
Lorsque ce comportement automatisé n’est pas satisfaisant, on peut définir des groupements manuellement – voir Barres de ligature manuelles. Dans le cas où le groupe de notes en question contient un silence, il est impératif d’indiquer explicitement les début et fin de la ligature.
Lorsque les ligatures automatiques ne sont pas nécessaires, il suffit de
désactiver la fonctionnalité par un \autoBeamOff
– réactivation
par \autoBeamOn
:
c4 c8 c8. c16 c8. c16 c8 \autoBeamOff c4 c8 c8. c16 c8. \autoBeamOn c16 c8
Note : Si des ligatures sont utilisées dans les paroles d’une chanson
(pour indiquer des mélismes), les ligatures automatiques doivent être
désactivées, avec autoBeamOff
, et indiquées manuellement.
Des règles de dérogation au comportement automatique par défaut sont possibles ; voir Définition des règles de ligature automatique.
Commandes prédéfinies
\autoBeamOff
,
\autoBeamOn
.
Morceaux choisis
Ligature au moment d’un saut de ligne
Il est normalement impensable qu’un saut de ligne tombe au milieu d’une ligature. LilyPond permet néanmoins de l’obtenir.
\relative c'' { \override Beam #'breakable = ##t c8 c[ c] c[ c] c[ c] c[ \break c8] c[ c] c[ c] c[ c] c }
Ligature et directions de hampe inversées
LilyPond insère automatiquement des ligatures coudées — certaines
hampes vers le haut, d’autres vers le bas — lorsqu’il détecte un
intervalle important entre des têtes de notes. Ce comportement peut être
changé par l’intermédiaire de l’objet auto-knee-gap
— défini
par défaut à ‘5,5’ espace, plus la largeur et la pente de la
ligature en question.
{ f8 f''8 f8 f''8 \override Beam #'auto-knee-gap = #6 f8 f''8 f8 f''8 }
Voir aussi
Manuel de notation : Barres de ligature manuelles, Définition des règles de ligature automatique.
Fichiers installés : ‘scm/auto-beam.scm’.
Morceaux choisis : Rhythms.
Références internes : Beam.
Problèmes connus et avertissements
Ligatures coudées à cheval sur deux portées et masquage de portée sont incompatibles ; voir Masquage de portées.
Les ligatures peuvent générer des collisions avec des têtes de notes ou altérations appartenant à d’autres voix.
Définition des règles de ligature automatique
La gestion automatisée des ligatures est directement liée à la métrique.
La terminaison d’une ligature automatique peut se définir selon trois
différents types de règles : des règles par défaut relatives à la
métrique, des règles explicites pour la métrique en question, et
des règles basées sur la pulsation (beatLength
).
Les règles déterminant le positionnement des ligatures automatiques s’appliquent dans l’ordre suivant de priorité :
- Une ligature explicite – indiquée par
[…]
– sera toujours respectée ; sinon - si
\autoBeamOff
a été activé, il n’y aura pas de ligature ; sinon - si une règle explicite de terminaison a été définie pour un type de ligature dans la métrique en cours, c’est elle qui s’appliquera ; sinon
- if a default beam-ending rule is defined in the time signature, use it to group notes with beams, otherwise
- utiliser la valeur de
beatLength
pour regrouper les notes par des ligatures.
Modification des ligatures selon la pulsation
La pulsation – beatlength en anglais – découle directement de
la métrique telle que définie par la commande \time
. Elle est
par défaut égale à un sur le dénominateur de la métrique.
beatLength
constitue un moment, autrement dit une unité
de durée musicale. La fonction Scheme ly:make-moment
est tout
particulièrement chargée de créer cette quantité de type moment –
pour plus d’information, consultez Gestion du temps.
Les règles de ligature et de subdivision sont enregistrées dans la
propriété beamSettings
. Ses valeurs par défaut, rangées par
métrique et type de règle, sont contenues dans le fichier
scm/beam-settings.scm
.
La métrique est constituée d’une paire en langage Scheme – p.ex.
#'(4 . 4)
.
Le type de règle est soit #'end
pour ce qui concerne les
terminaisons, soit #'subdivide
pour les subdivisions.
Chaque règle, qu’il s’agisse de terminaison ou de subdivision, est constituée d’une liste de paires en langage Scheme (un alist pour les puristes), qui indique le durée de base et sa règle de regroupement.
#'((durée-type1 . groupement-1) (durée-type2 . groupement-2) (durée-type3 . groupement-3))
durée-type est soit constitué d’une paire indiquant la durée de
base – par exemple (1 . 16)
, soit du caractère *
pour
indiquer une règle par défaut qui s’appliquera à toutes les ligatures en
l’absence de règle explicite.
groupement est constitué d’une liste Scheme qui indique le
regroupement à effectuer. En ce qui concerne les règles par défaut –
celles où la durée type est *
– le regroupement s’indique
en terme de beatLength
; pour les règles explicites, en durée
type.
Les règles de ligature automatique se modifient à l’aide des commandes
\overrideBeamSettings
et \revertBeamSettings
.
\time 5/16 c8^"beats" c16 c8 | \overrideBeamSettings #'Score #'(5 . 16) #'end #'((* . (2 3))) c8^"(2+3)" c16 c8 \overrideBeamSettings #'Score #'(5 . 16) #'end #'((* . (3 2))) c8^"(3+2)" c16 c8
Les effets de règles de ligature peuvent être restreints à un contexte particulier. En l’absence de régles particulières déterminées dans un contexte de niveau inférieur, les règles définies au niveau directement supérieur s’appliqueront.
\new Staff << \time 7/8 \new Voice = one { \relative c'' { \overrideBeamSettings #'Staff #'(7 . 8) #'end #'((* . (2 3 2))) a8 a a a a a a } } \new Voice = two { \relative c' { \voiceTwo \overrideBeamSettings #'Voice #'(7 . 8) #'end #'((* . (1 3 3))) f8 f f f f f f } } >>
Lorsque plusieurs voix cohabitent sur une même portée et que les règles
de ligature doivent s’appliquer sans distinction, il faut spécifier que
ces règles affectent le contexte Staff
:
\time 7/8 % rhythm 3-1-1-2 % Context Voice specified - does not work correctly % Because of autogenerated voices, all beating will % be at beatLength (1 . 8) \overrideBeamSettings #'Voice #'(7 . 8) #'end #'((* . (3 1 1 2))) << {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >> % Works correctly with context Staff specified \overrideBeamSettings #'Staff #'(7 . 8) #'end #'((* . (3 1 1 2))) << {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >>
Pour revenir aux règles de ligature par défaut, il suffit d’utiliser la
commande \revertBeamSettings
. Ses argument sont identiques à ceux
fournis à \overrideBeamSettings
, sans toutefois mentionner les
règles de regroupement.
\revertBeamSettings contexte métrique type-de-règle
\time 4/4 \repeat unfold 16 {a16} % set default rule for (1 1 1 1) grouping \overrideBeamSettings #'Score #'(4 . 4) #'end #'((* . (1 1 1 1))) \repeat unfold 16 {a16} % revert the new rule \revertBeamSettings #'Score #'(4 . 4) #'end \repeat unfold 16 {a16}
Morceaux choisis
Subdivision des ligatures
Les ligatures d’une succession de notes de durée inférieure à la croche
ne sont pas subdivisées par défaut. Autrement dit, tous les traits de
ligature seront continus. Ce comportement peut être modifié afin de
diviser la ligature en sous-groupes grâce à la propriété
subdivideBeams
. Lorsqu’elle est activée, les ligatures seront
subdivisées selon un intervalle défini par beatLength
; il n’y
aura alors plus qu’un seul trait de ligature entre chaque sous-groupe.
Par défaut, beatLength
fixe la valeur de référence à une noire.
Il faudra donc lui fournir, à l’aide de la fonction make-moment
,
une fraction correspondant au sous-groupe désiré, comme dans l’exemple
suivant.
\relative c'' { c32[ c c c c c c c] \set subdivideBeams = ##t c32[ c c c c c c c] % Set beam sub-group length to an eighth note \set beatLength = #(ly:make-moment 1 8) c32[ c c c c c c c] % Set beam sub-group length to a sixteenth note \set beatLength = #(ly:make-moment 1 16) c32[ c c c c c c c] }
Signes de direction signes de sous-groupe
Les règles de ligature par mesure sont gérées par la propriété
beamSettings
. Elles peuvent être modifiées par la commande
\overrideBeamSettings
.
Il existe des options qui permettent de grouper les ligatures au sein
d’une mesure, grâce à la fonction Scheme set-time-signature
.
Celle-ci prend trois arguments : le nombre de pulsations, la durée de la
pulsation et le regroupement des pulsations dans la mesure. Si l’on
fait appel au Measure_grouping_engraver
, la fonction
set-time-signature
créera aussi des symboles
MeasureGrouping
. Ces symboles aident à la lecture des œuvres
modernes à la rythmique complexe. Dans l’exemple qui suit, la mesure à
9/8 est divisée en 2, 2, 2 et 3, alors que la mesure à 5/8 répond aux
règles par défaut contenues dans le fichier scm/beam-settings.scm
.
\score { \relative c'' { \time 9/8 \overrideBeamSettings #'Score #'(9 . 8) #'end #'((* . (2 2 2 3))) g8 g d d g g a( bes g) | #(set-time-signature 9 8 '(4 5)) g8 g d d g g a( bes g) | \time 5/8 a4. g4 | } \layout { \context { \Staff \consists "Measure_grouping_engraver" } } }
Définition de règles de ligature pour la partition
Les règles de ligatures définies au niveau du contexte Score
s’appliqueront à toutes les portées. Il est toutefois possible de
moduler au niveau Staff
ou Voice
:
\relative c'' { \time 5/4 % Set default beaming for all staves \overrideBeamSettings #'Score #'(5 . 4) #'end #'(((1 . 8) . (3 4 3)) ((1 . 16) . (6 8 6)) ((1 . 32) . (12 16 12))) << \new Staff { c8 c c c c c c c c c } \new Staff { % Modify beaming for just this staff \overrideBeamSettings #'Staff #'(5 . 4) #'end #'((* . (3 2))) c8 c c c c c c c c c } \new Staff { % Inherit beaming from Score context << { \voiceOne c8 c c c c c c c c c } % Modify beaming for this voice only \new Voice { \voiceTwo \overrideBeamSettings #'Voice #'(5 . 4) #'end #'((* . (3 2))) a8 a a a a a a a a a } >> } >> }
Problèmes connus et avertissements
Si une partition se termine alors qu’une ligature automatique est restée
inachevée, cette dernière ligature ne sera pas imprimée du tout. C’est
également valable dans le cas d’une musique polyphonique, saisie avec la
syntaxe << … \\ … >>
, où une voix se terminerait sans
que la dernière ligature soit achevée.
Voir aussi
Morceaux choisis : Rhythms.
Barres de ligature manuelles
Dans certaines situations, il peut s’avérer nécessaire de
supplanter l’algorithme de groupement automatique des notes, par
exemple pour prolonger une ligature par-dessus un silence ou une barre
de mesure. Le début et la fin de la ligature sont alors indiqués par
[
et ]
.
{ r4 r8[ g' a r8] r8 g[ | a] r8 }
Le fait d’affubler une note particulière d’un \noBeam
aura pour
effet de l’empêcher d’être ligaturée :
\time 2/4 c8 c\noBeam c c
Propriétés couramment modifiées
LilyPond peut déterminer automatiquement les sous-groupes à
l’intérieur d’un groupement de notes, bien que le résultat ne soit pas
toujours optimal. Les propriétés stemLeftBeamCount
et
stemRightBeamCount
permettent alors d’ajuster ce comportement.
Lorsque l’une ou l’autre de ces propriétés est définie, elle ne
s’applique qu’une seule fois, après quoi sa définition est effacée.
Dans l’exemple qui suit, le dernier fa
n’a de ligature
supplémentaire que sur sa gauche ; autrement dit, c’est la ligature à la
croche qui est importante.
a8[ r16 f g a] a8[ r16 \set stemLeftBeamCount = #2 \set stemRightBeamCount = #1 f \set stemLeftBeamCount = #1 g a]
Morceaux choisis
Crochet rectiligne et débordement de ligature
En combinant stemLeftBeamCount
, stemRightBeamCount
et des
paires de []
, vous pourrez obtenir des crochets rectilignes et
des ligatures qui débordent à leurs extrémités.
Pour des crochets rectilignes à droite sur des notes isolées, il suffit
d’ajouter une paire d’indicateurs de ligature []
et de déterminer
stemLeftBeamCount
à zéro, comme dans l’exemple 1.
Pour des crochets rectiligne à gauche, c’est stemRightBeamCount
qu’il faudra déterminer (exemple 2).
Pour que les barres de ligature débordent sur la droite,
stemRightBeamCount
doit avoir une valeur positive ; pour un
débrodement à gauche, c’est sur stemLeftBeamCount
qu’il faut
jouer. Tout ceci est illustré par l’exemple 3.
Il est parfois judicieux, lorsqu’une note est encadrée de silences, de
l’affubler de crochets rectilignes de part et d’autre. L’exemple 4
montre qu’il suffit d’adjoindre à cette note un []
.
(Notez bien que \set stemLeftBeamCount
sera toujours synonyme de
\once \set
. Autrement dit, la détermination des ligatures
n’est pas « permanente » ; c’est la raison pour laquelle les crochets
du c'16[]
isolé du dernier exemple n’ont rien à voir avec le
\set
indiqué deux notes auparavant.)
\score { << % Example 1 \new RhythmicStaff { \set stemLeftBeamCount = #0 c16[] r8. } % Example 2 \new RhythmicStaff { r8. \set stemRightBeamCount = #0 c16[] } % Example 3 \new RhythmicStaff { c16 c \set stemRightBeamCount = #2 c16 r r \set stemLeftBeamCount = #2 c16 c c } % Example 4 \new RhythmicStaff { c16 c \set stemRightBeamCount = #2 c16 r c16[] r16 \set stemLeftBeamCount = #2 c16 c } >> }
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Barres de ligature manuelles ] | [ Plus haut: Barres de ligature ] | [ Mesures > ] |
Liens de croches en soufflet
Les ligatures en soufflet permettent d’indiquer qu’un petit groupe de
notes se joue en accélérant ou en ralentissant sans pour autant
modifier le tempo du morceau. L’étendue du soufflet s’indique par
[
et ]
, et son orientation est déterminée par la proriété
grow-direction
de l’objet Beam
.
Lorsque la sortie MIDI doit refléter les ritardando ou
accelerando indiqués par une ligature en soufflet, les notes
qui la composent doivent être regroupées dans une expression musicale
délimitée par des accolades, précédée de la commande
featherDurations
. Cette commande détermine le ratio entre les
durées des première et dernière notes du groupe en question.
Les crochets indiquent l’étendue de la ligature et les accolades les notes concernées par une modification de leur durée. Il s’agit en général du même groupe de notes, mais les deux commandes sont indépendantes l’une de l’autre.
Dans l’exemple ci-après, les huit doubles-croches occupent exactement le même espace qu’une blanche, mais la première est moitié moins longue que la dernière et celles qui les séparent s’allongent peu à peu. Les quatre triples-croches qui suivent vont s’accélérant, alors que les quatre dernières gardent un tempo régulier.
\override Beam #'grow-direction = #LEFT \featherDurations #(ly:make-moment 2 1) { c16[ c c c c c c c] } \override Beam #'grow-direction = #RIGHT \featherDurations #(ly:make-moment 2 3) { c32[ d e f] } % revert to non-feathered beams \override Beam #'grow-direction = #'() { g32[ a b c] }
Si le résultat imprimable ne reflète les durées que de manière approximative, la sortie MIDI sera quant à elle parfaitement « ponctuelle ».
Problèmes connus et avertissements
La commande \featherDurations
ne permet de traiter que de très
courts extraits, avec une faible amplitude.
Voir aussi
Morceaux choisis : Rhythms.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Liens de croches en soufflet ] | [ Plus haut: Rythme ] | [ Barres de mesure > ] |
1.2.5 Mesures
Barres de mesure | ||
Numéros de mesure | ||
Vérification des limites et numéros de mesure | ||
Indications de repère |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Mesures ] | [ Plus haut: Mesures ] | [ Numéros de mesure > ] |
Barres de mesure
Les barres de mesures délimitent les mesures, mais peuvent aussi indiquer une reprise. En principe, elles sont insérées automatiquement en respectant la métrique en vigueur.
Il est possible de forcer l’impression d’une barre de mesure spéciale,
avec la commande \bar
– c’est d’ailleurs l’habitude en fin de
morceau, où l’on voit une double barre :
e4 d c2 \bar "|."
Rien ne s’oppose à ce que la dernière note d’une mesure ne s’arrête avant la barre de mesure ; on considère simplement qu’elle se prolonge sur la mesure suivante. Des débordements à répétition finissent par générer une musique comprimée ou qui sort de la page, pour la simple et bonne raison que les sauts de ligne automatiques ne peuvent intervenir qu’à la fin d’une mesure complète, autrement dit lorsque toutes les notes sont terminées avant la fin de la mesure.
Note : Une durée erronée peut empêcher les sauts de ligne, ce qui conduit à une musique compressée, voire à un débordement de la page.
Il est possible d’autoriser un saut de ligne même s’il n’y a pas de barre de mesure visible, en utilisant :
\bar ""
Ceci insérera une barre de mesure invisible, et permettra – sans pour autant le forcer – de sauter de ligne à cet endroit, sans incrémenter le numéro de mesure. Pour forcer le saut de ligne, référez-vous à Sauts de ligne.
Cette barre invisible, ainsi que d’autres barres spéciales, peuvent être insérées manuellement n’importe où. Lorsqu’elles coïncident avec la fin d’une mesure, elles remplacent la simple barre que LilyPond aurait insérée automatiquement. Dans le cas contraire, la barre spécifiée s’insérera là où vous l’aurez positionnée. Ces insertions n’affectent en rien le calcul du positionnement automatique des barres de mesure à suivre.
Vous disposez de deux types de barres simples et de cinq différentes doubles barres :
f1 \bar "|" f \bar "." g \bar "||" a \bar ".|" b \bar ".|." c \bar "|.|" d \bar "|." e
ainsi que d’une barre en pointillé et d’une discontinue :
f1 \bar ":" g \bar "dashed" a
et de cinq types de barre de reprise :
f1 \bar "|:" g \bar ":|:" a \bar ":|.|:" b \bar ":|.:" c \bar ":|" d
De plus, une barre de mesure peut s’imprimer sous la forme d’une coche :
f1 \bar "'"
On rencontre habituellement ces signes dans le chant grégorien ; nous
vous invitons dans ce cadre particulier à plutôt utiliser
\divisioMinima
, comme indiqué au paragraphe Divisions du
chapitre consacré au grégorien.
Bien que l’on puisse insérer des barres de reprise manuellement, LilyPond n’en déduira pas pour autant qu’il s’agit d’un passage à répéter. Il est préférable d’indiquer les passages répétés à l’aide des différentes commandes de reprise (voir Répétitions et reprises) qui se chargeront d’imprimer le type de barre approprié.
Dans les faits, un "||:"
équivaut à un "|:"
sauf s’il
intervient à un saut de ligne : une double barre sera alors imprimée en
fin de portée, et la barre de reprise au début de la nouvelle.
\override Score.RehearsalMark #'padding = #3 c c c c \bar "||:" c c c c \break \bar "||:" c c c c
Dans une partition comprenant plusieurs portées, la commande \bar
placée sur une portée s’applique automatiquement à toutes les
portées. Les barres de mesure que l’on obtient alors sont d’un seul
tenant sur les portées d’un StaffGroup
, d’un PianoStaff
ou
d’un GrandStaff
.
<< \new StaffGroup << \new Staff { e'4 d' \bar "||" f' e' } \new Staff { \clef bass c4 g e g } >> \new Staff { \clef bass c2 c2 } >>
Morceaux choisis
La commande \bar
type_de_barre sert de raccourci pour
\set Timing.whichBar =
type_de_barre. Dès que l’on définit
whichBar
, une barre de mesure est créée selon le style défini.
Le type de barre de mesure par défaut utilisé pour l’insertion
automatique est "|"
. Vous pouvez en changer à tout moment grâce
à \set Timing.defaultBarType =
type_de_barre.
Voir aussi
Dans ce manuel : Sauts de ligne, Répétitions et reprises, Regroupement de portées.
Morceaux choisis : Rhythms.
Référence du programme : BarLine (faisant partie du contexte Staff), SpanBar (sur plusieurs portées), Timing_translator (pour les propriétés liées au temps).
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Barres de mesure ] | [ Plus haut: Mesures ] | [ Vérification des limites et numéros de mesure > ] |
Numéros de mesure
Les numéros de mesure sont imprimés par défaut à chaque début de
ligne, sauf la première. Ce nombre est stocké par la propriété
currentBarNumber
qui sera mise à jour à chaque mesure. Vous
pouvez aussi le définir de manière arbitraire :
c1 c c c \break \set Score.currentBarNumber = #50 c1 c c c
Vous pouvez imprimer un numéro de mesure à intervalle régulier plutôt
qu’en tête de chaque ligne. Pour y arriver, il faudra dans un premier
temps annuler le comportement par défaut afin que les numéros puissent
être imprimés ailleurs qu’en début de ligne. Tout ceci est contrôlé par
la propriété break-visibility
du BarNumber
. Elle se
compose de trois commutateurs – définis à « vrai » (#t
) ou
« faux » (#f
) – pour spécifier si le numéro de mesure est
visible ou non. Les valeurs sont rangées dans l’ordre suivant :
visible en fin de ligne
, visible en cours de ligne
,
visible en début de ligne
. Voici comment imprimer partout les
numéros de mesure :
\override Score.BarNumber #'break-visibility = #'#(#t #t #t) \set Score.currentBarNumber = #11 % Permit first bar number to be printed \bar "" c1 | c | c | c \break c1 | c | c | c
Morceaux choisis
Afficher le numéro de la première mesure
Par défaut, LilyPond n’affiche pas le premier numéro de mesure s’il est
inférieur à 2. Le fait de définir barNumberVisibility
à
all-bar-numbers-visible
vous permettra d’imprimer n’importe quel
numéro pour la première mesure. À noter que l’impression d’un numéro
de mesure ne peut intervenir que s’il y a une barre. Aussi, pour
pouvoir le faire au début d’un morceau, devrez-vous ajouter une barre
vide avant la première note.
\relative c' { \set Score.barNumberVisibility = #all-bar-numbers-visible \bar "" c1 | d | e | f \break g1 | e | d | c }
Imprimer les numéros de mesure à intervalle régulier
Vous pouvez imprimer un numéro de mesure à intervalle régulier plutôt
qu’en tête de chaque ligne seulement, en recourrant à la propriété
barNumberVisibility
. Voici comment afficher le numéro toutes les
deux mesures sauf en fin de ligne.
\relative c' { \override Score.BarNumber #'break-visibility = #end-of-line-invisible \set Score.currentBarNumber = #11 % Permit first bar number to be printed \bar "" % Print a bar number every second measure \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2) c1 | c | c | c | c \break c1 | c | c | c | c }
Inscrire le numéro de mesure dans un cadre ou un cercle
Les numéros de mesures peuvent être encadrés ou entourés d’un cercle.
\relative c' { % Prevent bar numbers at the end of a line and permit them elsewhere \override Score.BarNumber #'break-visibility = #end-of-line-invisible \set Score.barNumberVisibility = #(every-nth-bar-number-visible 4) % Increase the size of the bar number by 2 \override Score.BarNumber #'font-size = #2 % Draw a box round the following bar number(s) \override Score.BarNumber #'stencil = #(make-stencil-boxer 0.1 0.25 ly:text-interface::print) \repeat unfold 5 { c1 } % Draw a circle round the following bar number(s) \override Score.BarNumber #'stencil = #(make-stencil-circler 0.1 0.25 ly:text-interface::print) \repeat unfold 4 { c1 } \bar "|." }
Alignement des numéros de mesure
Les numéros de mesure s’alignent en principe sur la droite de l’objet dont ils dépendent. C’est normalement le coin gauche de la portée ou, en cours de ligne, à gauche de la barre. Vous pouvez toutefois les centrer par rapport à la barre ou les afficher à droite de la barre.
\relative c' { \set Score.currentBarNumber = #111 \override Score.BarNumber #'break-visibility = #all-visible % Increase the size of the bar number by 2 \override Score.BarNumber #'font-size = #2 % Print a bar number every second measure \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2) c1 | c1 % Center-align bar numbers \override Score.BarNumber #'self-alignment-X = #CENTER c1 | c1 % Left-align bar numbers \override Score.BarNumber #'self-alignment-X = #LEFT c1 | c1 }
Supprimer les numéros de mesure d’une partition
Désactiver le graveur concerné — Bar_number_engraver
—
donnera une partition — contexte Score
— sans numéros de
mesure.
\layout { \context { \Score \remove "Bar_number_engraver" } } \relative c'' { c4 c c c \break c4 c c c }
Voir aussi
Morceaux choisis : Rhythms.
Référence du programme : BarNumber.
Problèmes connus et avertissements
Les numéros de mesure peuvent entrer en collision avec les crochets d’un
StaffGroup. La propriété padding
– décalage
– de l’objet
BarNumber permet alors d’ajuster leur
positionnement.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Numéros de mesure ] | [ Plus haut: Mesures ] | [ Indications de repère > ] |
Vérification des limites et numéros de mesure
Les tests de limites de mesure (ou tests de mesure) aident à détecter
les erreurs dans les durées. Un test de mesure s’écrit avec une barre
verticale, |
. Lors du traitement, elle doit correspondre à une
barre de mesure. Sinon, un avertissement est émis. Dans l’exemple
suivant, le deuxième test de mesure signale une erreur.
\time 3/4 c2 e4 | g2 |
Le test de mesure peut être aussi utilisé dans les paroles, par exemple :
\lyricmode { \time 2/4 Twin -- kle | Twin -- kle }
Des durées incorrectes font échouer les tests de mesure, et peuvent souvent mettre la partition sens dessus dessous, particulièrement s’il s’agit de musique polyphonique. Vérifier les tests de mesure qui ont échoué et les durées incorrectes est un bon moyen de commencer à corriger sa partition.
Lorsque plusieurs tests successifs présentent un même décalage, seul le message d’avertissement concernant la première occurence est affiché.
Il est aussi possible d’attribuer une autre valeur au symbole
|
, en assignant une expression musicale à pipeSymbol
.
Dans l’exemple suivant, le |
servira à insérer une double barre
là où il apparaît, au lieu de simplement vérifier que la fin de la
mesure est atteinte.
pipeSymbol = \bar "||" { c'2 c'2 | c'2 c'2 c'2 | c'2 c'2 c'2 }
Lorsque l’on recopie de longues pièces, il peut être utile de vérifier
que les numéros de mesure de LilyPond correspondent à l’original que
l’on recopie. Cela se fait avec \barNumberCheck
. Par exemple,
\barNumberCheck #123
affiche un avertissement lors du traitement si le numéro de mesure à ce
point (variable currentBarNumber
) n’est pas 123.
Voir aussi
Morceaux choisis : Rhythms.
Indications de repère
Indiquer un repère s’obtient grâce à la commande \mark
.
c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default
La lettre I n’est pas utilisée, conformément aux usages de la gravure. Cependant, vous pourrez intégrer la lettre I en utilisant
\set Score.markFormatter = #format-mark-alphabet
Lorsque vous utilisez \mark \default
, le repère s’incrémente
automatiquement ; toutefois donner un nombre en argument permet de
spécifier manuellement le repère en question. La valeur à utiliser
est enregistrée dans la propriété rehearsalMark
.
Le style de repère est déterminé par la propriété
markFormatter
. Il s’agit d’une fonction qui prend en arguments
le repère en cours (un entier) ainsi que le contexte en cours, et
retournera un objet de type étiquette. Dans l’exemple qui suit,
markFormatter
est réglé pour une procédure type. Quelques
mesures plus loin, son comportement est modifié pour imprimer un
repère encadré.
\set Score.markFormatter = #format-mark-numbers c1 \mark \default c1 \mark \default \set Score.markFormatter = #format-mark-box-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-letters c1
Le fichier ‘scm/translation-functions.scm’ comporte les
définitions de format-mark-numbers
(comportement par défaut),
format-mark-box-numbers
,
format-mark-letters
et format-mark-box-letters
. Vous
pouvez vous en inspirer pour d’autres fonctions de formatage.
format-mark-barnumbers
, format-mark-box-barnumbers
et
format-mark-circle-barnumbers
permettent d’imprimer le numéro
de mesure au lieu des compteurs alphabétique ou numérique.
On peut aussi spécifier manuellement une marque de repère :
\mark "A1"
Score.markFormatter
sera sans effet sur des repères ainsi
définis. Un \markup
peut néanmoins s’utiliser en argument.
\mark \markup{ \box A1 }
Un \mark
peut contenir un glype musical tel que le signe
segno.
c1 \mark \markup { \musicglyph #"scripts.segno" } c1 \mark \markup { \musicglyph #"scripts.coda" } c1 \mark \markup { \musicglyph #"scripts.ufermata" } c1
Pour connaître les différents symboles accessibles par
\musicglyph
, consultez La fonte Feta.
Pour affiner le positionnement des repères, veuillez vous référer à Mise en forme du texte.
Voir aussi
Dans ce manuel : La fonte Feta, Mise en forme du texte.
Fichiers d’initialisation :
‘scm/translation-functions.scm’ contient les définitions de
format-mark-numbers
et format-mark-letters
. Elles seront
source d’inspiration pour d’autres fonctions de formatage.
Morceaux choisis : Rhythms.
Référence du programme : RehearsalMark.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Indications de repère ] | [ Plus haut: Rythme ] | [ Notes d'ornement > ] |
1.2.6 Fonctionnalités rythmiques particulières
Notes d’ornement | ||
Alignement et cadences | ||
Gestion du temps |
Notes d’ornement
Les petites notes sont des ornements entièrement écrits. Leur taille est un peu plus petite que celle des notes normales et elles n’occupent pas de temps dans la mesure.
c4 \grace c16 c4 \grace { c16[ d16] } c2
Les plus courantes sont les acciaccatures, qui doivent se jouer très vite, et qui s’écrivent sous forme d’une petite note barrée (sur la hampe) et liée. L’appoggiature est une petite note non barrée, qui vole une fraction à la durée de la note réelle qui la suit.
\grace c8 b4 \acciaccatura d8 c4 \appoggiatura e8 d4 \acciaccatura { g16[ f] } e4
Les petites notes se placent de façon synchrone entre les différentes portées. Dans l’exemple suivant, il y a deux petites double-croches pour chaque petite croche.
<< \new Staff { e2 \grace { c16[ d e f] } e2 } \new Staff { c2 \grace { g8[ b] } c2 } >>
La commande \afterGrace
sert à placer une petite note après une
note réelle – et non avant comme d’ordinaire. Cette commande
requiert deux arguments : la note réelle, et la ou les petites notes qui
suivent.
c1 \afterGrace d1 { c16[ d] } c1
Les petites notes se placent alors aux 3/4 de la durée de la note
réelle. Cette fraction peut être changée en définissant
afterGraceFraction
. Dans l’exemple suivant, vous pouvez observer
la différence entre le comportement par défaut, à 15/16 et
enfin à la moitié de la durée de base.
<< \new Staff { c1 \afterGrace d1 { c16[ d] } c1 } \new Staff { #(define afterGraceFraction (cons 15 16)) c1 \afterGrace d1 { c16[ d] } c1 } \new Staff { #(define afterGraceFraction (cons 1 2)) c1 \afterGrace d1 { c16[ d] } c1 } >>
Des silences invisibles permettent d’ajuster l’espace entre les petites notes et la note réelle. Nous pourrions positionner ces petites notes à 7/8 de la durée de la note de base :
\new Voice { << { d1^\trill_( } { s2 s4. \grace { c16[ d] } } >> c1) }
Les expressions \grace
obéissent à des règles typographiques
particulières, notamment pour régler l’orientation et la taille des
objets. De ce fait, toute subtilité de mise en forme devra être
indiquée à l’intérieur de l’expression introduite par
\grace
; ces réglages ajoutés doivent également être désactivés
dans cette même expression.
\new Voice { \acciaccatura { \stemDown f16-> \stemNeutral } g4 e c2 }
Morceaux choisis
Utilisation de hampe barrée pour une note normale
Le trait que l’on trouve sur les hampes des acciaccatures peut être appliqué dans d’autres situations.
\relative c'' { \override Stem #'stroke-style = #"grace" c8( d2) e8( f4) }
Mise en forme des notes d’ornement
Il est possible de changer globalement la mise en forme des petites
notes dans un morceau, au moyen de la fonction
add-grace-property
. Ici, par exemple, on ôte la définition de
l’orientation des objets Stem
pour toutes les petites notes,
afin que les hampes ne soient pas toujours orientées vers le haut, et on
leur préfère des têtes en forme de croix.
\relative c'' { \new Staff { #(remove-grace-property 'Voice 'Stem 'direction) #(add-grace-property 'Voice 'NoteHead 'style 'cross) \new Voice { \acciaccatura { f16 } g4 \grace { d16[ e] } f4 \appoggiatura { f,32[ g a] } e2 } } }
Redéfinition des réglages de mise en forme par défaut des notes d’ornement
Vous pouvez modifier les valeurs des variables startGraceMusic
,
stopGraceMusic
, startAcciaccaturaMusic
,
stopAcciaccaturaMusic
, startAppoggiaturaMusic
, et
stopAppoggiaturaMusic
afin d’en personnaliser les effets. Pour
plus de détails, voir le fichier ly/grace-init.ly
.
startAcciaccaturaMusic = { s1*0( \override Stem #'stroke-style = #"grace" \slurDashed } stopAcciaccaturaMusic = { \revert Stem #'stroke-style \slurSolid s1*0) } \relative c'' { \acciaccatura d8 c1 }
Positionnement des notes d’ornement avec espace flottant
Lorsque vous activez la propriété 'strict-grace-spacing
,
l’espacement des notes d’ornement se fera de manière « élastique ».
Autrement dit, elles seront décollées de leur note de rattachement :
LilyPond commence par espacer les notes normales, puis les ornements
sont placés à la gauche de leur note de rattachement.
\relative c'' { << \override Score.SpacingSpanner #'strict-grace-spacing = ##t \new Staff \new Voice { \afterGrace c4 { c16[ c8 c16] } c8[ \grace { b16[ d] } c8] c4 r } \new Staff { c16 c c c c c c c c4 r } >> }
Voir aussi
Glossaire musicologique : grace notes, acciaccatura, appoggiatura.
Fichiers source : ‘ly/grace-init.ly’.
Morceaux choisis : Rhythms.
Référence du programme : GraceMusic.
Problèmes connus et avertissements
Un groupe de notes ligaturées consituant une acciaccatura apparaîtra comme une appoggiatura, c’est-à-dire sans trait.
La synchronisation des petites notes se fait de façon parfois surprenante, car les autres objets de la portée – barres de mesure, armures, etc. – sont eux aussi synchrones. Pensez-y lorsque vous mélez des portées comprenant des petites notes et d’autres sans :
<< \new Staff { e4 \bar "|:" \grace c16 d2. } \new Staff { c4 \bar "|:" d2. } >>
Il est possible de remédier à cela en insérant sur les autres portées
des silences invisibles dans une expression précédée de \grace
,
correspondant à la durée des petites notes.
<< \new Staff { e4 \bar "|:" \grace c16 d2. } \new Staff { c4 \bar "|:" \grace s16 d2. } >>
Seules des expressions musicales séquentielles peuvent être utilisées pour des petites notes ; il n’est pas possible d’imbriquer ni de juxtaposer des sections de petites notes, faute de quoi le traitement du code peut échouer ou produire des erreurs.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Notes d'ornement ] | [ Plus haut: Fonctionnalités rythmiques particulières ] | [ Gestion du temps > ] |
Alignement et cadences
Dans un contexte orchestral, une cadence constitue un problème spécifique. Lors du montage d’une partition contenant une cadence, tous les autres instruments doivent sauter autant de notes que ce qu’en comporte la cadence, faute de quoi ils démarreraient trop tôt ou trop tard.
Les fonctions mmrest-of-length
ou skip-of-length
permettent de résoudre ce problème. Ces fonctions Scheme prennent en
argument un fragment de musique, et génèrent un \skip
ou un
silence multi-mesures d’une durée correspondant à ce fragment.
MyCadenza = \relative c' { c4 d8 e f g g4 f2 g4 g } \new GrandStaff << \new Staff { \MyCadenza c'1 \MyCadenza c'1 } \new Staff { #(ly:export (mmrest-of-length MyCadenza)) c'1 #(ly:export (skip-of-length MyCadenza)) c'1 } >>
Voir aussi
Glossaire musicologique : cadenza.
Morceaux choisis : Rhythms.
Gestion du temps
Le temps est administré par le Timing_translator
, qui réside en
principe dans le contexte Score
. Un alias, Timing
, sera
ajouté au contexte auquel le Timing_translator
est rattaché.
Timing
dispose des propriétés suivantes afin de garder trace du
minutage de la partition.
-
currentBarNumber
Le numéro de la mesure en cours. Un exemple d’utilisation se trouve au chapitre Numéros de mesure.
-
measureLength
La longueur de la mesure, dans la métrique en cours. Pour une mesure à 4/4, elle est de 1, et de 3/4 pour une mesure à 6/8. Sa valeur détermine où peut s’insérer une barre et comment seront générées les ligatures automatiques.
-
measurePosition
Le moment où l’on en est dans la mesure en cours. Cette quantité est remise à 0 dès lors qu’on dépasse
measureLength
; la variablecurrentBarNumber
est alors incrémentée.-
timing
Lorsqu’on lui assigne la valeur vrai, les valeurs ci-dessus mentionnées sont mises à jour à chaque pas. Fixée à faux, le graveur restera indéfiniment dans la mesure en cours.
Le calage peut être modifié en réglant explicitement l’une de ces
variables. Dans l’exemple qui suit, nous réglons la métrique à 4/4,
tout en fixant measureLength
à 5/4. Arrivé à 4/8 dans la
troisième mesure, nous avançons de 1/8, en assignant 5/8 à
measurePosition
, raccourcissant donc cette mesure d’une croche.
La barre de mesure suivante tombera donc à 9/8 et non à 5/8.
\set Score.measureLength = #(ly:make-moment 5 4) c1 c4 c1 c4 c4 c4 \set Score.measurePosition = #(ly:make-moment 5 8) b4 b4 b8 c4 c1
Comme le montre cet exemple, ly:make-moment n m
construit une
durée de n/m fois une ronde.
Par conséquent, ly:make-moment 1 8
correspond à une croche, et
ly:make-moment 7 16
à la durée de sept doubles-croches.
Voir aussi
Dans ce manuel : Numéros de mesure, Musique sans métrique
Morceaux choisis : Rhythms.
Références internes : Timing_translator, Score
1.3 Signes d’interprétation
1.3.1 Indications attachées à des notes | ||
1.3.2 Courbes | ||
1.3.3 Lignes |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Signes d'interprétation ] | [ Plus haut: Signes d'interprétation ] | [ Articulations et ornements > ] |
1.3.1 Indications attachées à des notes
Nous allons voir au cours de ces lignes comment ajouter aux notes des indications d’interprétation – articulation, ornementation, nuances – et aborderons la manière de générer vos propres signes.
Articulations et ornements | ||
Nuances | ||
Personnalisation des indications de nuance |
Articulations et ornements
Les différents symboles qui indiquent des ponctuations ou des modes de jeu différents s’ajoutent aux notes de la manière suivante :
note\nom
Les valeurs de nom sont répertoriées dans l’annexe Liste des signes d’articulation. En voici un exemple :
c4\staccato c\mordent b2\turn c1\fermata
Certains signes d’articulation disposent d’un raccourci. On les ajoute à chaque note au moyen d’un tiret suivi du caractère correspondant à l’articulation désirée. C’est entre autres le cas pour marcato, stopped, tenuto, staccatissimo, accent, staccato, et portato, comme l’illustre l’exemple ci-dessous.
c4-^ c-+ c-- c-| c4-> c-. c2-_
Même si LilyPond place automatiquement ces symboles, selon les règles
contenues dans le fichier scm/script.scm
, il est possible de
l’obliger à les positionner au-dessus ou en-dessous de la note, comme
indiqué au chapitre Direction et positionnement.
Morceaux choisis
Modification de la signification des raccourcis pour les signes d’articulation
Les raccourcis sont répertoriés dans le fichier
ly/script-init.ly
, dans lequel on retrouve les variables
dashHat
, dashPlus
, dashDash
, dashBar
,
dashLarger
, dashDot
, et dashUnderscore
ainsi que
leur valeur par défaut. Ces valeurs peuvent être modifiées selon vos
besoins. Il suffit par exemple, pour affecter au raccourci -+
(dashPlus
) le symbole du trille en lieu et place du +
(caractère plus), d’assigner la valeur trill
à la variable
dashPlus
:
\relative c'' { c1-+ } dashPlus = "trill" \relative c'' { c1-+ }
Contrôle de l’ordre vertical des articulations et ornements
Les symboles s’ordonnent verticalement suivant la propriété
script-priority
. Plus sa valeur numérique est faible, plus le
symbole sera proche de la note. Dans l’exemple suivant, l’objet
TextScript
– le dièse – a d’abord la propriété la
plus basse, et il est donc placé plus près de la note ; ensuite c’est
l’objet Script
– le mordant – qui a la propriété la plus basse,
et il se place alors sous le dièse. Lorsque deux objets ont la même
priorité, c’est l’ordre dans lequel ils sont indiqués qui détermine
lequel sera placé en premier.
\relative c''' { \once \override TextScript #'script-priority = #-100 a2^\prall^\markup { \sharp } \once \override Script #'script-priority = #-100 a2^\prall^\markup { \sharp } }
Création d’un grupetto retardé
Obtenir un grupetto retardé et dans lequel la note la plus basse
est altérée requiert quelques surcharges. La propriété
outside-staff-priority
doît être désactivée (#f
) pour
éviter qu’elle prenne le pas sur la propriété avoid-slur
. La
valeur assignée à halign
permet de gérer horizonalement le
« retard ».
\relative c'' { \once \override TextScript #'avoid-slur = #'inside \once \override TextScript #'outside-staff-priority = ##f c2(^\markup \tiny \override #'(baseline-skip . 1) { \halign #-4 \center-column { \sharp \musicglyph #"scripts.turn" } } d4.) c8 }
Voir aussi
Glossaire musicologique : tenuto, accent, staccato, portato.
Manuel de notation : Direction et positionnement, Liste des signes d’articulation, Trilles.
Fichiers installés :
scm/script.scm
.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : Script, TextScript.
Nuances
À chaque nuance absolue correspond une commande, qui peut être indiquée
après une note : c4\ff
par exemple. Les commandes de nuance
disponibles sont \ppppp
, \pppp
, \ppp
, \pp
,
\p
, \mp
, \mf
, \f
, \ff
, \fff
,
\ffff
, \fffff
, \fp
, \sf
, \sff
,
\sp
, \spp
, \sfz
, et \rfz
. Les nuances se
placent aussi bien en dessous qu’au-dessus de la portée ; pour plus
d’information, consultez Direction et positionnement.
c2\ppp c\mp c2\rfz c^\mf c2_\spp c^\ff
Un crescendo est délimité par \<
et \!
, ou peut se
terminer par une commande de nuance. Au lieu de \<
ou \>
.
c2\< c\! d2\< d\f e2\< e\> f2\> f\! e2\> e\mp d2\> d\> c1\!
Ces indications sont attachées aux notes ; aussi si l’on veut faire se succéder plusieurs nuances pendant une note tenue, il faudra avoir recours à des silences invisibles :
c4\< c\! d\> e\! << f1 { s4 s4\< s4\> s4\! } >>
On peut avoir recours à l’indication \espressivo
pour indiquer un
crescendo suivi d’un decrescendo sur une même note.
c2 b4 a g1\espressivo
Au lieu d’une notation graphique des (de)crescendos, on peut utiliser
une notation textuelle. Une ligne pointillée marque alors son étendue.
Sont disponibles les commandes \crescTextCresc
,
\dimTextDecresc
, \dimTextDecr
, et \dimTextDim
.
\crescHairpin
et \dimHairpin
permettent de revenir à des
nuances en soufflet
\crescTextCresc c2\< d | e f\! \dimTextDecresc e2\> d | c b\! \crescHairpin c2\< d | e f\! \dimHairpin e2\> d\!
Pour créer des indications de nuance qui restent alignées avec les nuances habituelles, voir Personnalisation des indications de nuance.
Le positionnement vertical des nuances est géré par le DynamicLineSpanner.
Commandes prédéfinies
\dynamicUp
,
\dynamicDown
,
\dynamicNeutral
,
\crescTextCresc
,
\dimTextDim
,
\dimTextDecr
,
\dimTextDecresc
,
\crescHairpin
,
\dimHairpin
.
Morceaux choisis
Soufflets et barres de mesure
En principe, un soufflet – (de)crescendo imprimé sous forme graphique –
commence au bord gauche de la note de départ, et se termine au
bord droit de la note d’arrivée. Cependant, si la note d’arrivée
est sur un premier temps, le soufflet s’arrêtera au niveau de la
barre de mesure qui la précède. Ce comportement peut être annulé
en assignant faux (#f
) à la propriété 'to-barline
:
\relative c'' { e4\< e2. e1\! \override Hairpin #'to-barline = ##f e4\< e2. e1\! }
Ajustement de la longueur d’un soufflet
Si un soufflet est trop court, il suffit d’ajuster la propriété
minimum-length
de l’objet Hairpin
pour l’allonger.
\relative c'' { c4\< c\! d\> e\! \override Hairpin #'minimum-length = #5 << f1 { s4 s\< s\> s\! } >> }
Impression de soufflets « al niente »
Des crescendos ou decrescendos al niente peuvent être indiqués de
manière graphique, en assignant vrai (#t
) à la
propriété circled-tip
, ce qui affiche un cercle à leur extrémité.
\relative c'' { \override Hairpin #'circled-tip = ##t c2\< c\! c4\> c\< c2\! }
Alignement vertical des nuances indications textuelles
Vous pourrez, en jouant sur la propriété 'Y-extent
, aligner les
différents objets DynamicLineSpanner
(souflets ou textuels)
quelle que soit leur étendue, par rapport à un même point de référence.
Tous les éléments seront alors centrés sur une même ligne, ce qui sera
visuellement plus agréable.
C’est le même principe qui sert à aligner les indications textuelles sur une ligne de référence.
music = \relative c'' { c2\p^\markup { gorgeous } c\f^\markup { fantastic } c4\p c\f\> c c\!\p } { \music \break \override DynamicLineSpanner #'staff-padding = #2.0 \override DynamicLineSpanner #'Y-extent = #'(-1.5 . 1.5) \override TextScript #'Y-extent = #'(-1.5 . 1.5) \music }
Masquage de l’extension des nuances textuelles
Les crescendos et decrescendos indiqués textuellement – tels que cresc. ou dim. – sont suivis de pointillés qui montrent leur étendue. On peut empêcher l’impression de ces pointillés avec :
\relative c'' { \override DynamicTextSpanner #'dash-period = #-1.0 \crescTextCresc c1\< | d | b | c\! }
Modifidation du texte et de l’extension de nuances textuelles
Le texte par défaut des crescendos et decrescendos se change en
modifiant les propriétés de contexte crescendoText
et
decrescendoText
. L’aspect de la ligne d’extension est fonction
de la propriété 'style
du DynamicTextSpanner
. Sa valeur
par défaut est 'hairpin
, mais d’autres valeurs sont disponibles,
comme 'line
, 'dashed-line
et 'dotted-line
.
\relative c'' { \set crescendoText = \markup { \italic { cresc. poco } } \set crescendoSpanner = #'text \override DynamicTextSpanner #'style = #'dotted-line a2\< a a2 a a2 a a2 a\mf }
Voir aussi
Glossaire musicologique : al niente, crescendo, decrescendo, hairpin.
Manuel d’initiation : Articulations et nuances.
Manuel de notation : Direction et positionnement, Personnalisation des indications de nuance, Contenu de la sortie MIDI, Gestion des nuances en MIDI.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : DynamicText, Hairpin, DynamicLineSpanner.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Nuances ] | [ Plus haut: Indications attachées à des notes ] | [ Courbes > ] |
Personnalisation des indications de nuance
La manière la plus simple de personnaliser une indication de nuance
consiste à utiliser un objet \markup
.
moltoF = \markup { molto \dynamic f } \relative c' { <d e>16_\moltoF <d e> <d e>2.. }
Vous pouvez créer des indications de nuance éditoriales (entre parenthèses ou crochets) grâce aux étiquettes (mode markup) ; l syntaxe en est abordée au chapitre Mise en forme du texte.
roundF = \markup { \center-align \concat { \bold { \italic ( } \dynamic f \bold { \italic ) } } } boxF = \markup { \bracket { \dynamic f } } \relative c' { c1_\roundF c1_\boxF }
Grâce à la commande make-dynamic-script
, vous pouvez créer de
nouvelles marques textuelles que vous combinerez avec les signes de
nuance.
sfzp = #(make-dynamic-script "sfzp") \relative c' { c4 c c\sfzp c }
make-dynamic-script
accepte en argume tout objet de type
markup. Notez bien que la police des nuances ne contient que les
caractères f,m,p,r,s
et z
, et que les marques de nuances
possèdent des propriétés particulières et prédéfinies quant à leur
police. Aussi, lorsque vous créez du texte en pareille situation, nous
vous recommandons d’utiliser \normal-text
pour annuler ces
propriétés. L’intérêt majeur de recourrir à la fonction
make-dynamic-script
plutôt qu’à un simple markup réside
dans l’assurance que ces objets personnalisés et les soufflets seront
alignés lorsque attachés à une même note.
roundF = \markup { \center-align \concat { \normal-text { \bold { \italic ( } } \dynamic f \normal-text { \bold { \italic ) } } } } boxF = \markup { \bracket { \dynamic f } } mfEspress = \markup { \center-align \line { \hspace #3.7 mf \normal-text \italic espress. } } roundFdynamic = #(make-dynamic-script roundF) boxFdynamic = #(make-dynamic-script boxF) mfEspressDynamic = #(make-dynamic-script mfEspress) \relative c' { c4_\roundFdynamic\< d e f g,1~_\boxFdynamic\> g g'~\mfEspressDynamic g }
La constrution d’une indication de nuance personnalisée peut aussi se faire en langage Scheme ; voir Construction Scheme d’un marqueur pour en connaître les modalités.
moltoF = #(make-dynamic-script (markup #:normal-text "molto" #:dynamic "f")) \relative c' { <d e>16 <d e> <d e>2..\moltoF }
L’utilisation des fontes en mode markup est abordée au chapitre Sélection de la fonte et de la taille.
Voir aussi
Manuel de notation : Mise en forme du texte, Sélection de la fonte et de la taille, Construction Scheme d’un marqueur, Contenu de la sortie MIDI, Gestion des nuances en MIDI.
Morceaux choisis : Expressive marks.
1.3.2 Courbes
Ce chapitre traite des signes d’interprétation imprimés sous forme de courbe : liaisons d’articulation ou de phrasé, respirations, chutes et sauts.
Liaisons d’articulation | ||
Liaisons de phrasé | ||
Signes de respiration | ||
Chutes et sauts |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Courbes ] | [ Plus haut: Courbes ] | [ Liaisons de phrasé > ] |
Liaisons d’articulation
Une liaison d’articulation indique que les notes doivent être jouées liées, ou legato. Ces liaisons s’indiquent au moyen de parenthèses.
Note : Lorsque la musique est polyphonique, la liaison doît se terminer dans la voix où elle a été entamée.
f4( g a) a8 b( a4 g2 f4) <c e>2( <b d>2)
Vous pouvez décider de l’orientation des liaisons par rapport à la portée, comme indiqué au chapitre Direction et positionnement.
Une seule liaison d’articulation peut être imprimée à la fois. S’il est nécessaire d’imprimer une liaison plus longue, englobant des liaisons plus courtes, utilisez des Liaisons de phrasé.
Une liaison est par défaut dessinée d’une ligne pleine. Il est aussi possible de l’imprimer sous la forme de tirets ou en pointillé :
c4( e g2) \slurDashed g4( e c2) \slurDotted c4( e g2) \slurSolid g4( e c2)
En utilisant \slurHalfDashed
, la première moitié de la liaison
aura un trait discontinu et continu pour la seconde. L’inverse
s’obtient avec \slurHalfSolid
.
c4( e g2) \slurHalfDashed g4( e c2) \slurHalfSolid c4( e g2) \slurSolid g4( e c2)
Vous pouvez même personnaliser la densité des tirets d’une liaison :
c4( e g2) \slurDashPattern #0.7 #0.75 g4( e c2) \slurDashPattern #0.5 #2.0 c4( e g2) \slurSolid g4( e c2)
Commandes prédéfinies
\slurUp
,
\slurDown
,
\slurNeutral
,
\slurDashed
,
\slurDotted
,
\slurHalfDashed
,
\slurHalfSolid
,
\slurDashPattern
,
\slurSolid
.
Morceaux choisis
Accords et double liaison d’articulation
Certains auteurs utilisent deux liaisons lorsqu’ils veulent
lier des accords. Dans LilyPond, il faut pour cela activer
la propriété doubleSlurs
:
\relative c' { \set doubleSlurs = ##t <c e>4( <d f> <c e> <d f>) }
Positionnement d’une annotation à l’intérieur d’une liaison
Lorsqu’il vous faut inscrire une annotation à l’intérieur d’une liaison,
la propriété outside-staff-priority
doît être désactivée.
\relative c'' { \override TextScript #'avoid-slur = #'inside \override TextScript #'outside-staff-priority = ##f c2(^\markup { \halign #-10 \natural } d4.) c8 }
Dessin d’une liaison d’articulation au trait discontinu
Grâce à la propriété dash-definition
, une liaison d’articulation
peut être formée de traits discontinus variables.
dash-definition
se compose d’une liste de
segments-discontinus
(dash-elements). Chaque
segment-discontinu
contient une liste de paramètres qui
déterminent le comportement du trait pour une section de la liaison.
Cette liaison se définit selon le paramètre de Bézier t
qui est
compris entre 0 (l’extrémité gauche de la liaison) et 1 (l’extrémité
droite de la liaison). Chaque segment-discontinu
se composera
selon la liste (t-début t-fin segment-style segment-taille)
.
La portion de liaison allant de t-début
à t-fin
aura un
trait segment-style
de longueur segment-taille
.
segment-taille
est exprimé en espace de portée ; un
segment-style
à 1 donnera un trait plein.
\relative c' { \once \override Slur #'dash-definition = #'((0 0.3 0.1 0.75) (0.3 0.6 1 1) (0.65 1.0 0.4 0.75)) c4( d e f) \once \override Slur #'dash-definition = #'((0 0.25 1 1) (0.3 0.7 0.4 0.75) (0.75 1.0 1 1)) c4( d e f) }
Voir aussi
Glossaire musicologique : slur.
Manuel d’initiation : Non-imbrication des crochets et liaisons.
Manuel de notation : Direction et positionnement, Liaisons de phrasé.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : Slur.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Liaisons d'articulation ] | [ Plus haut: Courbes ] | [ Signes de respiration > ] |
Liaisons de phrasé
Une liaison de phrasé relie plusieurs notes en délimitant une phrase
musicale. On indique les points de départ et d’arrivée avec \(
et \)
respectivement.
c4\( d( e) f( e2) d\)
D’un point de vue typographique, rien ne distingue une liaison de phrasé
d’une liaison d’articulation. Cependant, LilyPond les considère comme
des objets différents. Une commande \slurUp
n’affectera donc pas
une liaison de phrasé. Vous pouvez décider de l’orientation des
liaisons de phrasé par rapport à la portée, comme indiqué au chapitre
Direction et positionnement.
Il n’est pas possible d’avoir plusieurs liaisons de phrasé en même temps.
Une liaison est par défaut dessinée d’une ligne pleine. Il est aussi possible de l’imprimer sous la forme de tirets ou en pointillé :
c4\( e g2\) \phrasingSlurDashed g4\( e c2\) \phrasingSlurDotted c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
En utilisant \phrasingslurHalfDashed
, la première moitié de la liaison
aura un trait discontinu et continu pour la seconde. L’inverse
s’obtient avec \phrasingslurHalfSolid
.
c4\( e g2\) \phrasingSlurHalfDashed g4\( e c2\) \phrasingSlurHalfSolid c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
Vous pouvez même personnaliser la densité des tirets d’une liaison :
c4\( e g2\) \phrasingSlurDashPattern #0.7 #0.75 g4\( e c2\) \phrasingSlurDashPattern #0.5 #2.0 c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
La personnalisation des lignes discontinues est identique pour les liaisons de phrasé et les liaisons d’articulation. Pour plus de détails, référez-vous aux morceaux choisis de la section Liaisons d’articulation.
Commandes prédéfinies
\phrasingSlurUp
,
\phrasingSlurDown
,
\phrasingSlurNeutral
,
\phrasingSlurDashed
,
\phrasingSlurDotted
,
\phrasingSlurHalfDashed
,
\phrasingSlurHalfSolid
,
\phrasingSlurDashPattern
,
\phrasingSlurSolid
.
Voir aussi
Manuel d’initiation : Non-imbrication des crochets et liaisons.
Manuel de notation : Direction et positionnement, Liaisons d’articulation.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : PhrasingSlur.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Liaisons de phrasé ] | [ Plus haut: Courbes ] | [ Chutes et sauts > ] |
Signes de respiration
Les indications de respiration sont indiquées par la commande
\breathe
.
c2. \breathe d4
LilyPond gère les divisiones, signes utilisés en notation ancienne pour indiquer les respirations. Pour de plus amples détails, voir Divisions.
Morceaux choisis
Modification de l’indicateur de respiration
On peut choisir le glyphe imprimé par cette commande, en modifiant la
propriété text
de l’objet BreathingSign
, pour lui affecter
n’importe quelle indication textuelle.
\relative c'' { c2 \override BreathingSign #'text = \markup { \musicglyph #"scripts.rvarcomma" } \breathe d2 }
Insertion d’une césure
Une surcharge de la propriété 'text
de l’objet
BreathingSign
permet de créer une marque de césure. LilyPond
dispose également d’une variante courbée.
\relative c'' { \override BreathingSign #'text = \markup { \musicglyph #"scripts.caesura.straight" } c8 e4. \breathe g8. e16 c4 \override BreathingSign #'text = \markup { \musicglyph #"scripts.caesura.curved" } g8 e'4. \breathe g8. e16 c4 }
Voir aussi
Glossaire musicologique : caesura.
Manuel de notation : Divisions.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : BreathingSign.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Signes de respiration ] | [ Plus haut: Courbes ] | [ Lignes > ] |
Chutes et sauts
Des indications de désinence peuvent être obtenues au moyen de la
commande \bendAfter
. Leur direction s’indique au moyen des
signes plus (vers le haut) ou moins (vers le bas). Le chiffre indique
l’intervalle avec la note de départ.
c2-\bendAfter #+4 c2-\bendAfter #-4 c2-\bendAfter #+8 c2-\bendAfter #-8
Lorsque vous saisissez des chutes ou des sauts, n’oubliez pas
le tiret (-
) qui précède la commande \bendAfter
.
Morceaux choisis
Ajustement du galbe des chutes ou sauts
La propriété shortest-duration-space
peut devoir être retouchée
pour ajuster l’apparence des chutes ou sauts.
\relative c'' { \override Score.SpacingSpanner #'shortest-duration-space = #4.0 c2-\bendAfter #5 c2-\bendAfter #-4.75 c2-\bendAfter #8.5 c2-\bendAfter #-6 }
Voir aussi
Glossaire musical : fall, doit.
Morceaux choisis : Expressive marks.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Chutes et sauts ] | [ Plus haut: Signes d'interprétation ] | [ Glissando > ] |
1.3.3 Lignes
Cette partie traite de la manière de générer des signes d’interprétation d’aspect linéaire, tels les glissandos, arpèges et trilles.
Glissando | ||
Arpèges | ||
Trilles |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Lignes ] | [ Plus haut: Lignes ] | [ Arpèges > ] |
Glissando
Un glissando relie une hauteur à une autre en passant par chaque hauteur
intermédiaire. On l’obtient en accolant la commande \glissando
à
la première note.
g2\glissando g' c2\glissando c,
Un glissando est indiqué graphiquement, par une ligne ou des vaguelettes – voir Lignes.
Morceaux choisis
Glissando contemporain
De nos jours, il peut arriver que la note d’arrivée d’un glissando soit absente de la partition. Pour ce faire, il vous faudra utiliser une cadence et « masquer » la note d’arrivée.
\relative c'' { \time 3/4 \override Glissando #'style = #'zigzag c4 c \cadenzaOn c4\glissando \hideNotes c,,4 \unHideNotes \cadenzaOff \bar "|" }
Voir aussi
Glossaire musicologique : glissando.
Manuel de notation : Lignes.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : Glissando.
Problèmes connus et avertissements
Il n’est pas possible d’imprimer un texte (tel que gliss.) le long de la ligne de glissando.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Glissando ] | [ Plus haut: Lignes ] | [ Trilles > ] |
Arpèges
On peut indiquer qu’un accord doit être arpégé en lui accolant la
commande \arpeggio
:
<c e g c>1\arpeggio
LilyPond dispose de différents graphismes pour indiquer un arpège.
\arpeggioNormal
reviendra au style par défaut.
<c e g c>2\arpeggio \arpeggioArrowUp <c e g c>2\arpeggio \arpeggioArrowDown <c e g c>2\arpeggio \arpeggioNormal <c e g c>2\arpeggio
Des crochets indiquent que l’accord devra être plaqué et non arpégé :
<c e g c>2 \arpeggioBracket <c e g c>2\arpeggio \arpeggioParenthesis <c e g c>2\arpeggio \arpeggioParenthesisDashed <c e g c>2\arpeggio \arpeggioNormal <c e g c>2\arpeggio
Un arpège peut parfois s’écrire de manière explicite, à l’aide de liaisons de tenue. Pour plus d’information, voir Liaisons de prolongation.
Commandes prédéfinies
\arpeggio
,
\arpeggioArrowUp
,
\arpeggioArrowDown
,
\arpeggioNormal
,
\arpeggioBracket
,
\arpeggioParenthesis
\arpeggioParenthesisDashed
.
Morceaux choisis
Arpège distribué sur une partition pour piano
Dans une double portée pour piano (PianoStaff
), un arpège peut
s’étendre sur les deux portées grâce à la propriété
PianoStaff.connectArpeggios
.
\new PianoStaff \relative c'' << \set PianoStaff.connectArpeggios = ##t \new Staff { <c e g c>4\arpeggio <g c e g>4\arpeggio <e g c e>4\arpeggio <c e g c>4\arpeggio } \new Staff { \clef bass \repeat unfold 4 { <c,, e g c>4\arpeggio } } >>
Arpège distribué pour un autre contexte que le piano
Il est possible de distribuer un arpège sur plusieurs portées d’un
système autre que le PianoStaff
dès lors que vous incluez le
Span_arpeggio_engraver
au contexte Score
.
\score { \new ChoirStaff { \set Score.connectArpeggios = ##t << \new Voice \relative c' { <c e>2\arpeggio <d f>2\arpeggio <c e>1\arpeggio } \new Voice \relative c { \clef bass <c g'>2\arpeggio <b g'>2\arpeggio <c g'>1\arpeggio } >> } \layout { \context { \Score \consists "Span_arpeggio_engraver" } } }
Arpège distribué sur plusieurs voix
Affecter le graveur Span_arpeggio_engraver
au contexte de la
portée (Staff
) permet de distribuer un arpège sur plusieurs voix :
\new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { <e' g>4\arpeggio <d f> <d f>2 } \\ { <d, f>2\arpeggio <g b>2 } >> }
Voir aussi
Glossaire musicologique : arpeggio.
Manuel de notation : Liaisons d’articulation, Liaisons de prolongation.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : Arpeggio, Slur, PianoStaff.
Problèmes connus et avertissements
Il est impossible de mêler au même instant, dans un contexte
PianoStaff
, des lignes d’arpèges connectées et d’autres
non connectées.
Il n’est pas possible d’imprimer des lignes d’arpèges connectées sous forme de parenthèse.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Arpèges ] | [ Plus haut: Lignes ] | [ Répétitions et reprises > ] |
Trilles
Les trilles brefs s’indiquent comme n’importe quelle ponctuation, avec un
simple \trill
; voir Articulations et ornements.
Les trilles plus longs sont délimités par \startTrillSpan
et
\stopTrillSpan
:
d1~\startTrillSpan d1 c2\stopTrillSpan r2
Dans l’exemple suivant, un trille se combine avec des notes d’ornement. La syntaxe d’une telle construction ainsi que le moyen de positionner les notes d’ornement avec précision est expliquée dans Notes d’ornement.
c1 \afterGrace d1\startTrillSpan { c32[ d]\stopTrillSpan } e2 r2
Les trilles qui font intervenir une hauteur précise peuvent être
indiqués par la commande pitchedTrill
. Le premier argument est
la note réelle ; le second est une hauteur qui sera imprimée comme une
tête de note noire entre parenthèses.
\pitchedTrill e2\startTrillSpan fis d\stopTrillSpan
Dans l’exemple suivant, le deuxième trille est ambigu – le fa qui est
forcé n’est pas diésé. Pour lever toute ambiguité, il suffit de forcer
l’impression de l’altération – en ajoutant un !
– comme dans
la deuxième mesure.
\pitchedTrill eis4\startTrillSpan fis g\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis g\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis g\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis! g\stopTrillSpan
Commandes prédéfinies
\startTrillSpan
,
\stopTrillSpan
.
Voir aussi
Glossaire musicologique : trill.
Manuel de notation : Articulations et ornements, Notes d’ornement.
Morceaux choisis : Expressive marks.
Référence des propriétés internes : TrillSpanner.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Trilles ] | [ Plus haut: Notation musicale générale ] | [ Répétition d'un long passage > ] |
1.4 Répétitions et reprises
La répétition est une notion essentielle en musique, et il existe de nombreuses façons de mettre en œuvre et noter ce concept. LilyPond prend en charge les types de répétition suivants :
-
volta
Le passage répété n’est pas développé , mais il est encadré par des barres de reprises, et peut se terminer par plusieurs fins alternatives – ou volte – imprimées de gauche à droite sous des crochets. Lorsque la répétition commence au début de la pièce, aucune barre de reprise n’est gravée au début de la partition. Il s’agit de la notation courante des reprises avec fins alternatives.
-
unfold
La musique répétée est développée dans la partition autant de fois qu’indiqué. Ceci est particulièrement utile pour de la musique répétitive.
-
percent
Des barres obliques ou signes de pourcentage indiquent la répétition de temps ou de mesures.
-
tremolo
Ce type permet de réaliser des trémolos sous forme de liens de croches.
1.4.1 Répétition d’un long passage | ||
1.4.2 Autres types de répétition |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Répétitions et reprises ] | [ Plus haut: Répétitions et reprises ] | [ Répétitions courantes > ] |
1.4.1 Répétition d’un long passage
Cette section présente la syntaxe des répétitions longues – c’est-à-dire plusieurs mesures. Ces répétitions peuvent prendre deux formes : encadrées par des barres de reprises, ou bien développées dans la partition. Les barres et autres signe de reprise peuvent être contrôlés manuellement.
Répétitions courantes | ||
Indications de reprise manuelles | ||
Répétitions explicites |
Répétitions courantes
On peut indiquer une répétition de la façon suivante :
\repeat volta nombre_de_fois expression_musicale
où expression_musicale représente ce qui doît être répété. On
peut ajouter une fin alternative à l’aide de la commande
\alternative
. Chaque alternative étant une expression
musicale en elle-même, il faudra les regrouper par des accolades. Si
l’on donne trop peu d’alternatives en regard du nombre de fois où le
passage doit être rejoué, la première alternative sera jouée plusieurs
fois.
Les reprises courantes s’indiquent comme ceci :
\repeat volta 2 { c4 d e f } c2 d \repeat volta 2 { d4 e f g }
Et avec des fins alternatives :
\repeat volta 4 { c4 d e f } \alternative { { d2 e } { f2 g } } c1
Note : Une clause \relative
ne doît jamais se trouver à
l’intérieur d’une section \repeat
: vous aurez
immanquablement des portées parasites. Voir
Apparition d'une portée supplémentaire.
Il est possible de créer des répétitions avec une levée.
\partial 4 e | \repeat volta 4 { c2 d | e2 f | } \alternative { { g4 g g e } { a4 a a a | b2. } }
ou
\partial 4 \repeat volta 4 { e4 | c2 d | e2 f | } \alternative { { \partial 4*3 g4 g g } { a4 a a a | b2. } }
Des liaisons de tenue peuvent être ajoutées à toute alternative :
c1 \repeat volta 2 { c4 d e f ~ } \alternative { { f2 d } { f2\repeatTie f, } }
Morceaux choisis
Diminution de la taille du crochet d’alternative
Les crochets indiquant les fins alternatives s’étalent tout au long ce
celle-ci. On peut les raccourcir en définissant la propriété
voltaSpannerDuration
. Dans l’exemple suivant, le crochet ne se
prolonge que sur une mesure à 3/4.
\relative c'' { \time 3/4 c4 c c \set Score.voltaSpannerDuration = #(ly:make-moment 3 4) \repeat volta 5 { d4 d d } \alternative { { e4 e e f4 f f } { g4 g g } } }
Ajout du crochet de reprise à d’autres portées
D’ordinaire, le graveur Volta_engraver
réside dans le contexte
Score
; les crochets précédant une reprise s’impriment donc
seulement au-dessus de la portée du haut. On peut ajuster cela en
déplaçant ce graveur vers les contextes de portée (Staff
) qui
doivent comporter ces crochets.
<< \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } \new Staff \with { \consists "Volta_engraver" } { c'2 g' e' a' } \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } >>
Voir aussi
Glossaire musicologique : repeat, volta.
Manuel de notation : Barres de mesure, Modification des greffons de contexte.
Morceaux choisis : Repeats.
Référence eds propriétés internes : VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.
Problèmes connus et avertissements
Des reprises imbriquées telles que
\repeat … \repeat … \alternative
présentent une ambiguïté, dans la mesure où l’on ne sait à quelle
section \repeat
attribuer la section \alternative
. Pour
résoudre cette ambiguïté, il convient de toujours insérer la commande
\alternative
à l’intérieur de la section \repeat
. Il est
préférable, dans une telle situation, d’utiliser des accolades pour plus
de clarté.
Lorsqu’une alternative commence, les informations de métrique sont
perdues, il faut donc les rappeler après une reprise, par exemple
en définissant Score.measurePosition
ou en invoquant la commande
\partial
. De même, aucune liaison (de tenue ou autre)
n’est répétée.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Répétitions courantes ] | [ Plus haut: Répétition d'un long passage ] | [ Répétitions explicites > ] |
Indications de reprise manuelles
Note : Les méthodes présentées dans les lignes qui suivent ne
devraient servir qu’à indiquer des constructions de répétitions
inhabituelles. En règle générale, il vaut mieux recourrir à la fonction
\repeat
pour créer une reprise, ou bien insérer la barre de
mesure adéquate. Pour plus d’information, voir le chapitre
Barres de mesure.
La propriété repeatCommands
sert à contrôler la mise en forme des
reprises. On la définit par une suite de commandes de reprise Scheme.
-
start-repeat
Pour imprimer une barre de reprise
|:
c1 \set Score.repeatCommands = #'(start-repeat) d4 e f g c1
Traditionnellement, on n’imprime pas de signe de reprise en début de morceau.
-
end-repeat
Pour imprimer une barre de reprise
:|
c1 d4 e f g \set Score.repeatCommands = #'(end-repeat) c1
-
(volta nombre) ... (volta #f)
Pour obtenir un crochet indiquant le numéro de l’alternative. Pour que le crochet s’imprime effectivement, il faut specifier explicitement l’endroit où il doît se terminer.
f4 g a b \set Score.repeatCommands = #'((volta "2")) g4 a g a \set Score.repeatCommands = #'((volta #f)) c1
Plusieurs commande de reprise peuvent intervenir au même moment :
f4 g a b \set Score.repeatCommands = #'((volta "2, 5") end-repeat) g4 a g a c1 \set Score.repeatCommands = #'((volta #f) (volta "95") end-repeat) b1 \set Score.repeatCommands = #'((volta #f))
Le crochet indiquant une alternative peut contenir aussi du texte. Il
peut s’agir d’un ou plusieurs nombres ou bien d’une indication textuelle
(markup) – voir Mise en forme du texte. Le plus simple,
dans le cas d’une indication textuelle, est de tout d’abord définir ce
markup
, puis de l’inclure dans une liste Scheme.
voltaAdLib = \markup { 1. 2. 3... \text \italic { ad lib. } } \relative c'' { c1 \set Score.repeatCommands = #(list(list 'volta voltaAdLib) 'start-repeat) c4 b d e \set Score.repeatCommands = #'((volta #f) (volta "4.") end-repeat) f1 \set Score.repeatCommands = #'((volta #f)) }
Morceaux choisis
Impression d’une barre de reprise en début de morceau
Bien qu’allant à l’encontre des usages en matière de gravure, vous
imprimerez une barre de reprise (|:
) en début de partition si
vous surchargez la propriété adéquate :
\relative c'' { \once \override Score.BreakAlignment #'break-align-orders = #(make-vector 3 '(instrument-name left-edge ambitus span-bar breathing-sign clef key-signature time-signature staff-bar custos span-bar)) \once \override Staff.TimeSignature #'space-alist = #'((first-note . (fixed-space . 2.0)) (right-edge . (extra-space . 0.5)) ;; free up some space between time signature ;; and repeat bar line (staff-bar . (extra-space . 1))) \bar "|:" c1 d1 d4 e f g }
Voir aussi
Manuel de notation : Barres de mesure, Mise en forme du texte.
Morceaux choisis : Repeats.
Référence des propriétés internes : VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.
Répétitions explicites
Adjoindre à la commande \repeat
l’opion unfold
permet de
s’affranchir de ressaisir de la musique répétitive. En voici la
syntaxe :
\repeat unfold nombre_de_fois expression_musicale
Le contenu de expression_musicale sera donc expansé autant de fois que stipulé par nombre_de_fois.
c1 \repeat unfold 2 { c4 d e f } c1
Une répétition expansée peut aussi avoir une fin alternative. Si l’on donne trop peu d’alternatives en regard du nombre de fois où le passage doit être rejoué, la première alternative sera jouée plusieurs fois.
c1 \repeat unfold 2 { g4 f e d } \alternative { { cis2 g' } { cis,2 b } } c1
Voir aussi
Morceaux choisis : Repeats.
Référence des propriétés internes : RepeatedMusic, UnfoldedRepeatedMusic.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Répétitions explicites ] | [ Plus haut: Répétitions et reprises ] | [ Répétitions de mesure > ] |
1.4.2 Autres types de répétition
Nous abordons ici les reprises de courte durée. Il en existe deux formes, à savoir la répétition d’une même note sur quelques mesures – représentée par une barre oblique ou le signe pourcent – et les trémolos.
Répétitions de mesure | ||
Répétitions en trémolo |
Répétitions de mesure
Le style de « reprise en pourcent » sert à répéter une séquence de notes. Elle sera imprimée une fois, puis remplacée par un symbole spécial. Les séquences d’une ou deux mesures sont remplacées par un symbole qui ressemble au symbole de pourcentage, tandis que les séquences inférieures à une mesure sont remplacées par une barre oblique.
\repeat percent nombre musicexpr
où musicexpr est l’expression musicale à répéter.
\repeat percent 4 { c4 } \repeat percent 2 { b4 a g f } \repeat percent 2 { c2 es | f4 fis g c | }
Morceaux choisis
Compteur de répétition en pourcent
Les répétitions de plus de 2 mesures sont surmontées d’un compteur,
si l’on active la propriété countPercentRepeats
comme le montre
l’exemple suivant :
\relative c'' { \set countPercentRepeats = ##t \repeat percent 4 { c1 } }
Affichage du numéro de répétition en pourcent
Le numéro de mesure répétée sera imprimé à intervalle régulier si vous
déterminez la propriété de contexte repeatCountVisibility
.
\relative c'' { \set countPercentRepeats = ##t \set repeatCountVisibility = #(every-nth-repeat-count-visible 5) \repeat percent 10 { c1 } \break \set repeatCountVisibility = #(every-nth-repeat-count-visible 2) \repeat percent 6 { c1 d1 } }
Répétition en pourcent isolée
Des symboles de pourcentage isolés peuvent aussi être obtenus, au moyen d’un silence multi-mesures dont on modifie l’aspect :
\relative c'' { \override MultiMeasureRest #'stencil = #ly:multi-measure-rest::percent \override MultiMeasureRest #'thickness = #0.48 R1 }
Voir aussi
Glossaire musicologique : percent repeat, simile.
Morceaux choisis : Repeats.
Référence des propriétés internes : RepeatSlash, PercentRepeat, DoublePercentRepeat, DoublePercentRepeatCounter, PercentRepeatCounter, PercentRepeatedMusic.
Problèmes connus et avertissements
LilyPond ne dispose que de trois signes différents pour indiquer une répétition « en pourcent » : une simple barre oblique qui représente un seul temps quelle que soit la durée des notes répétées ; une barre oblique simple entourée de points qui représente une mesure entière ; une double barre oblique entourée de points et placée sur la barre de mesure pour indiquer une répétition de deux mesures.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Répétitions de mesure ] | [ Plus haut: Autres types de répétition ] | [ Notes simultanées > ] |
Répétitions en trémolo
Il y a deux formes de trémolo : la répétition alernative de deux notes ou accords, et la répétition rapide d’une seule note ou d’un accord. Lorsqu’il est constitué d’une alternance répétitive, le trémolo s’indique en ajoutant des barres de ligature entre les deux notes ou accords concernés. Lorsqu’il s’agit d’une répétition rapide, des barres de ligature penchées sont ajoutée à la note en question.
On peut placer une notation de trémolo entre deux notes, avec la
commande \repeat
suivie du style trémolo :
\repeat tremolo 8 { c16 d } \repeat tremolo 6 { c16 d } \repeat tremolo 2 { c16 d }
La syntaxe de \repeat tremolo
requiert espressément deux notes
encadrées par des accolades, et le nombre de répétitions exprimé en
durée d’une note (pointée ou non). Ainsi, dans l’exemple ci-dessus,
\repeat tremolo 7
est valide car correspond à une note
doublement pointée, à l’inverse de \repeat tremolo 9
.
La durée d’un trémolo est égale à la durée de l’expression entre
accolades multipliée par le nombre de fois à répéter :
\repeat tremolo 8 { c16 d16 }
correspond donc à la valeur d’une ronde, et sera représenté par deux
rondes séparées par des barres de trémolo.
On peut indiquer de la même manière un trémolo sur une seule note, qu’il faudra alors laisser sans accolades :
\repeat tremolo 4 c'16
Le même résultat s’obtient en faisant suivre la note considérée
de deux points et d’un nombre (note:
[nombre]).
Le nombre en question correspond à la valeur de la subdivision ;
il doit être au moins de 8, auquel cas la hampe sera barrée par un
seul trait de ligature. Si ce nombre est omis, la dernière valeur –
telle que mémorisée dans tremoloFlags
– sera utilisée.
c2:8 c:32 c: c:
Morceaux choisis
Trémolo et changement de portée
Dans la mesure où \repeat tremolo
requiert deux arguments
musicaux pour un trémolo d’accords, la note ou l’accord de la
portée opposée doît être encadré par des accolades et se voir adjoindre
la commande \change Staff
.
\new PianoStaff << \new Staff = "up" \relative c'' { \key a \major \time 3/8 s4. } \new Staff = "down" \relative c'' { \key a \major \time 3/8 \voiceOne \repeat tremolo 6 { <a e'>32 { \change Staff = "up" \voiceTwo <cis a' dis>32 } } } >>
Voir aussi
Morceaux choisis : Repeats.
Problèmes connus et avertissements
Les trémolos distribués sur plusieurs portées peuvent amener des résultat inespérés.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Répétitions en trémolo ] | [ Plus haut: Notation musicale générale ] | [ Monophonie > ] |
1.5 Notes simultanées
La notion musicale de polyphonie fait référence au fait d’avoir plus d’une voix simultanément dans une pièce. Dans LilyPond, la notion de polyphonie fait référence au fait d’avoir plus d’une voix sur la même portée.
1.5.1 Monophonie | ||
1.5.2 Plusieurs voix |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Notes simultanées ] | [ Plus haut: Notes simultanées ] | [ Notes en accords > ] |
1.5.1 Monophonie
Notes en accords | ||
Expressions simultanées | ||
Clusters |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Monophonie ] | [ Plus haut: Monophonie ] | [ Expressions simultanées > ] |
Notes en accords
Un accord est formé en mettant une série de hauteurs entre <
et >
. Un accord peut être suivi d’une durée et d’indications
d’articulation, comme une simple note.
<c e g>2 <c f a>4-> <e g c>-.
Les accords peuvent être saisis en mode relatif. Dans un accord, l’octave de chaque hauteur saisie est fonction de la précédente, à l’exception de la première qui, elle, sera positionnée en fonction de la première hauteur mentionnée dans l’accord précédent.
Pour plus d’information à propos des accords, voir Notation des accords.
Voir aussi
Glossaire musical : chord.
Manuel d’initiation : Notes en accords.
Manuel de notation : Notation des accords.
Morceaux choisis : Simultaneous notes.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Notes en accords ] | [ Plus haut: Monophonie ] | [ Clusters > ] |
Expressions simultanées
Lorsqu’une ou plusieurs expressions musicales sont encadrées par des doubles chevrons, elles sont considérées comme étant simultanées. Si la première expression débute par une note unique ou si l’intégralité de l’expression simultanée est explicitement rattachée à une voix en particulier, elle sera placée sur une seule portée. Dans le cas contraire, les éléments d’une expression simultanée seront placés sur des portées distinctes.
Voici deux exemples d’expression simultanée sur une même portée :
\new Voice { % explicit single voice << { a4 b g2 } { d4 g c,2 } >> }
% single first note a << { a4 b g } { d4 g c, } >>
Cette manière de procéder est utile lorsque les éléments de l’expression ont des rythmes identiques. Dès que vous tenterez d’attacher sur une même hampe des notes de durée différente, vous générerez des erreurs.
Dans l’exemple suivant, l’expression simultanée génère implicitement plusieurs portées :
% no single first note << { a4 b g2 } { d4 g2 c,4 } >>
En pareil cas, des rythmes différents ne sont source d’aucun problème.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Expressions simultanées ] | [ Plus haut: Monophonie ] | [ Plusieurs voix > ] |
Clusters
Un cluster indique un agrégat de sons. On peut le représenter par une
plage limitée par un ambitus (notes extrêmes). On obtient une telle
notation en appliquant la fonction makeClusters
à une séquence
d’accords, comme
\makeClusters { <g b>2 <c g'> }
Des notes ordinaires et des clusters peuvent cohabiter sur une même portée, y compris simultanément – en pareil cas, rien ne sera fait pour tenter d’empécher les chevauchements entre notes et clusters.
Voir aussi
Glossaire musicologique : cluster.
Morceaux choisis : Simultaneous notes.
Référence des propriétés internes : ClusterSpanner, ClusterSpannerBeacon, Cluster_spanner_engraver.
Problèmes connus et avertissements
Les expressions musicales du type << { g8 e8 } a4 >>
ne
seront pas imprimées de façon acceptable. utilisez plutôt
<g a>8 <e a>8
.
Dans la mesure où un cluster ne possède pas de hampe, il n’y a aucun moyen d’en connaître la durée ; cependant la longueur du signe imprimé dépend directement de la durée affectée aux accords qui le définissent.
Seul un silence peut séparer deux clusters.
Les clusters ne sont pas reproduits en MIDI.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Clusters ] | [ Plus haut: Notes simultanées ] | [ Polyphonie sur une portée > ] |
1.5.2 Plusieurs voix
Polyphonie sur une portée | ||
Styles de voix | ||
Résolution des collisions | ||
Regroupement automatique de parties | ||
Saisie de musique en parallèle |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Plusieurs voix ] | [ Plus haut: Plusieurs voix ] | [ Styles de voix > ] |
Polyphonie sur une portée
Instanciation explicite des voix
La manière la plus facile d’entrer des fragments avec plus d’une voix sur une portée est est la suivante :
\new Staff << \new Voice = "first" { \voiceOne r8 r16 g e8. f16 g8[ c,] f e16 d } \new Voice= "second" { \voiceTwo d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. } >>
Vous constaterez que les voix sont créées explicitement et qu’elles
sont nommées. Les commandes \voiceOne
… \voiceFour
déterminent les voix de telle sorte que les première et troisième
auront des hampes vers le haut, et les deuxième et quatrième vers le
bas. D’utre prt, les notes des troisièmre et quatrième voix seront
quelque peu décalées, tout comme leurs silences, afin d’éviter les
collisions. La commande \oneVoice
permet de retrouver les
réglages par défaut.
Polyphonie temporaire
Un fragment temporairement polyphonique se construit de la manière suivante :
<< { \voiceOne ... } \new Voice { \voiceTwo ... } >> \oneVoice
En fait, la première expression d’une polyphonie temporaire reste dans
le même contexte Voice
que celui existant auparavant et qui
perdurera àprès ce fragment. Les autres expressions entre doubles
chevrons seront assignées à des voix temporaires distinctes. C’est la
raison pour laquelle les paroles qui suivaient la voix avant la
polyphonie continueront à le faire durant ce passage polyphonique et
après lui.
<< \new Voice = "melody" { a4 << { \voiceOne g f } \new Voice { \voiceTwo d2 } >> \oneVoice e4 } \new Lyrics \lyricsto "melody" { This is my song. } >>
Vous remarquerez que les commandes \voiceOne
et \voiceTwo
permettent d’obtenir des réglages différents pour chacune des voix.
La construction avec un double antislash
Une construction de la forme << {...} \\ {...} >>
, dans
laquelle plusieurs expressions sont séparées par des doubles obliques
inversées, se comporte différemment de celle sans séparateurs :
tous les membres de cette contruction seront assignés à de
nouveaux contextes de voix. Ces contextes de voix, créés implicitement,
portent les noms "1"
, "2"
, etc. Dans chacun de ces
contextes, la direction verticale des liaisons, hampes, etc. est réglée
de manière appropriée. En voici un exemple :
<< { r8 r16 g e8. f16 g8[ c,] f e16 d } \\ { d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. } >>
Cette syntaxe peut être utilisée dans la mesure où la création puis la
disparition de voix temporaires sont sans conséquence. Les réglages de
ces voix créées implicitement sont les même que si elles avaient été
créées à l’aide des commandes \voiceOne
à \voiceFour
, dans
leur ordre d’apparition.
Dans l’exemple qui suit, la voix intermédiaire à des hampes vers le
haut. Nous la plaçons donc en troisième position, de telle sorte
qu’elle adopte les réglages de \voiceThree
qui correspondent à ce
que nous voulons. Grâce à des espaces invisibles, nous évitons de
surcharger la portée avec des demis soupirs.
<< { r8 g g g g f16 ees f8 d } \\ { ees,8 r ees r d r d r } \\ { d'8 s c s bes s a s } >>
En dehors des cas les plus simples, nous vous invitons à toujours créer les contextes de voix de manière explicite. Voir à ce sujet Contextes et graveurs et Instanciation explicite des voix.
Identité rythmique
Lorsque l’on doît saisir des fragments de musique parallèle qui ont le même rythme, on peut les combiner dans un contexte de voix unique et par voie de conséquence former des accords. Il suffit pour cela de les regrouper dans une construction de musique simultanée simple au sein d’une voix explicite :
\new Voice << { e4 f8 d e16 f g8 d4 } { c4 d8 b c16 d e8 b4 } >>
Prenez garde que les différents éléments doivent impérativement avoir la même structure rythmique, sous peine de ligature aléatoire et de messages d’avertissement.
Commandes prédéfinies
\voiceOne
,
\voiceTwo
,
\voiceThree
,
\voiceFour
,
\oneVoice
.
Voir aussi
Manuel d’initiation : Les voix contiennent la musique, Instanciation explicite des voix.
Manuel de notation : Portées de percussion, Silences invisibles, Hampes.
Morceaux choisis : Simultaneous notes.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Polyphonie sur une portée ] | [ Plus haut: Plusieurs voix ] | [ Résolution des collisions > ] |
Styles de voix
Opter pour des couleurs et des têtes de notes spécifiques selon la voix permet de les identifier plus facliement :
<< { \voiceOneStyle d4 c2 b4 } \\ { \voiceTwoStyle e,2 e } \\ { \voiceThreeStyle b2. c4 } \\ { \voiceFourStyle g'2 g } >>
La commande \voiceNeutralStyle
permet de revenir à la
présentation normale.
Commandes prédéfinies
\voiceOneStyle
,
\voiceTwoStyle
,
\voiceThreeStyle
,
\voiceFourStyle
,
\voiceNeutralStyle
.
Voir aussi
Manuel d’initiation : J'entends des Voix, @ref{Autres sources d'information}.
Morceaux choisis : Simultaneous notes.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Styles de voix ] | [ Plus haut: Plusieurs voix ] | [ Regroupement automatique de parties > ] |
Résolution des collisions
Les notes de hauteur identique appartenant à des voix différentes, même si leur hampe sont opposées, verront leur tête automatiquement fusionnées. Les notes dont la tête diffère ou bien qui ont la hampe dans la même direction ne seront pas automatiquement fusionnées. Les silences, lorsqu’ils sont dans une autre voix et à l’opposé des hampes seront décalés verticalement.
<< { c8 d e d c d c4 g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Cependant, vous pouvez fusionner une tête de blanche avec une tête de croche :
<< { \mergeDifferentlyHeadedOn c8 d e d c d c4 g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
De même, vous pouvez fusionner les têtes de notes pointées et non-pointées :
<< { \mergeDifferentlyHeadedOn \mergeDifferentlyDottedOn c8 d e d c d c4 g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Lorsque trois notes ou plus s’agglutinent dans un même empilement,
\mergeDifferentlyHeadedOn
ne peut mener à bien la fusion des deux
notes qui devraient l’être. Pour obtenir une fusion optimale, appliquez
un décalage (\shift
) à la note qui ne devrait pas fusionner.
Ici, on applique un \shiftOn
pour décaler le sol de
l’empilement ; le rendement de \mergeDifferentlyHeadedOn
est
alors comme il faut.
<< { \mergeDifferentlyHeadedOn \mergeDifferentlyDottedOn c8 d e d c d c4 \shiftOn g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Les commandes \shiftOn
, \shiftOnn
, et \shiftOnnn
déterminent le niveau de décalage des accords de la voix en cours.
Les voix externes – habituellement, les voix une et deux – ont
\shiftOff
, alors que les voix internes – trois et quatre – ont
\shiftOn
. \shiftOnn
et \shiftOnnn
sont des niveaux
supplémentaires de décalage.
Les têtes de notes ne seront fusionnées que dans la mesure où leur hampe sont opposées.
Commandes prédéfinies
\mergeDifferentlyDottedOn
,
\mergeDifferentlyDottedOff
,
\mergeDifferentlyHeadedOn
,
\mergeDifferentlyHeadedOff
.
\shiftOn
,
\shiftOnn
,
\shiftOnnn
,
\shiftOff
.
Morceaux choisis
Ajout de voix pour éviter les collisions
Dans certains cas de musique polyphonie complexe, une voix
supplémentaire peut permettre d’éviter les risques de collision.
Lorsque quatre voix parallèles ne suffisent pas, la fonction Scheme
context-spec-music
permet d’ajouter des d’autres voix.
voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice) \relative c'' { \time 3/4 \key d \minor \partial 2 << { \voiceOne a4. a8 e'4 e4. e8 f4 d4. c8 } \\ { \voiceThree f,2 bes4 a2 a4 s2 } \\ { \voiceFive s2 g4 g2 f4 f2 } \\ \bar "||"{ \voiceTwo d2 d4 cis2 d4 bes2 } >> }
Décalage horizontal forcé
Quand LilyPond est dépassé, la propriété force-hshift
de l’objet
NoteColumn
, et des silences à hauteur déterminée, peuvent
s’avérer utiles pour dicter au programme les choix de placement. On
travaille ici en espace de portée.
\relative c' << { <d g>2 <d g> } \\ { <b f'>2 \once \override NoteColumn #'force-hshift = #1.7 <b f'>2 } >>
Voir aussi
Glossaire musicologique : polyphony.
Manuel d’initiation : Multiple notes at once, Voices contain music, Collisions of objects.
Morceaux choisis : Simultaneous notes.
Référence des propriétés internes : NoteColumn, NoteCollision, RestCollision.
Problèmes connus et avertissements
Il n’y a aucune prise en charge des agrégats dans lesquels une même note apparaît avec différentes altérations. Il est conseillé d’avoir recours aux enharmoniques, ou d’utiliser la notation spécifique de cluster — voir Clusters.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Résolution des collisions ] | [ Plus haut: Plusieurs voix ] | [ Saisie de musique en parallèle > ] |
Regroupement automatique de parties
Le regroupement automatique de parties vous permet de fusionner deux pupitres sur une seule portée, ceci dans le but de créer des partitions d’orchestre. Lorsque les deux parties sont identiques sur une certaine durée, une seule s’affiche. Lorsqu’elles diffèrent, deux voix séparées apparaissent, avec des hampes dont la direction est gérée automatiquement. Vous pouvez aussi identifier et faire ressortir les solos et parties a due.
Voici la syntaxe qui permet de combiner des parties :
\partcombine expression_musicale_1 expression_musicale_2
L’exemple suivant illustre les fonctionnalités élémentaires du combinateur de parties : positionner les parties sur une portée, gérer la direction des hampes et de la polyphonie. Les identificateurs sont les mêmes pour la combinaison que pour les parties séparées.
instrumentOne = \relative c' { c4 d e f R1 d'4 c b a b4 g2 f4 e1 } instrumentTwo = \relative g' { R1 g4 a b c d c b a g f( e) d e1 } << \new Staff \instrumentOne \new Staff \instrumentTwo \new Staff \partcombine \instrumentOne \instrumentTwo >>
Les notes de la troisième mesure n’apparaîssent qu’une seule fois,
alors qu’elles ont été spécifiés deux fois (une fois dans chacune des
parties). La direction des hampes et des liaisons de tenue ou de phrasé
est gérée automatiquement, selon qu’il s’agisse d’un solo ou d’un
unisson. La première partie, dont le contexte s’appellera one
,
aura toujours ses hampes dirigées vers le haut et sera notée « Solo »,
alors que la deuxième, appelée two
, aura des hampes vers le bas
et sera notée « Solo II ». Les parties à l’unisson seront
estampillées d’un « a2 » par défaut.
LilyPond interprète dans un contexte Voice
les arguments fournis
à \partcombine
. Si vous travaillez avec des octaves relatives,
spécifiez \relative
dans chacune des expressions musicales, comme
ceci :
\partcombine \relative … expression_musicale_1 \relative … expression_musicale_2
Une section \relative
à l’extérieur du \partcombine
restera
sans effet sur les hauteurs de expression_musicale_1 ou de
expression_musicale_2.
Morceaux choisis
Combinaison de deux parties sur une même portée
L’outil de combinaison de parties (la commande \partcombine
)
permet d’avoir deux parties différentes sur une même portée. LilyPond
ajoute automatiquement des indications textuelles, telles que « solo »
ou « a2 ». Si votre intention n’est que de fusionner les parties, sans
ajouter de texte, assignez faux à la propriété
printPartCombineTexts
. Dans le cas de partitions vocales, et
plus particulièrement d’hymnes, ces « solo/a2 » ne sont d’aucune
utilité, aussi vaut-il mieux les désactiver. Dans le cas où il y aurait
alternance entre solo et tutti, il vaut mieux faire appel
à de la musique polyphonique standard.
Voici trois moyens d’imprimer deux parties sur un même portée : en
polyphonie normale, avec \partcombine
sans indication
supplémentaire, et avec \partcombine
commentée.
musicUp = \relative c'' { \time 4/4 a4 c4.( g8) a4 | g4 e' g,( a8 b) | c b a2. } musicDown = \relative c'' { g4 e4.( d8) c4 | r2 g'4( f8 e) | d2 \stemDown a } \score { << << \new Staff { \set Staff.instrumentName = #"Standard polyphony" << \musicUp \\ \musicDown >> } \new Staff \with { printPartCombineTexts = ##f } { \set Staff.instrumentName = #"PartCombine without texts" \partcombine \musicUp \musicDown } \new Staff { \set Staff.instrumentName = #"PartCombine with texts" \partcombine \musicUp \musicDown } >> >> \layout { indent = 6.0\cm \context { \Score \override SystemStartBar #'collapse-height = #30 } } }
Modification des indications de parties combinées
Lorsque vous regroupez automatiquement des parties, vous pouvez modifier le texte qui sera affiché pour les solos et pour les parties à l’unisson :
\new Staff << \set Staff.soloText = #"girl" \set Staff.soloIIText = #"boy" \set Staff.aDueText = #"together" \partcombine \relative c'' { g4 g r r a2 g } \relative c'' { r4 r a( b) a2 g } >>
Voir aussi
Glossaire musicologique : a due, part.
Manuel de notation : Écriture de parties séparées.
Morceaux choisis : Simultaneous notes.
Référence des propriétés internes : PartCombineMusic, Voice.
Problèmes connus et avertissements
\partcombine
ne prend en charge que deux voix.
Lorsque printPartCombineTexts
est actif et que les deux voix
jouent souvent les mêmes notes, le combinateur peut afficher a2
plus d’une fois par mesure.
\partcombine
ne peut s’inscrire dans un bloc \times
.
\partcombine
ne peut s’inscrire dans un bloc \relative
.
En interne, \partcombine
interprète les deux arguments en tant
que Voice
s, dénommées one
et two
, puis décide de
quand les parties seront fusionnées. Par conséquent, si les arguments
changent pour d’autres noms de contexte
Voice, les
événements qu’ils contiendraient seront ignorés. De la même manière, le
combinateur n’est pas conçu pour travailler avec des paroles ; il
s’arrête dès qu’il est explicitement fait appel à l’une des voix pour y
attacher des paroles.
\partcombine
n’examine que l’attaque des notes. Il n’est donc
pas en mesure de déterminer si une note attaquée précédemment est enore
jouée ou non, ce qui peut engendrer quelques problèmes.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Regroupement automatique de parties ] | [ Plus haut: Plusieurs voix ] | [ Notation sur la portée > ] |
Saisie de musique en parallèle
On peut écrire plusieurs voix de façon entremêlée. La fonction
\parallelMusic
prend en charge une liste des variables à créer,
ainsi qu’une expression musicale. Le contenu des différentes mesures de
l’expression musicale deviennent les valeurs des variables respectives
que vous pourrez ensuite utiliser pour imprimer la partition.
Note : Les contrôles de barre de mesure |
sont obligatoires et
le mesures doivent être de longueur identique.
\parallelMusic #'(voiceA voiceB voiceC) { % Bar 1 r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' | r16 e'8.~ e'4 r16 e'8.~ e'4 | c'2 c'2 | % Bar 2 r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' | r16 d'8.~ d'4 r16 d'8.~ d'4 | c'2 c'2 | } \new StaffGroup << \new Staff << \voiceA \\ \voiceB >> \new Staff { \clef bass \voiceC } >>
Vous pouvez travailler en mode relatif. Notez cependant que la commande
\relative
n’apparaît pas au sein du bloc \parallelMusic
.
Le calcul des hauteurs relatives s’effectue voix par voix, et non au fil
des lignes saisies ; en d’autre termes, les notes de la voiceA
ignorent tout de celles de la voiceB
.
\parallelMusic #'(voiceA voiceB voiceC) { % Bar 1 r8 g16 c e g, c e r8 g,16 c e g, c e | r16 e8.~ e4 r16 e8.~ e4 | c2 c | % Bar 2 r8 a,16 d f a, d f r8 a,16 d f a, d f | r16 d8.~ d4 r16 d8.~ d4 | c2 c | } \new StaffGroup << \new Staff << \relative c'' \voiceA \\ \relative c' \voiceB >> \new Staff \relative c' { \clef bass \voiceC } >>
Ceci fonctionne bien avec la musique pour piano. L’exemple suivant affecte quatre mesures à quatre variables :
global = { \key g \major \time 2/4 } \parallelMusic #'(voiceA voiceB voiceC voiceD) { % Bar 1 a8 b c d | d4 e | c16 d e fis d e fis g | a4 a | % Bar 2 e8 fis g a | fis4 g | e16 fis g a fis g a b | a4 a | % Bar 3 ... } \score { \new PianoStaff << \new Staff { \global << \relative c'' \voiceA \\ \relative c' \voiceB >> } \new Staff { \global \clef bass << \relative c \voiceC \\ \relative c \voiceD >> } >> }
Voir aussi
Manuel d’initiation : Organisation du code source avec des variables.
Morceaux choisis : Simultaneous notes.
1.6 Notation sur la portée
Cette section aborde les détails de gravure de la portée, la réalisation de partitions comprenant plusieurs portées et l’ajout d’indications globales d’exécution, présentes sur certaines portées seulement.
1.6.1 Gravure des portées | ||
1.6.2 Modification de portées individuelles | ||
1.6.3 Écriture de parties séparées |
1.6.1 Gravure des portées
Nous allons voir ici comment créer des portées et comment les regrouper.
Initialisation de nouvelles portées | ||
Regroupement de portées | ||
Imbrication de regroupements de portées |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Gravure des portées ] | [ Plus haut: Gravure des portées ] | [ Regroupement de portées > ] |
Initialisation de nouvelles portées
Les portées – en anglais : staff (staves au
pluriel) – sont créées à l’aide des commandes \new
ou
\context
. Pour de plus amples détails, consultez
Création d’un contexte.
Le contexte de portée standard s’appelle Staff
:
\new Staff { c4 d e f }
Le contexte DrumStaff
crée une portée à cinq lignes correspondant
à une batterie traditionnelle et chacun des instruments est représenté
par un symbole spécifique. Les éléments sont saisis en mode batterie,
initialisé par la commande \drummode
, chaque composante étant
spécifiée par son nom. Pour de plus amples détails, consultez
Portées de percussion.
\new DrumStaff { \drummode { cymc hh ss tomh } }
Un RhythmicStaff
est composé d’une portée à ligne unique chargée
de présenter les valeurs rythmiques saisies. Seules sont imprimées les
durées. Pour de plus amples détails, consultez
Gravure de lignes rythmiques.
\new RhythmicStaff { c4 d e f }
Un TabStaff
crée une portée de tablature correpondant aux six
cordes d’une guitare standard. Pour de plus amples détails, consultez
Tablatures par défaut.
\new TabStaff { c4 d e f }
Lilypond dispose aussi de deux contextes dédiés à la musique ancienne :
MensuralStaff
et VaticanaStaff
. Ils sont abordés plus en
détails au chapitre Contextes prédéfinis.
Le contexte GregorianTranscriptionStaff
permet d’obtenir des
éditions modernes du grégorien. Bien entendu, il est dépourvu de barres
de mesure.
\new GregorianTranscriptionStaff { c4 d e f e d }
Vous pourrez toujours définir d’autres contextes de portée selon vos besoins, en suivant les indications fournies au chapitre Définition de nouveaux contextes.
Voir aussi
Glossaire musicologique : staff, staves.
Manuel de notation : Création d’un contexte, Portées de percussion, Gravure de lignes rythmiques, Tablatures par défaut, Contextes prédéfinis, Symbole de la portée, Contextes du chant grégorien, Les contextes de la musique mensurale, Définition de nouveaux contextes.
Morceaux choisis : Staff notation.
Référence des propriétés internes : Staff, DrumStaff, GregorianTranscriptionStaff, RhythmicStaff, TabStaff, MensuralStaff, VaticanaStaff, StaffSymbol.
Regroupement de portées
LilyPond dispose de différents contextes permettant de regrouper des portées individuelles et d’obtenir ainsi des « systèmes ». Chacun de ces contextes définira le style de regoupement, avec son signe particulier en début de portée et ses règles de gestion des barres de mesure.
Lorsqu’aucun contexte particulier n’est spécifié, les propriétés suivantes s’appliqueront par défaut : les portées du groupe ne sont pas reliées, hormis par une simple ligne verticale en début de ligne, et les barres de mesure sont indépendantes.
<< \new Staff { c1 c } \new Staff { c1 c } >>
Dans un StaffGroup
, le groupe de portées est signifié par un
crochet, et les barres de mesure sont d’un seul tenant.
\new StaffGroup << \new Staff { c1 c } \new Staff { c1 c } >>
Dans un ChoirStaff
, le groupe de portées est signifié par un
crochet sur la gauche, et les barres de mesure sont individuelles.
\new ChoirStaff << \new Staff { c1 c } \new Staff { c1 c } >>
Dans un GrandStaff
, le groupe de portées est signifié par une
accolade sur la gauche, et les barres de mesure sont d’un seul tenant.
\new GrandStaff << \new Staff { c1 c } \new Staff { c1 c } >>
Le contexte PianoStaff
est indentique au GrandStaff
, sauf
qu’il gère automatiquement l’affichage du nom d’instrument – voir
Noms d’instrument pour plus de détails.
\new PianoStaff << \set PianoStaff.instrumentName = #"Piano" \new Staff { c1 c } \new Staff { c1 c } >>
Les barres de mesure au début de chaque système adoptent l’un des styles
SystemStartBar
, SystemStartBrace
ou
SystemStartBracket
. Dans chaque contexte, seul l’un de
ces styles est utilisé, et c’est la propriété
systemStartDelimiter
qui détermine lequel. Un quatrième style,
SystemStartSquare
, doit quant à lui être spécifié de manière
explicite.
Vous pouvez aussi créer vos propres contextes de regroupement, comme l’explique Définition de nouveaux contextes.
Morceaux choisis
Indication de regroupement de portées par un rectangle
Un regroupement de portées sera indiqué par un simple rectangle
– SystemStartSquare
– en début de ligne dès lors que vous le
mentionnerez explicitement au sein d’un contexte StaffGroup
ou
ChoirStaffGroup
.
\score { \new StaffGroup { << \set StaffGroup.systemStartDelimiter = #'SystemStartSquare \new Staff { c'4 d' e' f' } \new Staff { c'4 d' e' f' } >> } }
Indicateur de regroupement et portée unique
Lorsque, dans des regoupements de type ChoirStaff
ou
StaffGroup
, une seule portée est active, aucune indication n’est
donnée en début de ligne. Surcharger la propriété adéquate permet de
modifier ce comportement par défaut.
Notez bien que dans le cas des PianoStaff
et GrandStaff
,
pour lesquels le délimiteur de système est une accolade et non un
crochet, il ne s’agit pas de la même propriété – voir le deuxième
système de l’exemple.
\markup \left-column { \score { \new StaffGroup << % Must be lower than the actual number of staff lines \override StaffGroup.SystemStartBracket #'collapse-height = #1 \override Score.SystemStartBar #'collapse-height = #1 \new Staff { c'1 } >> \layout { } } \null \score { \new PianoStaff << \override PianoStaff.SystemStartBrace #'collapse-height = #1 \override Score.SystemStartBar #'collapse-height = #1 \new Staff { c'1 } >> \layout { } } }
Présentation à l’ancienne (barres de mesure entre les portées)
En musique mensurale, les barres de mesure ne traversent pas les
portées. Pour obtenir ce résultat avec un StaffGroup
plutôt
qu’en utilisant un ChoirStaff
, il faudra rendre « transparentes »
les portions de barre qui recouvrent les portées.
global = { \override Staff.BarLine #'transparent = ##t s1 s % the final bar line is not interrupted \revert Staff.BarLine #'transparent \bar "|." } \new StaffGroup \relative c'' { << \new Staff { << \global { c1 c } >> } \new Staff { << \global { c c } >> } >> }
Voir aussi
Glossaire musicologique : brace, bracket, grand staff.
Manuel de notation : Noms d’instrument, Définition de nouveaux contextes.
Morceaux choisis : Staff notation.
Référence des propriétés internes : Staff, StaffGroup, ChoirStaff, GrandStaff, PianoStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.
Imbrication de regroupements de portées
Les accolades et crochets qui délimitent les systèmes peuvent être imbriqués en profondeur. Chaque niveau inférieur aura son propre délimiteur, en plus de celui du niveau supérieur.
\new StaffGroup << \new Staff { c2 c | c2 c } \new StaffGroup << \new Staff { g2 g | g2 g } \new StaffGroup \with { systemStartDelimiter = #'SystemStartSquare } << \new Staff { e2 e | e2 e } \new Staff { c2 c | c2 c } >> >> >>
Vous pouvez aussi créer vos propres contextes d’imbrication, comme l’explique Définition de nouveaux contextes.
Morceaux choisis
Imbrications de regroupements de portées
La propriété systemStartDelimiterHierarchy
permet de créer des
regroupements imbriqués complexes. La commande
\set StaffGroup.systemStartDelimiterHierarchy
prend en
argument la liste alphabétique des sous-groupes à hiérarchiser. Chaque
sous-groupe peut être affublé d’un délimiteur particulier. Chacun des
regroupements intermédiaires doit être borné par des parenthèses. Bien
que des éléments de la liste puissent être omis, le premier délimiteur
embrassera toujours l’intégralité des portées. Vous disposez des quatre
délimiteurs SystemStartBar
, SystemStartBracket
,
SystemStartBrace
et SystemStartSquare
.
\new StaffGroup \relative c'' << \set StaffGroup.systemStartDelimiterHierarchy = #'(SystemStartSquare (SystemStartBrace (SystemStartBracket a (SystemStartSquare b) ) c ) d) \new Staff { c1 } \new Staff { c1 } \new Staff { c1 } \new Staff { c1 } \new Staff { c1 } >>
Voir aussi
Manuel de notation : Regroupement de portées, Noms d’instrument, Définition de nouveaux contextes.
Morceaux choisis : Staff notation.
Référence des propriétés internes : StaffGroup, ChoirStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.
1.6.2 Modification de portées individuelles
Cette section explique le réglage de la gravure de chaque portée, comme la taille de portée ou le nombre de lignes ; sont aussi décrits la suspension et la reprise de portées et les portées d’ossia.
Symbole de la portée | ||
Portées d’ossia | ||
Masquage de portées |
Symbole de la portée
Les notes, nuances, etc. sont regroupées dans un assemblage de lignes
horizontales, que l’on nomme la portée (en anglais staff, et
staves au pluriel). Dans LilyPond, ces lignes sont dessinées au
moyen d’un objet de mise en forme (grob) à part entière, nommé
StaffSymbol
– symbole de portée. Modifier les propriétés d’un
StaffSymbol
changera l’apparence de la portée, dès lors qu’elles
auront été définies avant de créer la portée en question.
Vous pouvez modifier le nombre de lignes d’une portée. Néanmoins, la position de la clef et celle du do médium demanderont parfois un ajustement afin d’être en phase avec cette nouvelle portée. Pour plus d’explications, reportez-vous aux exemples du chapitre Clefs.
\new Staff \with { \override StaffSymbol #'line-count = #3 } { d4 d d d }
Lorsque vous modifierez l’épaisseur des lignes, gardez à l’esprit que les lignes supplémentaires et les hampes seront aussi modifiées. En effet, elles dépendent directement de l’épaisseur des lignes de la portée.
\new Staff \with { \override StaffSymbol #'thickness = #3 } { e4 d c b }
L’épaisseur des lignes supplémentaires (ledger lines) peut être déterminée indépendamment des lignes de la portée. Dans l’exemple suivant, les deux nombres constituent des coefficients multiplicateurs de l’épaisseur de la ligne. Ils sont fournis en argument pour déterminer l’épaisseur des lignes supplémentaires.
\new Staff \with { \override StaffSymbol #'ledger-line-thickness = #'(1 . 0.2) } { e4 d c b }
Modifier l’équidistance des lignes de la portée affectera aussi les lignes supplémentaires.
\new Staff \with { \override StaffSymbol #'staff-space = #1.5 } { a4 b c d }
Vous trouverez de plus amples détails sur les propriétés du
StaffSymbol
au chapitre
staff-symbol-interface.
Les propriétés d’une portée peuvent être modifiées en cours de partition
à l’aide des commandes \stopStaff
et \startStaff
:
c2 c \stopStaff \override Staff.StaffSymbol #'line-count = #2 \startStaff b2 b \stopStaff \revert Staff.StaffSymbol #'line-count \startStaff a2 a
En règle générale, \startStaff
et \stopStaff
permettent
d’entamer puis clôturer une portée n’importe où dans une partition.
c4 b a2 \stopStaff b4 c d2 \startStaff e4 d c2
Commandes prédéfinies
\startStaff
,
\stopStaff
.
Morceaux choisis
Empâtement de certaines lignes d’une portée
Vous pourriez avoir envie, dans un but pédagogique, de rendre certaines
lignes d’une portée plus épaisses que les autres, comme la ligne médiane
ou bien pour mettre en exergue la ligne portant la clé de sol. Il
suffit pour cela d’ajouter une ligne qui sera accolée à celle qui doît
être mise en évidence, grâce à la propriété line-positions
de
l’objet StaffSymbol
.
{ \override Staff.StaffSymbol #'line-positions = #'(-4 -2 -0.2 0 0.2 2 4) d'4 e' f' g' }
Voir aussi
Glossaire musicologique : line, ledger line, staff.
Manuel de notation : Clefs.
Morceaux choisis : Staff notation.
Référence des propriétés internes : StaffSymbol, staff-symbol-interface.
Portées d’ossia
Une portée d’ossia – ou de variante – s’obtient en créant, à l’endroit approprié, une nouvelle portée simultanée :
\new Staff \relative c'' { c4 b d c << { c4 b d c } \new Staff { e4 d f e } >> c4 b c2 }
L’exemple ci-dessus n’est probablement pas ce qui vous conviendra le plus. Afin que cette ossia se place au-dessus de la portée à laquelle elle se réfère, étant par ailleurs dépourvue de métrique et de clef, et d’une taille légèrement inférieure, vous devrez avoir recours à quelques retouches. Le manuel d’initiation aborde une technique particulière pour obternir ce résultat au chapitre Expressions musicales imbriquées.
L’exemple qui suit utilise, pour aligner la portée d’ossia, la propriété
alignAboveContext
. Cette méthode est tout à fait appropriée
lorsqu’il y a un nombre restreint d’ossias.
\new Staff = main \relative c'' { c4 b d c << { c4 b d c } \new Staff \with { \remove "Time_signature_engraver" alignAboveContext = #"main" fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) \override StaffSymbol #'thickness = #(magstep -3) firstClef = ##f } { e4 d f e } >> c4 b c2 }
Dans le cas où de nombreux et courts fragments d’ossia affecteraient
une même portée, il est judicieux de créer un contexte Staff
vide
auquel sera attribué un identificateur. Il suffira alors, pour
entamer un fragment d’ossia, de faire appel à ce contexte grâce
aux commandes \startStaff
et \stopStaff
. Vous vous
rendrez compte à l’utilisation des avantages que procure cette façon de
procéder, bien plus que dans l’exemple suivant.
<< \new Staff = ossia \with { \remove "Time_signature_engraver" \override Clef #'transparent = ##t fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) \override StaffSymbol #'thickness = #(magstep -3) } { \stopStaff s1*6 } \new Staff \relative c' { c4 b c2 << { e4 f e2 } \context Staff = ossia { \startStaff e4 g8 f e2 \stopStaff } >> g4 a g2 \break c4 b c2 << { g4 a g2 } \context Staff = ossia { \startStaff g4 e8 f g2 \stopStaff } >> e4 d c2 } >>
Vous pourriez aussi recourir à la commande
\RemoveEmptyStaffContext
pour créer votre portée d’ossia.
Cependant, cette méthode reste limitée à l’apparition de ces ossias en
début de ligne. Pour plus d’information au sujet de la commande
\RemoveEmptyStaffContext
, reportez-vous au chapitre
Masquage de portées.
<< \new Staff = ossia \with { \remove "Time_signature_engraver" \override Clef #'transparent = ##t fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) \override StaffSymbol #'thickness = #(magstep -3) } \relative c'' { R1*3 c4 e8 d c2 } \new Staff \relative c' { c4 b c2 e4 f e2 g4 a g2 \break c4 b c2 g4 a g2 e4 d c2 } >> \layout { \context { \RemoveEmptyStaffContext \override VerticalAxisGroup #'remove-first = ##t } }
Morceaux choisis
Positionnement d’une ossia et des paroles
Cet exemple illustre la manière de positionner une portée d’ossia et
des paroles à l’aide des propriétés de contexte alignBelowContext
et alignAboveContext
.
\paper { ragged-right = ##t } \relative c' << \new Staff = "1" { c4 c s2 } \new Staff = "2" { c4 c s2 } \new Staff = "3" { c4 c s2 } { \skip 2 << \lyrics { \set alignBelowContext = #"1" lyrics4 below } \new Staff \with { alignAboveContext = #"3" fontSize = #-2 \override StaffSymbol #'staff-space = #(magstep -2) \remove "Time_signature_engraver" } { \times 4/6 { \override TextScript #'padding = #3 c8[^"ossia above" d e d e f] } } >> } >>
Voir aussi
Glossaire musicologique : ossia, staff, Frenched staff.
Manuel d’initiation : Expressions musicales imbriquées, Taille des objets, Longueur et épaisseur des objets.
Manuel de notation : Masquage de portées.
Morceaux choisis : Staff notation.
Référence des propriétés internes : StaffSymbol.
Masquage de portées
Désactiver le graveur Staff_symbol_engraver
dans un contexte
Staff
permet de masquer des lignes. La commande
\stopStaff
aura le même effet.
\new Staff \with { \remove "Staff_symbol_engraver" } \relative c''' { a8 f e16 d c b a2 }
L’instruction \RemoveEmptyStaffContext
placée dans un bloc
\layout
aura pour effet de masquer toute portée qui ne contient
rien. Dans les partitions d’orchestre, les portées qui n’ont que des
silences sont habituellement masquées afin de gagner de la place. Ce
style d’édition s’appelle en anglais « French Score ».
Cette fonctionnalité masque et supprime toutes les portées vides d’une
partition, hormis celles du premièr système.
Note : Une portée est considérée comme vide dès lors qu’elle ne contient que des silences multimesures, des silences invisibles ou d’espacement (les skip) ou bien une combinaison de ces éléments.
\layout { \context { \RemoveEmptyStaffContext } } \relative c' << \new Staff { e4 f g a \break b1 \break a4 b c2 } \new Staff { c,4 d e f \break R1 \break f4 g c,2 } >>
\RemoveEmptyStaffContext
permet aussi de gérer des fragments
d’ossia attachés à une portée. Pour plus de détails, voir
Portées d’ossia.
La commande \AncientRemoveEmptyStaffContext
permet de masquer des
portées vides dans les contextes de musique ancienne. Pour des
contextes RhythmicStaff
, il faudra utiliser
\RemoveEmptyRhythmicStaffContext
.
Commandes prédéfinies
\RemoveEmptyStaffContext
,
\AncientRemoveEmptyStaffContext
,
\RemoveEmptyRhythmicStaffContext
.
Morceaux choisis
Masquage de la première ligne si elle est vide
Par défaut, le premier système comportera absolument toutes les portées.
Si vous voulez masquer les portées vides y compris pour le premier
système, vous devrez activer la propriété remove-first
du
VerticalAxisGroup
. Mentionnée dans un bloc \layout
,
cette commande agira de manière globale. Pour qu’elle ne soit effective
que pour une portée individuelle, vous devrez également spécifier le
contexte (Staff
pour qu’il ne concerne que la portée en cours) en
préfixe de la propriété.
La première ligne inférieure du deuxième StaffGroup
est bien
présente, pour la simple raison que le réglage en question ne s’applique
qu’à la portée dans laquelle il a été inscrit.
\layout { \context { \Staff \RemoveEmptyStaves % To use the setting globally, uncomment the following line: % \override VerticalAxisGroup #'remove-first = ##t } } \new StaffGroup << \new Staff \relative c' { e4 f g a \break c1 } \new Staff { % To use the setting globally, comment this line, % uncomment the line in the \layout block above \override Staff.VerticalAxisGroup #'remove-first = ##t R1 \break R } >> \new StaffGroup << \new Staff \relative c' { e4 f g a \break c1 } \new Staff { R1 \break R } >>
Voir aussi
Glossaire musicologique : Frenched staff.
Manuel d’initiation: Visibilité et couleur des objets.
Manuel de notation : Symbole de la portée, Portées d’ossia, Dictée à trous, Silences invisibles, Visibilité des objets.
Morceaux choisis : Staff notation.
Référence des propriétés internes : ChordNames, FiguredBass, Lyrics, Staff, VerticalAxisGroup, Staff_symbol_engraver.
Problèmes connus et avertissements
Supprimer le Staff_symbol_engraver
aura pour effet de masquer les
barres de mesure. Forcer leur visibilité peut entraîner des problèmes
de formattage. En pareil cas il vaut mieux, au lieu de supprimer le
graveur, recourrir aux dérogations suivantes :
\override StaffSymbol #'stencil = ##f \override NoteHead #'no-ledgers = ##t
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Masquage de portées ] | [ Plus haut: Notation sur la portée ] | [ Indications métronomiques > ] |
1.6.3 Écriture de parties séparées
Nous allons voir au fil des lignes qui suivent, comment insérer des indications de tempo ou des noms d’instrument dans une partition. Nous aborderons aussi la citation d’autres voix, et comment la mettre en forme.
Indications métronomiques | ||
Noms d’instrument | ||
Citation d’autres voix | ||
Mise en forme d’une citation |
Indications métronomiques
Le métronome se règle de la manière suivante :
\tempo 4 = 120 c2 d e4. d8 c2
On peut cependant lui préférer du texte :
\tempo "Allegretto" c4 e d c b4. a16 b c4 r4
Lorsque l’on indique à la fois le tempo et le métronome, ce dernier sera indiqué entre parenthèses :
\tempo "Allegro" 4 = 160 g4 c d e d4 b g2
En règle générale, le texte peut être constitué de n’importe quel objet
de type markup
:
\tempo \markup { \italic Faster } 4 = 132 a8-. r8 b-. r gis-. r a-. r
Une simple indication métronomique entre parenthèses s’obtient en fournissant une chaîne vide à l’instruction :
\tempo "" 8 = 96 d4 g e c
Morceaux choisis
Impression du métronome et des repères sous la portée
Les indications de tempo et les marques de repère s’impriment par défaut
au-dessus de la portée. Le fait de régler en conséquence la propriété
direction
des objets MetronomeMark
ou RehearsalMark
les placera au-dessous de la portée.
\layout { ragged-right = ##f } { % Metronome marks below the staff \override Score.MetronomeMark #'direction = #DOWN \tempo 8. = 120 c''1 % Rehearsal marks below the staff \override Score.RehearsalMark #'direction = #DOWN \mark \default c''1 }
Changement de tempo sans indication sur la partition
Vous pouvez indiquer un changement de tempo pour le fichier MIDI sans pour autant l’imprimer. Il suffit alors de le rendre invisible aux interprètes.
\score { \new Staff \relative c' { \tempo 4 = 160 c4 e g b c4 b d c \set Score.tempoHideNote = ##t \tempo 4 = 96 d,4 fis a cis d4 cis e d } \layout { } \midi { } }
Création d’une indication métronomique sous forme d’étiquette
Vous pouvez créer des indications de tempo sous la forme d’étiquettes
textuelles – des objets markup
– notamment des équivalences.
Cependant, elles n’apparaîtront pas dans le fichier MIDI.
\relative c' { \tempo \markup { \concat { ( \smaller \general-align #Y #DOWN \note #"16." #1 " = " \smaller \general-align #Y #DOWN \note #"8" #1 ) } } c1 c4 c' c,2 }
Pour plus de détails, voir Mise en forme du texte.
Voir aussi
Glossaire musicologique : metronome, metronomic indication, tempo indication, metronome mark.
Manuel de notation : Mise en forme du texte, Sortie MIDI.
Morceaux choisis : Staff notation.
Référence des propriétés internes : MetronomeMark.
Noms d’instrument
Dans un conducteur, les noms d’instrument sont portés en regard de
chacune des portées, qu’il s’agisse d’un contexte Staff
ou
d’un PianoStaff
. La première ligne affichera la valeur de
instrumentName
, et les suivantes celle de
shortInstrumentName
.
\set Staff.instrumentName = #"Violin " \set Staff.shortInstrumentName = #"Vln " c4.. g'16 c4.. g'16 \break c1
Le recours à la commande \markup
permet de construire des noms
d’instruments particuliers, tels que
\set Staff.instrumentName = \markup { \column { "Clarinetti" \line { "in B" \smaller \flat } } } c4 c,16 d e f g2
Lorsque plusieurs contextes de portée sont regroupés, les noms
d’instrument, que ce soit sous leur forme développée ou abrégée, sont
par défaut centrés. Si l’un d’entre eux est libellé sur plusieurs
lignes, il faudra recourrir à l’instruction \center-column
:
<< \new Staff { \set Staff.instrumentName = #"Flute" f2 g4 f } \new Staff { \set Staff.instrumentName = \markup \center-column { Clarinet \line { "in B" \smaller \flat } } c4 b c2 } >>
Losque le nom d’un instrument est relativement long, il est judicieux
d’augmenter les retraits – indent – au sein du bloc
\layout
à l’aide des commandes indent
et
short-indent
. Pour plus de plus amples détails sur ces réglages,
reportez-vous au chapitre @ref{Dimensionnement horizontal}.
\layout { indent = 3.0\cm short-indent = 1.5\cm } \relative c'' << \new Staff { \set Staff.instrumentName = #"Alto Flute in G" \set Staff.shortInstrumentName = #"Fl." f2 g4 f \break g4 f g2 } \new Staff { \set Staff.instrumentName = #"Clarinet" \set Staff.shortInstrumentName = #"Clar." c,4 b c2 \break c2 b4 c } >>
Des noms d’instruments peuvent s’utiliser dans d’autres contextes, tels
que GrandStaff
, ChoirStaff
, ou StaffGroup
, dès lors
qu’on leur adjoint le graveur Instrument_name_engraver
. Pour de
plus amples informations sur la manière d’activer ou
désactiver un graveur, voir Modification des greffons de contexte.
Vous pouvez changer le nom d’un instrument en cours de morceau :
\set Staff.instrumentName = #"First" \set Staff.shortInstrumentName = #"one" c1 c c c \break c1 c c c \break \set Staff.instrumentName = #"Second" \set Staff.shortInstrumentName = #"two" c1 c c c \break c1 c c c \break
Lorsqu’un musicien doît changer d’instrument – piccolo et flûte, basson
et contrebasson –, la commande \addInstrumentDefinition
,
couplée à l’instruction \instrumentSwitch
permet de spécifier en
détail les modifications intervenant lors du changement. La commande
\addInstrumentDefinition
prend deux arguments : une chaîne de
caractères qui servira d’identificateur, et une liste d’associations
de valeurs aux propriétés de ce nouvel instrument. Ces définitions
devront être déclarées avant tout autre élément musical. L’instruction
\instrumentSwitch
se placera dans la musique au moment de la
subtitution :
\addInstrumentDefinition #"contrabassoon" #`((instrumentTransposition . ,(ly:make-pitch -1 0 0)) (shortInstrumentName . "Cbsn.") (clefGlyph . "clefs.F") (middleCPosition . 6) (clefPosition . 2) (instrumentCueName . ,(make-bold-markup "cbsn.")) (midiInstrument . "bassoon")) \new Staff \with { instrumentName = #"Bassoon" } \relative c' { \clef tenor \compressFullBarRests c2 g' R1*16 \instrumentSwitch "contrabassoon" c,,2 g \break c,1 ~ | c1 }
Voir aussi
Manuel de notation : @ref{Dimensionnement horizontal}, Modification des greffons de contexte.
Morceaux choisis : Staff notation.
Référence des propriétés internes : InstrumentName, PianoStaff, Staff.
Citation d’autres voix
Il est assez courant qu’une voix soit doublée par une autre. Par exemple, les premiers et seconds violons peuvent jouer les mêmes notes durant un moment. LilyPond gère parfaitement ces situations où une voix est la réplique d’une autre, et vous évite de ressaisir la musique en question.
Avant qu’une partie ne puisse être mentionnée ailleurs, elle doit être
considérée comme reproductible. C’est le but de l’instruction
\addQuote
qui prend en argument une chaîne d’identification et
une expression musicale. Elle se place au niveau le plus haut, c’est à
dire en dehors de tout bloc de musique :
flute = \relative c'' { a4 gis g gis } \addQuote "flute" { \flute }
Au cours d’une partie, des extraits de répliques peuvent être cités en
utilisant la commande \quoteDuring
. Cette commande prend deux
arguments : le nom de la voix reproduite, tel que défini par
\addQuote
, et une expression musicale qui indique la durée de
cette citation – silences invisibles ou multi-mesures. Viendra alors
s’insérer dans l’expression musicale le fragment correspondant de la
voix originelle.
flute = \relative c'' { a4 gis g gis } \addQuote "flute" { \flute } \relative c' { c4 cis \quoteDuring #"flute" { s2 } }
Si l’expression musicale utilisée pour \quoteDuring
contenait
autre chose que du silence, il en résulterait une situation
polyphonique, ce qui n’est pas le but recherché :
flute = \relative c'' { a4 gis g gis } \addQuote "flute" { \flute } \relative c' { c4 cis \quoteDuring #"flute" { c4 b } }
Les citations tiennent compte des transpositions, aussi bien celle de
l’instrument d’origine que celle de la partie où elle intervient, dans
la mesure où elles sont spécifiées par la commande
\transposition
. Voir Instruments transpositeurs pour plus
de détails.
clarinet = \relative c'' { \transposition bes a4 gis g gis } \addQuote "clarinet" { \clarinet } \relative c' { c4 cis \quoteDuring #"clarinet" { s2 } }
Les citations peuvent être « balisées » par un nom particulier afin de les utiliser de différentes manières. Pour de plus amples détails à ce propos, consultez le chapitre Utilisation de balises.
Morceaux choisis
Citation d’une autre voix et transposition
Les citations tiennent compte de la transposition, aussi bien celle de
l’instrument d’origine que celle de la partie où elle intervient. Dans
l’exemple suivant, tous les instruments sont en tonalité de concert et
seront repris par un instrument en fa. Le destinataire de la citation
peut à son tour transposer à l’aide de la commande \transpose
.
En pareil cas, toutes les hauteurs, y compris celle de la citation,
seront transposées.
\addQuote clarinet { \transposition bes \repeat unfold 8 { d'16 d' d'8 } } \addQuote sax { \transposition es' \repeat unfold 16 { a8 } } quoteTest = { % french horn \transposition f g'4 << \quoteDuring #"clarinet" { \skip 4 } s4^"clar." >> << \quoteDuring #"sax" { \skip 4 } s4^"sax." >> g'4 } { \set Staff.instrumentName = \markup { \center-column { Horn \line { in F } } } \quoteTest \transpose c' d' << \quoteTest s4_"up a tone" >> }
Citation d’une autre voix
Les types d’événement pris en charge pour la citation peuvent se régler
avec la propriété quotedEventTypes
. Par défaut, sa valeur est
fixée à (note-event rest-event tie-event beam-event
tuplet-span-event)
, ce qui signifie que seuls les notes, silences,
liaisons, ligatures et nolets seront mentionnés par \quoteDuring
.
Dans l’exemple suivant, le quart de soupir n’est pas reproduit puisqu’il
n’est pas mentionné parmi les quotedEventTypes
.
Pour connaître la liste des types d’événements, reportez-vous au chapitre Music classes de la référence des propriétés internes.
quoteMe = \relative c' { fis4 r16 a8.-> b4\ff c } \addQuote quoteMe \quoteMe original = \relative c'' { c8 d s2 \once \override NoteColumn #'ignore-collision = ##t es8 gis8 } << \new Staff { \set Staff.instrumentName = #"quoteMe" \quoteMe } \new Staff { \set Staff.instrumentName = #"orig" \original } \new Staff \relative c'' << \set Staff.instrumentName = #"orig+quote" \set Staff.quotedEventTypes = #'(note-event articulation-event) \original \new Voice { s4 \set fontSize = #-4 \override Stem #'length-fraction = #(magstep -4) \quoteDuring #"quoteMe" { \skip 2. } } >> >>
Voir aussi
Manuel de notation : Instruments transpositeurs, Utilisation de balises.
Morceaux choisis : Staff notation.
Référence des propriétés internes : QuoteMusic, Voice.
Problèmes connus et avertissements
Seul le contenu de la première Voice
rencontrée dans la
partie marquée d’une commande \addQuote
pourra être retenu. Par
voie de conséquence, musique ne saurait comprendre de \new
ou une instance \context Voice
qui la ferait passer à une autre
voix.
Citer des notes d’ornement ne fonctionne pas, et peut même entraîner un blocage de LilyPond.
Citer des triolets imbriqués peut entraîner un résultat de médiocre qualité.
Dans les versions précédentes de LilyPond (avant 2.11), addQuote
était écrit entièremeent en minuscules : \addquote
.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Citation d'autres voix ] | [ Plus haut: Écriture de parties séparées ] | [ Notation éditoriale > ] |
Mise en forme d’une citation
La section précédente indiquait comment insérer des notes d’une autre
voix. Nous allons maintenant voir une fonction musicale avancée,
\cueDuring
, qui facilite le formatage des petites notes.
Sa syntaxe est :
\cueDuring #origine #voix musique
Des mesures issues de la partie d’origine seront recopiées dans un
contexte de CueVoice
, créé implicitement, et synchronisées avec
musique – habituellement un silence. L’apparition des petites
notes initialise une polyphonie temporaire pour la portée concernée.
L’argument voix détermine si ces petites notes seront
attachées à la première ou à la seconde voix – UP
pour la
première ou DOWN
pour la seconde.
oboe = \relative c'' { r2 r8 d16 f e g f a g8 g16 g g2. } \addQuote "oboe" { \oboe } \new Voice \relative c'' { \cueDuring #"oboe" #UP { R1 } g2 c, }
Dans cet exemple, il était nécessaire de déclarer explicitement le
contexte Voice
, sinon l’intégralité de l’expression musicale se
serait retrouvée dans le contexte CueVoice
.
Le nom de l’instrument qui est répliqué sera imprimé dès lors que vous
définirez la propriété instrumentCueName
du contexte
CueVoice
.
oboe = \relative c''' { g4 r8 e16 f e4 d } \addQuote "oboe" { \oboe } \new Staff \relative c'' << \new CueVoice \with { instrumentCueName = "ob." } \new Voice { \cueDuring #"oboe" #UP { R1 } g4. b8 d2 } >>
Lorsque la citation comporte une étiquette indiquant l’instrument qui
joue, il est judicieux, au moment où la partie originale reprend sa
place, de rappeler l’instrument et d’annuler toute autre modification
introduite par cette citation. D’où l’utilité des commandes
\addInstrumentDefinition
et \instrumentSwitch
. Pour plus
d’information, reportez-vous au chapitre Noms d’instrument.
La commande killCues
permet de supprimer les notes d’une
citation. Ceci est utile lorsque cette citation n’est pas imprimée dans
un premier temps.
flute = \relative c''' { r2 cis2 r2 dis2 } \addQuote "flute" { \flute } \new Voice \relative c'' { \killCues { \cueDuring #"flute" #UP { R1 } g4. b8 d2 } }
L’instruction \transposedCueDuring
est particulièrement adaptée
pour des instrument ayant une tessiture éloignée, comme dans le cas d’un
piccolo cité dans une partie de contrebasson. Sa syntaxe est identique
à celle de \cueDuring
, à ceci près qu’elle nécessite un argument
supplémentaire afin de spécifier la transposition à effectuer. Pour
de plus amples informations sur la transposition, reportez-vous au
chapitre Instruments transpositeurs.
piccolo = \relative c''' { \clef "treble^8" R1 c8 c c e g2 a4 g g2 } \addQuote "piccolo" { \piccolo } cbassoon = \relative c, { \clef "bass_8" c4 r g r \transposedCueDuring #"piccolo" #UP c,, { R1 } c4 r g r } << \new Staff = "piccolo" \piccolo \new Staff = "cbassoon" \cbassoon >>
Les citations peuvent être « balisées » par un nom particulier afin de les utiliser de différentes manières. Pour de plus amples détails à ce propos, consultez le chapitre Utilisation de balises.
Un contexte CueVoice
créé explicitement permet d’afficher des
notes dans une taille plus petite dans le but, par exemple, d’indiquer
des notes alternatives pour une voix un peu plus haute ou basse.
\time 12/8 \key ees \major g4 ees8 f4 g8 \stemDown << { d4. bes4 c8 } \new CueVoice { g'4. f4 ees8 } >> \stemUp d2. d2.
Voir aussi
Manuel de notation : Instruments transpositeurs, Noms d’instrument, Utilisation de balises.
Morceaux choisis : Staff notation.
Référence des propriétés internes : CueVoice, Voice.
Problèmes connus et avertissements
La commande \cueDuring
ne sait pas gérer les collisions de
silence entre les contextes Voice
et CueVoice
.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Mise en forme d'une citation ] | [ Plus haut: Notation musicale générale ] | [ Dans la portée > ] |
1.7 Notation éditoriale
Ce chapitre traite de la manière de modifier l’apparence des notes dans un but pédagogique ou d’analyse.
1.7.1 Dans la portée | ||
1.7.2 Hors de la portée |
1.7.1 Dans la portée
Nous allons voir ici comment mettre en exergue certains éléments à l’intérieur même de la portée.
Indication de la taille de fonte musicale | ||
Doigtés | ||
Dictée à trous | ||
Coloration d’objets | ||
Parenthèses | ||
Hampes |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Dans la portée ] | [ Plus haut: Dans la portée ] | [ Doigtés > ] |
Indication de la taille de fonte musicale
Le plus sûr moyen de régler la taille de la police, quel que soit le
contexte, consiste à définir la propriété fontSize
.
Ceci ne modifiera en rien la taille des différents symboles tels que
ligatures ou liaisons.
Note : En matière de taille des éléments textuels, référez-vous au chapitre Sélection de la fonte et de la taille.
\huge c4.-> d8---3 \large c4.-> d8---3 \normalsize c4.-> d8---3 \small c4.-> d8---3 \tiny c4.-> d8---3 \teeny c4.-> d8---3
En interne, la propriété fontSize
d’un contexte aura pour effet
de définir la propriété font-size
pour tous les objets de
rendu. La valeur de font-size
est un entier représentant la
taille proportionnellement à la hauteur standard de la portée en
cours. Chaque incrément correspond à une augmentation d’environ
12 % de la taille de la police. Un pas de six aboutit exactement
au doublement de la taille. La fonction Scheme magstep
convertit le nombre affecté à font-size
en facteur d’échelle.
Vous pouvez aussi définir directement la propriété font-size
de
manière à n’affecter seulement que certains objets de rendu.
\set fontSize = #3 c4.-> d8---3 \override NoteHead #'font-size = #-4 c4.-> d8---3 \override Script #'font-size = #2 c4.-> d8---3 \override Stem #'font-size = #-5 c4.-> d8---3
Pour changer la taille des symboles musicaux (police Feta), LilyPond met
à l’échelle la fonte dont la taille est la plus proche de la taille
voulue – cf. Définition de la taille de portée. La taille
standard (pour laquelle font-size = #0
) dépend de la hauteur
de la portée. À une portée de 20 points correspond une police de 10
points.
La propriété font-size
ne peut intervenir que pour les objets
qui utilisent des polices, autrement dit ceux qui disposent de
l’interface de rendu font-interface
.
Commandes prédéfinies
\teeny
,
\tiny
,
\small
,
\normalsize
,
\large
,
\huge
.
Voir aussi
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : font-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Indication de la taille de fonte musicale ] | [ Plus haut: Dans la portée ] | [ Dictée à trous > ] |
Doigtés
Les doigtés peuvent être indiqués comme suit : note-chiffre_du_doigt
c4-1 d-2 f-4 e-3
Pour les substitutions de doigts, on a recours à une indication
textuelle (commande \markup
) de doigté
(commande \finger
).
c4-1 d-2 f-4 c^\markup { \finger "2 - 3" }
La commande \thumb
peut être utilisée pour indiquer, par exemple
dans une partition de violoncelle, si une note doit être jouée avec le
pouce (thumb en anglais).
<a_\thumb a'-3>2 <b_\thumb b'-3>
Les doigtés des accords peuvent être saisis note par note, en les indiquant après chaque hauteur de note.
<c-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5>
Les indications de doigtés peuvent se placer au-dessus ou en dessous de la portée – voir Direction et positionnement à ce sujet.
Morceaux choisis
Conrôle du positionnement des doigtés
Le positionnement des doigtés peut être contrôlé de manière très précise.
\relative c' { \set fingeringOrientations = #'(left) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down right up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(left) <c-1>2 \set fingeringOrientations = #'(down) <e-3>2 }
Impression des doigtés à l’intérieur de la portée
L’empilement des indications de doigté se fait par défaut à l’extérieur de la portée. Néanmoins, il est possible d’annuler ce comportement.
\relative c' { <c-1 e-2 g-3 b-5>2 \override Fingering #'staff-padding = #'() <c-1 e-2 g-3 b-5>4 <g'-0> }
Avoiding collisions with chord fingerings
Fingerings and string numbers applied to individual notes will automatically avoid beams and stems, but this is not true by default for fingerings and string numbers applied to the individual notes of chords. The following example shows how this default behavior can be overridden.
\relative c' { \set fingeringOrientations = #'(up) \set stringNumberOrientations = #'(up) \set strokeFingerOrientations = #'(up) % Default behavior r8 <f c'-5>8 <f c'\5>8 <f c'-\rightHandFinger #2 >8 % Corrected to avoid collisions r8 \override Fingering #'add-stem-support = ##t <f c'-5>8 \override StringNumber #'add-stem-support = ##t <f c'\5>8 \override StrokeFinger #'add-stem-support = ##t <f c'-\rightHandFinger #2 >8 }
Voir aussi
Manuel de notation : Direction et positionnement
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : FingeringEvent, fingering-event, Fingering_engraver, New_fingering_engraver, Fingering.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Doigtés ] | [ Plus haut: Dans la portée ] | [ Coloration d'objets > ] |
Dictée à trous
Les notes masquées – ou invisibles ou encore transparentes – sont utiles dans le cadre d’exercices de théorie ou de composition.
c4 d \hideNotes e4 f \unHideNotes g a \hideNotes b \unHideNotes c
Les objets de notation attachés à une note invisible ne seront pas masqués pour autant.
c4( d) \hideNotes e4(\p f)--
Commandes prédéfinies
\hideNotes
,
\unHideNotes
.
Voir aussi
Manuel d’initiation : Visibilité et couleur des objets.
Manuel de notation : Silences invisibles, Visibilité des objets, Masquage de portées.
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : Note_spacing_engraver, NoteSpacing.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Dictée à trous ] | [ Plus haut: Dans la portée ] | [ Parenthèses > ] |
Coloration d’objets
Des objets peuvent être colorisés individuellement. Une listes des noms des couleurs disponibles se trouvent à l’annexe Liste des couleurs.
\override NoteHead #'color = #red c4 c \override NoteHead #'color = #(x11-color 'LimeGreen) d \override Stem #'color = #blue e
L’intégralité de la palette des couleurs définies pour X11 est
accessible par la fonction Scheme x11-color
. Cette fonction
prend en argument une expression symbolique de la forme ’TaraTata
ou bien une chaîne de caractères comme "TaraTata". La première
formulation est à la fois plus rapide à écrire et aussi plus efficace.
Néanmoins, la deuxième forme permet d’accéder aux noms composés des
couleurs de X11.
Lorsque la fonction x11-color
ne trouve pas le paramètre fourni,
elle revient à la couleur par défaut, le noir. Le problème ressort de
façon évidente au vu de la partition finale.
\override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2) \set Staff.instrumentName = \markup { \with-color #(x11-color 'navy) "Clarinet" } gis8 a \override Beam #'color = #(x11-color "medium turquoise") gis a \override Accidental #'color = #(x11-color 'DarkRed) gis a \override NoteHead #'color = #(x11-color "LimeGreen") gis a % this is deliberate nonsense; note that the stems remain black \override Stem #'color = #(x11-color 'Boggle) b2 cis
Un autre moyen consiste à fournir à la fonction Scheme rgb-color
les composantes de la couleur exacte au format rouge-vert-bleu
(RGB).
\override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2) \set Staff.instrumentName = \markup { \with-color #(x11-color 'navy) "Clarinet" } \override Stem #'color = #(rgb-color 0 0 0) gis8 a \override Stem #'color = #(rgb-color 1 1 1) gis8 a \override Stem #'color = #(rgb-color 0 0 0.5) gis4 a
Voir aussi
Manuel de notation :
Liste des couleurs,
La commande \tweak
.
Morceaux choisis : Editorial annotations.
Problèmes connus et avertissements
Une couleur x11 n’aura pas forcément le même rendu qu’une couleur normale ayant un nom similaire.
Les couleurs de X11 ne sont pas toutes perceptibles dans un navigateur
internet. Aussi nous vous recommandons, dans le cadre d’une
présentation multimedia, d’utiliser des couleurs de base #blue
,
#green
, #red
– bleu, vert, rouge.
Vous ne pouvez pas coloriser des notes à l’intérieur d’un accord avec
\override
. Si besoin est, utilisez \tweak
.
Pour plus de détails, consultez
La commande \tweak
.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Coloration d'objets ] | [ Plus haut: Dans la portée ] | [ Hampes > ] |
Parenthèses
Des objets peuvent être mis entre parenthèses en saisissant
\parenthesize
juste avant l’événement musical. Si l’instruction
préfixe un accord, chaque note le composant se présentera entre
parenthèses. Vous pouvez aussi mettre individuellement entre
parenthèses les notes d’un accord.
c2 \parenthesize d c2 \parenthesize <c e g> c2 <c \parenthesize e g>
Les objets autres que des notes peuvent aussi être entre parenthèses.
En ce qui concerne les articulations, l’instruction \parenthesize
doit cependant être précédée d’un tiret.
c2-\parenthesize -. d c2 \parenthesize r
Voir aussi
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : Parenthesis_engraver, ParenthesesItem, parentheses-interface.
Problèmes connus et avertissements
Lorsqu’un accord est mis entre parenthèses, celles-ci s’appliquent individuellement à chacune des notes le composant, alors qu’on attendrait une seule paire de parenthèses encadrant tout l’accord.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Parenthèses ] | [ Plus haut: Dans la portée ] | [ Hors de la portée > ] |
Hampes
Dès qu’une note est rencontrée, un objet Stem
se crée
automatiquement. Pour les rondes et les silences, ils sont aussi
créés, mais en mode invisible.
La direction des hampes peut être définie manuellement – voir Direction et positionnement à ce sujet.
Commandes prédéfinies
\stemUp
,
\stemDown
,
\stemNeutral
.
Morceaux choisis
Default direction of stems on the center line of the staff
The default direction of stems on the center line of the staff is set
by the Stem
property neutral-direction
.
\relative c'' { a4 b c b \override Stem #'neutral-direction = #up a4 b c b \override Stem #'neutral-direction = #down a4 b c b }
Voir aussi
Manuel de notation : Direction et positionnement.
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : Stem_engraver, Stem, stem-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Hampes ] | [ Plus haut: Notation éditoriale ] | [ Info-bulle > ] |
1.7.2 Hors de la portée
Nous allons nous intéresser ici à souligner des éléments inscrits dans la portée par des éléments qui lui seront externes.
Info-bulle | ||
Quadrillage temporel | ||
Crochets d’analyse |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Hors de la portée ] | [ Plus haut: Hors de la portée ] | [ Quadrillage temporel > ] |
Info-bulle
Vous pouvez marquer et nommer des éléments de notation à l’aide de bulles. L’objectif premier de cette fonctionnalité est d’expliquer la notation.
En voici un exemple :
\new Voice \with { \consists "Balloon_engraver" } { \balloonGrobText #'Stem #'(3 . 4) \markup { "Je suis une hampe" } a8 \balloonGrobText #'Rest #'(-4 . -4) \markup { "Je suis un silence" } r <c, g'-\balloonText #'(-2 . -2) \markup { "Je suis une tête de note" } c>2. }
Vous disposez de deux fonctions musicales, balloonGrobText
et
balloonText
. balloonGrobText
prend en argument
l’objet graphique à agrémenter, alors que balloonText
s’utilise
comme une simple articulation. Les autres arguments sont le décalage
et le texte de la bulle.
Les info-bulles ont une influence sur les espacements, que l’on peut gérer ainsi :
\new Voice \with { \consists "Balloon_engraver" } { \balloonLengthOff \balloonGrobText #'Stem #'(3 . 4) \markup { "Je suis une hampe" } a8 \balloonGrobText #'Rest #'(-4 . -4) \markup { "Je suis un silence" } r \balloonLengthOn <c, g'-\balloonText #'(-2 . -2) \markup { "Je suis une tête de note" } c>2. }
Commandes prédéfinies
\balloonLengthOn
,
\balloonLengthOff
.
Voir aussi
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : Balloon_engraver, BalloonTextItem, balloon-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Info-bulle ] | [ Plus haut: Hors de la portée ] | [ Crochets d'analyse > ] |
Quadrillage temporel
Vous pouvez tracer des lignes entre les portées, synchronisées avec les notes.
LilyPond a recours à deux graveurs distincts afin d’afficher le
cadrillage : le Grid_point_engraver
se charge de
déterminer l’envergure du crochet, alors que le
Grid_line_span_engraver
se consacrera au tracé des lignes.
Les lignes sont par défaut centrées horizontalement sous les notes et
alignées sur la gauche des têtes. La propriété gridInterval
spécifie quant à elle l’espace de temps entre chaque ligne.
\layout { \context { \Staff \consists "Grid_point_engraver" %% active les guides gridInterval = #(ly:make-moment 1 4) } \context { \Score \consists "Grid_line_span_engraver" %% centre les lignes guides horizontalement sous les notes } } \score { \new ChoirStaff << \new Staff \relative c'' { \stemUp c'4. d8 e8 f g4 } \new Staff \relative c { %% centre les lignes guides verticalement \clef bass \stemDown c4 g' f e } >> }
Morceaux choisis
Apparence du cadrillage temporel
Modifier certaines des propriétés du cadrillage temporel aura pour effet d’en changer l’apparence.
\score { \new ChoirStaff << \new Staff { \relative c'' { \stemUp c'4. d8 e8 f g4 } } \new Staff { \relative c { % this moves them up one staff space from the default position \override Score.GridLine #'extra-offset = #'(0.0 . 1.0) \stemDown \clef bass \once \override Score.GridLine #'thickness = #5.0 c4 \once \override Score.GridLine #'thickness = #1.0 g'4 \once \override Score.GridLine #'thickness = #3.0 f4 \once \override Score.GridLine #'thickness = #5.0 e4 } } >> \layout { \context { \Staff % set up grids \consists "Grid_point_engraver" % set the grid interval to one quarter note gridInterval = #(ly:make-moment 1 4) } \context { \Score \consists "Grid_line_span_engraver" % this moves them to the right half a staff space \override NoteColumn #'X-offset = #-0.5 } } }
Voir aussi
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : Grid_line_span_engraver, Grid_point_engraver, GridLine, GridPoint, grid-line-interface, grid-point-interface.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Quadrillage temporel ] | [ Plus haut: Hors de la portée ] | [ Texte > ] |
Crochets d’analyse
On utilise des crochets en analyse musicale, pour indiquer la structure d’une pièce.
\layout { \context { \Voice \consists "Horizontal_bracket_engraver" } } \relative c'' { c2\startGroup d\stopGroup }
Les crochets d’analyses sont susceptibles d’être imbriqués :
\layout { \context { \Voice \consists "Horizontal_bracket_engraver" } } \relative c'' { c4\startGroup\startGroup d4\stopGroup e4\startGroup d4\stopGroup\stopGroup }
Voir aussi
Morceaux choisis : Editorial annotations.
Référence des propriétés internes : Horizontal_bracket_engraver, HorizontalBracket, horizontal-bracket-interface, Staff.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Crochets d'analyse ] | [ Plus haut: Notation musicale générale ] | [ Ajout de texte > ] |
1.8 Texte
Nous allons voir ici comment insérer du texte dans une partition, ainsi que différentes manières de le mettre en forme.
Certains éléments de texte ne sont pas abordés ici mais dans des chapitres qui leur sont dédiés. C’est le cas de la Musique vocale et des Titres et entêtes.
1.8.1 Ajout de texte | ||
1.8.2 Mise en forme du texte | ||
1.8.3 Fontes |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Texte ] | [ Plus haut: Texte ] | [ Commentaires textuels > ] |
1.8.1 Ajout de texte
Cette partie constitue une introduction aux différentes manières d’ajouter du texte à une partition.
Note : Pour écrire des accents et autres caractères spéciaux, il suffit de les insérer directement dans votre fichier LilyPond. Ce fichier devra être sauvegardé avec l’encodage UTF-8. Pour plus d’informations, voir Codage du texte.
Commentaires textuels | ||
Indications textuelles et lignes d’extension | ||
Indications textuelles | ||
Texte indépendant |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Ajout de texte ] | [ Plus haut: Ajout de texte ] | [ Indications textuelles et lignes d'extension > ] |
Commentaires textuels
Vous pouvez ajouter à une partition des indications sous forme texuelle, comme dans l’exemple suivant. Ces indications se placeront manuellement au-dessus ou au-dessous de la portée selon la syntaxe utilisée – cf. Direction et positionnement.
a8^"pizz." g f e a4-"scherz." f
Cette syntaxe est en fait un raccourci. Des constructions plus
élaborées d’annotation peuvent être obtenues en ayant recours à un bloc
\markup
et selon les préceptes énoncés dans
Mise en forme du texte.
a8^\markup { \italic pizz. } g f e a4_\markup { \tiny scherz. \bold molto } f
Par défaut, ces indications n’affectent en rien l’espacement des notes. Leur longueur peut néanmoins être prise en considération : dans l’exemple qui suit, le premier commentaire n’influe pas sur l’espacement, à l’inverse du second.
a8^"pizz." g f e \textLengthOn a4_"scherzando" f
En plus d’indications textuelles, les notes peuvent se voir attacher des articulations, comme indiqué au chapitre Articulations et ornements.
Pour de plus amples détails sur la manière de combiner indications textuelles et articulations, reportez-vous au chapitre Positionnement des objets.
Commandes prédéfinies
\textLengthOn
,
\textLengthOff
.
Voir aussi
Manuel d’initiation : Positionnement des objets.
Manuel de notation : Mise en forme du texte, Direction et positionnement.
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
Problèmes connus et avertissements
S’assurer que tous les éléments textuels et les paroles respectent les marges du document requiert des calculs relativement lourds ; c’est la raison pour laquelle LilyPond, par défaut, ne s’en préoccupe pas. Vous pouvez cependant l’y forcer en définissant
\override Score.PaperColumn #'keep-inside-line = ##t
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Commentaires textuels ] | [ Plus haut: Ajout de texte ] | [ Indications textuelles > ] |
Indications textuelles et lignes d’extension
Certaines indications d’interprétation comme rallentando, accelerando ou trilles, s’incrivent textuellement et se prolongent sur plusieurs notes à l’aide d’une ligne pleine, pointillée ou ondulée. Ces objets, que l’on appelle « extenseurs », se dessinent entre deux notes à l’aide de la syntaxe suivante :
\override TextSpanner #'(bound-details left text) = "rit." b1\startTextSpan e,\stopTextSpan
Le texte à imprimer est spécifié en tant que propriété de l’objet
TextSpanner
. Il apparaîtra par défaut en italique ;
cependant, rien ne s’oppose à un autre graphisme dès lors que vous
faites appel à un bloc \markup
–
voir Mise en forme du texte.
\override TextSpanner #'(bound-details left text) = \markup { \upright "rit." } b1\startTextSpan c e,\stopTextSpan
Le style de ligne se définit lui aussi comme une propriété de l’objet. Les détails concernant la syntaxe à utiliser sont expliqués au chapitre Lignes.
Commandes prédéfinies
\textSpannerUp
,
\textSpannerDown
,
\textSpannerNeutral
.
Problèmes connus et avertissements
LilyPond ne peut traiter qu’un seul extenseur à la fois par voix.
Voir aussi
Manuel de notation : Lignes, Nuances.
Morceaux choisis : Text.
Référence des propriétés internes : TextSpanner.
Indications textuelles
La commande \mark
est tout d’abord conçue pour les
Indications de repère.
c4 \mark "Allegro" c c c
Cette syntaxe rend possible l’adjonction de n’importe quel texte à une
barre de mesure. Ce texte peut être mis en forme de différentes
manières dès lors qu’est utilisé un bloc \markup
, comme indiqué
au chapitre Mise en forme du texte.
<c e>1 \mark \markup { \italic { colla parte } } <d f>2 <e g> <c f aes>1
Elle peut aussi servir à insérer des signes de coda ou de
segno, ou bien un point d’orgue, au dessus d’une
barre de mesure. Couplez-la alors à la commande \markup
pour
avoir accès au symbole approprié, selon les indications contenues au
chapitre Notation musicale dans du texte formaté.
<bes f>2 <aes d> \mark \markup { \musicglyph #"scripts.ufermata" } <e g>1
Le résultat de \mark
n’apparaîtra que sur la portée supérieure
d’un système. Si vous introduisez la commande \mark
au moment
d’une barre de mesure, la marque se placera au dessus de la barre. Si
vous y faites appel au milieu d’une mesure, cette marque sera
positionnée entre les notes. Si elle intervient en début de ligne,
elle sera placée juste avant la première note de cette portée. Enfin,
une marque qui tomberait sur un saut de ligne sera imprimée au début
de la ligne suivante.
\mark "Allegro" c1 c \mark "assai" \break c c
Morceaux choisis
Indication texuelle en fin de ligne
Les indications textuelles peuvent être imprimées à la fin d’une ligne plutôt qu’en tête de la suivante. Pensez alors à aligner l’extrémité droite de l’indication sur la barre de mesure.
\relative c'' { g2 c d,2 a' \once \override Score.RehearsalMark #'break-visibility = #end-of-line-visible \once \override Score.RehearsalMark #'self-alignment-X = #RIGHT \mark "D.C. al Fine" \break g2 b, c1 \bar "||" }
Alignement des indications par rapport à divers objets de notation
Les indications textuelles peuvent s’aligner par rapport à d’autres
objets que des barres de mesure, tels que ambitus
,
breathing-sign
, clef
, custos
, staff-bar
,
left-edge
, key-cancellation
, key-signature
, ou
time-signature
.
Par défaut, les indications textuelles sont alignées avec le milieu des objets de notation. Bien entendu, vous pouvez modifier les propriétés des objets en question pour obtenir un autre résultat comme l’illustre la deuxième ligne de l’exemple. Dans le cas de portées multiples, ces réglages doivent être faits pour chacune d’entre elles.
\relative c' { e1 % the RehearsalMark will be centered above the Clef \override Score.RehearsalMark #'break-align-symbols = #'(clef) \key a \major \clef treble \mark "↓" e1 % the RehearsalMark will be centered above the TimeSignature \override Score.RehearsalMark #'break-align-symbols = #'(time-signature) \key a \major \clef treble \time 3/4 \mark \markup { \char ##x2193 } e2. % the RehearsalMark will be centered above the KeySignature \override Score.RehearsalMark #'break-align-symbols = #'(key-signature) \key a \major \clef treble \time 4/4 \mark \markup { \char ##x2193 } e1 \break e1 % the RehearsalMark will be aligned with the left edge of the KeySignature \once \override Score.KeySignature #'break-align-anchor-alignment = #LEFT \mark \markup { \char ##x2193 } \key a \major e1 % the RehearsalMark will be aligned with the right edge of the KeySignature \once \override Score.KeySignature #'break-align-anchor-alignment = #RIGHT \key a \major \mark \markup { \char ##x2193 } e1 % the RehearsalMark will be aligned with the left edge of the KeySignature % and then shifted right by one unit. \once \override Score.KeySignature #'break-align-anchor = #1 \key a \major \mark \markup { \char ##x2193 } e1 }
Impression des indications sur toutes les portées d’un système
Bien que ces indications textuelles ne soient habituellement imprimées qu’au niveau de la portée supérieure, vous pouvez forcer leur affectation à chacune des portées.
\score { << \new Staff { c''1 \mark "molto" c'' } \new Staff { c'1 \mark "molto" c' } >> \layout { \context { \Score \remove "Mark_engraver" \remove "Staff_collecting_engraver" } \context { \Staff \consists "Mark_engraver" \consists "Staff_collecting_engraver" } } }
Voir aussi
Manuel de notation : Indications de repère, Mise en forme du texte, Notation musicale dans du texte formaté, La fonte Feta.
Morceaux choisis: Text.
Référence des propriétés internes : MarkEvent, Mark_engraver, RehearsalMark.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Indications textuelles ] | [ Plus haut: Ajout de texte ] | [ Mise en forme du texte > ] |
Texte indépendant
Un bloc \markup
peut exister en lui-même, indépendamment de tout
bloc \score
, et venir en préambule par exemple – voir le
chapitre Structure de fichier à ce propos.
\markup { Tomorrow, and tomorrow, and tomorrow... }
De cette manière, vous pouvez insérer du texte en dehors de la musique. Ceci devient particulièrement utile lorsque le fichier source contient plusieurs morceaux. Pour plus d’informations à ce propos, reportez-vous au chapitre Plusieurs partitions dans un même ouvrage.
\score { c'1 } \markup { Tomorrow, and tomorrow, and tomorrow... } \score { c'1 }
Les blocs de textes peuvent s’étendre sur plusieurs pages, ce qui permet de générer des ouvrages complets uniquement grâce à LilyPond. Cette fonctionnalité ainsi que la syntaxe appropriée est abordée plus en détail au chapitre Texte avec sauts de page.
Commandes prédéfinies
\markup
,
\markuplines
.
Morceaux choisis
Bloc de texte indépendant sur deux colonnes
L’utilisation de la commande \markup
permet de distribuer un bloc
de texte indépendant sur plusieurs colonnes.
\markup { \fill-line { \hspace #1 \column { \line { O sacrum convivium } \line { in quo Christus sumitur, } \line { recolitur memoria passionis ejus, } \line { mens impletur gratia, } \line { futurae gloriae nobis pignus datur. } \line { Amen. } } \hspace #2 \column { \line { \italic { O sacred feast } } \line { \italic { in which Christ is received, } } \line { \italic { the memory of His Passion is renewed, } } \line { \italic { the mind is filled with grace, } } \line { \italic { and a pledge of future glory is given to us. } } \line { \italic { Amen. } } } \hspace #1 } }
Voir aussi
Manuel de notation : Mise en forme du texte, Structure de fichier, Plusieurs partitions dans un même ouvrage, Texte avec sauts de page.
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Texte indépendant ] | [ Plus haut: Texte ] | [ Introduction au formatage de texte > ] |
1.8.2 Mise en forme du texte
Nous allons voir dans les lignes qui suivent la manière de mettre en
forme du texte à l’aide de la syntaxe propre au mode \markup
.
Introduction au formatage de texte | ||
Sélection de la fonte et de la taille | ||
Alignement du texte | ||
Éléments graphiques dans du texte formaté | ||
Notation musicale dans du texte formaté | ||
Texte avec sauts de page |
Introduction au formatage de texte
La commande \markup
permet d’ajouter du texte et dispose de sa
propre syntaxe que nous appellerons le « mode markup ».
La syntaxe du mode markup n’est pas différente de celle des
autres modes de LilyPond : une expression \markup
est bornée
par des accolades { … }
. Un mot unique sera
considéré comme une expression minimale, et n’aura donc pas besoin
d’être mis entre accolades.
Contrairement aux indications simples, du type "entre guillemets", les
blocs \markup
peuvent contenir des expressions imbriquées ou
d’autres commandes markup, dès lors qu’elles sont précédées du
caractère \
. Ces commandes n’affecteront que la première
expression qui les suit.
a1-\markup intenso a2^\markup { poco \italic più forte } c e1 d2_\markup { \italic "string. assai" } e b1^\markup { \bold { molto \italic agitato } } c
Un bloc \markup
peut contenir du texte entre guillemets. De
telles chaines seront considérées comme des expressions textuelles
minimales ; à ce titre, toute commande de type markup ou
tout caractère spécial – tel un \
ou un #
– sera imprimé
littéralement et sans influer sur le formatage du texte. Il est de ce
fait possible d’imprimer des guillemets informatiques "
dès lors
qu’ils sont précédés d’une oblique inverse.
a1^"\italic markup..." a_\markup { \italic "... imprime des lettres en \"italique\" !" } a a
Une liste de mots, pour pouvoir être traitée en tant qu’expression
distincte, doit être bornée par des "
ou précédée d’une commande.
La manière de définir les expressions markup aura une influence
sur la manière dont elles seront empilées, centrées ou alignées. Dans
l’exemple qui suit, la deuxième expression \markup
est traitée
tout comme la première :
c1^\markup { \center-column { a bbb c } } c1^\markup { \center-column { a { bbb c } } } c1^\markup { \center-column { a \line { bbb c } } } c1^\markup { \center-column { a "bbb c" } }
Vous pouvez stocker les étiquettes textuelles en tant que variables, et attacher ces identificateurs à des notes, comme ici :
allegro = \markup { \bold \large Allegro } { d''8.^\allegro d'16 d'4 r2 }
Pour une liste des différentes commandes spécifiques au mode
\markup
, consultez l’annexe Text markup commands (en
anglais).
Voir aussi
Manuel de notation : Text markup commands.
Morceaux choisis : Text.
Fichiers d’initialisation : ‘scm/markup.scm’.
Problèmes connus et avertissements
Les erreurs de syntaxe en mode markup sont peu loquaces.
Sélection de la fonte et de la taille
Le mode markup autorise des changements élémentaires de la fonte :
d1^\markup { \bold { Più mosso } \italic { non troppo \underline Vivo } } r2 r4 r8 d,_\markup { \italic quasi \smallCaps Tromba } f1 d2 r
La taille des caractères se modifie de différentes manières :
- à partir de l’une des tailles standard prédéfinies,
- en étant définie en valeur absolue,
- en adoptant une valeur relative à celle précédemment définie.
Voici une illustration de ces trois différentes méthodes :
f1_\markup { \tiny espressivo \large e \normalsize intenso } a^\markup { \fontsize #5 Sinfonia \fontsize #2 da \fontsize #3 camera } bes^\markup { (con \larger grande \smaller emozione \magnify #0.6 { e sentimento } ) } d c2 r8 c bes a g1
Vous pouvez imprimer du texte en indice ou en exposant. Celui-ci sera dans un taille plus petite, mais rien ne s’oppose à ce que vous lui affectiez un taille normale :
\markup { \column { \line { 1 \super st movement } \line { 1 \normal-size-super st movement \sub { (part two) } } } }
Le mode markup vous permet de sélectionner d’autres familles de fontes. Par défaut, LilyPond utilise une police avec empattement, du type roman, et tout changement doit être explicite. Dans la dernière ligne de l’exemple qui suit, vous noterez qu’il n’y a aucune différence entre les premier et deuxième mots.
\markup { \column { \line { Act \number 1 } \line { \sans { Scene I. } } \line { \typewriter { Verona. An open place. } } \line { Enter \roman Valentine and Proteus. } } }
Certaines familles de police spécifiques aux nombres ou aux nuances par exemple, ne disposent pas de tous les caractères, comme nous l’avons vu dans les chapitres Personnalisation des indications de nuance et Indications de reprise manuelles.
Lorsqu’un changement survient au milieu d’un mot, il se peut qu’un espacement supplémentaire apparaîsse. Il suffit en pareil cas de concaténer les différents éléments :
\markup { \column { \line { \concat { 1 \super st } movement } \line { \concat { \dynamic p , } \italic { con dolce espressione } } } }
Une liste des différentes commandes permettant de changer de fonte ou d’utiliser des fontes personnalisées est disponible à l’annexe Font.
Pour savoir comment personnaliser des fontes, reportez-vous au chapitre Fontes.
Commandes prédéfinies
\teeny
,
\tiny
,
\small
,
\normalsize
,
\large
,
\huge
,
\smaller
,
\larger
.
Voir aussi
Manuel de notation : Font, Personnalisation des indications de nuance, Indications de reprise manuelles, Fontes.
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
Fichiers d’initialisation : ‘scm/define-markup-commands.scm’.
Alignement du texte
Cette partie traite de la manière de positionner du texte en mode markup. On déplace l’intégralité d’un objet markup en utilisant la syntaxe décrite au chapitre Déplacement d'objets.
Les objets de type markup peuvent s’aligner de différentes manières. Une indication textuelle est par défaut alignée sur son extrémité gauche. Dans l’exemple qui suit, il n’y a aucune différence entre les deux premiers markups.
d1-\markup { poco } f d-\markup { \left-align poco } f d-\markup { \center-align { poco } } f d-\markup { \right-align poco }
L’alignement horizontal peut être ajusté à l’aide d’une valeur numérique :
a1-\markup { \halign #-1 poco } e' a,-\markup { \halign #0 poco } e' a,-\markup { \halign #0.5 poco } e' a,-\markup { \halign #2 poco }
Certains objets possèdent leurs propres procédures d’alignement, qui annuleront toute spécification d’alignement que vous pourriez affecter à un argument de type markup que vous leur auriez fourni. La solution consiste alors à déplacer l’intégralité de ces objets markup, comme indiqué par exemple au chapitre Indications textuelles.
L’alignement vertical est quant à lui un peu plus compliqué. Comme nous l’avons vu ci-avant, les objets markup peuvent être déplacés dans leur intégralité. Il est néanmois possible de déplacer certains éléments spécifiques au sein d’un bloc markup. En pareil cas, l’élément à déplacer doit être précédé d’un « point d’ancrage » – un autre élément du markup ou un objet invisible. L’exemple qui suit illustre ces deux possibilités. Vous noterez par ailleurs que le dernier markup, dépourvu de point d’ancrage, n’est de ce fait pas déplacé.
d2^\markup { Acte I \raise #2 { Scène 1 } } a' g_\markup { \null \lower #4 \bold { Très modéré } } a d,^\markup { \raise #4 \italic { Une forêt. } } a'4 a g2 a
Certaines commandes permettent de régler l’alignement des objets textuels en mode markup, tant au niveau horizontal que vertical. Tout objet soumis à ces commandes doit être précédé d’un point d’ancrage.
d2^\markup { Acte I \translate #'(-1 . 2) "Scène 1" } a' g_\markup { \null \general-align #Y #3.2 \bold "Très modéré" } a d,^\markup { \null \translate-scaled #'(-1 . 2) \teeny "Une forêt." } a'4 a g2 a
Un objet de type markup peut contenir plusieurs lignes de texte. Dans l’exemple suivant, chaque élément ou expression ira se placer sur sa propre ligne, tantôt alignée à gauche, tantôt centrée.
\markup { \column { a "b c" \line { d e f } } \hspace #10 \center-column { a "b c" \line { d e f } } }
Pareillement, une liste d’éléments ou d’expressions sera répartie sur une ligne entière, voire même centrée sur toute la page s’il n’y a qu’un seul élément. De telles expressions peuvent à leur tour contenir du texte multi-ligne ou une autre expression markup.
\markup { \fill-line { \line { William S. Gilbert } \center-column { \huge \smallCaps "The Mikado" or \smallCaps "The Town of Titipu" } \line { Sir Arthur Sullivan } } } \markup { \fill-line { 1885 } }
Les indications textuelles, lorsqu’elles sont relativement longues, peuvent se répartir sur plusieurs lignes en fonction de la largeur de ligne. Le texte sera alors soit aligné à gauche, soit justifié, comme le montre l’exemple suivant :
\markup { \column { \line \smallCaps { La vida breve } \line \bold { Acto I } \wordwrap \italic { (La escena representa el corral de una casa de gitanos en el Albaicín de Granada. Al fondo una puerta por la que se ve el negro interior de una Fragua, iluminado por los rojos resplandores del fuego.) } \hspace #0 \line \bold { Acto II } \override #'(line-width . 50) \justify \italic { (Calle de Granada. Fachada de la casa de Carmela y su hermano Manuel con grandes ventanas abiertas a través de las que se ve el patio donde se celebra una alegre fiesta) } } }
Une liste des différentes commandes permettant d’aligner du texte en mode markup est disponible à l’annexe Align.
Voir aussi
Manuel d’initiation : Déplacement d'objets.
Manuel de notation : Align, Indications textuelles.
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
Fichiers d’initialisation : ‘scm/define-markup-commands.scm’.
Éléments graphiques dans du texte formaté
Vous pouvez, grâce aux mode markup, ajouter divers objets graphiques à votre partition.
Certaines commandes de markup permettent d’ornementer des éléments textuels avec des graphismes, à l’instar de l’exemple suivant :
\markup \fill-line { \center-column { \circle Jack \box "in the box" \null \line { Erik Satie \hspace #3 \bracket "1866 - 1925" } \null \rounded-box \bold Prelude } }
Certaines directives peuvent nécessiter d’accroître l’espacement autour du texte – voir l’annexe Align pour une liste des différentes commandes particulières au mode markup ainsi que leur description.
\markup \fill-line { \center-column { \box "Charles Ives (1874 - 1954)" \null \box \pad-markup #2 "THE UNANSWERED QUESTION" \box \pad-x #8 "A Cosmic Landscape" \null } } \markup \column { \line { \hspace #10 \box \pad-to-box #'(-5 . 20) #'(0 . 5) \bold "Largo to Presto" } \pad-around #3 "String quartet keeps very even time, Flute quartet keeps very uneven time." }
Vous pouvez imprimer certains graphismes ou symboles sans qu’il n’y ait de texte. Ces objets peuvent même se combiner, à l’instar de n’importe quelle expression markup.
\markup { \combine \draw-circle #4 #0.4 ##f \filled-box #'(-4 . 4) #'(-0.5 . 0.5) #1 \hspace #5 \center-column { \triangle ##t \combine \draw-line #'(0 . 4) \arrow-head #Y #DOWN ##f } }
Des fonctionnalités graphiques avancées vous permettent même d’inclure
dans une partition un fichier image converti au format PostScript
encapsulé (extension eps
), ou bien de tracer un graphique
directement dans le fichier source à partir d’instructions PostScript
pures. Nous vous conseillons, en pareil cas, de toujours spécifier les
dimensions du dessin, comme dans ce qui suit :
c1^\markup { \combine \epsfile #X #10 #"./context-example.eps" \with-dimensions #'(0 . 6) #'(0 . 10) \postscript #" -2 3 translate 2.7 2 scale newpath 2 -1 moveto 4 -2 4 1 1 arct 4 2 3 3 1 arct 0 4 0 3 1 arct 0 0 1 -1 1 arct closepath stroke" } c
L’annexe Graphic répertorie les différentes commandes en matière de graphisme.
Voir aussi
Manuel de notation : Graphic, Notation éditoriale.
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
Fichiers d’initialisation : ‘scm/define-markup-commands.scm’, ‘scm/stencil.scm’.
Notation musicale dans du texte formaté
Divers éléments de notation peuvent orner une partition, au moyen d’un objet markup.
Notes et altérations sont données à l’aide d’instructions markup :
a2 a^\markup { \note #"4" #1 = \note-by-number #1 #1 #1.5 } b1_\markup { \natural \semiflat \flat \sesquiflat \doubleflat } \glissando a1_\markup { \natural \semisharp \sharp \sesquisharp \doublesharp } \glissando b
Le mode markup permet d’accéder à d’autres objets de notation :
g1 bes ees-\markup { \finger 4 \tied-lyric #"~" \finger 1 } fis_\markup { \dynamic rf } bes^\markup { \beam #8 #0.1 #0.5 } cis d-\markup { \markalphabet #8 \markletter #8 }
En règle générale, tout symbole musical peut être inclus dans un markup, comme le montre l’exemple qui suit. Ces différents symboles sont répertoriés dans l’annexe La fonte Feta.
c2 c'^\markup { \musicglyph #"eight" } c,4 c,8._\markup { \musicglyph #"clefs.G_change" } c16 c2^\markup { \musicglyph #"timesig.neomensural94" }
Le sous-chapitre Tout savoir sur les fontes contient d’autres informations sur l’impression de glyphes non alphabétiques, tels que des crochets ou accolades.
Le mode markup supporte aussi les diagrammes spécifiques à certains instruments :
c1^\markup { \fret-diagram-terse #"x;x;o;2;3;2;" } c^\markup { \harp-pedal #"^-v|--ov^" } c c^\markup { \combine \musicglyph #"accordion.accDiscant" \combine \raise #0.5 \musicglyph #"accordion.accDot" \raise #1.5 \musicglyph #"accordion.accDot" }
La documentation sur ces diagrammes se trouvent à l’annexe Instrument Specific Markup.
Rien ne s’oppose à ce qu’une étiquette ne comporte une partition. Il
suffit que l’expression en question contienne un bloc \score
et
un bloc \layout
.
\relative { c4 d^\markup { \score { \relative { c4 d e f } \layout { } } } e f }
Les différentes commandes markup relatives à la notation musicale sont répertoriées à l’annexe Music.
Voir aussi
Manuel de notation : Music, La fonte Feta, Tout savoir sur les fontes.
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
Fichiers d’initialisation : ‘scm/define-markup-commands.scm’, ‘scm/fret-diagrams.scm’, ‘scm/harp-pedals.scm’.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Notation musicale dans du texte formaté ] | [ Plus haut: Mise en forme du texte ] | [ Fontes > ] |
Texte avec sauts de page
Alors que \markup
s’utilise pour traiter un bloc de texte
insécable, \markuplines
permet, employé en tête de partition,
d’obtenir un bloc de lignes réparties différemment et, le cas échéant,
sur plusieurs pages.
\markuplines { \justified-lines { Un long texte constitué de lignes justifiées. ... } \wordwrap-lines { Un autre grand paragraphe. ... } ... }
Cette syntaxe prend en charge une liste de markups ; il peut s’agir
- d’une suite de commandes générant à leur tour des lignes de texte,
- d’une liste de lignes de texte,
- d’une liste d’étiquettes.
Les différentes commandes permettant de générer des listes de lignes se trouve dans l’annexe Text markup list commands.
Voir aussi
Manuel de notation : Text markup list commands,
Morceaux choisis : Text.
Référence des propriétés internes : TextScript.
Fichiers d’initialisation : ‘scm/define-markup-commands.scm’.
Commandes prédéfinies
\markuplines
.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Texte avec sauts de page ] | [ Plus haut: Texte ] | [ Tout savoir sur les fontes > ] |
1.8.3 Fontes
Ce chapitre est consacré aux fontes et polices de caractère, à leur gestion. Vous y apprendrez aussi comment changer de fonte en cours de partition.
Tout savoir sur les fontes | ||
Attribution d’une fonte en particulier | ||
Choix des fontes par défaut |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Fontes ] | [ Plus haut: Fontes ] | [ Attribution d'une fonte en particulier > ] |
Tout savoir sur les fontes
La gestion des fontes est assurée par plusieurs bibliothèques : FontConfig se charge de répertorier les différentes fontes installées sur votre système ; quant à Pango, elle se charge plus particulièrement de leur rendu.
Les fontes musicales peuvent se décrire comme un jeu de glyphes
spécifiques regroupés dans plusieurs familles. L’exemple qui suit
montre la syntaxe à utiliser pour accéder, en mode markup, aux
différentes fontes feta
non textuelles de LilyPond.
a1^\markup { \vcenter { \override #'(font-encoding . fetaBraces) \lookup #"brace120" \override #'(font-encoding . fetaNumber) \column { 1 3 } \override #'(font-encoding . fetaDynamic) sf \override #'(font-encoding . fetaMusic) \lookup #"noteheads.s0petrucci" } }
Tous ces glyphes, à l’exception des accolades qui sont regroupées dans
fetaBraces
, sont accessibles avec la syntaxe indiquée dans
Notation musicale dans du texte formaté.
Une remarque s’impose au sujet des glyphes contenus dans
fetaBraces
: chacun d’eux est formé du mot brace
auquel est accolé un numéro d’ordre. Lorsque vous désirez imprimer une
accolade, vous devez la « chercher » par son numéro d’ordre – d’où la
fonction \lookup
de l’exemple ci-dessus –, tout en sachant qu’il
est compris entre 0
(la plus petite) et 575
(la plus
grande). Vous serez souvent amené à procéder par tatonnement pour
arriver au résultat optimal. Par ailleurs, fetaBraces
ne
comporte que des accolades ouvrantes. Pour obtenir une accolade
fermante, il suffit d’appliquer une rotation au glyphe sélectionné,
comme indiqué au chapitre Rotation des objets.
Vous disposez de trois familles de fontes textuelles : roman pour la police sérif ou avec empattement – fixée par défaut à New Century Schoolbook –, une police sans empattement (sans sérif) et une à chasse fixe (ou monospace) – les deux dernières étant déterminées par l’installation de Pango.
Chaque famille dispose en principe de différents styles et niveau de
gras. L’exemple qui suit illustre la manière de changer la famille, le
style, la graisse ou la taille. Notez bien que l’argument fourni à
font-size
correspond à la correction à apporter à la taille par
défaut.
\override Score.RehearsalMark #'font-family = #'typewriter \mark \markup "Ouverture" \override Voice.TextScript #'font-shape = #'italic \override Voice.TextScript #'font-series = #'bold d2.^\markup "Allegro" \override Voice.TextScript #'font-size = #-3 c4^smaller
Cette syntaxe s’applique aussi en mode markup, bien que celui-ci dispose d’une syntaxe allégée comme nous l’avons vu dans Sélection de la fonte et de la taille :
\markup { \column { \line { \override #'(font-shape . italic) \override #'(font-size . 4) Idomeneo, } \line { \override #'(font-family . typewriter) { \override #'(font-series . bold) re di } \override #'(font-family . sans) Creta } } }
En plus de pouvoir jongler entre les différentes fontes prédéfinies, LilyPond vous permet d’en utiliser d’autres, ce qui fait l’objet des deux prochaines parties : Attribution d’une fonte en particulier et Choix des fontes par défaut.
Voir aussi
Manuel de notation : La fonte Feta, Notation musicale dans du texte formaté, Sélection de la fonte et de la taille, Font.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Tout savoir sur les fontes ] | [ Plus haut: Fontes ] | [ Choix des fontes par défaut > ] |
Attribution d’une fonte en particulier
Vous pouvez utiliser n’importe quelle police installée sur votre système, du moment où elle est accessible par Fontconfig, en respectant la syntaxe suivante :
\override Staff.TimeSignature #'font-name = #"Bitstream Charter" \override Staff.TimeSignature #'font-size = #2 \time 3/4 a1_\markup { \override #'(font-name . "Vera Bold") { Vera Bold } }
Pour obtenir la liste de toutes les polices disponibles sur votre machine, lancez
lilypond -dshow-available-fonts toto
(quel qu’il soit, le dernier argument est obligatoire).
Voir aussi
Manuel de notation : Tout savoir sur les fontes, Choix des fontes par défaut.
Morceaux choisis : Text.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Attribution d'une fonte en particulier ] | [ Plus haut: Fontes ] | [ Notation spécialisée > ] |
Choix des fontes par défaut
Vous pouvez tout à fait préférer un autre jeu de polices par défaut que celui de LilyPond. Il vous faudra alors spécifier les différentes familles, en respectant l’ordre roman, sans empattement et monospace, comme dans l’exemple suivant. Pour plus d’explications sur les fontes, relisez Tout savoir sur les fontes.
\paper { myStaffSize = #20 #(define fonts (make-pango-font-tree "Times New Roman" "Nimbus Sans" "Luxi Mono" (/ myStaffSize 20))) } \relative c'{ c1-\markup { roman, \sans sans, \typewriter typewriter. } }
Voir aussi
Manuel de notation : Tout savoir sur les fontes, Attribution d’une fonte en particulier, Sélection de la fonte et de la taille, Font.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Choix des fontes par défaut ] | [ Plus haut: Top ] | [ Musique vocale > ] |
2. Notation spécialisée
Ce chapitre explique comment créer la notation musicale spécifique à certains intruments ou certaines époques.
2.1 Musique vocale
Ce chapitre traite de la musique vocale : comment la saisir et comment s’assurer que les paroles s’alignent avec les notes de la mélodie correspondante.
2.1.1 Vue d’ensemble de la musique vocale | ||
2.1.2 Saisie des paroles | ||
2.1.3 Alignement des paroles sur une mélodie | ||
2.1.4 Situations particulères en matière de paroles | ||
2.1.5 Couplets |
2.1.1 Vue d’ensemble de la musique vocale
En complément de généralités, ce sous-chapitre aborde quelques styles particuliers en terme de musique vocale.
Références en matière de musique vocale | ||
Opéra | ||
Cahier de chants | ||
Musique parlée | ||
Chants | ||
Musique vocale ancienne |
Références en matière de musique vocale
Graver de la musique vocale soulève plusieurs problèmes ; ils sont abordés soit dans ce chapitre, soit dans d’autres parties de la documentation de LilyPond.
- La plupart du temps, les paroles ne sont constituées que de texte simple. Cette forme de notation est abordée dans Écriture de chants simples.
-
La musique vocale nécessite souvent de recourir au mode
markup
, aussi bien pour des paroles que pour d’autres éléments textuels comme le nom des personnages. Cette syntaxe est expliquée dans Introduction au formatage de texte. - Une feuille de chant s’obtient en combinant une partie vocale et des accords. La syntaxe appropriée à ces derniers est abordée dans Notation des accords.
- L’impression d’un ambitus – ou tessiture – que l’on trouve en tête de certaines partitions, est abordée dans Ambitus.
- L’utilisation de clefs traditionnelles est abordée dans Clefs.
- LilyPond sait reproduire les usages historiques, comme l’explique Notations anciennes.
Opéra
En cours de rédaction.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Opéra ] | [ Plus haut: Vue d'ensemble de la musique vocale ] | [ Musique parlée > ] |
Cahier de chants
En cours de rédaction.
Morceaux choisis
Chanson simple
Assembler des noms d’accords, une mélodie et des paroles permet d’obtenir la partition d’un chanson :
<< \chords { c2 g:sus4 f e } \relative c'' { a4 e c8 e r4 b2 c4( d) } \addlyrics { One day this shall be free __ } >>
Voir aussi
Manuel de notation : Notation des accords.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Cahier de chants ] | [ Plus haut: Vue d'ensemble de la musique vocale ] | [ Chants > ] |
Musique parlée
Le parlato – ou Sprechgesang pour les germanistes – est du texte scandé en rythme, mais sans hauteurs définies ; il est indiqué par des notes en croix, à l’instar des percussions – voir Têtes de note spécifiques.
Chants
En cours de rédaction.
Musique vocale ancienne
En cours de rédaction.
Voir aussi
Manuel de notation : Notations anciennes.
2.1.2 Saisie des paroles
Tout savoir sur les paroles | ||
Écriture de chants simples | ||
Travail avec des paroles et variables |
Tout savoir sur les paroles
Le fait que LilyPond travaille sur des fichiers textuels nous amène au
constat suivant : les paroles ne doivent pas être interprétées comme des
notes – le caractère a
ne saurait être confondu avec la
note a
(un la pour les non latinistes). C’est la
raison pour laquelle nous utiliserons un mode dédié.
Il existe un mode de saisie spécialement adapté aux paroles. On
l’introduit avec le mot-clé \lyricmode
, ou en utilisant
\addlyrics
ou \lyricsto
. Ce mode vous permet de saisir
des paroles, ainsi que leur ponctuation, de telle sorte que le
caractère a
ne sera plus interprété comme une note, mais
comme une syllabe. Les syllabes sont saisies comme des notes, mais les
hauteurs sont alors remplacées par du texte. Exemple avec une comptine
anglaise :
\lyricmode { Twin-4 kle4 twin- kle litt- le star2 }
Il y a deux manières principales de préciser la place exacte des
syllabes : soit en spécifiant explicitement la durée de chaque syllabe
– comme dans l’exemple ci-dessus – soit en alignant automatiquement
les paroles sur les notes d’une mélodie ou d’une voix en utilisant
\addlyrics
ou \lyricsto
.
Dans les paroles, un mot ou une syllabe commence par une lettre de l’alphabet, et se termine par une espace. Toute syllabe doit donc être séparée d’une autre par une espace, tout autre caractère – chiffre ou ponctiuation – étant considéré comme partie intégrante de cette même syllabe. L’exemple suivant comporte une faute de frappe évidente :
\lyricmode { lah- lah}
la dernière syllabe contient une }
; il y a de fait un défaut de
parité avec l’accolade ouvrante, et la compilation échouera fort
probablement.
De la même manière, un point concluant une suite de lettres sera partie intégrante de la chaîne résultante. Par conséquent, il est impératif d’insérer des espaces lorsque vous modifiez les propriétés d’une commande. En d’autres termes, ne saisissez pas
\override Score.LyricText #'font-shape = #'italic
mais plutôt
\override Score . LyricText #'font-shape = #'italic
Pour attribuer plus d’une syllabe à une même note, vous pouvez mettre
ces syllabes entre guillemets, ou bien remplacer l’espace par un
caractère souligné (_
), ou encore utiliser un tilde (~
)
pour obtenir une liaison entre les syllabes.
\time 3/4 \relative c' { c2 e4 g2 e4 } \addlyrics { gran- de_a- mi- go } \addlyrics { pu- "ro y ho-" nes- to } \addlyrics { pu- ro~y~ho- nes- to }
Cette liaison adaptée aux paroles correspond au caractère Unicode
U+203F
, et n’apparaîtra dans la partition que s’il existe une
police incluant ce symbole (par exemple DejaVuLGC) installée sur le
système. De plus amples informations concernant les fontes textuelles
ou non sont disponibles au chapitre Fontes.
Pour utiliser des lettres accentuées ou des caractères spéciaux – cœurs ou guillemets inversés par exemple – il suffit de les insérer dans le fichier et de veiller à le sauvegarder avec le codage UTF-8. Voir à ce sujet Codage du texte pour plus de détails.
\relative c' { e4 f e d e f e2 } \addlyrics { He said: “Let my peo ple go”. }
Pour utiliser des guillemets informatiques standard, faites-les précéder d’une barre oblique inverse :
\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. } \addlyrics { "\"I" am so lone- "ly\"" said she }
Expliquer exactement comment LilyPond repère le début d’un mot en mode paroles (Lyrics) est quelque peu compliqué.
En mode Lyrics, un mot peut commencer par : tout caractère
alphabétique, _
, ?
, !
, :
, '
, un des
codes de contrôle ^A
à ^F
et ^Q
à ^W
,
^Y
, ^^
, tout caractère ASCII de code strictement supérieur
à 127, ou enfin l’un des symboles `
, '
, "
, ou
^
, s’il est précédé d’une barre oblique inverse.
Pour définir un identificateur contenant des paroles, il faut utiliser
la fonction lyricmode
.
verseOne = \lyricmode { Joy to the world the Lord is come } \score { << \new Voice = "one" \relative c'' { \autoBeamOff \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } \addlyrics { \verseOne } >> }
Voir aussi
Manuel de notation : Fontes.
Référence des propriétés internes : LyricText, LyricSpace.
Écriture de chants simples
Le plus simple pour ajouter des paroles à une mélodie est d’adjoindre
\addlyrics { les paroles }
à la mélodie. En voici un exemple :
\time 3/4 \relative { c2 e4 g2. } \addlyrics { play the game }
On peut ajouter davantage de couplets en multipliant le nombre de
sections \addlyrics
.
\time 3/4 \relative { c2 e4 g2. } \addlyrics { play the game } \addlyrics { speel het spel } \addlyrics { joue le jeu }
Cependant, la commande \addlyrics
ne peut pas gérer les
constructions polyphoniques. Dans ce cas, mieux vaut employer
\lyricsto
et \lyricmode
, comme nous le verrons dans
Tout savoir sur les paroles.
Travail avec des paroles et variables
La fonction \lyricmode
permet de définir une variable pour
les paroles. Point n’est besoin de spécifier les durées si vous
utilisez \addlyrics
ou \lyricsto
lorsque vous y faites
référence.
verseOne = \lyricmode { Joy to the world the Lord is come } \score { << \new Voice = "one" \relative c'' { \autoBeamOff \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } \addlyrics { \verseOne } >> }
Pour une organisation différente ou plus complexe, mieux vaut commencer par définir la hiérarchie des portées et des paroles,
\new ChoirStaff << \new Voice = "soprano" { musique } \new Lyrics = "sopranoParoles" { s1 } \new Lyrics = "tenorParoles" { s1 } \new Voice = "tenor" { musique } >>
puis combiner correctement mélodies et paroles :
\context Lyrics = sopranoParoles \lyricsto "soprano" les paroles
Le résultat final ressemblera à
<<\new ChoirStaff << définition de la musique >> \lyricsto "soprano" etc. \lyricsto "alto" etc. etc. >>
Voir aussi
Référence des propriétés internes : LyricCombineMusic, Lyrics.
2.1.3 Alignement des paroles sur une mélodie
Les paroles s’alignent par rapport à une mélodie soit de manière automatique, soit manuellement dès lors que vous aurez spécifié la durée de chaque syllabe. Vous pouvez y adjoindre des blancs, des traits d’union ou des lignes de prolongation.
Avant d’être imprimées, les paroles sont interprétées par le programme
dans le contexte Lyrics
.
\new Lyrics \lyricmode …
Il y a deux grandes méthodes pour gérer le positionnement horizontal des syllabes :
-
en alignant automatiquement les paroles sur une mélodie ou une autre
voix, en ayant recours à
\addlyrics
ou\lyricsto
; -
en affectant explicitement à chaque syllabe une durée, au sein du
contexte
\lyricmode
Le contexte Voice
qui contient la mélodie sur laquelle doivent
s’aligner les paroles doit demeurer actif, au risque de perdre les
paroles qui suivent. C’est le cas lorsque la voix en question est
muette pendant un moment. La manière de garder un contexte actif est
abordée plus en détail au chapitre Conservation d’un contexte.
Durée automatique des syllabes | ||
Durée explicite des syllabes | ||
Plusieurs syllabes sur une note | ||
Plusieurs notes pour une même syllabe | ||
Saut de notes | ||
Traits d’union et de prolongation | ||
Paroles et reprises |
Durée automatique des syllabes
Les paroles peuvent être automatiquement alignées sous
une mélodie. Il suffit pour cela de combiner la mélodie et les
paroles avec la commande \lyricsto
.
\new Lyrics \lyricsto nom …
Cette commande adapte les paroles aux notes de la voix (contexte
Voice
dans le jargon LilyPond) nom. Ce contexte
Voice
doit exister avant l’indication des paroles avec
\lyricsto
. La commande \lyricsto
introduit
automatiquement le mode \lyricmode
; il n’est alors pas
nécessaire de rajouter \lyricmode
.
L’exemple suivant récapitule les différentes manières de saisir des paroles.
<< \new Voice = "one" \relative c'' { \autoBeamOff \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } % not recommended: left-aligned syllables \new Lyrics \lyricmode { Joy4 to8. the16 world!4. the8 Lord4 is come.2 } % wrong: durations needed \new Lyrics \lyricmode { Joy to the earth! the Sa -- viour reigns. } %correct \new Lyrics \lyricsto "one" { No more let sins and sor -- rows grow. } >>
Le deuxième couplet n’est pas correctement disposé, aucune durée
n’ayant été spécifiée. Dans un tel cas, il aurait mieux valu utiliser
\lyricsto
, comme dans le troisième couplet.
La commande \addlyrics
n’est en fait qu’une manière plus aisée
d’écrire de la musique vocale dans une structure Lilypond plus complexe.
{ MUSIQUE } \addlyrics { PAROLES }
est exactement la même chose que
\new Voice = "blah" { musique } \new Lyrics \lyricsto "blah" { PAROLES }
Durée explicite des syllabes
On peut aussi se passer de \addlyrics
et de \lyricsto
pour
saisir des paroles. Dans ce cas, les syllabes sont entrées comme des
notes – du texte remplaçant les hauteurs – ce qui veut dire que vous
devez définir leur durée explicitement :
play2 the4 game2. sink2 or4 swim2.
La mélodie associée à ces paroles peut être spécifiée par la propriété
associatedVoice
:
\set associatedVoice = #"lala"
La valeur que vous attribuez à cette propriété (ici "lala"
)
doit désigner un contexte Voice
, sans quoi les mélismes
ne seront pas imprimés correctement.
Voici un exemple de cette manière de procéder :
<< \new Voice = "melody" { \time 3/4 c2 e4 g2. } \new Lyrics \lyricmode { \set associatedVoice = #"melody" play2 the4 game2. } >>
Voir aussi
Manuel de notation : Conservation d’un contexte.
Référence des propriétés internes : Lyrics, Voice.
Plusieurs syllabes sur une note
Pour attribuer plus d’une syllabe à une même note, vous pouvez soit les
mettre entre guillemets, soit utiliser le caractère souligné
(_
) pour obtenir une espace, ou bien encore utiliser un tilde
(~
) pour obtenir une liaison entre les syllabes1.
\time 3/4 \relative c' { c2 e4 g2 e4 } \addlyrics { gran- de_a- mi- go } \addlyrics { pu- "ro y ho-" nes- to } \addlyrics { pu- ro~y~ho- nes- to }
Voir aussi
Référence des propriétés internes : LyricCombineMusic.
Plusieurs notes pour une même syllabe
Parfois, tout particulièrement dans la musique médiévale, plusieurs notes correspondent à une même syllabe. Ces vocalises sont appelées mélismes.
Il est possible d’indiquer tous les mélismes lors de la saisie des
paroles. Il suffit pour cela d’utiliser le caractère _
pour
chaque note du mélisme.
Vous pouvez aussi indiquer les mélismes par des lignes d’extension, indiquées par un double caractère souligné à la suite de la syllabe qui se prolonge. L’exemple qui suit utilise trois éléments distincts – notez bien les espaces qui les encadrent – : un double tiret pour séparer les syllabes d’un même mot, des soulignés pour ajouter des notes à la vocalise, et un double souligné pour la prolongation.
{ \set melismaBusyProperties = #'() c d( e) f f( e) e e } \addlyrics { Ky -- _ _ ri __ _ _ _ e }
En définissant, comme dans l’exemple ci-dessus, la propriété
melismaBusyProperties
, vous obtiendrez automatiquement toutes
les liaisons de tenue et de phrasé requises.
D’autre part, la commande \lyricsto
arrive aussi à détecter
automatiquement les mélismes : une seule syllabe sera placée sous un
groupe de notes comprenant des liaisons de tenue ou de phrasé. Au cas
où un mélisme doit s’appliquer à des notes non liées, il suffit
d’adjoindre \melisma
après la première note du groupe, et
\melismaEnd
après la dernière :
<< \new Voice = "lala" { \time 3/4 f4 g8 \melisma f e f \melismaEnd e2 } \new Lyrics \lyricsto "lala" { la di __ daah } >>
Enfin, lorsque la fonction de ligature automatique (cf. Définition des règles de ligature automatique) est désactivée, le fait de connecter des notes manuellement créera un mélisme.
<< \new Voice = "lala" { \time 3/4 \autoBeamOff f4 g8[ f e f] e2 } \new Lyrics \lyricsto "lala" { la di __ daah } >>
Vous trouverez un exemple complet de partition pour chœur dans la section Ensemble vocal.
Commandes prédéfinies
Voir aussi
Morceaux choisis : Vocal music.
Problèmes connus et avertissements
Certains mélismes ne sont pas détectés automatiquement ; vous devrez alors prolonger vous-même les syllabes concernées.
Saut de notes
Pour que le texte aille moins vite que la musique, il suffit d’insérer
des blancs, à l’aide de la commande \skip
dans les paroles.
Chaque \skip
décalera la syllabe d’une note. Ce \skip
doit comporter une durée quelle qu’elle soit – elle sera toujours
ignorée en mode Lyrics
.
\relative c' { c c g' } \addlyrics { twin -- \skip 4 kle }
Dans le cas où plusieurs notes consécutives seraient à « sauter »,
vous pouvez faire appel à la fonction \repeat unfold
:
\relative c' { c c g' g } \addlyrics { twin -- \skip 4 \skip 4 kle } \addlyrics { twin -- \repeat unfold 2 { \skip 4 } kle }
Traits d’union et de prolongation
Un mélisme est indiqué par une longue ligne horizontale basse centrée entre une syllabe et la suivante. Une telle ligne, que nous appellerons prolongateur ou extenseur, s’obtient en saisissant ‘ __ ’ (notez les espaces entourant le souligné double).
Note : Dans une partition, les mélismes, ou vocalises, sont matérialisés par une ligne de prolongation. On l’indique par un double caractère souligné. Lorsqu’ils sont assez courts, ces mélismes peuvent s’indiquer par un souligné unique, ce qui aura pour effet de sauter une note à chaque fois et de ne pas imprimer de ligne.
Un trait d’union séparant deux syllabes d’un même mot s’obtient en saisissant ‘ -- ’ (notez les espaces entourant le tiret double). Ce trait d’union sera centré entre les deux syllabes et sa longueur sera proportionnelle à l’espace les séparant.
Dans les partitions très serrées, les traits d’union peuvent ne pas être
imprimés. Cet inconvénient peut être contrôlé par
minimum-distance
pour gérer l’espace minimum entre deux syllabes,
et minimum-length
, seuil en deçà duquel il n’y a pas de trait
d’union.
Voir aussi
Référence des propriétés internes : LyricExtender, LyricHyphen
Paroles et reprises
En cours de rédaction.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Paroles et reprises ] | [ Plus haut: Musique vocale ] | [ Paroles alternatives > ] |
2.1.4 Situations particulères en matière de paroles
Une même mélodie peut se voir traitée différemment suivant les couplets.
La commande \lyricsto
permet de prendre en compte ces variantes.
Paroles alternatives | ||
Paroles indépendantes des notes | ||
Espacement des syllabes | ||
Centrage des paroles entre les portées |
Paroles alternatives
En donnant un nom à chaque voix et en leur attribuant spécifiquement des paroles, on peut créer des paroles alternatives – également qualifiées de divisi.
\score{ << \new Voice = "melody" { \relative c' { c4 << { \voiceOne c8 e } \new Voice = "splitpart" { \voiceTwo c4 } >> \oneVoice c4 c | c } } \new Lyrics \lyricsto "melody" { we shall not o- ver- come } \new Lyrics \lyricsto "splitpart" { will } >> }
Cette astuce permet de faire varier les paroles lorsqu’un fragment est repris.
\score{ << \new Voice = "melody" \relative c' { c2 e | g e | c1 | \new Voice = "verse" \repeat volta 2 {c4 d e f | g1 | } a2 b | c1} \new Lyrics = "mainlyrics" \lyricsto melody \lyricmode { do mi sol mi do la si do } \context Lyrics = "mainlyrics" \lyricsto verse \lyricmode { do re mi fa sol } \new Lyrics = "repeatlyrics" \lyricsto verse \lyricmode { dodo rere mimi fafa solsol } >> }
Paroles indépendantes des notes
Dans certaines musiques vocales assez complexes, on peut avoir intérêt à
imprimer les paroles indépendamment des notes. La mélodie sur laquelle
s’aligne les paroles – marquée par le tag lyricrhythm
dans l’exemple suivant – peut être insérée dans un contexte
Devnull
, ce qui indique à LilyPond de ne pas imprimer cette
mélodie dans la partition. Seules subsistent alors de cette mélodie les
valeurs rythmiques, sur lesquelles s’alignent les paroles.
voice = { c''2 \tag #'music { c''2 } \tag #'lyricrhythm { c''4. c''8 } d''1 } lyr = \lyricmode { I like my cat! } << \new Staff \keepWithTag #'music \voice \new Devnull="nowhere" \keepWithTag #'lyricrhythm \voice \new Lyrics \lyricsto "nowhere" \lyr \new Staff { c'8 c' c' c' c' c' c' c' c' c' c' c' c' c' c' c' } >>
Cette méthode est inapropriée dès lors que la musique contenue dans le
contexte Devnull
comporte des mélismes. En effet, les mélismes
sont définis par le contexte Voice
. Connecter des paroles à un
contexte Devnull
rend les liens voix-syllabe inopérants, et par
voie de conséquence fait disparaître les informations de mélisme.
Espacement des syllabes
La propriété #'minimum-distance
de l’objet LyricSpace
permet d’accroître l’espacement des paroles.
{ c c c c \override Lyrics.LyricSpace #'minimum-distance = #1.0 c c c c } \addlyrics { longtext longtext longtext longtext longtext longtext longtext longtext }
Pour que ce réglage s’applique à toute la partition, définissez-le
dans le bloc \layout
.
\score { \relative c' { c c c c c c c c } \addlyrics { longtext longtext longtext longtext longtext longtext longtext longtext } \layout { \context { \Lyrics \override LyricSpace #'minimum-distance = #1.0 } } }
Morceaux choisis
L’assurance que tous les scripts textuels et les paroles resteront bien à l’intérieur des marges requiert des ressources non négligeables. Afin de réduire le temps de traitement, LilyPond n’effectue pas ces calculs par défaut ; pour l’y obliger, vous devrez ajouter
\override Score.PaperColumn #'keep-inside-line = ##t
Pour s’assurer que les paroles ne seront pas traversées par des barres de mesure, il faut ajouter
\layout { \context { \Lyrics \consists "Bar_engraver" \consists "Separating_line_group_engraver" \override BarLine #'transparent = ##t } }
Centrage des paroles entre les portées
En cours de rédaction.
2.1.5 Couplets
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Couplets ] | [ Plus haut: Couplets ] | [ Indication de nuance dans les couplets > ] |
Numérotation des couplets
On peut ajouter un numéro aux couplets en définissant la variable
stanza
:
\new Voice { \time 3/4 g2 e4 a2 f4 g2. } \addlyrics { \set stanza = #"1. " Hi, my name is Bert. } \addlyrics { \set stanza = #"2. " Oh, ché -- ri, je t'aime }
Ces numéros se placeront juste avant le début de la première syllabe.
Indication de nuance dans les couplets
Lorsque des couplets ont des nuances différentes, vous pouvez ajouter
une nuance devant chacun d’eux. L’objet StanzaNumber
contient
tout ce qui se place au début du couplet. Pour des raisons techniques,
vous devrez définir la variable stanza
en dehors du mode
\lyricmode
.
text = { \set stanza = \markup { \dynamic "ff" "1. " } \lyricmode { Big bang } } << \new Voice = "tune" { \time 3/4 g'4 c'2 } \new Lyrics \lyricsto "tune" \text >>
Indication du personnage et couplets
On peut également ajouter le nom de chaque rôle ; ils s’imprimeront au
début de chaque ligne comme les noms d’instrument. Il faut pour cela
définir vocalName
, et shortVocalName
pour une version
abrégée.
\new Voice { \time 3/4 g2 e4 a2 f4 g2. } \addlyrics { \set vocalName = #"Bert " Hi, my name is Bert. } \addlyrics { \set vocalName = #"Ernie " Oh, ché -- ri, je t'aime }
Rythme différent selon le couplet
Mélismes dans certaines strophes seulement
Il peut survenir que les paroles comportent un mélisme pour l’un des
couplets, mais plusieurs syllabes pour d’autres. Une solution consiste
à ignorer temporairement les mélismes dans le couplet ayant le plus de
syllabes. Il suffit pour cela de définir la propriété
ignoreMelismata
à l’intérieur du contexte Lyrics.
Petit détail qui a son importance : l’activation de
ignoreMelismata
doit précéder la syllabe à partir de
laquelle elle s’appliquera :
<< \relative c' \new Voice = "lahlah" { \set Staff.autoBeaming = ##f c4 \slurDotted f8.[( g16]) a4 } \new Lyrics \lyricsto "lahlah" { more slow -- ly } \new Lyrics \lyricsto "lahlah" { go \set ignoreMelismata = ##t fas -- ter \unset ignoreMelismata still } >>
Problèmes connus et avertissements
Contrairement aux autres utilisations de l’instruction \set
, il
n’est pas possible de la faire précéder d’un \once
dans le cas de
\set ignoreMelismata
. Les paroles affectées par la propriété
ignoreMelismata
doivent être encadrées respectivement
d’un \set
et d’un \unset
.
Basculer vers une mélodie alternative
On peut créer des variations plus complexes à partir d’une mélodie à
plusieurs voix. Les paroles peuvent suivre l’une ou l’autre des
lignes mélodiques, et même basculer de l’une à l’autre si l’on
modifie la propriété associatedVoice
. Dans cet exemple,
le texte du premier couplet s’aligne sur la mélodie nommée « lahlah »,
\new Lyrics \lyricsto "lahlah" { Ju -- ras -- sic Park }
Le second couplet est tout d’abord rattaché au contexte lahlah
,
mais bascule sur une autre mélodie sur la syllabe « ran ». Pour cela,
nous utilisons
\set associatedVoice = alternative
où alternative
désigne le nom du contexte Voice
qui contient
le triolet.
Encore une fois, cette commande doit être spécifiée une syllabe en avance, c’est-à-dire ici avant la syllabe « Ty ».
\new Lyrics \lyricsto "lahlah" { \set associatedVoice = alternative % s'applique à "ran" Ty -- ran -- no -- \set associatedVoice = lahlah % s'applique à "rus" sau -- rus Rex }
Comme vous pouvez le voir, nous revenons ensuite à l’alignement sur la
mélodie d’origine, en assignant à la propriété associatedVoice
la valeur lahlah
.
Paroles en fin de partition
Il peut parfois s’avérer opportun d’aligner un seul couplet sur la
mélodie, et de présenter tous les autres en bloc à la fin du morceau.
Ces couplets additionnels peuvent être inclus dans une section
\markup
en dehors du bloc \score
principal.
Vous en trouverez un exemple ci-dessous ; notez également les deux
méthodes différentes employées pour indiquer les sauts de ligne,
entre les couplets (verses en anglais) 2 et 3.
melody = \relative c'' { \time 2/4 g4 g8 b | b a b a | g4 g8 b | b a b4 | } text = \lyricmode { \set stanza = #"1." À la clai- re fon- tai- ne, M'en al- lant pro- me- ner... } \score{ << \new Voice = "one" { \melody } \new Lyrics \lyricsto "one" \text >> \layout { } } \markup { \column{ \line{ Verse 2. } \line{ Sous les feuilles d'un chêne } \line{ Je me suis fait sécher... } } } \markup{ \wordwrap-string #" Verse 3. Chante, rossignol, chante, Toi qui as le coeur gai..." }
Paroles sur plusieurs colonnes en fin de partition
Si les couplets sont vraiment nombreux, il est possible de les imprimer sur plusieurs colonnes. L’exemple suivant vous montre comment procéder pour que le numéro du couplet soit en retrait à gauche, comme c’est traditionnellement le cas.
melody = \relative c'' { \time 2/4 g4 g8 b | b a b a | g4 g8 b | b a b4 | } text = \lyricmode { \set stanza = #"1." À la clai- re fon- tai- ne, M'en al- lant pro- me- ner... } \score{ << \new Voice = "one" { \melody } \new Lyrics \lyricsto "one" \text >> \layout { } } \markup { \fill-line { \hspace #0.1 % décalage par rapport à la marge de gauche % peut être supprimé si l'espace sur la page est réduit \column { \line { \bold "2." \column { "Sous les feuilles d'un chêne" "Je me suis fait sécher..." } } \hspace #0.1 % ajout d'espace vertical entre les couplets \line { \bold "3." \column { "Chante, rossignol, chante," "Toi qui as le coeur gai..." } } } \hspace #0.1 % ajout d'espace horizontal entre les colonnes % si elles sont toujours trop proches, ajouter d'autres paires de " " % jusqu'à ce que le résultat soit acceptable. \column { \line { \bold "4." \column { "J'ai perdu mon ami" "Sans l'avoir mérité..." } } \hspace #0.1 % ajout d'espace vertical entre les couplets \line { \bold "5." \column { "Je voudrais que la rose" "Fût encore au rosier..." } } } \hspace #0.1 % décalage par rapport à la marge de droite % peut être supprimé si l'espace sur la page est réduit } }
Voir aussi
Référence des propriétés internes : LyricText, StanzaNumber.
2.2 Instruments utilisant des portées multiples
Ce chapitre traite des différents aspects de la notation que l’on rencontre particulièrement avec les instruments qui ont recours à plusieurs portées, tels que ceux disposant de claviers, la harpe ou le vibraphone. Pour les besoins du discours, et pour simplifier, nous parlerons ici de « clavier » bien que le recours à des portées multiples concerne aussi des instruments qui en sont dépourvus.
2.2.1 Vue d’ensemble des claviers | ||
2.2.2 Piano | ||
2.2.3 Accordéon | ||
2.2.4 Harpe |
2.2.1 Vue d’ensemble des claviers
Nous allons examiner ici les problèmes qui peuvent survenir en matière de notation pour la plupart des instrument à cordes multiples.
Généralités sur les instruments à clavier | ||
Changement de portée manuel | ||
Changement de portée automatique | ||
Lignes de changement de portée | ||
Hampes et changements de portée |
Généralités sur les instruments à clavier
La notation pour instrument à clavier est en règle générale présentée sous la forme d’un système pour piano, autrement dit deux portées normales ou plus réunies par une accolade. Cette notation sert également à la harpe ou à d’autres instruments à clés. L’organiste, quant à lui, lira une partition composée de deux portées au sein d’un système pianistique auquel vient s’adjoindre une portée normale pour le pédalier.
Les portées sont largement autonomes, mais il arrive que des voix
passent de l’une à l’autre. Le contexte PianoStaff
est
précisément conçu pour gérer la notation spécifique au piano et autres
instruments à clavier, notamment ces croisements.
Certaines particularités de la notation pour claviers sont abordées dans d’autres chapitres :
- Les claviers ont régulièrement recours à plusieurs voix dont le nombre peut varier. voir à ce sujet Résolution des collisions.
- On peut écrire la musique pour claviers de façon parallèle, comme l’explique Saisie de musique en parallèle.
- Les indications de doigté sont abrodées dans Doigtés.
- Les indications en matière de pédalier d’orgue sont traitées comme des articulations. Voir à ce sujet Liste des signes d’articulation.
- Pour générer des repères verticaux, voir Quadrillage temporel.
- En plus des Laissez vibrer, les liaisons en matière de clavier peuvent intervenir sur des accords arpégés ou des trémolos. Reportez-vous au chapitre Liaisons de prolongation.
- Le traitement des arpèges couvrant plusieurs voix ou portées est abordé au chapitre Arpèges.
- Une description des indications de tremolo est disponible au chapitre Répétitions en trémolo.
- Certaines retouches particulières au monde des claviers sont abordées au chapitre Exemple concret.
- Des notes fantômes permettent d’introduire des liaisons de tenue qui passent d’une voix à l’autre, comme le montre Autres utilisations des retouches.
Voir aussi
Manuel d’initiation : Exemple concret, Autres utilisations des retouches.
Manuel de notation : Regroupement de portées, Noms d’instrument, Résolution des collisions, Saisie de musique en parallèle, Doigtés, Liste des signes d’articulation, Quadrillage temporel, Liaisons de prolongation, Arpèges, Répétitions en trémolo.
Référence des propriétés internes : PianoStaff.
Exemples de code : Keyboards.
Problèmes connus et avertissements
Les nuances ne sont pas automatiquement centrées verticalement, mais il
existe des astuces. Voir à ce sujet le modèle « alignement des
nuances au piano » au chapitre
Modèles pour claviers ; une autre
solution consiste à augmenter le décalage des nuances par rapport à la
portée (staff-pagging
) comme l’indique
Déplacement d'objets.
Changement de portée manuel
Il est possible de passer d’une portée à l’autre de façon manuelle, au moyen de la commande
\change Staff = nomDeLaPortee
La valeur nomDeLaPortee est le nom de la portée sur laquelle va se
déplacer la voix courante. Pour des raisons pratiques, on nomme la portée
supérieure "haut"
et la portée inférieure "bas"
, donc
nomDeLaPortee désigne habituellement "haut"
, "bas"
,
"MD"
ou "MG"
.
Dans tous les cas, le contexte de portée ainsi utilisé doit exister au préalable. Le cas échéant, vous devrez qq{garder actives certaines portées – voir Conservation d’un contexte à ce propos.
Pour ligaturer automatiquement des notes entre deux portées, procédez ainsi :
\new PianoStaff << \new Staff = "up" { <e' c'>8 \change Staff = "down" g8 fis g \change Staff = "up" <g'' c''>8 \change Staff = "down" e8 dis e \change Staff = "up" } \new Staff = "down" { \clef bass % keep staff alive s1 } >>
Si les ligatures demandaient à être retouchées, commencez par modifier la direction des hampes. L’emplacement des ligatures sera alors calculé à partir du centre de la portée la plus proche – voir Correction des collisions d'objets pour un exemple de retouche sur des ligatures.
Voir aussi
Manuel d’initiation : Correction des collisions d'objets.
Manuel de notation : Hampes, Barres de ligature automatiques, Conservation d’un contexte.
Exemples de code : Keyboards.
Référence des propriétés internes : Beam, ContextChange.
Changement de portée automatique
Les voix peuvent passer automatiquement d’une portée à l’autre, au moyen de la syntaxe suivante :
\autochange …musique…
Deux portées seront alors créées au sein du contexte PianoStaff
,
nommées respectivement "up"
et "down"
. La portée du bas
sera par défaut en clé de fa. La commande \autochange
bascule
les notes d’une portée à l’autre en fonction de leur hauteur (le do du
milieu servant de pivot), et place les silences en fonction des notes
qui les suivront. Ainsi :
\new PianoStaff { \autochange { g4 a b c' d'4 r a g } }
Une section en mode \relative
se situant en dehors de la commande
\autochange
n’aura pas d’effet sur les hauteurs de l’expression
musique. Il est donc préférable d’introduire la directive
\relative
après \autochange
.
Lorsque des contrôles particuliers doivent s’appliquer aux portées,
mieux vaut les nommer explicitement – attention : sous peine
d’effet indésirable quant au résultat, la portée supérieure doit
s’appeler "up"
et l’inférieure "down"
; ceci est à
notre connaissance le seul cas où ces noms de variable sont figés.
Cette procédure sert, entre autres, à indiquer l’armure sur la portée
inférieure :
\new PianoStaff << \new Staff = "up" { \new Voice = "melodieUn" { \key g \major \autochange \relative c' { g8 b a c b d c e d8 r fis, g a2 } } } \new Staff = "down" { \key g \major \clef bass } >>
Voir aussi
Dans ce même manuel : Changement de portée manuel.
Exemples de code : Keyboards.
Référence des propriétés internes : AutoChangeMusic.
Problèmes connus et avertissements
Les changements de portée automatiques n’interviennent pas toujours à l’endroit le plus opportun. Pour un résultat de meilleure qualité, il vaut mieux indiquer soi-même ces changements.
Un accord ne peut se répartir sur plusieurs portées ; sa portée d’affectation sera déterminée par la première hauteur mentionnée dans la construction de cet accord.
\autochange
ne peut intervenir à l’intérieur d’une commande
\times
.
Lignes de changement de portée
Lorsqu’une voix change de portée, il est possible d’imprimer
automatiquement une ligne reliant les notes, en faisant appel à la
commande \showStaffSwitch
:
\new PianoStaff << \new Staff = "one" { \showStaffSwitch c1 \change Staff = "two" b2 a } \new Staff = "two" { \clef bass s1*2 } >>
Commandes prédéfinies
\showStaffSwitch
,
\hideStaffSwitch
.
Voir aussi
Extraits de code : Keyboards.
Référence des propriétés internes : Note_head_line_engraver, VoiceFollower.
Hampes et changements de portée
Pour écrire des accords qui enjambent deux portées, on allonge la hampe de l’accord de l’une des deux portées de façon à ce qu’elle rejoigne celle de l’autre portée.
\new PianoStaff << \new Staff { \relative c' { f8 e4 d8 d f e4 } } \new Staff { \relative c' { << { \clef bass % stems may overlap the other staff \override Stem #'cross-staff = ##t % extend the stems to reach other other staff \override Stem #'length = #12 % do not print extra flags \override Stem #'flag-style = #'no-flag % prevent beaming as needed a8 g4 f8 f bes\noBeam g4 } \\ { f,2 bes4 c } >> } } >>
Morceaux choisis
Indicating cross-staff chords with arpeggio bracket
An arpeggio bracket can indicate that notes on two different staves are
to be played with the same hand. In order to do this, the
PianoStaff
must be set to accept cross-staff arpeggios and the
arpeggios must be set to the bracket shape in the PianoStaff
context.
(Debussy, Les collines d’Anacapri, m. 65)
\new PianoStaff << \set PianoStaff.connectArpeggios = ##t \override PianoStaff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket \new Staff { \relative c' { \key b \major \time 6/8 b8-.(\arpeggio fis'-.\> cis-. e-. gis-. b-.)\!\fermata^\laissezVibrer \bar "||" } } \new Staff { \relative c' { \clef bass \key b \major << { <a e cis>2.\arpeggio } \\ { <a, e a,>2. } >> } } >>
Voir aussi
Extraits de code : Keyboards.
Référence des propriétés internes : Stem.
2.2.2 Piano
Ce chapitre traîte des aspects de la notation directement liés au piano.
Pédales de piano |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Piano ] | [ Plus haut: Piano ] | [ Accordéon > ] |
Pédales de piano
Le piano possède deux pédales, parfois trois, permettant de modifier l’émission du son : une pédale de tenue (sustain), une pédale de sourdine (una corda ou U.C.) et une pédale tonale (sostenuto ou sos.). La pédale sustain se rencontre aussi sur les vibraphones et celestas.
c4\sustainOn d e g <c, f a>1\sustainOff c4\sostenutoOn e g c, <bes d f>1\sostenutoOff c4\unaCorda d e g <d fis a>1\treCorde
Trois styles sont à votre disposition pour imprimer les indications de
pédale : sous forme de texte, de crochet, ou une combinaison des deux.
text
est le style de notation par défaut pour les pédales de
tenue ou de sourdine — le traditionnel ‘*Ped.’. La pédale tonale,
en revanche, utilise mixed
par défaut.
c4\sustainOn g c2\sustainOff \set Staff.pedalSustainStyle = #'mixed c4\sustainOn g c d d\sustainOff\sustainOn g, c2\sustainOff \set Staff.pedalSustainStyle = #'bracket c4\sustainOn g c d d\sustainOff\sustainOn g, c2 \bar "|."
Le placement des commandes de pédale correspond au mouvement de la pédale de tenue pendant le jeu. Garder une pédale enclanchée jusqu’à la barre finale s’obtient tout simplement en omettant la commande de relacher.
Voir aussi
Manuel de notation : Liaisons de prolongation.
Extraits de code : Keyboards.
Référence des propriétés internes : SustainPedal, SustainPedalLineSpanner, SustainEvent, SostenutoPedal, SostenutoPedalLineSpanner, SostenutoEvent, UnaCordaPedal, UnaCordaPedalLineSpanner, UnaCordaEvent, PianoPedalBracket, Piano_pedal_engraver.
2.2.3 Accordéon
Symboles de jeux |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Accordéon ] | [ Plus haut: Accordéon ] | [ Harpe > ] |
Symboles de jeux
De nombreux accordéons possèdent plusieurs jeux d’anches capables de jouer à l’unisson ou bien à l’octave inférieure ou supérieure par rapport aux notes écrites. Chaque facteur d’accordéon donne des noms différents aux tirettes (shifts) qui permettent de sélectionner les différents jeux d’anches tels que hautbois, musette ou bandonéon, de telle sorte qu’un système de symbole a fini par voir le jour afin de faciliter les instructions pour exécuter un morceau.
Morceaux choisis
Accordion-discant symbols
Accordion discant-specific symbols are added using \markup
. The
vertical placement of the symbols can be tweaked by changing the
\raise
arguments.
discant = \markup { \musicglyph #"accordion.accDiscant" } dot = \markup { \musicglyph #"accordion.accDot" } \layout { ragged-right = ##t } % 16 voets register accBasson = ^\markup { \combine \discant \raise #0.5 \dot } % een korig 8 en 16 voets register accBandon = ^\markup { \combine \discant \combine \raise #0.5 \dot \raise #1.5 \dot } accVCello = ^\markup { \combine \discant \combine \raise #0.5 \dot \combine \raise #1.5 \dot \translate #'(1 . 0) \raise #1.5 \dot } % 4-8-16 voets register accHarmon = ^\markup { \combine \discant \combine \raise #0.5 \dot \combine \raise #1.5 \dot \raise #2.5 \dot } accTrombon = ^\markup { \combine \discant \combine \raise #0.5 \dot \combine \raise #1.5 \dot \combine \translate #'(1 . 0) \raise #1.5 \dot \translate #'(-1 . 0) \raise #1.5 \dot } % eenkorig 4 en 16 voets register accOrgan = ^\markup { \combine \discant \combine \raise #0.5 \dot \raise #2.5 \dot } accMaster = ^\markup { \combine \discant \combine \raise #0.5 \dot \combine \raise #1.5 \dot \combine \translate #'(1 . 0) \raise #1.5 \dot \combine \translate #'(-1 . 0) \raise #1.5 \dot \raise #2.5 \dot } accAccord = ^\markup { \combine \discant \combine \raise #1.5 \dot \combine \translate #'(1 . 0) \raise #1.5 \dot \combine \translate #'(-1 . 0) \raise #1.5 \dot \raise #2.5 \dot } accMusette = ^\markup { \combine \discant \combine \raise #1.5 \dot \combine \translate #'(1 . 0) \raise #1.5 \dot \translate #'(-1 . 0) \raise #1.5 \dot } accCeleste = ^\markup { \combine \discant \combine \raise #1.5 \dot \translate #'(-1 . 0) \raise #1.5 \dot } accOboe = ^\markup { \combine \discant \combine \raise #1.5 \dot \raise #2.5 \dot } accClarin = ^\markup { \combine \discant \raise #1.5 \dot } accPiccolo = ^\markup { \combine \discant \raise #2.5 \dot } accViolin = ^\markup { \combine \discant \combine \raise #1.5 \dot \combine \translate #'(1 . 0) \raise #1.5 \dot \raise #2.5 \dot } \relative c'' { c4 d\accBasson e f c4 d\accBandon e f c4 d\accVCello e f c4 d\accHarmon e f c4 d\accTrombon e f \break c4 d\accOrgan e f c4 d\accMaster e f c4 d\accAccord e f c4 d\accMusette e f c4 d\accCeleste e f \break c4 d\accOboe e f c4 d\accClarin e f c4 d\accPiccolo e f c4 d\accViolin e f }
Voir aussi
Morceaux choisis : Keyboards.
2.2.4 Harpe
This section discusses notation issues that are unique to the harp.
Généralités sur la harpe | ||
Pédales de harpe |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Harpe ] | [ Plus haut: Harpe ] | [ Pédales de harpe > ] |
Généralités sur la harpe
Certaines caractéritiques de la musique pour harpes sont abordées dans d’autres chapitres, telles que :
- Les glissandos, l’une des techniques spécifique à la harpe, Glissando.
- Le bisbigliando, qui s’écrit comme un trémolo, Répétitions en trémolo.
- Les harmoniques naturelles sont présentées dans Harmoniques.
- For directional arpeggios and non-arpeggios, see Arpèges.
Voir aussi
Manuel de notation : Répétitions en trémolo, Glissando, Arpèges, Harmoniques.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Généralités sur la harpe ] | [ Plus haut: Harpe ] | [ Cordes non frettées > ] |
Pédales de harpe
Les harpes comportent sept cordes par octave qui peuvent sonner naturel, dièse ou bémol. Si chacune des cordes de la harpe celtique (lever harp) est accordée individuellement, celles d’une harpe à pédalier ayant la même note de base sont contrôlées par une seule pédale. De gauche à droite, elles correspondent aux notes ré, do, si, et mi, fa, sol, la pour la grande harpe. Les trois premières pédales sont réservées au pied gauche, les quatre dernières au pied droit. Leur position peut être indiquée par une marque textuelle :
\textLengthOn cis1_\markup \concat \vcenter { [D \flat C \sharp B|E \sharp F \sharp G A \flat] } c!1_\markup \concat \vcenter { [ C \natural ]}
ou bien sous forme de diagrammes :
\textLengthOn cis1_\markup { \harp-pedal #"^v-|vv-^" } c!1_\markup { \harp-pedal #"^o--|vv-^" }
bémol si la pédale est relâchée (ou en haut), bécarre si elle est
bloquée sur le cran du milieu, et dièse si elle est tout à fait
enfoncée. La commande \harp-pedal
prend en argument une chaîne de
caractères, où ^
indique que la pédale est relâchée ou en haut (bémol),
-
qu’elle est bloquée sur le cran du milieu (bécarre), v
qu’elle est tout à fait enfoncée (dièse) et |
représente le
séparateur (entre gauche et droite de l’instrumentiste). Faire précéder
un symbole par un o
permet de l’inscrire dans un cercle.
Voir aussi
Manuel de notation : Commentaires textuels, Instrument Specific Markup.
2.3 Cordes non frettées
Cette section dispense des informations supplémentaires et utiles à l’écriture pour les cordes non frettées, et tout spécialement pour les cordes d’orchestre.
2.3.1 Vue d’ensemble de la notation pour cordes non frettées |
2.3.1 Vue d’ensemble de la notation pour cordes non frettées
Il existe peu d’éléments spécifiques à l’écriture pour instruments à cordes non frettées. La musique est notée sur une portée et ne nécessite généralement qu’une seule voix. Le recours à deux voix distinctes peut cependant permettre de traiter efficacement des doubles notes ou des divisions.
Références en matière de cordes non frettées | ||
Indications d’archet | ||
Harmoniques | ||
Snap (Bartók) pizzicato |
Références en matière de cordes non frettées
La majorité des éléments de notation nécessaires en matière de cordes d’orchestre et autres instruments à archet est abordée dans d’autres chapitres de la documentation :
- Les indications textuelles telles que « pizz. » ou « arco » sont ajoutées comme du texte simple – voir à ce sujet Commentaires textuels.
- Les indications de doigtés, incluant les indications du pouce, sont décrites dans Doigtés.
- Les doubles notes sont généralement indiquées en écrivant un accord, voir Notes en accords. Les précisions pour jouer des accords peuvent être ajoutées, comme l’indique Arpèges.
- Un modèle pour quatuor à cordes est disponible au chapitre Quatuor à cordes. D’autres informations se trouvent dans les exemples de code.
Voir aussi
Manuel d’initiation : Quatuor à cordes.
Manuel de notation : Commentaires textuels, Doigtés, Notes en accords, Arpèges.
Morceaux choisis : Unfretted strings.
Indications d’archet
Les indications d’archet se créent comme des articulations, elles sont décrites dans Articulations et ornements.
Les indications d’archet, poussé (\upbow
) et tiré
(\downbow
), peuvent se combiner à des liaisons comme ici :
c4(\downbow d) e(\upbow f)
ou dans l’exemple suivant qui montre trois manières d’indiquer la corde de La, à vide, sur un violon :
a4 \open a^\markup { \teeny "II" } a2^\markup { \small "sul A" }
Commandes prédéfinies
\downbow
,
\upbow
,
\open
.
Voir aussi
Manuel de notation : Articulations et ornements, Liaisons d’articulation.
Harmoniques
Harmoniques naturels
Les harmoniques naturels sont indiqués de différentes manières : une tête de note en forme de losange signifie généralement que vous devez effleurer la corde à l’endroit où vous l’auriez pincée si la note avait été normale.
d4 e4. \harmonicsOn d8 e e d4 e4. \harmonicsOff d8 e e
Une autre façon de procéder consiste à faire surmonter la note normale d’un petit cercle. Ceci indique que la note écrite doît être jouée en harmonique :
d2^\flageolet d_\flageolet
Un plus petit cercle peut être créé, comme indiqué dans les exemples de code contenus dans Références en matière de cordes non frettées.
Harmoniques artificiels
Les harmoniques artificiels sont indiqués par une double tête de note : l’une, normale, indique la note à pincer, et l’autre, en forme de losange, indique l’endroit où la corde doit être effleurée.
La propriété harmonicDots
, lorsqu’elle est activée, permet
d’ajouter un point aux notes pointées affublées d’un \harmonic
.
<e a\harmonic>2. <c g'\harmonic>4 \set harmonicDots = ##t <e a\harmonic>2. <c g'\harmonic>4
Note : La commande \harmonic
doit être placée
dans une construction de type accord même s’il n’y a qu’une seule note.
On utiliserait plutôt la commande \harmonicsOn
en pareil
cas.
Voir aussi
Glossaire musicologique : harmonics.
Manuel de notation : Têtes de note spécifiques, Références en matière de cordes non frettées.
Snap (Bartók) pizzicato
Morceaux choisis
Snap-pizzicato ("Bartok pizzicato")
A snap-pizzicato (also known as « Bartok pizzicato ») is a « strong pizzicato where the string is plucked vertically by snapping and rebounds off the fingerboard of the instrument » (Wikipedia). It is denoted by a circle with a vertical line going from the center upwards outside the circle.
\relative c' { c4\snappizzicato <c' e g>4\snappizzicato <c' e g>4^\snappizzicato <c, e g>4_\snappizzicato }
2.4 Instruments à cordes frettées
Cette section traite de différents aspects de la notation propre aux instruments à cordes frettées.
2.4.1 Vue d’ensemble des cordes frettées | ||
2.4.2 Guitare | ||
2.4.3 Banjo |
2.4.1 Vue d’ensemble des cordes frettées
Vue d’ensemble de la notation pour les instruments à cordes frettées.
Références en matière de cordes frettées
La musique pour instruments à cordes frettées est généralement notée sur
une seule portée, en notation traditionnelle ou en tablature, les deux
étant parfois combinées. Il est aussi courant en musique populaire
d’utiliser des diagrammes d’accord au-dessus de la portée
traditionnelle. La guitare et le banjo sont des instruments
transpositeurs, sonnant une octave au-dessous de ce qui est écrit. Les
partitions pour ces instruments utilisent donc la clé de sol ottava
bassa "treble_8"
. Vous pourrez trouver ailleurs dans la
documentation d’autres éléments aussi utilisés par les instruments à
cordes frettées :
- Les doigtés s’obtiennent comme indiqué au chapitre Doigtés.
- En plus des Laissez vibrer, les liaisons peuvent intervenir sur des accords arpégés ou des trémolos. Reportez-vous au chapitre Liaisons de prolongation.
- Des indications quant au support polyphonique se trouvent au chapitre Résolution des collisions.
- La notation des sons harmoniques se trouve à la section Harmoniques.
Voir aussi
Manuel de notation : Doigtés, Liaisons de prolongation, Résolution des collisions, Noms d’instrument, Saisie de musique en parallèle, Arpèges, Liste des signes d’articulation, Clefs.
Indications du numéro de corde
Une corde sur laquelle une note doit être jouée peut être indiquée
en attachant \numéro
à cette note prise dans une
construction de type accord <>
.
Note : Les numéros de cordes doivent être définis dans une construction de type accord même s’il n’y a qu’une seule note.
\clef "treble_8" <c\5>4 <e\4> <g\3>2 <c,\5 e\4 g\3>1
Quand les indications de doigté et de numéro de corde sont attachées à une même note, leur positionnement se fera en fonction de l’ordre dans lequel ils apparaissent dans le code :
\clef "treble_8" <g\3-0>2 <g-0\3>
Morceaux choisis
Conrôle du positionnement des doigtés
Le positionnement des doigtés peut être contrôlé de manière très précise.
\relative c' { \set fingeringOrientations = #'(left) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down right up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(left) <c-1>2 \set fingeringOrientations = #'(down) <e-3>2 }
Impression des doigtés à l’intérieur de la portée
L’empilement des indications de doigté se fait par défaut à l’extérieur de la portée. Néanmoins, il est possible d’annuler ce comportement.
\relative c' { <c-1 e-2 g-3 b-5>2 \override Fingering #'staff-padding = #'() <c-1 e-2 g-3 b-5>4 <g'-0> }
Voir aussi
Manuel de notation : Doigtés.
Morceaux choisis : Fretted strings.
Référence des propriétés internes : StringNumber, Fingering.
Tablatures par défaut
La notation en tablature est utilisée pour certains instruments à cordes pincées. Les hauteurs n’y sont pas indiquées par des têtes de note, mais par des chiffres ou autres symboles, qui indiquent sur quelle corde, et à quelle case chaque note doit être jouée. Dans certaines limites, LilyPond vous permet d’écrire des tablatures.
Chaque numéro de corde associé à une note doit être précédé d’une barre
oblique inverse (ou « antislash ») suivi d’un nombre. Par défaut, la
première corde est la plus aiguë, et les cordes suivent l’accordage
traditionnel d’une guitare (à six cordes). Les notes sont imprimées
sous forme de tablature, dans les contextes TabStaff
et
TabVoice
.
\new TabStaff \relative c' { a,8 a' <c e> a d, a' <d f> a }
Par défaut, les tablatures ne comportent aucune marque de durée ni de symbole musical tel que des nuances.
symbols = { \time 3/4 c4-.^"Allegro" d( e) f4-.\f g a^\fermata \mark \default c8_.\<\( c16 c ~ c2\! c'2.\prall\) } \score { << \new Staff { \clef "G_8" \symbols } \new TabStaff { \symbols } >> }
Pour obtenir les symboles de notation habituelle dans une tablature, il
faut appliquer la commande \tabFullNotation
au contexte
TabStaff
. Vous noterez par ailleurs que les blanches sont
affublées d’une double hampe afin de ne pas les confondre avec des
noires.
symbols = { \time 3/4 c4-.^"Allegro" d( e) f4-.\f g a^\fermata \mark \default c8_.\<\( c16 c ~ c2\! c'2.\prall\) } \score { \new TabStaff { \tabFullNotation \symbols } }
Quand aucune corde n’est précisée, LilyPond choisit automatiquement la
corde pour laquelle la position est la moins élevée et qui donne un
numéro de case supérieur ou égal à la valeur de la propriété
minimumFret
. La valeur par défaut de cette propriété est fixée à
0, ce qui correspond aux cordes à vide.
\new StaffGroup << \new Staff \relative c { \clef "treble_8" \time 2/4 c16 d e f g4 c,16\5 d\5 e\4 f\4 g4\4 c,16 d e f g4 } \new TabStaff \relative c { c16 d e f g4 c,16\5 d\5 e\4 f\4 g4\4 \set TabStaff.minimumFret = #5 c,16 d e f g4 } >>
Lorsqu’un liaison de prolongation intervient lors d’un saut de ligne, la note est répétée, entre parenthèses. Il en va de même pour la seconde alternative d’une répétition.
ties = \relative c' { \repeat volta 2 { e2. f4~ f2 g2~ } \alternative { { g4 f2. } { g4\repeatTie c,2. } } b1~\break b1 \bar "|." } \score { << \new StaffGroup << \context Staff { \clef "treble_8" \ties } \context TabStaff { \ties } >> >> \layout { indent = #0 ragged-right = ##t } }
La commande \hideSplitTiedTabNotes
permet d’éviter d’imprimer
ces cases entre parenthèses.
ties = \relative c' { \repeat volta 2 { e2. f4~ f2 g2~ } \alternative { { g4 f2. } { g4\repeatTie c,2. } } b1~\break b1 \bar "|." } \score { << \new StaffGroup << \context Staff { \clef "treble_8" \ties } \context TabStaff { \hideSplitTiedTabNotes \ties } >> >> \layout { indent = #0 ragged-right = ##t } }
Les indications de sons harmoniques ainsi que les glissandi peuvent être ajoutés aux tablatures.
\new TabStaff { \new TabVoice { <c g'\harmonic> d\2\glissando e\2 } }
Morceaux choisis
Hampes et ligatures en mode tablature
La direction des hampes se gère dans les tablatures tout comme en notation traditionnelle. Les ligatures peuvent être mises à l’horizontale comme le montre cet exemple.
\new TabStaff { \relative c { \tabFullNotation g16 b d g b d g b \stemDown \override Beam #'damping = #+inf.0 g,,16 b d g b d g b } }
Polyphonie en mode tablature
Une section polyphonique s’obtient dans un TabStaff
de la
même manière que dans une portée normale.
upper = \relative c' { \time 12/8 \key e \minor \voiceOne r4. r8 e, fis g16 b g e e' b c b a g fis e } lower = \relative c { \key e \minor \voiceTwo r16 e d c b a g4 fis8 e fis g a b c } \score { << \new StaffGroup = "tab with traditional" << \new Staff = "guitar traditional" << \clef "treble_8" \context Voice = "upper" \upper \context Voice = "lower" \lower >> \new TabStaff = "guitar tab" << \context TabVoice = "upper" \upper \context TabVoice = "lower" \lower >> >> >> }
Voir aussi
Manuel de notation : Hampes.
Morceaux choisis : Fretted strings.
Référence des propriétés internes : TabNoteHead, TabStaff, TabVoice, Beam.
Problèmes connus et avertissements
Les accords ne subissent aucun traitement particulier ; de ce fait, la sélection automatique des cordes peut attribuer une même corde pour deux notes différentes de l’accord.
Afin que \partcombine
fonctionne avec des tablatures, on doit
ajouter au contexte TabStaff
des voix fantômes :
melodia = \partcombine { e4 g g g }{ e4 e e e } << \new TabStaff << \new TabVoice = "one" s1 \new TabVoice = "two" s1 \new TabVoice = "shared" s1 \new TabVoice = "solo" s1 { \melodia } >> >>
Le support des modes de jeu propres à la guitare se limite aux sons harmoniques et aux glissandi.
Tablatures personnalisées
Sous LilyPond, la case correspondant à une note jouée sur une corde donnée
est calculée automatiquement. Pour ce faire, l’accordage doit
être spécifié. L’accordage des cordes est donné par la propriété
StringTunings
.
LilyPond possède des accordages prédéfinis pour banjo, mandoline, guitare et guitare basse. Lilypond calcule automatiquement la transposition correspondant à ces accordages. L’exemple ci-dessous est pour guitare basse, il sonnera donc une octave en dessous de ce qui est écrit.
<< \new Staff { \clef "bass_8" \relative c, { c4 d e f } } \new TabStaff { \set TabStaff.stringTunings = #bass-tuning \relative c, { c4 d e f } } >>
L’accordage par défaut est guitar-tuning
; il correspond à
l’accordage standard d’une guitare : mi la ré sol si mi (EADGBE).
D’autres accordages prédéfinis sont disponibles :
guitar-open-g-tuning
, mandolin-tuning
et
banjo-open-g-tuning
. Les accordages prédéfinis sont répertoriés
dans le fichier scm/output-lib.scm
.
L’accordage est constitué par une liste Scheme des hauteurs de notes correspondant aux cordes à vide, une note pour chaque corde, classée par numéro de corde de 1 à n, où la corde 1 est la plus haute dans la tablature et n la plus basse. Cela revient généralement à classer les cordes de la plus aiguë à la plus grave, mais certains instruments (comme le ukulele) n’ont pas les cordes classées par hauteur.
Dans cette liste, la hauteur des notes est représentée par l’intervalle, exprimé en demi-tons, du do central jusqu’à la note de la corde à vide. Elle doit donc être représentée par un nombre entier. LilyPond calcule la note correspondant à chaque corde en ajoutant cet intervalle au do central.
Lilypond calcule automatiquement le nombre de cordes à représenter dans
la tablature (TabStaff
) en comptant le nombre d’éléments définis
dans le stringTunings
.
N’importe quel accordage peut donc être créé. Par exemple, nous pouvons
définir l’accordage d’un instrument à quatre cordes accordées do sol ré
la, donc de la plus aiguë à la plus grave et en anglais :
a''
, d''
, g'
, et c'
:
mynotes = { c'4 e' g' c'' | e'' g'' b'' c''' } << \new Staff { \clef treble \mynotes } \new TabStaff { \set TabStaff.stringTunings = #'(21 14 7 0) \mynotes } >>
Voir aussi
Fichiers d’initialisation : ‘scm/output-lib.scm’.
Morceaux choisis : Fretted strings.
Référence des propriétés internes : Tab_note_heads_engraver.
Problèmes connus et avertissements
Le calcul automatique des tablatures se révèle inapproprié pour les instruments dont l’ordre des cordes ne correspond pas à l’ordre des hauteurs, comme le ukulele.
Tablatures sous forme d’étiquette
On peut ajouter des diagrammes d’accords au-dessus de n’importe quelle
note, en tant qu’objets \markup
. Ces objets contiennent toutes
les informations du diagramme d’accord. Il y a pour les définir trois
interfaces "diagramme d’accord" (fret-diagram en anglais) :
standard, terse et verbose.
Ces trois interfaces produiront des diagrammes similaires mais
permettent des niveaux de personnalisation différents. Des détails à
propos des interfaces de type \markup
peuvent être trouvés dans Text markup commands.
Dans l’interface standard des diagrammes d’accords, on indiquera le numéro de corde et le numéro de case pour chaque point placé sur une corde. Les cordes à vide et étouffées peuvent aussi être indiquées.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram #"6-x;5-3;4-2;3-o;2-1;1-o;" < d a d' f'> ^\markup \fret-diagram #"6-x;5-x;4-o;3-2;2-3;1-1;" } >>
Les indications de barré peuvent aussi être ajoutées au diagramme d’accord dans l’interface standard :
<< \context ChordNames { \chordmode { f1 g } } \context Staff { \clef "treble_8" < f, c f a c' f'>1 ^\markup \fret-diagram #"c:6-1-1;6-1;5-3;4-3;3-2;2-1;1-1;" < g, d g b d' g'> ^\markup \fret-diagram #"c:6-1-3;6-3;5-5;4-5;3-4;2-3;1-3;" } >>
La taille du diagramme d’accord ainsi que le nombre de cases représentées peuvent aussi être modifiés dans l’interface standard.
<< \context ChordNames { \chordmode { f1 g } } \context Staff { \clef "treble_8" < f, c f a c' f'>1 ^\markup \fret-diagram #"s:1.5;c:6-1-1;6-1;5-3;4-3;3-2;2-1;1-1;" < g, b, d g b g'> ^\markup \fret-diagram #"h:6;6-3;5-2;4-o;3-o;2-o;1-3;" } >>
Le nombre de cordes dans les diagrammes d’accord peut être modifié dans l’interface standard pour s’adapter à différents instruments tels que le banjo et le ukulele.
<< \context ChordNames { \chordmode { a1 } } \context Staff { %% A chord for ukulele a'1 ^\markup \fret-diagram #"w:4;4-2-2;3-1-1;2-o;1-o;" } >>
Des indications de doigtés peuvent être ajoutées, et le positionnement de ces doigtés peut être modifié dans l’interface standard.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram #"f:1;6-x;5-3-3;4-2-2;3-o;2-1-1;1-o;" < d a d' f'> ^\markup \fret-diagram #"f:2;6-x;5-x;4-o;3-2-2;2-3-3;1-1-1;" } >>
La taille ainsi que la position des points peuvent être contrôlées dans l’interface standard.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram #"d:0.35;6-x;5-3;4-2;3-o;2-1;1-o;" < d a d' f'> ^\markup \fret-diagram #"p:0.2;6-x;5-x;4-o;3-2;2-3;1-1;" } >>
Dans l’interface fret-diagram-terse
, les numéros de cordes sont
omis ; les numéros de cordes sont induits par la présence de
points-virgules. Il y a un point-virgule pour chaque corde du
diagramme. Le premier point-virgule correspondant au plus haut numéro
de corde, le dernier à la première corde. Les cordes étouffées, les
cordes à vide ainsi que les numéros de case peuvent y être indiqués.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram-terse #"x;3;2;o;1;o;" < d a d' f'> ^\markup \fret-diagram-terse #"x;x;o;2;3;1;" } >>
Les indications de barré peuvent être incluses dans l’interface
fret-diagram-terse
.
<< \context ChordNames { \chordmode { f1 g } } \context Staff { \clef "treble_8" < f, c f a c' f'>1 ^\markup \fret-diagram-terse #"1-(;3;3;2;1;1-);" < g, d g b d' g'> ^\markup \fret-diagram-terse #"3-(;5;5;4;3;3-);" } >>
Les indications de doigtés peuvent être inclus dans l’interface
fret-diagram-terse
.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \override Voice.TextScript #'(fret-diagram-details finger-code) = #'below-string \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram-terse #"x;3-3;2-2;o;1-1;o;" < d a d' f'> ^\markup \fret-diagram-terse #"x;x;o;2-2;3-3;1-1;" } >>
Les autres propriétés des diagrammes d’accord doivent être ajustées en
utilisant la commande \override
dans l’interface
fret-diagram-terse
.
L’interface fret-diagram-verbose
est au format d’une liste
Scheme. Chaque élément de la liste décrit un objet devant être placé
dans le diagramme d’accord.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram-verbose #'( (mute 6) (place-fret 5 3) (place-fret 4 2) (open 3) (place-fret 2 1) (open 1) ) < d a d' f'> ^\markup \fret-diagram-verbose #'( (mute 6) (mute 5) (open 4) (place-fret 3 2) (place-fret 2 3) (place-fret 1 1) ) } >>
Les indications de doigté et de barré peuvent être décrits dans
l’interface fret-diagram-verbose
. Particularité propre à
l’interface fret-diagram-verbose
: l’indication
de capodastre dans le diagramme d’accord. L’indication de capodastre
est une petite ligne transversale aux cordes. La case avec le
capodastre est la case la plus basse du diagramme d’accord.
<< \context ChordNames { \chordmode { f1 g c } } \context Staff { \clef "treble_8" \override Voice.TextScript #'(fret-diagram-details finger-code) = #'below-string < f, c f a c' f'>1 ^\markup \fret-diagram-verbose #'( (place-fret 6 1) (place-fret 5 3) (place-fret 4 3) (place-fret 3 2) (place-fret 2 1) (place-fret 1 1) (barre 6 1 1) ) < g, b, d g b g'> ^\markup \fret-diagram-verbose #'( (place-fret 6 3 2) (place-fret 5 2 1) (open 4) (open 3) (open 2) (place-fret 1 3 3) ) < c e g c' e'> ^\markup \fret-diagram-verbose #'( (capo 3) (mute 6) (place-fret 4 5 1) (place-fret 3 5 2) (place-fret 2 5 3) ) } >>
Toutes les autres propriétés du diagramme d’accord doivent être
indiquées en utilisant la commande \override
lorsque l’on utilise
l’interface fret-diagram-verbose
.
La disposition graphique d’un diagramme d’accord peut être modifiée
suivant les préférences de l’utilisateur grâce aux propriétés de
l’interface fret-diagram-interface
.
Des détails se trouvent dans
fret-diagram-interface. Pour
un diagramme d’accord, les propriétés de l’interface dépendent de
Voice.TextScript
.
Morceaux choisis
Personnalisation des diagrammes de fret
Les propriétés d’un diagramme de fret sont modifiables grâce au
'fret-diagram-details
. Lorsqu’ils sont générés sous forme
de \markup
, rien n’empêche de les modifier en jouant sur les
réglages de l’objet Voice.TextScript
ou bien directement sur
le « markup ».
<< \chords { c1 | c | c | d } \new Voice = "mel" { \textLengthOn % Set global properties of fret diagram \override TextScript #'size = #'1.2 \override TextScript #'(fret-diagram-details finger-code) = #'in-dot \override TextScript #'(fret-diagram-details dot-color) = #'white %% C major for guitar, no barre, using defaults % terse style c'1^\markup { \fret-diagram-terse #"x;3-3;2-2;o;1-1;o;" } %% C major for guitar, barred on third fret % verbose style % size 1.0 % roman fret label, finger labels below string, straight barre c'1^\markup { % standard size \override #'(size . 1.0) { \override #'(fret-diagram-details . ( (number-type . roman-lower) (finger-code . in-dot) (barre-type . straight))) { \fret-diagram-verbose #'((mute 6) (place-fret 5 3 1) (place-fret 4 5 2) (place-fret 3 5 3) (place-fret 2 5 4) (place-fret 1 3 1) (barre 5 1 3)) } } } %% C major for guitar, barred on third fret % verbose style % landscape orientation, arabic numbers, M for mute string % no barre, fret label down or left, small mute label font c'1^\markup { \override #'(fret-diagram-details . ( (finger-code . below-string) (number-type . arabic) (label-dir . -1) (mute-string . "M") (orientation . landscape) (barre-type . none) (xo-font-magnification . 0.4) (xo-padding . 0.3))) { \fret-diagram-verbose #'((mute 6) (place-fret 5 3 1) (place-fret 4 5 2) (place-fret 3 5 3) (place-fret 2 5 4) (place-fret 1 3 1) (barre 5 1 3)) } } %% simple D chord % terse style % larger dots, centered dots, fewer frets % label below string d'1^\markup { \override #'(fret-diagram-details . ( (finger-code . below-string) (dot-radius . 0.35) (dot-position . 0.5) (fret-count . 3))) { \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;" } } } >>
Voir aussi
Manuel de notation : Text markup commands.
Morceaux choisis : Fretted strings.
Référence des propriétés internes : fret-diagram-interface.
Tablatures prédéfinies
Les diagrammes d’accords peuvent être affichés en utilisant le contexte
FretBoards
. Par défaut le contexte FretBoards
affichera
des diagrammes d’accords stockés dans une table de correspondance :
\include "predefined-guitar-fretboards.ly" \context FretBoards { \chordmode { c1 d } }
Les diagrammes d’accord définis par défaut sont dans le fichier
predefined-guitar-fretboards.ly
. Les diagrammes d’accord sont
stockés en fonction des notes de l’accord ainsi que de l’accordage
(stringTunings
) utilisé.
predefined-guitar-fretboards.ly
contient les diagrammes d’accord
prédéfinis uniquement pour l’accordage standard (guitar-tuning
).
Des diagrammes d’accords peuvent être définis pour d’autres instruments
ou d’autres accordages en suivant les exemples du fichier
predefined-guitar-fretboards.ly
.
Les diagrammes de fret propres au ukulele se trouvent dans le fichier
predefined-ukulele-fretboards.ly
.
\include "predefined-ukulele-fretboards.ly" myChords = \chordmode { a1 a:m a:aug } \new ChordNames { \myChords } \new FretBoards { \set stringTunings = #ukulele-tuning \myChords }
Les notes des accords peuvent être entrées aussi bien comme musique simultanée qu’en utilisant le mode accord (voir Généralités sur le mode accords).
\include "predefined-guitar-fretboards.ly" \context FretBoards { \chordmode {c1} <c' e' g'>1 }
Il est courant d’afficher simultanément le nom des accords et les
diagrammes d’accords correspondants.
Ceci s’obtient en mettant en parallèle un contexte ChordNames
avec
un contexte FretBoards
et en affectant aux deux la même musique.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 f g } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Les diagrammes d’accords prédéfinis sont transposables tant qu’il y a un diagramme correspondant à l’accord transposé dans la base des diagrammes d’accords.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 f g } mychordlist = { \mychords \transpose c e { \mychords} } << \context ChordNames { \mychordlist } \context FretBoards { \mychordlist } >>
La table des diagrammes d’accord contient sept types d’accord (majeur,
mineur, augmenté, diminué, septième de dominante, majeur sept, mineur
sept) pour chacune des 17 fondamentales possibles. Une liste complète
des diagrammes d’accords prédéfinis se trouve dans
Tablatures prédéfinies. S’il n’y a pas d’entrée dans la table
pour un accord donné, le graveur Fretboard_engraver
calculera le
diagramme d’accord en utilisant la fonctionnalité automatique décrite
dans Tablatures automatiques.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 c:9 } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Des diagrammes d’accord peuvent être ajoutés à la table des diagrammes d’accord. Pour ajouter un diagramme d’accord, il faut spécifier l’accord correspondant au diagramme, l’accord utilisé et la définition du diagramme. Cette définition de diagramme peut être aussi bien de type terse que verbose.
\include "predefined-guitar-fretboards.ly" \storePredefinedDiagram \chordmode {c:9} #guitar-tuning #"x;3-2;2-1;3-3;3-4;x;" mychords = \chordmode{ c1 c:9 } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
On peut enregistrer différents diagrammes pour un même accord en les définissant à des octaves différentes. Notez qu’il faut un intervalle de deux octaves, le premier servant à la transposition.
\include "predefined-guitar-fretboards.ly" \storePredefinedDiagram \chordmode {c'} #guitar-tuning #(offset-fret 2 (chord-shape 'bes guitar-tuning)) mychords = \chordmode{ c1 c' } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
En plus des diagrammes d’accord, LilyPond possède une liste interne de
carrures d’accord.
Les carrures d’accords sont des diagrammes d’accord qui peuvent être
transposés le long du manche. Les carrures d’accords peuvent être
ajoutées à la liste interne et être ensuite utilisées pour définir des
accords prédéfinis. Puisqu’elles sont transposables le long du
manche, les carrures d’accord ne contiennent généralement pas de corde
à vide. Tout comme les diagrammes d’accord, les carrures d’accord sont
définies grâce aux interfaces fret-diagram-terse
ou
fret-diagram-verbose
.
\include "predefined-guitar-fretboards.ly" % add a new chord shape \addChordShape #'powerf #guitar-tuning #"1-1;3-3;3-4;x;x;x;" % add some new chords based on the power chord shape \storePredefinedDiagram \chordmode {f'} #guitar-tuning #(chord-shape 'powerf guitar-tuning) \storePredefinedDiagram \chordmode {g'} #guitar-tuning #(offset-fret 2 (chord-shape 'powerf guitar-tuning)) mychords = \chordmode{ f1 f' g g' } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
La disposition graphique d’un diagramme d’accord peut être modifiée
suivant les préférences de l’utilisateur grâce aux propriétés de
l’interface fret-diagram-interface
. Pour plus d’information,
consultez
fret-diagram-interface. Pour un diagramme
d’accord donné, les propriétés de l’interface dépendent de
FretBoards.FretBoard
.
Morceaux choisis
Customizing fretboard fret diagrams
Fret diagram properties can be set through
'fret-diagram-details
. For FretBoard fret diagrams, overrides
are applied to the FretBoards.FretBoard
object. Like
Voice
, FretBoards
is a bottom level context, therefore
can be omitted in property overrides.
\include "predefined-guitar-fretboards.ly" \storePredefinedDiagram \chordmode { c' } #guitar-tuning #"x;1-1-(;3-2;3-3;3-4;1-1-);" << \new ChordNames { \chordmode { c1 | c | c | d } } \new FretBoards { % Set global properties of fret diagram \override FretBoards.FretBoard #'size = #'1.2 \override FretBoard #'(fret-diagram-details finger-code) = #'in-dot \override FretBoard #'(fret-diagram-details dot-color) = #'white \chordmode { c \once \override FretBoard #'size = #'1.0 \once \override FretBoard #'(fret-diagram-details barre-type) = #'straight \once \override FretBoard #'(fret-diagram-details dot-color) = #'black \once \override FretBoard #'(fret-diagram-details finger-code) = #'below-string c' \once \override FretBoard #'(fret-diagram-details barre-type) = #'none \once \override FretBoard #'(fret-diagram-details number-type) = #'arabic \once \override FretBoard #'(fret-diagram-details orientation) = #'landscape \once \override FretBoard #'(fret-diagram-details mute-string) = #"M" \once \override FretBoard #'(fret-diagram-details label-dir) = #LEFT \once \override FretBoard #'(fret-diagram-details dot-color) = #'black c' \once \override FretBoard #'(fret-diagram-details finger-code) = #'below-string \once \override FretBoard #'(fret-diagram-details dot-radius) = #0.35 \once \override FretBoard #'(fret-diagram-details dot-position) = #0.5 \once \override FretBoard #'(fret-diagram-details fret-count) = #3 d } } \new Voice { c'1 | c' | c' | d' } >>
Création de diagrammes de fret prédéfinis pour d’autres instruments
La liste des diagrammes standards prédéfinis pour la guitare peut être augmentée d’autres définitions spécifiques à d’autres instruments. Voici comment définir un nouvel accordage ainsi que quelques diagrammes prédéfinis pour le « cuatro vénézuélien ».
Cet exemple illustre aussi la manière d’ajouter des doigtés aux
accords ; ils serviront de référence pour la boucle d’accord et seront
indiqués dans les diagrammes et le TabStaff
, mais pas dans la musique.
Ces diagrammes ne peuvent pas être transposés, dans la mesure où ils contiennent des informations sur les cordes. Ceci est amené à évoluer.
% add FretBoards for the Cuatro % Note: This section could be put into a separate file % predefined-cuatro-fretboards.ly % and \included into each of your compositions cuatroTuning = #'(11 18 14 9) dSix = { <a\4 b\1 d\3 fis\2> } dMajor = { <a\4 d\1 d\3 fis \2> } aMajSeven = { <a\4 cis\1 e\3 g\2> } dMajSeven = { <a\4 c\1 d\3 fis\2> } gMajor = { <b\4 b\1 d\3 g\2> } \storePredefinedDiagram \dSix #cuatroTuning #"o;o;o;o;" \storePredefinedDiagram \dMajor #cuatroTuning #"o;o;o;3-3;" \storePredefinedDiagram \aMajSeven #cuatroTuning #"o;2-2;1-1;2-3;" \storePredefinedDiagram \dMajSeven #cuatroTuning #"o;o;o;1-1;" \storePredefinedDiagram \gMajor #cuatroTuning #"2-2;o;1-1;o;" % end of potential include file /predefined-cuatro-fretboards.ly #(set-global-staff-size 16) primerosNames = \chordmode { d:6 d a:maj7 d:maj7 g } primeros = { \dSix \dMajor \aMajSeven \dMajSeven \gMajor } \score { << \new ChordNames { \set chordChanges = ##t \primerosNames } \new Staff { \new Voice \with { \remove "New_fingering_engraver" } \relative c'' { \primeros } } \new FretBoards { \set stringTunings = #cuatroTuning \override FretBoard #'(fret-diagram-details string-count) = #'4 \override FretBoard #'(fret-diagram-details finger-code) = #'in-dot \primeros } \new TabStaff \relative c'' { \set TabStaff.stringTunings = #cuatroTuning \primeros } >> \layout { \context { \Score \override SpacingSpanner #'base-shortest-duration = #(ly:make-moment 1 16) } } \midi { } }
Voir aussi
Manuel de notation : Tablatures personnalisées, Tablatures automatiques, Généralités sur le mode accords, Tablatures prédéfinies.
Fichiers d’initialisation : ‘ly/predefined-guitar-fretboards.ly’, ‘ly/predefined-guitar-ninth-fretboards.ly’.
Morceaux choisis : Fretted strings.
Référence des propriétés internes : fret-diagram-interface.
Tablatures automatiques
Les diagrammes d’accord peuvent être créés automatiquement ; il suffit
d’affecter les notes à un contexte FretBoards
. Si aucun
diagramme prédéfini n’est disponible pour les notes entrées avec
l’accordage actuel (stringTunings
), les cordes et cases
correspondant aux notes seront automatiquement calculées.
<< \context ChordNames { \chordmode { f1 g } } \context FretBoards { < f, c f a c' f'>1 < g,\6 b, d g b g'> } \context Staff { \clef "treble_8" < f, c f a c' f'>1 < g, b, d g b' g'> } >>
Dans la mesure où aucun diagramme prédéfini n’est chargé par défaut, le calcul automatique des diagrammes d’accord est le comportement par défaut. Dès que les diagrammes par défaut sont chargés, le calcul automatique peut être activé ou désactivé par des commandes prédéfinies :
\storePredefinedDiagram <c e g c' e'> #guitar-tuning #"x;3-1-(;5-2;5-3;5-4;3-1-1);" << \context ChordNames { \chordmode { c1 c c } } \context FretBoards { <c e g c' e'>1 \predefinedFretboardsOff <c e g c' e'> \predefinedFretboardsOn <c e g c' e'> } \context Staff { \clef "treble_8" <c e g c' e'>1 <c e g c' e'> <c e g c' e'> } >>
Parfois le calculateur se trouvera incapable de trouver un diagramme
d’accord convenable. On peut souvent y remédier en assignant les notes
aux cordes. Dans bien des cas, il suffit de placer manuellement une
seule note pour que les autres soient alors placées de maniére
appropriée par le contexte FretBoards
.
Il est possible d’ajouter des indications de doigté aux diagrammes de fret.
<< \context ChordNames { \chordmode { c1 d:m } } \context FretBoards { < c-3 e-2 g c'-1 e' > 1 < d a-2 d'-3 f'-1> } \context Staff { \clef "treble_8" < c e g c' e' > 1 < d a d' f'> } >>
La propriété minimumFret
permet de définir la case minimale qui
servira à calculer les cordes et les cases du contexte FretBoard
.
<< \context ChordNames { \chordmode { d1:m d:m } } \context FretBoards { < d a d' f'> \set FretBoards.minimumFret = #5 < d a d' f'> } \context Staff { \clef "treble_8" < d a d' f'> < d a d' f'> } >>
Les cordes et les cases du contexte FretBoards
sont liées à la
propriété stringTunings
, qui a là même signification que dans le
contexte TabStaff
.
Voir Tablatures personnalisées pour plus d’information sur la
propriété stringTunings
.
La disposition graphique d’un diagramme d’accord peut être modifiée
suivant les préférences de l’utilisateur au travers des propriétés de
l’interface fret-diagram-interface
. Pour un diagramme
d’accord, les propriétés de l’interface dépendent de
FretBoards.FretBoard
.
Commandes prédéfinies
\predefinedFretboardsOff
,
\predefinedFretboardsOn
.
Voir aussi
Manuel de notation : Tablatures personnalisées.
Morceaux choisis : Fretted strings.
Référence des propriétés internes : fret-diagram-interface.
Problèmes connus et avertissements
Le calcul automatique des diagrammes de fret se révèle inapproprié pour les instruments dont l’ordre des cordes ne correspond pas à l’ordre des hauteurs.
Doigtés pour la main droite
Les doigtés de main droite p-i-m-a doivent être entrés dans une
construction de type accord <>
même s’il n’y a qu’une seule note.
Note : Un trait d’union doit suivre la note et une espace
doit précéder la fermeture de la construction par un >
.
\clef "treble_8" <c-\rightHandFinger #1 >4 <e-\rightHandFinger #2 > <g-\rightHandFinger #3 > <c-\rightHandFinger #4 > <c,-\rightHandFinger #1 e-\rightHandFinger #2 g-\rightHandFinger #3 c-\rightHandFinger #4 >1
Pour plus de clarté, vous pouvez traduire ou abréger la commande
\rightHandFinger
, par exemple en \doigtMainDroite
ou
même \MD
:
#(define MD rightHandFinger)
Morceaux choisis
Positionnement des doigtés main droite
Vous disposez d’une propriété spécifique qui permet de contrôler plus finement le positionnement des doigtés main droite, comme l’indique l’exemple suivant.
#(define RH rightHandFinger) \relative c { \clef "treble_8" \set strokeFingerOrientations = #'(up down) <c-\RH #1 e-\RH #2 g-\RH #3 c-\RH #4 >4 \set strokeFingerOrientations = #'(up right down) <c-\RH #1 e-\RH #2 g-\RH #3 c-\RH #4 >4 \set strokeFingerOrientations = #'(left) <c-\RH #1 e-\RH #2 g-\RH #3 c-\RH #4 >2 }
Doigtés indications de cordeet doigtés main droite
L’exemple suivant illustre comment combiner des doigtés pour la main gauche, des indications de corrde et des doigtés pour la main droite.
#(define RH rightHandFinger) \relative c { \clef "treble_8" <c-3\5-\RH #1 >4 <e-2\4-\RH #2 >4 <g-0\3-\RH #3 >4 <c-1\2-\RH #4 >4 }
Voir aussi
Morceaux choisis : Fretted strings.
Référence des propriétés internes : StrokeFinger.
2.4.2 Guitare
La plupart des aspects en matière de notation pour guitare sont traités dans la partie commune aux instruments frettés. Il subsiste cependant quelques particularités que nous allons maintenant examiner. Parfois l’utilisateur aimerait créer des documents de type recueil de chansons, où l’on ne trouve que des accords au-dessus des paroles. Dans la mesure où LilyPond est un éditeur de partitions, il n’est pas l’outil optimal pour des documents sans partition. Une meilleure alternative serait de recourrir à un traitement de texte, un éditeur de texte ou, pour les utilisateurs experimentés, un logiciel typographique tel que GuitarTex.
Indication de la position et du barré | ||
Indication des harmoniques et notes étouffées |
Indication de la position et du barré
Cet exemple montre comment indiquer les positions et les barrés :
\clef "treble_8" b16 d g b e \textSpannerDown \override TextSpanner #'(bound-details left text) = #"XII " g16\startTextSpan b16 e g e b g\stopTextSpan e16 b g d
Voir aussi
Manuel de notation : @ref{Extensions de texte}.
Morceaux choisis : Fretted strings, Expressive marks.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Indication de la position et du barré ] | [ Plus haut: Guitare ] | [ Banjo > ] |
Indication des harmoniques et notes étouffées
Des têtes de note spéciales peuvent servir à indiquer les notes étouffées et les sons harmoniques. Les sons harmoniques sont souvent détaillés grâce à des indications textuelles.
\relative c' { \clef "treble_8" \override Staff.NoteHead #'style = #'cross g8 a b c b4 \override Staff.NoteHead #'style = #'harmonic-mixed d^\markup { \italic { \fontsize #-2 { "harm. 12" }}} <g b>1 }
Voir aussi
Morceaux choisis : Fretted strings.
Manuel de notation : Têtes de note spécifiques, Têtes de note.
2.4.3 Banjo
Tablatures pour banjo |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Banjo ] | [ Plus haut: Banjo ] | [ Percussions > ] |
Tablatures pour banjo
LilyPond permet d’écrire des tablatures de base pour le banjo à cinq cordes. Pour ce faire, pensez à utiliser le format de tablature pour banjo, afin d’avoir le bon nombre de cordes et le bon accordage :
\new TabStaff << \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo \set TabStaff.stringTunings = #banjo-open-g-tuning { \stemDown g8 d' g'\5 a b g e d' | g4 d''8\5 b' a'\2 g'\5 e'\2 d' | g4 } >>
LilyPond prend en charge un certain nombre d’accordages courants pour
banjo : banjo-c-tuning
sol,do,sol,si,ré (gCGBD),
banjo-modal-tuning
sol,ré,sol,do,ré (gDGCD),
banjo-open-d-tuning
la,ré,fa#,la,ré (aDF#AD) et
banjo-open-dm-tuning
la,ré,fa,la,ré (aDFAD).
Ces accordages peuvent être convertis pour banjo à quatre cordes au
moyen de la fonction four-string-banjo
:
\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
Voir aussi
Morceaux choisis : Fretted strings.
Les accordages prédéfinis du banjo sont contenus dans le fichier ‘scm/output-lib.scm’.
2.5 Percussions
2.5.1 Vue d’ensemble des percussions |
2.5.1 Vue d’ensemble des percussions
La notation rythmique sert avant tout aux parties de percussions ou de batterie, mais on peut aussi s’en servir à des fins pédagogiques, pour montrer le rythme d’une mélodie.
Références en matière de notation pour percussions | ||
Notation de base pour percussions | ||
Portées de percussion | ||
Notes fantômes |
Références en matière de notation pour percussions
Notation de base pour percussions
Les parties de percussions peuvent être saisies avec le mode \drummode
,
qui est l’équivalent du mode standard utilisé pour les notes à hauteur
déterminée. Chaque instrument de percussion peut avoir, dans le
fichier LilyPond, un nom complet et un nom raccourci.
\drums { hihat hh bassdrum bd }
Ces noms sont inventoriés dans le fichier d’initialisation ‘ly/drumpitch-init.ly’.
Voir aussi
Référence du Programme : note-event.
Portées de percussion
Une partie de percussions utilisant plusieurs instruments requiert en général une portée de plusieurs lignes, où chaque hauteur sur la portée représente un instrument à percussion.
Pour saisir cette musique, il faut que les notes soient situées dans des contextes DrumStaff et DrumVoice.
up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat } down = \drummode { bassdrum4 snare8 bd r bd sn4 } \new DrumStaff << \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
L’exemple ci-dessus montre une notation polyphonique détaillée. La notation polyphonique abrégée peut être employée lorsque le contexte DrumVoice est spécifié explicitement :
\new DrumStaff << \new DrumVoice = "1" { s1 *2 } \new DrumVoice = "2" { s1 *2 } \drummode { bd4 sn4 bd4 sn4 << { \repeat unfold 16 hh16 } \\ { bd4 sn4 bd4 sn4 } >> } >>
On peut choisir d’autres mises en forme si l’on définit la propriété
drumStyleTable
dans le contexte
DrumVoice.
Quelques variables prédéfinies sont disponibles :
-
drums-style
La notation par défaut : une batterie standard, sur une portée de cinq lignes.
Le plan de la batterie peut inclure jusqu’à six toms différents. Bien sûr, vous n’êtes pas obligé de tous les utiliser si la musique en prévoit moins ; par exemple, les trois toms des lignes du milieu sont
tommh
,tomml
, ettomfh
.-
timbales-style
Ce style permet de saisir une partie de timbales, sur une portée à deux lignes.
-
congas-style
Ce style produit une portée à deux lignes pour une partie de congas.
-
bongos-style
Ce style produit une portée à deux lignes pour une partie de bongos.
-
percussion-style
Ce style permet de saisir toute sorte de percussions sur des portées d’une ligne.
Cependant, si aucun des styles prédéfinis ne vous convient, il est aisé de définir le vôtre en début de fichier.
#(define mydrums '( (bassdrum default #f -1) (snare default #f 0) (hihat cross #f 1) (halfopenhihat cross "halfopen" 1) (pedalhihat xcircle "stopped" 2) (lowtom diamond #f 3))) up = \drummode { hh8 hh hhho hhho hhp4 hhp } down = \drummode { bd4 sn bd toml8 toml } \new DrumStaff << \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
Voir aussi
Fichier d’initialisation : ‘ly/drumpitch-init.ly’.
Référence du programme : DrumStaff, DrumVoice.
Problèmes connus et avertissements
La bibliothèque MIDI générale ne contient pas les rimshots — coups sur le bord de la caisse claire — donc ils sont remplacés par des sidesticks, largement équivalents.
Notes fantômes
Des notes fantômes peuvent être créées pour les parties de percussion,
grâce à la commande \parenthesize
décrite dans
Parenthèses. Cependant, le mode \drummode
n’inclut pas par
défaut le graveur Parenthesis_engraver
qui permet d’imprimer ces
signes. Il faut donc l’ajouter explicitement dans la définition du
contexte, suivant la manœuvre indiquée dans La commande \set
.
\new DrumStaff \with { \consists "Parenthesis_engraver" } << \context DrumVoice = "1" { s1 *2 } \context DrumVoice = "2" { s1 *2 } \drummode { << { hh8[ hh] <hh sn> hh16 < \parenthesize sn > hh < \parenthesize sn > hh8 <hh sn> hh } \\ { bd4 r4 bd8 bd r8 bd } >> } >>
Notez que les commandes \parenthesize
obligent à ajouter des
accords — sous la forme < >
— autour de chaque élément.
2.6 Instruments à vent
Ce chapitre traite de certains aspects particuliers en matière de notation pour instruments à vent.
2.6.1 Vue d’ensemble des instruments à vent | ||
2.6.2 Cornemuse |
2.6.1 Vue d’ensemble des instruments à vent
Nous allons aborder ici quelques aspects communs à la plupart des instruments à vent.
Références en matière d’instruments à vent | ||
• Doigtéspour vents |
Références en matière d’instruments à vent
Ce qui caractérise les partitions pour instruments à vent a trait principalement à la respiration et à l’attaque :
- Les respirations s’indiquent par des silences ou des Signes de respiration.
- Un jeu legato s’indique par des Liaisons d’articulation.
- Les différents types d’attaque – legato, détaché ou piqué – s’indiquent en principe par des signes d’articulation, parfois agrémentés de liaisons. Voir à ce sujet Articulations et ornements et Liste des signes d’articulation.
- Un Flatterzunge (trémolo dental ou trémolo en roulant les r) s’indique par une marque de trémolo et une étiquette textuelle attachée à la note concernée. Voir à ce sujet Répétitions en trémolo.
D’autres aspects de la notation s’appliquent aussi aux instruments à vent :
- De nombreux instruments à vent sont transpositeurs ; voir Instruments transpositeurs.
- Les glissandos sont l’une des caractéristiques du trombone à coulisse, bien que d’autres instruments puisssent y parvenir en jouant sur les pistons ou des clés ; consulter Glissando.
- Des glissandos harmoniques sont réalisables par les cuivres. Ils sont traditionnellement indiqués par des Notes d’ornement.
- Les inflections en fin de note sont abordées au chapitre Chutes et sauts.
- Les « bruitages » de clé ou de piston s’indiquent souvent par le
style
cross
ou des Têtes de note spécifiques. - Les bois peuvent émettre des harmoniques dans le bas de leur
registre. On les indique avec un
flageolet
– voir Liste des signes d’articulation. - En ce qui concerne les cuivres, la sourdine s’indique en pricipe
par une étiquette textuelle. Cependant, lorsque les changements sont
nombreux et rapides, il est d’usage de recourrir aux articulations
stopped
etopen
. Pour de plus amples détails, voir Articulations et ornements et Liste des signes d’articulation. - La sourdine du cor d’harmonie s’indique par un
stopped
. Voir le chapitre Articulations et ornements.
Morceaux choisis
Modifier la taille d’un \flageolet
Il est possible de rapetisser le cercle d’un \flageolet
grâce
à une fonction Scheme.
smallFlageolet = #(let ((m (make-articulation "flageolet"))) (set! (ly:music-property m 'tweaks) (acons 'font-size -3 (ly:music-property m 'tweaks))) m) \layout { ragged-right = ##f } \relative c'' { d4^\flageolet_\markup { default size } d_\flageolet c4^\smallFlageolet_\markup { smaller } c_\smallFlageolet }
Voir aussi
Manuel de notation : Signes de respiration, Liaisons d’articulation, Articulations et ornements, Liste des signes d’articulation, Répétitions en trémolo, Instruments transpositeurs, Glissando, Notes d’ornement, Chutes et sauts, Têtes de note spécifiques,
Morceaux choisis : Winds
Doigtés pour vents
Tout instrument à vent, hormis le trombone à coulisse, fait appel à plusieurs doigts pour produire un son.
TBC
2.6.2 Cornemuse
Voici quelques informations spécifiques à la cornemuse.
Définitions pour la cornemuse | ||
Exemple pour la cornemuse |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Cornemuse ] | [ Plus haut: Cornemuse ] | [ Exemple pour la cornemuse > ] |
Définitions pour la cornemuse
LilyPond inclut des définitions spécifiques destinées à la notation pour cornemuse écossaise ; pour les utiliser, il suffit d’ajouter
\include "bagpipe.ly"
en début de fichier. Ainsi, vous bénéficierez de commandes courtes pour
les appogiatures spéciales et idiomatiques de la cornemuse. Par
exemple, \taor
est un raccourci pour
\grace { \small G32[ d G e] }
bagpipe.ly
prend également en charge les définitions de hauteurs
pour la cornemuse ; vous n’avez donc pas à vous soucier d’employer
\relative
ou \transpose
.
\include "bagpipe.ly" { \grg G4 \grg a \grg b \grg c \grg d \grg e \grg f \grA g A }
La musique pour cornemuse est traditionnellement écrite en ré majeur.
Dans la mesure où c’est la seule tonalité possible, l’usage est de ne
pas indiquer l’armure explicitement. À cet effet, pensez à commencer
votre partition par \hideKeySignature
– ou bien
\showKeySignature
si, pour une raison ou pour une autre, vous
tenez à afficher l’armure.
Des compositions actuelles peuvent ne pas respecter cette tonalité
traditionnelle, auquel cas les do et fa devraient être abaissés en
utilisant cflat
ou fflat
; ils seront représenté par une
note en forme de croix.
Lorsqu’on joue des œuvres moins cérémonieuses que pour une parade
ou un défilé, peut survenir un sol aigu, au doux nom de
« piobaireachd », et que l’on indiquera par gflat
.
Voir aussi
Exemple pour la cornemuse
Et voici en guise d’exemple, à quoi ressemble le chant populaire Amazing Grace, noté dans l’idiome de la cornemuse.
\include "bagpipe.ly" \layout { indent = 0.0\cm \context { \Score \remove "Bar_number_engraver" } } \header { title = "Amazing Grace" meter = "Hymn" arranger = "Trad. arr." } { \hideKeySignature \time 3/4 \grg \partial 4 a8. d16 \slurd d2 \grg f8[ e32 d16.] \grg f2 \grg f8 e \thrwd d2 \grg b4 \grG a2 \grg a8. d16 \slurd d2 \grg f8[ e32 d16.] \grg f2 \grg e8. f16 \dblA A2 \grg A4 \grg A2 f8. A16 \grg A2 \hdblf f8[ e32 d16.] \grg f2 \grg f8 e \thrwd d2 \grg b4 \grG a2 \grg a8. d16 \slurd d2 \grg f8[ e32 d16.] \grg f2 e4 \thrwd d2. \slurd d2 \bar "|." }
Voir aussi
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Exemple pour la cornemuse ] | [ Plus haut: Notation spécialisée ] | [ Mode accords > ] |
2.7 Notation des accords
2.7.1 Mode accords | ||
2.7.2 Gravure des accords | ||
2.7.3 Basse chiffrée |
2.7.1 Mode accords
Généralités sur le mode accords | ||
Accords courants | ||
Extensions et altération d’accords |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Mode accords ] | [ Plus haut: Mode accords ] | [ Accords courants > ] |
Généralités sur le mode accords
LilyPond permet de désigner les accords par leur chiffrage jazz.
S’il est possible d’entrer un accord sous sa forme musicale, avec
<.. >
, on peut aussi le saisir par son nom. Le logiciel traite
les accords comme des ensembles de hauteurs, donc les accords peuvent
être transposés.
twoWays = \transpose c c' { \chordmode { c1 f:sus4 bes/f } <c e g> <f bes c'> <f bes d'> } << \new ChordNames \twoWays \new Voice \twoWays >>
Cet exemple montre également que les jeux d’instructions qui permettent à LilyPond d’imprimer des accords ne cherchent pas à se montrer intelligents. Ici, le dernier accord n’est pas interprété comme étant renversé.
Notez bien que la valeur rythmique des accords doit être indiquée
à l’extérieur des symboles <>
.
<c e g>2
Accords courants
Dans le mode accords, introduit par la commande \chordmode
, les
accords ne sont indiqués que par leur note fondamentale.
\chordmode { es4. d8 c2 }
On peut cependant obtenir des accords différents, en utilisant le
caractère deux points (:
).
\chordmode { e1:m e1:7 e1:m7 }
Le nombre accolé à la note fondamentale est considéré comme chiffrage
jazz de l’accord, qui est de ce fait construit par un empilement de
tierces. Notez l’exception que constitue c:13
dans lequel la
onzième est délibérément omise.
\chordmode { c:3 c:5 c:6 c:7 c:8 c:9 c:10 c:11 c:13 }
Des accords encore plus complexes peuvent être élaborés en plusieurs étapes séparées. Ainsi, on peut enrichir l’accord par des notes ajoutées, que l’on indique après le chiffrage principal et que l’on sépare par des points :
\chordmode { c:5.6 c:3.7.8 c:3.6.13 }
On peut augmenter ou diminuer certains intervalles au moyen des
signes -
ou +
:
\chordmode { c:7+ c:5+.3- c:3-.5-.7- }
On peut aussi enlever certaines notes de l’accord, en les spécifiant
après un signe ^
— les notes ajoutées doivent être indiquées
avant les notes à enlever.
\chordmode { c^3 c:7^5 c:9^3.5 }
Voici les différents chiffrages disponibles, en plus des nombres que nous venons de voir :
-
m
Accord mineur. Ce chiffrage minorise la tierce, et la septième s’il y en a une.
-
dim
Accord diminué. Ce chiffrage minorise la tierce, diminue la quinte et la septième s’il y en a.
-
aug
Accord augmenté. Ce chiffrage augmente la quinte.
-
maj
Accord de septième majeure. Ce chiffrage majorise la septième s’il y en a une (dans le cas d’un accord parfait, ce chiffrage est facultatif).
-
sus
Accord de suspension. Ce chiffrage supprime la tierce, et y ajoute, suivant que vous spécifiez
2
ou4
, la seconde ou la quarte.
Il est bien sûr possible de mélanger ces chiffrages avec des notes ajoutées.
\chordmode { c:sus4 c:7sus4 c:dim7 c:m6 }
Dans la mesure où un accord de treizième majeure ne sonne pas très bien avec la onzième, la onzième est enlevée automatiquement, à moins que vous ne le spécifiez explicitement.
\chordmode { c:13 c:13.11 c:m13 }
Les accords peuvent être renversés ou combinés avec une note étrangère à
la basse, au moyen de accord/
note
\chordmode { c1 c/g c/f }
Si la note de basse précisée appartient à l’accord, la doublure
supérieure sera supprimée. Pour l’éviter, utilisez la syntaxe
/+
note.
\chordmode { c1 c/+g c/+f }
Le mode accords est semblable à \lyricmode
ou autre, c’est-à-dire que
la plupart des commandes sont encore disponibles ; ainsi, r
ou
\skip
peuvent servir à insérer des silences ou des silences
invisibles. De plus, les propriétés des objets peuvent être ajustées
ou modifiées.
Problèmes connus et avertissements
Aucun nom de note ne peut être indiqué deux fois dans un accord. Ainsi, dans l’accord suivant, seule la quinte augmentée est prise en compte, car elle est indiquée en dernier :
\chordmode { c:5.5-.5+ }
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Accords courants ] | [ Plus haut: Mode accords ] | [ Gravure des accords > ] |
Extensions et altération d’accords
2.7.2 Gravure des accords
Impression des noms d’accord | ||
Personnalisation des noms d’accord |
Impression des noms d’accord
Les chiffrages d’accords sont liés au contexte
ChordNames. Les accords peuvent être saisis soit au
moyen de la notation indiquée ci-dessus, soit directement avec les
symboles <
et >
.
harmonies = { \chordmode {a1 b c} <d' f' a'> <e' g' b'> } << \new ChordNames \harmonies \new Staff \harmonies >>
Vous pouvez faire ressortir les chiffrages d’accords en assignant la
valeur vrai à la propriété chordChanges
dans le contexte
ChordNames. De cette façon, les chiffrages ne sont
imprimés qu’aux changements d’accord ou en début de ligne.
harmonies = \chordmode { c1:m c:m \break c:m c:m d } << \new ChordNames { \set chordChanges = ##t \harmonies } \new Staff \transpose c c' \harmonies >>
Les exemples précédents montrent des chiffrages placés au-dessus de la portée, mais ce n’est pas obligatoire : les accords peuvent également être imprimés séparément – auquel cas vous aurez peut-être besoin d’ajouter le Volta_engraver et le Bar_engraver afin que les éventuelles barres de reprises s’affichent correctement.
\new ChordNames \with { \override BarLine #'bar-size = #4 \consists Bar_engraver \consists "Volta_engraver" } \chordmode { \repeat volta 2 { f1:maj7 f:7 bes:7 c:maj7 } \alternative { es e } }
Le modèle par défaut des chiffrages d’accord est celui de Klaus Ignatzek pour le jazz (cf. @ref{Bibliographie}). Il s’agit d’une notation anglo-saxonne ; cependant vous pouvez indiquer vos chiffrages en notation française au moyen de la commande \frenchChords (voir plus bas).
Il est possible de créer votre propre modèle de chiffrages en réglant les propriétés suivantes :
-
chordNameExceptions
C’est la liste des accords mis en forme de manière particulière.
Cette liste d’exceptions s’indique de la façon suivante. On commence par créer une expression musicale telle que
chExceptionMusic
= { <c f g bes>1 \markup { \super "7" "wahh" } }puis on la transforme en liste d’exceptions au moyen du code
(sequential-music-to-chord-exceptions chExceptionMusic #t)
Pour qu’elles soient effectives, on ajoute ces exceptions aux exceptions par défaut définies dans ‘ly/chord-modifier-init.ly’ :
(append (sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions)
Chord name exceptions
The property
chordNameExceptions
can be used to store a list of special notations for specific chords.% modify maj9 and 6(add9) % Exception music is chords with markups chExceptionMusic = { <c e g b d'>1-\markup { \super "maj9" } <c e g a d'>1-\markup { \super "6(add9)" } } % Convert music to list and prepend to existing exceptions. chExceptions = #( append ( sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions) theMusic = \chordmode { g1:maj9 g1:6.9 \set chordNameExceptions = #chExceptions g1:maj9 g1:6.9 } \layout { ragged-right = ##t } << \context ChordNames \theMusic \context Voice \theMusic >>
-
majorSevenSymbol
Cette propriété définit l’objet employé pour indiquer une septième majeure. Les options prédéfinies sont
whiteTriangleMarkup
(triangle blanc) etblackTriangleMarkup
(triangle noir).-
chordNameSeparator
Les différents termes d’un chiffrage jazz (par exemple les notes de l’accord et la basse) sont habituellement séparés par une barre oblique. La propriété
chordNameSeparator
permet d’indiquer un autre séparateur, par exemple\new ChordNames \chordmode { c:7sus4 \set chordNameSeparator = \markup { \typewriter "|" } c:7sus4 }
-
chordRootNamer
Dans les chiffrages d’accord jazz, la note fondamentale de chaque accord est exprimée par une lettre capitale, parfois suivie d’une altération, correspondant à la notation anglo-saxonne de la musique. Cette propriété a pour valeur la fonction qui transforme la hauteur de la note foncdamentale en nom de note ; c’est donc en assignant une nouvelle fonction à cette propriété que l’on peut produire des noms de note spéciaux, adaptés par exemple aux systèmes de notation d’autres pays.
-
chordNoteNamer
Lorsqu’un chiffrage mentionne une note ajoutée (par exemple la basse), les règles utilisées sont par défaut celles définies par la propriété
chordRootNamer
ci-dessus. Cependant, la propriétéchordNoteNamer
permet de régler cet élément indépendamment, par exemple pour imprimer la basse en caractères minuscules.-
chordPrefixSpacer
Le petit ‘m’ qui indique un accord mineur est, dans la notation anglo-saxonne, attaché à la lettre de l’accord. Cependant il est possible d’ajouter un espace en assignant la valeur vrai à la propriété
chordPrefixSpacer
. Cet espace sera omis si une altération est présente.
Les propriétés ci-dessus font l’objet de commandes prédéfinies
adaptées aux notations de différents pays : \germanChords
et
\semiGermanChords
pour la notation allemande,
\italianChords
pour la notation italienne et enfin
\frenchChords
pour la notation française.
LilyPond intègre également deux autres modèles de chiffrages : une notation Jazz alternative, et un modèle systématique appelé système Banter. Pour la mise en œuvre de ces modèles, voir Table des noms d’accord.
Commandes prédéfinies
\germanChords
,
\semiGermanChords
,
\italianChords
,
\frenchChords
.
Voir aussi
Exemples : Chords.
Fichiers internes : ‘scm/chords-ignatzek.scm’, et ‘scm/chord-entry.scm’.
Problèmes connus et avertissements
Les chiffrages d’accords ne sont déterminés que par la succession des
hauteurs de notes. En d’autres termes, les accords inversés ne sont pas
reconnus, ni les notes ajoutées à la basse. C’est pourquoi les accords
saisis au moyen de la syntaxe <.. >
peuvent produire des
chiffrages étranges.
Personnalisation des noms d’accord
2.7.3 Basse chiffrée
Introduction à la basse chiffrée | ||
Saisie de la basse chiffrée | ||
Gravure de la basse chiffrée |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Basse chiffrée ] | [ Plus haut: Basse chiffrée ] | [ Saisie de la basse chiffrée > ] |
Introduction à la basse chiffrée
Les parties de basse continue étaient très répandues dans la musique baroque et jusqu’à la fin du XVIIIe siècle. Comme son nom l’indique, le continuo constitue une partie à lui seul, qui se déroule tout au long de l’œuvre pour en donner la structure harmonique.
Les musiciens du continuo jouent des claviers (clavecin, orgue) ou de tout autre instrument pouvant réaliser des accords. Leur partie est constituée d’une portée de basse aux notes agrémentées de combinaisons de chiffres et signes indiquant le développement des accords à jouer, ainsi que leur éventuel renversement. Cette notation était avant tout un guide, invitant le musicien à improviser de lui-même l’accompagnement.
LilyPond gère la basse chiffrée.
<< \new Voice { \clef bass dis4 c d ais g fis} \new FiguredBass \figuremode { < 6 >4 < 7\+ >8 < 6+ [_!] > < 6 >4 <6 5 [3+] > < _ >4 < 6 5/>4 } >>
La gestion de la basse chiffrée se décompose en deux parties. Dans un
premier temps, le mode \figuremode
permet de saisir les accords
sous forme chiffrée. Le contexte
FiguredBass s’occupera
ensuite de gérer les objets
BassFigure.
En mode de saisie, un chiffrage est délimité par <
et
>
. La durée est indiquée après le >
:
<4 6>
Les altérations s’obtiennent en ajoutant aux chiffres les caractères
-
, !
ou +
. Un signe plus s’obtient grâce à
\+
, et une quinte ou septième diminuée par 5/
ou
7/
respectivement.
<4- 6+ 7!> <5++> <3--> <7/> r <6\+ 5/>
Le caractère _
insère un espace, et l’on peut imprimer des
crochets avec [
et ]
. Vous pouvez aussi ajouter des
chaînes de caractères ou des étiquettes — cf. Text markup commands.
<[4 6] 8 [_! 12] > <5 \markup { \number 6 \super (1) } >
Lorsque des chiffrages se répètent, vous pouvez utiliser des lignes de prolongation.
<< \new Staff { \clef bass c4 c c } \figures { \set useBassFigureExtenders = ##t <4 6> <3 6> <3 7> } >>
En pareil cas, la ligne de prolongation masquera toujours le chiffre qu’elle rappelle dans le chiffrage suivant.
Le contexte FiguredBass
ne tient aucun compte de la ligne de
basse. Par conséquent, il vous faudra peut être insérer des chiffrages
supplémentaires pour imprimer les prolongations, ou utiliser des
\!
pour les éviter, comme dans l’exemple suivant :
Lorsque vous utilisez des lignes de prolongation, les chiffres communs
seront verticalement alignés. Pour l’éviter, insérez un silence avec
r
afin de réinitialiser l’alignement. Par exemple, saisissez
<4 6>8 r8
au lieu de
<4 6>4
On peut choisir d’impriemr les altérations et signes plus aussi bien
avant qu’après les chiffres, en réglant les propriétés
figuredBassAlterationDirection
et
figuredBassPlusDirection
.
Bien que la gestion de la basse chiffrée ressemble beaucoup à celle
des accords, elle est beaucoup plus simpliste. Le mode
\figuremode
ne fait que stocker des chiffres que le contexte
FiguredBass se chargera d’imprimer tels quels. En
aucune manière ils ne sont transformés en son, et ils ne sont pas
rendus dans un fichier MIDI.
En interne, ce code produit des étiquettes de texte que vous
pouvez formater à votre convenance grâce aux propriétés des
étiquettes. Par exemple, l’espacement vertical des chiffrages est
déterminé par la propriété baseline-skip
.
On peut également ajouter une basse chiffrée directement à un contexte
Staff
. L’alignement vertical est alors automatiquement ajusté.
Propriétés couramment modifiées
Par défaut, les chiffres sont imprimés au-dessus de la portée. Pour les imprimer dessous, ajoutez
\override Staff.BassFigureAlignmentPositioning #'direction = #DOWN
Problèmes connus et avertissements
Si vous positionnez la basse chiffrée au dessus de la portée en ayant
recours aux lignes d’extension et implicitBassFigures
, les lignes
peuvent se mélanger. Préserver l’ordre des prolongateurs peut s’avérer
impossible lorsque plusieurs chiffrages qui se chevauchent en possèdent.
Ce problème peut être contourné en jouant sur l’empilement, avec la
propriété stacking-dir
de l’objet BassFigureAlignment
.
Voir aussi
Référence du programme : les objets BassFigure, BassFigureAlignment, BassFigureLine, BassFigureBracket et BassFigureContinuation, ainsi que le contexte FiguredBass.
Saisie de la basse chiffrée
Gravure de la basse chiffrée
2.8 Notations anciennes
2.8.1 Introduction aux notations anciennes
La gestion par LilyPond des formes de notation ancienne inclut des fonctionnalités spécifiques à la notation mensurale et au chant grégorien. La basse chiffrée est également partiellement prise en charge.
De nombreux objets graphiques — « grobs » dans le jargon de LilyPond
— disposent d’une propriété style
, comme nous le verrons dans
- Têtes de note anciennes,
- Altérations anciennes,
- Silences anciens,
- Clefs anciennes,
- Crochets anciens,
- Métriques anciennes.
Manipuler cette propriété permet d’adapter l’aspect typographique des grobs à une forme de notation particulière, ce qui évite la création de nouveaux concepts de notation.
En plus des signes d’articulation standards décrits à la section Articulations et ornements, la notation ancienne dispose de signes particuliers.
D’autres aspects de la notation ancienne ne peuvent pas être gérés aussi simplement qu’en jouant sur les propriétés d’un style appliqué à un objet graphique ou en lui ajoutant des articulations. Certains concepts sont spécifiques à la notation ancienne.
Si tout cela vous dépasse et que vous désirez plonger dans le vif du sujet sans trop vous préoccuper d’ajuster des contextes, consultez les pages dédiées aux contextes prédéfinis. Ils vous permettront d’adapter vos contextes de voix et de portée, et vous n’aurez plus qu’à saisir les notes.
LilyPond gère partiellement la représentation de basses chiffrées, typiques de l’époque baroque, mais également employées de nos jours en harmonie et en analyse.
Voici les points que nous allons aborder :
Formes de notation ancienne prises en charge |
Formes de notation ancienne prises en charge
2.8.2 Signes de note alternatifs
Têtes de note anciennes | ||
Altérations anciennes | ||
Silences anciens | ||
Clefs anciennes | ||
Crochets anciens | ||
Métriques anciennes |
Têtes de note anciennes
Pour de la musique ancienne, vous disposez de plusieurs styles de tête
de note, en plus du style par défaut default
. Vous pouvez
affecter à la propriété style
de l’objet
NoteHead
les valeurs baroque
, neomensural
, mensural
ou
petrucci
. En style baroque
, la seule différence par
rapport au style default
concerne la \breve
qui sera
carrée et non pas ovoïde. Le style neomensural
ajoute au
baroque
le fait que les notes de durée inférieure ou égale à une
ronde sont en forme de losange, et les hampes centrées sur la tête. Ce
style est particulièrement adapté à la transcription de la musique
mesurée dans les incipits. Le style mensural
permet de
reproduire les têtes de note telles qu’imprimées au XVIe siècle. Enfin,
le style petrucci
imite des partitions historiques, bien
qu’il utilise de plus grosses têtes de note.
L’exemple suivant illustre le style neomensural
.
\set Score.skipBars = ##t \override NoteHead #'style = #'neomensural a'\longa a'\breve a'1 a'2 a'4 a'8 a'16
Si vous écrivez en notation grégorienne, le
Vaticana_ligature_engraver se chargera de sélectionner
les têtes de note appropriées ; il est donc inutile de spécifier le
style à utiliser. Vous pouvez cependant spécifier par exemple le style
vaticana_punctum
pour obtenir des neumes punctums. De même,
c’est le
Mensural_ligature_engraver qui se chargera des
ligatures mensurales. Consultez la section Ligatures pour savoir
comment fonctionnent les graveurs de ligature.
Voir aussi
Pour un aperçu de toutes les possibilités, consultez Têtes de note.
Altérations anciennes
Pour utiliser les formes anciennes d’altération, utilisez la propriété
glyph-name-alist
des objets graphiques
Accidental
et
KeySignature.
Vous noterez que chacun de ces styles ne comporte pas toutes les altérations. LilyPond changera de style s’il y a besoin d’une altération indisponible dans le style utilisé.
À l’instar des altérations accidentelles, le style d’armure est géré
par la propriété glyph-name-alist
de l’objet
KeySignature.
Voir aussi
Dans ce manuel : Hauteurs, Altérations, et Altérations accidentelles automatiques, pour les principes généraux d’utilisation des altérations ; Armure pour les armures.
Référence du programme : KeySignature.
Exemples : Ancient notation.
Silences anciens
La propriété style
de l’objet
Rest permet
d’obtenir des silences de type ancien. Vous disposez des styles
classical
, neomensural
et mensural
. Le style
classical
ne se distingue du style default
que par le
soupir (demi-soupir en miroir). Le style neomensural
convient
tout à fait à l’incipit lors de la transcription de musique mensurale.
Le style mensural
, enfin, imite la gravure des silences dans
certaines éditions du XVIe siècle.
L’exemple suivant illustre le style neomensural
.
\set Score.skipBars = ##t \override Rest #'style = #'neomensural r\longa r\breve r1 r2 r4 r8 r16
Les styles mensural
et neomensural
ne disposent pas des 8e
et 16e de soupir ; LilyPond utilise dans de tels cas le style par
défaut. Voici une liste des styles de silences disponibles.
\layout { indent = 0 \context { \Staff \remove "Time_signature_engraver" } } \new Staff \relative c { \cadenzaOn \override Staff.Rest #'style = #'mensural r\maxima^\markup \typewriter { mensural } r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128 \bar "" \override Staff.Rest #'style = #'neomensural r\maxima^\markup \typewriter { neomensural } r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128 \bar "" \override Staff.Rest #'style = #'classical r\maxima^\markup \typewriter { classical } r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128 \bar "" \override Staff.Rest #'style = #'default r\maxima^\markup \typewriter { default } r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128 }
Les silences sont absents de la notation grégorienne ; par contre, cette notation utilise des Divisions.
Voir aussi
Dans ce manuel : les principes généraux sur l’utilisation des silences sont exposés dans Silences.
Clefs anciennes
Avec LilyPond, de nombreuses clés sont disponibles, dont certaines sont dédiées à la musique ancienne.
Le tableau suivant présente les différentes clés anciennes que vous
pouvez sélectionner avec la commande \clef
. Certaines de ces
clés utilisent le même glyphe, attaché à l’une ou l’autre des lignes
de la portée. Le chiffre porté en suffixe permet alors de les
différencier. Vous pouvez néanmoins forcer le positionnement du
glyphe sur une ligne, comme expliqué à la section Clefs. Dans la
colonne exemple, la note suivant la clé montre le do médium.
Description | Clé disponible | Exemple |
Clé d’ut, style mensural moderne |
| |
Clé d’ut, style mensural Petrucci, positionnable sur différentes lignes (clé d’ut seconde pour l’exemple) |
| |
Clé de fa, style mensural Petrucci |
| |
Clé de sol, style mensural Petrucci |
| |
Clé d’ut, style mensural historique |
| |
Clé de fa, style mensural historique |
| |
Clé de sol, style mensural historique |
| |
Clé d’ut, style Editio Vaticana |
| |
Clé de fa, style Editio Vaticana |
| |
Clé d’ut, style Editio Medicaea |
| |
Clé de fa, style Editio Medicaea |
| |
Clé d’ut, style historique Hufnagel |
| |
Clé de fa, style historique Hufnagel |
| |
Clé combinée ut/fa, style historique Hufnagel |
|
Moderne signifie « gravé comme dans les transcriptions contemporaines de musique mesurée. »
Petrucci signifie « inspiré des éditions réalisées par le maître graveur Petrucci (1466-1539). »
Historique signifie « gravé comme dans les éditions historiques, manuscrites ou non, autres que celles de Petrucci. »
Editio XXX signifie « gravé comme dans les ouvrages estampillés Editio XXX. »
Les clés d’ut de Petrucci avaient une hampe gauche différente selon leur ligne de rattachement.
Voir aussi
Dans ce manuel : voir Clefs.
Problèmes connus et avertissements
La clé de sol mensurale est calquée sur celle de Petrucci.
Crochets anciens
Le réglage de la propriété flag-style
de l’objet hampe
(
Stem) donne accès aux crochets de style ancien. Les
seuls styles actuellement pris en charge sont default
et
mensural
.
\override Stem #'flag-style = #'mensural \override Stem #'thickness = #1.0 \override NoteHead #'style = #'mensural \autoBeamOff c'8 d'8 e'8 f'8 c'16 d'16 e'16 f'16 c'32 d'32 e'32 f'32 s8 c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
Notez que pour chaque crochet mensural, l’extrémité la plus proche de la tête de note sera toujours attachée à une ligne de la portée.
Il n’existe pas de crochet spécifique au style néo-mensural. Nous vous conseillons donc, lorsque vous réalisez l’incipit d’une transcription, d’utiliser le style par défaut. Les crochets n’existent pas en notation grégorienne.
Problèmes connus et avertissements
Les crochets anciens s’attachent aux hampes avec un léger décalage, suite à des modifications intervenues au début de la série 2.3.
L’alignement vertical des crochets par rapport aux lignes de la portée sous-entend que les hampes se terminent toujours soit sur une ligne, soit à l’exact milieu d’un interligne. Ceci n’est pas toujours réalisable, surtout si vous faites appel à des fonctionnalités avancées de présentation de la notation classique, qui, par définition, ne sont pas prévues pour être appliquées à la notation mensurale.
Métriques anciennes
Les chiffrages de métrique mensurale sont partiellement pris en charge.
Les glyphes ne font que représenter des métriques particulières. En
d’autres termes, pour obtenir le glyphe correspondant à une métrique
mensurale particulière à l’aide de la commande \time n/m
, vous
devez choisir la paire (n,m)
parmi les valeurs suivantes :
La propriété style
de l’objet
TimeSignature permet
d’accéder aux indicateurs de métrique anciens. Les styles
neomensural
et mensural
sont disponibles. Vous avez vu
ci-dessus le style neomensural
, particulièrement utilisé pour
l’incipit des transcriptions. Le style mensural
imite l’aspect
de certaines éditions du XVIe siècle.
Voici les différences entre les styles :
Voir aussi
Dans ce manuel : Métrique expose les principes généraux sur l’utilisation des indications de métrique.
Problèmes connus et avertissements
Les équivalences de durées de note ne sont pas modifiées par un changement de métrique. Par exemple, l’équivalence 1 brève pour 3 semi-brèves (tempus perfectum) doit s’effectuer à la main en entrant :
breveTP = #(ly:make-duration -1 0 3 2) … { c\breveTP f1 }
Ce qui définira breveTP
à 3/2 fois 2 = 3 fois une ronde.
Le symbole old6/8alt
— symbole alternatif pour la métrique 6/8
— ne peut être utilisé grâce à une commande \time
. Utilisez
plutôt un \markup
.
2.8.3 Signes de note supplémentaires
Articulations anciennes | ||
Guidons | ||
Divisions | ||
Ligatures | ||
Ligatures mensurales | ||
Neumes ligaturés grégoriens |
Articulations anciennes
En plus des signes d’articulation standards décrits à la section Articulations et ornements, LilyPond fournit des articulations pour la musique ancienne. Elles sont spécifiquement destinées au style Editio Vaticana.
\include "gregorian.ly" \score { \new VaticanaVoice { \override TextScript #'font-family = #'typewriter \override TextScript #'font-shape = #'upright \override Script #'padding = #-0.1 a\ictus_"ictus" \break a\circulus_"circulus" \break a\semicirculus_"semicirculus" \break a\accentus_"accentus" \break \[ a_"episem" \episemInitium \pes b \flexa a b \episemFinis \flexa a \] } }
Problèmes connus et avertissements
Certaines articulations sont verticalement trop proches de leurs têtes de note.
Le trait d’un episem n’est bien souvent pas apparent et, lorsqu’il l’est, son extension à droite est trop longue.
Guidons
Un guidon — custos, pluriel custodes en latin — est un symbole qui apparaît à la fin d’une portée. Il montre la hauteur de la ou des premières notes de la portée suivante, donnant une indication judicieuse à l’exécutant.
Les guidons étaient couramment utilisés jusqu’au XVIIe siècle. De nos jours, on les retrouve uniquement dans quelques formes particulières de notation telles que les éditions contemporaines de chant grégorien comme les editio vaticana. Différents glyphes existent selon le style de notation.
L’impression de guidons s’obtient en affectant, dans un bloc
\layout
, le
Custos_engraver au contexte
Staff
, comme le montre l’exemple suivant.
\layout { \context { \Staff \consists Custos_engraver Custos \override #'style = #'mensural } }
Le résultat ressemblera à
Le glyphe du guidon est déterminé par la propriété style
. Les
styles disponibles sont vaticana
, medicaea
,
hufnagel
et mensural
. En voici un aperçu :
Voir aussi
Référence du programme : Custos.
Exemples : Ancient notation.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Guidons ] | [ Plus haut: Signes de note supplémentaires ] | [ Ligatures > ] |
Divisions
Une division — divisio, pluriel divisiones en latin — est un symbole ajouté à la portée et utilisé en chant grégorien pour séparer les phrases ou parties. Divisio minima, divisio maior et divisio maxima peuvent respectivement s’interpréter comme une pauses courte, moyenne ou longue, à l’image des marques de respiration — cf. Signes de respiration. Le signe finalis n’est pas uniquement une marque de fin de chant ; il sert aussi à indiquer la fin de chaque partie dans une structure verset/répons.
Les divisions sont disponibles après inclusion du fichier
‘gregorian-init.ly’. Ce fichier définit les commandes
\divisioMinima
, \divisioMaior
, \divisioMaxima
et
\finalis
. Certaines éditions utilisent virgula ou
caesura en lieu et place de divisio minima ; c’est
pourquoi ‘gregorian-init.ly’ définit aussi \virgula
et
\caesura
.
Commandes prédéfinies
\virgula
,
\caesura
,
\divisioMinima
,
\divisioMaior
,
\divisioMaxima
,
\finalis
.
Voir aussi
Dans ce manuel : Signes de respiration.
Référence du programme : BreathingSign.
Exemples : Winds.
Ligatures
Une ligature est un symbole graphique qui représente un groupe d’au moins deux notes. Les ligatures ont commencé à apparaître dans les manuscrits de chant grégorien, pour indiquer des suites ascendantes ou descendantes de notes.
Les ligatures s’indiquent par une inclusion entre \[
et
\]
. Certains styles de ligature peuvent demander un complément
de syntaxe spécifique. Par défaut, le graveur
LigatureBracket place un simple crochet au dessus de
la ligature :
\transpose c c' { \[ g c a f d' \] a g f \[ e f a g \] }
Selon le style de ligature désiré, il faut ajouter au contexte Voice le graveur de ligature approprié, comme nous le verrons plus loin. Seules sont disponibles les ligatures mensurales blanches, avec quelques limitations.
Problèmes connus et avertissements
La gestion de l’espacement spécifique aux ligatures n’est à ce jour pas implémentée. En conséquence, les ligatures sont trop espacées les unes des autres et les sauts de ligne mal ajustés. De plus, les paroles ne s’alignent pas de manière satisfaisante en présence de ligatures.
Les altérations ne pouvant être imprimées à l’intérieur d’une ligature, il faut les rassembler et les imprimer juste avant.
La syntaxe utilisée correspond à l’ancienne convention de préfixage
\[ expr. musicale\]
. Pour des raisons d’uniformité, nous
opterons probablement pour le style en suffixe (postfix) note\[
... note\]
.
En attendant, vous pouvez inclure le fichier
‘gregorian-init.ly’, qui fournit une fonction Scheme
\ligature expr. musicale
qui produit le même résultat, et dont la pérennité est assurée.
* Ligatures mensurales:: * Neumes ligaturés grégoriens::
Ligatures mensurales
Les ligatures mensurales blanches sont prises en charge, avec des limitations.
La gravure des ligatures mensurales blanches s’obtient après avoir ajouté le Mensural_ligature_engraver et enlevé le Ligature_bracket_engraver dans le contexte Voice, comme ici :
\layout { \context { \Voice \remove Ligature_bracket_engraver \consists Mensural_ligature_engraver } }
Lorsque le code ci-dessus est employé, l’aspect d’une ligature mensurale blanche est déterminé à partir des hauteurs et durées des notes qui la composent. Bien que cela demande un temps d’adaptation au nouvel utilisateur, cette méthode offre l’avantage que toute l’information musicale incluse dans la ligature est connue en interne. Ceci est non seulement important pour le rendu MIDI, mais aussi pour des questions de transcription automatisée d’une ligature.
Par exemple,
\set Score.timing = ##f \set Score.defaultBarType = "empty" \override NoteHead #'style = #'neomensural \override Staff.TimeSignature #'style = #'neomensural \clef "petrucci-g" \[ c'\maxima g \] \[ d\longa c\breve f e d \] \[ c'\maxima d'\longa \] \[ e'1 a g\breve \]
Si on ne remplace pas le Ligature_bracket_engraver par le Mensural_ligature_engraver, on obtient
Problèmes connus et avertissements
L’espacement horizontal n’est pas des meilleurs.
Neumes ligaturés grégoriens
Les neumes grégoriens conformément au style des Editio Vaticana sont pris en charge de façon assez limitée. Les ligatures élémentaires sont déjà disponibles, mais beaucoup de règles typographiques ne sont pas encore implémentées, notamment l’espacement horizontal des enchaînements de ligatures, l’alignement des paroles ou une gestion convenable des altérations.
Le tableau ci-dessous inventorie les différents neumes contenus dans le second tome de l’Antiphonale Romanum (Liber Hymnarius) publié par l’abbaye de Solesmes en 1983.
Neuma aut | Figurae | Figurae | Figurae |
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
|
Contrairement à la majorité des autres systèmes de notation neumatique,
la manière de saisir les neumes n’a rien à voir avec leur apparence
typographique ; elle se concentre plutôt sur le sens musical. Ainsi,
\[ a \pes b \flexa g \]
produit un torculus constitué de
trois punctums, alors que \[ a \flexa g \pes b \]
produit
un porrectus avec une flexe incurvée et un seul punctum.
Il n’existe pas de commande à proprement parler qui permette de
spécifier la courbe d’une flexe ; c’est la source musicale qui va le
déterminer. Le fondement d’une telle approche réside dans la
distinction que nous faisons entre les aspects musicaux de la source et
le style de notation que nous voulons obtenir. De ce fait, la même
source pourra être utilisée pour imprimer dans un autre style de
notation grégorienne.
Le tableau suivant présente les fragments de code qui ont permis de générer les neumes ligaturés du tableau précédent. Les lettres de la première colonne renvoient aux ligatures ci-dessus. La seconde colonne énumère le nom des ligatures, et la troisième le code ayant permis de les générer, se basant ici sur sol, la, si.
# | Nom | Code source |
a | Punctum |
|
b | Punctum Inclinatum |
|
c | Punctum Auctum |
|
d | Punctum Auctum |
|
e | Punctum Inclinatum |
|
f | Punctum Inclinatum |
|
g | Virga |
|
h | Stropha |
|
i | Stropha Aucta |
|
j | Oriscus |
|
k | Clivis vel Flexa |
|
l | Clivis Aucta |
|
m | Clivis Aucta |
|
n | Cephalicus |
|
o | Podatus vel Pes |
|
p | Pes Auctus |
|
q | Pes Auctus |
|
r | Epiphonus |
|
s | Pes Quassus |
|
t | Pes Quassus |
|
u | Quilisma Pes |
|
v | Quilisma Pes |
|
w | Pes Initio Debilis |
|
x | Pes Auctus Descendens |
|
y | Torculus |
|
z | Torculus Auctus |
|
A | Torculus Deminutus |
|
B | Torculus Initio Debilis |
|
C | Torculus Auctus |
|
D | Torculus Deminutus |
|
E | Porrectus |
|
F | Porrectus Auctus |
|
G | Porrectus Deminutus |
|
H | Climacus |
|
I | Climacus Auctus |
|
J | Climacus Deminutus |
|
K | Scandicus |
|
L | Scandicus Auctus |
|
M | Scandicus Deminutus |
|
N | Salicus |
|
O | Salicus Auctus Descendens |
|
P | Trigonus |
|
Les ligatures que nous venons de voir, bien que rudimentaires, donnent
un aperçu des possibilités de former des ligatures grégoriennes. En
théorie, vous pouvez inclure entre les délimiteurs \[
et
\]
, autant de sons que nécessaires à la ligature, ainsi que de
préfixes tels que \pes
, \flexa
, \virga
,
\inclinatum
, … Bien sûr, les règles de construction
présentées ci-dessus peuvent se combiner, ce qui permet la création
d’une infinité de ligatures.
Les points d’augmentum, ou morae, s’obtiennent avec la
fonction \augmentum
. Notez que cette fonction \augmentum
est implémentée en tant que fonction unaire plutôt que comme un préfixe
de note. Par conséquent, \augmentum \virga c
ne donnera rien de
particulier. Il faut l’utiliser avec la syntaxe \virga \augmentum
c
ou \augmentum {\virga c}
. Par ailleurs, l’expression
\augmentum {a g}
constitue une forme abrégée de
\augmentum a \augmentum g
.
\include "gregorian.ly" \score { \new VaticanaVoice { \[ \augmentum a \flexa \augmentum g \] \augmentum g } }
Commandes prédéfinies
LilyPond dispose des préfixes suivants :
\virga
,
\stropha
,
\inclinatum
,
\auctum
,
\descendens
,
\ascendens
,
\oriscus
,
\quilisma
,
\deminutum
,
\cavum
,
\linea
.
Les préfixes de note peuvent s’agglutiner, modulo quelques restrictions.
Par exemple, on peut appliquer un \descendens
ou un
\ascendens
à une note, mais pas les deux simultanément à une même
note.
Deux notes adjacentes peuvent être reliées grâce aux commandes
\pes
ou \flexa
pour marquer une ligne mélodique
respectivement ascendante ou descendante.
Utilisez la fonction musicale unaire \augmentum
pour ajouter
des points d’augmentum.
Problèmes connus et avertissements
Lorsqu’un \augmentum
apparaît dans une ligature en fin de
portée, son placement vertical peut être erroné. Pour y remédier,
ajoutez un silence invisible, s8
par exemple, comme dernière note de
cette portée.
L’\augmentum
devrait être implémenté en tant que préfixe plutôt
qu’en tant que fonction unaire, afin qu’\augmentum
puisse
s’intégrer avec d’autres préfixes dans n’importe quel ordre.
2.8.4 Contextes prédéfinis
Contextes du chant grégorien | ||
Les contextes de la musique mensurale |
Contextes du chant grégorien
Les contextes VaticanaVoiceContext
et
VaticanaStaffContext
permettent de graver le chant grégorien
dans le style des éditions vaticanes. Ces contextes initialisent
les propriétés de tous les autres contextes et objets graphiques à des
valeurs adéquates, de telle sorte que vous pouvez tout de suite vous
lancer dans la saisie de votre chant, comme ci-dessous :
\include "gregorian.ly" \score { << \new VaticanaVoice = "cantus" { \[ c'\melisma c' \flexa a \] \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima \[ f\melisma \pes a c' c' \pes d'\melismaEnd \] c' \divisioMinima \break \[ c'\melisma c' \flexa a \] \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima } \new Lyrics \lyricsto "cantus" { San- ctus, San- ctus, San- ctus } >> }
Les contextes de la musique mensurale
Les contextes MensuralVoiceContext
et
MensuralStaffContext
permettent de graver des chants
dans le style mesuré. Ces contextes initialisent
les propriétés de tous les autres contextes et objets graphiques à des
valeurs adéquates, de telle sorte que vous pouvez tout de suite vous
lancer dans la saisie de votre chant comme ci-après :
\score { << \new MensuralVoice = "discantus" \transpose c c' { \override Score.BarNumber #'transparent = ##t { c'1\melisma bes a g\melismaEnd f\breve \[ f1\melisma a c'\breve d'\melismaEnd \] c'\longa c'\breve\melisma a1 g1\melismaEnd fis\longa^\signumcongruentiae } } \new Lyrics \lyricsto "discantus" { San -- ctus, San -- ctus, San -- ctus } >> }
2.8.5 Transcription de musique mensurale
Différentes éditions à partir d’une même source | ||
Des incipits | ||
Mise en forme de la musique mensurale | ||
Transcription de chant grégorien |
Différentes éditions à partir d’une même source
Des incipits
Mise en forme de la musique mensurale
Transcription de chant grégorien
2.8.6 Notation éditoriale
Altérations accidentelles suggérées | ||
Notation du rythme dans la musique baroque |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < ] | [ Plus haut: ] | [ Notation du rythme dans la musique baroque > ] |
Altérations accidentelles suggérées
Les contextes MensuralVoiceContext
et
MensuralStaffContext
permettent de graver des chants
dans le style mesuré. Ces contextes initialisent
les propriétés de tous les autres contextes et objets graphiques à des
valeurs adéquates, de telle sorte que vous pouvez tout de suite vous
lancer dans la saisie de votre chant comme ci-après :
\score { << \new MensuralVoice = "discantus" \transpose c c' { \override Score.BarNumber #'transparent = ##t { c'1\melisma bes a g\melismaEnd f\breve \[ f1\melisma a c'\breve d'\melismaEnd \] c'\longa c'\breve\melisma a1 g1\melismaEnd fis\longa^\signumcongruentiae } } \new Lyrics \lyricsto "discantus" { San -- ctus, San -- ctus, San -- ctus } >> }
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Altérations accidentelles suggérées ] | [ Plus haut: ] | [ Musiques du monde > ] |
Notation du rythme dans la musique baroque
2.9 Musiques du monde
Ce chapitre a pour objet la notation des musiques traditionnelles autres qu’occidentales.
2.9.1 Musique arabe | ||
2.9.2 Musique classique turque |
2.9.1 Musique arabe
Ce chapitre souligne les questions propres à la notation de la musique arabe.
Références pour la musique arabe | ||
Noms des notes en arabe | ||
Armures arabes | ||
Métriques arabes | ||
Exemple de musique arabe | ||
Lectures complémentaires pour la musique arabe |
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Musique arabe ] | [ Plus haut: Musique arabe ] | [ Noms des notes en arabe > ] |
Références pour la musique arabe
Jusqu’à nos jours, la musique arabe a principalement été transmise comme une tradition orale. Lorsqu’elle était transcrite, c’était en général sous forme de canevas sur lequel le rôle des interprètes était d’improviser substantiellement. La notation occidentale, cependant, est de plus en plus utilisée, avec quelques variations, pour transmettre et préserver la musique arabe.
Certains éléments de notation musicale occidentale, tels que les transcriptions d’accords ou de parties indépendantes, ne sont pas nécessaires pour retranscrire les pièces arabes les plus traditionnelles. Il y a cependant quelques besoins spécifiques, tels que des intervalles se trouvant entre le demi-ton et le ton qui s’ajoutent aux intervalles mineurs ou majeurs utilisés dans la musique occidentale. Il est également nécessaire de regrouper et de noter un grand nombre de maqams (modes) différents qui font partie de la musique arabe.
En général, la notation de la musique arabe n’essaie pas d’indiquer précisément les micro-intervalles intervenant dans la pratique musicale.
Plusieurs particularités propres à la musique arabe sont traitées ailleurs :
- Les noms des notes et altérations (y compris les quarts de tons) peuvent être adaptés comme l’explique @ref{Noms de note dans d’autres langues}.
- Les armures peuvent également être adaptées comme expliqué dans @ref{Armures}.
- Des métriques complexes peuvent nécessiter de grouper les notes manuellement, comme décrit dans Barres de ligature manuelles.
- Les Takasim, qui sont des improvisations rythmiquement libres, peuvent être écrites en omettant les barres de mesures, de la façon indiquée dans Musique sans métrique.
Voir aussi
Manuel de notation : @ref{Noms de note dans d’autres langues}, @ref{Armures}, Barres de ligature manuelles.
Morceaux choisis : World music.
Noms des notes en arabe
Les noms de notes les plus traditionnels en arabe peuvent être très
longs et ne conviennent pas à l’écriture de la musique, aussi ne
sont ils pas utilisés. Les noms de notes anglais ne sont pas très
courants dans l’éducation musicale en arabe, c’est pourquoi on utilise
plus volontiers les noms italiens (do, re, mi, fa, sol, la, si
).
On peut également utiliser des altérations, comme cela est expliqué
dans @ref{Noms de note dans d’autres langues}.
Par exemple, voici comment on peut écrire la gamme arabe rast :
\include "arabic.ly" \relative do' { do re misb fa sol la sisb do sisb la sol fa misb re do }
Le symbole indiquant un demi-bémol ne correspond pas au symbole
utilisé dans la notation arabe. Si le symbole particulier du
demi-bémol arabe doit absolument être utilisé, il est possible
de s’en approcher en faisant précéder la note par la commande
\dwn
définie dans le fichier arabic.ly
.
Cette méthode ne peut toutefois pas être utilisée pour modifier
l’aspect du demi-bémol dans l’armure.
\include "arabic.ly" \relative do' { \set Staff.extraNatural = ##f dod dob dosd \dwn dob dobsb dodsd do do }
Voir aussi
Manuel de notation : @ref{Noms de note dans d’autres langues}.
Morceaux choisis : World music.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Noms des notes en arabe ] | [ Plus haut: Musique arabe ] | [ Métriques arabes > ] |
Armures arabes
Outre les armures mineures et majeures, les armures suivantes
sont définies dans la fichier arabic.ly
: bayati,
rast, sikah, iraq et kurd.
Ces armatures définissent un petit nombre de groupes de maqams plutôt
que le grand nombre de maqams habituellement utilisés.
En général, un maqam utilise l’armure de son groupe ou d’un groupe voisin et diverses altérations accidentelles sont indiquées tout au long de la musique.
Par exemple, pour indiquer l’armure d’une pièce en maqam muhayer :
\key re \bayati
Ici, re est le nom de la tonalité par défaut de la base maqam dans le groupe.
Alors que l’armure correspond à un groupe, il est courant que le titre mentionne un maqam en particulier. Ainsi, dans cet exemple, le titre devrait faire apparaître le nom du maqam muhayer.
D’autres maqams du même groupe bayati, comme l’explique le tableau ci-dessous (bayati, hussaini, saba, et ushaq), peuvent être indiqués de la même manière. Ils sont autant de variations du maqam de base, le plus courant, du groupe (en l’occurrence, bayati). En général, c’est dans les tétracordes supérieurs que ces modes apparentés diffèrent, ou dans certains détails de disposition qui ne changent pas fondamentalement leur nature.
Certains maqams ne sont qu’une modulation de leur maqam de base. Ainsi, dans ce même groupe de bayati, du maqam Nawa, dont la modulation est indiquée entre parenthèses dans le tableau. Les maqams arabes n’admettent que des modulations limitées, en raison de la nature des instruments de musique arabes. Le Nawa peut être indiqué comme suit :
\key sol \bayati
En musique arabe, le terme utilisé pour désigner un groupe maqam, tel que bayati, est également lui-même un maqam, généralement le plus important dans le groupe ; on peut le considérer comme un maqam de base.
Voici une suggestion de groupement qui relie les maqams les plus courants à leur armure :
groupe maqam | Armure | Tonique | Autres maqams dans le groupe (tonique) |
---|---|---|---|
ajam | major | sib | jaharka (fa) |
bayati | bayati | re | hussaini, muhayer, saba, ushaq, nawa (sol) |
hijaz | kurd | re | shahnaz, shad arban (sol), hijazkar (do) |
irakien | iraq | sisb | - |
kurde | kurd | re | kurde hijazkar (do) |
nahawand | minor | do | busalik (re), farah faza (sol) |
nakriz | mineur | do | nawa athar, hisar (re) |
rast | rast | do | mahur, yakah (sol) |
sikah | sikah | misb | huzam |
Morceaux choisis
Armures inhabituelles
La commande \key
détermine la propriété keySignature
d’un
contexte Staff
.
Des armures inhabituelles peuvent être spécifiées en modifiant directement cette propriété. Il s’agit en l’occurence de définir une liste :
\set Staff.keySignature = #`(((octave . pas) . altération) ((octave
. pas) . altération) …)
dans laquelle, et pour chaque élément,
octave
spécifie l’octave (0 pour celle allant du
do médium au si supérieur), pas
la note dans cette octave
(0 pour do et 6 pour si), et altération
sera
,SHARP ,FLAT ,DOUBLE-SHARP
etc. (attention à la virgule en
préfixe).
Une formulation abrégée – (pas . altération)
– signifie que
l’altération de l’élément en question sera valide quel que soit l’octave.
Voici, par exemple, comment générer une gamme par ton :
\relative c' { \set Staff.keySignature = #`(((0 . 6) . ,FLAT) ((0 . 5) . ,FLAT) ((0 . 3) . ,SHARP)) c4 d e fis aes4 bes c2 }
Voir aussi
Manuel de notation : Armure.
Manuel d’initiation : Altérations et armure.
Référence des propriétés internes : KeySignature.
Morceaux choisis : World music, Pitches.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Généralités en matière d'entrée et sortie >> ] | ||
[ < Armures arabes ] | [ Plus haut: Musique arabe ] | [ Exemple de musique arabe > ] |
Métriques arabes
Quelques formes de musique classique arabes et turques telles que Semai utilisent des métriques inhabituelles comme le 10/8. Ceci peut impliquer une manière de grouper les notes fort différente de la musique écrite existante, où les notes ne sont pas groupées par temps mais d’une façon difficile à reproduire automatiquement. Il est possible d’y remédier en désactivant la ligature automatique et en groupant les notes manuellement. Lorsque l’enjeu n’est pas de reproduire exactement un texte existant, il est toujours possible d’ajuster le comportement de ligature automatique ou d’utiliser des chiffres de mesure composés.
Morceaux choisis
Métrique décomposée
Des métriques telles que « 5/8 » peuvent s’interpréter sous une forme décomposée — « 3/8 + 2/8 » par exemple — qui combine plusieurs métriques. LilyPond est capable de rendre ce type de notation, plus facile à lire et à interpréter, en imprimant cette métrique composite et en adaptant les règles de ligature automatique en conséquence.
#(define ((compound-time one two num) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ((#:column (one num)) #:vcenter "+" (#:column (two num))))))) \relative c' { \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8") \time 5/8 \overrideBeamSettings #'Staff #'(5 . 8) #'end #'((* . (2 3))) c8 d e fis gis c8 fis, gis e d c8 d e4 gis8 }
Arabic improvisation
For improvisations or taqasim which are temporarily free, the time
signature can be omitted and \cadenzaOn
can be used. Adjusting
the accidental style might be required, since the absence of bar lines
will cause the accidental to be marked only once. Here is an example
of what could be the start of a hijaz improvisation:
\include "arabic.ly" \relative sol' { \key re \kurd #(set-accidental-style 'forget) \cadenzaOn sol4 sol sol sol fad mib sol1 fad8 mib re4. r8 mib1 fad sol }
Voir aussi
Manuel de notation : Barres de ligature manuelles, Barres de ligature automatiques, Musique sans métrique, Altérations accidentelles automatiques, Définition des règles de ligature automatique, Métrique.
Morceaux choisis : World music.
Exemple de musique arabe
Voici un modèle qui utilise également le début d’un Semai turc courant dans l’éducation musicale arabe, pour illustrer quelques unes des particularités de la notation musicale arabe, comme des intervalles intermédiaires et des modes inhabituels traités dans ce chapitre.
\include "arabic.ly" \score { \relative re' { \set Staff.extraNatural = ##f \set Staff.autoBeaming = ##f \key re \bayati \time 10/8 re4 re'8 re16 [misb re do] sisb [la sisb do] re4 r8 re16 [misb do re] sisb [do] la [sisb sol8] la [sisb] do [re] misb fa4 fa16 [misb] misb8. [re16] re8 [misb] re [do] sisb do4 sisb8 misb16 [re do sisb] la [do sisb la] la4 r8 } \header { title = "Semai Muhayer" composer = "Jamil Bek" } }
Voir aussi
Morceaux choisis : World music.
Lectures complémentaires pour la musique arabe
-
La musique des Arabes par Habib Hassan Touma [Amadeus Press, 1996],
contient une étude des maqams et leur méthode de classification.
Il existe également de nombreux sites web qui expliquent les maqams, dont quelques uns s’accompagnent d’exemples audio :
Si tout le monde s’accorde à apparenter les maqams d’après leur tétracorde inférieur, parfois transposé, les méthodes de classifications varient dans certains détails.
-
Les sources ne sont pas entièrement cohérentes (parfois dans un
même texte) quant à la manière d’indiquer l’armure de certains maqams.
Il est courant, cependant, d’utiliser une armure par
groupe plutôt qu’une armure différente pour chaque maqam.
Des méthodes de luth arabe, l’Oud, par les auteurs suivants, contiennent des exemples de compositions principalement turques et arabes,
- Charbel Rouhana
- George Farah
- Ibrahim Ali Darwish Al-masri
2.9.2 Musique classique turque
Ce chapitre met en évidence des questions propres à la notation de la musique classique turque.
Références pour la musique classique turque | ||
Noms des notes en turc |
Références pour la musique classique turque
La musique classique turque s’est développée dans l’Empire Ottoman à peu près à la même période que la musique classique en Europe, et a continué jusqu’au XX et XXIe siècle comme une tradition vibrante et distincte avec sa propre théorie, ses propres formes, et styles d’interprétation. Parmi ses caractéristiques remarquables, se trouve l’usage de micro-intervalles fondés sur des « commas » d’un neuvième de ton, dont sont dérivées les formes mélodiques makam (pluriel makamlar).
Quelques questions relatives à la musique classique turque sont traitées dans d’autres chapitres :
- Les noms de notes et altérations sont mentionnés dans Noms de note et altérations non-occidentaux.
Noms des notes en turc
La musique classique turque attribue traditionnellement un nom unique à chaque hauteur, et du fait de la division du ton en neuf parts, les makamlar emploient une échelle de hauteurs complètement différente des gammes et modes d’occident : koma de 1/9 de ton entier, eksik bakiye (3/9), bakiye (4/9), kücük mücenneb (5/9), büyük mücenneb (8/9), tanîni (un ton entier) et artık ikili (12/9 ou 13/9 de ton).
D’un point de vue de notation moderne, il est pratique d’utiliser positions occidentales des notes sur la portée (do, ré, mi...) avec des altérations spéciales qui haussent ou baissent les notes par intervalles de 1/9, 4/9, 5/9 et 8/9 de ton. Ces altérations sont définies dans le dossier ‘makam.ly’ (pour trouver l’emplacement de ce dossier dans votre système, voir Autres sources de documentation). Une description plus détaillée se trouve dans Noms de note et altérations non-occidentaux.
[ << Notation spécialisée ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Noms des notes en turc ] | [ Plus haut: Top ] | [ Structure de fichier > ] |
3. Généralités en matière d’entrée et sortie
3.1 Structure de fichier | ||
3.2 Titres et entêtes | ||
3.3 Travail sur des fichiers texte | ||
3.4 Contrôle des sorties | ||
3.5 Sortie MIDI |
3.1 Structure de fichier
3.1.1 Structure d’une partition | ||
3.1.2 Plusieurs partitions dans un même ouvrage | ||
3.1 Structure de fichier |
3.1.1 Structure d’une partition
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Structure d'une partition ] | [ Plus haut: Structure de fichier ] | [ > ] |
3.1.2 Plusieurs partitions dans un même ouvrage
3.1.3 Structure de fichier
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Généralités en matière d'entrée et sortie ] | [ Création de titres > ] |
3.2 Titres et entêtes
3.2.1 Création de titres | ||
3.2.2 Titres personnalisés | ||
3.2.3 Référencement des numéros de page | ||
3.2.4 Table des matières |
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Titres et entêtes ] | [ Plus haut: Titres et entêtes ] | [ Titres personnalisés > ] |
3.2.1 Création de titres
3.2.2 Titres personnalisés
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Titres personnalisés ] | [ Plus haut: Titres et entêtes ] | [ Table des matières > ] |
3.2.3 Référencement des numéros de page
3.2.4 Table des matières
3.3 Travail sur des fichiers texte
3.3.1 Insertion de fichiers LilyPond | ||
Différentes éditions à partir d’une même source | ||
3.3.3 Codage du texte | ||
3.3.4 Affichage de notation au format LilyPond |
3.3.1 Insertion de fichiers LilyPond
3.3.2 Différentes éditions à partir d’une même source
Utilisation de variables | ||
Utilisation de balises |
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: ] | [ Utilisation de balises > ] |
Utilisation de variables
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Utilisation de variables ] | [ Plus haut: ] | [ Codage du texte > ] |
Utilisation de balises
La commande \tag
affecte un nom à des expressions musicales.
Les expressions ainsi balisées pourront être filtrées par la suite.
Ce mécanisme permet d’obtenir différentes versions à partir d’une même
source musicale.
Dans l’exemple qui suit, nous obtenons deux versions du même extrait, l’une pour le conducteur, l’autre pour l’instrumentiste, et qui comportera les ornements.
c1 << \tag #'partie << R1 \\ { \set fontSize = #-1 c4_"cue" f2 g4 } >> \tag #'conducteur R1 >> c1
Ce principe peut s’appliquer aux articulations, textes, etc. Il suffit de positionner
-\tag #votre-balise
avant l’articulation, comme ici :
c1-\tag #'part ^4
Ceci définira une note avec une indication de doigté conditionnelle.
C’est grâce aux commandes \keepWithTag
et \removeWithTag
que vous filtrerez les expressions balisées. Par exemple :
<< de la musique \keepWithTag #'score de la musique \keepWithTag #'part de la musique >>
donnerait :
Les arguments de la commande \tag
doivent être un symbole (tel
que #'score
ou #'part
), suivi d’une expression musicale.
Vous pouvez utiliser de multiples balises dans un morceau en
saisissant plusieurs \tag
.
\tag #'original-part \tag #'transposed-part …
Problèmes connus et avertissements
Lorsqu’elles comportent des silences, ceux-ci ne seront pas fusionnés si vous imprimez une partition avec les deux sections balisées.
3.3.3 Codage du texte
3.3.4 Affichage de notation au format LilyPond
3.4 Contrôle des sorties
3.4.1 Extraction de fragments musicaux | ||
3.4.2 Ignorer des passages de la partition |
3.4.1 Extraction de fragments musicaux
3.4.2 Ignorer des passages de la partition
3.5 Sortie MIDI
3.5.1 Création de fichiers MIDI | ||
3.5.2 Le bloc MIDI | ||
3.5.3 Contenu de la sortie MIDI | ||
3.5.4 Répétitions et MIDI | ||
3.5.5 Gestion des nuances en MIDI | ||
3.5.6 MIDI et percussions |
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Sortie MIDI ] | [ Plus haut: Sortie MIDI ] | [ > ] |
3.5.1 Création de fichiers MIDI
Noms d’instrument
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Sortie MIDI ] | [ Contenu de la sortie MIDI > ] |
3.5.2 Le bloc MIDI
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Le bloc MIDI ] | [ Plus haut: Sortie MIDI ] | [ > ] |
3.5.3 Contenu de la sortie MIDI
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Contenu de la sortie MIDI ] | [ Plus haut: Contenu de la sortie MIDI ] | [ > ] |
Éléments pris en compte dans le MIDI
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Contenu de la sortie MIDI ] | [ Répétitions et MIDI > ] |
Éléments non pris en compte dans le MIDI
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Sortie MIDI ] | [ Gestion des nuances en MIDI > ] |
3.5.4 Répétitions et MIDI
Au prix de quelques réglages, les reprises de toutes sortes peuvent être
rendues dans le fichier MIDI. Il suffit pour cela de recourir à la
fonction \unfoldRepeats
, qui développe toutes les reprises. En
d’autre termes, \unfoldRepeats
transforme toutes les reprises
en reprises de type unfold
.
\unfoldRepeats { \repeat tremolo 8 {c'32 e' } \repeat percent 2 { c''8 d'' } \repeat volta 2 {c'4 d' e' f'} \alternative { { g' a' a' g' } {f' e' d' c' } } } \bar "|."
Lorsque l’on veut utiliser \unfoldRepeats
seulement pour le rendu
MIDI, il faut établir deux blocs \score
: un pour le MIDI, avec
des reprises explicites, et l’autre pour la partition, avec des reprises
notées sous forme de barres de reprise, de trémolo ou de symboles de
pourcentage. Par exemple
\score { ..musique.. \layout { .. } } \score { \unfoldRepeats ..musique.. \midi { .. } }
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Répétitions et MIDI ] | [ Plus haut: Sortie MIDI ] | [ > ] |
3.5.5 Gestion des nuances en MIDI
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < Gestion des nuances en MIDI ] | [ Plus haut: Gestion des nuances en MIDI ] | [ > ] |
Indications de nuance
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Gestion des nuances en MIDI ] | [ > ] |
Amplitude du volume en MIDI
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Gestion des nuances en MIDI ] | [ > ] |
Égalisation de plusieurs instruments (i)
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Gestion des nuances en MIDI ] | [ MIDI et percussions > ] |
Égalisation de plusieurs instruments (ii)
[ << Généralités en matière d'entrée et sortie ] | [Racine][Table des matières][Index][ ? ] | [ Gestion de l'espace >> ] | ||
[ < ] | [ Plus haut: Sortie MIDI ] | [ Gestion de l'espace > ] |
3.5.6 MIDI et percussions
4. Gestion de l’espace
4.1 Du papier et des pages | ||
4.2 Mise en forme de la musique | ||
4.3 Sauts | ||
4.4 Espacement vertical | ||
4.5 Espacement horizontal | ||
4.6 Réduction du nombre de pages de la partition |
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Gestion de l'espace ] | [ Plus haut: Gestion de l'espace ] | [ Format du papier > ] |
4.1 Du papier et des pages
4.1.1 Format du papier | ||
4.1.2 Mise en forme de la page |
4.1.1 Format du papier
4.1.2 Mise en forme de la page
4.2 Mise en forme de la musique
4.2.1 Définition de la taille de portée | ||
4.2.2 Mise en forme de la partition |
4.2.1 Définition de la taille de portée
4.2.2 Mise en forme de la partition
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Mise en forme de la partition ] | [ Plus haut: Gestion de l'espace ] | [ Sauts de ligne > ] |
4.3 Sauts
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Sauts ] | [ Plus haut: Sauts ] | [ Sauts de page > ] |
4.3.1 Sauts de ligne
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Sauts de ligne ] | [ Plus haut: Sauts ] | [ Optimisation des sauts de page > ] |
4.3.2 Sauts de page
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Sauts de page ] | [ Plus haut: Sauts ] | [ Optimisation des tournes > ] |
4.3.3 Optimisation des sauts de page
4.3.4 Optimisation des tournes
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Optimisation des tournes ] | [ Plus haut: Sauts ] | [ Sauts explicites > ] |
4.3.5 Minimisation des sauts de page
4.3.6 Sauts explicites
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Modification des réglages prédéfinis >> ] | ||
[ < Sauts explicites ] | [ Plus haut: Sauts ] | [ Espacement vertical > ] |
4.3.7 Recours à une voix supplémentaire pour gérer les sauts
4.4 Espacement vertical
4.4.1 Espacement vertical au sein d’un système
4.4.2 Espacement vertical entre les systèmes
4.4.3 Positionnement explicite des portées et systèmes
4.4.4 Optimisation du remplissage avec un deuxième passage
4.4.5 Résolution des collisions verticales
4.5 Espacement horizontal
4.5.1 Généralités sur l’espacement horizontal
4.5.2 Changement d’espacement au cours de la partition
4.5.3 Modification de l’espacement horizontal
4.5.4 Longueur de ligne
4.5.5 Notation proportionnelle
Les notes peuvent s’espacer proportionnellement en assignant une durée
à proportionalNotationDuration
<< \set Score.proportionalNotationDuration = #(ly:make-moment 1 16) \new Staff { c8[ c c c c c] c4 c2 r2 } \new Staff { c2 \times 2/3 { c8 c c } c4 c1 } >>
Manipuler cette propriété affectera l’espacement idéal uniquement pour des notes consécutives. Pour obtenir une véritable notation proportionnelle, vous devrez tenir compte des réglages suivants :
- La véritable notation proportionnelle exige que des symboles puissent en écraser d’autres. Pour y parvenir, il faut retirer le Separating_line_group_engraver du contexte Staff.
- L’influence en matière d’espacement induite par le formatage
(clés, barres de mesure, etc) s’annule en assignant
vrai (#t) à la propriété
strict-note-spacing
de l’objet SpacingSpanner. - Les affinages optiques se règlent en assignant vrai à la
propriété
uniform-stretching
du SpacingSpanner.
Voir aussi
Exemples : Spacing.
Le fichier ‘input/proportional.ly’ illustre la notation proportionnelle stricte.
4.6 Réduction du nombre de pages de la partition
4.6.1 Mise en évidence de l’espacement | ||
4.6.2 Modification de l’espacement |
4.6.1 Mise en évidence de l’espacement
4.6.2 Modification de l’espacement
Parfois, une partition peut se terminer avec seulement un ou deux systèmes sur la dernière page. Ceci peut être ennuyeux surtout si vous constatez, en regardant les pages précédentes, qu’il reste encore beaucoup de place sur celles-ci.
Si vous vous intéressez aux problèmes de mise en page,
annotate-spacing
peut alors être un outil d’une valeur
inestimable. Cette commande imprime les valeurs
de nombreuses commandes d’espacement concernant la mise en page.
Consultez Mise en évidence de l’espacement pour de plus amples informations. À l’aide
des informations données par annotate-spacing
, on peut
voir quelles marges il est souhaitable de modifier afin de résoudre le
problème.
En plus d’agir sur les marges, il existe d’autres possibilités qui permettent de gagner de la place.
-
Demander à LilyPond de placer les systèmes aussi
près que possible les uns des autres (pour en disposer autant
que possible sur une page), tout en répartissant les systèmes afin
de ne pas laisser de blanc en bas de la dernière page.
\paper { between-system-padding = #0.1 between-system-space = #0.1 ragged-last-bottom = ##f ragged-bottom = ##f }
-
Obliger LilyPond à mettre un certain nombre de systèmes
par page. Par exemple, si LilyPond veut placer onze systèmes dans une page,
vous pouvez l’obliger à n’en mettre que dix.
\paper { system-count = #10 }
-
Supprimer (ou réduire) les objets qui augmentent la hauteur du
système. C’est le cas en particulier de certaines reprises (avec des
alternatives) qui placent des crochets au dessus des portées. Si ces crochets
de reprise se poursuivent sur deux systèmes, ils prendront plus de
place que s’ils sont regroupés sur un même système.
Un autre exemple : déplacer les nuances qui « débordent » d’un système.
\relative c' { e4 c g\f c \override DynamicLineSpanner #'padding = #-1.8 \override DynamicText #'extra-offset = #'( -2.1 . 0) e4 c g\f c }
-
Modifier l’espacement vertical avec
SpacingSpanner
. Reportez-vous à Modification de l’espacement horizontal pour plus de détails.\score { \relative c'' { g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | d4 d d d | d4 e f2 | e4 e e e | e4 f g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | } \layout { \context { \Score \override SpacingSpanner #'base-shortest-duration = #(ly:make-moment 1 4) } } }
[ << Gestion de l'espace ] | [Racine][Table des matières][Index][ ? ] | [ Interfaces pour les programmeurs >> ] | ||
[ < Modification de l'espacement ] | [ Plus haut: Top ] | [ Contextes d'interprétation > ] |
5. Modification des réglages prédéfinis
LilyPond est conçu pour engendrer, par défaut, des partitions de la plus haute qualité. Cependant, on peut parfois avoir à modifier cette mise en page par défaut. Celle-ci est réglée par tout un ensemble de « leviers et manettes », dont ce chapitre ne cherche pas à faire l’inventaire exhaustif. Le propos est plutôt ici de mettre en évidence les différents groupes auxquels s’apparentent ces contrôles, et d’expliquer comment trouver le bon levier pour obtenir tel ou tel effet en particulier.
Les moyens de contrôle des différents réglages sont décrits dans un document séparé, la Référence des propriétés internes. Ce guide répertorie toutes les variables, fonctions et autres options que LilyPond met à votre disposition. Il est consultable en ligne, au format HTML, mais est également inclus dans la documentation fournie avec le logiciel.
Il est quatre domaines dans lesquels on peut modifier les réglages par défaut :
- La notation automatique, ce qui revient à modifier la manière dont les éléments de notation sont automatiquement créés – par exemple, les règles de ligature.
- L’apparence, qui se rapporte aux objets pris individuellement – ainsi de la direction des hampes, du placement des indications textuelles.
- Les contextes, qui recouvrent la manière dont les évènements musicaux sont représentés sous forme de notation – par exemple, le fait d’attribuer un chiffre de mesure distinct à chaque portée.
- La mise en page, autrement dit les marges, l’espacement, la taille du papier ; tous ces facteurs font l’objet des chapitres Généralités en matière d’entrée et sortie et Gestion de l’espace.
En sous-main, LilyPond se sert du langage Scheme (un dérivé du LISP) comme
infrastructure. Modifier les choix de mise en page revient à pénétrer dans
les entrailles du programme, et de ce fait requiert l’emploi du Scheme.
Les fragments de Scheme, dans un fichier .ly
, sont introduits par le
caractère ‘hash’, (#
, improprement surnommé ‘dièse’).2
5.1 Contextes d’interprétation | ||
• En quoi consiste la référence du programme | ||
5.3 Modification de propriétés | ||
5.4 Propriétés et contextes utiles | ||
5.5 Retouches avancées |
5.1 Contextes d’interprétation
Cette section traite des contextes.
Voir aussi
Manuel d’initiation : Contextes et graveurs.
Fichiers d’initialisation : ‘ly/engraver-init.ly’, ‘ly/performer-init.ly’.
Morceaux choisis : Contexts and engravers.
Référence des propriétés internes : Contexts, Engravers and Performers.
5.1.1 Tout savoir sur les contextes
Score – le père de tous les contextes | ||
Contextes de haut niveau – les systèmes | ||
Contextes de niveau intermédiaire – les portées | ||
Contextes de bas niveau – les voix |
Score – le père de tous les contextes
Contextes de haut niveau – les systèmes
Contextes de niveau intermédiaire – les portées
Contextes de bas niveau – les voix
5.1.2 Création d’un contexte
5.1.3 Conservation d’un contexte
5.1.4 Modification des greffons de contexte
Les contextes, tels que Score
ou Staff
, ne contiennent
pas que des propriétés ; ils mettent également en œuvre certains
sous-programmes (‘plug-ins’, pour employer le terme consacré) nommés
‘graveurs’ (‘engravers’, pour reprendre le terme anglais).
Ces sous-programmes sont chargés de créer les différents éléments de
notation :
On trouve ainsi dans le contexte Voice
, un graveur
Note_head_engraver
,
chargé des têtes de notes, et dans le contexte Staff
, un graveur
Key_signature_engraver
, chargé de l’armure.
Vous trouverez une description exhaustive de chaque graveur dans Engravers and Performers. Chaque contexte mentionné dans Contexts répertorie les graveurs mis en œuvre.
On peut faire, au moyen de ces graveurs, sa propre « cuisine », en modifiant les contextes à volonté.
Lorsque un contexte est créé, par la commande \new
ou \context
, on peut
y adjoindre un bloc \with
(en anglais ‘avec’), dans lequel il est possible
d’ajouter (commande \consists
) ou d’enlever (commande \remove
)
des graveurs :
\new contexte \with { \consists … \consists … \remove … \remove … etc. } { ..musique.. }
Ici les points de suspension … devront être remplacés par les noms
des graveurs désirés. Dans l’exemple suivant, on enlève du contexte
Staff
, le chiffre de mesure (graveur Time_signature_engraver
)
et la clé (graveur Clef_engraver
).
<< \new Staff { f2 g } \new Staff \with { \remove "Time_signature_engraver" \remove "Clef_engraver" } { f2 g2 } >>
La clé et le chiffre de mesure ont disparu de la deuxième portée. C’est une méthode quelque peu radicale, puisqu’elle affectera toute la portée jusqu’à la fin de la partition. L’espacement s’en trouve également affecté, ce qui peut être ou non l’effet recherché. Une méthode plus sophistiquée aurait été de rendre ces objets transparents (voir Visibilité et couleur des objets).
Dans l’exemple suivant, voici une mise en pratique plus utile. En temps
normal, les barres de mesure et la métrique sont synchronisées verticalement
dans toute la partition. Les graveurs qui en sont responsables se nomment
Timing_translator
et Default_bar_line_engraver
.
En les enlevant du contexte Score
pour les attribuer au contexte
Staff
, chaque portée peut désormais avoir sa propre métrique.
\new Score \with { \remove "Timing_translator" \remove "Default_bar_line_engraver" } << \new Staff \with { \consists "Timing_translator" \consists "Default_bar_line_engraver" } { \time 3/4 c4 c c c c c } \new Staff \with { \consists "Timing_translator" \consists "Default_bar_line_engraver" } { \time 2/4 c4 c c c c c } >>
5.1.5 Modification des réglages par défaut d’un contexte
Les réglages montrés dans les sous-sections La commande \set
, Modification des greffons de contexte et
@ref{Retouches de mise en forme au sein des contextes} peuvent également être saisis indépendamment
de la musique dans le bloc \layout
, au moyen de la commande \context
:
\layout { … \context { \Staff \set fontSize = #-2 \override Stem #'thickness = #4.0 \remove "Time_signature_engraver" } }
Le raccourci \Staff
invoque les définitions inhérentes au contexte
Staff
, de façon à ce qu’elles puissent être modifiées.
Les lignes suivantes affecteront toutes les portées (tous les contextes Staff
)
dans la partition.
\set fontSize = #-2 \override Stem #'thickness = #4.0 \remove "Time_signature_engraver"
Les autres contextes peuvent être modifiés de même manière.
La commande \set
, dans le bloc \layout
, est facultative ; aussi
les lignes suivantes produiront-elles le même effet.
\context { … fontSize = #-2 }
Problèmes connus et avertissements
Il est impossible de stocker des modifications de contexte dans un identificateur.
Le raccourci \RemoveEmptyStaffContext
détruit tous les réglages
du contexte \Staff
. Pour modifier des propriétés de portées gouvernées
par \RemoveEmptyStaffContext
, il faut le faire impérativement après
avoir invoqué \RemoveEmptyStaffContext
:
\layout { \context { \RemoveEmptyStaffContext \override Stem #'thickness = #4.0 } }
5.1.6 Définition de nouveaux contextes
Les contextes tels que Staff
ou Voice
sont faits
de briques de constructions empilées. En combinant divers graveurs,
il est possible de créer de nouveaux types de contextes.
Dans l’exemple suivant, on construit, de zéro, un nouveau contexte très
semblable à Voice
, mais qui n’imprime que des têtes de notes en forme
de barres obliques au centre de la portée. Un tel contexte, par exemple, peut
servir à indiquer un passage improvisé dans un morceau de jazz.
On a rassemblé les réglages dans un bloc \context
, lui-même dans
le bloc \layout
:
\layout { \context { … } }
En lieu et place des points (…), voici les éléments à saisir :
- Tout d’abord, il convient de donner un nom
\name
à notre nouveau contexte :\name ImproVoice
- Comme il est très semblable à
Voice
, nous souhaitons que toutes les commandes associées auVoice
déjà existant, restent valables. D’où nécessité de la commande\alias
, qui va l’associer au contexteVoice
:\alias Voice
- Ce contexte doit pouvoir imprimer des notes, et des indications textuelles ;
on ajoute donc les graveurs appropriés.
\consists Note_heads_engraver \consists Text_engraver
- Cependant, on veut que les notes s’affichent toutes au centre de la portée :
\consists Pitch_squash_engraver squashedPosition = #0
Le graveur Pitch_squash_engraver intercepte les notes créées par Note_heads_engraver, et les ‘écrase’ pour qu’elles aient toutes la même position verticale, définie par
squashedPosition
: ici il s’agit de la valeur0
, c’est-à-dire la ligne du milieu. - On veut que les notes aient la forme d’une barre oblique, sans aucune hampe :
\override NoteHead #'style = #'slash \override Stem #'transparent = ##t
- Afin que tous ces graveurs puissent travailler de concert, on leur adjoint un
sous-programme spécial, introduit par la commande
\type
: il s’agit deEngraver_group
,\type "Engraver_group"
Récapitulons – on se retrouve avec le bloc suivant :
\context { \name ImproVoice \type "Engraver_group" \consists "Note_heads_engraver" \consists "Text_engraver" \consists Pitch_squash_engraver squashedPosition = #0 \override NoteHead #'style = #'slash \override Stem #'transparent = ##t \alias Voice }
Ce n’est pas tout. En effet, on veut intégrer le nouveau contexte
ImproVoice
dans la hiérarchie des contextes. Tout comme le
contexte Voice
, sa place est au sein du contexte Staff
.
Nous allons donc modifier le contexte Staff
,
au moyen de la commande \accepts
:
\context { \Staff \accepts ImproVoice }
Le contraire de \accepts
est \denies
,
qui est parfois utile lorsque l’on recycle des définitions de
contextes déjà existantes.
Enfin, tout cela doit prendre place dans le bloc \layout
,
comme suit :
\layout { \context { \name ImproVoice … } \context { \Staff \accepts "ImproVoice" } }
On peut alors saisir la musique, comme dans l’exemple plus haut :
\relative c'' { a4 d8 bes8 \new ImproVoice { c4^"ad lib" c c4 c^"dévêtez-vous" c c_"tout en jouant :)" } a1 }
5.1.7 Alignement des contextes
Il est possible d’aligner verticalement chaque nouveau contexte, en-dessous ou au-dessus, par exemple dans le cas de musique vocale ( Ensemble vocal) ou d’« ossias ».
5.2 En quoi consiste la référence des propriétés internes
5.2.1 Navigation dans la référence du programme | ||
5.2.2 Interfaces de rendu | ||
5.2.3 Détermination de la propriété d’un objet graphique (grob) | ||
5.2.4 Conventions de nommage |
5.2.1 Navigation dans la référence du programme
Comment, par exemple, déplacer le doigté dans le fragment suivant ?
c-2 \stemUp f
Sur la page de la documentation relative aux doigtés, c’est-à-dire Doigtés, se trouve l’indication suivante :
Voir aussi
Référence du programme : Fingering.
Suivons le lien Fingering. En haut de la nouvelle page, on peut lire
Fingering objects are created by: Fingering_engraver and New_fingering_engraver.
En d’autres termes, Les indications de doigtés
(Fingering
en anglais) sont créées par les graveurs
Fingering_engraver et
New_fingering_engraver.
En suivant derechef les liens propres à la référence du programme, on suit en fait le cheminement qui aboutit à la création de la partition :
- Fingering: Fingering objects are created by: Fingering_engraver
- Fingering_engraver: Music types accepted: fingering-event
-
fingering-event:
Music event type
fingering-event
is in Music expressions named FingeringEvent
Ce cheminement se produit, bien sûr, en sens inverse : nous sommes ici partis du résultat, et avons abouti aux évènements (en anglais ‘Events’) engendrés par le fichier d’entrée. L’inverse est également possible : on peut partir d’un évènement, et suivre le cheminement de LilyPond qui aboutit à la création d’un ou plusieurs objets graphiques.
La référence du programme peut également se parcourir comme un document normal. On y trouve des chapitres tels que Music definitions, Translation, ou encore Backend. Chaque chapitre recense toutes les définitions employées, et les propriétés sujettes à ajustements.
5.2.2 Interfaces de rendu
Tous les éléments de notation sont considérés comme des objets graphiques (en anglais ‘Graphical Object’, d’où le diminutif Grob). Chaque objet est doté d’un certain nombre de propriétés (l’épaisseur du trait, l’orientation, etc.), et lié à d’autres objets. Le fonctionnement de ces objets est décrit en détail dans grob-interface.
Prenons l’exemple des doigtés (en anglais ‘Fingering’).
La page Fingering
de la Référence du programme établit une liste de définitions
propres à ce type d’objets :
padding
(dimension, in staff space):
0.5
Ce qui signifie que les doigtés doivent être maintenus à une certaine distance (padding) des notes : 0,5 unités staff-space (espace de portée).
Chaque objet peut avoir plusieurs attributs, en tant qu’élément typographique ou musical. Ainsi, un doigté (objet ‘Fingering’) possède les attributs suivants :
- Sa taille ne dépend pas de l’espacement horizontal, contrairement aux liaisons ou ligatures.
- C’est du texte – un texte vraiment court, certes.
- Ce texte est imprimé au moyen d’une fonte, contrairement aux liaisons ou ligatures.
- Sur l’axe horizontal, le centre de ce symbole doit être aligné avec le centre de la note.
- Sur l’axe vertical, le symbole doit être proche de la note et de la portée.
- Sur l’axe vertical encore, il doit également s’ordonner avec les éventuels autres symboles, ponctuations, ou éléments textuels.
Faire appliquer ces différents attributs est le rôle des interfaces, que l’on trouve en bas de la page Fingering.
This object supports the following interfaces: item-interface, self-alignment-interface, side-position-interface, text-interface, text-script-interface, font-interface, finger-interface, and grob-interface.
En français,
Cet objet admet les interfaces suivantes :
Suit la liste des interfaces en question, présentées comme autant de liens, qui conduisent sur les pages dédiées à chacune d’entre elles. Chaque interface est dotée d’un certain nombre de propriétés, dont certaines peuvent être modifiées, et d’autres non (les ‘Internal properties’, ou propriétés internes).
Pour aller encore plus loin, plutôt que de simplement parler de l’objet
Fingering
, ce qui ne nous avance pas à grand chose, on peut aller explorer
son âme même, dans les fichiers source de LilyPond (voir
Autres sources de documentation), en l’occurence le fichier
‘scm/define-grobs.scm’ :
(Fingering . ((padding . 0.5) (avoid-slur . around) (slur-padding . 0.2) (staff-padding . 0.5) (self-alignment-X . 0) (self-alignment-Y . 0) (script-priority . 100) (stencil . ,ly:text-interface::print) (direction . ,ly:script-interface::calc-direction) (font-encoding . fetaNumber) (font-size . -5) ; don't overlap when next to heads. (meta . ((class . Item) (interfaces . (finger-interface font-interface text-script-interface text-interface side-position-interface self-alignment-interface item-interface))))))
…où l’on découvre que l’objet Fingering
n’est rien de plus qu’un
amas de variables et de réglages. La page de la Référence du programme est
en fait directement engendrée par cette définition.
5.2.3 Détermination de la propriété d’un objet graphique (grob)
Nous voulions changer la position du chiffre 2 dans le fragment suivant :
c-2 \stemUp f
Dans la mesure où le 2 est placé, verticalement, à proximité de la note qui lui
correspond, nous allons devoir trouver l’interface en charge de ce placement, qui se
trouve être side-position-interface
. Sur la page de cette interface, on
peut lire :
side-position-interface
Position a victim object (this one) next to other objects (the support). The property
direction
signifies where to put the victim object relative to the support (left or right, up or down?)
Ce qui signifie
side-position-interface
Placer l’objet affecté à proximité d’autres objets. La propriété
direction
indique où placer l’objet (à droite ou à gauche, en haut ou en bas).
En-dessous de cette description se trouve décrite la variable padding
:
padding
(dimension, in staff space)
Add this much extra space between objects that are next to each other.
Ce qui signifie
Ajouter tel espace supplémentaire entre des objets proches les uns des autres.
En augmentant la valeur de padding
, on peut donc éloigner le doigté de la
note. La commande suivante insère trois unités d’espace vide entre la note et le doigté :
\once \override Voice.Fingering #'padding = #3
En ajoutant cette commande avant la création du doigté (de l’objet ‘Fingering’),
donc avant c2
, on obtient le résultat suivant :
\once \override Voice.Fingering #'padding = #3 c-2 \stemUp f
Dans le cas présent, le réglage intervient dans le contexte Voice
,
ce qui pouvait également se déduire de la Référence du programme, où la page
du graveur
Fingering_engraver indique :
Fingering_engraver is part of contexts: … Voice
Ce qui signifie
Le graveur Fingering_engraver fait partie des contextes : … Voice
5.2.4 Conventions de nommage
5.3 Modification de propriétés
5.3.1 Vue d’ensemble de la modification des propriétés | ||
5.3.2 La commande \set | ||
5.3.3 La commande \override | ||
5.3.4 Élaboration d’une retouche | ||
5.3.5 La commande \tweak | ||
5.3.6 \set ou \override |
5.3.1 Vue d’ensemble de la modification des propriétés
5.3.2 La commande \set
Chaque contexte peut avoir plusieurs propriétés, c’est-à-dire
des variables qu’il inclut. Ces dernières peuvent être modifiées « à la volée »,
c’est-à-dire pendant que la compilation s’accomplit. C’est là le rôle de la
commande \set
.
\set contexte.propriété = #valeur
Ainsi :
R1*2 \set Score.skipBars = ##t R1*2
Cette commande permet de condenser les mesures vides de notes, en des silences
multi-mesures. Il s’agit d’un objet Scheme, auquel on attribue la valeur booléenne
‘vrai’, c’est-à-dire la lettre #t
pour ‘True’ en anglais.
Ce changement étant appliqué ‘à la volée’, il n’affecte que le second groupe de notes.
Si l’argument contexte n’est pas spécifié, alors la propriété cherchera à s’appliquer
dans le contexte le plus restreint où elle est employée : le plus souvent
ChordNames
, Voice
, ou Lyrics
. Dans l’exemple suivant,
c8 c c c \set autoBeaming = ##f c8 c c c
aucun argument contexte n’a été donné à la commande \set
.
De ce fait, les ligatures automatiques sont désactivées dans le
contexte actuel, c’est-à-dire
Voice. Notez que le
contexte le plus restreint n’est pas toujours le bon,
et peut ne pas contenir la propriété qui vous intéresse : ainsi, la propriété
skipBars
, évoquée plus haut, ne relève pas du contexte Voice
,
et le code suivant ne fonctionnera pas.
R1*2 \set skipBars = ##t R1*2
Les contextes s’organisent de façon hiérarchique : aussi, lorsqu’un contexte de niveau
supérieur est spécifié (par exemple Staff
), la propriété sera modifée dans
tous les contextes inférieurs (tous les contextes Voice
, par exemple)
qu’il contient.
La commande \unset
permet d’annuler la définition d’une propriété :
\unset contexte.propriété
si et seulement si cette propriété à été définie dans ce contexte précis ; ainsi,
\set Staff.autoBeaming = ##f
même s’il s’applique à tous les contextes Voice
contenus dans le
contexte Staff
, ne peut être annulé au niveau Voice
. Le code
suivant sera sans effet.
\unset Voice.autoBeaming
En d’autres termes, la commande \unset
doit impérativement être
accompagnée du même contexte que la commande \set
d’origine.
Pour annuler l’effet, dans notre exemple, de Staff.autoBeaming = ##f
,
il faut donc entrer :
\unset Staff.autoBeaming
Si l’on se trouve dans le contexte le plus restreint, il n’est pas obligatoire, là encore, de spécifier le contexte. Ainsi, les deux lignes suivantes sont équivalentes.
\set Voice.autoBeaming = ##t \set autoBeaming = ##t
Pour modifier une propriété de façon à ce qu’elle ne s’applique qu’une seule fois,
il convient d’employer la commande \once
:
c4 \once \set fontSize = #4.7 c4 c4
Ici le changement de taille est annulé aussitôt après la note concernée.
La référence du programme contient une description exhaustive de toutes les propriétés contexte par contexte : voir Tunable context properties.
5.3.3 La commande \override
La commande \override
permet de modifier la mise en page
en détail. Examinons son utilisation concrètementet dans les détails.
La syntaxe de cette commande ressemble généralement à :
\override contexte.objet #'propriété = #valeur
La propriété propriété de l’objet objet, appartenant au contexte contexte, se voit ainsi attribuer la valeur valeur.
5.3.4 Élaboration d’une retouche
Les commandes permettant de modifier l’apparence de la partition ressemblent en général à
\override Voice.Stem #'thickness = #3.0
Pour élaborer un réglage de ce type, on a besoin de connaître précisément :
- le contexte : ici
Voice
(la voix). - l’objet à affecter : ici
Stem
(les hampes). - la propriété à modifier : ici
thickness
(l’épaisseur du trait). - la valeur désirée : ici
3.0
(par défaut, elle est de 1.3).
Certaines ‘sous-propriétés’ sont parfois contenues dans une propriété. La commande devient alors :
\override Stem #'(details beamed-lengths) = #'(4 4 3)
Pour bien des propriétés, quel que soit le type de valeur requise,
attribuer la valeur ‘faux’ (##f
en Scheme) reviendra à désactiver
complètement l’action de la propriété qui se trouve ainsi purement
ignorée par LilyPond. Cela peut s’avérer fort utile pour des propriétés
causant des désagréments.
5.3.5 La commande \tweak
Dans certains cas, on peut passer par un raccourci pour arranger les
objets graphiques. Lorsqu’un objet est directement engendré par un élément distinct
du fichier source, on peut utiliser la commande \tweak
.
Dans l’accord suivant, les notes sont modifiées une par une :
< c \tweak #'color #red d g \tweak #'duration-log #1 a >4-\tweak #'padding #10 -.
Comme on peut le voir, les propriétés sont ici modifiées directement en même temps que les objets sont saisis. Il n’est plus besoin de spécifier ni le nom de l’objet (grob), ni le contexte dans lequel cela doit s’appliquer.
Ce procédé ne marche que pour des objets directement liés aux évènements ( Event) du fichier source. Par exemple :
- Les têtes de notes au sein d’un accord, qui sont directement engendrées par les hauteurs indiquées
- Les signes d’articulation, engendrés par les indications de ponctuation.
En revanche, les hampes ou les altérations sont engendrées par les têtes de notes, et non par des évènements dans le fichier source. De même pour les clés, qui ne sont pas directement engendrées par le fichier source, mais plutôt par le changement d’une propriété interne.
En fait, très peu d’objets passent directement du code source à la partition.
Une note toute simple, par exemple c4
, fait l’objet d’un traitement et n’est donc
pas directement rendue ; c’est pourquoi le code suivant ne sera d’aucun effet :
\tweak #'color #red c4
Voir pour plus de détails Affichage d’expressions musicales.
5.3.6 \set
ou \override
Si les propriétés peuvent être modifiées de deux façons, par les commandes
\set
et \override
, c’est qu’il y a deux types de propriétés.
Les contextes peuvent avoir des propriétés, dont les noms commencent par une
minuscule puis comprennent une ou plusieurs majuscules (de style
totoTutu
). Elles ont surtout trait
à la notation des éléments musicaux : par exemple, localKeySignature
permet
de choisir s’il faut ou non imprimer une altération, ou measurePosition
permet
de choisir quand il faut imprimer une barre de mesure. Ces propriétés de contextes
sont appelées à changer au long de l’interprétation de la partition :
measurePosition
en est un exemple évident. Ces propriétés doivent
être modifiées avec la commande \set
.
Il existe un type particulier de propriétés : les descriptions
d’éléments. Ces propriétés, dont les noms commencent par une majuscule, puis comprennent
une ou plusieurs majuscules (de style TotoTata
), contiennent les réglages
‘par défaut’ pour les objets graphiques. Ces réglages sont sous forme de liste Scheme ; on
peut les consulter dans le fichier ‘scm/define-grobs.scm’.
Les descriptions d’éléments doivent être modifiées avec la commande \override
.
\override
est en fait un raccourci :
\override contexte.objet #'propriété = #valeur
est plus ou moins l’équivalent de
\set contexte.objet #'propriété = #(cons (cons 'propriété valeur) <valeur précédente de contexte)
La valeur de context
(la liste Scheme, ou ‘alist’) sert à initialiser
les propriétés des objets un par un. Les objets eux-même ont leurs propriétés,
dont les noms, dans la tradition du langage Scheme, comprennent un trait d’union
(toto-titi
). Ces propriétés internes changent constamment au cours de la mise
en page : en fait, la gravure d’une page n’est autre que le calcul de toutes
ces propriétés, au moyen de fonctions de rappel.
La propriété fontSize
est une exception : c’est un raccourci, qui équivaudrait
à saisir \override … #'font-size
pour tous les objets
textuels. Dans la mesure où il s’agit d’une manipulation très
courante, une propriété spéciale a été créée. Elle doit
être modifiée avec la commande \set
.
5.4 Propriétés et contextes utiles
5.4.1 Modes de saisie
5.4.2 Direction et positionnement
5.4.3 Distances et unités de mesure
5.4.4 Propriétés des lignes de portée
5.4.5 Extenseurs et prolongateurs
Utilisation de spanner-interface
[ << Modification des réglages prédéfinis ] | [Racine][Table des matières][Index][ ? ] | [ Interfaces pour les programmeurs >> ] | ||
[ < ] | [ Plus haut: Extenseurs et prolongateurs ] | [ Visibilité des objets > ] |
Utilisation de line-spanner-interface
5.4.6 Visibilité des objets
Suppression des stencils | ||
Transparence des objets | ||
Blanchiment des objets | ||
Utilisation de break-visibility | ||
Considérations spécifiques |
Suppression des stencils
Transparence des objets
Blanchiment des objets
Utilisation de break-visibility
Considérations spécifiques
5.4.7 Styles de ligne
5.4.8 Rotation des objets
Rotation des objets de mise en forme | ||
Rotation des étiquettes |
Rotation des objets de mise en forme
Rotation des étiquettes
5.5 Retouches avancées
5.5.1 Alignement des objets | ||
5.5.2 Regroupement vertical d’objets graphiques | ||
5.5.3 Modification des stencils | ||
5.5.4 Modification de l’allure des éléments |
5.5.1 Alignement des objets
Détermination directe de X-offset et Y-offset | ||
Utilisation de side-position-interface | ||
Utilisation de self-alignment-interface | ||
Utilisation de break-aligned-interface |
Détermination directe de X-offset
et Y-offset
Utilisation de side-position-interface
Utilisation de self-alignment-interface
Utilisation des procédures aligned-on-parent
Utilisation des procédures centered-on-parent
Utilisation de break-aligned-interface
5.5.2 Regroupement vertical d’objets graphiques
Les objets VerticalAlignment
et VerticalAxisGroup
travaillent de concert. Comme leurs noms anglais l’indiquent,
VerticalAxisGroup
regroupe différents objets tels que les portées
(Staff
), les paroles (Lyrics
) et ainsi de suite ; puis
VerticalAlignment
synchronise verticalement ces différents groupes.
En général, il n’y a qu’un seul VerticalAlignment
pour l’ensemble
de la partition, mais chaque contexte Staff
, Lyrics
, etc.
possède son propre VerticalAxisGroup
.
5.5.3 Modification des stencils
5.5.4 Modification de l’allure des éléments
Modification des liaisons |
Modification des liaisons
[ << Modification des réglages prédéfinis ] | [Racine][Table des matières][Index][ ? ] | [ Tables du manuel de notation >> ] | ||
[ < Modification des liaisons ] | [ Plus haut: Top ] | [ Fonctions musicales > ] |
6. Interfaces pour les programmeurs
6.1 Fonctions musicales
6.1.1 Aperçu des fonctions musicales
6.1.2 Fonctions de substitution simple
6.1.3 Fonctions de substitution par paire
6.1.4 De l’usage des mathématiques dans les fonctions
6.1.5 Fonctions fantômes
6.1.6 Fonctions dépourvues d’argument
6.1.7 Liste des fonctions musicales prédéfinies
-
acciaccatura
- music (music) -
Create an acciaccatura from the following music expression
-
addChordShape
- key-symbol (symbol) tuning (pair) shape-definition (string or pair) -
Add chord shape shape-definition to the chord-shape-table hash with the key (cons key-symbol tuning).
-
addInstrumentDefinition
- name (string) lst (list) -
Create instrument name with properties list.
-
addQuote
- name (string) music (music) -
Define music as a quotable music expression named name
-
afterGrace
- main (music) grace (music) -
Create grace note(s) after a main music expression.
-
allowPageTurn
-
Allow a page turn. May be used at toplevel (ie between scores or markups), or inside a score.
-
applyContext
- proc (procedure) -
Modify context properties with Scheme procedure proc.
-
applyMusic
- func (procedure) music (music) -
Apply procedure func to music.
-
applyOutput
- ctx (symbol) proc (procedure) -
Apply function
proc
to every layout object in contextctx
-
appoggiatura
- music (music) -
Create an appoggiatura from music
-
assertBeamQuant
- l (pair) r (pair) -
Testing function: check whether the beam quants l and r are correct
-
assertBeamSlope
- comp (procedure) -
Testing function: check whether the slope of the beam is the same as
comp
-
autochange
- music (music) -
Make voices that switch between staves automatically
-
balloonGrobText
- grob-name (symbol) offset (pair of numbers) text (markup) -
Attach text to grob-name at offset offset (use like
\once
) -
balloonText
- offset (pair of numbers) text (markup) -
Attach text at offset (use like
\tweak
) -
bar
- type (string) -
Insert a bar line of type type
-
barNumberCheck
- n (integer) -
Print a warning if the current bar number is not n.
-
bendAfter
- delta (real number) -
Create a fall or doit of pitch interval delta.
-
bookOutputName
- newfilename (string) -
Direct output for the current book block to newfilename.
-
bookOutputSuffix
- newsuffix (string) -
Set the output filename suffix for the current book block to newsuffix.
-
breathe
-
Insert a breath mark.
-
clef
- type (string) -
Set the current clef to type.
-
cueDuring
- what (string) dir (direction) main-music (music) -
Insert contents of quote what corresponding to main-music, in a CueVoice oriented by dir.
-
deadNote
- note (music) -
Print note with a cross-shaped note head.
-
defaultNoteHeads
-
Revert to the default note head style.
-
displayLilyMusic
- music (music) -
Display the LilyPond input representation of music to the console.
-
displayMusic
- music (music) -
Display the internal representation of music to the console.
-
endSpanners
- music (music) -
Terminate the next spanner prematurely after exactly one note without the need of a specific end spanner.
-
featherDurations
- factor (moment) argument (music) -
Adjust durations of music in argument by rational factor.
-
grace
- music (music) -
Insert music as grace notes.
-
harmonicNote
- note (music) -
Print note with a diamond-shaped note head.
-
harmonicsOn
-
Set the default note head style to a diamond-shaped style.
-
instrumentSwitch
- name (string) -
Switch instrument to name, which must be predefined with
\addInstrumentDefinition
. -
keepWithTag
- tag (symbol) music (music) -
Include only elements of music that are tagged with tag.
-
killCues
- music (music) -
Remove cue notes from music.
-
label
- label (symbol) -
Create label as a bookmarking label.
-
makeClusters
- arg (music) -
Display chords in arg as clusters.
-
musicMap
- proc (procedure) mus (music) -
Apply proc to mus and all of the music it contains.
-
noPageBreak
-
Forbid a page break. May be used at toplevel (i.e., between scores or markups), or inside a score.
-
noPageTurn
-
Forbid a page turn. May be used at toplevel (i.e., between scores or markups), or inside a score.
-
octaveCheck
- pitch-note (music) -
Octave check.
-
ottava
- octave (number) -
Set the octavation.
-
overrideBeamSettings
- context (symbol) time-signature (pair) rule-type (symbol) grouping-rule (pair) -
Override beamSettings in context for time signatures of time-signature and rules of type rule-type to have a grouping rule alist grouping-rule. rule-type can be
end
orsubdivide
, with a potential future value ofbegin
. grouping-rule is an alist of (beam-type . grouping) entries. grouping is in units of beam-type. If beam-type is*
, grouping is in units of the denominator of time-signature. -
overrideProperty
- name (string) property (symbol) value (any type) -
Set property to value in all grobs named name. The name argument is a string of the form
"Context.GrobName"
or"GrobName"
. -
pageBreak
-
Force a page break. May be used at toplevel (i.e., between scores or markups), or inside a score.
-
pageTurn
-
Force a page turn between two scores or top-level markups.
-
palmMute
- note (music) -
Print note with a triangle-shaped note head.
-
palmMuteOn
-
Set the default note head style to a triangle-shaped style.
-
parallelMusic
- voice-ids (list) music (music) -
Define parallel music sequences, separated by ’|’ (bar check signs), and assign them to the identifiers provided in voice-ids.
voice-ids: a list of music identifiers (symbols containing only letters)
music: a music sequence, containing BarChecks as limiting expressions.
Example:
\parallelMusic #'(A B C) { c c | d d | e e | d d | e e | f f | } <==> A = { c c | d d | } B = { d d | e e | } C = { e e | f f | }
-
parenthesize
- arg (music) -
Tag arg to be parenthesized.
-
partcombine
- part1 (music) part2 (music) -
Take the music in part1 and part2 and typeset so that they share a staff.
-
phrasingSlurDashPattern
- dash-fraction (number) dash-period (number) -
Set up a custom style of dash pattern for dash-fraction ratio of line to space repeated at dash-period interval.
-
pitchedTrill
- main-note (music) secondary-note (music) -
Print a trill with main-note as the main note of the trill and print secondary-note as a stemless note head in parentheses.
-
pointAndClickOff
-
Suppress generating extra code in final-format (e.g. pdf) files to point back to the lilypond source statement.
-
pointAndClickOn
-
Enable generation of code in final-format (e.g. pdf) files to reference the originating lilypond source statement; this is helpful when developing a score but generates bigger final-format files.
-
quoteDuring
- what (string) main-music (music) -
Indicate a section of music to be quoted. what indicates the name of the quoted voice, as specified in an
\addQuote
command. main-music is used to indicate the length of music to be quoted; usually contains spacers or multi-measure rests. -
removeWithTag
- tag (symbol) music (music) -
Remove elements of music that are tagged with tag.
-
resetRelativeOctave
- reference-note (music) -
Set the octave inside a \relative section.
-
revertBeamSettings
- context (symbol) time-signature (pair) rule-type (symbol) -
Revert beam settings in context for time signatures of time-signature and groups of type group-type. group-type can be
end
orsubdivide
. -
rightHandFinger
- finger (number or string) -
Apply finger as a fingering indication.
-
scaleDurations
- fraction (pair of numbers) music (music) -
Multiply the duration of events in music by fraction.
-
setBeatGrouping
- grouping (pair) -
Set the beat grouping in the current time signature to grouping.
-
shiftDurations
- dur (integer) dots (integer) arg (music) -
Scale arg up by a factor of 2^dur*(2-(1/2)^dots).
-
slurDashPattern
- dash-fraction (number) dash-period (number) -
(undocumented; fixme)
-
spacingTweaks
- parameters (list) -
Set the system stretch, by reading the ’system-stretch property of the ‘parameters’ assoc list.
-
storePredefinedDiagram
- chord (music) tuning (pair) diagram-definition (string or pair) -
Add predefined fret diagram defined by diagram-definition for the chord pitches chord and the stringTuning tuning.
-
styledNoteHeads
- style (symbol) heads (list or symbol) music (music) -
Set heads in music to style.
-
tabChordRepetition
-
Include the string information in a chord repetition.
-
tag
- tag (symbol) arg (music) -
Add tag to the
tags
property of arg. -
tieDashPattern
- dash-fraction (number) dash-period (number) -
(undocumented; fixme)
-
tocItem
- text (markup) -
Add a line to the table of content, using the
tocItemMarkup
paper variable markup -
transposedCueDuring
- what (string) dir (direction) pitch-note (music) main-music (music) -
Insert notes from the part what into a voice called
cue
, using the transposition defined by pitch-note. This happens simultaneously with main-music, which is usually a rest. The argument dir determines whether the cue notes should be notated as a first or second voice. -
transposition
- pitch-note (music) -
Set instrument transposition
-
tweak
- sym (symbol) val (any type) arg (music) -
Add
sym . val
to thetweaks
property of arg. -
unfoldRepeats
- music (music) -
Force any
\repeat volta
,\repeat tremolo
or\repeat percent
commands in music to be interpreted as\repeat unfold
. -
withMusicProperty
- sym (symbol) val (any type) music (music) -
Set sym to val in music.
-
xNote
- note (music) -
Print note with a cross-shaped note head.
-
xNotesOn
-
Set the default note head style to a cross-shaped style.
6.2 Interfaces de programmation
6.2.1 Variables d’entrée et Scheme | ||
6.2.2 Représentation interne de la musique |
6.2.1 Variables d’entrée et Scheme
6.2.2 Représentation interne de la musique
6.3 Construction de fonctions complexes
6.3.1 Affichage d’expressions musicales | ||
6.3.2 Propriétés de la musique | ||
• Exemple : redoubler une note avec liaison:: | ||
• Exemple : ajouter une articulation à plusieurs notes:: |
6.3.1 Affichage d’expressions musicales
6.3.2 Propriétés de la musique
6.3.3 Exemple : redoubler une note avec liaison
6.3.4 Exemple : ajouter une articulation à plusieurs notes
6.4 Interface de programmation des marqueurs de texte
6.4.1 Construction Scheme d’un marqueur | ||
6.4.2 Fonctionnement interne des marqueurs | ||
6.4.3 Définition d’une nouvelle commande de marqueur | ||
6.4.4 Définition d’une nouvelle commande de liste de marqueurs |
6.4.1 Construction Scheme d’un marqueur
6.4.2 Fonctionnement interne des marqueurs
6.4.3 Définition d’une nouvelle commande de marqueur
6.4.4 Définition d’une nouvelle commande de liste de marqueurs
6.5 Contextes pour programmeurs
6.5.1 Évaluation d’un contexte | ||
6.5.2 Application d’une fonction à tous les objets de mise en forme |
6.5.1 Évaluation d’un contexte
6.5.2 Application d’une fonction à tous les objets de mise en forme
6.6 Utilisation de procédures Scheme en tant que propriétés
6.7 Utilisation de code Scheme au lieu de \tweak | ||
6.8 Retouches complexes |
6.7 Utilisation de code Scheme au lieu de \tweak
L’inconvénient principal de la commande \tweak
est la rigidité de sa
syntaxe. Par exemple, le code suivant produit une erreur.
F = \tweak #'font-size #-3 -\flageolet \relative c'' { c4^\F c4_\F }
En d’autres termes, \tweak
ne se comporte pas comme une articulation :
il ne peut notamment pas être accolé avec les symboles ‘^’ ou ‘_’.
C’est en se servant du langage Scheme que l’on peut résoudre ce problème.
Dans cet exemple, on a recours aux méthodes décrites dans Exemple : ajouter une articulation à plusieurs notes, en particulier quant à l’emploi de
\displayMusic
.
F = #(let ((m (make-music 'ArticulationEvent 'articulation-type "flageolet"))) (set! (ly:music-property m 'tweaks) (acons 'font-size -3 (ly:music-property m 'tweaks))) m) \relative c'' { c4^\F c4_\F }
Ici les propriétés tweak
de l’objet flageolet nommé
‘m’ (créé au moyen de make-music
) sont extraites par
ly:music-property
, une nouvelle valeur de la taille de fonte
est ajoutée à la liste de ses propriétés (grâce à la fonction Scheme
acons
), et le résultat de cette opération est renvoyé par set!
.
Le dernier élément, dans ce bloc let
, est la valeur finale de
‘m’ lui-même.
6.8 Retouches complexes
Certains réglages sont plus délicats que d’autres.
-
L’un d’entre eux est l’apparence des objets dits ‘spanner’, qui s’étendent
horizontalement, tels que les liaisons. Si, en principe, un seul de ces objets
est créé à la fois et peut donc être modifié de façon habituelle, lorsque ces
objets doivent enjamber un changement de ligne, ils sont dupliqués au début
du ou des systèmes suivants. Comme ces objets sont des clones de l’objet d’origine,
ils en héritent toutes les propriétés, y compris les éventuelles commandes
\override
.En d’autres termes, une commande
\override
affecte toujours les deux extrémités d’un objet ‘spanner’. Pour ne modifier que la partie précédant ou suivant le changement de ligne, il faut intervenir directement dans le processus de mise en page. La fonction de rappelafter-line-breaking
contient toute l’opération Scheme effectuée lorsque les sauts de lignes ont été déterminés, et que des objets graphiques ont été divisés sur des systèmes différents.Dans l’exemple suivant, on définit une nouvelle opération nommée
my-callback
. Cette opération- détermine si l’objet a été divisé à l’occasion d’un changement de ligne
- si oui, recherche les différents morceaux de l’objet
- vérifie si l’objet considéré est bien la deuxième moitié d’un objet divisé
-
si oui, applique un espacement supplémentaire (
extra-offset
).
On ajoute cette procédure à l’objet Tie (liaison de tenue), de façon à ce que le deuxième morceau d’une liaison divisée soit rehaussé.
#(define (my-callback grob) (let* ( ; l'objet a-t-il été divisé ? (orig (ly:grob-original grob)) ; si oui, rechercher les morceaux frères (siblings) (siblings (if (ly:grob? orig) (ly:spanner-broken-into orig) '() ))) (if (and (>= (length siblings) 2) (eq? (car (last-pair siblings)) grob)) (ly:grob-set-property! grob 'extra-offset '(-2 . 5))))) \relative c'' { \override Tie #'after-line-breaking = #my-callback c1 ~ \break c2 ~ c }
Lorsque cette astuce va être appliquée, notre nouvelle fonction de rappel
after-line-breaking
devra également appeler celle d’origine (after-line-breaking
), si elle existe. Ainsi, pour l’utiliser dans le cas d’un crescendo (objetHairpin
), il faudra appeler égalemently:hairpin::after-line-breaking
. - Pour des raisons d’ordre technique, certains objets ne peuvent être modifiés par
\override
. Parmi ceux-là, les objetsNonMusicalPaperColumn
etPaperColumn
. La commande\overrideProperty
sert à les modifier, de façon similaire à\once \override
, mais avec une syntaxe différente :\overrideProperty #"Score.NonMusicalPaperColumn" % Nom de l'objet #'line-break-system-details % Nom de la propriété #'((next-padding . 20)) % valeur
Notez cependant que la commande
\override
peut tout de même être appliquée àNonMusicalPaperColumn
etPaperColumn
dans un bloc\context
.
[ << Interfaces pour les programmeurs ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Retouches complexes ] | [ Plus haut: Top ] | [ Table des noms d'accord > ] |
A. Tables du manuel de notation
A.1 Table des noms d’accord
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Table des noms d'accord ] | [ Plus haut: Tables du manuel de notation ] | [ > ] |
A.2 Modificateurs d’accord usuels
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Modificateurs d'accord usuels ] | [ Plus haut: Tables du manuel de notation ] | [ Instruments MIDI > ] |
A.3 Tablatures prédéfinies
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Tables du manuel de notation ] | [ Liste des couleurs > ] |
A.4 Instruments MIDI
La liste suivante répertorie les différentes dénominations que vous
pouvez affecter à la propriété midiInstrument
.
acoustic grand contrabass lead 7 (fifths) bright acoustic tremolo strings lead 8 (bass+lead) electric grand pizzicato strings pad 1 (new age) honky-tonk orchestral harp pad 2 (warm) electric piano 1 timpani pad 3 (polysynth) electric piano 2 string ensemble 1 pad 4 (choir) harpsichord string ensemble 2 pad 5 (bowed) clav synthstrings 1 pad 6 (metallic) celesta synthstrings 2 pad 7 (halo) glockenspiel choir aahs pad 8 (sweep) music box voice oohs fx 1 (rain) vibraphone synth voice fx 2 (soundtrack) marimba orchestra hit fx 3 (crystal) xylophone trumpet fx 4 (atmosphere) tubular bells trombone fx 5 (brightness) dulcimer tuba fx 6 (goblins) drawbar organ muted trumpet fx 7 (echoes) percussive organ french horn fx 8 (sci-fi) rock organ brass section sitar church organ synthbrass 1 banjo reed organ synthbrass 2 shamisen accordion soprano sax koto harmonica alto sax kalimba concertina tenor sax bagpipe acoustic guitar (nylon) baritone sax fiddle acoustic guitar (steel) oboe shanai electric guitar (jazz) english horn tinkle bell electric guitar (clean) bassoon agogo electric guitar (muted) clarinet steel drums overdriven guitar piccolo woodblock distorted guitar flute taiko drum guitar harmonics recorder melodic tom acoustic bass pan flute synth drum electric bass (finger) blown bottle reverse cymbal electric bass (pick) shakuhachi guitar fret noise fretless bass whistle breath noise slap bass 1 ocarina seashore slap bass 2 lead 1 (square) bird tweet synth bass 1 lead 2 (sawtooth) telephone ring synth bass 2 lead 3 (calliope) helicopter violin lead 4 (chiff) applause viola lead 5 (charang) gunshot cello lead 6 (voice)
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Instruments MIDI ] | [ Plus haut: Tables du manuel de notation ] | [ La fonte Feta > ] |
A.5 Liste des couleurs
Couleurs de base
Noms de couleur X
Noms de couleur sans suffixe numérique
Noms de couleur avec suffixe numérique
Échelle de gris
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Liste des couleurs ] | [ Plus haut: Tables du manuel de notation ] | [ Styles de tête de note > ] |
A.6 La fonte Feta
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < La fonte Feta ] | [ Plus haut: Tables du manuel de notation ] | [ Text markup commands > ] |
A.7 Styles de tête de note
Voici les différents styles de tête de note disponible.
Les commandes suivantes peuvent être utilisées dans un bloc
\markup { }
.
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Styles de tête de note ] | [ Plus haut: Tables du manuel de notation ] | [ Font > ] |
A.8 Text markup commands
The following commands can all be used inside \markup { }
.
A.8.1 Font | ||
A.8.2 Align | ||
A.8.3 Graphic | ||
A.8.4 Music | ||
A.8.5 Instrument Specific Markup | ||
A.8.6 Other |
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Text markup commands ] | [ Plus haut: Text markup commands ] | [ Align > ] |
A.8.1 Font
-
\abs-fontsize
size (number) arg (markup) -
Use size as the absolute font size to display arg. Adjusts
baseline-skip
andword-space
accordingly.\markup { default text font size \hspace #2 \abs-fontsize #16 { text font size 16 } \hspace #2 \abs-fontsize #12 { text font size 12 } }
-
\bold
arg (markup) -
Switch to bold font-series.
\markup { default \hspace #2 \bold bold }
-
\box
arg (markup) -
Draw a box round arg. Looks at
thickness
,box-padding
andfont-size
properties to determine line thickness and padding around the markup.\markup { \override #'(box-padding . 0.5) \box \line { V. S. } }
Used properties:
-
box-padding
(0.2) -
font-size
(0) -
thickness
(1)
-
-
\caps
arg (markup) -
Copy of the
\smallCaps
command.\markup { default \hspace #2 \caps { Text in small caps } }
-
\dynamic
arg (markup) -
Use the dynamic font. This font only contains s, f, m, z, p, and r. When producing phrases, like ‘più f’, the normal words (like ‘più’) should be done in a different font. The recommended font for this is bold and italic.
\markup { \dynamic { sfzp } }
-
\finger
arg (markup) -
Set arg as small numbers.
\markup { \finger { 1 2 3 4 5 } }
-
\fontCaps
arg (markup) -
Set
font-shape
tocaps
Note:
\fontCaps
requires the installation and selection of fonts which support thecaps
font shape. -
\fontsize
increment (number) arg (markup) -
Add increment to the font-size. Adjusts
baseline-skip
accordingly.\markup { default \hspace #2 \fontsize #-1.5 smaller }
Used properties:
-
baseline-skip
(2) -
word-space
(1) -
font-size
(0)
-
-
\huge
arg (markup) -
Set font size to +2.
\markup { default \hspace #2 \huge huge }
-
\italic
arg (markup) -
Use italic
font-shape
for arg.\markup { default \hspace #2 \italic italic }
-
\large
arg (markup) -
Set font size to +1.
\markup { default \hspace #2 \large large }
-
\larger
arg (markup) -
Increase the font size relative to the current setting.
\markup { default \hspace #2 \larger larger }
-
\magnify
sz (number) arg (markup) -
Set the font magnification for its argument. In the following example, the middle A is 10% larger:
A \magnify #1.1 { A } A
Note: Magnification only works if a font name is explicitly selected. Use
\fontsize
otherwise.\markup { default \hspace #2 \magnify #1.5 { 50% larger } }
-
\medium
arg (markup) -
Switch to medium font-series (in contrast to bold).
\markup { \bold { some bold text \hspace #2 \medium { medium font series } \hspace #2 bold again } }
-
\normal-size-sub
arg (markup) -
Set arg in subscript with a normal font size.
\markup { default \normal-size-sub { subscript in standard size } }
Used properties:
-
baseline-skip
-
-
\normal-size-super
arg (markup) -
Set arg in superscript with a normal font size.
\markup { default \normal-size-super { superscript in standard size } }
Used properties:
-
baseline-skip
-
-
\normal-text
arg (markup) -
Set all font related properties (except the size) to get the default normal text font, no matter what font was used earlier.
\markup { \huge \bold \sans \caps { Some text with font overrides \hspace #2 \normal-text { Default text, same font-size } \hspace #2 More text as before } }
-
\normalsize
arg (markup) -
Set font size to default.
\markup { \teeny { this is very small \hspace #2 \normalsize { normal size } \hspace #2 teeny again } }
-
\number
arg (markup) -
Set font family to
number
, which yields the font used for time signatures and fingerings. This font contains numbers and some punctuation; it has no letters.\markup { \number { 0 1 2 3 4 5 6 7 8 9 . , } }
-
\roman
arg (markup) -
Set font family to
roman
.\markup { \sans \bold { sans serif, bold \hspace #2 \roman { text in roman font family } \hspace #2 return to sans } }
-
\sans
arg (markup) -
Switch to the sans serif font family.
\markup { default \hspace #2 \sans { sans serif } }
-
\simple
str (string) -
A simple text string;
\markup { foo }
is equivalent with\markup { \simple #"foo" }
.Note: for creating standard text markup or defining new markup commands, the use of
\simple
is unnecessary.\markup { \simple #"simple" \simple #"text" \simple #"strings" }
-
\small
arg (markup) -
Set font size to -1.
\markup { default \hspace #2 \small small }
-
\smallCaps
arg (markup) -
Emit arg as small caps.
Note:
\smallCaps
does not support accented characters.\markup { default \hspace #2 \smallCaps { Text in small caps } }
-
\smaller
arg (markup) -
Decrease the font size relative to the current setting.
\markup { \fontsize #3.5 { some large text \hspace #2 \smaller { a bit smaller } \hspace #2 more large text } }
-
\sub
arg (markup) -
Set arg in subscript.
\markup { \concat { H \sub { 2 } O } }
Used properties:
-
baseline-skip
-
font-size
(0)
-
-
\super
arg (markup) -
Set arg in superscript.
\markup { E = \concat { mc \super 2 } }
Used properties:
-
baseline-skip
-
font-size
(0)
-
-
\teeny
arg (markup) -
Set font size to -3.
\markup { default \hspace #2 \teeny teeny }
-
\text
arg (markup) -
Use a text font instead of music symbol or music alphabet font.
\markup { \number { 1, 2, \text { three, four, } 5 } }
-
\tiny
arg (markup) -
Set font size to -2.
\markup { default \hspace #2 \tiny tiny }
-
\typewriter
arg (markup) -
Use
font-family
typewriter for arg.\markup { default \hspace #2 \typewriter typewriter }
-
\underline
arg (markup) -
Underline arg. Looks at
thickness
to determine line thickness and y-offset.\markup { default \hspace #2 \override #'(thickness . 2) \underline { underline } }
Used properties:
-
thickness
(1)
-
-
\upright
arg (markup) -
Set
font-shape
toupright
. This is the opposite ofitalic
.\markup { \italic { italic text \hspace #2 \upright { upright text } \hspace #2 italic again } }
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Font ] | [ Plus haut: Text markup commands ] | [ Graphic > ] |
A.8.2 Align
-
\center-align
arg (markup) -
Align
arg
to its X center.\markup { \column { one \center-align two three } }
-
\center-column
args (markup list) -
Put
args
in a centered column.\markup { \center-column { one two three } }
Used properties:
-
baseline-skip
-
-
\column
args (markup list) -
Stack the markups in args vertically. The property
baseline-skip
determines the space between markups in args.\markup { \column { one two three } }
Used properties:
-
baseline-skip
-
-
\combine
arg1 (markup) arg2 (markup) -
Print two markups on top of each other.
Note:
\combine
cannot take a list of markups enclosed in curly braces as an argument; the follow example will not compile:\combine { a list }
\markup { \fontsize #5 \override #'(thickness . 2) \combine \draw-line #'(0 . 4) \arrow-head #Y #DOWN ##f }
-
\concat
args (markup list) -
Concatenate args in a horizontal line, without spaces in between. Strings and simple markups are concatenated on the input level, allowing ligatures. For example,
\concat { "f" \simple #"i" }
is equivalent to"fi"
.\markup { \concat { one two three } }
-
\dir-column
args (markup list) -
Make a column of args, going up or down, depending on the setting of the
direction
layout property.\markup { \override #`(direction . ,UP) { \dir-column { going up } } \hspace #1 \dir-column { going down } \hspace #1 \override #'(direction . 1) { \dir-column { going up } } }
Used properties:
-
baseline-skip
-
direction
-
-
\fill-line
args (markup list) -
Put markups in a horizontal line of width line-width. The markups are spaced or flushed to fill the entire line. If there are no arguments, return an empty stencil.
\markup { \column { \fill-line { Words evenly spaced across the page } \null \fill-line { \line { Text markups } \line { \italic { evenly spaced } } \line { across the page } } } }
Used properties:
-
line-width
(#f) -
word-space
(1) -
text-direction
(1)
-
-
\general-align
axis (integer) dir (number) arg (markup) -
Align arg in axis direction to the dir side.
\markup { \column { one \general-align #X #LEFT two three \null one \general-align #X #CENTER two three \null \line { one \general-align #Y #UP two three } \null \line { one \general-align #Y #3.2 two three } } }
-
\halign
dir (number) arg (markup) -
Set horizontal alignment. If dir is
-1
, then it is left-aligned, while+1
is right. Values in between interpolate alignment accordingly.\markup { \column { one \halign #LEFT two three \null one \halign #CENTER two three \null one \halign #RIGHT two three \null one \halign #-5 two three } }
-
\hcenter-in
length (number) arg (markup) -
Center arg horizontally within a box of extending length/2 to the left and right.
\new StaffGroup << \new Staff { \set Staff.instrumentName = \markup { \hcenter-in #12 Oboe } c''1 } \new Staff { \set Staff.instrumentName = \markup { \hcenter-in #12 Bassoon } \clef tenor c'1 } >>
-
\hspace
amount (number) -
Create an invisible object taking up horizontal space amount.
\markup { one \hspace #2 two \hspace #8 three }
-
\justify-field
symbol (symbol) -
Justify the data which has been assigned to symbol.
\header { title = "My title" myText = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat." } \paper { bookTitleMarkup = \markup { \column { \fill-line { \fromproperty #'header:title } \null \justify-field #'header:myText } } } \markup { \null }
-
\justify
args (markup list) -
Like
\wordwrap
, but with lines stretched to justify the margins. Use\override #'(line-width . X)
to set the line width; X is the number of staff spaces.\markup { \justify { Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. } }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\justify-string
arg (string) -
Justify a string. Paragraphs may be separated with double newlines
\markup { \override #'(line-width . 40) \justify-string #"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum" }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
-
baseline-skip
-
-
\left-align
arg (markup) -
Align arg on its left edge.
\markup { \column { one \left-align two three } }
-
\left-column
args (markup list) -
Put
args
in a left-aligned column.\markup { \left-column { one two three } }
Used properties:
-
baseline-skip
-
-
\line
args (markup list) -
Put args in a horizontal line. The property
word-space
determines the space between markups in args.\markup { \line { one two three } }
Used properties:
-
text-direction
(1) -
word-space
-
-
\lower
amount (number) arg (markup) -
Lower arg by the distance amount. A negative amount indicates raising; see also
\raise
.\markup { one \lower #3 two three }
-
\pad-around
amount (number) arg (markup) -
Add padding amount all around arg.
\markup { \box { default } \hspace #2 \box { \pad-around #0.5 { padded } } }
-
\pad-markup
amount (number) arg (markup) -
Add space around a markup object.
\markup { \box { default } \hspace #2 \box { \pad-markup #1 { padded } } }
-
\pad-to-box
x-ext (pair of numbers) y-ext (pair of numbers) arg (markup) -
Make arg take at least x-ext, y-ext space.
\markup { \box { default } \hspace #4 \box { \pad-to-box #'(0 . 10) #'(0 . 3) { padded } } }
-
\pad-x
amount (number) arg (markup) -
Add padding amount around arg in the X direction.
\markup { \box { default } \hspace #4 \box { \pad-x #2 { padded } } }
-
\put-adjacent
axis (integer) dir (direction) arg1 (markup) arg2 (markup) -
Put arg2 next to arg1, without moving arg1.
-
\raise
amount (number) arg (markup) -
Raise arg by the distance amount. A negative amount indicates lowering, see also
\lower
.The argument to
\raise
is the vertical displacement amount, measured in (global) staff spaces.\raise
and\super
raise objects in relation to their surrounding markups.If the text object itself is positioned above or below the staff, then
\raise
cannot be used to move it, since the mechanism that positions it next to the staff cancels any shift made with\raise
. For vertical positioning, use thepadding
and/orextra-offset
properties.\markup { C \small \bold \raise #1.0 9/7+ }
-
\right-align
arg (markup) -
Align arg on its right edge.
\markup { \column { one \right-align two three } }
-
\right-column
args (markup list) -
Put
args
in a right-aligned column.\markup { \right-column { one two three } }
Used properties:
-
baseline-skip
-
-
\rotate
ang (number) arg (markup) -
Rotate object with ang degrees around its center.
\markup { default \hspace #2 \rotate #45 \line { rotated 45° } }
-
\translate
offset (pair of numbers) arg (markup) -
Translate arg relative to its surroundings. offset is a pair of numbers representing the displacement in the X and Y axis.
\markup { * \translate #'(2 . 3) \line { translated two spaces right, three up } }
-
\translate-scaled
offset (pair of numbers) arg (markup) -
Translate arg by offset, scaling the offset by the
font-size
.\markup { \fontsize #5 { * \translate #'(2 . 3) translate \hspace #2 * \translate-scaled #'(2 . 3) translate-scaled } }
Used properties:
-
font-size
(0)
-
-
\vcenter
arg (markup) -
Align
arg
to its Y center.\markup { one \vcenter two three }
-
\vspace
amount (number) -
Create an invisible object taking up vertical space of amount multiplied by 3.
\markup { \center-column { one \vspace #2 two \vspace #5 three } }
-
\wordwrap-field
symbol (symbol) -
Wordwrap the data which has been assigned to symbol.
\header { title = "My title" myText = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat." } \paper { bookTitleMarkup = \markup { \column { \fill-line { \fromproperty #'header:title } \null \wordwrap-field #'header:myText } } } \markup { \null }
-
\wordwrap
args (markup list) -
Simple wordwrap. Use
\override #'(line-width . X)
to set the line width, where X is the number of staff spaces.\markup { \wordwrap { Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. } }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\wordwrap-string
arg (string) -
Wordwrap a string. Paragraphs may be separated with double newlines.
\markup { \override #'(line-width . 40) \wordwrap-string #"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum" }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
-
baseline-skip
-
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Align ] | [ Plus haut: Text markup commands ] | [ Music > ] |
A.8.3 Graphic
-
\arrow-head
axis (integer) dir (direction) filled (boolean) -
Produce an arrow head in specified direction and axis. Use the filled head if filled is specified.
\markup { \fontsize #5 { \general-align #Y #DOWN { \arrow-head #Y #UP ##t \arrow-head #Y #DOWN ##f \hspace #2 \arrow-head #X #RIGHT ##f \arrow-head #X #LEFT ##f } } }
-
\beam
width (number) slope (number) thickness (number) -
Create a beam with the specified parameters.
\markup { \beam #5 #1 #2 }
-
\bracket
arg (markup) -
Draw vertical brackets around arg.
\markup { \bracket { \note #"2." #UP } }
-
\circle
arg (markup) -
Draw a circle around arg. Use
thickness
,circle-padding
andfont-size
properties to determine line thickness and padding around the markup.\markup { \circle { Hi } }
Used properties:
-
circle-padding
(0.2) -
font-size
(0) -
thickness
(1)
-
-
\draw-circle
radius (number) thickness (number) filled (boolean) -
A circle of radius radius and thickness thickness, optionally filled.
\markup { \draw-circle #2 #0.5 ##f \hspace #2 \draw-circle #2 #0 ##t }
-
\draw-line
dest (pair of numbers) -
A simple line.
\markup { \draw-line #'(4 . 4) \override #'(thickness . 5) \draw-line #'(-3 . 0) }
Used properties:
-
thickness
(1)
-
-
\epsfile
axis (number) size (number) file-name (string) -
Inline an EPS image. The image is scaled along axis to size.
\markup { \general-align #Y #DOWN { \epsfile #X #20 #"context-example.eps" \epsfile #Y #20 #"context-example.eps" } }
-
\filled-box
xext (pair of numbers) yext (pair of numbers) blot (number) -
Draw a box with rounded corners of dimensions xext and yext. For example,
\filled-box #'(-.3 . 1.8) #'(-.3 . 1.8) #0
creates a box extending horizontally from -0.3 to 1.8 and vertically from -0.3 up to 1.8, with corners formed from a circle of diameter 0 (i.e., sharp corners).
\markup { \filled-box #'(0 . 4) #'(0 . 4) #0 \filled-box #'(0 . 2) #'(-4 . 2) #0.4 \filled-box #'(1 . 8) #'(0 . 7) #0.2 \with-color #white \filled-box #'(-4.5 . -2.5) #'(3.5 . 5.5) #0.7 }
-
\hbracket
arg (markup) -
Draw horizontal brackets around arg.
\markup { \hbracket { \line { one two three } } }
-
\parenthesize
arg (markup) -
Draw parentheses around arg. This is useful for parenthesizing a column containing several lines of text.
\markup { \line { \parenthesize { \column { foo bar } } \override #'(angularity . 2) { \parenthesize { \column { bah baz } } } } }
Used properties:
-
width
(0.25) -
thickness
(1) -
size
(1) -
padding
-
angularity
(0)
-
-
\postscript
str (string) -
This inserts str directly into the output as a PostScript command string.
ringsps = #" 0.15 setlinewidth 0.9 0.6 moveto 0.4 0.6 0.5 0 361 arc stroke 1.0 0.6 0.5 0 361 arc stroke " rings = \markup { \with-dimensions #'(-0.2 . 1.6) #'(0 . 1.2) \postscript #ringsps } \relative c'' { c2^\rings a2_\rings }
-
\rounded-box
arg (markup) -
Draw a box with rounded corners around arg. Looks at
thickness
,box-padding
andfont-size
properties to determine line thickness and padding around the markup; thecorner-radius
property makes it possible to define another shape for the corners (default is 1).c4^\markup { \rounded-box { Overtura } } c,8. c16 c4 r
Used properties:
-
box-padding
(0.5) -
font-size
(0) -
corner-radius
(1) -
thickness
(1)
-
-
\triangle
filled (boolean) -
A triangle, either filled or empty.
\markup { \triangle ##t \hspace #2 \triangle ##f }
Used properties:
-
baseline-skip
(2) -
font-size
(0) -
thickness
(0.1)
-
-
\with-url
url (string) arg (markup) -
Add a link to URL url around arg. This only works in the PDF backend.
\markup { \with-url #"http://lilypond.org/web/" { LilyPond ... \italic { music notation for everyone } } }
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Graphic ] | [ Plus haut: Text markup commands ] | [ Instrument Specific Markup > ] |
A.8.4 Music
-
\customTabClef
num-strings (integer) staff-space (number) -
Draw a tab clef sans-serif style.
-
\doubleflat
-
Draw a double flat symbol.
\markup { \doubleflat }
-
\doublesharp
-
Draw a double sharp symbol.
\markup { \doublesharp }
-
\flat
-
Draw a flat symbol.
\markup { \flat }
-
\musicglyph
glyph-name (string) -
glyph-name is converted to a musical symbol; for example,
\musicglyph #"accidentals.natural"
selects the natural sign from the music font. See The Feta font for a complete listing of the possible glyphs.\markup { \musicglyph #"f" \musicglyph #"rests.2" \musicglyph #"clefs.G_change" }
-
\natural
-
Draw a natural symbol.
\markup { \natural }
-
\note-by-number
log (number) dot-count (number) dir (number) -
Construct a note symbol, with stem. By using fractional values for dir, longer or shorter stems can be obtained.
\markup { \note-by-number #3 #0 #DOWN \hspace #2 \note-by-number #1 #2 #0.8 }
Used properties:
-
style
(’()) -
font-size
(0)
-
-
\note
duration (string) dir (number) -
This produces a note with a stem pointing in dir direction, with the duration for the note head type and augmentation dots. For example,
\note #"4." #-0.75
creates a dotted quarter note, with a shortened down stem.\markup { \override #'(style . cross) { \note #"4.." #UP } \hspace #2 \note #"breve" #0 }
Used properties:
-
style
(’()) -
font-size
(0)
-
-
\score
score (score) -
Inline an image of music.
\markup { \score { \new PianoStaff << \new Staff \relative c' { \key f \major \time 3/4 \mark \markup { Allegro } f2\p( a4) c2( a4) bes2( g'4) f8( e) e4 r } \new Staff \relative c { \clef bass \key f \major \time 3/4 f8( a c a c a f c' es c es c) f,( bes d bes d bes) f( g bes g bes g) } >> \layout { indent = 0.0\cm \context { \Score \override RehearsalMark #'break-align-symbols = #'(time-signature key-signature) \override RehearsalMark #'self-alignment-X = #LEFT } \context { \Staff \override TimeSignature #'break-align-anchor-alignment = #LEFT } } } }
Used properties:
-
baseline-skip
-
-
\semiflat
-
Draw a semiflat symbol.
\markup { \semiflat }
-
\semisharp
-
Draw a semisharp symbol.
\markup { \semisharp }
-
\sesquiflat
-
Draw a 3/2 flat symbol.
\markup { \sesquiflat }
-
\sesquisharp
-
Draw a 3/2 sharp symbol.
\markup { \sesquisharp }
-
\sharp
-
Draw a sharp symbol.
\markup { \sharp }
-
\tied-lyric
str (string) -
Like simple-markup, but use tie characters for ‘~’ tilde symbols.
\markup { \tied-lyric #"Lasciate~i monti" }
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Music ] | [ Plus haut: Text markup commands ] | [ Other > ] |
A.8.5 Instrument Specific Markup
-
\fret-diagram
definition-string (string) -
Make a (guitar) fret diagram. For example, say
\markup \fret-diagram #"s:0.75;6-x;5-x;4-o;3-2;2-3;1-2;"
for fret spacing 3/4 of staff space, D chord diagram
Syntax rules for definition-string:
- - Diagram items are separated by semicolons.
- -
Possible items:
-
s:
number – Set the fret spacing of the diagram (in staff spaces). Default: 1. -
t:
number – Set the line thickness (in staff spaces). Default: 0.05. -
h:
number – Set the height of the diagram in frets. Default: 4. -
w:
number – Set the width of the diagram in strings. Default: 6. -
f:
number – Set fingering label type (0 = none, 1 = in circle on string, 2 = below string). Default: 0. -
d:
number – Set radius of dot, in terms of fret spacing. Default: 0.25. -
p:
number – Set the position of the dot in the fret space. 0.5 is centered; 1 is on lower fret bar, 0 is on upper fret bar. Default: 0.6. -
c:
string1-
string2-
fret – Include a barre mark from string1 to string2 on fret. -
string
-
fret – Place a dot on string at fret. If fret is ‘o’, string is identified as open. If fret is ‘x’, string is identified as muted. -
string
-
fret-
fingering – Place a dot on string at fret, and label with fingering as defined by thef:
code.
-
- - Note: There is no limit to the number of fret indications per string.
Used properties:
-
thickness
(0.5) -
fret-diagram-details
-
size
(1.0) -
align-dir
(-0.4)
-
\fret-diagram-terse
definition-string (string) -
Make a fret diagram markup using terse string-based syntax.
Here is an example
\markup \fret-diagram-terse #"x;x;o;2;3;2;"
for a D chord diagram.
Syntax rules for definition-string:
- Strings are terminated by semicolons; the number of semicolons is the number of strings in the diagram.
- Mute strings are indicated by ‘x’.
- Open strings are indicated by ‘o’.
- A number indicates a fret indication at that fret.
- If there are multiple fret indicators desired on a string, they should be separated by spaces.
-
Fingerings are given by following the fret number with a
-
, followed by the finger indicator, e.g. ‘3-2’ for playing the third fret with the second finger. -
Where a barre indicator is desired, follow the fret (or fingering) symbol
with
-(
to start a barre and-)
to end the barre.
Used properties:
-
thickness
(0.5) -
fret-diagram-details
-
size
(1.0) -
align-dir
(-0.4)
-
\fret-diagram-verbose
marking-list (pair) -
Make a fret diagram containing the symbols indicated in marking-list.
For example,
\markup \fret-diagram-verbose #'((mute 6) (mute 5) (open 4) (place-fret 3 2) (place-fret 2 3) (place-fret 1 2))
produces a standard D chord diagram without fingering indications.
Possible elements in marking-list:
-
(mute string-number)
Place a small ‘x’ at the top of string string-number.
-
(open string-number)
Place a small ‘o’ at the top of string string-number.
-
(barre start-string end-string fret-number)
Place a barre indicator (much like a tie) from string start-string to string end-string at fret fret-number.
-
(capo fret-number)
Place a capo indicator (a large solid bar) across the entire fretboard at fret location fret-number. Also, set fret fret-number to be the lowest fret on the fret diagram.
-
(place-fret string-number fret-number finger-value)
Place a fret playing indication on string string-number at fret fret-number with an optional fingering label finger-value. By default, the fret playing indicator is a solid dot. This can be changed by setting the value of the variable dot-color. If the finger part of the
place-fret
element is present, finger-value will be displayed according to the setting of the variable finger-code. There is no limit to the number of fret indications per string.
Used properties:
-
thickness
(0.5) -
fret-diagram-details
-
size
(1.0) -
align-dir
(-0.4)
-
-
\harp-pedal
definition-string (string) -
Make a harp pedal diagram.
Possible elements in definition-string:
-
^
pedal is up
-
-
pedal is neutral
-
v
pedal is down
-
|
vertical divider line
-
o
the following pedal should be circled (indicating a change)
The function also checks if the string has the typical form of three pedals, then the divider and then the remaining four pedals. If not it prints out a warning. However, in any case, it will also print each symbol in the order as given. This means you can place the divider (even multiple dividers) anywhere you want, but you’ll have to live with the warnings.
The appearance of the diagram can be tweaked inter alia using the size property of the TextScript grob (
\override Voice.TextScript #'size = #0.3
) for the overall, the thickness property (\override Voice.TextScript #'thickness = #3
) for the line thickness of the horizontal line and the divider. The remaining configuration (box sizes, offsets and spaces) is done by the harp-pedal-details list of properties (\override Voice.TextScript #'harp-pedal-details #'box-width = #1
). It contains the following settings:box-offset
(vertical shift of the box center for up/down pedals),box-width
,box-height
,space-before-divider
(the spacing between two boxes before the divider) andspace-after-divider
(box spacing after the divider).\markup \harp-pedal #"^-v|--ov^"
Used properties:
-
thickness
(0.5) -
harp-pedal-details
(’()) -
size
(1.2)
-
-
\woodwind-diagram
instrument (symbol) input-list (list) -
Make a woodwind-instrument diagram. For example, say
\markup \woodwind-diagram #'oboe #'(1.4 0.1 #t ((lh . (d ees)) (cc . (five3qT1q)) (rh . (gis))))
for an oboe with the left-hand d key, left-hand ees key, and right-hand gis key depressed while the five-hole of the central column effectuates a trill between 1/4 and 3/4 closed.
The following instruments are supported:
- - piccolo
- - flute
- - oboe
- - clarinet
- - bass-clarinet
- - saxophone
- - bassoon
- - contrabassoon
To see all of the callable keys for a given instrument, include the function
(print-keys 'instrument)
in your .ly file, where instrument is the instrument whose keys you want to print.Certain keys allow for special configurations. The entire gamut of configurations possible is as follows:
- - 1q (1/4 covered)
- - 1h (1/2 covered)
- - 3q (3/4 covered)
- - R (ring depressed)
- - F (fully covered; the default if no state put)
Additionally, these configurations can be used in trills. So, for example,
three3qTR
effectuates a trill between 3/4 full and ring depressed on the three hole. As another example,threeRT
effectuates a trill between R and open, whereasthreeTR
effectuates a trill between open and shut. To see all of the possibilities for all of the keys of a given instrument, invoke(print-keys-verbose 'instrument)
.Lastly, substituting an empty list for the pressed-key alist will result in a diagram with all of the keys drawn but none filled. ie...
\markup \woodwind-diagram #'oboe #'(1.4 0.1 #t ())
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Instrument Specific Markup ] | [ Plus haut: Text markup commands ] | [ Text markup list commands > ] |
A.8.6 Other
-
\backslashed-digit
num (integer) -
A feta number, with backslash. This is for use in the context of figured bass notation.
\markup { \backslashed-digit #5 \hspace #2 \override #'(thickness . 3) \backslashed-digit #7 }
Used properties:
-
thickness
(1.6) -
font-size
(0)
-
-
\char
num (integer) -
Produce a single character. Characters encoded in hexadecimal format require the prefix
#x
.\markup { \char #65 \char ##x00a9 }
-
\eyeglasses
-
Prints out eyeglasses, indicating strongly to look at the conductor.
\markup { \eyeglasses }
-
\fraction
arg1 (markup) arg2 (markup) -
Make a fraction of two markups.
\markup { π ≈ \fraction 355 113 }
Used properties:
-
font-size
(0)
-
-
\fromproperty
symbol (symbol) -
Read the symbol from property settings, and produce a stencil from the markup contained within. If symbol is not defined, it returns an empty markup.
\header { myTitle = "myTitle" title = \markup { from \italic \fromproperty #'header:myTitle } } \markup { \null }
-
\left-brace
size (number) -
A feta brace in point size size.
\markup { \left-brace #35 \hspace #2 \left-brace #45 }
-
\lookup
glyph-name (string) -
Lookup a glyph by name.
\markup { \override #'(font-encoding . fetaBraces) { \lookup #"brace200" \hspace #2 \rotate #180 \lookup #"brace180" } }
-
\markalphabet
num (integer) -
Make a markup letter for num. The letters start with A to Z and continue with double letters.
\markup { \markalphabet #8 \hspace #2 \markalphabet #26 }
-
\markletter
num (integer) -
Make a markup letter for num. The letters start with A to Z (skipping letter I), and continue with double letters.
\markup { \markletter #8 \hspace #2 \markletter #26 }
-
\null
-
An empty markup with extents of a single point.
\markup { \null }
-
\on-the-fly
procedure (symbol) arg (markup) -
Apply the procedure markup command to arg. procedure should take a single argument.
-
\override
new-prop (pair) arg (markup) -
Add the argument new-prop to the property list. Properties may be any property supported by font-interface, text-interface and instrument-specific-markup-interface.
\markup { \line { \column { default baseline-skip } \hspace #2 \override #'(baseline-skip . 4) { \column { increased baseline-skip } } } }
-
\page-ref
label (symbol) gauge (markup) default (markup) -
Reference to a page number. label is the label set on the referenced page (using the
\label
command), gauge a markup used to estimate the maximum width of the page number, and default the value to display when label is not found. -
\right-brace
size (number) -
A feta brace in point size size, rotated 180 degrees.
\markup { \right-brace #45 \hspace #2 \right-brace #35 }
-
\slashed-digit
num (integer) -
A feta number, with slash. This is for use in the context of figured bass notation.
\markup { \slashed-digit #5 \hspace #2 \override #'(thickness . 3) \slashed-digit #7 }
Used properties:
-
thickness
(1.6) -
font-size
(0)
-
-
\stencil
stil (stencil) -
Use a stencil as markup.
\markup { \stencil #(make-circle-stencil 2 0 #t) }
-
\strut
-
Create a box of the same height as the space in the current font.
-
\transparent
arg (markup) -
Make arg transparent.
\markup { \transparent { invisible text } }
-
\verbatim-file
name (string) -
Read the contents of file name, and include it verbatim.
\markup { \verbatim-file #"simple.ly" }
-
\whiteout
arg (markup) -
Provide a white background for arg.
\markup { \combine \filled-box #'(-1 . 10) #'(-3 . 4) #1 \whiteout whiteout }
-
\with-color
color (color) arg (markup) -
Draw arg in color specified by color.
\markup { \with-color #red red \hspace #2 \with-color #green green \hspace #2 \with-color #blue blue }
-
\with-dimensions
x (pair of numbers) y (pair of numbers) arg (markup) -
Set the dimensions of arg to x and y.
Les commandes suivantes peuvent être utilisées dans un
bloc \markuplines { }
.
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Other ] | [ Plus haut: Tables du manuel de notation ] | [ Liste des signes d'articulation > ] |
A.9 Text markup list commands
The following commands can all be used with \markuplines
.
-
\column-lines
args (markup list) -
Like
\column
, but return a list of lines instead of a single markup.baseline-skip
determines the space between each markup in args.Used properties:
-
baseline-skip
-
-
\justified-lines
args (markup list) -
Like
\justify
, but return a list of lines instead of a single markup. Use\override-lines #'(line-width . X)
to set the line width; X is the number of staff spaces.Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\override-lines
new-prop (pair) args (markup list) -
Like
\override
, for markup lists. -
\table-of-contents
-
\wordwrap-internal
justify (boolean) args (markup list) -
Internal markup list command used to define
\justify
and\wordwrap
.Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f)
-
-
\wordwrap-lines
args (markup list) -
Like
\wordwrap
, but return a list of lines instead of a single markup. Use\override-lines #'(line-width . X)
to set the line width, where X is the number of staff spaces.Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\wordwrap-string-internal
justify (boolean) arg (string) -
Internal markup list command used to define
\justify-string
and\wordwrap-string
.Used properties:
-
text-direction
(1) -
word-space
-
line-width
-
A.10 Liste des signes d’articulation
Voici la liste exhaustive des symboles prédéfinis :
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Liste des signes d'articulation ] | [ Plus haut: Tables du manuel de notation ] | [ Glossaire technique > ] |
A.11 Notes utilisées en percussion
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Notes utilisées en percussion ] | [ Plus haut: Tables du manuel de notation ] | [ > ] |
A.12 Glossaire technique
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Glossaire technique ] | [ Plus haut: Glossaire technique ] | [ > ] |
callback
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
glyph
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
grob
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
interface
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
lexer
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
output-def
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
parser
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
parser variable
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
prob
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
simple-closure
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ > ] |
smob
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Glossaire technique ] | [ Liste des propriétés de contexte > ] |
stencil
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < ] | [ Plus haut: Tables du manuel de notation ] | [ Propriétés de mise en forme > ] |
A.13 Liste des propriétés de contexte
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Liste des propriétés de contexte ] | [ Plus haut: Tables du manuel de notation ] | [ Variables > ] |
A.14 Propriétés de mise en forme
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Propriétés de mise en forme ] | [ Plus haut: Tables du manuel de notation ] | [ Fonctions Scheme > ] |
A.15 Variables
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Aide-mémoire >> ] | ||
[ < Variables ] | [ Plus haut: Tables du manuel de notation ] | [ Aide-mémoire > ] |
A.16 Fonctions Scheme
[ << Tables du manuel de notation ] | [Racine][Table des matières][Index][ ? ] | [ Grammaire de LilyPond >> ] | ||
[ < Fonctions Scheme ] | [ Plus haut: Top ] | [ Grammaire de LilyPond > ] |
B. Aide-mémoire
Syntaxe | Description | Exemple |
| valeurs rythmiques | |
| notes pointées | |
| gamme | |
| altérations | |
| clés | |
| chiffre de mesure | |
| silences | |
| liaison de tenue | |
| armure | |
note | monter d’une octave | |
note | baisser d’une octave | |
| liaisons | |
| liaisons de phrasé | |
| ligatures | |
| ajouter des portées | |
| indications d’articulation | |
| nuances | |
| crescendo | |
| decrescendo | |
| accords | |
| levées | |
| triolets | |
| appogiatures | |
| ajouter des paroles | twinkle |
| imprimer les paroles | |
| diviser un mot en plusieurs syllabes | |
| accords chiffrés | |
| imprimer les chiffrages d’accords | |
| polyphonie | |
| silences invisibles |
[ << Aide-mémoire ] | [Racine][Table des matières][Index][ ? ] | [ GNU Free Documentation License >> ] | ||
[ < Aide-mémoire ] | [ Plus haut: Top ] | [ GNU Free Documentation License > ] |
C. Grammaire de LilyPond
Cette annexe présente la grammaire du langage de LilyPond, telle qu’elle ressort de l’analyseur syntaxique.
Grammar 1 lilypond: /* empty */ 2 | lilypond toplevel_expression 3 | lilypond assignment 4 | lilypond error 5 | lilypond "\invalid" 6 toplevel_expression: lilypond_header 7 | book_block 8 | bookpart_block 9 | score_block 10 | composite_music 11 | full_markup 12 | full_markup_list 13 | output_def 14 embedded_scm: SCM_TOKEN 15 | SCM_IDENTIFIER 16 lilypond_header_body: /* empty */ 17 | lilypond_header_body assignment 18 lilypond_header: "\header" '{' lilypond_header_body '}' 19 assignment_id: STRING 20 | LYRICS_STRING 21 assignment: assignment_id '=' identifier_init 22 | assignment_id property_path '=' identifier_init 23 | embedded_scm 24 identifier_init: score_block 25 | book_block 26 | bookpart_block 27 | output_def 28 | context_def_spec_block 29 | music 30 | post_event 31 | number_expression 32 | string 33 | embedded_scm 34 | full_markup 35 | DIGIT 36 | context_modification 37 context_def_spec_block: "\context" '{' context_def_spec_body '}' 38 context_def_spec_body: /* empty */ 39 | CONTEXT_DEF_IDENTIFIER 40 | context_def_spec_body "\grobdescriptions" embedded_scm 41 | context_def_spec_body context_mod 42 | context_def_spec_body context_modification 43 book_block: "\book" '{' book_body '}' 44 book_body: /* empty */ 45 | BOOK_IDENTIFIER 46 | book_body paper_block 47 | book_body bookpart_block 48 | book_body score_block 49 | book_body composite_music 50 | book_body full_markup 51 | book_body full_markup_list 52 | book_body lilypond_header 53 | book_body error 54 bookpart_block: "\bookpart" '{' bookpart_body '}' 55 bookpart_body: /* empty */ 56 | BOOK_IDENTIFIER 57 | bookpart_body paper_block 58 | bookpart_body score_block 59 | bookpart_body composite_music 60 | bookpart_body full_markup 61 | bookpart_body full_markup_list 62 | bookpart_body lilypond_header 63 | bookpart_body error 64 score_block: "\score" '{' score_body '}' 65 score_body: music 66 | SCORE_IDENTIFIER 67 | score_body lilypond_header 68 | score_body output_def 69 | score_body error 70 paper_block: output_def 71 output_def: output_def_body '}' 72 output_def_head: "\paper" 73 | "\midi" 74 | "\layout" 75 output_def_head_with_mode_switch: output_def_head 76 output_def_body: output_def_head_with_mode_switch '{' 77 | output_def_head_with_mode_switch '{' OUTPUT_DEF_IDENTIFIER 78 | output_def_body assignment 79 | output_def_body context_def_spec_block 80 | output_def_body error 81 tempo_event: "\tempo" steno_duration '=' bare_unsigned 82 | "\tempo" string steno_duration '=' bare_unsigned 83 | "\tempo" full_markup steno_duration '=' bare_unsigned 84 | "\tempo" string 85 | "\tempo" full_markup 86 music_list: /* empty */ 87 | music_list music 88 | music_list embedded_scm 89 | music_list error 90 music: simple_music 91 | composite_music 92 alternative_music: /* empty */ 93 | "\alternative" '{' music_list '}' 94 repeated_music: "\repeat" simple_string unsigned_number music alternative_music 95 sequential_music: "\sequential" '{' music_list '}' 96 | '{' music_list '}' 97 simultaneous_music: "\simultaneous" '{' music_list '}' 98 | "<<" music_list ">>" 99 simple_music: event_chord 100 | MUSIC_IDENTIFIER 101 | music_property_def 102 | context_change 104 context_modification: "\with" '{' context_mod_list '}' 105 | "\with" CONTEXT_MOD_IDENTIFIER 106 | CONTEXT_MOD_IDENTIFIER 107 optional_context_mod: /* empty */ 108 | context_modification 109 context_mod_list: /* empty */ 110 | context_mod_list context_mod 111 | context_mod_list CONTEXT_MOD_IDENTIFIER 112 composite_music: prefix_composite_music 113 | grouped_music_list 114 grouped_music_list: simultaneous_music 115 | sequential_music 116 function_scm_argument: embedded_scm 117 | simple_string 118 function_arglist_music_last: EXPECT_MUSIC function_arglist music 119 function_arglist_nonmusic_last: EXPECT_MARKUP function_arglist full_markup 120 | EXPECT_MARKUP function_arglist simple_string 121 | EXPECT_SCM function_arglist function_scm_argument 122 function_arglist_nonmusic: EXPECT_NO_MORE_ARGS 123 | EXPECT_MARKUP function_arglist_nonmusic full_markup 124 | EXPECT_MARKUP function_arglist_nonmusic simple_string 125 | EXPECT_SCM function_arglist_nonmusic function_scm_argument 126 function_arglist: EXPECT_NO_MORE_ARGS 127 | function_arglist_music_last 128 | function_arglist_nonmusic_last 129 generic_prefix_music_scm: MUSIC_FUNCTION function_arglist 130 optional_id: /* empty */ 131 | '=' simple_string 132 prefix_composite_music: generic_prefix_music_scm 133 | "\context" simple_string optional_id optional_context_mod music 134 | "\new" simple_string optional_id optional_context_mod music 135 | "\times" fraction music 136 | repeated_music 137 | "\transpose" pitch_also_in_chords pitch_also_in_chords music 138 | mode_changing_head grouped_music_list 139 | mode_changing_head_with_context optional_context_mod grouped_music_list 140 | relative_music 141 | re_rhythmed_music 142 mode_changing_head: "\notemode" 143 | "\drummode" 144 | "\figuremode" 145 | "\chordmode" 146 | "\lyricmode" 147 mode_changing_head_with_context: "\drums" 148 | "\figures" 149 | "\chords" 150 | "\lyrics" 151 relative_music: "\relative" absolute_pitch music 152 | "\relative" composite_music 154 new_lyrics: "\addlyrics" grouped_music_list 156 new_lyrics: new_lyrics "\addlyrics" grouped_music_list 157 re_rhythmed_music: grouped_music_list new_lyrics 159 re_rhythmed_music: "\lyricsto" simple_string music 160 context_change: "\change" STRING '=' STRING 161 property_path_revved: embedded_scm 162 | property_path_revved embedded_scm 163 property_path: property_path_revved 164 property_operation: STRING '=' scalar 165 | "\unset" simple_string 166 | "\override" simple_string property_path '=' scalar 167 | "\revert" simple_string embedded_scm 168 context_def_mod: "\consists" 169 | "\remove" 170 | "\accepts" 171 | "\defaultchild" 172 | "\denies" 173 | "\alias" 174 | "\type" 175 | "\description" 176 | "\name" 177 context_mod: property_operation 178 | context_def_mod STRING 179 | context_def_mod embedded_scm 180 context_prop_spec: simple_string 181 | simple_string '.' simple_string 182 simple_music_property_def: "\override" context_prop_spec property_path '=' scalar 183 | "\revert" context_prop_spec embedded_scm 184 | "\set" context_prop_spec '=' scalar 185 | "\unset" context_prop_spec 186 music_property_def: simple_music_property_def 187 | "\once" simple_music_property_def 188 string: STRING 189 | STRING_IDENTIFIER 190 | string '+' string 191 simple_string: STRING 192 | LYRICS_STRING 193 | STRING_IDENTIFIER 194 scalar: string 195 | LYRICS_STRING 196 | bare_number 197 | embedded_scm 198 | full_markup 199 | DIGIT 200 event_chord: simple_chord_elements post_events 201 | CHORD_REPETITION optional_notemode_duration post_events 202 | MULTI_MEASURE_REST optional_notemode_duration post_events 203 | command_element 204 | note_chord_element 205 note_chord_element: chord_body optional_notemode_duration post_events 206 chord_body: "<" chord_body_elements ">" 207 chord_body_elements: /* empty */ 208 | chord_body_elements chord_body_element 209 chord_body_element: pitch exclamations questions octave_check post_events 210 | DRUM_PITCH post_events 211 | music_function_chord_body 212 music_function_identifier_musicless_prefix: MUSIC_FUNCTION 213 music_function_chord_body: music_function_identifier_musicless_prefix EXPECT_MUSIC function_arglist_nonmusic chord_body_element 214 | music_function_identifier_musicless_prefix function_arglist_nonmusic 215 music_function_event: music_function_identifier_musicless_prefix EXPECT_MUSIC function_arglist_nonmusic post_event 216 | music_function_identifier_musicless_prefix function_arglist_nonmusic 217 command_element: command_event 218 | "\skip" duration_length 219 | "\[" 220 | "\]" 221 | "\" 222 | '|' 223 | "\partial" duration_length 224 | "\time" fraction 225 | "\mark" scalar 226 command_event: "\~" 227 | "\mark" "\default" 228 | tempo_event 229 | "\key" "\default" 230 | "\key" NOTENAME_PITCH SCM_IDENTIFIER 231 post_events: /* empty */ 232 | post_events post_event 233 post_event: direction_less_event 234 | '-' music_function_event 235 | "--" 236 | "__" 237 | script_dir direction_reqd_event 238 | script_dir direction_less_event 239 | string_number_event 240 string_number_event: E_UNSIGNED 241 direction_less_char: '[' 242 | ']' 243 | '~' 244 | '(' 245 | ')' 246 | "\!" 247 | "\(" 248 | "\)" 249 | "\>" 250 | "\<" 251 direction_less_event: direction_less_char 252 | EVENT_IDENTIFIER 253 | tremolo_type 254 direction_reqd_event: gen_text_def 255 | script_abbreviation 256 octave_check: /* empty */ 257 | '=' 258 | '=' sub_quotes 259 | '=' sup_quotes 260 sup_quotes: ''' 261 | sup_quotes ''' 262 sub_quotes: ',' 263 | sub_quotes ',' 264 steno_pitch: NOTENAME_PITCH 265 | NOTENAME_PITCH sup_quotes 266 | NOTENAME_PITCH sub_quotes 267 steno_tonic_pitch: TONICNAME_PITCH 268 | TONICNAME_PITCH sup_quotes 269 | TONICNAME_PITCH sub_quotes 270 pitch: steno_pitch 271 pitch_also_in_chords: pitch 272 | steno_tonic_pitch 273 gen_text_def: full_markup 274 | string 275 | DIGIT 276 script_abbreviation: '^' 277 | '+' 278 | '-' 279 | '|' 280 | ">" 281 | '.' 282 | '_' 283 script_dir: '_' 284 | '^' 285 | '-' 286 absolute_pitch: steno_pitch 287 duration_length: multiplied_duration 288 optional_notemode_duration: /* empty */ 289 | multiplied_duration 290 steno_duration: bare_unsigned dots 291 | DURATION_IDENTIFIER dots 292 multiplied_duration: steno_duration 293 | multiplied_duration '*' bare_unsigned 294 | multiplied_duration '*' FRACTION 295 fraction: FRACTION 296 | UNSIGNED '/' UNSIGNED 297 dots: /* empty */ 298 | dots '.' 299 tremolo_type: ':' 300 | ':' bare_unsigned 301 bass_number: DIGIT 302 | UNSIGNED 303 | STRING 304 | full_markup 305 figured_bass_alteration: '-' 306 | '+' 307 | '!' 308 bass_figure: "_" 309 | bass_number 310 | bass_figure ']' 311 | bass_figure figured_bass_alteration 312 | bass_figure figured_bass_modification 313 figured_bass_modification: "\+" 314 | "\!" 315 | '/' 316 | "\" 317 br_bass_figure: bass_figure 318 | '[' bass_figure 319 figure_list: /* empty */ 320 | figure_list br_bass_figure 321 figure_spec: FIGURE_OPEN figure_list FIGURE_CLOSE 322 optional_rest: /* empty */ 323 | "\rest" 324 simple_element: pitch exclamations questions octave_check optional_notemode_duration optional_rest 325 | DRUM_PITCH optional_notemode_duration 326 | RESTNAME optional_notemode_duration 327 | lyric_element optional_notemode_duration 328 simple_chord_elements: simple_element 329 | new_chord 330 | figure_spec optional_notemode_duration 331 lyric_element: lyric_markup 332 | LYRICS_STRING 333 new_chord: steno_tonic_pitch optional_notemode_duration 334 | steno_tonic_pitch optional_notemode_duration chord_separator chord_items 335 chord_items: /* empty */ 336 | chord_items chord_item 337 chord_separator: ":" 338 | "^" 339 | "/" steno_tonic_pitch 340 | "/+" steno_tonic_pitch 341 chord_item: chord_separator 342 | step_numbers 343 | CHORD_MODIFIER 344 step_numbers: step_number 345 | step_numbers '.' step_number 346 step_number: bare_unsigned 347 | bare_unsigned '+' 348 | bare_unsigned "-" 349 number_expression: number_expression '+' number_term 350 | number_expression '-' number_term 351 | number_term 352 number_term: number_factor 353 | number_factor '*' number_factor 354 | number_factor '/' number_factor 355 number_factor: '-' number_factor 356 | bare_number 357 bare_number: UNSIGNED 358 | REAL 359 | NUMBER_IDENTIFIER 360 | REAL NUMBER_IDENTIFIER 361 | UNSIGNED NUMBER_IDENTIFIER 362 bare_unsigned: UNSIGNED 363 | DIGIT 364 unsigned_number: bare_unsigned 365 | NUMBER_IDENTIFIER 366 exclamations: /* empty */ 367 | exclamations '!' 368 questions: /* empty */ 369 | questions '?' 370 lyric_markup: LYRIC_MARKUP_IDENTIFIER 372 lyric_markup: LYRIC_MARKUP markup_top 374 full_markup_list: "\markuplines" markup_list 375 full_markup: MARKUP_IDENTIFIER 377 full_markup: "\markup" markup_top 378 markup_top: markup_list 379 | markup_head_1_list simple_markup 380 | simple_markup 381 markup_list: markup_composed_list 382 | markup_braced_list 383 | markup_command_list 384 markup_composed_list: markup_head_1_list markup_braced_list 385 markup_braced_list: '{' markup_braced_list_body '}' 386 markup_braced_list_body: /* empty */ 387 | markup_braced_list_body markup 388 | markup_braced_list_body markup_list 389 markup_command_list: MARKUP_LIST_FUNCTION markup_command_list_arguments 390 markup_command_basic_arguments: EXPECT_MARKUP_LIST markup_command_list_arguments markup_list 391 | EXPECT_SCM markup_command_list_arguments embedded_scm 392 | EXPECT_NO_MORE_ARGS 393 markup_command_list_arguments: markup_command_basic_arguments 394 | EXPECT_MARKUP markup_command_list_arguments markup 395 markup_head_1_item: MARKUP_FUNCTION EXPECT_MARKUP markup_command_list_arguments 396 markup_head_1_list: markup_head_1_item 397 | markup_head_1_list markup_head_1_item 398 simple_markup: STRING 399 | MARKUP_IDENTIFIER 400 | LYRIC_MARKUP_IDENTIFIER 401 | STRING_IDENTIFIER 403 simple_markup: "\score" '{' score_body '}' 404 | MARKUP_FUNCTION markup_command_basic_arguments 405 markup: markup_head_1_list simple_markup 406 | simple_markup Terminals, with rules where they appear "-" (319) 348 "--" (340) 235 "/" (320) 339 "/+" (316) 340 ":" (318) 337 "<" (321) 206 "<<" (323) 98 ">" (322) 206 280 ">>" (324) 98 "\!" (329) 246 314 "\" (325) 221 316 "\(" (331) 247 "\)" (328) 248 "\+" (334) 313 "\<" (333) 250 "\>" (326) 249 "\[" (330) 219 "\]" (332) 220 "\accepts" (261) 170 "\addlyrics" (259) 154 156 "\alias" (262) 173 "\alternative" (263) 93 "\book" (264) 43 "\bookpart" (265) 54 "\C[haracter]" (327) "\change" (266) 160 "\chordmode" (267) 145 "\chords" (268) 149 "\consists" (269) 168 "\context" (270) 37 133 "\default" (271) 227 229 "\defaultchild" (272) 171 "\denies" (273) 172 "\description" (274) 175 "\drummode" (275) 143 "\drums" (276) 147 "\figuremode" (277) 144 "\figures" (278) 148 "\grobdescriptions" (279) 40 "\header" (280) 18 "\invalid" (281) 5 "\key" (282) 229 230 "\layout" (283) 74 "\lyricmode" (284) 146 "\lyrics" (285) 150 "\lyricsto" (286) 159 "\mark" (287) 225 227 "\markup" (288) 377 "\markuplines" (289) 374 "\midi" (290) 73 "\name" (291) 176 "\new" (315) 134 "\notemode" (292) 142 "\octave" (293) "\once" (294) 187 "\override" (295) 166 182 "\paper" (296) 72 "\partial" (297) 223 "\relative" (298) 151 152 "\remove" (299) 169 "\repeat" (300) 94 "\rest" (301) 323 "\revert" (302) 167 183 "\score" (303) 64 403 "\sequential" (304) 95 "\set" (305) 184 "\simultaneous" (306) 97 "\skip" (307) 218 "\tempo" (308) 81 82 83 84 85 "\time" (314) 224 "\times" (309) 135 "\transpose" (310) 137 "\type" (311) 174 "\unset" (312) 165 185 "\with" (313) 104 105 "\~" (335) 226 "^" (317) 338 "_" (339) 308 "__" (336) 236 $end (0) 0 '!' (33) 307 367 ''' (39) 260 261 '(' (40) 244 ')' (41) 245 '*' (42) 293 294 353 '+' (43) 190 277 306 347 349 ',' (44) 262 263 '-' (45) 234 278 285 305 350 355 '.' (46) 181 281 298 345 '/' (47) 296 315 354 ':' (58) 299 300 '=' (61) 21 22 81 82 83 131 160 164 166 182 184 257 258 259 '?' (63) 369 '[' (91) 241 318 ']' (93) 242 310 '^' (94) 276 284 '_' (95) 282 283 '{' (123) 18 37 43 54 64 76 77 93 95 96 97 104 385 403 '|' (124) 222 279 '}' (125) 18 37 43 54 64 71 93 95 96 97 104 385 403 '~' (126) 243 BOOK_IDENTIFIER (352) 45 56 CHORD_MODIFIER (354) 343 CHORD_REPETITION (355) 201 CHORDMODIFIER_PITCH (353) CHORDMODIFIERS (341) CONTEXT_DEF_IDENTIFIER (356) 39 CONTEXT_MOD_IDENTIFIER (357) 105 106 111 DIGIT (344) 35 199 275 301 363 DRUM_PITCH (358) 210 325 DURATION_IDENTIFIER (359) 291 E_UNSIGNED (345) 240 error (256) 4 53 63 69 80 89 EVENT_IDENTIFIER (360) 252 EXPECT_MARKUP (347) 119 120 123 124 394 395 EXPECT_MARKUP_LIST (350) 390 EXPECT_MUSIC (348) 118 213 215 EXPECT_NO_MORE_ARGS (351) 122 126 392 EXPECT_SCM (349) 121 125 391 FIGURE_CLOSE (337) 321 FIGURE_OPEN (338) 321 FRACTION (361) 294 295 LYRIC_MARKUP (342) 372 LYRIC_MARKUP_IDENTIFIER (363) 370 400 LYRICS_STRING (362) 20 192 195 332 MARKUP_FUNCTION (364) 395 404 MARKUP_IDENTIFIER (366) 375 399 MARKUP_LIST_FUNCTION (365) 389 MULTI_MEASURE_REST (343) 202 MUSIC_FUNCTION (367) 129 212 MUSIC_IDENTIFIER (368) 100 NOTENAME_PITCH (369) 230 264 265 266 NUMBER_IDENTIFIER (370) 359 360 361 365 OUTPUT_DEF_IDENTIFIER (371) 77 PREC_BOT (260) PREC_TOP (258) REAL (372) 358 360 RESTNAME (373) 326 SCM_IDENTIFIER (374) 15 230 SCM_TOKEN (375) 14 SCORE_IDENTIFIER (376) 66 STRING (377) 19 160 164 178 188 191 303 398 STRING_IDENTIFIER (378) 189 193 401 TONICNAME_PITCH (379) 267 268 269 UNARY_MINUS (380) UNSIGNED (346) 296 302 357 361 362 Nonterminals, with rules where they appear absolute_pitch (237) on left: 286, on right: 151 alternative_music (172) on left: 92 93, on right: 94 assignment (154) on left: 21 22 23, on right: 3 17 78 assignment_id (153) on left: 19 20, on right: 21 22 bare_number (265) on left: 357 358 359 360 361, on right: 196 356 bass_number (245) on left: 301 302 303 304, on right: 309 book_block (158) on left: 43, on right: 7 25 bookpart_block (160) on left: 54, on right: 8 26 47 br_bass_figure (249) on left: 317 318, on right: 320 chord_body (213) on left: 206, on right: 205 chord_body_element (215) on left: 209 210 211, on right: 208 213 chord_body_elements (214) on left: 207 208, on right: 206 208 chord_item (259) on left: 341 342 343, on right: 336 chord_items (257) on left: 335 336, on right: 334 336 chord_separator (258) on left: 337 338 339 340, on right: 334 341 command_event (220) on left: 226 227 228 229 230, on right: 217 composite_music (181) on left: 112 113, on right: 10 49 59 91 152 context_change (199) on left: 160, on right: 102 context_def_spec_block (156) on left: 37, on right: 28 79 context_mod (204) on left: 177 178 179, on right: 41 110 context_mod_list (180) on left: 109 110 111, on right: 104 110 111 context_modification (177) on left: 104 105 106, on right: 36 42 108 context_prop_spec (205) on left: 180 181, on right: 182 183 184 185 direction_less_event (225) on left: 251 252 253, on right: 233 238 direction_reqd_event (226) on left: 254 255, on right: 237 dots (243) on left: 297 298, on right: 290 291 298 duration_length (238) on left: 287, on right: 218 223 event_chord (211) on left: 200 201 202 203 204, on right: 99 exclamations (268) on left: 366 367, on right: 209 324 367 figure_list (250) on left: 319 320, on right: 320 321 figure_spec (251) on left: 321, on right: 330 figured_bass_alteration (246) on left: 305 306 307, on right: 311 figured_bass_modification (248) on left: 313 314 315 316, on right: 312 fraction (242) on left: 295 296, on right: 135 224 full_markup_list (272) on left: 374, on right: 12 51 61 function_arglist_music_last (184) on left: 118, on right: 127 function_arglist_nonmusic_last (185) on left: 119 120 121, on right: 128 function_scm_argument (183) on left: 116 117, on right: 121 125 gen_text_def (234) on left: 273 274 275, on right: 254 generic_prefix_music_scm (188) on left: 129, on right: 132 lilypond (148) on left: 1 2 3 4 5, on right: 0 2 3 4 5 lilypond_header (152) on left: 18, on right: 6 52 62 67 lilypond_header_body (151) on left: 16 17, on right: 17 18 lyric_element (255) on left: 331 332, on right: 327 lyric_markup (270) on left: 370 372, on right: 331 markup (288) on left: 405 406, on right: 387 394 markup_braced_list (279) on left: 385, on right: 382 384 markup_braced_list_body (280) on left: 386 387 388, on right: 385 387 388 markup_command_list (281) on left: 389, on right: 383 markup_composed_list (278) on left: 384, on right: 381 markup_head_1_item (284) on left: 395, on right: 396 397 markup_head_1_list (285) on left: 396 397, on right: 379 384 397 405 markup_list (277) on left: 381 382 383, on right: 374 378 388 390 markup_top (276) on left: 378 379 380, on right: 372 377 mode_changing_head (191) on left: 142 143 144 145 146, on right: 138 multiplied_duration (241) on left: 292 293 294, on right: 287 289 293 294 music_function_chord_body (217) on left: 213 214, on right: 211 music_function_event (218) on left: 215 216, on right: 234 music_list (170) on left: 86 87 88 89, on right: 87 88 89 93 95 96 97 98 music_property_def (207) on left: 186 187, on right: 101 new_chord (256) on left: 333 334, on right: 329 new_lyrics (194) on left: 154 156, on right: 156 157 note_chord_element (212) on left: 205, on right: 204 number_expression (262) on left: 349 350 351, on right: 31 349 350 number_factor (264) on left: 355 356, on right: 352 353 354 355 number_term (263) on left: 352 353 354, on right: 349 350 351 octave_check (227) on left: 256 257 258 259, on right: 209 324 optional_context_mod (179) on left: 107 108, on right: 133 134 139 optional_id (189) on left: 130 131, on right: 133 134 optional_rest (252) on left: 322 323, on right: 324 output_def (165) on left: 71, on right: 13 27 68 70 output_def_body (168) on left: 76 77 78 79 80, on right: 71 78 79 80 output_def_head (166) on left: 72 73 74, on right: 75 output_def_head_with_mode_switch (167) on left: 75, on right: 76 77 paper_block (164) on left: 70, on right: 46 57 pitch (232) on left: 270, on right: 209 271 324 pitch_also_in_chords (233) on left: 271 272, on right: 137 post_events (221) on left: 231 232, on right: 200 201 202 205 209 210 232 property_operation (202) on left: 164 165 166 167, on right: 177 property_path (201) on left: 163, on right: 22 166 182 property_path_revved (200) on left: 161 162, on right: 162 163 questions (269) on left: 368 369, on right: 209 324 369 re_rhythmed_music (197) on left: 157 159, on right: 141 relative_music (193) on left: 151 152, on right: 140 repeated_music (173) on left: 94, on right: 136 score_block (162) on left: 64, on right: 9 24 48 58 score_body (163) on left: 65 66 67 68 69, on right: 64 67 68 69 403 script_dir (236) on left: 283 284 285, on right: 237 238 sequential_music (174) on left: 95 96, on right: 115 simple_chord_elements (254) on left: 328 329 330, on right: 200 simple_element (253) on left: 324 325 326 327, on right: 328 simple_music (176) on left: 99 100 101 102, on right: 90 simultaneous_music (175) on left: 97 98, on right: 114 steno_duration (240) on left: 290 291, on right: 81 82 83 292 steno_pitch (230) on left: 264 265 266, on right: 270 286 step_number (261) on left: 346 347 348, on right: 344 345 step_numbers (260) on left: 344 345, on right: 342 345 string (208) on left: 188 189 190, on right: 32 82 84 190 194 274 string_number_event (223) on left: 240, on right: 239 sub_quotes (229) on left: 262 263, on right: 258 263 266 269 sup_quotes (228) on left: 260 261, on right: 259 261 265 268 tempo_event (169) on left: 81 82 83 84 85, on right: 228 toplevel_expression (149) on left: 6 7 8 9 10 11 12 13, on right: 2 tremolo_type (244) on left: 299 300, on right: 253 unsigned_number (267) on left: 364 365, on right: 94
[ << Grammaire de LilyPond ] | [Racine][Table des matières][Index][ ? ] | [ Index des commandes LilyPond >> ] | ||
[ < Grammaire de LilyPond ] | [ Plus haut: Top ] | [ Index des commandes LilyPond > ] |
D. GNU Free Documentation License
Version 1.3, 3 November 2008
Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. http://fsf.org/ Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. |
-
PREAMBLE
The purpose of this License is to make a manual, textbook, or other functional and useful document free in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of “copyleft”, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
-
APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The “Document”, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as “you”. You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.
A “Modified Version” of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A “Secondary Section” is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document’s overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The “Invariant Sections” are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.
The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.
A “Transparent” copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not “Transparent” is called “Opaque”.
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.
The “Title Page” means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, “Title Page” means the text near the most prominent appearance of the work’s title, preceding the beginning of the body of the text.
The “publisher” means any person or entity that distributes copies of the Document to the public.
A section “Entitled XYZ” means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as “Acknowledgements”, “Dedications”, “Endorsements”, or “History”.) To “Preserve the Title” of such a section when you modify the Document means that it remains a section “Entitled XYZ” according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
-
VERBATIM COPYING
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
-
COPYING IN QUANTITY
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document’s license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
-
MODIFICATIONS
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
- Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
- List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
- State on the Title page the name of the publisher of the Modified Version, as the publisher.
- Preserve all the copyright notices of the Document.
- Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
- Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
- Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document’s license notice.
- Include an unaltered copy of this License.
- Preserve the section Entitled “History”, Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled “History” in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
- Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the “History” section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
- For any section Entitled “Acknowledgements” or “Dedications”, Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
- Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
- Delete any section Entitled “Endorsements”. Such a section may not be included in the Modified Version.
- Do not retitle any existing section to be Entitled “Endorsements” or to conflict in title with any Invariant Section.
- Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version’s license notice. These titles must be distinct from any other section titles.
You may add a section Entitled “Endorsements”, provided it contains nothing but endorsements of your Modified Version by various parties—for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
-
COMBINING DOCUMENTS
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled “History” in the various original documents, forming one section Entitled “History”; likewise combine any sections Entitled “Acknowledgements”, and any sections Entitled “Dedications”. You must delete all sections Entitled “Endorsements.”
-
COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
-
AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an “aggregate” if the copyright resulting from the compilation is not used to limit the legal rights of the compilation’s users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document’s Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.
-
TRANSLATION
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.
If a section in the Document is Entitled “Acknowledgements”, “Dedications”, or “History”, the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.
-
TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License.
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it.
-
FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License “or any later version” applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this License can be used, that proxy’s public statement of acceptance of a version permanently authorizes you to choose that version for the Document.
-
RELICENSING
“Massive Multiauthor Collaboration Site” (or “MMC Site”) means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A “Massive Multiauthor Collaboration” (or “MMC”) contained in the site means any set of copyrightable works thus published on the MMC site.
“CC-BY-SA” means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization.
“Incorporate” means to publish or republish a Document, in whole or in part, as part of another Document.
An MMC is “eligible for relicensing” if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008.
The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing.
ADDENDUM: How to use this License for your documents
To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
Copyright (C) year your name. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''. |
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the “with…Texts.” line with this:
with the Invariant Sections being list their titles, with the Front-Cover Texts being list, and with the Back-Cover Texts being list. |
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
[ << GNU Free Documentation License ] | [Racine][Table des matières][Index][ ? ] | [ Index de LilyPond >> ] | ||
[ < GNU Free Documentation License ] | [ Plus haut: Top ] | [ Index de LilyPond > ] |
E. Index des commandes LilyPond
Cet index recense toutes les commandes et mots réservés de LilyPond, sous forme de lien vers les endroits du manuel où ils sont abordés. Chaque lien est constitué de deux parties : la première pointe directement là où la commande ou le terme apparaît, la seconde au début de la section où la commande ou le terme est abordé.
Aller à: | !
'
,
-
.
/
:
<
=
>
?
[
\
]
_
|
~
A B C D E F G H I J K L M N O P Q R S T U V W X |
---|
Aller à: | !
'
,
-
.
/
:
<
=
>
?
[
\
]
_
|
~
A B C D E F G H I J K L M N O P Q R S T U V W X |
---|
[ << Index des commandes LilyPond ] | [Racine][Table des matières][Index][ ? ] | [ >> ] | ||
[ < Index des commandes LilyPond ] | [ Plus haut: Top ] | [ > ] |
F. Index de LilyPond
En plus des commandes et mots réservés de LilyPond, cet index recense les termes musicaux qui s’y rapportent. Tout comme dans l’index des commandes, chaque lien est constitué de deux parties : la première pointe directement là où la commande ou le terme apparaît, la seconde au début de la section où la commande ou le terme est abordé.
Aller à: | !
'
,
-
.
/
1
8
:
<
=
>
?
[
\
]
_
|
~
É
A B C D E F G H I J K L M N O P Q R S T U V W X |
---|
Aller à: | !
'
,
-
.
/
1
8
:
<
=
>
?
[
\
]
_
|
~
É
A B C D E F G H I J K L M N O P Q R S T U V W X |
---|
[Racine][Table des matières][Index][ ? ] |
Notes de bas de page
[1] Une
liaison adaptée aux paroles correspond au caractère Unicode
U+203F
, et n’apparaîtra dans la partition que si le système
dispose d’une police installée qui contient ce symbole (par exemple
DejaVuLGC).
[2] Le Tutoriel Scheme fournit quelques notions de base pour saisir des nombres, des listes, des chaînes de caractères ou des symboles, en Scheme.
[Racine][Table des matières][Index][ ? ] |
Table des matières
- 1. Notation musicale générale
- 1.1 Hauteurs
- 1.2 Rythme
- 1.3 Signes d’interprétation
- 1.4 Répétitions et reprises
- 1.5 Notes simultanées
- 1.6 Notation sur la portée
- 1.7 Notation éditoriale
- 1.8 Texte
- 2. Notation spécialisée
- 2.1 Musique vocale
- 2.2 Instruments utilisant des portées multiples
- 2.3 Cordes non frettées
- 2.4 Instruments à cordes frettées
- 2.5 Percussions
- 2.6 Instruments à vent
- 2.7 Notation des accords
- 2.8 Notations anciennes
- 2.9 Musiques du monde
- 3. Généralités en matière d’entrée et sortie
- 4. Gestion de l’espace
- 5. Modification des réglages prédéfinis
- 5.1 Contextes d’interprétation
- 5.2 En quoi consiste la référence des propriétés internes
- 5.3 Modification de propriétés
- 5.4 Propriétés et contextes utiles
- 5.5 Retouches avancées
- 6. Interfaces pour les programmeurs
- 6.1 Fonctions musicales
- 6.2 Interfaces de programmation
- 6.3 Construction de fonctions complexes
- 6.4 Interface de programmation des marqueurs de texte
- 6.5 Contextes pour programmeurs
- 6.6 Utilisation de procédures Scheme en tant que propriétés
- 6.7 Utilisation de code Scheme au lieu de
\tweak
- 6.8 Retouches complexes
- A. Tables du manuel de notation
- A.1 Table des noms d’accord
- A.2 Modificateurs d’accord usuels
- A.3 Tablatures prédéfinies
- A.4 Instruments MIDI
- A.5 Liste des couleurs
- A.6 La fonte Feta
- A.7 Styles de tête de note
- A.8 Text markup commands
- A.9 Text markup list commands
- A.10 Liste des signes d’articulation
- A.11 Notes utilisées en percussion
- A.12 Glossaire technique
- A.13 Liste des propriétés de contexte
- A.14 Propriétés de mise en forme
- A.15 Variables
- A.16 Fonctions Scheme
- B. Aide-mémoire
- C. Grammaire de LilyPond
- D. GNU Free Documentation License
- E. Index des commandes LilyPond
- F. Index de LilyPond
[Racine][Table des matières][Index][ ? ] |
A propos de ce document
Ce document a été généré le le 6 juillet 2010 par Graham Percival en utilisant texi2html 1.82.
Les boutons de navigation ont la signification suivante :
Bouton | Nom | Aller à | Depuis 1.2.3 aller à |
---|---|---|---|
[] | |||
[ << ] | RetourRapide | Début de ce chapitre ou chapitre précédent | 1 |
[] | |||
[Racine] | Racine | Couverture (top) du document | |
[Table des matières] | Table des matières | Table des matières | |
[Index] | Index | Index | |
[ ? ] | A propos | A propos (page d’aide) | |
[] | |||
[ >> ] | AvanceRapide | Chapitre suivant | 2 |
[] | |||
[] | |||
[ < ] | Retour | Section précédente dans l’ordre de lecture | 1.2.2 |
[] | |||
[Plus haut] | Monter | Section supérieure | 1.2 |
[] | |||
[ > ] | Avant | Section suivante dans l’ordre de lecture | 1.2.4 |
Dans cet exemple on est à Sous sous section un-deux-trois dans un document dont la structure est :
- 1. Section un
- 1.1 Sous section un-un
- ...
- 1.2 Sous section un-deux
- 1.2.1 Sous sous section un-deux-un
- 1.2.2 Sous sous section un-deux-deux
- 1.2.3 Sous sous section un-deux-trois <== Position
- 1.2.4 Sous sous section un-deux-quatre
- 1.3 Sous section un-trois
- ...
- 1.4 Sous section un-quatre
- 1.1 Sous section un-un