Jay Anderson <horndud...@gmail.com> writes:

> I don't consider this a hack. Using parallel spacer rests is a very
> common construct. If it seems ugly then you can always move it to a
> function to hide it away.
>
>
> \version "2.16.0"
>
> endHairpin =
> #(define-music-function (parser location mus) (ly:music?)
>   #{
>     <<
>       { $mus }
>       {
>         <>-\tweak #'minimum-length #5 \>
>         #(skip-of-length #{\scaleDurations #'(9 . 10) $mus #})
>         <>\pp
>       }
>     >>
>   #})
>
> \score
> {
>   \new Staff
>   {
>     c'1 \endHairpin c'1
>   }
> }
>
>
> This function can be made more general (pass in dynamic, hairpin
> length, etc.). However, it does show that you can simplify and hide
> these constructs when desired. The syntax is very adequate for this.

There is a bit of confusion in this statement: the _parser_ may be
adequate in that it allows you to create \endHairpin, a new piece of
user-accessible syntax, to deal with the problem in a nicer way.

It's a bit like saying "the car is not broken since you can just open
the hood, wrap the towing rope that is part of the car's equipment
around the crankshaft and pull to start it, without the need for any
non-included tools".

You get practice with that after a while, but it is sort of
inconvenient.

-- 
David Kastrup


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

Reply via email to