@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: fab824ac128346465690246f7a42ce1e8b42db8d
+ Translation of GIT committish: 3c907f2dd5ba3dd91e30454922d8361225ca28d5
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
* Modes de saisie::
* Direction et positionnement::
* Distances et unités de mesure::
+* Dimensions::
* Propriétés des symboles de la portée::
* Extenseurs et prolongateurs::
* Visibilité des objets::
@ref{Mise en forme de la page}.
+@node Dimensions
+@subsection Dimensions
+@translationof Dimensions
+
+@cindex dimensions
+@cindex bounding box
+
+Les dimensions d'un objet graphique spécifient la position des bords
+droit et gauche ainsi que des bords supérieur et inférieur de la boîte
+englobante de ces objets, en tant que distance par rapport au point de
+référence de l'objet et en unité d'espace de portée. Ces positions sont
+normalement codées sous la forme de deux paires Scheme. Par exemple, la
+commande de @emph{markup} @code{\with-dimensions} prend trois arguments,
+les deux premiers étant des paires Scheme donnant la position des bords
+gauche et droit et celle des bords inférieur et supérieur :
+
+@example
+\with-dimensions #'(-5 . 10) #'(-3 . 15) @var{argument3}
+@end example
+
+Ceci spécifie une boîte englobante pour @var{argument3} dont le bord
+gauche est à @minus{}5, le bord droit à 10, le bord inférieur
+à @minus{}3 et le bord supérieur à 15 espaces de portée du point de
+référence de cet objet.
+
+@seealso
+Manuel de notation :
+@ref{Distances et unités de mesure}.
+
+
@node Propriétés des symboles de la portée
@subsection Propriétés des symboles de la portée
@translationof Staff symbol properties
@file{scm/output-lib.scm}. Le tableau suivant vous les présente ;
les trois dernières colonnes indiquent l'endroit où l'objet sera visible.
-@multitable {@code{begin-of-line-invisible}} {@code{'#(#t #t #t)}} {apres} {apres} {apres}
+@multitable {@code{begin-of-line-invisible}} {@code{#(#t #t #t)}} {apres} {apres} {apres}
@headitem Forme @tab Forme @tab Avant @tab Hors @tab Après
@headitem fonctionnelle @tab vectorielle @tab saut @tab saut @tab saut
-@item @code{all-visible} @tab @code{'#(#t #t #t)} @tab oui @tab oui @tab oui
-@item @code{begin-of-line-visible} @tab @code{'#(#f #f #t)} @tab non @tab non @tab oui
-@item @code{center-visible} @tab @code{'#(#f #t #f)} @tab non @tab oui @tab non
-@item @code{end-of-line-visible} @tab @code{'#(#t #f #f)} @tab oui @tab non @tab non
-@item @code{begin-of-line-invisible} @tab @code{'#(#t #t #f)} @tab oui @tab oui @tab non
-@item @code{center-invisible} @tab @code{'#(#t #f #t)} @tab oui @tab non @tab oui
-@item @code{end-of-line-invisible} @tab @code{'#(#f #t #t)} @tab non @tab oui @tab oui
-@item @code{all-invisible} @tab @code{'#(#f #f #f)} @tab non @tab non @tab non
+@item @code{all-visible} @tab @code{#(#t #t #t)} @tab oui @tab oui @tab oui
+@item @code{begin-of-line-visible} @tab @code{#(#f #f #t)} @tab non @tab non @tab oui
+@item @code{center-visible} @tab @code{#(#f #t #f)} @tab non @tab oui @tab non
+@item @code{end-of-line-visible} @tab @code{#(#t #f #f)} @tab oui @tab non @tab non
+@item @code{begin-of-line-invisible} @tab @code{#(#t #t #f)} @tab oui @tab oui @tab non
+@item @code{center-invisible} @tab @code{#(#t #f #t)} @tab oui @tab non @tab oui
+@item @code{end-of-line-invisible} @tab @code{#(#f #t #t)} @tab non @tab oui @tab oui
+@item @code{all-invisible} @tab @code{#(#f #f #f)} @tab non @tab non @tab non
@end multitable
Les réglages par défaut de la propriété @code{break-visibility}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: fab824ac128346465690246f7a42ce1e8b42db8d
+ Translation of GIT committish: 3c907f2dd5ba3dd91e30454922d8361225ca28d5
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@item line-width
@funindex line-width
-la longueur d'un système musical sans indentation et justifié sur toute
-la largeur de la page. La valeur par défaut est égale à
+La longueur d'une ligne. Lorsque spécifié dans un bloc @code{\paper},
+ceci définit l'étendue horizontale dont disposeront les lignes de portée
+d'un système non indenté. La valeur par défaut est égale à
@code{paper-width}, auquel sont retranchés @code{left-margin} et
@code{right-margin}. Lorsque vous définissez @code{line-width} sans
modifier les valeurs de @code{left-margin} et @code{right-margin}, les
marges seront alors recalculées de telle sorte que les systèmes soient
-centrés. Voir aussi @code{check-consistency}. La variable
-@code{line-width} peut se définir aussi dans un bloc @code{\layout}.
+centrés. Voir aussi @code{check-consistency}.
+
+La valeur de @code{line-width} peut aussi se spécifier individuellement
+au niveau de la partition, au sein d'un bloc @code{\layout}. Ceci
+permet de contrôler la longueur des lignes partition par partition. Si
+la longueur de ligne n'est pas spécifié dans une partition particulière,
+elle sera valorisée à celle du @code{line-width} mentionné dans le bloc
+@code{\paper}. La détermination de @code{line-width} pour un
+@code{\score} particulier n'a aucun effet sur les marges. Les lignes
+d'une portée dont la longueur est déterminée par le @code{line-width}
+d'une partition seront alignées par la gauche sur la surface de papier
+telle que définie par le @code{line-width} du bloc @code{\paper}. Dès
+lors que les valeurs de @code{line-width} de la partition et du papier
+sont égales, les lignes s'étendront de la marge gauche à la marge
+droite. En cas de @code{line-width} de la partition supérieur au
+@code{line-width} du papier, les lignes de portée déborderont dans la
+marge de droite.
+
@item left-margin
@funindex left-margin
-la marge entre le bord gauche de la feuille et le début de chaque
+La marge entre le bord gauche de la feuille et le début de chaque
système. La valeur par défaut est de @code{10\mm} ; elle sera
ajustée selon le format du papier. Lorsque vous définissez
@code{line-width} et @code{right-margin} sans modifier la valeur de
(@code{paper-width}). La valeur par défaut est @code{#t}. Dans
le cas d'une incohérence, un message d'avertissement est émis et les
trois variables -- marges et longueur de ligne -- rétablies à leur
-valeur par défaut (ajustées selon le format du papier).
+valeur par défaut (ajustées selon le format du papier). La
+désactivation de cette variable (valorisation à @code{#f}, toute
+incohérence sera ignorée, et les systèmes pourront déborder de la page.
@item ragged-right
@funindex ragged-right
Lorsque cette variable est activée, les systèmes ne s'étendront pas sur
la longueur de la ligne, mais s'arrêteront à leur longueur normale.
La valeur par défaut est @code{#f} mais, si la partition ne comporte
-qu'un seul système, elle passe à @code{#t}. Cette variable peut aussi
+qu'un seul système, elle passe à @code{#t}. Cette variable peut aussi
se gérer au sein d'un bloc @code{\layout}.
@item ragged-last
@funindex indent
Le niveau d'indentation du premier système d'une partition. La valeur
-par défaut est de @code{15\mm} et s'ajustera selon le format du
-papier. Cette variable peut aussi se gérer au sein d'un bloc
-@code{\layout}.
+par défaut est de @code{15\mm} en A4 et s'ajustera selon le format du
+papier. L'espace correspondant à @code{line-width} est réduit d'autant
+pour le premier système. Cette variable peut aussi se gérer partition
+par partition au sein d'un bloc @code{\layout}.
@item short-indent
@funindex short-indent
Le niveau d'indentation de tous les systèmes hormis le premier. La
-valeur par défaut est de @code{0}, et s'ajustera selon le format du
-papier dès lors que vous lui aurez affecté une valeur. Cette
-variable peut aussi se gérer au sein d'un bloc @code{\layout}.
+valeur par défaut est de @code{0} pour du A4, et s'ajustera selon le
+format du papier dès lors que vous lui aurez affecté une valeur. Bien
+entendu, l'espace spécifié par @code{line-width} sera réduit d'autant.
+Cette variable peut aussi se gérer partition par partition, au sein d'un
+bloc @code{\layout}.
@end table
suivante, @ref{Définition de la taille de portée}. La modification des
contextes est abordée dans d'autres chapitres -- voir
@ref{Modification des greffons de contexte} et
-@ref{Modification des réglages par défaut d'un contexte}. Les variables
-du bloc @code{\paper} que l'on peut retrouver dans un bloc
+@ref{Modification des réglages par défaut d'un contexte}.
+
+Les variables du bloc @code{\paper} que l'on peut retrouver dans un bloc
@code{\layout} sont :
@itemize
@menu
* Sauts de ligne::
* Sauts de page::
-* Sauts explicites::
@end menu
@subsection Sauts de ligne
@translationof Line breaking
-@cindex saut de ligne
+@cindex saut de ligne manuel
@cindex ligne, passer à la suivante
+@funindex \break
+@funindex \noBreak
+@funindex \autoBreaksOff
+@funindex \autoBreaksOn
+@funindex \autoLineBreaksOff
+@funindex \autoLineBreaksOn
Les sauts de ligne sont normalement gérés de façon automatique. Ils
interviennent de telle sorte qu'une ligne ne soit ni trop resserrée, ni
densité.
Vous pouvez cependant insérer l'instruction @code{\break} à l'endroit où
-vous le jugez utile pour @qq{forcer} le passage à la ligne suivante :
+vous le jugez utile pour « forcer » le passage à la ligne suivante :
@lilypond[quote,ragged-right,relative=2,verbatim]
c4 c c c | \break
L'instruction opposée, @code{\noBreak}, interdira toute tentative de
saut de ligne à la fin de la mesure où elle est explicitée.
+Au sein même d'une pièce, les sauts de lignes automatiques sont inhibés
+dans la musique encadrée par les commandes @code{\autoLineBreaksOff} et
+@code{\autoLineBreaksOn}. Dans le cas où les sauts de pages
+automatiques devraient eux aussi être inhibés, ce sont les commandes
+@code{\autoBreaksOff} et @code{\autoBreaksOn} qu'il faudrait utiliser.
+Les sauts de ligne ou de page manuels ne sont pas affectés par ces
+commandes. Notez bien que la désactivation du positionnement
+automatique des sauts des ligne peut avoir pour effet un débordement de
+la musique dans la marge de droite si tout ne peut être contenu sur une
+ligne.
+
+Des sauts de ligne automatiques peuvent cependant être autorisés en un
+point particulier à l'aide d'un @code{\once \autoLineBreaksOn} sur une
+barre de mesure. Ceci ne concerne pas les sauts de page. Ceci indique
+qu'un saut de ligne peut intervenir à cet endroit précis, mais ne le
+force en aucun cas.
+
LilyPond dispose de deux variables de base pour influencer l'espacement
au niveau des lignes. Toutes deux se définissent dans un bloc
@code{\layout}, @code{indent} réglant l'indentation de la première
@end example
@predefined
-@funindex \break
@code{\break},
-@funindex \noBreak
-@code{\noBreak}.
+@code{\noBreak},
+@code{\autoBreaksOff},
+@code{\autoBreaksOn},
+@code{\autoLineBreaksOff},
+@code{\autoLineBreaksOn}.
@endpredefined
+@snippets
+
+@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
+{using-an-extra-voice-for-breaks.ly}
+
@seealso
Manuel de notation :
@ref{Le bloc layout},
Morceaux choisis :
@rlsrnamed{Spacing,Espacements}.
+@knownissues
+
+Les commandes @code{\autoLineBreaksOff} et @code{\autoBreaksOff} doivent
+impérativement se placer après le début de la musique pour éviter tout
+message d'erreur.
+
@node Sauts de page
@subsection Sauts de page
@unnumberedsubsubsec Saut de page manuel
@translationof Manual page breaking
+@cindex manuel, saut de page
+@funindex \pageBreak
+@funindex \noPageBreak
+@funindex \autoPageBreaksOn
+@funindex \autoPageBreaksOff
+
La gestion automatique des sauts de page se contrôle à l'aide des
commandes @code{\pageBreak} et @code{\noPageBreak}. Ces commandes
fonctionnent de manière analogue à @code{\break} et @code{\noBreak} pour
les sauts de ligne et se placent donc au moment d'une barre de mesure.
-Elles permettent de forcer, ou d'interdire, un saut de page à l'endroit
-indiqué. Comme on peut s'y attendre, @code{\pageBreak} force aussi le
-saut de ligne.
+Elles permettent de forcer, ou d'interdire, un saut de page à la
+prochaine barre de mesure. Comme on peut s'y attendre,
+@code{\pageBreak} force aussi le saut de ligne.
Les commandes @code{\pageBreak} et @code{\noPageBreak} peuvent se
trouver à des niveaux supérieurs, entre deux partitions ou
@emph{markups} de premier rang.
+Au sein même d'une pièce, les sauts de page automatiques sont inhibés
+dans la musique encadrée par les commandes @code{\autoPageBreaksOff} et
+@code{\autoPageeBreaksOn}. Les sauts de page manuels ne sont pas
+affectés par ces commandes.
+
Tout comme @code{ragged-right} et @code{ragged-last} qui permettent de
gérer la répartition horizontale, LilyPond dispose de commutateurs
équivalents au niveau de la verticalité. @code{ragged-bottom}, une fois
@end example
@predefined
-@funindex \pageBreak
@code{\pageBreak},
-@funindex \noPageBreak
-@code{\noPageBreak}.
+@code{\noPageBreak},
+@code{\autoPageBreaksOn},
+@code{\autoPageBreaksOff}.
@endpredefined
@seealso
Morceaux choisis :
@rlsrnamed{Spacing,Espacements}.
+@knownissues
+
+Le préfixe @code{\once} est ineffectif en ce qui concerne les commandes
+@code{\autoPageBreaksOn} et @code{\autoPageBreaksOff}. Si le
+positionnement automatique des sauts de page est désactivé et qu'il est
+réactivé pour permettre un saut de page, il doit le rester pendant
+quelques mesures (le nombre précis de mesures dépendant de la pièce)
+avant d'être à nouveau désactivé, autrement l'opportunité de passer à la
+page suivante ne sera pas saisie.
+
@node Optimisation des sauts de page
@unnumberedsubsubsec Optimisation des sauts de page
@code{Page_turn_engraver}, au risque de les voir se contredire.
-@node Sauts explicites
-@subsection Sauts explicites
-@translationof Explicit breaks
-
-Il arrive parfois que LilyPond rejette des @code{\break} ou des
-@code{\pageBreak} explicites. Vous pouvez alors prendre le contrôle
-avec ces deux instructions dérogatoires :
-
-@example
-\override NonMusicalPaperColumn.line-break-permission = ##f
-\override NonMusicalPaperColumn.page-break-permission = ##f
-@end example
-
-Lorsque vous désactivez @code{line-break-permission}, LilyPond
-ne passera à la ligne suivante qu'en présence d'un @code{\break}
-explicite, et nulle part ailleurs. De la même façon, la désactivation
-de @code{page-break-permission} aura pour conséquence que LilyPond ne
-changera de page que lorsqu'il rencontrera un @code{\pageBreak}, et
-nulle part ailleurs.
-
-@lilypond[quote,verbatim]
-\paper {
- indent = #0
- ragged-right = ##t
- ragged-bottom = ##t
-}
-
-music = \relative c'' { c8 c c c }
-
-\score {
- \new Staff {
- \repeat unfold 2 { \music } \break
- \repeat unfold 4 { \music } \break
- \repeat unfold 6 { \music } \break
- \repeat unfold 8 { \music } \pageBreak
- \repeat unfold 8 { \music } \break
- \repeat unfold 6 { \music } \break
- \repeat unfold 4 { \music } \break
- \repeat unfold 2 { \music }
- }
- \layout {
- \context {
- \Score
- \override NonMusicalPaperColumn.line-break-permission = ##f
- \override NonMusicalPaperColumn.page-break-permission = ##f
- }
- }
-}
-@end lilypond
-
-@snippets
-@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
-{using-an-extra-voice-for-breaks.ly}
-
-@seealso
-Morceaux choisis :
-@rlsrnamed{Spacing,Espacements}.
-
-
@node Espacement vertical
@section Espacement vertical
@translationof Vertical spacing
une voix spécifique. La mise en forme est ainsi séparée des événements
musicaux ; ceci nous permettra d'y voir plus clair au fur et à
mesure que nous avancerons. Pour plus de précisions, relisez
-@ref{Sauts explicites}.
+@ref{Sauts}.
Les @code{\break} explicites répartissent la musique en lignes de six
mesures chacune. L'espacement vertical est celui que LilyPond attribue
La courte durée la plus fréquente est déterminée à partir de la note la
plus courte de chaque mesure. C'est elle qui servira de base pour
l'espacement, à cette nuance près que la plus courte durée ne saurait
-être strictement supérieure à la croche. Cette @qq{durée de référence}
-est d'ailleurs affichée lorsque vous lancez @code{lilypond} avec l'option
-@option{--verbose}.
+être strictement supérieure à la croche.
Ces durées peuvent être adaptées. Vous pouvez définir la durée de base
pour les espacements grâce à la propriété
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: b58a17a6b0b6f624cee7858a74092265e0791fe2
+ Translation of GIT committish: 3c907f2dd5ba3dd91e30454922d8361225ca28d5
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@end example
@noindent
-la dernière syllabe contient une @code{@}} ; il y a de fait un
+la dernière syllabe contient une @code{@}} ; il y a de fait un
défaut de parité avec l'accolade ouvrante, et la compilation échouera
fort probablement. Prenez dès à présent l'habitude de toujours encadrer
d'espaces une accolade :
@code{\lyricmode}. Des explications complètes sont disponibles au
chapitre @ref{Mise en forme du texte}.
-@snippets
+1@snippets
@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
{formatting-lyrics-syllables.ly}
@funindex \addlyrics
@funindex \lyricsto
-L'impression des paroles est réalisée à partir de l'interprétation d'un
-contexte @code{Lyrics} -- voir @ref{Tout savoir sur les contextes}.
+Les paroles sont interprétées à partir à partir du mode
+@code{\lyricmode} et imprimées dans un contexte @code{Lyrics} -- voir
+ @ref{Tout savoir sur les contextes}.
@example
\new Lyrics \lyricmode @{ @dots{} @}
@end example
+Deux variantes à @code{\lyricmode} permettent de plus d'associer
+un contexte pour synchroniser les syllabes à la musique. La plus
+commode consiste à ajouter un @code{\addlyrics} directement après
+le contenu musical du context @code{Voice} qui devrait se
+synchroniser avec le contexte @code{Lyrics} alors implicitement
+créé. L'instruction @code{\lyricsto} est plus versatile en ceci
+qu'elle requiert de spécifier à la fois le contexte @code{Voice}
+associé et de créer explicitement un contexte @code{Lyrics} pour
+contenir les paroles. Pour de plus amples détails, voir
+@ref{Durée automatique des syllabes}.
+
Vous disposez de deux méthodes pour aligner des paroles sur une
mélodie :
@code{Voice} dans le jargon LilyPond) @var{melodie}. Ce contexte
@code{Voice} doit exister avant l'affectation des paroles par
@code{\lyricsto}. La commande @code{\lyricsto} introduit
-automatiquement le mode @code{\lyricmode} ; il n'est alors pas
-nécessaire de rajouter @code{\lyricmode}. Les paroles viendront par
-défaut se placer en dessous des notes ; la rubrique
-@ref{Positionnement vertical des paroles} vous donnera des indications
-pour d'autres options.
+automatiquement le mode @code{\lyricmode}. Les paroles viendront par
+défaut se placer en dessous des notes. Pour un autre positionnement,
+voir @ref{Positionnement vertical des paroles}.
@subheading Utilisation de @code{\addlyrics}
@ref{Mise en forme de la partition},
@ref{Séparation des systèmes},
@ref{Définition de la taille de portée},
-@ref{Sauts explicites},
+@ref{Sauts},
@ref{Espacement vertical}.
Référence des propriétés internes :
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 0a003d729ded8b728bf627c87c196719676dba6b
+ Translation of GIT committish: 3c907f2dd5ba3dd91e30454922d8361225ca28d5
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
nombreuses documentations que vous pourrez trouver sur ce sujet.
@menu
-* Lancement de lilypond::
+* Lancement de LilyPond::
* Options basiques de lilypond::
* Options avancées de lilypond::
* Variables d'environnement::
@end menu
-@node Lancement de lilypond
-@unnumberedsubsec Lancement de @command{lilypond}
+@node Lancement de LilyPond
+@unnumberedsubsec Lancement de LilyPond
@translationof Invoking LilyPond
L'exécutable @command{lilypond} en ligne de commande se lance ainsi :
* Message d'erreur FT_Get_Glyph_Name::
* staff-affinities devraient aller en ordre décroissant::
* Message d'erreur unexpected new::
+* Trop d'empilements de notes se chevauchent::
@end menu
>>
}
@end lilypond
+
+
+@node Trop d'empilements de notes se chevauchent
+@unnumberedsubsec Trop d'empilements de notes se chevauchent
+@translationof Warning ignoring too many clashing note columns
+
+Lorsque des notes affectées à des voix différentes et ayant la même
+orientation de hampe interviennent au même instant musical et qu'aucun
+décalage spécifique à la voix n'a été spécifié, LilyPond émet
+@code{Avertissement : trop d'empilements de notes se chevauchent. On
+fera au mieux} (@emph{warning: ignoring too many clashing note columns}).
+Cet avertissement est émis même lorsque ces notes n'ont pas de hampe
+visible, comme par exemple des rondes, si les hampes des durées
+inférieures à ces même hauteurs avaient la même orientation.
+
+N'oublions pas que l'orientation des hampes dépend de la position des
+notes sur la portée à moins que cette orientation n'ait été spécifiée,
+par exemple à l'aide d'un @code{\voiceOne} ou autre clause. En pareil
+cas, l'avertissement ne sera émis que lorsque les hampes auront la même
+orientation, autrement dit lorsque les notes seront dans la même moitié
+de la portée.
+
+Le fait de placer les notes dans des voix auxquelles sont attachés
+orientation de hampe et décalage, comme @code{\voiceOne} ou autre, peut
+permettre d'éviter ces avertissements.
+
+Les notes se trouvant dans des voix au numéro plus élévé --
+@code{\voiceThree} ou @code{\voiceFour} -- sont automatiquement décalées
+pour éviter que les empilements se chevauchent. Ceci aura pour résultat
+de visuellement décaler les notes affublées de hampe sans toutefois
+bouger les rondes, hormis dans le cas d'un réel chevauchement ou lorsque
+ces voix se croisent (@code{\voiceThree} au dessus de@code{\voiceOne}).
+
+@seealso
+Manuel d'initiation :
+@rlearning{Instanciation explicite des voix},
+@rlearning{Exemple concret}.
+
+Manuel de notation :
+@ruser{Polyphonie sur une portée},
+@ruser{Résolution des collisions}.