[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to trigger rall. in articulate.ly
From: |
David Kastrup |
Subject: |
Re: How to trigger rall. in articulate.ly |
Date: |
Sun, 14 Feb 2016 13:15:47 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) |
Richard Shann <address@hidden> 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