4.7.3 Fulls d’estil
La sortida que produeix el LilyPond es pot modificar profundament; consulteu Ajustament de la sortida per llegir detalls sobre aquest tema. Però, què passa si teniu molts fitxers als quals el voleu aplicar els seus propis ajustaments? O, què passa si, senzillament, voleu separar els ajustament de la pròpia música? Tot això és força fàcil d’aconseguir.
Vegem un exemple. No us preocupeu si no enteneu les parts que
tenen tots els #(). Això s’explicarà a
Ajustaments avançats amb l’Scheme.
mpdolce =
\tweak self-alignment-X #-0.6
#(make-dynamic-script
#{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
inst =
#(define-music-function
(string)
(string?)
#{ <>^\markup \bold \box #string #})
\relative {
\tempo 4=50
a'4.\mpdolce d8 cis4--\glissando a |
b4 bes a2 |
\inst "Clarinet"
cis4.\< d8 e4 fis |
g8(\! fis)-. e( d)-. cis2 |
}
Fem alguna cosa respecte a les definicions mpdolce i
inst. Aquestes definicions produeixen la sortida que
desitgem, però potser les voldríem utilitzar en una altra peça.
Podríem simplement copiar-les i enganxar-les al principi de cada
fitxer, però seria força molest. També fa que quedin les
definicions a la vista dins dels nostres fitxers de música, i els
#() poden ser poc estètics. Els amagarem dins d’una altre fitxer:
%%% deseu el que segueix a un fitxer amb el nom "definicions.ily"
mpdolce =
\tweak self-alignment-X #-0.6
#(make-dynamic-script
#{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
inst =
#(define-music-function
(string)
(string?)
#{ <>^\markup \bold \box #string #})
Farem referència a aquest fitxer utilitzant l’ordre
\include al principi del fitxer de música (l’extensió
.ily es fa servir per distingir aquest fitxer d’inclusió
–que se suposa que no ha de ser processar de forma independent–
del fitxer principal. Ara modificarem la música (deseu aquest
fitxer com ‘musica.ly’).
\include "definicions.ily"
\relative {
\tempo 4=50
a'4.\mpdolce d8 cis4--\glissando a |
b4 bes a2 |
\inst "Clarinet"
cis4.\< d8 e4 fis |
g8(\! fis)-. e( d)-. cis2 |
}
Això té un aspecte millor, però farem alguns canvis més. El glissando és difícil de veure, així que ho farem més gruixut i l’aproparem als caps de les notes. Posarem la indicació de metrònom a sobre de la clau, en lloc d’anar a sobre de la primera nota. I per últim, si no ens agraden les indicacions de compàs ‘C’, les convertirem a ‘4/4’.
En tot cas, no hem de canviar el fitxer ‘musica.ly’. Substituïm en canvi el nostre fitxer ‘definicions.ily’ amb el següent:
%%% definicions.ily
mpdolce =
\tweak self-alignment-X #-0.6
#(make-dynamic-script
#{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
inst =
#(define-music-function
(string)
(string?)
#{ <>^\markup \bold \box #string #})
\layout{
\context {
\Score
\override MetronomeMark.extra-offset = #'(-5 . 0)
\override MetronomeMark.padding = #'3
}
\context {
\Staff
\override TimeSignature.style = #'numbered
}
\context {
\Voice
\override Glissando.thickness = #3
\override Glissando.gap = #0.1
}
}
Això té molt millor aspecte! Ara suposeu que voleu publicar aquesta peça. Tot que hi ha gent a la que no li agraden les indicacions de compàs ‘C’, jo me les estimo. Copiarem el fitxer actual ‘definicions.ily’ a ‘publicar-web.ily’ i modificarem aquest fitxer. Atès que el propòsit d’aquest música és produir un PDF que es mostrarà a la pantalla, també augmentarem la mida general de la sortida.
%%% publicar-web.ily
mpdolce =
\tweak self-alignment-X #-0.6
#(make-dynamic-script
#{ \markup { \dynamic mp \normal-text \italic \bold dolce } #})
inst =
#(define-music-function
(string)
(string?)
#{ <>^\markup \bold \box #string #})
#(set-global-staff-size 23)
\layout{
\context {
\Score
\override MetronomeMark.extra-offset = #'(-5 . 0)
\override MetronomeMark.padding = #'3
}
\context {
\Staff
}
\context {
\Voice
\override Glissando.thickness = #3
\override Glissando.gap = #0.1
}
}
Ara, a la música, simplement substituïm \include
"definicions.ily" per \include "publicar-web.ily".
Òbviament podríem fer això encara més pràctic. Podríem fer un
fitxer ‘definicions.ily’ que contingués sols les definicions
de mpdolce i de inst, un fitxer
‘publicar-web.ily’ que contingués sols la secció
\layout que es va mostrar a l’exemple, i un fitxer
‘universitat.ily’ que contindria sols els ajustament que
agraden a cert professor de música. El començament de
‘musica.ly’ tindria aleshores aquest aspecte:
\include "definicions.ily" %%% Traieu el comentari d'una sola d'aquestes línies! \include "publicar-web.ily" %\include "universitat.ily"
Aquest enfoc pot ser útil fins i tot si produirà sols un conjunt
de particel·les. Hi ha gent que fa servir molts fitxers de
‘fulls d’estil’ per als seus projectes. Per fer-los servir,
simplement s’ha d’iniciar els fitxers de música amb
\include "../global.ily", que conté
%%% global.ily \version "2.19.34" #(ly:set-option 'point-and-click #f) \include "../iniciar/iniciar-definicions.ily" \include "../iniciar/iniciar-disposició.ily" \include "../iniciar/iniciar-capçaleres.ily" \include "../iniciar/iniciar-paper.ily"
Altres idiomes: English, česky, deutsch, español, français, italiano, 日本語, nederlands.
Quant a selecció automàtica de l'idioma.