[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: The built-in template satb.ly fails in 2.19.16
From: |
David Kastrup |
Subject: |
Re: The built-in template satb.ly fails in 2.19.16 |
Date: |
Sat, 14 Mar 2015 08:28:28 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) |
"Trevor Daniels" <address@hidden> writes:
> I've just noticed that the examples of using the built-in template, satb.ly,
> in the Learning Manual, see
> http://www.lilypond.org/doc/v2.19/Documentation/learning/built_002din-templates
> are not correct in 2.19.16. They were (and still are) fine when using
> 2.19.15 with the same template.
>
> The problem may be associated with one of the macros:
>
> #(defmacro lyrics-if-defined (name voice . optionals)
> (let ((above (if (pair? optionals) (car optionals) #f)))
The last two lines are just
#(defmacro* lyrics-if-defined (name voice #:optional above)
of course accompanied by removing the matching ) along with the
replaced (let (.
> (if (defined? name)
> `(make-music 'ContextSpeccedMusic
> 'create-new #t
> 'context-type 'Lyrics
> 'property-operations ',(if above `((assign alignAboveContext ,above)) '())
The last line could just be
,@(if above
`(property-operations ((assign alignAboveContext ,above)))
'())
which avoids setting property-operations at all when unneeded.
> 'element (make-music 'LyricCombineMusic
> 'associated-context ,voice
> 'element ,name))
> #{#})))
>
> Does anyone recognise any changes in 2.19.16 which might have affected this
> macro?
> (There have been minor changes to this in current master, but both fail the
> same way.)
Pretty likely issue 2010
<URL:https://code.google.com/p/lilypond/issues/detail?id=2010>.
I think it requires associated voices to either be in the same << >>
block as their lyrics. Or something like that (if they are not
accompanied by any non-associated context in the << >> I think that's
also ok).
--
David Kastrup