Le 17/07/2022 à 10:11, Benjamin Tordoff a écrit :
Hi all,
I'm typesetting a score that uses "subito p" and "subito pp" in a couple of places. I've found
snippets explaining how to get this to look right (subito in normal italics, the "p" or "pp" in
dynamic font), and another snippet showing how to create a custom dynamic that correctly sets the midi volume, but not
one that does both. What is the best way to add a text prefix to a dynamic whilst also retaining the dynamic's effect
on MIDI output?
\version "2.23.10"
subPP = \markup{ \italic{sub.} \dynamic pp }
\score {
{
c'2-\ff c'2-\subPP % Volume should be pp but is still ff
}
\layout {}
\midi {}
}
How about something like this:
\version "2.22.2"
subPPMarkup = \markup { \normal-text \italic { sub. } pp }
subPP = #(make-dynamic-script subPPMarkup)
\midi {
\context {
\Score
dynamicAbsoluteVolumeFunction =
#(lambda (dyn)
(if (equal? dyn subPPMarkup)
0.3
(default-dynamic-absolute-volume dyn)))
}
}
\score {
{
c'8\pppp\< d'8 e'8 f'8 g'8 a'8 b'8 c''8 |
c''8\fffff b'8 a'8 g'8 f'8\subPP e'8 d'8 c'8 }
\layout { }
\midi { }
}
See also the snippet"Creating custom dynamics in MIDI output"
at
https://lilypond.org/doc/v2.22/Documentation/notation/controlling-midi-dynamics.html
Best,
Jean