X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Ffr%2Fnotation%2Fstaff.itely;h=923cb212a0f4111de90416cd7471f591d3959702;hb=e7aa6c445f463844dbaa52d38ea4aac2882b5601;hp=a27ab1a12f9eefbb73646f1b6f86ea3a2d203584;hpb=69f0ec479a6ade46d0a227755bb02562112c6743;p=lilypond.git diff --git a/Documentation/fr/notation/staff.itely b/Documentation/fr/notation/staff.itely index a27ab1a12f..923cb212a0 100644 --- a/Documentation/fr/notation/staff.itely +++ b/Documentation/fr/notation/staff.itely @@ -1,656 +1,1563 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- + @ignore - Translation of GIT committish: bdf8540b74167817eab96ed3d13b35477217f9fe + Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e 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.19.2" @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 et référencement 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. + +@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}. -@node Grouping staves -@unnumberedsubsubsec Grouping staves +@seealso +Glossaire musicologique : +@rglos{staff}, +@rglosnamed{staves,portées}. + +Manuel de notation : +@ref{Création et référencement 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 « 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 « 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. +Une liste de nombres détermine le positionnement de chaque ligne. +Le @code{0} correspond à la ligne médiane d'une portée habituelle, pour +laquelle la liste est donc @code{(-4@tie{}-2@tie{}0@tie{}2@tie{}4)}. +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 +Afin de préserver l'orientation habituelle des hampes -- ascendantes +dans la partie inférieure de la portée, descendantes dans la partie +supérieure -- la ligne (ou l'interligne) centrale de la portée +personnalisée devra être en phase avec avec la ligne médiane d'une +portée classique (0). 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}. + +Lorsque vous modifierez l'épaisseur des lignes, gardez à l'esprit que +les lignes supplémentaires et les hampes seront aussi modifiées. + +@lilypond[verbatim,quote,relative=1] +\new Staff \with { + \override StaffSymbol.thickness = #3 +} +{ e4 d c b } +@end lilypond -De plus, la portée peut commencer et s'arrêter où l'on veut, grâce aux -commandes @code{\startStaff} et @code{\stopStaff}. +L'épaisseur des lignes supplémentaires (@emph{ledger lines}) peut être +déterminée indépendamment des lignes de la portée. -@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=2] +\new Staff \with { + \override StaffSymbol.thickness = #2 + \override StaffSymbol.ledger-line-thickness = #'(0.5 . 0.4) +} +{ f'4 a, a,, f } @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 : +@noindent +La première valeur est multipliée par l'épaisseur de ligne de portée, la +seconde par l'espace d'interligne ; ces deux valeurs sont alors +combinées pour donner la nouvelle épaisseur des lignes supplémentaires. + +L'emplacement des lignes supplémentaires est réglable : -@cindex ossia +@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 -@c @lilypondfile{ossia.ly} +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. -@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-extra = #4 +} +{ f'4 a, d, f, } +@end lilypond +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[verbatim,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 -@seealso -Référence du programme : @rinternals{StaffSymbol}. +Modifier l'équidistance des lignes de la portée affectera aussi les +lignes supplémentaires. -Exemples : @rlsr{Staff notation}. +@lilypond[verbatim,quote,relative=2] +\new Staff \with { + \override StaffSymbol.staff-space = #1.5 +} +{ f'4 d, g, e, } +@end lilypond +@snippets +@lilypondfile[verbatim,quote,texidoc,doctitle] +{making-some-staff-lines-thicker-than-the-others.ly} -@node Ossia staves -@unnumberedsubsubsec Ossia staves +@seealso +Glossaire musicologique : +@rglosnamed{line,ligne}, +@rglosnamed{ledger line,ligne supplémentaire}, +@rglosnamed{staff,portée}. -@untranslated +Manuel de notation : +@ref{Clefs}. +Morceaux choisis : +@rlsrnamed{Staff notation,Notation sur la portée}. -@node Hiding staves -@unnumberedsubsubsec Hiding staves +Référence des propriétés internes : +@rinternals{StaffSymbol}, +@rinternals{staff-symbol-interface}. -@cindex Frenched scores -@cindex Masquer des portées -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 } +@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 « 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" + \hide Clef + 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" + \hide Clef + 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 « 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 + +@snippets +@lilypondfile[verbatim,quote,texidoc,doctitle] +{removing-the-first-empty-line.ly} -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 : +@seealso +Glossaire musicologique : +@rglos{Frenched staff}. + +Manuel d'initiation: +@rlearning{Visibilité et couleur des objets}. + +Manuel de notation : +@ref{Modification des réglages par défaut d'un contexte}, +@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 +\omit StaffSymbol +\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 ~ | 1 +} +@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 « 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.