bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Manual volta repeat commands [was Re: Quoted text]


From: Neil Puttock
Subject: Re: Manual volta repeat commands [was Re: Quoted text]
Date: Sat, 31 May 2008 00:26:50 +0100

2008/5/30 John Mandereau <address@hidden>:

> 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
Description: PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]