-@c -*- coding: utf-8; mode: texinfo; -*-
+@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
+
@ignore
- Translation of GIT committish: bdf8540b74167817eab96ed3d13b35477217f9fe
+ Translation of GIT committish: bdff8baf5bce0c4c456ebbf292ba8fc771e4bd31
When revising a translation, copy the HEAD committish of the
- version that you are working on. See TRANSLATION for details.
+ version that you are working on. For details, see the Contributors'
+ Guide, node Updating translation committishes..
@end ignore
-@c \version "2.12.0"
+@c \version "2.17.6"
@c Translators: Valentin Villenave, Jean-Charles Malahieude
@c Translation checkers: John Mandereau
-@node Staff notation
-@section Staff notation
+@node Notation sur la portée
+@section Notation sur la portée
+@translationof Staff notation
-@lilypondfile[quote]{staff-headword.ly}
+@c The line width is a bit of a hack to allow space for the
+@c instrument names.
+@lilypondfile[quote,ragged-right,line-width=14.5\cm,staffsize=16]
+{staff-headword.ly}
Cette section aborde les détails de gravure de la portée, la
-réalisation de partitions avec plusieurs portées et l'ajout
+réalisation de partitions comprenant plusieurs portées et l'ajout
d'indications globales d'exécution, présentes sur certaines portées
seulement.
@menu
-* Displaying staves::
-* Modifying single staves::
-* Writing parts::
+* Gravure des portées::
+* Modification de portées individuelles::
+* Écriture de parties séparées::
@end menu
-@node Displaying staves
-@subsection Displaying staves
+@node Gravure des portées
+@subsection Gravure des portées
+@translationof Displaying staves
+
+Nous allons voir ici comment créer des portées et comment les regrouper.
@menu
-* Instantiating new staves::
-* Grouping staves::
-* Nested staff groups::
+* Initialisation de nouvelles portées::
+* Regroupement de portées::
+* Imbrication de regroupements de portées::
+* Séparation des systèmes::
@end menu
-@node Instantiating new staves
-@unnumberedsubsubsec Instantiating new staves
-@untranslated
+@node Initialisation de nouvelles portées
+@unnumberedsubsubsec Initialisation de nouvelles portées
+@translationof Instantiating new staves
+
+@cindex nouvelle portée
+@cindex portée, initialisation
+@cindex portée, instanciation
+@cindex portée, nouvelle
+@cindex portée simple
+@cindex portée de batterie
+@cindex portée de percussion
+@cindex batterie, portée
+@cindex percussion, portée
+@cindex portée, transcription de grégorien
+@cindex portée rythmique
+@cindex portée de tablature
+@cindex tablature
+
+@funindex \drummode
+@funindex drummode
+@funindex DrumStaff
+@funindex RhythmicStaff
+@funindex TabStaff
+@funindex MensuralStaff
+@funindex VaticanaStaff
+@funindex GregorianTranscriptionStaff
+
+Les @notation{portées} -- en anglais @emph{staff} (@emph{staves}
+au pluriel) -- sont créées à l'aide des commandes @code{\new} ou
+@code{\context}. Pour de plus amples détails, consultez
+@ref{Création d'un contexte}.
+
+Le contexte de portée standard s'appelle @code{Staff} :
+
+@lilypond[verbatim,quote,relative=2]
+\new Staff { c4 d e f }
+@end lilypond
+
+Le contexte @code{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 @code{\drummode}, chaque composante étant
+spécifiée par son nom. Pour de plus amples détails, consultez
+@ref{Portées de percussion}.
+
+@lilypond[verbatim,quote]
+\new DrumStaff {
+ \drummode { cymc hh ss tomh }
+}
+@end lilypond
+
+Un @code{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
+@ref{Gravure de lignes rythmiques}.
+
+@lilypond[verbatim,quote,relative=2]
+\new RhythmicStaff { c4 d e f }
+@end lilypond
+
+Un @code{TabStaff} crée une portée de tablature correspondant aux six
+cordes d'une guitare standard. Pour de plus amples détails, consultez
+@ref{Tablatures par défaut}.
+
+@lilypond[verbatim,quote,relative=2]
+\new TabStaff { c4 d e f }
+@end lilypond
+
+LilyPond dispose aussi de deux contextes dédiés à la musique
+ancienne : @code{MensuralStaff} et @code{VaticanaStaff}. Ils sont
+abordés plus en détails au chapitre @ref{Contextes prédéfinis}.
+Le contexte @code{GregorianTranscriptionStaff} permet d'obtenir des
+éditions modernes du grégorien. Bien entendu, il est dépourvu de barres
+de mesure.
-@node Grouping staves
-@unnumberedsubsubsec Grouping staves
+@lilypond[verbatim,quote,relative=2]
+\new GregorianTranscriptionStaff { c4 d e f e d }
+@end lilypond
+
+Vous pourrez toujours définir d'autres contextes de portée selon vos
+besoins, en suivant les indications fournies au chapitre
+@ref{Définition de nouveaux contextes}.
+
+@seealso
+Glossaire musicologique :
+@rglos{staff},
+@rglosnamed{staves,portées}.
+
+Manuel de notation :
+@ref{Création d'un contexte},
+@ref{Portées de percussion},
+@ref{Gravure de lignes rythmiques},
+@ref{Tablatures par défaut},
+@ref{Contextes prédéfinis},
+@ref{Symbole de la portée},
+@ref{Contextes du chant grégorien},
+@ref{Contextes de musique mensurale},
+@ref{Définition de nouveaux contextes}.
+
+Morceaux choisis :
+@rlsrnamed{Staff notation, Notation sur la portée}.
+
+Référence des propriétés internes :
+@rinternals{Staff},
+@rinternals{DrumStaff},
+@rinternals{GregorianTranscriptionStaff},
+@rinternals{RhythmicStaff},
+@rinternals{TabStaff},
+@rinternals{MensuralStaff},
+@rinternals{VaticanaStaff},
+@rinternals{StaffSymbol}.
+
+
+@node Regroupement de portées
+@unnumberedsubsubsec Regroupement de portées
+@translationof Grouping staves
@cindex système, début de
@cindex crochet vertical
@cindex accolade verticale
@cindex portée multiple
@cindex portées, groupe de
-
-De nombreuses partitions sont écrites sur plusieurs portées. Ces
-portées peuvent être regroupées de quatre manières différentes.
-
-@itemize @bullet
-@item Le groupe de portées est attaché par une accolade sur la gauche,
-et les barres de mesure sont d'un seul tenant. Il s'agit du contexte
-@rinternals{GrandStaff}.
-
-@lilypond[verbatim,ragged-right,quote]
-\new GrandStaff
-\relative <<
+@cindex portées, regroupement
+@cindex chœur, système
+@cindex piano, système
+@cindex système choral
+@cindex système pianistique
+@cindex système, grand
+@cindex système
+
+LilyPond dispose de différents contextes permettant de regrouper des
+portées individuelles et d'obtenir ainsi des @qq{systèmes}. Chacun de
+ces contextes définira le style de regroupement, 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.
+
+@lilypond[verbatim,quote,relative=2]
+<<
+ \new Staff { c1 c }
\new Staff { c1 c }
- \new Staff { c c }
>>
@end lilypond
-@item Le groupe de portées est attaché par un crochet, et les barres
-de mesure sont d'un seul tenant. Il s'agit du contexte
-@rinternals{StaffGroup}.
+Dans un @code{StaffGroup}, le groupe de portées est signifié par un
+crochet, et les barres de mesure sont d'un seul tenant.
-@lilypond[verbatim,ragged-right,quote]
-\new StaffGroup
-\relative <<
+@lilypond[verbatim,quote,relative=2]
+\new StaffGroup <<
+ \new Staff { c1 c }
\new Staff { c1 c }
- \new Staff { c c }
>>
@end lilypond
+Dans un @code{ChoirStaff}, le groupe de portées est signifié par un
+crochet sur la gauche, et les barres de mesure sont individuelles.
+@lilypond[verbatim,quote,relative=2]
+\new ChoirStaff <<
+ \new Staff { c1 c }
+ \new Staff { c1 c }
+>>
+@end lilypond
-@item Le groupe de portées est attaché par un crochet, mais les barres
-de mesure sont séparées d'une portée à l'autre. Il s'agit du contexte
-@rinternals{ChoirStaff}.
+Dans un @code{GrandStaff}, le groupe de portées est signifié par une
+accolade sur la gauche, et les barres de mesure sont d'un seul tenant.
-@lilypond[verbatim,ragged-right,quote]
-\new ChoirStaff
-\relative <<
+@lilypond[verbatim,quote,relative=2]
+\new GrandStaff <<
+ \new Staff { c1 c }
\new Staff { c1 c }
- \new Staff { c c }
>>
@end lilypond
-@item Les portées du groupe ne sont pas attachées (hormis par une
-simple ligne verticale). Les barres de mesure sont détachées. Il
-s'agit de l'assemblage par défaut.
+Le contexte @code{PianoStaff} est identique au @code{GrandStaff}, sauf
+qu'il gère automatiquement l'affichage du nom d'instrument -- voir
+@ref{Noms d'instrument} pour plus de détails.
-@lilypond[verbatim,ragged-right,quote]
-\relative <<
+@lilypond[verbatim,quote,relative=2]
+\new PianoStaff <<
+ \set PianoStaff.instrumentName = #"Piano"
+ \new Staff { c1 c }
\new Staff { c1 c }
- \new Staff { c c }
>>
@end lilypond
-@end itemize
+Les barres de mesure au début de chaque système adoptent l'un des styles
+@code{SystemStartBar}, @code{SystemStartBrace} ou
+@code{SystemStartBracket}. Dans chaque contexte, seul l'un de ces
+styles est utilisé, et c'est la propriété @code{systemStartDelimiter}
+qui détermine lequel. Un quatrième style, @code{SystemStartSquare},
+doit quant à lui être spécifié de manière explicite.
+
+Vous pouvez aussi créer vos propres contextes de regroupement, comme
+l'explique @ref{Définition de nouveaux contextes}.
+
+@snippets
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{use-square-bracket-at-the-start-of-a-staff-group.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{display-bracket-with-only-one-staff-in-a-system.ly}
+
+@cindex présentation mensurale
+@cindex renaissance, musique
+@cindex transcription de musique ancienne
+@cindex musique ancienne, transcription
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{mensurstriche-layout-bar-lines-between-the-staves.ly}
@seealso
-Les barres de mesure au début de chaque système prennent l'un des styles
-@rinternals{SystemStartBar}, @rinternals{SystemStartBrace},
-@rinternals{SystemStartBracket}. Dans chaque contexte, seul l'un de
-ces styles est utilisé, et c'est la propriété
-@code{systemStartDelimiter} qui détermine lequel.
-
-
-@commonprop
-
-Les accolades et crochets délimitant les systèmes peuvent être imbriqués
-en profondeur,
-
-@lilypond[quote,ragged-right,verbatim]
-\new StaffGroup
-\relative <<
- \set StaffGroup.systemStartDelimiterHierarchy
- = #'(SystemStartSquare (SystemStartBracket a (SystemStartSquare b)) d)
- \new Staff { c1 }
- \new Staff { c1 }
- \new Staff { c1 }
- \new Staff { c1 }
- \new Staff { c1 }
+Glossaire musicologique :
+@rglosnamed{brace,accolade},
+@rglosnamed{bracket,crochet},
+@rglosnamed{grand staff,système}.
+
+Manuel de notation :
+@ref{Noms d'instrument},
+@ref{Définition de nouveaux contextes}.
+
+Morceaux choisis :
+@rlsrnamed{Staff notation, Notation sur la portée}.
+
+Référence des propriétés internes :
+@rinternals{Staff},
+@rinternals{StaffGroup},
+@rinternals{ChoirStaff},
+@rinternals{GrandStaff},
+@rinternals{PianoStaff},
+@rinternals{SystemStartBar},
+@rinternals{SystemStartBrace},
+@rinternals{SystemStartBracket},
+@rinternals{SystemStartSquare}.
+
+@knownissues
+Un @code{PianoStaff} ne peut contenir, par défaut, de @code{ChordNames}.
+
+
+@node Imbrication de regroupements de portées
+@unnumberedsubsubsec Imbrication de regroupements de portées
+@translationof Nested staff groups
+
+@cindex portées, regroupement et imbrication
+@cindex systèmes imbriqués
+@cindex imbrication de systèmes
+@cindex délimitation, systèmes imbriqués
+
+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.
+
+@lilypond[verbatim,quote,relative=2]
+\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 }
+ >>
+ >>
>>
@end lilypond
-@node Nested staff groups
-@unnumberedsubsubsec Nested staff groups
+Vous pouvez aussi créer vos propres contextes d'imbrication, comme
+l'explique @ref{Définition de nouveaux contextes}.
-@untranslated
+@snippets
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{nesting-staves.ly}
-@node Modifying single staves
-@subsection Modifying single staves
+@seealso
+Manuel de notation :
+@ref{Regroupement de portées},
+@ref{Noms d'instrument},
+@ref{Définition de nouveaux contextes}.
+
+Morceaux choisis :
+@rlsrnamed{Staff notation,Notation sur la portée}.
+
+Référence des propriétés internes :
+@rinternals{StaffGroup},
+@rinternals{ChoirStaff},
+@rinternals{SystemStartBar},
+@rinternals{SystemStartBrace},
+@rinternals{SystemStartBracket},
+@rinternals{SystemStartSquare}.
+
+
+@node Séparation des systèmes
+@unnumberedsubsubsec Séparation des systèmes
+@translationof Separating systems
+
+@cindex système, indicateur de séparation
+
+Le nombre de systèmes peut varier d'une page à l'autre ; vous
+pouvez, en pareil cas, rendre plus évidente la séparation entre les
+systèmes en l'indiquant visuellement. Ce @qq{séparateur} est absent par
+défaut, mais vous pouvez l'activer par une option au sein du bloc
+@code{\paper}.
+
+@c \book is required here to display the system separator
+@c ragged-right is required as there are two systems
+@lilypond[verbatim,quote,ragged-right]
+\book {
+ \score {
+ \new StaffGroup <<
+ \new Staff {
+ \relative c'' {
+ c4 c c c
+ \break
+ c4 c c c
+ }
+ }
+ \new Staff {
+ \relative c'' {
+ c4 c c c
+ \break
+ c4 c c c
+ }
+ }
+ >>
+ }
+ \paper {
+ system-separator-markup = \slashSeparator
+ % following commands are needed only to format this documentation
+ paper-width = 100\mm
+ paper-height = 100\mm
+ tagline = ##f
+ }
+}
+@end lilypond
-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'@emph{ossia}.
+@seealso
+Manuel de notation :
+@ref{Mise en forme de la page}.
+
+Morceaux choisis :
+@rlsrnamed{Staff notation,Notation sur la portée}.
+@node Modification de portées individuelles
+@subsection Modification de portées individuelles
+@translationof Modifying single staves
+
+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, ainsi que les portées
+d'@emph{ossia}.
+
@menu
-* Staff symbol::
-* Ossia staves::
-* Hiding staves::
+* Symbole de la portée::
+* Portées d'ossia::
+* Masquage de portées::
@end menu
-@node Staff symbol
-@unnumberedsubsubsec Staff symbol
+
+@node Symbole de la portée
+@unnumberedsubsubsec Symbole de la portée
+@translationof Staff symbol
@cindex symbole de portée
@cindex portée, lignes de
+@cindex lignes de portée, nombre de
+@cindex suspension de portée
+@cindex portée, suspension
+@cindex reprise de portée
+@cindex portée, reprise
+@cindex lignes de portée, épaisseur
+@cindex ligne supplémentaire
+
+@funindex \startStaff
+@funindex startStaff
+@funindex \stopStaff
+@funindex stopStaff
+
+Les commandes @code{\stopStaff} et @code{\startStaff} permettent
+respectivement de clôturer et (re)démarrer une portée n'importe où dans
+une partition.
+
+@lilypond[verbatim,quote,relative=2]
+\stopStaff f4 d \startStaff g, e
+f'4 d \stopStaff g, e
+f'4 d \startStaff g, e
+@end lilypond
-Les notes, nuances, etc. sont regroupés dans un assemblage de lignes
-horizontales, que l'on nomme la portée (en anglais @qq{staff}, et
-@qq{staves} au pluriel). Dans LilyPond, ces lignes sont dessinées au
-moyen d'un objet de mise en forme à part entière, nommé @code{staff
-symbol} --- symbole de portée.
+@predefined
+@code{\startStaff},
+@code{\stopStaff}.
+@endpredefined
+
+Les notes, nuances, etc. sont regroupées dans un assemblage de lignes
+horizontales, que l'on nomme la portée (en anglais @emph{staff}, et
+@emph{staves} au pluriel). Dans LilyPond, ces lignes sont dessinées au
+moyen d'un objet graphique (@emph{grob}) à part entière, nommé
+@code{StaffSymbol} -- symbole de portée. Modifier les propriétés d'un
+@code{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.
+
+@lilypond[verbatim,quote,relative=2]
+f4 d \stopStaff
+\override Staff.StaffSymbol.line-count = #2
+\startStaff g, e |
+
+f'4 d \stopStaff
+\revert Staff.StaffSymbol.line-count
+\startStaff g, e |
+@end lilypond
+Le positionnement de chacune des lignes de la portée est modifiable.
+Les valeurs s'expriment en @emph{demi} espace de portée, et la nouvelle
+position est déterminée par rapport à la ligne médiane. Une ligne sera
+donc imprimée pour chaque valeur exprimée ; le nombre de lignes,
+ainsi que leur position dans la portée, peut donc se modifier à l'aide
+d'une seule commande.
+
+@lilypond[verbatim,quote,relative=2]
+f4 d \stopStaff
+\override Staff.StaffSymbol.line-positions = #'(1 3 5 -1 -3)
+\startStaff g, e |
+f'4 d \stopStaff
+\override Staff.StaffSymbol.line-positions = #'(8 6.5 -6 -8 -0.5)
+\startStaff g, e
+@end lilypond
-L'aspect du symbole de portée peut être modifié selon différentes
-propriétés, telles que le nombre de lignes, leur épaisseur, ou leur
-éloignement.
-@ignore
-Vous en trouverez des exemples dans
-@lsr{staff,changing-the-number-of-lines-in-a-staff.ly} et
-@lsr{staff,changing-the-staff-size.ly}.
-@end ignore
+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 @ref{Clefs}.
-De plus, la portée peut commencer et s'arrêter où l'on veut, grâce aux
-commandes @code{\startStaff} et @code{\stopStaff}.
+Lorsque vous modifierez l'épaisseur des lignes, gardez à l'esprit que
+les lignes supplémentaires et les hampes seront aussi modifiées.
-@lilypond[verbatim,relative=2,fragment]
-b4 b
-\override Staff.StaffSymbol #'line-count = 2
-\stopStaff \startStaff
-b b
-\revert Staff.StaffSymbol #'line-count
-\stopStaff \startStaff
-b b
+@lilypond[verbatim,quote,relative=1]
+\new Staff \with {
+ \override StaffSymbol.thickness = #3
+}
+{ e4 d c b }
@end lilypond
-Cette manière de procéder peut être utilisée pour introduire des
-@qq{ossias}, ou dans des partitions à nombre de portées variable,
-comme sur l'exemple suivant :
+L'épaisseur des lignes supplémentaires (@emph{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.
-@cindex ossia
+@lilypond[verbatim,quote,relative=2]
+\new Staff \with {
+ \override StaffSymbol.thickness = #2
+ \override StaffSymbol.ledger-line-thickness = #'(0.5 . 0.4)
+}
+{ f'4 a, a,, f }
+@end lilypond
-@c @lilypondfile{ossia.ly}
+L'emplacement des lignes supplémentaires est réglable :
-@cindex lignes de portée, nombre de
-@cindex lignes de portée, épaisseur des
-@cindex épaisseur des lignes de portées
-@cindex nombre de lignes de portée
+@lilypond[verbatim,quote,relative=2]
+\new Staff \with {
+ \override StaffSymbol.ledger-positions = #'(-3 -2 -1 2 5 6)
+}
+{ f'4 a, a,, f }
+@end lilypond
+Vous pouvez faire apparaître des lignes supplémentaires additionnelles
+au-dessus ou en dessous des têtes de note selon leur positionnement
+relatif aux autres notes, qu'elles aient ou non elles-mêmes des lignes
+supplémentaires.
-@seealso
-Référence du programme : @rinternals{StaffSymbol}.
+@lilypond[verbatim,quote,relative=2]
+\new Staff \with {
+ \override StaffSymbol.ledger-extra = #4
+}
+{ f'4 a, d, f, }
+@end lilypond
-Exemples : @rlsr{Staff notation}.
+Des lignes supplémentaires peuvent apparaître y compris au sein d'une
+portée, notamment lorsque vous l'avez personnalisée. L'exemple suivant
+illustre deux cas de figure quant au positionnement des lignes
+supplémentaires selon que la propriété @code{legder-position} est
+définie explicitement ou non. La présence du @code{stopStaff} est ici
+rendue nécessaire pour annuler les effets de la commande
+@code{\override} qui s'applique à l'intégralité du @code{StaffSymbol}.
+
+@lilypond[fragment,quote,relative=1]
+\override Staff.StaffSymbol.line-positions = #'(-8 0 2 4)
+d4 e f g
+\stopStaff
+\startStaff
+\override Staff.StaffSymbol.ledger-positions = #'(-8 -6 (-4 -2) 0)
+d4 e f g
+@end lilypond
+Modifier l'équidistance des lignes de la portée affectera aussi les
+lignes supplémentaires.
-@node Ossia staves
-@unnumberedsubsubsec Ossia staves
+@lilypond[verbatim,quote,relative=2]
+\new Staff \with {
+ \override StaffSymbol.staff-space = #1.5
+}
+{ f'4 d, g, e, }
+@end lilypond
-@untranslated
+@snippets
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{making-some-staff-lines-thicker-than-the-others.ly}
+@seealso
+Glossaire musicologique :
+@rglosnamed{line,ligne},
+@rglosnamed{ledger line,ligne supplémentaire},
+@rglosnamed{staff,portée}.
-@node Hiding staves
-@unnumberedsubsubsec Hiding staves
+Manuel de notation :
+@ref{Clefs}.
-@cindex Frenched scores
-@cindex Masquer des portées
+Morceaux choisis :
+@rlsrnamed{Staff notation,Notation sur la portée}.
-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 @qq{French Score}.
-Cette fonctionnalité est activée par défaut dans les contextes
-@rinternals{Lyrics}, @rinternals{ChordNames} et
-@rinternals{FiguredBass}. Lorsque des lignes appartenant à ces
-contextes se retrouvent vides après placement des sauts de ligne,
-elles sont effacées.
-
-En ce qui concerne les portées normales, il existe un contexte
-@rinternals{Staff} spécifique qui permet d'arriver à ce résultat :
-les portées ne contenant rien ou uniquement des silences multi-mesures
-seront retirées. La définition de ce contexte est enregistrée dans la
-variable @code{\RemoveEmptyStaffContext}. Voyez comment la deuxième
-portée disparaît du deuxième système :
-
-@lilypond[quote,ragged-right,verbatim]
-\layout {
- \context { \RemoveEmptyStaffContext }
+Référence des propriétés internes :
+@rinternals{StaffSymbol},
+@rinternals{staff-symbol-interface}.
+
+
+@node Portées d'ossia
+@unnumberedsubsubsec Portées d'ossia
+@translationof Ossia staves
+
+@cindex portée à la française
+@cindex ossia
+@cindex variante
+@cindex portées, nombre variable de
+@cindex nombre de portées
+
+@funindex \startStaff
+@funindex startStaff
+@funindex \stopStaff
+@funindex stopStaff
+
+Une portée d'@notation{ossia} -- ou de variante -- s'obtient en créant,
+à l'endroit approprié, une nouvelle portée simultanée :
+
+@lilypond[verbatim,quote]
+\new Staff \relative c'' {
+ c4 b d c
+ <<
+ { c4 b d c }
+ \new Staff { e4 d f e }
+ >>
+ c4 b c2
}
+@end lilypond
-{
- \relative c' <<
- \new Staff { e4 f g a \break c1 }
- \new Staff { c4 d e f \break R1 }
+@noindent
+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 obtenir ce résultat, au chapitre
+@rlearning{Expressions musicales imbriquées}.
+
+L'exemple qui suit utilise, pour aligner la portée d'ossia, la propriété
+@code{alignAboveContext}. Cette méthode est tout à fait appropriée
+lorsqu'il y a un nombre restreint d'ossias.
+
+@lilypond[verbatim,quote]
+\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
}
@end lilypond
-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 assigner vrai à la propriété @code{remove-first} dans
-@rinternals{VerticalAxisGroup}.
+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 @code{Staff} vide
+auquel sera attribué un @emph{identifiant}. Il suffira alors, pour
+entamer un fragment d'ossia, de @qq{faire appel} à ce contexte grâce
+aux commandes @code{\startStaff} et @code{\stopStaff}. Vous vous
+rendrez compte à l'utilisation des avantages que procure cette façon de
+procéder, bien plus que dans l'exemple suivant.
-@example
-\override Score.VerticalAxisGroup #'remove-first = ##t
-@end example
+@lilypond[verbatim,quote,ragged-right]
+<<
+ \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
+ }
+>>
+@end lilypond
+
+Vous pourriez aussi recourir à la commande
+@code{\Staff \RemoveEmptyStaves} 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
+@code{\Staff \RemoveEmptyStaves}, reportez-vous au chapitre
+@ref{Masquage de portées}.
+
+@lilypond[verbatim,quote,ragged-right]
+<<
+ \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 {
+ \Staff \RemoveEmptyStaves
+ \override VerticalAxisGroup.remove-first = ##t
+ }
+}
+@end lilypond
-Pour masquer d'autres types de contextes, vous pouvez utiliser
-@code{\AncientRemoveEmptyStaffContext} ou
-@code{\RemoveEmptyRhythmicStaffContext}.
+@snippets
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{vertically-aligning-ossias-and-lyrics.ly}
-Une application particulière de cette fonctionnalité est la création
-d'une @emph{ossia} --- variante d'une partie de la mélodie --- affichée à
-l'aide d'une portée supplémentaire.
+@seealso
+Glossaire musicologique :
+@rglos{ossia},
+@rglosnamed{staff,portée},
+@rglos{Frenched staff}.
+Manuel d'initiation :
+@rlearning{Expressions musicales imbriquées},
+@rlearning{Taille des objets},
+@rlearning{Longueur et épaisseur des objets}.
-@node Writing parts
-@subsection Writing parts
+Manuel de notation :
+@ref{Masquage de portées}.
-@menu
-* Metronome marks::
-* Instrument names::
-* Quoting other voices::
-* Formatting cue notes::
-@end menu
+Morceaux choisis :
+@rlsrnamed{Staff notation,Notation sur la portée}.
-@node Metronome marks
-@unnumberedsubsubsec Metronome marks
+Référence des propriétés internes :
+@rinternals{StaffSymbol}.
-@cindex Tempo
-@cindex battements par minute
-@cindex indication métronomique
-Le métronome se règle de la manière suivante,
-@example
-\tempo @var{durée} = @var{par minute}
-@end example
+@node Masquage de portées
+@unnumberedsubsubsec Masquage de portées
+@translationof Hiding staves
-Les indications métronomiques seront interprétées, dans le fichier
-MIDI, comme des changements de tempo. Ils seront imprimés sur la
-partition comme ici :
-@funindex \tempo
-@lilypond[quote,ragged-right,verbatim,fragment]
-\tempo 8.=120 c''1
+@cindex Frenched scores
+@cindex masquage de portée
+@cindex portée vide
+
+@funindex \RemoveEmptyStaves
+@funindex Staff_symbol_engraver
+@funindex \stopStaff
+@funindex stopStaff
+
+Désactiver le graveur @code{Staff_symbol_engraver} dans un contexte
+@code{Staff} permet de masquer des lignes. La commande
+@code{\stopStaff} aura le même effet.
+
+@lilypond[verbatim,quote]
+\new Staff \with {
+ \remove "Staff_symbol_engraver"
+}
+\relative c''' { a8 f e16 d c b a2 }
@end lilypond
+L'instruction @code{\Staff \RemoveEmptyStaves} placée dans un bloc
+@code{\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 @qq{French Score}.
+Cette fonctionnalité masque et supprime toutes les portées vides d'une
+partition, hormis celles du premier système.
-@commonprop
+@warning{Une portée est considérée comme vide dès lors qu'elle ne
+contient que des silences multimesures, des silences visibles ou
+invisibles (ou d'espacement -- les @emph{@bs{}skip}) ou bien une
+combinaison de ces éléments.}
-Vous pouvez indiquer un changement de tempo pour le fichier MIDI sans
-pour autant l'imprimer. Il suffit alors de le rendre invisible pour
-l'impression :
-@example
-\once \override Score.MetronomeMark #'transparent = ##t
-@end example
+@lilypond[verbatim,quote,ragged-right]
+\layout {
+ \context {
+ \Staff \RemoveEmptyStaves
+ }
+}
-Vous pouvez imprimer d'autres indications métronomiques, telles que
-des équivalences, en utilisant ce type d'étiquette textuelle :
-@lilypond[quote,ragged-right,verbatim,relative,fragment]
-c4^\markup {
- (
- \smaller \general-align #Y #DOWN \note #"16." #1
- =
- \smaller \general-align #Y #DOWN \note #"8" #1
- ) }
+\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
+ }
+>>
@end lilypond
+@cindex ossia
+
@noindent
-Pour plus de détails, voir @ref{Formatting text}.
+@code{\Staff \RemoveEmptyStaves} permet aussi de gérer des fragments
+d'ossia attachés à une portée. Pour plus de détails, voir
+@ref{Portées d'ossia}.
+@cindex musique ancienne, masquage de portée
+@cindex portées rythmiques, masquage
-@seealso
-Référence du programme : @rinternals{MetronomeMark}.
+@funindex \RemoveEmptyStaves
+La commande @code{\VaticanaStaff \RemoveEmptyStaves} permet de masquer des
+portées vides dans les contextes de musique ancienne. Pour des
+contextes @code{RhythmicStaff}, il faudra utiliser
+@code{\RhythmicStaff \RemoveEmptyStaves}.
-@knownissues
+@predefined
+@code{\Staff \RemoveEmptyStaves},
+@code{\VaticanaStaff \RemoveEmptyStaves},
+@code{\RhythmicStaff \RemoveEmptyStaves}.
+@endpredefined
-Les risques de collision ne sont pas vérifiés. Dans le cas où il y
-aurait des notes au dessus de la portée ou d'autres objets
-(articulations, liaisons, texte, etc), l'indication métronomique peut
-venir en surimpression. Augmentez alors le décalage de cette
-indication par rapport à la portée :
+@snippets
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{removing-the-first-empty-line.ly}
+
+@seealso
+Glossaire musicologique :
+@rglos{Frenched staff}.
+
+Manuel d'initiation:
+@rlearning{Visibilité et couleur des objets}.
+
+Manuel de notation :
+@ref{Symbole de la portée},
+@ref{Portées d'ossia},
+@ref{Dictée à trous},
+@ref{Silences invisibles},
+@ref{Visibilité des objets}.
+
+Morceaux choisis :
+@rlsrnamed{Staff notation,Notation sur la portée}.
+
+Référence des propriétés internes :
+@rinternals{ChordNames},
+@rinternals{FiguredBass},
+@rinternals{Lyrics},
+@rinternals{Staff},
+@rinternals{VerticalAxisGroup},
+@rinternals{Staff_symbol_engraver}.
+
+@knownissues
+Supprimer le @code{Staff_symbol_engraver} aura pour effet de masquer les
+barres de mesure. Forcer leur visibilité peut entraîner des problèmes
+de formatage. En pareil cas il vaut mieux, au lieu de supprimer le
+graveur, recourir aux dérogations suivantes :
@example
-\override Score.MetronomeMark #'padding = #2.5
+\override StaffSymbol.stencil = ##f
+\override NoteHead.no-ledgers = ##t
@end example
+En ce qui concerne les désagréments et messages liés à l'utilisation de
+l'instruction @code{\Staff \RemoveEmptyStaves}, consultez
+@ref{Modification des réglages par défaut d'un contexte}.
-@node Instrument names
-@unnumberedsubsubsec Instrument names
-Dans un conducteur, les noms d'instrument sont portés en regard de
-chacune des portées.
+@node Écriture de parties séparées
+@subsection Écriture de parties séparées
+@translationof Writing parts
-Ce résultat s'obtient en spécifiant
-@rinternals{Staff}.@code{instrumentName} et
-@rinternals{Staff}.@code{shortInstrumentName}, ou
-@rinternals{PianoStaff}.@code{instrumentName} et
-@rinternals{PianoStaff}.@code{shortInstrumentName}. L'argument
-textuel apparaîtra avant le début de la portée. La première ligne
-affichera @code{instrumentName}, et les suivantes
-@code{shortInstrumentName}.
+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.
-@lilypond[quote,verbatim,ragged-right,relative=1,fragment]
-\set Staff.instrumentName = #"Ploink "
-\set Staff.shortInstrumentName = #"Plk "
-c1
-\break
-c''
-@end lilypond
+@menu
+* Noms d'instrument::
+* Citation d'autres voix::
+* Mise en forme d'une citation::
+@end menu
-Le recours à la commande @code{\markup} permet de construire des noms
-d'instruments particuliers, tels que
-@lilypond[quote,fragment,verbatim,ragged-right]
-\set Staff.instrumentName = \markup {
- \column { "Clarinetti"
- \line { "in B" \smaller \flat } } }
-c''1
-@end lilypond
+@node Noms d'instrument
+@unnumberedsubsubsec Noms d'instrument
+@translationof Instrument names
-Si vous centrez le nom d'un instrument, il faudra le faire pour tous
+@cindex instrument, noms
+@cindex nom d'instrument
+@cindex instrument, noms abrégés
-@lilypond[quote,verbatim,ragged-right]
-{ <<
-\new Staff {
- \set Staff.instrumentName = \markup {
- \center-column { "Clarinetti"
- \line { "in B" \smaller \flat } } }
- c''1
-}
-\new Staff {
- \set Staff.instrumentName = \markup{ \center-align { Vibraphone }}
- c''1
+Dans un conducteur, les noms d'instrument sont portés en regard de
+chacune des portées, qu'il s'agisse d'un contexte @code{Staff},
+@code{PianoStaff}, @code{StaffGroup}, @code{GrandStaff} ou
+@code{ChoirStaff} . La première ligne affichera la valeur de
+@code{instrumentName}, et les suivantes celle de
+@code{shortInstrumentName}.
+
+@lilypond[verbatim,quote,ragged-right,relative=1]
+\new Staff \with {
+ instrumentName = #"Violin "
+ shortInstrumentName = #"Vln. "
}
->>
+{ c4.. g'16 c4.. g'16 \break | c1 }
+@end lilypond
+
+Le recours à la commande @code{\markup} permet de construire des noms
+d'instrument particuliers, tels que
+
+@lilypond[verbatim,quote,relative=2]
+\new Staff \with {
+ instrumentName = \markup {
+ \column { "Clarinetti"
+ \line { "in B" \smaller \flat }
+ }
+ }
}
+{ c4 c,16 d e f g2 }
@end lilypond
-Losque le nom d'un instrument est relativement long, il est judicieux
-d'augmenter le retrait --- @code{indent} --- au sein du bloc
-@code{\layout}.
+@cindex noms d'instrument, centrés
-Procédez comme suit pour centrer des noms d'instruments tout en
-préservant un décalage par rapport à la portée :
+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 recourir à l'instruction @code{\center-column} :
-@lilypond[quote,verbatim,ragged-right]
-\new StaffGroup \relative
+@lilypond[verbatim,quote,indent=1.5\cm,relative=2]
<<
- \new Staff {
- \set Staff.instrumentName = \markup { \hcenter-in #10 "blabla" }
- c1 c1
+ \new Staff \with {
+ instrumentName = #"Flute"
}
- \new Staff {
- \set Staff.instrumentName = \markup { \hcenter-in #10 "blo" }
- c1 c1
+ { f2 g4 f }
+ \new Staff \with {
+ instrumentName = \markup {
+ \center-column { "Clarinet" }
+ \line { "in B" \smaller \flat }
+ }
}
+ { c4 b c2 }
>>
@end lilypond
-Des noms d'instruments peuvent s'utiliser dans d'autres contextes, tels
-que @code{GrandStaff}, @code{ChoirStaff}, ou @code{StaffGroup}, à
-condition de leur affecter le graveur approprié :
+@funindex indent
+@funindex short-indent
+
+Lorsque le nom d'un instrument est relativement long, il est judicieux
+d'augmenter les retraits -- @emph{indent} -- au sein du bloc
+@code{\layout} à l'aide des commandes @code{indent} et
+@code{short-indent}. Pour plus de plus amples détails sur ces réglages,
+reportez-vous au chapitre @ref{Variables d'indentation et de décalage}.
+
+@lilypond[verbatim,quote,ragged-right]
+\relative c'' {
+ <<
+ \new Staff \with {
+ instrumentName = #"Alto Flute in G"
+ shortInstrumentName = #"Flt."
+ }
+ {
+ f2 g4 f \break
+ g4 f g2
+ }
+ \new Staff \with {
+ instrumentName = #"Clarinet"
+ shortInstrumentName = #"Clar."
+ }
+ {
+ c,4 b c2 \break
+ c2 b4 c
+ }
+ >>
+}
-@example
-\layout@{
- \context @{\GrandStaff \consists "Instrument_name_engraver"@}
-@}
-@end example
+\layout {
+ indent = 3.0\cm
+ short-indent = 1.5\cm
+}
+@end lilypond
-@noindent
-Pour de plus amples informations sur la manière d'activer ou
-désactiver un graveur, voir @ref{Modifying context plug-ins}.
+@cindex noms d'instrument, autres contextes
+
+Des noms d'instrument peuvent s'utiliser dans d'autres contextes, tels
+que @code{ChordNames} ou @code{FiguredBass}, dès lors qu'on leur adjoint
+le graveur @code{Instrument_name_engraver}. Pour de plus amples
+informations sur la manière d'activer ou désactiver un graveur, voir
+@ref{Modification des greffons de contexte}.
-Vous pouvez changer d'instrument en cours de morceau :
+@cindex instrument, changement de nom
+@cindex changement de nom d'instrument
-@lilypond[quote,fragment,verbatim,ragged-right]
-\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
+Vous pouvez changer le nom d'un instrument en cours de morceau. Notez
+cependant que la valeur de @code{instrumentName} ne s'affichera que sur
+la première portée :
+
+@lilypond[verbatim,quote,ragged-right,relative=1]
+\new Staff \with {
+ instrumentName = #"Flute"
+ shortInstrumentName = #"Flt."
+}
+{
+ c1 c c c \break
+ c1 c c c \break
+ \set Staff.instrumentName = #"Clarinet"
+ \set Staff.shortInstrumentName = #"Clt."
+ c1 c c c \break
+ c1 c c c \break
+}
@end lilypond
+@cindex instrument, changement
+@cindex changement d'instrument
+
+@funindex \addInstrumentDefinition
+@funindex addInstrumentDefinition
+@funindex \instrumentSwitch
+@funindex instrumentSwitch
+
+Lorsqu'un musicien doit changer d'instrument -- piccolo et flûte, basson
+et contrebasson --, la commande @code{\addInstrumentDefinition},
+couplée à l'instruction @code{\instrumentSwitch} permet de spécifier en
+détail les modifications intervenant lors du changement. La commande
+@code{\addInstrumentDefinition} prend deux arguments : une chaîne
+de caractères qui servira d'identifiant, et une liste d'association
+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
+@code{\instrumentSwitch} se placera dans la musique au moment de la
+substitution :
+
+@lilypond[verbatim,quote,ragged-right]
+\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
+}
+@end lilypond
@seealso
-Référence du programme : @rinternals{InstrumentName}.
+Manuel de notation :
+@ref{Variables d'indentation et de décalage},
+@ref{Modification des greffons de contexte}.
+Morceaux choisis :
+@rlsrnamed{Staff notation,Notation sur la portée}.
-@node Quoting other voices
-@unnumberedsubsubsec Quoting other voices
+Référence des propriétés internes :
+@rinternals{InstrumentName},
+@rinternals{PianoStaff},
+@rinternals{Staff}.
-@cindex cues
+
+@node Citation d'autres voix
+@unnumberedsubsubsec Citation d'autres voix
+@translationof Quoting other voices
+
+@cindex répliques
@cindex citation
+@cindex petites notes
-Grâce aux citations de répliques, vous pouvez insérer directement dans une partie
-des fragments d'une autre partie. Avant qu'une partie ne puisse être
-mentionnée ailleurs, elle doit être considérée comme reproductible.
-C'est le but de la commande @code{\addQuote}.
+@funindex \addQuote
+@funindex addQuote
+@funindex \quoteDuring
+@funindex quoteDuring
+@funindex \transposition
+@funindex transposition
-@example
-\addQuote @var{nom} @var{musique}
-@end example
+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 @emph{réplique} d'une autre, sans devoir ressaisir la
+musique en question.
+L'instruction @code{\addQuote}, placée au niveau le plus haut -- c'est à
+dire en dehors de tout bloc de musique -- définit la musique dont il
+sera possible de répliquer des fragments.
-@noindent
-Ici, @var{nom} représente une chaîne d'identification, et
-@var{musique} n'importe quelle musique. Voici un exemple de
-@code{\addQuote} :
+Au cours d'une partie, des extraits de répliques peuvent être cités en
+utilisant la commande @code{\quoteDuring}. Cette commande prend deux
+arguments : le nom de la voix reproduite, tel que défini par
+@code{\addQuote}, et une expression musicale qui indique la durée de
+cette citation.
+
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ a4 gis g gis | b4^"quoted" r8 ais\p a4( f)
+}
-@example
-\addQuote clarinet \relative c' @{
- f4 fis g gis
-@}
-@end example
+oboeNotes = \relative c'' {
+ c4 cis c b \quoteDuring #"flute" { s1 }
+}
-Vous devez placer cette commande au niveau le plus haut, c'est à dire
-en dehors de tout bloc de musique.
+\addQuote "flute" { \fluteNotes }
-Après avoir fait appel à @code{\addquote}, la citation interviendra
-en utilisant @code{\quoteDuring} ou @code{\cueDuring} :
+\score {
+ <<
+ \new Staff \with { instrumentName = "Flute" } \fluteNotes
+ \new Staff \with { instrumentName = "Oboe" } \oboeNotes
+ >>
+}
+@end lilypond
-@example
-\quoteDuring #@var{nom} @var{musique}
-@end example
+Si l'expression musicale utilisée pour @code{\quoteDuring} contenait
+autre chose que du silence, il en résulterait une situation
+polyphonique, ce qui n'est pas le but recherché :
-Au cours d'une partie, des extraits de répliques peuvent être cités en
-utilisant la commande @code{\quoteDuring}.
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ a4 gis g gis | b4^"quoted" r8 ais\p a4( f)
+ }
-@example
-\quoteDuring #"clarinet" @{ s2. @}
-@end example
+oboeNotes = \relative c'' {
+ c4 cis c b \quoteDuring #"flute" { e4 r8 ais b4 a }
+}
-Cela citera trois noires (la durée de @code{s2.}) appartenant à la
-voix @code{clarinette} précédemment générée.
+\addQuote "flute" { \fluteNotes }
-Plus précisément, on s'arrête à cet instant de la partie en cours
-d'impression, et l'on extrait les notes à ce même instant dans la voix
-citée --- celle qui contient @code{\addQuote}. C'est la raison pour
-laquelle l'argument de @code{\addQuote} doit englober toute la voix en
-question, y compris les éventuels silences à son début.
+\score {
+ <<
+ \new Staff \with { instrumentName = "Flute" } \fluteNotes
+ \new Staff \with { instrumentName = "Oboe" } \oboeNotes
+ >>
+}
+@end lilypond
-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 @code{\transposition}.
+L'instruction @code{\quoteDuring} prendra en compte les réglages d'une
+commande @code{\transposition}, qu'elle apparaisse au niveau de la voix
+répliquée ou dans celle qui réplique.
-@lilypond[quote,ragged-right,verbatim]
-\addQuote clarinet \relative c' {
+@lilypond[verbatim,quote]
+clarinetNotes = \relative c'' {
\transposition bes
- f4 fis g gis
+ \key d \major
+ b4 ais a ais | cis4^"quoted" r8 bis\p b4( f)
}
-{
- e'8 f'8 \quoteDuring #"clarinet" { s2 }
+oboeNotes = \relative c'' {
+ c4 cis c b \quoteDuring #"clarinet" { s1 }
+ }
+\addQuote "clarinet" { \clarinetNotes }
+
+\score {
+ <<
+ \new Staff \with { instrumentName = "Clarinet" } \clarinetNotes
+ \new Staff \with { instrumentName = "Oboe" } \oboeNotes
+ >>
}
@end lilypond
-Le type d'événements pris en charge pour la citation peut se régler
-avec la propriété @code{quotedEventTypes}. Par défaut, sa valeur est
-fixée à @code{(note-event rest-event)}, ce qui signifie que seuls les
-notes et silences seront mentionnés par @code{\quoteDuring}.
-Définir
+@cindex note-event
+@cindex articulation-event
+@cindex dynamic-event
+@cindex rest-event
+@cindex slur-event
+@cindex crescendo-event
+
+@funindex quotedEventTypes
+@funindex quotedCueEventTypes
+
+LilyPond répliquera, par défaut, tous les éléments -- articulations,
+nuances, @emph{markups}, etc. La propriété @code{quotedEventTypes}
+permet de définir plus précisément quels éléments de la voix originelle
+seront reproduits.
+
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ a2 g2 |
+ b4\<^"quoted" r8 ais a4\f( c->)
+ }
+
+oboeNotes = \relative c'' {
+ c2. b4 |
+ \quoteDuring #"flute" { s1 }
+}
-@example
-\set Staff.quotedEventTypes =
- #'(note-event articulation-event dynamic-event)
-@end example
+\addQuote "flute" { \fluteNotes }
-@noindent
-reproduira les notes (mais pas les silences), ainsi que les scripts
-et nuances.
+\score {
+ <<
+ \set Score.quotedEventTypes = #'(note-event articulation-event
+ crescendo-event rest-event
+ slur-event dynamic-event)
+ \new Staff \with { instrumentName = "Flute" } \fluteNotes
+ \new Staff \with { instrumentName = "Oboe" } \oboeNotes
+ >>
+ }
+@end lilypond
-@knownissues
+Les citations peuvent être @qq{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 @ref{Utilisation de balises}.
+
+@seealso
+Manuel de notation :
+@ref{Instruments transpositeurs},
+@ref{Utilisation de balises}.
+
+Fichiers d'initialisation :
+@file{scm/define-event-classes.scm}.
-Seul le contenu de la première @rinternals{Voice} rencontrée dans la
-partie marquée d'une commande @code{\addQuote} pourra être retenu. Par
-voie de conséquence, @code{music} ne saurait comprendre de @code{\new}
-ou une instance @code{context Voice} qui la ferait passer à une autre voix.
+Morceaux choisis :
+@rlsrnamed{Staff notation, Notation sur la portée}.
+
+Référence des propriétés internes :
+@rinternals{Music classes},
+@rinternals{QuoteMusic},
+@rinternals{Voice}.
+
+@knownissues
+Seul le contenu de la première @code{Voice} rencontrée dans la
+partie marquée d'une commande @code{\addQuote} pourra être retenu. Par
+voie de conséquence, @code{@var{musique}} ne saurait comprendre de
+@code{\new} ou une instance @code{\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é.
+Citer des triolets imbriqués peut entraîner un résultat de piètre
+qualité.
-@seealso
-Dans ce manuel : @ref{Instrument transpositions}.
+@node Mise en forme d'une citation
+@unnumberedsubsubsec Mise en forme d'une citation
+@translationof Formatting cue notes
-Exemples : @rlsr{Staff notation}.
+@cindex petites notes, formater des
+@cindex répliques, formatage
+@cindex voix, citation
+@cindex voix, réplication
+@cindex CueVoice
+
+@funindex \cueDuring
+@funindex cueDuring
+@funindex \cueClef
+@funindex cueClef
+@funindex \cueDuringWithClef
+@funindex cueDuringWithClef
+@funindex \quoteDuring
+@funindex quoteDuring
+
+Le moyen le plus simple pour mettre en forme des notes provenant d'une
+autre voix consiste à déclarer explicitement un contexte @code{CueVoice}
+au sein de la voix où elle apparaît.
+
+@lilypond[verbatim,relative=1]
+R1
+<<
+ { e2\rest r4. e8 }
+ \new CueVoice {
+ \stemUp d'8^"flute" c d e fis2
+ }
+>>
+d,4 r a r
+@end lilypond
-Référence du programme : @rinternals{QuoteMusic}.
+L'instruction @code{\cueClef}, utilisée conjointement à un contexte
+@code{CueVoice} explicite permet d'indiquer la clef, dans une taille
+réduite, propre à la voix citée. Le retour à la clef d'origine
+s'effectue à l'aide de l'instruction @code{\cueClefUnset}.
+@lilypond[verbatim,noragged-right,relative=1]
+\clef "bass"
+R1
+<<
+ { e2\rest r4. \cueClefUnset e,8 }
+ \new CueVoice {
+ \cueClef "treble" \stemUp d''8^"flute" c d e fis2
+ }
+>>
+d,,4 r a r
+@end lilypond
-@node Formatting cue notes
-@unnumberedsubsubsec Formatting cue notes
+Notez que les deux instructions @code{\cueClef} et @code{\cueClefUnset}
+sont disponibles si nécessaire en dehors d'un @code{CueVoice}.
-@cindex petites notes, formater des
+@lilypond[verbatim,noragged-right,relative=1]
+\clef "bass"
+R1
+\cueClef "treble"
+d'8^"flute" c d e fis2
+\cueClefUnset
+d,,4 r a r
+@end lilypond
-La section précédente indiquait comment insérer des notes d'une autre
-voix. Nous allons maintenant voir une fonction musicale avancée,
-@code{\cueDuring}, qui facilite le formatage des petites notes.
+Lorsque la situation est plus complexe, instrument transpositeur ou
+citations de plusieurs sources, vous disposez des instructions
+@code{\cueDuring} et @code{\cueDuringWithClef}, versions spécifiques de
+la commande @code{\quoteDuring} -- voir la rubrique précédente
+(@ref{Citation d'autres voix}).
-Sa syntaxe est :
+Leur syntaxe est :
@example
- \cueDuring #@var{nom} #@var{updown} @var{musique}
+\cueDuring #@var{origine} #@var{position} #@var{musique}
@end example
-Des notes issues de la partie @var{nom} s'insèreront dans une
-@rinternals{Voice} nommée @code{cue}, simultanément avec
-@var{musique} --- habituellement un silence. L'apparition des petites
-notes initialise une polyphonie temporaire pour la portée concernée.
-L'argument @var{updown} détermine si ces petites notes seront
-attachées à la première ou à la seconde voix.
+et
+@example
+\cueDuringWithClef #@var{origine} #@var{position} #@var{clef} #@var{musique}
+@end example
-@lilypond[verbatim,ragged-right]
-smaller = {
- \set fontSize = #-2
- \override Stem #'length-fraction = #0.8
- \override Beam #'thickness = #0.384
- \override Beam #'length-fraction = #0.8
+Des mesures issues de la partie d'@code{@var{origine}} seront recopiées
+dans un contexte de @code{CueVoice} et synchronisées avec
+@code{@var{musique}} -- habituellement un silence. L'apparition des
+petites notes initialise une polyphonie temporaire pour la portée
+concernée. L'argument @code{@var{position}} détermine si ces petites
+notes seront attachées à la première ou à la seconde voix -- @code{UP}
+pour la première, @code{DOWN} pour la seconde.
+
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ r2. c4 | d8 c d e fis2 | g2 d |
}
-\addQuote clarinet \relative {
- R1*20
- r2 r8 c' f f
+oboeNotes = \relative c'' {
+ R1
+ \new CueVoice { \set instrumentCueName = "flute" }
+ \cueDuring #"flute" #UP { R1 }
+ g2 c,
}
-\new Staff \relative <<
+\addQuote "flute" { \fluteNotes }
- % setup a context for cue notes.
- \new Voice = "cue" { \smaller \skip 1*21 }
-
- \set Score.skipBars = ##t
+\new Staff {
+ \oboeNotes
+}
+@end lilypond
- \new Voice {
- R1*20
- \cueDuring #"clarinet" #UP {
- R1
- }
- g4 g2.
- }
->>
+@noindent
+La propriété @code{quotedCueEventTypes} permet de définir précisément
+quels éléments de la voix originelle seront reproduits. Sa valeur par
+défaut est @code{'(note-event rest-event tie-event beam-event
+tuplet-span-event)}. LilyPond reproduira donc les notes, silences,
+liaisons de prolongation, ligatures et nolets, mais pas les
+articulations, annotations ni nuances.
+
+@warning{Dans l'exemple précédent, il était nécessaire de déclarer
+explicitement le contexte @code{Voice}, sinon l'intégralité de
+l'expression musicale se serait retrouvée dans le contexte
+@code{CueVoice}.}
+
+@lilypond[verbatim,quote]
+oboeNotes = \relative c'' {
+ r2 r8 d16(\f f e g f a)
+ g8 g16 g g2.
+}
+\addQuote "oboe" { \oboeNotes }
+
+\new Voice \relative c'' {
+ \set Score.quotedCueEventTypes = #'(note-event rest-event tie-event
+ beam-event tuplet-span-event
+ dynamic-event slur-event)
+ \cueDuring #"oboe" #UP { R1 }
+ g2 c,
+}
@end lilypond
+Le nom de l'instrument qui est répliqué sera imprimé dès lors qu'aura
+été définie la propriété @code{instrumentCueName} d'un contexte
+@code{CueVoice} temporaire. Le positionnement et le style adopté par
+@code{instrumentCueName} dépendent de l'objet @code{\instrumentSwitch}
+-- voir @ref{Noms d'instrument}. Par ailleurs, si la citation nécessite
+l'apparition d'une clef différente, celle-ci devra être introduite
+manuellement, tout comme l'originale qui devra être rappelée en fin de
+citation.
+
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ r2. c4 d8 c d e fis2 g2 d2
+}
+
+bassoonNotes = \relative c {
+ \clef bass
+ R1
+ \clef treble
+ \new CueVoice { \set instrumentCueName = "flute" }
+ \cueDuring #"flute" #UP { R1 }
+ \clef bass
+ g4. b8 d2
+}
-Quelques indications pour une citation efficace :
+\addQuote "flute" { \fluteNotes }
-@itemize @bullet
-@item
- Les notes de la citation sont dans une police plus petite.
-@item
- La citation comporte une étiquette indiquant l'instrument qui joue.
-@item
- Lorsque la partie originale reprend sa place, rappeler l'instrument.
+\new Staff {
+ \bassoonNotes
+}
+@end lilypond
-@c really? Are you sure about that last point? I'll check after 3.0 -gp
+L'instruction @code{\cueDuringWithClef} se chargera quant à elle, et
+grâce à un argument supplémentaire, de gérer le changement de clef
+nécessaire à la citation et le retour à la clef originelle.
-@c Yes, this is good practice. Otherwise, the start of the original
-@c part can only be seen from the font size. This is not good enough
-@c for sight-reading. It is possilbe to use other
-@c markers (e.g. a big close-bracket over the staff) to indicate the cue
-@c notes are
-@c finished.
-@c -hwn
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ r2. c4 d8 c d e fis2 g2 d2
+}
+bassoonNotes = \relative c {
+ \clef bass
+ R1
+ \new CueVoice { \set instrumentCueName = "flute" }
+ \cueDuringWithClef #"flute" #UP #"treble" { R1 }
+ g4. b8 d2
+}
-Tout autre modification introduite par la citation devrait être
-annulée. Par exemple, si l'instrument cité utilise une autre clé, il
-faudra revenir à la clé habituelle.
+\addQuote "flute" { \fluteNotes }
-@end itemize
+\new Staff {
+ \bassoonNotes
+}
+@end lilypond
-La macro @code{\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.
+@funindex \transposedCueDuring
+@funindex transposedCueDuring
-@lilypond[verbatim,ragged-right,quote]
-picc = \relative c''' {
+L'instruction @code{\cueDuring}, à l'instar de la commande
+@code{\quoteDuring}, tient compte des instruments transpositeurs. La
+citation s'effectue aux hauteurs correspondant à l'instrument où elles
+apparaissent.
+
+L'instruction @code{\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 clarinette basse. Sa syntaxe est
+identique à celle de @code{\cueDuring}, à ceci près qu'elle nécessite un
+argument supplémentaire afin de spécifier la transposition à effectuer
+en hauteur absolue.
+
+@lilypond[verbatim,quote]
+piccoloNotes = \relative c''' {
\clef "treble^8"
- R1 |
- c8 c c e g2 |
- a4 g g2 |
+ R1
+ c8 c c e g2
+ c4 g g2
}
-\addQuote "picc" { \picc }
-cbsn = \relative c, {
- \clef "bass_8"
- c4 r g r
- \transposedCueDuring #"picc" #UP c,, { R1 } |
- c4 r g r |
+bassClarinetNotes = \relative c' {
+ \key d \major
+ \transposition bes,
+ d4 r a r
+ \transposedCueDuring #"piccolo" #UP d { R1 }
+ d4 r a r
}
+\addQuote "piccolo" { \piccoloNotes }
+
<<
- \context Staff = "picc" \picc
- \context Staff = "cbsn" \cbsn
+ \new Staff \piccoloNotes
+ \new Staff \bassClarinetNotes
+>>
+@end lilypond
+
+@cindex citation, fin
+@cindex fin de citation
+@cindex réplique, fin
+@cindex fin de réplique
+
+@funindex \killCues
+@funindex killCues
+@funindex \addInstrumentDefinition
+@funindex addInstrumentDefinition
+
+La commande @code{killCues} permet de supprimer les notes d'une
+citation. Ceci est utile lorsque cette citation n'est pas imprimée dans
+le conducteur entre autres. @code{killCues} supprimera les notes et
+autres événements pris en charge par @code{\cueDuring}. Pour les
+autres annotations telles que changement de clef ou instrument concerné,
+faites appel à des balises -- voir @ref{Utilisation de balises} à ce
+sujet.
+
+@lilypond[verbatim,quote]
+fluteNotes = \relative c'' {
+ r2. c4 d8 c d e fis2 g2 d2
+}
+
+bassoonNotes = \relative c {
+ \clef bass
+ R1
+ \tag #'part {
+ \clef treble
+ \new CueVoice { \set instrumentCueName = "flute" }
+ }
+ \cueDuring #"flute" #UP { R1 }
+ \tag #'part \clef bass
+ g4. b8 d2
+}
+
+\addQuote "flute" { \fluteNotes }
+
+\new Staff {
+ \bassoonNotes
+}
+
+\new StaffGroup <<
+ \new Staff {
+ \fluteNotes
+ }
+ \new Staff {
+ \removeWithTag #'part { \killCues { \bassoonNotes } }
+ }
>>
@end lilypond
+Lorsque la citation comporte une étiquette indiquant l'instrument qui
+joue et un changement de clef, ces éléments peuvent se regrouper à
+l'aide de la commande @code{\addInstrumentDefinition}. Pour plus
+d'information, reportez-vous au chapitre @ref{Noms d'instrument}.
+
+@seealso
+Manuel de notation :
+@ref{Citation d'autres voix},
+@ref{Instruments transpositeurs},
+@ref{Noms d'instrument},
+@ref{Clefs},
+@ref{Citation-repère},
+@ref{Utilisation de balises}.
+
+Morceaux choisis :
+@rlsrnamed{Staff notation, Notation sur la portée}.
+
+Référence des propriétés internes :
+@rinternals{CueVoice},
+@rinternals{Voice}.
+
+@knownissues
+La commande @code{\cueDuring} ne sait pas gérer les collisions de
+silence entre les contextes @code{Voice} et @code{CueVoice}.
+Dans le cadre d'un @code{\cueDuringWithClef} ou d'un
+@code{\transposedCueDuring}, l'argument supplémentaire doit intervenir
+après l'origine et la position.