Richard Shann <rich...@rshann.plus.com> writes:

> The articulate.ly script appears to support rallentando but I can't
> figure out how to trigger it. In LilyPond AFAIK rall. is expressed as
> text in a text spanner, there's no dedicated event type (if I'm using
> the right sort of terminology here ...)

And that's how articulate appears to be doing it:

       ((TextScriptEvent)
        (let ((t (ly:music-property e 'text)))
         (if (not (string? t))
          (loop factor (cons e newelements) tail actions)
          (begin
           (cond
            ((or
              (string= t "rall")
              (string= t "Rall")
              (string= t "rit.")
              (string= t "rall."))
             (loop factor (cons e newelements) tail (cons 'rall actions)))
            ((or
              (string= t "accelerando")
              (string= t "accel")
              (string= t "accel."))
             (loop factor (cons e newelements) tail (cons 'accel actions)))
            ((or
              (string= t "poco accel."))
             (loop factor (cons e newelements) tail (cons 'pocoAccel actions)))
            ((or
              (string= t "poco rall.")
              (string= t "poco rit."))
             (loop factor (cons e newelements) tail (cons 'pocoRall actions)))
            ((or (string= t "a tempo")
              (string= t "tempo I"))
           (loop factor (cons e newelements) tail (cons 'aTempo actions)))
            (else (loop factor (cons e newelements) tail actions)))))))

Should it rather (or additionally) heed \tempo "rall" ?  Probably.

-- 
David Kastrup

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

Reply via email to