Jan-Peter Voigt <jp.vo...@gmx.de> writes:

> Hello Urs,
>
> yes there was a syntax change:
> you might try
>
> shapeSlur = #(define-music-function (parser location offsets)(list?)
>   #{
>     \once \override Slur #'control-points = $(shape-slur offsets)
>   #})

I would write #(shape-slur offsets) here: there is no need for an
immediate Scheme expression here (the point of $ over # is that the
syntactical function of the $ expression is determined by its expression
type, but here the syntactical function needed is "Scheme" anyway).

> Variables in musicfunctions now are available by there name without
> the preceding $.
> The $-sign now introduces a scheme-expression and returns the result
> directly ... now here should be more explanation, that I am not able
> to put in words right now ;-)

$some-expression is equivalent to \name if you had written
name = #some-expression
some times earlier where an assignment is allowed.  Actually, whenever
name is a valid LilyPond identifier name as well as a valid Scheme
identifier name, $name and \name are perfectly equivalent.

-- 
David Kastrup


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to