@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 254e2df1ab4e0fb8d1b517e7e11ffb545363ee48
+ Translation of GIT committish: 40c0295431d0732747d0e37b7911f03fb9daca16
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@funindex \score
Un bloc @code{\score} contient obligatoirement une seule expression
-musicale délimitée par des accolades@tie{}:
+musicale délimitée par des accolades :
@example
\score @{
Cette unique expression musicale peut être de n'importe quelle taille et
contenir d'autres expressions musicales aussi complexes soient elles.
-Voici quelques exemples d'expression musicale@tie{}:
+Voici quelques exemples d'expression musicale :
@example
@{ c'4 c' c' c' @}
Lorsqu'un fichier ne comprend qu'un bloc @code{\score}, celui-ci est
implicitement inclus dans un bloc @code{\book}. Le bloc @code{\book}
d'un fichier source permet la production d'au moins un fichier dont le
-nom sera, par défaut, déduit du fichier source@tie{}: le traitement de
+nom sera, par défaut, déduit du fichier source : le traitement de
@file{fandangopourelephants.ly} produira donc
@file{fandangopourelephants.pdf}.
@}
@end example
-Attention cependant si vous travaillez avec lilypond-book@tie{}: il vous
+Attention cependant si vous travaillez avec lilypond-book : il vous
faudra explicitement mentionner le bloc @code{\book}, en l'absence de
quoi seul le premier @code{\score} ou @code{\markup} apparaîtra après
traitement.
-L'entête de chaque pièce peut se placer au sein du bloc
-@code{\score}@tie{}; le contenu du champ @code{piece} viendra s'imprimer
-avant chaque mouvement. De même, le titre de l'ouvrage peut se placer
-au sein du bloc @code{\book}. Dans le cas contraire, le contenu du bloc
+L'entête de chaque pièce peut se placer au sein du bloc @code{\score} ;
+le contenu du champ @code{piece} viendra s'imprimer avant chaque
+mouvement. De même, le titre de l'ouvrage peut se placer au sein du
+bloc @code{\book}. Dans le cas contraire, le contenu du bloc
@code{\header} placé en début de fichier sera utilisé.
@example
@end example
La déclaration @code{\bookOutputName} vous permet de définir vous-même
-le nom du fichier généré pour un bloc @code{\book}@tie{}:
+le nom du fichier généré pour un bloc @code{\book} :
@example
\book @{
@}
@end example
-Le traitement de ce fichier produira@tie{}:
+Le traitement de ce fichier produira :
@itemize
@item
@funindex \book
@funindex \bookpart
-Un fichier @code{.ly} peut contenir un certain nombre d'expression de
-haut niveau. Les expressions de haut niveau sont les suivantes@tie{}:
+Un fichier @code{.ly} peut contenir un certain nombre d'expressions de
+haut niveau. Les expressions de haut niveau sont les suivantes :
@itemize
@item
Une définition de sortie, comme @code{\paper}, @code{\midi} et
@code{\layout}. Ces définitions, lorsqu'elles se trouvent à un niveau
supérieur, s'appliqueront à l'intégralité de l'ouvrage. Si l'une de ces
-expression apparaît à plusieurs reprises, la dernière aura préséance.
+expression apparaît à plusieurs reprises à un niveau supérieur, les
+différents contenus seront combinés, à ceci près qu'en cas de
+déclarations conflictuelles, la dernière aura préséance. Des
+informations complémentaires sont disponibles à la rubrique
+@ref{Le bloc \layout}.
@item
Une expression Scheme pure, telle que
-@w{@code{#(set-default-paper-size@tie{}"a7"@tie{}'landscape)}} ou
-@w{@code{#(ly:set-option@tie{}'point-and-click@tie{}#f)}}.
+@w{@code{#(set-default-paper-size "a7" 'landscape)}} ou
+@w{@code{#(ly:set-option 'point-and-click #f)}}.
@item
Un bloc @code{\header}, dont le contenu sera de portée globale -- ce qui
@item
Un bloc @code{\book} permet de regrouper naturellement plusieurs
mouvements -- autrement dit plusieurs blocs @code{\score} -- dans un
-même document. Lorsqu'il y a plusieurs @code{\score}s, LilyPond génère
+même document. Lorsqu'il y a plusieurs @code{\score}, LilyPond génère
un seul fichier dans lequel les mouvements sont mis les uns à la suite
des autres, ce pour chacun des blocs @code{\book} rencontrés. La seule
raison qui peut vous demander d'expliciter plusieurs blocs @code{\book}
dans un fichier @file{.ly} est lorsque vous avez besoin de générer
différents documents à partir d'une même source. La présence explicite
d'un bloc @code{\book} est aussi nécessaire lorsque vous travaillez sur
-un document lilypond-book qui reprendrait plusieurs @code{\score}s ou
-@code{\markup}s dans un même extrait. Vous pouvez modifier ce
+un document lilypond-book qui reprendrait plusieurs @code{\score} ou
+@code{\markup} dans un même extrait. Vous pouvez modifier ce
comportement à l'aide de la variable @code{toplevel-book-handler}
placée en tête.
@ignore
@end example
Ce bout de code sera placé dans un @code{\score} et intégré à l'ouvrage
-en même temps que tous les autres @code{\score}s ou expressions
+en même temps que tous les autres @code{\score} ou expressions
musicales. En d'autres termes, un fichier qui ne contiendrait que cette
simple expression musicale sera traduit en
@end itemize
-Voici trois éléments que vous pouvez placer à un niveau supérieur@tie{}:
+Voici trois éléments que vous pouvez placer à un niveau supérieur :
@example
\layout @{
@end example
Vous pouvez placer, n'importe où dans votre fichier, les instructions
-suivantes@tie{}:
+suivantes :
@itemize
@item @code{\version}
Vous pouvez insérer des espaces dans votre fichier source afin de lui
apporter une meilleure lisibilité. Les espaces superflus sont
normalement ignorés. Notez cependant qu'il est des cas où l'espace est
-requis pour éviter tout risque d'erreur@tie{}:
+requis pour éviter tout risque d'erreur :
@itemize
@item
-Autour d'une accolade, qu'elle soit ouvrant ou fermante ;
+Autour d'une accolade, qu'elle soit ouvrant ou fermante ;
@item
Après chaque commande ou variable, autrement dit tout élément qui
-commence par un@tie{}@code{\}@tie{};
+commence par un @code{\} ;
@item
Après tout élément qui sera interprété comme une expression Scheme,
-autrement dit tout élément qui commence par un @code{#}@tie{};
+autrement dit tout élément qui commence par un @code{#} ;
@item
-Pour séparer les éléments d'une expression Scheme ;
+Pour séparer les éléments d'une expression Scheme ;
@item
En mode parole -- @code{lyricmode} -- pour séparer les termes des
plus d'ajouter une espace avant et après l'intégralité de la commande,
vous devrez encadrer d'espaces le point et le signe égal qu'elle peut
contenir, comme dans
-@w{@code{\override Score . LyricText #'font-size = #5}}.
+@w{@code{\override Score . LyricText #'font-size = #5}}.
@end itemize
Manuel d'initiation :
@rlearning{Organisation des fichiers LilyPond}.
+Manuel de notation :
+@ref{Le bloc \layout}.
+
@node Titres et entêtes
@section Titres et entêtes
@translationof Titles and headers
La plupart de la musique qui est éditée comporte un titre et le nom de
-son compositeur@tie{}; certains ouvrages divulguent beaucoup plus
+son compositeur ; certains ouvrages divulguent beaucoup plus
d'information.
@menu
@c TODO: figure out how \bookpart titles work
-Il existe en fait deux types de blocs de titrage@tie{}: un bloc pour
+Il existe en fait deux types de blocs de titrage : un bloc pour
contenir le titre principal qui doit apparaître avant le tout premier
@code{\score} d'un ouvrage, et un autre attaché à chacun des blocs
@code{\score} qui le composent. Dans les deux cas, les champs qui
@end lilypond
Tous les champs appartenant au titrage principal d'un ouvrage peuvent se
-reporter dans chaque bloc @code{\score} ou être supprimés
-manuellement@tie{}:
+reporter dans chaque bloc @code{\score} ou être supprimés manuellement :
@c KEEP LY
@lilypond[papersize=a5,quote,verbatim,noragged-right]
@translationof Default layout of book and score title blocks
La mise en forme des blocs de titrage est contrôlée par deux variables
-attachées au bloc @code{\paper}@tie{}: @code{bookTitleMarkup} pour le
-bloc @code{\header} principal, et @code{scoreTitleMarkup} pour les blocs
+attachées au bloc @code{\paper} : @code{bookTitleMarkup} pour le bloc
+@code{\header} principal, et @code{scoreTitleMarkup} pour les blocs
@code{\header} relevant des blocs @code{\score}.
@c KEEP LY
Les entête et pied -- @emph{headers} et @emph{footers} -- sont des
lignes de textes qui apparaissent en haut et en bas de chaque page,
indépendamment du texte de l'ouvrage. Ils sont contrôlés par les
-variables suivantes, attachées au bloc @code{\paper}@tie{}:
+variables suivantes, attachées au bloc @code{\paper} :
@itemize
@item @code{oddHeaderMarkup} -- entête de page impaire
Ces variables @emph{markup} n'accèdent qu'au contenu des champs du bloc
@code{\header} principal, celui qui s'appliquera à tous les blocs
@code{\score} du document. Ces variables sont définies dans le fichier
-@file{ly/titling-init.ly}, et sont par défaut@tie{}:
+@file{ly/titling-init.ly}, et sont par défaut :
@itemize
@item
les numéros sont placés en haut à gauche (si pair) ou à droite (si
-impair) de chaque page à compter de la deuxième@tie{};
+impair) de chaque page à compter de la deuxième ;
@item
le contenu du champ @code{instrument} est centré en haut de chaque page
-à compter de la deuxième@tie{};
+à compter de la deuxième ;
@item
-le texte du @code{copyright} est centré au bas de la première
-page@tie{};
+le texte du @code{copyright} est centré au bas de la première page ;
@item
le @code{tagline} -- mention spéciale -- se place au bas de la dernière
@code{\header} permet de modifier aisément l'apparence du texte,
mais n'influence en rien le positionnement précis des éléments de
titrage. L'accès au positionnement des champs de titrage est géré par
-les deux variables suivantes, attachées au bloc @code{\paper}@tie{}:
+les deux variables suivantes, attachées au bloc @code{\paper} :
@itemize
@item @code{bookTitleMarkup}
@ref{Mise en forme par défaut des titrages}.
Voici les réglages par défaut de @code{scoreTitleMarkup}, tels que
-définis dans le fichier @file{ly/titling-init.ly}@tie{}:
+définis dans le fichier @file{ly/titling-init.ly} :
@example
scoreTitleMarkup = \markup @{ \column @{
@end example
Ceci aura donc pour effet de positionner les champs @code{piece} et
-@code{opus} sur la même ligne, en opposition@tie{}:
+@code{opus} sur la même ligne, en opposition :
@lilypond[quote,verbatim,noragged-right]
\score {
@end lilypond
Voici comment positionner le champ @code{piece}, dont nous modifions
-la taille et la graisse, au centre de cette ligne@tie{}:
+la taille et la graisse, au centre de cette ligne :
@lilypond[papersize=a5,quote,verbatim,noragged-right]
\book {
@end lilypond
Les champs normalement réservés au bloc de titrage principal seront
-reportés au niveau au niveau inférieur dès lors que vous aurez activé
+reportés au niveau inférieur dès lors que vous aurez activé
l'instruction @code{print-all-headers} au sein du bloc @code{\paper}.
Le principal inconvénient de cette fonction réside dans le fait que les
champs réservés au bloc @code{\header} principal devront être supprimés
Afin d'éviter ce désagrément, ajoutez le champ que vous désirez voir
apparaître à la définition de @code{scoreTitleMarkup}. Nous allons,
dans l'exemple suivant, ajouter au @code{scoreTitleMarkup} le champ
-@code{composer}, normalement associé au @code{bookTitleMarkup}@tie{};
+@code{composer}, normalement associé au @code{bookTitleMarkup} ;
chaque @code{\score} pourra mentionner un compositeur différent.
@lilypond[papersize=a5,quote,verbatim,noragged-right]
@code{\header} permet de modifier aisément l'apparence du texte,
mais n'influence en rien le positionnement précis des entête et pied
de page. L'accès au positionnement des champs concernés est géré par
-les quatre variables suivantes, attachées au bloc @code{\paper}@tie{}:
+les quatre variables suivantes, attachées au bloc @code{\paper} :
@itemize
@item @code{oddHeaderMarkup}
@item @code{evenFooterMarkup}
@end itemize
+@cindex markup conditionnel
+@cindex condition et markup
+@cindex on-the-fly
+@funindex \on-the-fly
+
+L'instruction @code{\on-the-fly} au sein d'un @code{\markup} permet
+d'ajouter, lorsque certaines conditions sont respectées, des éléments
+au texte des entête et pied de page définis dans le bloc @code{\paper}.
+En voici la syntaxe :
+
+@example
+@code{variable} = @code{\markup} @{
+ ...
+ @code{\on-the-fly} #@var{procédure} @var{markup}
+ ...
+@}
+@end example
+
+La @var{procédure} est appelée à chaque fois que la commande
+@code{\markup} où elle apparaît est évaluée. La @var{procédure}
+effectuera un test de conformité particulière et interprètera, autrement
+dit imprimera l'argument @var{markup} si et seulement si cette
+condition est remplie.
+
+LilyPond dispose d'ores et déjà d'un certain nombre de procédures :
+
+@quotation
+@multitable {print-page-number-check-first-----} {ce n'est la première page du book--}
+
+@headitem Nom de la procédure @tab Condition testée
+
+@item print-page-number-check-first @tab il faut imprimer ce numéro de page.
+@item create-page-number-stencil @tab 'print-page-numbers est vrai.
+@item print-all-headers @tab 'print-all-headers est vrai.
+@item first-page @tab c'est la première page du @emph{book}.
+@item (on-page nombre) @tab page number = nombre
+@item last-page @tab c'est la dernière page du @emph{book}.
+@item not-first-page @tab ce n'est la première page du @emph{book}.
+@item part-first-page @tab c'est la première page de la partie.
+@item part-last-page @tab c'est la dernière page de la partie.
+@item not-single-page @tab cette partie fait plus d'une page.
+
+@end multitable
+@end quotation
+
L'exemple suivant illustre la manière de centrer son numéro au bas de
chaque page. Il nous faut tout d'abord annuler la définition de
@code{oddHeaderMarkup} et @code{evenHeaderMarkup} à l'aide d'un
}
@end lilypond
+Plusieurs conditions @code{\on-the-fly} mentionnées l'une à la suite de
+l'autre se cumulent. Ainsi, par exemple,
+
+@example
+ @code{\on-the-fly #first-page}
+ @code{\on-the-fly #last-page}
+ @code{@{ \markup ... \fromproperty #'header: ... @}}
+@end example
+
+teste si la sortie tient sur une page unique.
+
@seealso
Manuel de notation :
@ref{Contenu des blocs de titrage},
@ref{Mise en forme par défaut des titrages}.
+fichiers d'initialisation :
+@file{../ly/titling-init.ly}.
+
@node Notes de bas de page
@subsection Notes de bas de page
page.
Les notes de bas de page ne peuvent que s'empiler l'une au-dessus de
-l'autre@tie{}; elles ne seront jamais présentées à la queue leu leu.
+l'autre ; elles ne seront jamais présentées à la queue leu leu.
Les notes de bas de page peuvent générer des chevauchements quand elles
sont trop nombreuses sur une même page.
LilyPond vous permet, à l'aide de la commande @code{\label}, d'insérer
des points de référence dans un ouvrage, aussi bien en dehors qu'au fil
de la musique. Ce point de référence pourra être ensuite repris à
-l'intérieur d'un @emph{markup}@tie{}; vous pourrez même y ajouter le
+l'intérieur d'un @emph{markup} ; vous pourrez même y ajouter le
numéro de page grâce à la commande de @emph{markup} @code{\page-ref}.
@c KEEP LY
}
@end lilypond
-L'instruction @code{\page-ref} prend trois arguments@tie{}:
+L'instruction @code{\page-ref} prend trois arguments :
@enumerate
@item
le point de référence, sous la forme d'un symbole Scheme, comme par
@item
un @qq{emporte-pièce} afin d'estimer la longueur totale du
-@emph{markup},
+@emph{markup}, et
@item
un texte de remplacement au cas où la référence ne serait pas retrouvée.
se définissent dans le bloc @code{\paper}. Il s'agit par défaut de
@code{tocTitleMarkup} pour le titre de la table, et de
@code{tocItemMarkup} pour ses éléments -- composés de leur libellé et
-numéro de page. Vous pouvez bien entendu personnaliser ces
-variables@tie{}:
+numéro de page. Vous pouvez bien entendu personnaliser ces variables :
@verbatim
\paper {
la définition de @code{tocItemMarkup}.
N'hésitez pas à définir vous-même d'autres commandes et @emph{markups}
-afin de construire une table plus élaborée@tie{}:
+afin de construire une table plus élaborée :
@itemize
@item
commencez par définir une nouvelle variable de type @code{markup} au
@end itemize
Dans l'exemple qui suit, nous avons créé un nouveau style d'élément dans
-le but de mentionner les actes dans la table des matières d'un
-opéra@tie{}:
+le but de mentionner les actes dans la table des matières d'un opéra :
@verbatim
\paper {
@end lilypond
L'élément et son numéro de page peuvent se rejoindre par une ligne
-pointillée@tie{}:
+pointillée :
@lilypond[verbatim,quote]
\header { tagline = ##f }
définies dans les fichiers séparés seront normalement reprises et
utilisables dans le fichier formant le conducteur. Les sections
balisées dans les fichiers individuels peuvent être réutilisées en
-différents endroit de la partition , comme expliqué à la rubrique
+différents endroit de la partition, comme expliqué à la rubrique
@ref{Différentes éditions à partir d'une même source}.
Lorsque le fichier auquel il est fait référence se trouve dans le même
Les fichiers à inclure peuvent eux-mêmes contenir des instructions
@code{\include}. Ces instructions @code{\include} de second niveau ne
pourront, par défaut, être interprétées qu'une fois intégrées dans le
-fichier principal@tie{}; leur argument doit donc comporter le chemin
+fichier principal ; leur argument doit donc comporter le chemin
relativement au fichier principal et non par rapport au fichier dans
lequel cette inclusion est mentionnée. Vous pouvez toutefois influer
sur ce comportement à l'aide de l'option @w{@code{-drelative-includes}}
en ligne de commande ou en ajoutant une clause
-@code{@w{#(ly:set-option 'relative-includes #t)}} en tête du fichier
+@code{#(ly:set-option 'relative-includes #t)} en tête du fichier
principal. Une fois @code{relative-include} activé, le chemin à suivre
pour chacune des commandes @code{\include} sera pris relativement au
fichier qui la contient. Cette option est vouée à être activée par
défaut dans une future version de LilyPond.
Vous pouvez inclure des fichiers dont vous spécifierez le chemin d'accès
-sur la ligne de commande au moment de lancer la compilation. L'appel à
+sur la ligne de commande au moment de lancer la compilation. L'appel à
ces fichiers ne mentionnera alors que leur nom. Par exemple, si vous
voulez compiler avec cette méthode le fichier @file{principal.ly} qui
inclut des fichiers situés dans le sous-répertoire @file{parties},
Lorsqu'un fichier est voué à être inclus dans nombre de partitions, vous
pouvez le placer dans le répertoire de LilyPond @file{../ly}.
-Attention@tie{}: ce répertoire varie selon votre installation, comme
+Attention : ce répertoire varie selon votre installation, comme
indiqué au chapitre @rlearning{Autres sources de documentation}. Ce
fichier sera inclus dès lors que vous fournirez uniquement son nom en
argument à la fonction @code{\include}. C'est par exemple le cas du
fichier de définition particulier @file{gregorian.ly}.
Au moment où vous lancez LilyPond, un certain nombre de fichiers se
-retrouvent inclus par défaut@tie{}; il suffit d'activer le mode verbeux
+retrouvent inclus par défaut ; il suffit d'activer le mode verbeux
en faisant @w{@code{lilypond --verbose}} pour s'en rendre compte. Vous
verrez ainsi défiler, en plus de nombreuses informations, le nom d'un
certain nombre de fichiers et de chemins d'accès. Les fichiers les plus
endroits de la partition, comme nous l'avons vu à la rubrique
@rlearning{Organisation du code source avec des variables}. Par
exemple, une partition pour chœur @notation{a cappella} comporte souvent
-une réduction pour piano reprenant toutes les voix@tie{}; il s'agit de
+une réduction pour piano reprenant toutes les voix ; il s'agit de
la même musique, et vous ne devrez donc la saisir qu'une seule fois.
D'autre part, la musique issue de deux variables peut se combiner sur
une seule portée, comme nous l'avons vu à la rubrique
-@ref{Regroupement automatique de parties}. Prenons l'exemple
-suivant@tie{}:
+@ref{Regroupement automatique de parties}. Prenons l'exemple suivant :
@lilypond[verbatim,quote]
sopranoMusic = \relative c'' { a4 b c b8( a) }
La commande @code{\tag #'@var{partieA}} affecte à une expression
musicale le nom @var{partieA}. Les expressions ainsi balisées pourront
-être filtrées par la suite, à l'aide de
-@code{\keepWithTag@tie{}#'@var{nom}} ou
-@code{\removeWithTag@tie{}#'@var{nom}}. Ces filtres fonctionnent de la
-manière suivante@tie{}:
+être filtrées par la suite, à l'aide de @code{\keepWithTag #'@var{nom}}
+ou @code{\removeWithTag #'@var{nom}}. Ces filtres fonctionnent de la
+manière suivante :
@multitable @columnfractions .5 .5
@headitem Filtre
@item
Musique balisée précédée de @code{\keepWithTag #'@var{nom}}
@tab Musique non balisée et musique balisée par @var{nom} seront
- incluses@tie{}; la musique balisée autrement est exclue.
+ incluses ; la musique balisée autrement est exclue.
@item
Musique balisée précédée de @code{\removeWithTag #'@var{nom}}
@tab Musique non balisée et fragments appelés autrement que @var{nom}
- seront inclus@tie{}; la musique balisée par @var{nom} est exclue.
+ seront inclus ; la musique balisée par @var{nom} est exclue.
@item
Musique balisée non précédée de @code{\keepWithTag} ou
musicale.
Dans l'exemple qui suit, nous obtenons deux versions du même extrait,
-l'une pour le conducteur, l'autre pour l'instrumentiste, et qui
+l'une pour le conducteur, l'autre pour l'instrumentiste qui, elle,
comportera les ornements développés.
@lilypond[verbatim,quote]
@end lilypond
@noindent
-Il est parfois plus aisé d'exclure des fragments@tie{}:
+Il est parfois plus aisé d'exclure des fragments :
@lilypond[verbatim,quote]
music = \relative g' {
}
@end lilypond
-Ce principe de filtrage peut s'appliquer aux articulations, textes, etc.
+Ce principe de filtrage peut s'appliquer aux articulations, textes etc.
Il suffit de positionner
@example
@end example
@noindent
-avant l'articulation ou le texte, comme ici@tie{}:
+avant l'articulation ou le texte, comme ici :
@example
c1-\tag #'doigt ^4
un texte.
Vous pouvez baliser différemment la même expression musicale en
-saisissant plusieurs @code{\tag}@tie{}:
+saisissant plusieurs @code{\tag} :
@lilypond[quote,verbatim]
music = \relative c'' {
@end lilypond
L'application concomitante de plusieurs filtres @code{\removeWithTag} à
-la même expression musicale permet d'exclure plusieurs balisages@tie{}:
+la même expression musicale permet d'exclure plusieurs balisages :
@lilypond[verbatim,quote]
music = \relative c'' {
Il peut arriver que vous ayez besoin de raccorder quelque chose en un
point particulier d'une expression musicale. Les commandes
@code{\pushToTag} et @code{\appendToTag} permettent d'insérer du
-matériau, qu'il soit antérieur ou postérieur à des @code{éléments}
+matériau, qu'il soit antérieur ou postérieur, à des @code{éléments}
d'une construction musicale existante. La musique séquentielle ou
-simultanée comporte assurément des @code{éléments}@tie{}:
+simultanée comporte assurément des @code{éléments} :
@lilypond[verbatim,quote]
test = { \tag #'here { \tag #'here <<c''>> } }
@cindex include-settings
Vous pouvez regrouper dans un fichier indépendant vos réglages
-personnels que vous inclurez au besoin@tie{}:
+personnels que vous inclurez au besoin :
@example
lilypond -dinclude-settings=MES_REGLAGES.ly MA_PARTITION.ly
@cindex UTF-8
LilyPond utilise le jeu de caractères défini par le consortium Unicode
-et la norme ISO/CEI@tie{}10646. Chaque caractère est identifié par un
+et la norme ISO/CEI 10646. Chaque caractère est identifié par un
nom unique et associé à un point de code, ce qui permet dans l'absolu de
couvrir tous les langages. Unicode permet de coder tous les caractères
utilisés par toutes les langues écrites du monde. LilyPond utilise le
la bibliothèque Pango pour assurer le rendu des textes multilingues.
LilyPond n'effectue aucune conversion d'encodage que ce soit. Ceci
-implique donc que tout texte, qu'il s'agisse d'un titre, de paroles ou
-même d'instruction musicale, comportant des caractères non ASCII, soit
+implique donc que tout texte -- un titre, des paroles ou même une
+instruction musicale -- comportant des caractères non ASCII soit
codé en UTF-8. Le plus sûr moyen de saisir du texte de la sorte
consiste à utiliser un éditeur supportant l'unicode et à enregistrer vos
fichier en UTF-8. C'est le cas pour la plupart des éditeurs actuels,
que ce soit vim, Emacs, jEdit et GEdit. Tous les systèmes Windows
-postérieurs à NT utilisent Unicode en natif@tie{}; même Notepad est
+postérieurs à NT utilisent Unicode en natif ; même Notepad est
capable d'éditer et sauvegarder un fichier en UTF-8 -- sans parler de
l'excellente alternative qu'est BabelPad.
Lorsque vous avez besoin d'un caractère dont vous connaissez le point de
code mais que votre éditeur ne permet pas de saisir directement, vous
-pouvez utiliser les instructions @code{\char@tie{}##xhhhh} ou
-@code{\char@tie{}#dddd} au sein d'un bloc @code{\markup} -- @code{hhhh}
+pouvez utiliser les instructions @code{\char ##xhhhh} ou
+@code{\char #dddd} au sein d'un bloc @code{\markup} -- @code{hhhh}
et @code{dddd} correspondant respectivement à la valeur hexadécimale ou
décimale. Même s'il est inutile de saisir les zéros superflus, il est
de bon ton de stipuler les quatre caractères formant la représentation
hexadécimale. Évitez cependant l'encodage UTF-8 d'un point de code
-après un @code{\char}@tie{}; les encodages UTF-8 comprennent un bit
+après un @code{\char} ; les encodages UTF-8 comprennent un bit
supplémentaire indiquant le nombre d'octets. Une table de
correspondance entre les codes Unicode et le nom des caractères ainsi
que leur code hexadécimal est disponible sur le site du consortium
@cindex copyright
Le signe @emph{copyright} dans le champ de titrage consacré s'inscrit de
-la manière suivante@tie{}:
+la manière suivante :
@example
\header @{
@translationof ASCII aliases
Dès lors que vous aurez inclus la liste de leur équivalent ASCII,
-LilyPond reconnaîtra un certain nombre de caractères spéciaux@tie{}:
+LilyPond reconnaîtra un certain nombre de caractères spéciaux :
@lilypond[quote,verbatim]
\paper {
}
@end lilypond
-L'extension de cette liste est possible aussi bien de manière globale :
+L'extension de cette liste est possible aussi bien de manière globale :
@lilypond[quote,verbatim]
\paper {
\markup "A 100 dpi."
@end lilypond
-qu'en un point particulier de votre source :
+qu'en un point particulier de votre source :
@lilypond[quote,verbatim]
\markup \replace #'(("100" . "hundred")
@subsection Extraction de fragments musicaux
@translationof Extracting fragments of music
-LilyPond vous permet d'extraire des fragments d'une partition à l'instar
-du choriste amateur qui alimente son album avec des coupures de
-journaux.
+LilyPond permet d'extraire des fragments d'une partition à l'instar du
+choriste amateur qui alimente son album avec des coupures de journaux.
Vous devrez pour cela définir les mesures à découper. La définition
suivante, incluse dans votre fichier source,
@noindent
vous permettra d'extraire un fragment compris entre le milieu de la
cinquième mesure et quelque part dans la septième. Le triplet
-@code{5@tie{}1@tie{}2} signifie@tie{}: après la durée d'une blanche dans
-la mesure 5@tie{}; le @code{7@tie{}3@tie{}4} signifie quant à lui que
-l'on s'arrête à la mesure 7, après la durée de trois noires.
+@code{5 1 2} signifie : après la durée d'une blanche dans la mesure 5 ;
+le @code{7 3 4} signifie quant à lui que l'on s'arrête à la mesure 7,
+après la durée de trois noires.
Rien ne vous empêche d'extraire plusieurs fragments, dès lors que vous
définissez dans la liste d'autres paires d'emplacements rythmiques.
propriété @code{showFirstLength} que vous utiliserez.
Vous pouvez contrôler très finement les parties à escamoter, grâce au
-commutateur @code{Score.skipTypesetting}@tie{}: lorsqu'il est activé,
+commutateur @code{Score.skipTypesetting} : lorsqu'il est activé,
aucune gravure n'est réalisée.
Ce commutateur agit aussi sur la sortie MIDI. Notez bien que tous les
événements seront escamotés, y compris les changements de tempo ou
-d'instrument -- vous voilà prévenu@tie{}!
+d'instrument -- vous voilà prévenu !
@lilypond[quote,relative=2,ragged-right,verbatim]
c8 d
@uref{http://www.chiark.greenend.org.uk/~sgtatham/gonville/ ,http://www.chiark.greenend.org.uk/~sgtatham/gonville/}
@end example
-Voici quelques mesures utilisant la police Gonville@tie{}:
+Voici quelques mesures utilisant la police Gonville :
@c NOTE: these images are a bit big, but that's important
@c for the font comparison. -gp
@sourceimage{Gonville_after,,,}
-Et ces même mesures avec la police de LilyPond, Feta@tie{}:
+Et ces même mesures avec la police de LilyPond, Feta :
@sourceimage{Gonville_before,,,}
MIDI (Musical Instrument Digital Interface) constitue un standard en
matière de connexion et de contrôle des instruments électroniques. Un
fichier MIDI contient une série de notes réparties dans différentes
-pistes. Il ne s'agit en rien d'un fichier sonore@tie{}; il vous faudra
+pistes. Il ne s'agit en rien d'un fichier sonore ; il vous faudra
un logiciel capable de traduire ces séries de notes en sons réels.
Vous pouvez convertir vos partition en fichier MIDI de manière à
entendre ce que vous avez saisi. Ceci vous permet de contrôler aisément
-ce que vous avez saisi@tie{}: octaves et altérations erronées heurteront
+ce que vous avez saisi : octaves et altérations erronées heurteront
votre oreille avertie grâce au MIDI.
Le fichier MIDI généré par LilyPond est relativement brut. Vous pouvez
cependant obtenir un meilleur rendu avec @ref{Le script Articulate}.
Dans une sortie MIDI, LilyPond alloue un canal à chaque portée, tout en
-réservant le canal@tie{}10 aux percussions. Dans la mesure ou un
+réservant le canal 10 aux percussions. Dans la mesure ou un
périphérique MIDI ne comprend que 16 canaux, un fichier MIDI qui
comportera plus de quinze portées verra le même canal réutilisé.
@translationof Creating MIDI files
LilyPond générera un fichier MIDI dès que vous ajouterez un bloc
-@code{\midi} à la structure de votre partition, comme ici@tie{}:
+@code{\midi} à la structure de votre partition, comme ici :
@example
\score @{
Hauteurs, durées, liaisons de prolongation, nuances et changements de
tempo seront interprétés et traduits en événements MIDI. Les
indications de nuances, crescendos et decrescendos sont traduits en
-niveau de volume@tie{}; les indications sous la forme d'une fraction
+niveau de volume ; les indications sous la forme d'une fraction
déterminée du volume disponible, et crescendos et decrescendos sous la
forme d'une progression linéaire entre les deux extrêmes. Le rendu des
indications de nuance peut être désactivé pour le MIDI -- voir
@ref{Le bloc MIDI}.
Le tempo initial ainsi que ses changements sont normalement indiqués au
-fil de la notation à l'aide de la commande @code{\tempo}@tie{}; ils
-seront retranscrits dans le fichier MIDI. La commande @code{\tempo}
-donne lieu à l'impression d'une indication métronomique que vous pouvez
-toutefois rendre invisible, comme indiqué à la rubrique
+fil de la notation à l'aide de la commande @code{\tempo} ; ils seront
+retranscrits dans le fichier MIDI. La commande @code{\tempo} donne lieu
+à l'impression d'une indication métronomique que vous pouvez toutefois
+rendre invisible, comme indiqué à la rubrique
@ref{Indication métronomique}. Une autre manière de spécifier le tempo
initial pour un fichier MIDI est indiquée plus avant -- voir
@ref{Le bloc MIDI}.
y porter l'extension @code{.mid}. D'autres systèmes utilisent
l'extension @code{.midi}. Si besoin est, placez la ligne suivante au
début de votre fichier source, avant l'ouverture de tout bloc
-@code{\book}, @code{\bookpart} ou @code{\score}@tie{}:
+@code{\book}, @code{\bookpart} ou @code{\score} :
@example
#(ly:set-option 'midi-extension "midi")
Cette ligne déterminera @code{.midi} comme extension par défaut pour les
fichiers MIDI.
-Vous pouvez aussi le faire en ligne de commande@tie{}:
+Vous pouvez aussi le faire en ligne de commande :
@example
lilypond … -dmidi-extension=midi fichierLily.ly
la sorte ne permet pas de donner une valeur pour une note pointée. Vous
devrez, en pareil cas, subdiviser la note pointée en durée plus courte.
Par exemple, indiquer 90 à la noire pointée est équivalent à spécifier
-270 croches à la minute@tie{}:
+270 croches à la minute :
@example
tempoWholesPerMinute = #(ly:make-moment 270 8)
@c TODO etc
Un fichier MIDI généré par LilyPond comprendra les éléments de notation
-suivants@tie{}:
+suivants :
@itemize
@item
@item
les microtonalités -- voir @ref{Altérations}. Leur rendu nécessite
-cependant un lecteur qui prenne en charge la modulation@tie{};
+cependant un lecteur qui prenne en charge la modulation ;
@item
les accords nommés ;
@item
les trémolos, exceptés ceux utilisant la syntaxe
-@qq{@code{:}[@var{nombre}]}@tie{};
+@qq{@code{:}[@var{nombre}]} ;
@item
les liaisons de prolongation ;
les indications de nuance ;
@item
-les crescendos et decrescendos s'étalant sur plusieurs notes@tie{};
+les crescendos et decrescendos s'étalant sur plusieurs notes ;
@item
-les changements de tempo indiqués par un @code{\tempo}@tie{};
+les changements de tempo indiqués par un @code{\tempo} ;
@item
les paroles.
@end itemize
Si vous utilisez @ref{Le script Articulate}, d'autres éléments seront
-alors inclus@tie{}:
+alors inclus :
@itemize
@item articulations (lié, staccato, etc.),
@c TODO index as above
LilyPond ne peut générer d'événement MIDI pour les éléments
-suivant, sauf à utiliser @ref{Le script Articulate}@tie{}:
+suivant, sauf à utiliser @ref{Le script Articulate} :
@itemize
@item
-le rythme indiqué sous forme d'annotation (par ex. @emph{swing})@tie{};
+le rythme indiqué sous forme d'annotation (par ex. @emph{swing}) ;
@item
les changements de tempo indiqués sous forme d'annotation (sans
-@code{\tempo})@tie{};
+@code{\tempo}) ;
@item
-les staccatos et autres articulations ou ornementations@tie{};
+les staccatos et autres articulations ou ornementations ;
@item
-les liaisons d'articulation et de prhasé@tie{};
+les liaisons d'articulation et de phrasé ;
@item
-les crescendos ou decrescendos sur une seule note@tie{};
+les crescendos ou decrescendos sur une seule note ;
@item
-les trémolos indiqués par la syntaxe @qq{@code{:}[@var{nombre}]}@tie{};
+les trémolos indiqués par la syntaxe @qq{@code{:}[@var{nombre}]} ;
@item
-la basse chiffrée
+la basse chiffrée ;
@item
les accords en microtonalité.
soient mentionnée correctement dans @strong{toutes} les voix.
Lorsque l'on veut utiliser @code{\unfoldRepeats} seulement pour le rendu
-MIDI, il faut établir deux blocs @code{\score}@tie{}: un pour le MIDI,
+MIDI, il faut établir deux blocs @code{\score} : un pour le MIDI,
avec des reprises explicites, et l'autre pour la partition, avec des
reprises notées sous forme de barres de reprise, de trémolo ou de
symboles de pourcentage. Par exemple
Les valeurs extrêmes du volume MIDI des nuances se contrôlent à l'aide
des propriétés @code{midiMinimumVolume} et @code{midiMaximumVolume} qui
agissent au niveau @code{Score}. Ces propriétés sont effectives dès
-lors qu'une nuance est indiquée@tie{}; une nuance de départ est donc
+lors qu'une nuance est indiquée ; une nuance de départ est donc
requise pour que le volume soit ajusté dès le début de la partition.
Vous pouvez alors modifier la fraction correspondant à chaque nuance à
l'aide de la formule
@end example
Voici comment ajuster les nuances tout en limitant l'amplitude du volume
-entre 0,2 et 0,5@tie{}:
+entre 0,2 et 0,5 :
@lilypond[verbatim,quote]
\score {
substitution fonctionne selon le même principe que celui que nous avons
vu en début de chapitre avec @code{dynamicAbsoluteVolumeFunction}.
L'égaliseur par défaut, @notation{default-instrument-equalizer}, est
-défini dans le fichier @file{../scm/midi.scm}@tie{}; son analyse vous
+défini dans le fichier @file{../scm/midi.scm} ; son analyse vous
aidera à construire votre propre procédure.
Nous allons, dans l'exemple suivant, régler le volume relatif de la
La notation pour percussions recourt généralement à un contexte
particulier -- le @code{DrumStaff} -- qui permet d'affecter directement
-les instruments concernés au canal@tie{}10 qui leur est réservé.
+les instruments concernés au canal 10 qui leur est réservé.
Certains instruments, tels le xylophone, le marimba, le vibraphone ou
les timbales, se traitent cependant comme des instruments
@qq{classiques} puisqu'ils sont capables d'émettre des hauteurs
-différentes@tie{}; leurs notation relève donc d'un contexte @code{Staff}
+différentes ; leurs notation relève donc d'un contexte @code{Staff}
standard, et non d'un @code{DrumStaff} pour pouvoir être rendus
correctement en MIDI.
D'autres percussions, bien que n'émettant qu'un seul son et inclus dans
le standard @emph{general MIDI}, comme le tom mélodique ou le tambour
-taiko, ne sont pas attachés au canal@tie{}10. Ces instruments doivent
+taiko, ne sont pas attachés au canal 10. Ces instruments doivent
donc être saisi dans un contexte @code{Staff}, en utilisant la hauteur
appropriée.
@c TODO Expand with examples, and any other issues
@knownissues
-Le standard @emph{general MIDI} ne dispose pas du @emph{rim shot}@tie{};
+Le standard @emph{general MIDI} ne dispose pas du @emph{rim shot} ;
LilyPond lui substitue un @emph{sidestick}.
Vous obtiendrez un rendu MIDI plus @qq{réaliste} grâce au script
@code{articulate}. Celui-ci va tout faire pour d'une part prendre en
-compte les articulations (liaisons, staccato, etc.) -- en ajoutant un
+compte les articulations (liaisons, staccato etc.) -- en ajoutant un
blanc aux notes raccourcies -- et, d'autre part, développer les trilles
ou groupettos ainsi que tenir compte des éventuels rallentando et
accelerando.
@end example
puis, dans le bloc @code{\score}, indiquer que toutes les répétitions
-seront développées et appliquer la commande à votre musique@tie{}:
+seront développées et appliquer la commande à votre musique :
@example
\unfoldRepeats \articulate <<
d'articulations tels les trilles.
@knownissues
-Dans la mesure où la script @code{articulate} tend à raccourcir les
+Dans la mesure où le script @code{articulate} tend à raccourcir les
accords, certaines musiques, notamment pour l'orgue, paraîtront de moins
bonne qualité.
fichier.
@example
-lilypond fichier.ly >affichage.txt
+lilypond fichier.ly > affichage.txt
@end example
@funindex \void
l'affichant. S'il est bien pratique d'insérer un
@code{\displayLilyMusic} dans une expression musicale pour en obtenir
des informations, l'interprétation de cette expression peut toutefois
-être évitée en ajoutant un @code{\void} avant l'instruction@tie{}:
+être évitée en ajoutant un @code{\void} avant l'instruction :
@example
@{
LilyPond vous permet de sauvegarder dans un fichier séparé, sur la base
de la portée, les événements musicaux. Vous devrez pour ce faire
inclure dans votre fichier maître un fichier d'initialisation
-spécifique@tie{}:
+spécifique :
@example
\include "event-listener.ly"
@file{NOMFICHIER-unnamed-staff.notes}. Notez bien que si plusieurs
portées ne sont pas explicitement nommées, tous leurs événements seront
regroupés et mélangés dans le même fichier. Le résultat ressemblera à
-ceci@tie{}:
+ceci :
@example
0.000 note 57 4 p-c 2 12
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
-
@ignore
- Translation of GIT committish: 0f93dd92ffa0319328e58148458d22c5448b3d58
+ Translation of GIT committish: 40c0295431d0732747d0e37b7911f03fb9daca16
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
states:
"@code{layout-set-staff-size} does not change the distance between
-the
-staff lines."
+the staff lines."
Could we add a sentence:
-"Use instead the pair fontSize = #@var{N}
- \override StaffSymbol #'staff-space = #(magstep
-@var{N})
+"Use instead the pair fontSize = #@var{N}
+ \override StaffSymbol #'staff-space = #(magstep @var{N})
inside the Staff context to change the size of the font and the
-distance between
-staff lines accordingly."
+distance between staff lines accordingly."
Actually I found, that the @internalsref{StaffSymbol} at line 481
-sends to an incomplete
-documentation. The property staff-space is not explained here. I
-thought Y-extent might be of
-help, but it is in turn explained by x-space which again is
-missing from the list. Who has the
+sends to an incomplete documentation. The property staff-space is not
+explained here. I thought Y-extent might be of help, but it is in turn
+explained by x-space which again is missing from the list. Who has the
knowledge to fix this?
@translationof Spacing issues
L'agencement général d'une partition dépend de trois facteurs
-interdépendants@tie{}: la mise en page, les sauts de ligne et
-l'espacement. Les choix faits en matière d'espacement détermineront la
-densité de chacun des systèmes, ce qui influera sur le positionnement
-des sauts de ligne et, par voie de conséquence, sur le nombre de pages
-de la partition.
+interdépendants : la mise en page, les sauts de ligne et l'espacement.
+Les choix faits en matière d'espacement détermineront la densité de
+chacun des systèmes, ce qui influera sur le positionnement des sauts de
+ligne et, par voie de conséquence, sur le nombre de pages de la
+partition.
En pratique, cette procédure comporte quatre étapes. Dans un premier
temps, des distances élastiques @emph{(springs)} sont déterminées sur la
différents. Le bloc @w{@code{\paper @{@dots{}@}}} étudié à la rubrique
@ref{Mise en forme de la page} contient les réglages applicables à
l'intégralité du document -- à toutes les partitions d'un ouvrage --
-tels que format du papier, impression ou non des numéros de page, etc.
+tels que format du papier, impression ou non des numéros de page etc.
Quant au bloc @w{@code{\layout @{@dots{}@}}}, qui fait l'objet de la
rubrique @ref{Mise en forme de la partition}, il détermine la mise en
-forme de la musique@tie{}: le nombre de systèmes utilisés, l'espacement
-des regroupements de portées, etc.
+forme de la musique : le nombre de systèmes utilisés, l'espacement des
+regroupements de portées, etc.
@menu
* Mise en forme de la page::
@warning{Vous verrez au fil de ce chapitre apparaître certains termes
dont la traduction vous semblera assurément erronée. Il n'en est
-cependant rien@tie{}: certains termes techniques ont une histoire
-particulière selon leur langue d'origine. Ainsi, le vocable anglais
-@emph{Ragged} signifie en lambeau, en loques@tie{}; dans l'univers
+cependant rien : certains termes techniques ont une histoire
+particulière selon leur langue d'origine. Ainsi le vocable anglais
+@emph{Ragged} signifie en lambeau, en loques ; dans l'univers
typographique, un maître français voit un alignement à gauche -- il dira
@qq{au fer à gauche} -- alors que son homologue anglophone constate un
@emph{ragged-right} -- donc du vide à droite.}
@subsection Le bloc @code{\paper}
@translationof The @code{\paper} block
-Un bloc @code{\paper} peut apparaître au sein d'un bloc
-@code{\book}. Les réglages effectués à l'aide du bloc @code{\paper}
-s'appliqueront à l'intégralité d'un ouvrage, qui peut comporter
-plusieurs partitions (des blocs @emph{score})@tie{}; il ne doit donc en
-aucun cas se trouver dans un bloc @code{\score}. Peuvent apparaître
-dans un bloc @code{\paper}@tie{}:
+Un bloc @code{\paper} peut apparaître au sein d'un bloc @code{\book}.
+Les réglages effectués à l'aide du bloc @code{\paper} s'appliqueront à
+l'intégralité d'un ouvrage, qui peut comporter plusieurs partitions (des
+blocs @emph{score}) ; il ne doit donc en aucun cas se trouver dans un
+bloc @code{\score}. Peuvent apparaître dans un bloc @code{\paper} :
@itemize
@item
des variables propres au bloc @code{\paper} qui viendront adapter la
-mise en page, et
+mise en page,
@item
la définition des différents @emph{markups} qui personnaliseront la mise
correspondent à des dimensions sont exprimées en millimètre -- vous
pouvez bien entendu spécifier un autre système de mesure. Voici
comment, par exemple, définir la marge haute (@code{top-margin}) à dix
-millimètres@tie{}:
+millimètres :
@example
\paper @{
@}
@end example
-Si vous préférez lui affecter une valeur de 0,5@tie{}pouce, vous devrez
-mentionner le suffixe d'unité @code{\in}@tie{}:
+Si vous préférez lui affecter une valeur de 0,5 pouce, vous devrez
+mentionner le suffixe d'unité @code{\in} :
@example
\paper @{
@code{\mm} à votre code lorsque vous travaillez en millimètres.
Vous pouvez aussi définir les valeurs du bloc @code{\paper} à l'aide de
-fonctions Scheme. Voici l'équivalent de l'exemple précédent@tie{}:
+fonctions Scheme. Voici l'équivalent de l'exemple précédent :
@example
\paper @{
@translationof Setting the paper size
LilyPond génère par défaut, et en l'absence de mention explicite d'un
-format de papier, un fichier imprimable au format@tie{}A4. Vous pouvez
+format de papier, un fichier imprimable au format A4. Vous pouvez
cependant utiliser un autre format à l'aide des deux fonctions
-@code{set-default-paper-size},
-alors que
-@code{set-paper-size} se place à l'intérieur d'un bloc
-@code{\paper}@tie{}:
+@code{set-default-paper-size}, alors que @code{set-paper-size} se place
+à l'intérieur d'un bloc @code{\paper} :
@example
#(set-default-paper-size "quarto")
format pour toutes les pages, alors que @code{set-paper-size} détermine
le format des feuilles rattachées à un bloc @code{\paper} particulier.
Ainsi, lorsque le bloc @code{\paper} se trouve en tête de fichier, le
-format du papier s'appliquera à toutes les pages@tie{}; si @code{\paper}
+format du papier s'appliquera à toutes les pages ; si @code{\paper}
apparaît dans un bloc @code{\book}, la taille ne s'appliquera qu'au
@emph{book} en question.
La commande suivante, inscrite dans votre fichier, vous permettra
d'ajouter votre format personnalisé à ceux déjà connus, puis d'y faire
appel à l'aide des fonctions @code{set-default-paper-size} et
-@code{set-paper-size}@tie{}:
+@code{set-paper-size} :
@example
#(set! paper-alist (cons '("mon format" . (cons (* 15 in) (* 3 in))) paper-alist))
@funindex top-margin
La marge entre le bord supérieur de la feuille et la surface imprimable.
-Elle est fixée par défaut à@tie{}@code{5\mm} et s'ajustera selon le
+Elle est fixée par défaut à @code{5\mm} et s'ajustera selon le
format de papier.
@item bottom-margin
@funindex bottom-margin
La marge entre la surface imprimable et le bord inférieur de la feuille.
-Elle est fixée par défaut à@tie{}@code{6\mm} et s'ajustera selon le
+Elle est fixée par défaut à @code{6\mm} et s'ajustera selon le
format de papier.
@item ragged-bottom
L'activation de cette variable permet de ne pas répartir verticalement
les systèmes sur les pages hormis la dernière. La valeur par défaut
-est@tie{}@code{#f}. Lorsque la partition ne comporte que deux ou trois
+est @code{#f}. Lorsque la partition ne comporte que deux ou trois
systèmes par page, comme pour un conducteur d'orchestre, nous vous
conseillons d'activer cette variable.
La désactivation de cette variable permet de répartir verticalement les
systèmes de la dernière page d'une partition. La valeur par défaut
-est@tie{}@code{#t}. Nous vous conseillons, lorsque des pièces couvrent
+est @code{#t}. Nous vous conseillons, lorsque des pièces couvrent
deux pages ou plus, de désactiver cette variable.@*
Notez bien que la variable @code{ragged-last-bottom} affecte aussi la
dernière page de chacune des parties -- créées à l'aide d'un bloc
@knownissues
Les titrages (contenus dans le bloc @code{\header@{@}}) sont considérés
-comme des systèmes à part entière@tie{}; ils seront donc affectés par
+comme des systèmes à part entière ; ils seront donc affectés par
@code{ragged-bottom} et @code{ragged-last-bottom}, qui éventuellement
ajouteront de l'espace avant le premier système de la partition.
@translationof Structure of flexible vertical spacing alists
Chacune de ces variables attachées au bloc @code{\paper} est constituée
-d'une liste associative @emph{(alist)} à quatre @i{clés}@tie{}:
+d'une liste associative @emph{(alist)} à quatre @i{clés} :
@itemize
double de celui d'une autre, elle pourra s'étirer deux fois plus que
cette dernière. Il ne saurait être négatif. La valeur @code{+inf.0}
provoque une @code{programming_error} (erreur de programmation) et est
-ignorée@tie{}; vous pouvez toutefois utiliser @code{1.0e7} pour obtenir
+ignorée ; vous pouvez toutefois utiliser @code{1.0e7} pour obtenir
une valeur proche de l'infini. Lorsque cette @i{clé} n'est pas définie,
sa valeur est par défaut égale à @code{space}. Notez bien que
-l'utilisateur ne peut définir une propension à la compression@tie{};
+l'utilisateur ne peut définir une propension à la compression ;
elle est en fait égale à
-(@code{basic-distance}@tie{}@minus{}@tie{}@code{minimum-distance}).
+(@code{basic-distance} @minus{} @code{minimum-distance}).
@end itemize
@funindex left-margin
la marge entre le bord gauche de la feuille et le début de chaque
-système. La valeur par défaut est de@tie{}@code{10\mm}@tie{}; elle sera
+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{left-margin}, cette dernière sera alors égale à
-@code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}right-margin)}.
+@code{(paper-width @minus{} line-width @minus{} right-margin)}.
Lorsque seule @code{line-width} est définie, les deux marges
correspondent à
-@code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)}, ce
+@code{((paper-width @minus{} line-width) / 2)}, ce
qui a pour effet de centrer les systèmes sur la page. Voir aussi
@code{check-consistency}.
La marge entre le bord droit de la page et la fin des systèmes en pleine
largeur (non @emph{ragged}). La valeur par défaut est
-de@tie{}@code{10\mm} et s'ajustera selon le format du papier. Lorsque
+de @code{10\mm} et s'ajustera selon le format du papier. Lorsque
vous définissez @code{line-width} et @code{left-margin}, sans modifier
la valeur de @code{right-margin}, cette dernière sera alors égale à
-@code{(paper-width@tie{}@minus{}@tie{}line-width@tie{}@minus{}@tie{}left-margin)}.
+@code{(paper-width @minus{} line-width @minus{} left-margin)}.
Lorsque seule @code{line-width} est définie, les deux marges
correspondent à
-@code{((paper-width@tie{}@minus{}@tie{}line-width)@tie{}/@tie{}2)}, ce
+@code{((paper-width @minus{} line-width) / 2)}, ce
qui a pour effet de centrer les systèmes sur la page. Voir aussi
@code{check-consistency}.
Lorsqu'elle est activée, cette variable vérifie que @code{left-margin},
@code{line-width} et @code{right-margin} sont en cohérence, et que
l'addition de ces trois éléments ne dépassera pas la largeur du papier
-(@code{paper-width}). La valeur par défaut est@tie{}@code{#t}. Dans
+(@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).
Lorsqu'elle est activée, cette variable permet de ne pas étendre le
dernier système de façon à occuper toute la longueur de la ligne. La
-valeur par défaut est@tie{}@code{#f}. Cette variable peut aussi
+valeur par défaut est @code{#f}. Cette variable peut aussi
se gérer au sein d'un bloc @code{\layout}.
@end table
@code{outer-margin} ainsi que @code{binding-offset} détermineront les
différentes marges selon qu'il s'agit d'une page paire ou impaire.
Cette variable s'applique en lieu et place de @code{left-margin} et
-@code{right-margin}. La valeur par défaut est@tie{}@code{#f}.
+@code{right-margin}. La valeur par défaut est @code{#f}.
@item inner-margin
@funindex inner-margin
avoir du côté intérieur. Bien entendu, cette variable n'est
effective que lorsque vous comptez générer un fichier imprimable en
recto-verso -- propriété @code{two-sided} définie à vrai. La valeur par
-défaut est de@tie{}@code{10\mm} et s'ajustera selon le format du papier.
+défaut est de @code{10\mm} et s'ajustera selon le format du papier.
@item outer-margin
@funindex outer-margin
avoir du côté extérieur -- opposé à la reliure. Bien entendu, cette
variable n'est effective que lorsque vous comptez générer un fichier
imprimable en recto-verso -- propriété @code{two-sided} définie à vrai.
-La valeur par défaut est de@tie{}@code{20\mm} et s'ajustera selon le
+La valeur par défaut est de @code{20\mm} et s'ajustera selon le
format du papier.
@item binding-offset
rien ne soit masqué par la reliure. Bien entendu, cette variable n'est
effective que lorsque vous comptez générer un fichier imprimable en
recto-verso -- propriété @code{two-sided} définie à vrai. La valeur par
-défaut est de@tie{}@code{0} et s'ajustera selon le format du papier.
+défaut est de @code{0} et s'ajustera selon le format du papier.
@end table
Tous les systèmes, ainsi que les titres et séparateurs de systèmes,
seront poussés d'autant vers la droite. la valeur par défaut est
-de@tie{}@code{0.0}.
+de @code{0.0}.
@item indent
@funindex indent
Le niveau d'indentation du premier système d'une partition. La valeur
-par défaut est de@tie{}@code{15\mm} et s'ajustera selon le format du
+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}.
@funindex short-indent
Le niveau d'indentation de tous les systèmes hormis le premier. La
-valeur par défaut est de@tie{}@code{0}, et s'ajustera selon le format du
+valeur par défaut est de @code{0}, et s'ajustera selon le format du
papier dès lors que vous lui affecterez une valeur. Cette variable peut
aussi se gérer au sein d'un bloc @code{\layout}.
Pénalité pour apparition d'une page blanche entre deux partitions. Sa
valeur est par défaut inférieure à celle de
-@code{blank-page-force}@tie{}; nous préférons qu'une page blanche
+@code{blank-page-force} ; nous préférons qu'une page blanche
s'insère après la fin de la partition plutôt qu'au milieu.
@item blank-last-page-force
@funindex blank-last-page-force
Pénalité pour fin de partition intervenant sur une page impaire. La
-valeur par défaut est de@tie{}@code{0}.
+valeur par défaut est de @code{0}.
@item blank-page-force
@funindex blank-page-force
Pénalité pour apparition d'une page blanche en cours de partition.
L'algorithme @code{ly:optimal-breaking} n'en tiendra pas compte
puisqu'il ne conçoit pas la présence d'une page blanche au milieu d'une
-partition. La valeur par défaut est de@tie{}@code{5}.
+partition. La valeur par défaut est de @code{5}.
@item page-breaking
@funindex page-breaking
fonctionnalité est activée, l'algorithme des sauts de page décidera de
lui-même si le premier numéro sera pair ou impair, ce qui se traduira
par un éventuel incrément de un. La valeur par défaut
-est@tie{}@code{#f}.
+est @code{#f}.
@item first-page-number
@funindex first-page-number
Le numéro de la première page. La valeur par défaut est
-de@tie{}@code{#1}.
+de @code{#1}.
@item print-first-page-number
@funindex print-first-page-number
Cette variable permet d'imprimer le numéro de page y compris sur la
-première. La valeur par défaut est@tie{}@code{#f}.
+première. La valeur par défaut est @code{#f}.
@item print-page-number
@funindex print-page-number
La désactivation de cette variable permet d'obtenir des pages non
-numérotées. La valeur par défaut est@tie{}@code{#t}.
+numérotées. La valeur par défaut est @code{#t}.
@end table
Cette variable définit l'importance relative des espacements entre la
page (verticalité) et la ligne (horizontalité). Une valeur élevée
privilégiera l'espacement au niveau de la page. La valeur par défaut
-est de@tie{}@code{10}.
+est de @code{10}.
@item print-all-headers
@funindex print-all-headers
Lorsque cette variable est activée, l'intégralité des champs d'entête
sera imprimée pour chaque bloc @code{\score}, plutôt que les seuls
champs @code{piece} et @code{opus}. La valeur par défaut
-est@tie{}@code{#f}.
+est @code{#f}.
@item system-separator-markup
@funindex system-separator-markup
Cette variable n'est pas définie par défaut. La commande
@code{\slashSeparator} -- définie dans le fichier
@file{ly/titling-init.ly} -- fournit un @emph{markup} relativement
-courant@tie{}:
+courant :
@lilypond[quote,verbatim,noragged-right,line-width=30\mm]
#(set-default-paper-size "a8")
@code{\layout} indépendant se placera en tête de fichier. Dans le cas
où la mise en forme concerne une partition en particulier, un bloc
@code{\layout} se placera au sein du bloc @code{\score} en question.
-Sont susceptibles d'apparaître dans un bloc @code{\layout}@tie{}:
+Sont susceptibles d'apparaître dans un bloc @code{\layout} :
@itemize
@item
@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
-@code{\layout} sont@tie{}:
+@code{\layout} sont :
@itemize
indent = 2\cm
\context @{
\StaffGroup
- \override StaffGrouper #'staff-staff-spacing #space = #8
+ \override StaffGrouper #'staff-staff-spacing #'basic-distance = #8
@}
\context @{
\Voice
@}
@end example
+Il est tout à fait possible que plusieurs blocs @code{\layout}
+cohabitent en tant qu'expressions de niveau supérieur. Ceci se révèle
+particulièrement utile lorsque différents réglages sont stockés dans des
+fichiers séparés qui sont inclus au besoin. Lorsqu'un bloc
+@code{\layout} est évalué, une copie de la configuration du
+@code{\layout} actuel est réalisée en interne, augmentée des
+aménagements apportés. Bien qu'on puisse considérer que le contenu des
+différents blocs @code{\layout} se cumule, c'est la dernière adaptation
+qui aura préséance en cas de situation conflictuelle -- cas typique
+d'une même propriété modifiée dans différents blocs.
+
+Par exemple, placer le bloc suivant
+
+@example
+\layout @{
+ \context @{
+ \Voice
+ \override TextScript #'color = #magenta
+ \override Glissando #'thickness = #1.5
+ @}
+@}
+@end example
+
+après celui de l'exemple précédent aura pour effet de cumuler les
+adaptations de @code{'padding} et @code{'color} pour l'objet
+@code{TextScript}, mais la dernière adaptation apportée à la propriété
+@code{'thickness} de @code{Glissando} remplace, ou masque, celle
+précédemment établie.
+
+Les blocs @code{\layout} peuvent faire l'objet de variables, aux fins de
+les utiliser ultérieurement. Ceci requiert toutefois une attention
+particulière dans la mesure où cette manière de procéder n'est pas
+équivalente à un définition complète et globale.
+
+Lorsque nous définissons la variable suivante,
+
+@example
+layoutVariable = \layout @{
+ \context @{
+ \Voice
+ \override NoteHead #'font-size = #4
+ @}
+@}
+@end example
+
+qui contient une configuration de @code{\layout} avec
+l'adaptation @code{NoteHead #'font-size}, cette combinaison n'est pas
+enregistrée en tant que configuration courante. Notez bien que la
+« configuration courante » est lue lorsque la variable est définie, non
+lorsqu'elle est utilisée ; par voie de conséquence, le contenu de la
+variable dépend de l'endroit où elle se trouve dans le code source.
+
+Notre variable peut alors être utilisée au sein d'un autre bloc
+@code{\layout}, comme par exemple :
+
+@example
+\layout @{
+ \layoutVariable
+ \context @{
+ \Voice
+ \override NoteHead #'color = #red
+ @}
+@}
+@end example
+
+Un bloc @code{\layout} qui contient une variable comme ci-dessus, ne
+recopie pas la configuration actuelle ; il utilise en fait le contenu de
+@code{layoutVariable} en tant que configuration de base pour les
+adaptations ultérieures, en conséquence de quoi toute modification
+intervenant entre la définition et l'utilisation de la variable sera
+perdue.
+
+Si @code{layoutVariable} est définie, ou rapatriée par un
+@code{\indude}, juste avant d'être utilisée, son contenu devient la
+configuration actuelle augmentée des adaptations que la variable
+contient. Considérant l'exemple d'utilisation de @code{layoutVariable}
+ci-dessus, le bloc @code{\layout} final contiendra donc :
+
+@example
+ TextScript #'padding = #1
+ TextScript #'color = #magenta
+ Glissando #'thickness = #1.5
+ NoteHead #'font-size = #4
+ NoteHead #'color = #red
+@end example
+
+ainsi que les adaptations à @code{indent} et @code{StaffGrouper}.
+
+Cependant, si la variable avait été définie bien avant le premier bloc
+@code{\layout}, la configuration actuelle ne contiendrait que
+
+@example
+ NoteHead #' font-size= #4 % (written in the variable definition)
+ NoteHead #' color = #red % (added after the use of the variable)
+@end example
+
+Une gestion attentive des variables de @code{\layout} se révèle être un
+outil précieux dans la mise en forme des sources et le retour à une
+configuration donnée.
+
@seealso
Manuel de notation :
@ref{Modification des réglages par défaut d'un contexte}.
@funindex layout file
La @strong{taille de portée} @emph{(staff size)} est fixée par défaut à
-20@tie{}points. Il existe deux manières de la modifier@tie{}:
+20 points. Il existe deux manières de la modifier :
La taille des portées peut se définir globalement pour toutes les
partitions d'un même fichier, ou plus précisément d'un bloc
@end example
@noindent
-Ceci définit donc la hauteur des portées à 14@tie{}points par
-défaut@tie{}; toutes les fontes seront ajustées en conséquence.
+Ceci définit donc la hauteur des portées à 14 points par
+défaut ; toutes les fontes seront ajustées en conséquence.
Vous pouvez aussi spécifier une taille à une partition en particulier en
-procédant comme ci-dessous@tie{}:
+procédant comme ci-dessous :
@example
\score@{
La fonte Feta fournit les symboles musicaux dans huit tailles
différentes. Chaque fonte correspond à une hauteur particulière de
-portée@tie{}; les petites tailles comportent des symboles plus épais
+portée ; les petites tailles comportent des symboles plus épais
pour être cohérent avec l'épaisseur relativement plus importante des
lignes de la portée. Le tableau suivant répertorie les différentes
tailles de police.
Vous pouvez cependant insérer l'instruction @code{\break} à l'endroit où
vous le jugez utile pour @qq{forcer} le passage à la ligne
-suivante@tie{}:
+suivante :
@lilypond[quote,ragged-right,relative=2,verbatim]
c4 c c c | \break
@end lilypond
Par défaut, un saut de ligne ne saurait intervenir au beau milieu d'une
-mesure@tie{}; LilyPond vous le signalera par un message si tel était le
+mesure ; LilyPond vous le signalera par un message si tel était le
cas. Si d'aventure vous voulez forcer un saut de ligne en l'absence de
barre de mesure, vous devrez auparavant insérer une barre invisible -- à
-l'aide de @code{\bar@tie{}""}.
+l'aide de @code{\bar ""}.
@lilypond[quote,ragged-right,relative=2,verbatim]
c4 c c
L'instruction @code{\break} sera alors opérationnelle si vous avez
auparavant désactivé le @code{Forbid_line_break_engraver} du contexte
@code{Voice} concerné. Notez bien que les sauts de ligne forcés doivent
-être saisis au sein d'une expression polyphonique@tie{}:
+être saisis au sein d'une expression polyphonique :
@lilypond[quote,ragged-right,verbatim]
\new Voice \with {
@code{\repeat} vous permettra de positionner des sauts de ligne à
intervalle régulier. Par exemple, les 28 mesures de ce qui suit, si
l'on est à 4/4, seront coupées toutes les quatre mesures, pas
-ailleurs@tie{}:
+ailleurs :
@example
<<
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é@tie{}: @code{ragged-bottom} et
+équivalents au niveau de la verticalité : @code{ragged-bottom} et
@code{ragged-last-bottom}. Lorsqu'ils sont tous deux activés --
affectés de @code{#t} -- les systèmes ne seront pas répartis sur les
pages y compris la dernière. Pour de plus amples détails, reportez-vous
à @ref{Variables d'espacement vertical fixe}.
Les sauts de page sont générés par la fonction @code{page-breaking}.
-LilyPond dispose de trois différents algorithmes en la matière@tie{}:
+LilyPond dispose de trois différents algorithmes en la matière :
@code{ly:optimal-breaking}, @code{ly:page-turn-breaking} et
@code{ly:minimal-breaking}. C'est @code{ly:optimal-breaking} qui est
activé par défaut, mais rien ne vous empêche d'en changer, par
-l'intermédiaire du bloc @code{\paper}@tie{}:
+l'intermédiaire du bloc @code{\paper} :
@example
\paper @{
pages, la gestion des sauts de page finit par devenir très gourmande,
tant au niveau du processeur que de la mémoire. Vous pouvez cependant
alléger la charge en recourant à des blocs @code{\bookpart} afin de
-sectionner l'ouvrage que vous traitez@tie{}; les sauts de page seront
+sectionner l'ouvrage que vous traitez ; les sauts de page seront
alors gérés individuellement au niveau de chacune des parties. Par
ailleurs, cela vous autorisera une gestion différente selon les
sections.
vous mentionnerez dans un contexte de voix ou de portée. Ce graveur de
tournes recherchera dans le contexte en question les passages sans note.
Notez bien qu'il ne recherche pas des silences, mais l'absence de
-notes@tie{}; autrement dit, il ne restera pas inactif dans le cadre
+notes ; autrement dit, il ne restera pas inactif dans le cadre
d'une portée polyphonique dont l'une des parties contiendrait des
silences. Lorsqu'il rencontre un fragment suffisamment long ne
contenant aucune note, il insère un @code{\allowPageTurn} à la barre
@code{minimumPageTurnLength} pour déterminer quelle doit être la
longueur d'un fragment sans note avant une tourne. La valeur par
défaut de @code{minimumPageTurnLength} est
-@code{(ly:make-moment@tie{}1@tie{}1)}, soit une ronde, et s'ajuste de
-la manière suivante@tie{}:
+@code{(ly:make-moment 1 1)}, soit une ronde, et s'ajuste de
+la manière suivante :
@example
\new Staff \with @{ \consists "Page_turn_engraver" @}
lorsque les autres fonctions de gestion des sauts de page ralentissent
nettement le traitement, sont trop gourmandes en mémoire ou qu'il y a
beaucoup de texte. Il suffit de la mentionner au sein du bloc
-@code{\paper}@tie{}:
+@code{\paper} :
@example
\paper @{
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@tie{}:
+avec ces deux instructions dérogatoires :
@example
\override NonMusicalPaperColumn #'line-break-permission = ##f
@cindex vertical, espacement
@cindex espacement vertical
-L'espacement vertical dépend de trois éléments@tie{}: la surface
+L'espacement vertical dépend de trois éléments : la surface
disponible -- par exemple format de papier et marges --, l'espace qui
doit séparer les systèmes, et l'espace qui sépare les portées d'un même
système.
@cindex espacement au sein d'un système
LilyPond dispose de trois différents mécanismes permettant de contrôler
-l'espacement au sein d'un système selon trois catégories@tie{}:
+l'espacement au sein d'un système selon trois catégories :
@itemize
Le nom de ces propriétés, sauf @code{staff-affinity}, suit le schéma
@code{@var{item1}-@var{item2}-spacing} -- @code{@var{item1}} et
@code{@var{item2}} étant les éléments à espacer. Notez bien que
-@code{@var{item2}} n'est pas forcément placé au-dessous@tie{}: c'est le
+@code{@var{item2}} n'est pas forcément placé au-dessous : c'est le
cas pour la propriété @code{nonstaff-relatedstaff-spacing} qui spécifie
la distance entre une ligne de non-portée alors que sa
@code{staff-affinity} a été déterminée à @code{UP}.
l'interligne médian si @code{line-count} est pair.
Quant aux lignes rattachées à des portées -- lignes de non-portée -- le
tableau suivant présente le @i{point de référence} pour chacune
-d'elles@tie{}:
+d'elles :
@multitable {Non-staff line} {Reference point}
@headitem Ligne de non-portée @tab Point de référence
@item @code{FretBoards} @tab ligne supérieure
@end multitable
-En voici une représentation graphique@tie{}:
+En voici une représentation graphique :
@c KEEP LY
@lilypond[quote,noragged-right,line-width=110\mm]
@end example
La modification d'un espacement au niveau global se mentionne au sein du
-bloc @code{\layout}@tie{}:
+bloc @code{\layout} :
@example
\layout @{
En tout état de cause, la fonction Scheme @code{staff-staff-spacing}
d'un @code{VerticalAxisGroup} affectera les propriétés du
-@code{StaffGrouper} si la portée est incluse dans un regroupement@tie{};
+@code{StaffGrouper} si la portée est incluse dans un regroupement ;
elle s'appliquera au @code{default-staff-staff-spacing} en l'absence de
regroupement. Les portées peuvent donc s'aligner différemment selon
qu'elles sont ou non regroupées. Pour obtenir le même espacement sans
@code{staff-affinity} définie à @code{UP}. De la même manière, lorsque
cette ligne surplombe un système, sa @code{staff-affinity} devrait être
définie à @code{DOWN}. Prenez garde à la valeur que vous affectez à
-@code{staff-affinity}@tie{}: si vous affectez la valeur @code{#f} à
+@code{staff-affinity} : si vous affectez la valeur @code{#f} à
une ligne de non-portée, cette ligne sera considérée comme étant une
-portée@tie{}; à l'inverse, utiliser la propriété @code{staff-affinity}
+portée ; à l'inverse, utiliser la propriété @code{staff-affinity}
pour une portée lui fera perdre cette qualité.
@c TODO: verify last clause below ("even if other...")
une portée.
L'espacement de ces @i{portées isolées} est géré par les propriétés
-suivantes@tie{}:
+suivantes :
@itemize
@item Propriétés du @code{VerticalAxisGroup} :
une ou plusieurs portées.
L'espacement entre les portées d'un même regroupement est géré par les
-propriétés suivantes@tie{}:
+propriétés suivantes :
@itemize
@item Propriétés du @code{VerticalAxisGroup} :
L'exemple suivant illustre la manière de gérer l'espacement de portées
regroupées, à l'aide des propriétés de l'objet graphique
-@code{StaffGrouper}@tie{}:
+@code{StaffGrouper} :
@lilypond[verbatim,quote,staffsize=16]
\layout {
objet de rendu @code{VerticalAxisGroup}.
L'espacement des lignes de non-portée est géré par les propriétés
-suivantes@tie{}:
+suivantes :
@itemize
@item Propriétés du @code{VerticalAxisGroup} :
positionnement vertical absolu sur la page.
@code{NonMusicalPaperColumn #'line-break-system-details} prend en charge
-une liste associative de trois mises au point@tie{}:
+une liste associative de trois mises au point :
@itemize
@item @code{X-offset}
Les dérogations en matière d'objet graphique, y compris celles
concernant les @code{NonMusicalPaperColumn} ci-dessus, peuvent se placer
-à trois différents endroits de votre fichier source@tie{}:
+à trois différents endroits de votre fichier source :
@itemize
@item directement au beau milieu des notes
@code{\with}. Dans le cas ou il est stipulé au fil des notes, c'est la
commande spécifique @code{\overrideProperty} qui doit intervenir. Voici
quelques exemples de réglages de @code{NonMusicalPaperColumn} à l'aide
-de la commande @code{\overrideProperty}@tie{}:
+de la commande @code{\overrideProperty} :
@example
\overrideProperty NonMusicalPaperColumn
Cette partition isole les informations de saut de ligne ou de page dans
une voix spécifique. La mise en forme est ainsi séparée des événements
-musicaux@tie{}; ceci nous permettra d'y voir plus clair au fur et à
+musicaux ; ceci nous permettra d'y voir plus clair au fur et à
mesure que nous avancerons. Pour plus de précisions, relisez
@ref{Recours à une voix supplémentaire pour gérer les sauts}.
par défaut. Nous pouvons, afin de fixer explicitement le point
d'attache vertical de chacun des systèmes, définir un doublet
@code{Y-offset} en tant qu'attribut du @code{line-break-system-details}
-de l'objet @code{NonMusicalPaperColumn}@tie{}:
+de l'objet @code{NonMusicalPaperColumn} :
@lilypond[verbatim,quote,staffsize=16]
\header { tagline = ##f }
}
@end lilypond
-Quelques points à prendre en considération@tie{}:
+Quelques points à prendre en considération :
@itemize
@item
matière de notation musicale appartiennent à la portée, et que
d'autres se placent en dehors de la portée. Entre autres objets
externes, nous avons les marques repères, les textes et les
-nuances@tie{}; nous les appellerons @qq{objets extérieurs à la portée}.
+nuances ; nous les appellerons @qq{objets extérieurs à la portée}.
La règle adoptée par LilyPond pour positionner verticalement ces
objets extérieurs consiste à les placer au plus près de la portée
tout en prenant garde d'éviter qu'il y ait chevauchement.
LilyPond utilise la propriété @code{outside-staff-priority} afin de
-déterminer si un objet est ou non un objet extérieur à la portée@tie{}:
+déterminer si un objet est ou non un objet extérieur à la portée :
lorsque la valeur de @code{outside-staff-priority} est numérique, il
s'agit d'un objet extérieur à la portée. De plus, la propriété
@code{outside-staff-priority} indique à LilyPond l'ordre dans lequel ces
longues. Les durées les plus courtes se verront attribuer un espace
fixe, contrôlé par la propriété @code{shortest-duration-space} de
l'objet @rinternals{SpacingSpanner}. Au plus la durée s'allonge, au
-plus elle prendra d'espace@tie{}: le doublement d'une durée attribuera à
+plus elle prendra d'espace : le doublement d'une durée attribuera à
la note un espace fixé d'après la propriété @code{spacing-increment}.
L'exemple suivant comporte des blanches, des noires et un certain nombre
de croches. La croche est suivie d'un espace de la largeur d'une tête
-de note@tie{}; pour la noire , cet espace est de deux têtes@tie{}; il
+de note ; pour la noire , cet espace est de deux têtes ; il
est de trois pour la blanche.
@lilypond[quote,verbatim,relative=1]
c8 c4 c4 c4
@end lilypond
-@code{spacing-increment} est normalement défini à 1,2@tie{}espace de
+@code{spacing-increment} est normalement défini à 1,2 espace de
portée -- ce qui correspond à peu près à la largeur d'une tête de note
-- et @code{shortest-duration-space} à 2,0. La note la plus courte
-s'étendra donc sur l'équivalent de 2,4@tie{}espaces de portée (2 fois le
+s'étendra donc sur l'équivalent de 2,4 espaces de portée (2 fois le
@code{spacing-increment}). Le point de départ de cet espace se situe à
-l'extrémité gauche du symbole@tie{}; la note la plus courte est donc
+l'extrémité gauche du symbole ; la note la plus courte est donc
suivie en général d'un espace égal à la largeur d'une tête de note.
Si l'on suit à la lettre ce qui précède, ajouter une simple triple
croche à une partition qui comporte déjà des croches et des doubles
-augmentera considérablement son volume@tie{}: la durée la plus
+augmentera considérablement son volume : la durée la plus
courte n'est plus la double mais la triple croche, ce qui aura
pour conséquence d'ajouter une largeur de tête à chacune des notes.
Pour s'affranchir de cet effet quelque peu pervers, la durée la plus
Les notes plus courtes que la note témoin sont suivies d'un espace
proportionnel à la durée témoin. Si donc nous ajoutions quelques
doubles croches à l'exemple précédent, elles seraient suivies d'une
-demie largeur de tête@tie{}:
+demie largeur de tête :
@lilypond[quote,verbatim,relative=2]
c2 c4. c8 c4. c16[ c] c4. c8 c8 c8 c4 c4 c4
@knownissues
Il n'existe pas de mécanisme simple et efficace qui permette de
forcer manuellement l'espacement. La solution ci-dessous permet
-cependant @qq{d'aérer} artificiellement une partition@tie{}; il vous
+cependant @qq{d'aérer} artificiellement une partition ; il vous
suffit d'ajuster la valeur du décalage @emph{(padding)} autant que de
besoin.
@example
paramètres d'espacement.
Dans l'exemple qui suit, le changement de métrique marque le début
-d'une nouvelle partie@tie{}; remarquez comme les doubles-croches sont
-alors plus espacées@tie{}:
+d'une nouvelle partie ; remarquez comme les doubles-croches sont
+alors plus espacées :
@lilypond[relative,verbatim,quote]
\time 2/4
applique les réglages par défaut, alors que la seconde bénéficie
d'ajustement de la propriété @code{base-shortest-duration}. Au plus la
valeur de @code{ly:make-moment} est grande, au plus la musique sera
-resserrée. En effet, @code{ly:make-moment} construit une durée@tie{}:
+resserrée. En effet, @code{ly:make-moment} construit une durée :
@w{@code{1 4}} est plus long que @w{@code{1 16}}.
@lilypond[verbatim,line-width=12\cm]
L'activation du commutateur @code{strict-note-spacing} permet d'espacer
les notes sans tenir compte des clefs, barres de mesure ou notes
-d'ornement qui pourraient apparaître@tie{}:
+d'ornement qui pourraient apparaître :
@lilypond[quote,ragged-right,relative=2,verbatim]
\override Score.SpacingSpanner #'strict-note-spacing = ##t
@c Bit verbose and vague, use examples?
Deux réglages de bases ont une influence considérable sur
-l'espacement@tie{}: @code{line-width} et @code{indent}. Tous deux se
+l'espacement : @code{line-width} et @code{indent}. Tous deux se
placent dans le bloc @code{\layout}. Ils contrôleront la longueur des
lignes et l'indentation de la première.
@code{proportionalNotationDuration} est une propriété attachée au
contexte @code{Score}. Rappelez-vous que vous pouvez régler les
propriétés d'un contexte à trois différents endroits de votre
-fichier@tie{}: dans un bloc @code{\with}, dans un bloc @code{\context}
+fichier : dans un bloc @code{\with}, dans un bloc @code{\context}
ou au beau milieu de la musique à l'aide de la commande @code{\set}.
Vous pouvez donc définir @code{proportionalNotationDuration} selon l'une
de ces trois façons, à l'instar de n'importe quelle définition de
La propriété @code{proportionalNotationDuration} prend en unique
argument la durée de référence qui servira de base pour espacer toute la
musique. La fonction Scheme @code{make-moment} intégrée à LilyPond
-prend deux arguments@tie{}: un numérateur et un dénominateur qui
+prend deux arguments : un numérateur et un dénominateur qui
représentent une fraction de ronde. L'appel de
@w{@code{(ly:make-moment 1 20)}} produit donc une durée de référence
égale à un vingtième de ronde. Vous pourriez tout aussi bien utiliser
@code{proportionalNotationDuration}. Il faut en l'occurrence procéder par
tâtonnement, en commençant par une valeur proche de la note la plus
rapide (la durée la plus courte) du morceau. Au plus la durée de
-référence est petite, au plus la musique sera étalée@tie{}; à l'inverse,
+référence est petite, au plus la musique sera étalée ; à l'inverse,
une durée de référence élevée produira une musique resserrée.
@lilypond[quote,verbatim,ragged-right]
au contexte @code{Score}. Tout comme pour la propriété
@code{proportionalNotationDuration}, les réglages du
@code{SpacingSpanner} peuvent se faire à trois différents endroits de
-votre fichier@tie{}: dans un bloc @code{\with}, dans un bloc
+votre fichier : dans un bloc @code{\with}, dans un bloc
@code{\context} ou au beau milieu de la musique à l'aide de la
commande @code{\set}.
Intéressons-nous maintenant au @code{Separating_line_group_engraver},
qui est désactivé pour la plupart des partitions en notation
proportionnelle. Voici ce qui apparaît dans une partition
-traditionnelle@tie{}: il y a toujours un @qq{espace préservé} juste
+traditionnelle : il y a toujours un @qq{espace préservé} juste
avant la première note de chaque portée.
@lilypond[quote,verbatim,ragged-right]
@qq{consomment} de l'espace. Différentes approches permettent
cependant de gérer ce problème.
-Éviter les problèmes d'espacement avec l'armure est chose aisée@tie{}:
-il suffit qu'il n'y en ait pas@tie{}! C'est bien souvent le cas en
+Éviter les problèmes d'espacement avec l'armure est chose aisée :
+il suffit qu'il n'y en ait pas ! C'est bien souvent le cas en
musique contemporaine, où l'on trouve le plus d'ouvrages en notation
proportionnelle. Il en va de même pour la métrique, et tout
particulièrement lorsque la partition comporte un quadrillage temporel
L'une des options permettant de s'affranchir de l'espacement dû aux
éléments non musicaux consiste en l'activation de la propriété
@code{strict-note-spacing} attachée au @code{SpacingSpanner}. Observons
-les deux portées suivantes@tie{}:
+les deux portées suivantes :
@lilypond[quote,verbatim,ragged-right]
\new Staff {
@section Réduction du nombre de pages de la partition
@translationof Fitting music onto fewer pages
-Vous pourriez un jour être confronté au problème suivant@tie{}: l'une
+Vous pourriez un jour être confronté au problème suivant : l'une
des pages de votre partition ne comporte que deux portées alors que --
ce qui est d'autant plus frustrant -- l'espace libre sur les autres
pages aurait permis une distribution différente.
Le meilleur moyen d'appréhender les différentes variables de
dimensionnement vertical sur lesquelles vous pouvez jouer au niveau de
la mise en page, consiste à activer, au sein du bloc @code{\paper}, la
-fonction @code{annotate-spacing}@tie{}:
+fonction @code{annotate-spacing} :
@c need to have \book{} otherwise we get the separate systems. -hwn
@lilypond[verbatim,quote]
Toutes les dimensions sont exprimées en espace de portée
@emph{(staff-space)} quelle que soit l'unité mentionnée dans les blocs
@code{\paper} ou @code{\layout}. Dans cet exemple, la hauteur de la
-feuille (@code{paper-height}) est de 59,75@tie{}espaces de portée
+feuille (@code{paper-height}) est de 59,75 espaces de portée
(@code{staff-spaces}) et la taille de portée (@code{staff-size}) de
-20@tie{}points -- sa valeur par défaut. Notez que@tie{}:
+20 points -- sa valeur par défaut. Notez que :
@multitable {1 staff-space} {staff-size)/4 * (25,4/72,27) mm}
@noindent
Dans le cas qui nous occupe, un @code{staff-space} égale environ
-1,757@tie{}millimètres. Les 59,75@tie{}@code{staff-spaces} de
-@code{paper-height} correspondent donc à 105@tie{}millimètres, soit la
+1,757 millimètres. Les 59,75 @code{staff-spaces} de
+@code{paper-height} correspondent donc à 105 millimètres, soit la
hauteur d'une feuille au format A6 à l'italienne. Les paires
@code{(@var{a},@var{b})} sont des intervalles, @var{a} en étant
l'extrémité inférieure et @var{b} l'extrémité supérieure.
la rubrique @ref{Mise en forme de la page}.
En dehors des marges, vous disposez de quelques moyens supplémentaires
-pour gagner de l'espace@tie{}:
+pour gagner de l'espace :
@itemize
@item
systèmes par page dans la mesure où l'une des étapes d'estimation des
hauteurs est tout simplement sautée. D'autre part, réduire le nombre de
systèmes par page permet d'en disposer plus sur les suivantes. Par
-exemple, avec un nombre par défaut de 11@tie{}systèmes par pages,
+exemple, avec un nombre par défaut de 11 systèmes par pages,
l'instruction suivante le force à 10.
@example
l'espace. Le fait de les reporter sur plusieurs systèmes regroupés
diminue d'autant l'espace disponible que si seul le premier ne
comportait l'indication. Autre exemple, les indications de nuance qui
-se @qq{détachent} d'un système peuvent être rapprochés de la portée@tie{}:
+se @qq{détachent} d'un système peuvent être rapprochés de la portée :
@lilypond[verbatim,quote,relative=1]
e4 c g\f c
Modifier l'espacement horizontal à l'aide du @code{SpacingSpanner},
comme indiqué à la rubrique
@ref{Modification de l'espacement horizontal}. Voici ce que donne
-l'espacement par défaut@tie{}:
+l'espacement par défaut :
@lilypond[verbatim,quote]
\score {
Par contre, le fait de modifier la valeur de la propriété
@code{common-shortest-duration} en passant de @code{1/4} à @code{1/2}
-- bien que la noire soit la durée la plus courante, nous prenons une
-valeur plus longue -- donnera un effet @qq{resserré} à la musique@tie{}:
+valeur plus longue -- donnera un effet @qq{resserré} à la musique :
@lilypond[verbatim,quote]
\score {