Re: rall. and accel stopped working in articulate. (issue 5927044)
Peter, On 4 April 2012 00:21, pe...@chubb.wattle.id.au wrote: pkx166h == pkx166h pkx1...@gmail.com writes: pkx166h Peter, this has passed our 'countdown' review, if you don't pkx166h yet have push access you can email me a git-formatted patch pkx166h and I can push it for you. OK here it is. Thanks, pushed as author Peter Chubb peter.ch...@nicta.com.au Wed, 14 Mar 2012 22:48:52 + (09:48 +1100) committer James Lowe pkx1...@gmail.com Wed, 4 Apr 2012 08:12:52 + (09:12 +0100) commit 42ca3ff037c8ca7a7c65bf3b1423dfcb5d974d2e Can you close your Rietveld issue? Many thanks james ___ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: rall. and accel stopped working in articulate. (issue 5927044)
James == James pkx1...@gmail.com writes: James Peter, On 4 April 2012 00:21, pe...@chubb.wattle.id.au wrote: pkx166h == pkx166h pkx1...@gmail.com writes: pkx166h Peter, this has passed our 'countdown' review, if you don't pkx166h yet have push access you can email me a git-formatted patch pkx166h and I can push it for you. OK here it is. James Thanks, pushed as James author Peter Chubb peter.ch...@nicta.com.au Wed, 14 Mar 2012 James 22:48:52 + (09:48 +1100) committer James Lowe James pkx1...@gmail.com Wed, 4 Apr 2012 08:12:52 + (09:12 James +0100) commit 42ca3ff037c8ca7a7c65bf3b1423dfcb5d974d2e James Can you close your Rietveld issue? Looks like someone else already has closed it. ___ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: rall. and accel stopped working in articulate. (issue 5927044)
pkx166h == pkx166h pkx1...@gmail.com writes: pkx166h Peter, this has passed our 'countdown' review, if you don't pkx166h yet have push access you can email me a git-formatted patch pkx166h and I can push it for you. OK here it is. From ee64a711a9b046496eeef116a1e1a01fe4a0df2a Mon Sep 17 00:00:00 2001 From: Peter Chubb peter.ch...@nicta.com.au Date: Thu, 15 Mar 2012 09:48:52 +1100 Subject: [PATCH] rall. and accel stopped working in articulate. According to the the git logs, in February 2011 the way that tempo changes for MIDI were interpreted changed from just the tempoWholesPerMinute property to use a TempoChangeEvent. This broke rall. in articulated MIDI output. This patch brings the articulate script up-to-date wrt to the way that tempo changes are signalled, and also adds accel. and poco accel. to the list of accepted scripts. Reported-by: Thomas Morley thomasmorle...@googlemail.com Reviewed-by: Carl Sorensen carl.d.soren...@gmail.com Reviewed-by: Graham Percival gra...@percival-music.ca Signed-off-by: Peter Chubb peter.ch...@nicta.com.au --- ly/articulate.ly | 65 ++ 1 file changed, 46 insertions(+), 19 deletions(-) diff --git a/ly/articulate.ly b/ly/articulate.ly index 59424e5..4702e20 100644 --- a/ly/articulate.ly +++ b/ly/articulate.ly @@ -341,8 +341,18 @@ ; (ac:accel trillMusic factor)) ))) - - +% +% Generate a tempoChangeEvent and its associated property setting. +% +#(define (ac:tempoChange tempo) + (make-sequential-music + (list (make-music 'TempoChangeEvent + 'metronome-count + tempo + 'tempo-unit + (ly:make-duration 0 0 1 1)) +(context-spec-music +(make-property-set 'tempoWholesPerMinute tempo) 'Score % If there's an articulation, use it. % If in a slur, use (1 . 1) instead. @@ -414,6 +424,14 @@ (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))) @@ -477,25 +495,37 @@ (make-music 'RestEvent 'duration (ly:make-duration len dots newnum newdenom)) music))) + ((accel) + (set! ac:lastTempo ac:currentTempo) + (set! ac:currentTempo (ly:moment-div ac:currentTempo ac:rallFactor)) + (let ((pset (ac:tempoChange ac:currentTempo))) +(if (null? (cdr actions)) + (make-sequential-music (list pset music)) + (make-sequential-music + (list pset (loop (cdr actions))) + + ((pocoAccel) + (set! ac:lastTempo ac:currentTempo) + (set! ac:currentTempo (ly:moment-div ac:currentTempo ac:pocoRallFactor)) + (let ((pset (ac:tempoChange ac:currentTempo))) +(if (null? (cdr actions)) + (make-sequential-music (list pset music)) + (make-sequential-music + (list pset (loop (cdr actions))) + ((rall) + (set! ac:lastTempo ac:currentTempo) (set! ac:currentTempo (ly:moment-mul ac:currentTempo ac:rallFactor)) - (let ((pset (make-music 'PropertySet - 'value - ac:currentTempo - 'symbol - 'tempoWholesPerMinute))) + (let ((pset (ac:tempoChange ac:currentTempo))) (if (null? (cdr actions)) (make-sequential-music (list pset music)) (make-sequential-music (list pset (loop (cdr actions))) ((pocoRall) + (set! ac:lastTempo ac:currentTempo) (set! ac:currentTempo (ly:moment-mul ac:currentTempo ac:pocoRallFactor)) - (let ((pset (make-music 'PropertySet - 'value - ac:currentTempo - 'symbol - 'tempoWholesPerMinute))) + (let ((pset (ac:tempoChange ac:currentTempo))) (if (null? (cdr actions)) (make-sequential-music (list pset music)) (make-sequential-music @@ -503,11 +533,8 @@ ((aTempo) (set! ac:currentTempo ac:lastTempo) - (let ((pset (make-music 'PropertySet - 'value - ac:currentTempo - 'symbol - 'tempoWholesPerMinute))) + + (let ((pset (ac:tempoChange ac:currentTempo))) (if (null? (cdr actions)) (make-sequential-music (list pset music)) (make-sequential-music @@ -621,12 +648,12 @@ (ac:adjust-props (ly:music-property music 'symbol) music) music) -(else music)) +(else music)) )) -% At last ... here's the music function that aplies all the above to a +% At last ... here's the music function that applies
Re: rall. and accel stopped working in articulate. (issue 5927044)
Peter, this has passed our 'countdown' review, if you don't yet have push access you can email me a git-formatted patch and I can push it for you. James http://codereview.appspot.com/5927044/ ___ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel
rall. and accel stopped working in articulate. (issue 5927044)
Reviewers: james pkx166h_gmail.com, thomas morley thomasmorley65_googlemail.com, Message: Hi folks, Thomas Morley noticed that rall. had stopped causing tempo change in MIDI output when using articulate. The patch I uploaded to Rietveld fixes that. Description: rall. and accel stopped working in articulate. According to the the git logs, in February 2011 the way that tempo changes for MIDI were interpreted changed from just the tempoWholesPerMinute property to use a TempoChangeEvent. This broke rall. in articulated MIDI output. This patch brings the articulate script up-to-date wrt to the way that tempo changes are signalled, and also adds accel. and poco accel. to the list of accepted scripts. Reported-by: Thomas Morley thomasmorle...@googlemail.com Signed-off-by: Peter Chubb peter.ch...@nicta.com.au Please review this at http://codereview.appspot.com/5927044/ Affected files: M ly/articulate.ly Index: ly/articulate.ly diff --git a/ly/articulate.ly b/ly/articulate.ly index 59424e515216b95776e038dadf653566ab25b3cb..4702e2030897ea1c972e6ece95d039b4b92b9cfb 100644 --- a/ly/articulate.ly +++ b/ly/articulate.ly @@ -341,8 +341,18 @@ ; (ac:accel trillMusic factor)) ))) - - +% +% Generate a tempoChangeEvent and its associated property setting. +% +#(define (ac:tempoChange tempo) + (make-sequential-music + (list (make-music 'TempoChangeEvent + 'metronome-count + tempo + 'tempo-unit + (ly:make-duration 0 0 1 1)) +(context-spec-music +(make-property-set 'tempoWholesPerMinute tempo) 'Score % If there's an articulation, use it. % If in a slur, use (1 . 1) instead. @@ -414,6 +424,14 @@ (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))) @@ -477,25 +495,37 @@ (make-music 'RestEvent 'duration (ly:make-duration len dots newnum newdenom)) music))) + ((accel) + (set! ac:lastTempo ac:currentTempo) + (set! ac:currentTempo (ly:moment-div ac:currentTempo ac:rallFactor)) + (let ((pset (ac:tempoChange ac:currentTempo))) +(if (null? (cdr actions)) + (make-sequential-music (list pset music)) + (make-sequential-music + (list pset (loop (cdr actions))) + + ((pocoAccel) + (set! ac:lastTempo ac:currentTempo) + (set! ac:currentTempo (ly:moment-div ac:currentTempo ac:pocoRallFactor)) + (let ((pset (ac:tempoChange ac:currentTempo))) +(if (null? (cdr actions)) + (make-sequential-music (list pset music)) + (make-sequential-music + (list pset (loop (cdr actions))) + ((rall) + (set! ac:lastTempo ac:currentTempo) (set! ac:currentTempo (ly:moment-mul ac:currentTempo ac:rallFactor)) - (let ((pset (make-music 'PropertySet - 'value - ac:currentTempo - 'symbol - 'tempoWholesPerMinute))) + (let ((pset (ac:tempoChange ac:currentTempo))) (if (null? (cdr actions)) (make-sequential-music (list pset music)) (make-sequential-music (list pset (loop (cdr actions))) ((pocoRall) + (set! ac:lastTempo ac:currentTempo) (set! ac:currentTempo (ly:moment-mul ac:currentTempo ac:pocoRallFactor)) - (let ((pset (make-music 'PropertySet - 'value - ac:currentTempo - 'symbol - 'tempoWholesPerMinute))) + (let ((pset (ac:tempoChange ac:currentTempo))) (if (null? (cdr actions)) (make-sequential-music (list pset music)) (make-sequential-music @@ -503,11 +533,8 @@ ((aTempo) (set! ac:currentTempo ac:lastTempo) - (let ((pset (make-music 'PropertySet - 'value - ac:currentTempo - 'symbol - 'tempoWholesPerMinute))) + + (let ((pset (ac:tempoChange ac:currentTempo))) (if (null? (cdr actions)) (make-sequential-music (list pset music)) (make-sequential-music @@ -621,12 +648,12 @@ (ac:adjust-props (ly:music-property music 'symbol) music) music) -(else music)) +(else music)) )) -% At last ... here's the music function that aplies all the above to a +% At last ... here's the music function that applies all the above to a % score. articulate = #(define-music-function (parser location music) (ly:music?) ___ lilypond-devel mailing
Re: rall. and accel stopped working in articulate. (issue 5927044)
LGTM. You can send this to James for pushing whenever you want, provided that it passes Patchy test-patches. You might prefer to wait a day or two in case any scheme person has some good ideas to make it better; partly to increase the patch quality, but also for your own education about scheme. http://codereview.appspot.com/5927044/ ___ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: rall. and accel stopped working in articulate. (issue 5927044)
LGTM http://codereview.appspot.com/5927044/ ___ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel
Re: rall. and accel stopped working in articulate. (issue 5927044)
On 2012/03/27 03:49:18, Graham Percival wrote: LGTM. You can send this to James for pushing whenever you want, provided that it passes Patchy test-patches. You might prefer to wait a day or two in case any scheme person has some good ideas to make it better; partly to increase the patch quality, but also for your own education about scheme. Well, obviously using stuff like map-some-music, fold-some-music would make things quite more straightforward, efficient and robust, likely making it easy to avoid using event-chord-wrap!. But that concerns the whole script, not just this change. http://codereview.appspot.com/5927044/ ___ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel