lilypond-user
[Top][All Lists]
Advanced

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

Re: tempo percentage


From: David Kastrup
Subject: Re: tempo percentage
Date: Mon, 27 Nov 2017 10:30:41 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux)

Gianmaria Lari <address@hidden> writes:

> On 27 November 2017 at 09:32, David Kastrup <address@hidden> wrote:
>
>> Gianmaria Lari <address@hidden> writes:
>> >
>> > Another question. It would be also useful to have a function that
>> > increase the tempo by a certain quantity (instead of a certain
>> > factor).
>> >
>> > I tried to modify the previous code in many ways using moment-add and
>> > make-moment but without success. This is an example that does not work:
>> >
>> > (ly:moment-add (ly:context-property c 'tempoWholesPerMinute) value)
>> >
>> >
>> > Any suggestion?
>>
>> Scheme has no types known as "quantity".  Neither has LilyPond.  You
>> don't show how you get at `value'.
>>
>> <URL:http://lilypond.org/tiny-examples.html>
>>
>
> For example:
>
> \version "2.19.80"
> increaseTempo =
> #(define-music-function (value)(number?) #{
>   \context Timing \applyContext
>   #(lambda (c)
>      (set! (ly:context-property c 'tempoWholesPerMinute)
>            (ly:moment-add (ly:context-property c 'tempoWholesPerMinute)
> value)
>            ))
>    #} )
>
>
> \score {
>   {
>     \tempo 4=100
>     a b \increaseTempo 50 c' d'
>   }
>   \layout {} \midi{}
> }

Any reason you don't take the previous working code, just replacing
ly:moment-mul with ly:moment-add (and factor with value if you want more
readable code, but for the first attempt you can skip this)?

-- 
David Kastrup



reply via email to

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