2008/5/30 John Mandereau <[EMAIL PROTECTED]>: > Maybe something like > > \set Score.repeatCommands = #(list (list 'volta (markup > #:line (#:simple "1.2.3..." #:roman (#:italic "ad lib.")))) 'end-repeat) > > or an equivalent form > > voltaAdLib = \markup { "1.2.3..." \roman \italic "ad lib." } > \set Score.repeatCommands = #(list (list 'volta voltaAdLib) 'end-repeat) > > is more realistic. However, I can't make it work with Lily 2.11.46 (see > the end of this email for a complete input file), I got this: > > Drawing systems.../usr/local/share/lilypond/2.11.46/scm/markup.scm:549:24: In > procedure + in expression (+ space (cdr #)): > /usr/local/share/lilypond/2.11.46/scm/markup.scm:549:24: Wrong type argument > in position 1: #f > > Is it a bug or a missing feature? It seems that using any markup more > complex than \markup { "foo" } doesn't work here, and the description in > repeat-commands doesn't mention markup can be used instead of a string.
The issue seems to be the lack of 'word-space: the function in markup.scm, which is used by \line, is expecting a value for 'word-space which doesn't exist, resulting in failure. Markup which doesn't rely on 'word-space works fine, e.g \markup \normal-text { foo }. OTOH, any markup command which has a default for 'word-space (e.g. \fontsize) will fix the \line problem: voltaAdLib = \markup \normal-text \fontsize #1 \line { "1.2.3..." \italic "ad lib." } (see attachment) A simple fix would be to add a default for 'word-space to VoltaBracket. Would anybody object if I push this fix (with an input/new snippet for demonstration)? Regards, Neil
<<attachment: voltaAdLib.png>>
_______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond