[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Indications textuelles ] | [ Plus haut: Texte ] | [ Introduction au formatage de texte > ] |
1.8.2 Mise en forme du texte
Introduction au formatage de texte | ||
Partitions emboîtées | ||
Texte avec sauts de page |
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Mise en forme du texte ] | [ Plus haut: Mise en forme du texte ] | [ Partitions emboîtées > ] |
Introduction au formatage de texte
La commande \markup
permet d’ajouter du texte. Vous pouvez y
inclure des commandes, précédées d’un antislash \
; les
caractères \
et #
doivent être encadrés de guillemets
informatiques "
.
c1^\markup { hello } c1_\markup { hi there } c1^\markup { hi \bold there, is \italic {anyone home?} } c1_\markup { "\special {weird} #characters" }
Pour une liste des différentes commandes disponibles, consultez Text markup commands.
\markup
est avant tout conçu pour gérer les
TextScripts, mais rien ne s’oppose à son utilisation
pour traiter du texte avec LilyPond.
\header{ title = \markup{ \bold { foo \italic { bar! } } } } \score{ \relative c'' { \override Score.RehearsalMark #'break-visibility = #begin-of-line-invisible \override Score.RehearsalMark #'self-alignment-X = #right \set Staff.instrumentName = \markup{ \column{ Alto solo } } c2^\markup{ don't be \flat } \override TextSpanner #'(bound-details left text) = \markup{\italic rit } b2\startTextSpan a2\mark \markup{ \large \bold Fine } r2\stopTextSpan \bar "||" } \addlyrics { bar, foo \markup{ \italic bar! } } }
La commande \markup
peut intervenir à tout moment, y compris en
dehors d’un bloc \score
. Voir à ce sujet
Plusieurs partitions dans un même ouvrage.
\markup{ Here is some text. }
Le markup de l’exemple précédent montre comment utiliser les
commandes de changement de police. Les commandes \bold
et
\italic
n’affectent que le premier mot qui les suit ; encadrez
les par des accolades si vous désirez que ces commandent s’appliquent
à plusieurs mots.
\markup { \bold { c'est moi } }
Une bonne habitude à prendre consiste à utiliser des accolades même pour un seul mot, comme ici :
\markup { qui \italic { est } là ? }
En mode markup, vous pouvez composer des expressions comme
en mathématiques, des documents XML ou bien les expressions musicales.
Vous pouvez empiler ces expressions grâce à la commande
\column
, ou les centrer par rapport à leur milieu avec
\center-column
.
c1^\markup { \column { a bbbb \line { c d } } } c1^\markup { \center-column { a bbbb c } } c1^\markup { \line { a b c } }
Des listes non précédées de commande ne sont pas isolées. Ainsi,
\center-column { { a b } { c d } }
est la même expression que
\center-column { a b c d }
L’utilisation des "
ou de la commande \line
permet de
différencier les listes de mots.
\textLengthOn c4^\markup{ \center-column { on three lines } } c4^\markup{ \center-column { "all one line" } } c4^\markup{ \center-column { { on three lines } } } c4^\markup{ \center-column { \line { on one line } } }
Vous pouvez stocker les étiquettes textuelles en tant que variables, et attacher ces identificateurs à des notes, comme
allegro = \markup { \bold \large { Allegro } } { a^\allegro b c d }
Certains objets possèdent leurs propres procédures d’alignement, qui
annuleront toute spécification d’alignement que vous pourriez affecter
à un argument de type markup que vous leur auriez fourni. Par
exemple, les
RehearsalMark sont centrées
horizontalement ; de fait, utiliser
\mark \markup { \left-align .. }
sera sans effet.
Par ailleurs, le placement vertical n’est effectué qu’après la
création de l’objet étiquette textuelle. Si donc vous souhaitez
déplacer une étiquette, il vous faudra utiliser la propriété
#'padding
ou créer un « point d’ancrage » à l’intérieur même
de l’étiquette (généralement avec \hspace #0
).
\textLengthOn c'4^\markup{ \raise #5 "not raised" } \once \override TextScript #'padding = #3 c'4^\markup{ raised } c'4^\markup{ \hspace #0 \raise #1.5 raised }
Certaines situations particulières, telles que les indications de
nuance, possèdent des propriétés prédéfinies quant à leur police.
Nous vous conseillons, en pareil cas, de réinitialiser ces propriétés
en utilisant normal-text
. Pour plus d’informations, consultez
Text markup commands.
Voir aussi
Dans ce manuel : Text markup commands.
Référence du programme : TextScript.
Fichiers d’initialisation : ‘scm/new-markup.scm’.
Problèmes connus et avertissements
Le crénage ou la génération de ligatures ne sont accessibles que lors d’un retraitement par TeX. Dans ce cas, LilyPond n’en tient pas compte, et l’espacement de tels textes sera trop large.
Les erreurs de syntaxe sont peu loquaces.
Partitions emboîtées
Rien ne s’oppose à ce qu’une étiquette ne comporte de la musique. Il
suffit que l’expression en question contienne un bloc \score
et
un bloc \layout
.
\relative { c4 d^\markup { \score { \relative { c4 d e f } \layout { } } } e f }
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Partitions emboîtées ] | [ Plus haut: Mise en forme du texte ] | [ Fontes > ] |
Texte avec sauts de page
Alors que \markup
s’utilise pour traiter un bloc de texte
insécable, \markuplines
permet, employé en tête de partition,
d’obtenir un bloc de lignes réparties différemment et au cas où sur
plusieurs pages.
\markuplines { \justified-lines { Un long texte constitué de lignes justifiées. ... } \justified-lines { Un autre grand paragraphe justifié. ... } ... }
\markuplines
prend en argument une liste de lignes de texte,
qui peut elle-même consister en une suite de commandes générant à leur
tour des lignes de texte, comme ici :
\markuplines { \line { ... } % une ligne alignée à gauche \fill-line { \line { ... } } % une ligne centrée \wordwrap-lines { ... } % une liste de lignes alignées à gauche \justified-lines { ... } % une liste de lignes justifiées }
Les différentes commandes permettant de générer des listes de lignes se trouve dans Text markup list commands.
Voir aussi
Dans ce manuel : Text markup list commands, Définition d’une nouvelle commande de liste de marqueurs.
Commandes prédéfinies
\markuplines
.
[ << Notation musicale générale ] | [Racine][Table des matières][Index][ ? ] | [ Notation spécialisée >> ] | ||
[ < Partitions emboîtées ] | [ Plus haut: Mise en forme du texte ] | [ Fontes > ] |