@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 95e6825ee09ca7f8eea87580301c8819ff1d571b
+ Translation of GIT committish: 5a1312de54bc66dfe10a08670db976354e9ae5c3
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@funindex eses
@funindex isis
-Glossaire musical : @rglos{sharp}, @rglos{flat}, @rglos{double sharp},
+Glossaire musicologique :
+@rglos{sharp}, @rglos{flat}, @rglos{double sharp},
@rglos{double flat}, @rglos{accidental}.
Dans la notation par défaut, on obtient un @notation{dièse} en
@funindex \minor
@funindex minor
-Glossaire musical : @rglos{key signature}, @rglos{major},
+Glossaire musicologique :
+@rglos{key signature}, @rglos{major},
@rglos{minor}.
L'armure est déterminée par la commande @code{\key}, suivie d'une
@subheading Attention aux armures et aux hauteurs
-Glossaire musical : @rglos{accidental}, @rglos{key signature},
+Glossaire musicologique :
+@rglos{accidental}, @rglos{key signature},
@rglos{pitch}, @rglos{flat}, @rglos{natural}, @rglos{sharp},
@rglos{transposition}.
@ruser{Altérations}, @ruser{Altérations accidentelles automatiques},
@ruser{Armure}.
-Glossaire musical : @rglos{Pitch names}.
+Glossaire musicologique :
+@rglos{Pitch names}.
@node Liaisons
@subheading Liaisons de prolongation
-Glossaire musical : @rglos{tie}.
+Glossaire musicologique :
+@rglos{tie}.
Pour créer une liaison de prolongation@footnote{parfois aussi appelée
liaison de tenue}, on ajoute un tilde @code{~} à la première note
@c slur = "il zon" (articulation). jcm
@c phrasing slur = "ils ont des chapeaux ronds" (phrase). jcm
-Glossaire musical : @rglos{slur}, @rglos{phrasing}.
+Glossaire musicologique :
+@rglos{slur}, @rglos{phrasing}.
Une liaison d'articulation ou @emph{legato} peut englober
plusieurs notes. Les notes de départ et d'arrivée sont suivies
@cindex liaisons d'articulation et de prolongation, différences
@subheading Attention aux types de liaison
-Glossaire musical : @rglos{articulation}, @rglos{slur}, @rglos{tie}.
+Glossaire musicologique :
+@rglos{articulation}, @rglos{slur}, @rglos{tie}.
Une liaison d'articulation ou de phrasé ressemble à une liaison de
prolongation, mais n'a pas la même signification. Alors qu'une
@cindex accents
@cindex staccato
-Glossaire musical : @rglos{articulation}.
+Glossaire musicologique :
+@rglos{articulation}.
Des @notation{articulations} peuvent être ajoutées à une note, au moyen
d'un tiret @code{-} suivi d'un caractère :
@funindex ^
@funindex _
-Glossaire musical : @rglos{fingering}.
+Glossaire musicologique :
+@rglos{fingering}.
De même, des indications de doigté peuvent être ajoutées à une note en
utilisant un tiret (@samp{-}) et le chiffre à écrire :
@funindex \!
@funindex !
-Glossaire musical : @rglos{dynamics}, @rglos{crescendo},
+Glossaire musicologique :
+@rglos{dynamics}, @rglos{crescendo},
@rglos{decrescendo}.
On obtient un signe de @notation{nuance} en ajoutant à la note les
@funindex \autoBeamOn
@funindex autoBeamOn
-Glossaire musical : @rglos{beam}.
+Glossaire musicologique :
+@rglos{beam}.
Toutes les barres de ligature sont dessinées automatiquement :
@funindex \partial
@funindex partial
-Glossaire musical : @rglos{anacrusis}.
+Glossaire musicologique : @rglos{anacrusis}.
On crée une levée (ou anacrouse) avec la commande @code{\partial},
suivie d'une durée : @code{\partial 4} produit une levée d'une noire
@funindex \times
@funindex times
-Glossaire musical : @rglos{note value}, @rglos{triplet}.
+Glossaire musicologique : @rglos{note value}, @rglos{triplet}.
Les @notation{nolets} sont créés avec la commande @code{\times}, qui
prend deux arguments : une fraction et une expression musicale. La
@funindex \appoggiatura
@funindex acciaccatura
-Glossaire musical : @rglos{grace notes}, @rglos{acciaccatura},
+Glossaire musicologique : @rglos{grace notes}, @rglos{acciaccatura},
@rglos{appoggiatura}.
Des @notation{notes d'ornement} s'obtiennent en appliquant la commande
@funindex >>
@funindex << ... >>
-Glossaire musical : @rglos{polyphony}.
+Glossaire musicologique : @rglos{polyphony}.
Cette technique est utile pour de la musique @notation{polyphonique}.
Pour entrer une musique avec plusieurs voix ou plusieurs portées, nous
@funindex GrandStaff
@funindex ChoirStaff
-Glossaire musical : @rglos{brace}.
+Glossaire musicologique : @rglos{brace}.
La musique pour piano s'écrit sur deux portées reliées par une
@notation{accolade}. La gravure de ce type de portée est semblable à
@funindex >
@funindex < ... >
-Glossaire musical : @rglos{chord}.
+Glossaire musicologique : @rglos{chord}.
Nous avons vu précédemment comment combiner des notes simultanément,
en les encadrant par des chevrons doubles @code{<<} et @code{>>}. Pour
@funindex \addlyrics
@funindex addlyrics
-Glossaire musical : @rglos{lyrics}.
+Glossaire musicologique : @rglos{lyrics}.
Prenons une mélodie toute simple, la comptine @emph{Girls and boys
come out to play}.
@cindex alignement des paroles
@cindex paroles, mot de plusieurs syllabes
-Glossaire musical : @rglos{melisma}, @rglos{extender line}.
+Glossaire musicologique : @rglos{melisma}, @rglos{extender line}.
La deuxième ligne de la comptine précédente est @emph{The moon doth
shine as bright as day}. Ajoutons-la au code.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: c0ea3a158b80f5f6201e3ebebb82730827431000
+ Translation of GIT committish: 5a1312de54bc66dfe10a08670db976354e9ae5c3
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
exemple est un préambule à notre propos.
@funindex \book
+@funindex book
@funindex \score
+@funindex score
@cindex book, livre, ouvrage
@cindex livre
@cindex score, partition
LilyPond, ne font pas apparaître les commandes @code{\new Staff} ou
@code{\new Voice}, qui sont créées implicitement. Ce qui
n'est pas primordial pour des exemples simples le devient dès que la
-situation devient un peu plus complexe. Le fait de ne pas déclarer
+situation se complexifie un tant soit peu. Le fait de ne pas déclarer
explicitement un contexte peut alors amener à des résultats quelque peu
surprenants, comme la création d'une portée supplémentaire et
indésirable. La manière de créer explicitement des contextes est
@end example
@funindex \header
+@funindex header
@funindex \layout
+@funindex layout
@funindex \midi
@funindex midi
@cindex header
pour effet, lorsqu'elles interviennent, de produire une sortie
imprimable et un fichier MIDI. Nous nous y intéressons plus
particulièrement dans le manuel de notation, aux chapitres
-@ruser{Mise en forme de la partition} et @ruser{Création de fichiers MIDI}.
+@ruser{Mise en forme de la partition} et
+@ruser{Création de fichiers MIDI}.
@cindex partitions multiples
@cindex book, bloc implicite
Tout bloc @code{\score} inclus dans un bloc @code{\book} constitue un
fragment de musique.
+@cindex layout, effets selon l'emplacement
+
Tout bloc @code{\layout} affecte le bloc @code{\score} ou @code{\book}
au sein duquel il intervient : si c'est à l'intérieur d'un bloc
@code{\score}, seul celui-ci en sera affecté. Dans le cas où le bloc
@funindex score
@cindex partition
@cindex bloc score, contenu
-@cindex Expression musicale composite
+@cindex expression musicale composite
Dans la section précédente,
@ref{Introduction à la structure de fichier LilyPond}, nous
@seealso
-Manuel de notation : @ruser{Structure d'une partition}.
+Manuel de notation :
+@ruser{Structure d'une partition}.
@node Expressions musicales imbriquées
que de besoin.
Les contextes @code{Voice} portent les noms @code{"1"}, @code{"2"}, etc.
-Pour chacun de ces contextes, la direction et l'orientation des
+Pour chacun de ces contextes, le positionnement et l'orientation des
liaisons, hampes, nuances, etc. est définie automatiquement.
@lilypond[quote,verbatim,fragment]
Voir @ref{Visibilité et couleur des objets} et
@ref{Utilisation de variables dans les retouches}.
+@cindex polyphonie et mode relatif
+@cindex mode relatif et polyphonie
+
La polyphonie ne modifie en rien la relation entre les notes au sein
-d'un bloc @w{@code{\relative @{ @}}}. Chaque note est calculée par rapport
-à celle qui la précède, ou bien par rapport à la première note de
-l'accord qui précède. Ainsi, dans
+d'un bloc @w{@code{\relative @{ @}}}. Chaque note est calculée par
+rapport à celle qui la précède, ou bien par rapport à la première note
+de l'accord qui précède. Ainsi, dans
@example
\relative c' @{ noteA << < noteB noteC > \\ noteD >> noteE @}
Essayons à présent de coder cette musique en partant de zéro. Comme
nous le verrons, certaines difficultés vont se présenter. Partons de ce
-que nous avons appris : utilisons la construction @code{<< \\ >>} pour
+que nous avons appris : utilisons la construction @code{<< \\ >>} pour
saisir la première mesure dans trois voix :
@lilypond[quote,verbatim,fragment,ragged-right]
@cindex hampes en bas
@cindex stem up
@cindex hampes en haut
+@cindex voix et direction des hampes
+@cindex direction des hampes et voix
La direction des hampes est attribuée automatiquement : les voix
impaires portent des hampes vers le haut, les voix paires des hampes
vers le bas. Les hampes des voix 1 et 2 sont orientées comme il faut
mais celles de la voix 3 devraient, dans le cas qui nous occupe, aller
vers le bas. Nous pouvons corriger cela en sautant la voix 3 et en
-plaçant la musique dans la voix 4 :
+plaçant la musique dans la voix 4 grâce à un @code{\\} supplémentaire :
@lilypond[quote,verbatim,fragment,ragged-right]
\new Staff \relative c'' {
@cindex Lyrics, création d'un contexte
@cindex paroles, affectation à une voix
-Nous avons déjà abordé la commande @code{\addlyrics}, qui permet de
+Nous avons déjà abordé la commande @code{\addlyrics@{@}}, qui permet de
gérer des partitions simples. Cette technique est cependant
relativement limitée. Pour de la musique un peu plus compliquée, il
vous faudra contenir les paroles dans un contexte @code{Lyrics}, créé
@funindex new
@cindex nouveaux contextes
-@cindex Contextes, création de
+@cindex contextes, création de
Il en va des contextes comme de toute hiérarchie : il faut un sommet --
le contexte @code{Score} en l'occurence. La commande @code{\score} est
chargée de le créer, mais pour des partitions simples, il le sera
-automatiquement.
+automatiquement. Le bloc @code{score} contient donc une expression
+musicale unique ainsi que la définition des supports à produire --
+@code{\layout} pour du visuel ou @code{\midi} pour de l'acoustique.
Lorsqu'une partition ne comporte qu'une voix et une seule portée, vous
pouvez laisser LilyPond créer automatiquement les contextes @code{Voice}
-et @code{Staff} ; mais leur présence explicite devient indispenssable dès
+et @code{Staff} ; mais leur présence explicite devient indispensable dès
que la situation se complique.
Le moyen le plus simple est d'utiliser la commande @code{\new}. Elle
doit intervenir avant une expression musicale, ainsi :
interprète l'@var{expression-musicale} contenue dans ledit
contexte.
-Notez bien qu'il n'existe pas de commande @code{\new Score}, puisque le
-contexte premier que constitue @code{Score} est créé par @code{\score}.
+Notez bien que la commande @code{\new Score} n'est pas obligatoire,
+puisque le contexte premier que constitue @code{Score} est créé
+automatiquement par l'interprétation de l'@var{expression-musicale}
+contenue dans le bloc @code{\score}. Le seul cas où il faut créer
+explicitement un contexte @code{Score} à l'aide de la commande
+@code{\new score} est lorsqu'il comprendra un bloc @code{\with} aux fins
+de stipuler les propriétés de certains contextes qui s'appliqueront à
+l'ensemble de la partition. Vous trouverez plus dinformation sur
+l'utilisation des blocs @code{\with} au chapitre
+@ref{Modification des propriétés d'un contexte}.
Nous avons déjà vu au cours des chapitres précédents de nombreux
exemples où des contextes @code{Staff} ou @code{Voice} étaient créés au
besoin. Dans un but didactique, voici maintenant une application
-complète et largement commentée :
+complète et abondamment commentée :
@lilypond[quote,verbatim,ragged-right]
\score { % start of single compound music expression
portée MD ne contient qu'une seule expression musicale -- il n'y a
qu'une voix -- bornée par des accolades simples.
-@cindex contexte, noms de
+@cindex contexte, nommage
@cindex nommage des contextes
La commande @code{\new} peut aussi permettre de nommer le contexte créé,
@cindex graveurs
Tout point qui compose une partition générée par LilyPond est
-produit par un graveur (@emph{Engraver} en anglais). Ainsi, il y en a
+produit par un graveur (@emph{engraver} en anglais). Ainsi, il y en a
un qui imprime les portées, un autre les têtes de note, un autre les
hampes, un autre encore pour les ligatures, etc. LilyPond dispose de
plus de 120 graveurs ! La plupart des partitions ne requièrent de
@seealso
-Références internes : @rinternals{Engravers and Performers}.
+Référence des propriétés internes :
+@rinternals{Engravers and Performers}.
@node Modification des propriétés d'un contexte
>>
@end lilypond
+Dans le cas où ces ajustements de propriété doivent affecter
+toutes les portées de la partition, nous utiliserons alors
+l'instruction @code{\new Score}, comme ici :
+
+@lilypond[quote,verbatim,ragged-right]
+\score {
+ \new Score \with { extraNatural = ##f } <<
+ \new Staff {
+ \relative c'' {
+ gis ges aes ais
+ }
+ }
+ \new Staff {
+ \relative c'' {
+ gis ges aes ais
+ }
+ }
+ >>
+}
+@end lilypond
+
Les propriétés réglées de cette manière peuvent néanmoins être modifiées
de façon dynamique grâce à @code{\set} ; un @code{\unset} les ramènera à
leur valeur par défaut.
@c uncomment when backslash-node-name issue is resolved -pm
@c @ruser{La commande de fixation (set)}.
-Références internes :
+Référence des propriétés internes :
@rinternals{Contexts},
@rinternals{Tunable context properties}.
@code{\consists @var{Nom_du_graveur}}
+@noindent
et se place dans un bloc @code{\with}. Certaines partitions vocales
font apparaître un @rglos{ambitus} au début de la portée, afin
d'indiquer ses notes extrêmes. L'ambitus est généré par
* Soprano et violoncelle::
* Partition pour chœur à quatre voix mixtes::
* Écriture d'une partition à partir de zéro::
+* Économie de saisie grâce aux identificateurs et fonctions::
+* Conducteurs et parties::
@end menu
@node Soprano et violoncelle
@}
@end example
-On n'a pas besoin de deux commandes @code{\version}. Ce dont on a besoin,
-c'est de la section @code{melodie}. De même, on n'a pas besoin de deux sections
-@code{\score} -- si nous les gardions toutes les deux, on obtiendrait deux
-parties séparées ; mais nous voulons un vrai duo, avec les deux
-parties ensemble. Dans la section @code{\score}, on n'a pas besoin
-non plus de deux @code{\layout} ni de deux @code{\midi}.
+On n'a pas besoin de deux commandes @code{\version}. Ce dont on a
+besoin, c'est de la section @code{melodie}. De même, on n'a pas besoin
+de deux sections @code{\score} -- si nous les gardions toutes les deux,
+on obtiendrait deux parties séparées ; mais nous voulons un vrai duo,
+avec les deux parties ensemble. Dans la section @code{\score}, on n'a
+pas besoin non plus de deux @code{\layout} ni de deux @code{\midi}.
Si on se contente de couper et coller les sections @code{melodie}, on se
retrouvera avec deux sections de ce nom ; il nous faut donc les renommer.
et l'endroit où cette dénomination est utilisée, dans la section
@code{\score}.
-Et puis, toujours tant qu'on y est, mettons le violoncelle en clé de fa, comme
-le veut l'usage, et donnons-lui d'autres notes.
+Et puis, toujours tant qu'on y est, mettons le violoncelle en clé de fa,
+comme le veut l'usage, et donnons-lui d'autres notes.
@example
\version @w{"@version{}"}
@end lilypond
+@node Économie de saisie grâce aux identificateurs et fonctions
+@subsection Économie de saisie grâce aux identificateurs et fonctions
+@translationof Saving typing with variables and functions
+
+@cindex variables
+@cindex identificateurs
+
+Jusqu'à maintenant, vous avez vu ce type de code :
+
+@lilypond[quote,verbatim,ragged-right]
+hornNotes = \relative c'' { c4 b dis c }
+\score {
+ {
+ \hornNotes
+ }
+}
+@end lilypond
+
+Vous comprendrez combien cela peut être utile pour écrire de la
+musique minimaliste :
+
+@lilypond[quote,verbatim,ragged-right]
+fragmentA = \relative c'' { a4 a8. b16 }
+fragmentB = \relative c'' { a8. gis16 ees4 }
+violin = \new Staff { \fragmentA \fragmentA \fragmentB \fragmentA }
+\score {
+ {
+ \violin
+ }
+}
+@end lilypond
+
+Néanmoins vous pouvez aussi utiliser ces identificateurs
+-- aussi connus sous le nom de variables, macros, ou commandes
+(définies par l'utilisateur) -- pour des retouches :
+
+@c TODO Avoid padtext - not needed with skylining
+@lilypond[quote,verbatim,ragged-right]
+dolce = \markup{ \italic \bold dolce }
+padText = { \once \override TextScript #'padding = #5.0 }
+fthenp=_\markup{ \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p }
+violin = \relative c'' {
+ \repeat volta 2 {
+ c4._\dolce b8 a8 g a b |
+ \padText
+ c4.^"hi there!" d8 e' f g d |
+ c,4.\fthenp b8 c4 c-. |
+ }
+}
+\score {
+ {
+ \violin
+ }
+\layout{ragged-right=##t}
+}
+@end lilypond
+
+Ces identificateurs sont évidemment utiles pour économiser de la
+frappe. Mais ils peuvent l'être même si vous ne les utilisez qu'une
+seule fois : ils réduisent la complexité. Regardons l'exemple
+précédent sans aucun identificateur. C'est beaucoup plus laborieux à
+lire, et particulièrement la dernière ligne.
+
+@example
+violin = \relative c'' @{
+ \repeat volta 2 @{
+ c4._\markup@{ \italic \bold dolce @} b8 a8 g a b |
+ \once \override TextScript #'padding = #5.0
+ c4.^"hi there!" d8 e' f g d |
+ c,4.\markup@{ \dynamic f \italic \small @{ 2nd @}
+ \hspace #0.1 \dynamic p @} b8 c4 c-. |
+ @}
+@}
+@end example
+
+@c TODO Replace the following with a better example -td
+@c Skylining handles this correctly without padText
+
+Jusqu'ici nous avons vu des substitutions statiques : quand LilyPond
+rencontre @code{\padText}, il le remplace par le contenu que nous lui
+avons défini -- c'est-à-dire le contenu à droite de @code{padText=}.
+
+LilyPond gère également des substitutions non-statiques -- vous
+pouvez les voir comme des fonctions.
+
+@lilypond[quote,verbatim,ragged-right]
+padText =
+#(define-music-function (parser location padding) (number?)
+ #{
+ \once \override TextScript #'padding = #$padding
+ #})
+
+\relative c''' {
+ c4^"piu mosso" b a b
+ \padText #1.8
+ c4^"piu mosso" d e f
+ \padText #2.6
+ c4^"piu mosso" fis a g
+}
+@end lilypond
+
+Utiliser des identificateurs est aussi un bon moyen pour vous épargner
+du travail si la syntaxe de LilyPond change un jour -- voir
+@rprogram{Mise à jour d'anciens fichiers}. Si vous avez une seule
+définition, par exemple @code{\dolce}, pour tous vos fichiers (voir
+@ref{Feuilles de style}), et que la syntaxe change, alors vous n'aurez
+qu'à mettre à jour votre seule définition @code{\dolce}, au lieu de
+devoir modifier chaque fichier @code{.ly}.
+
+
+@node Conducteurs et parties
+@subsection Conducteurs et parties
+@translationof Scores and parts
+
+Dans la musique d'orchestre, toutes les notes sont imprimées deux fois.
+D'abord dans les parties séparées destinées aux musiciens, et ensuite
+dans le conducteur destiné au chef. Les variables sont là pour vous
+éviter un double travail. La musique n'est entrée qu'une seule fois, et
+stockée dans une variable, dont le contenu servira à imprimer à la fois
+la partie séparée et la partition d'orchestre.
+
+Il est judicieux de définir les notes dans un fichier séparé. Par
+exemple, supposons que le fichier @code{musique-Cor.ly} contienne la
+partie suivante pour un duo cor/@/basson.
+
+@example
+notesCor = \relative c @{
+ \time 2/4
+ r4 f8 a cis4 f e d
+@}
+@end example
+
+@noindent
+On établira alors une partie séparée en constituant un nouveau fichier :
+
+@example
+\include "musique-Cor.ly"
+\header @{
+ instrument = "Cor en Fa"
+@}
+
+@{
+ \transpose f c' \notesCor
+@}
+@end example
+
+À la ligne
+
+@example
+\include "musique-Cor.ly"
+@end example
+
+@noindent
+sera substitué le contenu du fichier @code{musique-Cor.ly}, et de ce
+fait la variable @code{notesCor} se trouvera définie. La commande
+@w{@code{\transpose f c'}} indique que son argument @code{\notesCor}
+sera transposé à la quinte supérieure : le son réel @code{f} s'écrit
+@code{c'}, ce qui est la caractéristique d'un Cor en fa. La
+transposition est visible comme suit :
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+ \time 2/4
+ r4 f8 a cis4 f e d
+}
+@end lilypond
+
+Dans les pièces d'ensemble, il arrive souvent qu'une voix ne joue pas
+pendant plusieurs mesures. Un silence spécial, appelé silence
+multimesures, l'indique alors. On l'obtient par un @code{R} majuscule,
+suivi d'une durée : @code{1}@tie{}pour une pause, @code{2}@tie{}pour une
+demi-pause, etc. Cette durée peut être multipliée pour établir de plus
+longs silences. Par exemple, le silence suivant dure 3@tie{}mesures à 2/4.
+
+@example
+R2*3
+@end example
+
+Dans une partie séparée, les silences multimesure sont compressés.
+Il faut pour cela définir la propriété @code{skipBars} à @qq{vrai} :
+
+@example
+\set Score.skipBars = ##t
+@end example
+
+@noindent
+Cette commande assigne la valeur @qq{vrai} -- @emph{true} en anglais, et
+@code{#t} dans le langage Scheme -- à cette propriété dans le
+contexte @code{Score}. Si l'on ajoute dans la musique ci-dessus le
+silence multimesure et cette option, on obtient le résultat suivant :
+
+@lilypond[quote,ragged-right]
+\transpose f c' \relative c {
+ \time 2/4
+ \set Score.skipBars = ##t
+ R2*3
+ r4 f8 a cis4 f e d
+}
+@end lilypond
+
+Le conducteur rassemble toute la musique. Si l'on suppose que l'autre
+voix de notre duo se trouve dans le fichier @code{musique-Basson.ly} en
+tant que variable @code{notesBasson}, on établira un conducteur avec
+
+@example
+\include "musique-Basson.ly"
+\include "musique-Cor.ly"
+
+<<
+ \new Staff \notesCor
+ \new Staff \notesBasson
+>>
+@end example
+
+@noindent
+ce qui équivaut à
+
+@lilypond[quote,ragged-right]
+\relative c <<
+ \new Staff {
+ \time 2/4 R2*3
+ r4 f8 a cis4 f e d
+ }
+ \new Staff {
+ \clef bass
+ r4 d,8 f | gis4 c | b bes |
+ a8 e f4 | g d | gis f
+ }
+>>
+@end lilypond
+
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 35dc92475b9341fbbbaf194afcc2c6e2561840ac
+ Translation of GIT committish: 5a1312de54bc66dfe10a08670db976354e9ae5c3
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@menu
* Suggestions pour la saisie de fichiers LilyPond::
* Quand ça ne fonctionne pas::
-* Conducteurs et parties::
* De la commande @command{make} et des fichiers @code{Makefile}::
@end menu
* Suggestions générales::
* Gravure de musique existante::
* Projets d'envergure::
-* Économie de saisie grâce aux identificateurs et fonctions::
* Feuilles de style::
@end menu
@end itemize
-@node Économie de saisie grâce aux identificateurs et fonctions
-@subsection Économie de saisie grâce aux identificateurs et fonctions
-@translationof Saving typing with variables and functions
-
-@cindex variables
-@cindex identificateurs
-
-Jusqu'à maintenant, vous avez vu ce type de code :
-
-@lilypond[quote,verbatim,ragged-right]
-hornNotes = \relative c'' { c4 b dis c }
-\score {
- {
- \hornNotes
- }
-}
-@end lilypond
-
-Vous comprendrez combien cela peut être utile pour écrire de la
-musique minimaliste :
-
-@lilypond[quote,verbatim,ragged-right]
-fragmentA = \relative c'' { a4 a8. b16 }
-fragmentB = \relative c'' { a8. gis16 ees4 }
-violin = \new Staff { \fragmentA \fragmentA \fragmentB \fragmentA }
-\score {
- {
- \violin
- }
-}
-@end lilypond
-
-Néanmoins vous pouvez aussi utiliser ces identificateurs
--- aussi connus sous le nom de variables, macros, ou commandes
-(définies par l'utilisateur) -- pour des retouches :
-
-@lilypond[quote,verbatim,ragged-right]
-dolce = \markup{ \italic \bold dolce }
-padText = { \once \override TextScript #'padding = #5.0 }
-fthenp=_\markup{ \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p }
-violin = \relative c'' {
- \repeat volta 2 {
- c4._\dolce b8 a8 g a b |
- \padText
- c4.^"hi there!" d8 e' f g d |
- c,4.\fthenp b8 c4 c-. |
- }
-}
-\score {
- {
- \violin
- }
-\layout{ragged-right=##t}
-}
-@end lilypond
-
-Ces identificateurs sont évidemment utiles pour économiser de la
-frappe. Mais ils peuvent l'être même si vous ne les utilisez qu'une
-seule fois : ils réduisent la complexité. Regardons l'exemple
-précédent sans aucun identificateur. C'est beaucoup plus laborieux à
-lire, et particulièrement la dernière ligne.
-
-@example
-violin = \relative c'' @{
- \repeat volta 2 @{
- c4._\markup@{ \italic \bold dolce @} b8 a8 g a b |
- \once \override TextScript #'padding = #5.0
- c4.^"hi there!" d8 e' f g d |
- c,4.\markup@{ \dynamic f \italic \small @{ 2nd @}
- \hspace #0.1 \dynamic p @} b8 c4 c-. |
- @}
-@}
-@end example
-
-@c TODO Replace the following with a better example -td
-@c Skylining handles this correctly without padText
-
-Jusqu'ici nous avons vu des substitutions statiques : quand LilyPond
-rencontre @code{\padText}, il le remplace par le contenu que nous lui
-avons défini -- c'est-à-dire le contenu à droite de @code{padText=}.
-
-LilyPond gère également des substitutions non-statiques -- vous
-pouvez les voir comme des fonctions.
-
-@lilypond[quote,verbatim,ragged-right]
-padText =
-#(define-music-function (parser location padding) (number?)
- #{
- \once \override TextScript #'padding = #$padding
- #})
-
-\relative c''' {
- c4^"piu mosso" b a b
- \padText #1.8
- c4^"piu mosso" d e f
- \padText #2.6
- c4^"piu mosso" fis a g
-}
-@end lilypond
-
-Utiliser des identificateurs est aussi un bon moyen pour vous épargner
-du travail si la syntaxe de LilyPond change un jour -- voir
-@ref{Mise à jour d'anciens fichiers}. Si vous avez une seule
-définition, par exemple @code{\dolce}, pour tous vos fichiers (voir
-@ref{Feuilles de style}), et que la syntaxe change, alors vous n'aurez
-qu'à mettre à jour votre seule définition @code{\dolce}, au lieu de
-devoir modifier chaque fichier @code{.ly}.
-
-
@node Feuilles de style
@subsection Feuilles de style
@translationof Style sheets
@end itemize
-@node Conducteurs et parties
-@section Conducteurs et parties
-@translationof Scores and parts
-
-Dans la musique d'orchestre, toutes les notes sont imprimées deux fois.
-D'abord dans les parties séparées destinées aux musiciens, et ensuite
-dans le conducteur destiné au chef. Les variables sont là pour vous
-éviter un double travail. La musique n'est entrée qu'une seule fois, et
-stockée dans une variable, dont le contenu servira à imprimer à la fois
-la partie séparée et la partition d'orchestre.
-
-Il est judicieux de définir les notes dans un fichier séparé. Par
-exemple, supposons que le fichier @code{musique-Cor.ly} contienne la
-partie suivante pour un duo cor/@/basson.
-
-@example
-notesCor = \relative c @{
- \time 2/4
- r4 f8 a cis4 f e d
-@}
-@end example
-
-@noindent
-On établira alors une partie séparée en constituant un nouveau fichier :
-
-@example
-\include "musique-Cor.ly"
-\header @{
- instrument = "Cor en Fa"
-@}
-
-@{
- \transpose f c' \notesCor
-@}
-@end example
-
-À la ligne
-
-@example
-\include "musique-Cor.ly"
-@end example
-
-@noindent
-sera substitué le contenu du fichier @code{musique-Cor.ly}, et de ce
-fait la variable @code{notesCor} se trouvera définie. La commande
-@w{@code{\transpose f c'}} indique que son argument @code{\notesCor}
-sera transposé à la quinte supérieure : le son réel @code{f} s'écrit
-@code{c'}, ce qui est la caractéristique d'un Cor en fa. La
-transposition est visible comme suit :
-
-@lilypond[quote,ragged-right]
-\transpose f c' \relative c {
- \time 2/4
- r4 f8 a cis4 f e d
-}
-@end lilypond
-
-Dans les pièces d'ensemble, il arrive souvent qu'une voix ne joue pas
-pendant plusieurs mesures. Un silence spécial, appelé silence
-multimesures, l'indique alors. On l'obtient par un @code{R} majuscule,
-suivi d'une durée : @code{1}@tie{}pour une pause, @code{2}@tie{}pour une
-demi-pause, etc. Cette durée peut être multipliée pour établir de plus
-longs silences. Par exemple, le silence suivant dure 3@tie{}mesures à 2/4.
-
-@example
-R2*3
-@end example
-
-Dans une partie séparée, les silences multimesure sont compressés.
-Il faut pour cela définir la propriété @code{skipBars} à @qq{vrai} :
-
-@example
-\set Score.skipBars = ##t
-@end example
-
-@noindent
-Cette commande assigne la valeur @qq{vrai} -- @emph{true} en anglais, et
-@code{#t} dans le langage Scheme -- à cette propriété dans le
-contexte @code{Score}. Si l'on ajoute dans la musique ci-dessus le
-silence multimesure et cette option, on obtient le résultat suivant :
-
-@lilypond[quote,ragged-right]
-\transpose f c' \relative c {
- \time 2/4
- \set Score.skipBars = ##t
- R2*3
- r4 f8 a cis4 f e d
-}
-@end lilypond
-
-Le conducteur rassemble toute la musique. Si l'on suppose que l'autre
-voix de notre duo se trouve dans le fichier @code{musique-Basson.ly} en
-tant que variable @code{notesBasson}, on établira un conducteur avec
-
-@example
-\include "musique-Basson.ly"
-\include "musique-Cor.ly"
-
-<<
- \new Staff \notesCor
- \new Staff \notesBasson
->>
-@end example
-
-@noindent
-ce qui équivaut à
-
-@lilypond[quote,ragged-right]
-\relative c <<
- \new Staff {
- \time 2/4 R2*3
- r4 f8 a cis4 f e d
- }
- \new Staff {
- \clef bass
- r4 d,8 f | gis4 c | b bes |
- a8 e f4 | g d | gis f
- }
->>
-@end lilypond
-
-Des informations plus détaillées sur la mise en place de conducteurs
-et de parties séparées se trouvent dans le manuel de notation : voir
-@ruser{Écriture de parties séparées}.
-
-Les variables (@qq{propriétés}) réglables sont abordées en détail dans
-@ruser{La commande de fixation (set)}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 15ef26d4cde4d2d170e88a13867169d4e75026ae
+ Translation of GIT committish: 5a1312de54bc66dfe10a08670db976354e9ae5c3
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
déplacer la voix courante. Pour des raisons pratiques, on nomme la portée
supérieure @code{"haut"} et la portée inférieure @code{"bas"}, donc
@var{nomDeLaPortee} désigne habituellement @code{"haut"}, @code{"bas"},
-@code{"MD"} ou @code{"MG"}. Dans tous les cas, le contexte de
-portée ainsi utilisé doit exister au préalable.
+@code{"MD"} ou @code{"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 @ref{Conservation d'un contexte} à ce propos.
Pour ligaturer automatiquement des notes entre deux portées, procédez
ainsi :
Manuel de notation :
@ref{Hampes},
-@ref{Barres de ligature automatiques}.
+@ref{Barres de ligature automatiques},
+@ref{Conservation d'un contexte}.
Exemples de code :
@rlsr{Keyboards}.
@ref{Glissando}.
@item Le @notation{bisbigliando}, qui s'écrit comme un trémolo,
-@ref{Répétitions en trémolo}
+@ref{Répétitions en trémolo}.
@item Les harmoniques naturelles sont présentées dans @ref{Harmoniques}.
@seealso
Manuel de notation :
-@ref{Répétitions en trémolo}
-@ref{Glissando}
-@ref{Arpèges}
-@ref{Harmoniques}
+@ref{Répétitions en trémolo},
+@ref{Glissando},
+@ref{Arpèges},
+@ref{Harmoniques}.
@node Pédales de harpe
@unnumberedsubsubsec Pédales de harpe
@lilypond[quote,verbatim,relative=2]
\textLengthOn
-cis1_\markup \concat \vcenter { [D \flat C \sharp B|E \sharp F \sharp G A \flat] }
-c!1_\markup \concat \vcenter {[ C \natural ]}
+cis1_\markup \concat \vcenter {
+ [D \flat C \sharp B|E \sharp F \sharp G A \flat] }
+c!1_\markup \concat \vcenter {
+ [ C \natural ]}
@end lilypond
ou bien sous forme de diagrammes :
@seealso
Manuel de notation :
-@ref{Commentaires textuels}
-@ref{Instrument Specific Markup}
+@ref{Commentaires textuels},
+@ref{Instrument Specific Markup}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 3f880f886831b8c72c9e944b3872458c30c6c839
+ Translation of GIT committish: 5a1312de54bc66dfe10a08670db976354e9ae5c3
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@strong{@i{Harmoniques naturels}}
@cindex harmoniques naturels
-@cindex naturels, harmoniques
+@cindex naturels, harmoniques
+@cindex tête de note en losange
+@cindex losange, tête de note
+
+@funindex \harmonicsOn
+@funindex \harmonicsOff
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.
-@warning{Les harmoniques @strong{doivent} être indiqués dans une
-construction de type accord même s'il n'y a qu'une seule note.}
-
-@c TODO If the default for harmonicDots is changed, change this
-
-La propriété @code{harmonicDots}, lorsqu'elle est activée, permet
-d'ajouter un point point aux notes pointées affublées d'un
-@code{\harmonic}.
-
@lilypond[verbatim,quote,relative=2]
-<d\harmonic>4 <e\harmonic>2.
-\set harmonicDots = ##t
-<d\harmonic>4 <e\harmonic>2.
+d4 e4.
+\harmonicsOn
+d8 e e
+d4 e4.
+\harmonicsOff
+d8 e e
@end lilypond
Une autre façon de procéder consiste à faire surmonter la note normale
l'une, normale, indique la note à pincer, et l'autre, en forme de
losange, indique l'endroit où la corde doit être effleurée.
-@lilypond[verbatim,quote,relative=1]
-<e a\harmonic>2 <c g'\harmonic>
+
+@c TODO If the default for harmonicDots is changed, change this
+La propriété @code{harmonicDots}, lorsqu'elle est activée, permet
+d'ajouter un point aux notes pointées affublées d'un @code{\harmonic}.
+
+@lilypond[verbatim,quote,relative=2]
+<e a\harmonic>2. <c g'\harmonic>4
+\set harmonicDots = ##t
+<e a\harmonic>2. <c g'\harmonic>4
@end lilypond
+@warning{La commande @code{@bs{}harmonic} @strong{doivent} ê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 @code{@bs{}harmonicsOn} en pareil
+cas.}
+
+@seealso
+Glossaire musicologique :
+@rglos{harmonics}.
+
+Manuel de notation :
+@ref{Têtes de note spécifiques},
+@ref{Références en matière de cordes non frettées}.
+
+
@node Snap (Bartók) pizzicato
@unnumberedsubsubsec Snap (Bartók) pizzicato
@translationof Snap (Bartók) pizzicato