lilypond-user
[Top][All Lists]
Advanced

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

Re: Appoggiatura help


From: Noeck
Subject: Re: Appoggiatura help
Date: Thu, 29 Nov 2012 23:38:07 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/17.0 Thunderbird/17.0

>> I guess, perhaps I could just leave the slur "as is" in my original post and
>> just tweak the final output in Inkscape? No? Not ideal, but maybe?
> 
> See http://lsr.dsi.unimi.it/LSR/Item?id=777:
> 
> \version "2.17.6"
> 
> #(define ((alter-slur-curve offsets) grob)
>     ;; get default control-points
>     (let ((coords (ly:slur::calc-control-points grob))
>         (n 0))
>     ;; add offsets to default coordinates
>     (define loop (lambda (n)
>         (set-car! (list-ref coords n)
>             (+ (list-ref offsets (* 2 n))
>                 (car (list-ref coords n))))
>         (set-cdr! (list-ref coords n)
>             (+ (list-ref offsets (1+ (* 2 n)))
>                 (cdr (list-ref coords n))))
>         (if (< n 3)
>             (loop (1+ n)))))
>     ;; return altered coordinates
>     (loop n)
>     coords))
>    
> shapeSlur = #(define-music-function (parser location offsets) (list?)
>     #{
>         \once \override Slur.control-points = #(alter-slur-curve offsets)
>     #})
> 
> \relative c'' {
>   \once \override Slur #'direction = #UP
>   \shapeSlur #'(0.7 -2.5 0.5 -2.3 0.3 -3 0 -4) \appoggiatura f8 fis,
> }

Those are nice functions. In this case, a simpler alternative could be
to use stemDown (in case one is satisfied with the output):

\once \override Slur #'direction = #UP
\stemDown
\appoggiatura f8 fis,

Just as an alternative. I even don't know what I would want it to look like.

Cheers,
Joram



reply via email to

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