At 22:18 on 30 Jul 2015, Andrew Bernard wrote:
Greetings Ponderers,
I have written a function to generate custom metronome marks as I want
them to be. But due to limitations of my understanding, this is
terribly crude - it has a hardwired crotchet for the note displayed.
What I really want to achieve is to be able to pass a duration into
the function as a parameter and be able to have quavers or other note
values a needed. So for example, I’d like to be able to say
\metroMark 8 “ = 56”
to specify a tempo of quaver equals 56. The reason I wrote this
function is that using \note and \note-by-number don’t appear to give
me the control over fonts that I want.
I know how to use Scheme arguments and so on, but when I pass a note
into the function as ly:music it seems to upset all the following
music in the score, so I am somewhat perplexed.
Use ly:duration? (although this seems extraordinarily
over-complicated...)
metroMark = #(define-event-function
(dur arg) (ly:duration? markup?)
#{
^\markup \concat {
{
\score {
\new Staff \with {
\remove Staff_symbol_engraver
\remove Time_signature_engraver
\remove Clef_engraver
\override NoteHead.font-size = -4
\override Stem.length = 6
\override Flag.font-size = -4
}
{ \relative c'' { \stemUp c $dur } }
\layout {
indent = 0
ragged-right = ##t
}
}
}
#arg
}
#})
{ c' \metroMark 8 = 56 }
--
Mark Knoop
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user