Re: mmrest-of-length and \cadenzaOn
On Mon, Dec 5, 2016 at 7:37 PM, Thomas Morley wrote: > 2016-12-06 0:48 GMT+01:00 Brin Solomon : > > > > > > On Mon, Dec 5, 2016 at 4:35 PM, Thomas Morley > > wrote: > >> > >> 2016-12-05 16:52 GMT+01:00 Brin Solomon : > >> > Hello all, > >> > > >> > I'm trying to typeset a piece where one player has an unmetered > cadenza > >> > while every other player rests. I'm trying to use mmrest-of-length to > >> > generate the rests, but if I use \cadenzaOn, I get the error > >> > "programming > >> > error: Multi_measure_rest::get_rods (): I am not spanned!" and the > rests > >> > are > >> > not printed. This error doesn't happen if I use skip-of-rest instead, > >> > but in > >> > that case, I don't get the rests. > >> > > >> > Here is a minimal example that demonstrates the problem: > >> > > >> > %% > >> > > >> > \version "2.18.2" > >> > > >> > MyCadenza = \relative c' { > >> > c4 d8 e f g g4 > >> > f2 g4 g \bar "|" > >> > } > >> > > >> > \new GrandStaff << > >> > \new Staff { > >> > \cadenzaOn > >> > \MyCadenza > >> > \cadenzaOff c'1 > >> > } > >> > \new Staff { > >> > \cadenzaOn > >> > #(mmrest-of-length MyCadenza) > >> > \cadenzaOff > >> > c'1 > >> > } > >> >>> > >> > > >> > %%% > >> > > >> > I'm running version 2.18.2 on Mac OS 10.11.6. Is there a different > >> > command I > >> > should be using to get a full measure rest while I'm using \cadenzaOn? > >> > > >> > Thanks in advance, > >> > Brin > >> > >> > >> Hi, > >> found some code on the list (can't say anymore who posted it > >> initially) and extended it a bit. See attached. > >> It completely avoids \cadenzaOn/Off, because of the hassle you > >> experienced. > >> midi may come out strange (not tested), I don't care about midi, though > >> ... > >> > >> It's 2.15.24 code, but still working. Anyway running convert-ly over > >> it may be a good idea. > >> > >> Maybe it helps, > >> Harm > > > > > > Harm, > > > > Thanks for finding this! Ideally it would be nice to not have the > fermatas > > over the rests, but if that's tricky to do, then this version is fine. > > > > Thanks again, > > Brin > > \cadenzaNotes takes three arguments. The first is a boolean, set it > false to get rid of the fermata over the MultiMeasureRest. > > Cheers, > Harm > Ah, great, thank you! ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mmrest-of-length and \cadenzaOn
2016-12-06 0:48 GMT+01:00 Brin Solomon : > > > On Mon, Dec 5, 2016 at 4:35 PM, Thomas Morley > wrote: >> >> 2016-12-05 16:52 GMT+01:00 Brin Solomon : >> > Hello all, >> > >> > I'm trying to typeset a piece where one player has an unmetered cadenza >> > while every other player rests. I'm trying to use mmrest-of-length to >> > generate the rests, but if I use \cadenzaOn, I get the error >> > "programming >> > error: Multi_measure_rest::get_rods (): I am not spanned!" and the rests >> > are >> > not printed. This error doesn't happen if I use skip-of-rest instead, >> > but in >> > that case, I don't get the rests. >> > >> > Here is a minimal example that demonstrates the problem: >> > >> > %% >> > >> > \version "2.18.2" >> > >> > MyCadenza = \relative c' { >> > c4 d8 e f g g4 >> > f2 g4 g \bar "|" >> > } >> > >> > \new GrandStaff << >> > \new Staff { >> > \cadenzaOn >> > \MyCadenza >> > \cadenzaOff c'1 >> > } >> > \new Staff { >> > \cadenzaOn >> > #(mmrest-of-length MyCadenza) >> > \cadenzaOff >> > c'1 >> > } >> >>> >> > >> > %%% >> > >> > I'm running version 2.18.2 on Mac OS 10.11.6. Is there a different >> > command I >> > should be using to get a full measure rest while I'm using \cadenzaOn? >> > >> > Thanks in advance, >> > Brin >> >> >> Hi, >> found some code on the list (can't say anymore who posted it >> initially) and extended it a bit. See attached. >> It completely avoids \cadenzaOn/Off, because of the hassle you >> experienced. >> midi may come out strange (not tested), I don't care about midi, though >> ... >> >> It's 2.15.24 code, but still working. Anyway running convert-ly over >> it may be a good idea. >> >> Maybe it helps, >> Harm > > > Harm, > > Thanks for finding this! Ideally it would be nice to not have the fermatas > over the rests, but if that's tricky to do, then this version is fine. > > Thanks again, > Brin \cadenzaNotes takes three arguments. The first is a boolean, set it false to get rid of the fermata over the MultiMeasureRest. Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mmrest-of-length and \cadenzaOn
On Mon, Dec 5, 2016 at 4:35 PM, Thomas Morley wrote: > 2016-12-05 16:52 GMT+01:00 Brin Solomon : > > Hello all, > > > > I'm trying to typeset a piece where one player has an unmetered cadenza > > while every other player rests. I'm trying to use mmrest-of-length to > > generate the rests, but if I use \cadenzaOn, I get the error "programming > > error: Multi_measure_rest::get_rods (): I am not spanned!" and the rests > are > > not printed. This error doesn't happen if I use skip-of-rest instead, > but in > > that case, I don't get the rests. > > > > Here is a minimal example that demonstrates the problem: > > > > %% > > > > \version "2.18.2" > > > > MyCadenza = \relative c' { > > c4 d8 e f g g4 > > f2 g4 g \bar "|" > > } > > > > \new GrandStaff << > > \new Staff { > > \cadenzaOn > > \MyCadenza > > \cadenzaOff c'1 > > } > > \new Staff { > > \cadenzaOn > > #(mmrest-of-length MyCadenza) > > \cadenzaOff > > c'1 > > } > >>> > > > > %%% > > > > I'm running version 2.18.2 on Mac OS 10.11.6. Is there a different > command I > > should be using to get a full measure rest while I'm using \cadenzaOn? > > > > Thanks in advance, > > Brin > > > Hi, > found some code on the list (can't say anymore who posted it > initially) and extended it a bit. See attached. > It completely avoids \cadenzaOn/Off, because of the hassle you experienced. > midi may come out strange (not tested), I don't care about midi, though ... > > It's 2.15.24 code, but still working. Anyway running convert-ly over > it may be a good idea. > > Maybe it helps, > Harm > Harm, Thanks for finding this! Ideally it would be nice to not have the fermatas over the rests, but if that's tricky to do, then this version is fine. Thanks again, Brin ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mmrest-of-length and \cadenzaOn
2016-12-05 16:52 GMT+01:00 Brin Solomon : > Hello all, > > I'm trying to typeset a piece where one player has an unmetered cadenza > while every other player rests. I'm trying to use mmrest-of-length to > generate the rests, but if I use \cadenzaOn, I get the error "programming > error: Multi_measure_rest::get_rods (): I am not spanned!" and the rests are > not printed. This error doesn't happen if I use skip-of-rest instead, but in > that case, I don't get the rests. > > Here is a minimal example that demonstrates the problem: > > %% > > \version "2.18.2" > > MyCadenza = \relative c' { > c4 d8 e f g g4 > f2 g4 g \bar "|" > } > > \new GrandStaff << > \new Staff { > \cadenzaOn > \MyCadenza > \cadenzaOff c'1 > } > \new Staff { > \cadenzaOn > #(mmrest-of-length MyCadenza) > \cadenzaOff > c'1 > } >>> > > %%% > > I'm running version 2.18.2 on Mac OS 10.11.6. Is there a different command I > should be using to get a full measure rest while I'm using \cadenzaOn? > > Thanks in advance, > Brin Hi, found some code on the list (can't say anymore who posted it initially) and extended it a bit. See attached. It completely avoids \cadenzaOn/Off, because of the hassle you experienced. midi may come out strange (not tested), I don't care about midi, though ... It's 2.15.24 code, but still working. Anyway running convert-ly over it may be a good idea. Maybe it helps, Harm \version "2.15.24" cadenzaNotes = #(define-music-function (parser location fermata? music cad-music) (boolean? ly:music? ly:music?) (let* ((mus-len (ly:music-length cad-music)) (num (ly:moment-main-numerator mus-len)) (denom (ly:moment-main-denominator mus-len)) (fermata (make-music 'MultiMeasureTextEvent 'tweaks (list ;; Set the 'text based on the 'direction (cons 'text (lambda (grob) (if (eq? (ly:grob-property grob 'direction) DOWN) (markup #:musicglyph "scripts.dfermata") (markup #:musicglyph "scripts.ufermata" (cons 'outside-staff-priority 40) (cons 'outside-staff-padding 0 (lst (list #{ \set Timing.measureLength = $mus-len \scaleDurations #(cons num denom) $music \unset Timing.measureLength #})) ) (make-sequential-music (if fermata? (cons fermata lst) lst othernotes = \relative c'' { d1 c1 } cnotes = \relative c'' { c8[ d e f g] c,8[ d e f g]} snotes = { $(skip-of-length cnotes) } mnotesI = \cadenzaNotes ##t R1 \cnotes mnotesII = \cadenzaNotes ##f \relative c'' { c2 d } \cnotes \score { << \new Staff { \othernotes \cnotes \othernotes } \new Staff { \othernotes \snotes \othernotes } \new Staff { \othernotes \mnotesI \othernotes } \new Staff { \othernotes \mnotesII \othernotes } \new Staff \relative c'' { d1 c1~ \cadenzaNotes ##t { c2\fermata g4\fermata c~ } \cnotes c1 d } % manually: \new Staff { \othernotes R1*10/8\fermataMarkup \othernotes } \new Staff { \othernotes \scaleDurations #'(10 . 8) \relative c'' { c2\fermata g4\fermata c } \othernotes } >> } ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mmrest-of-length and \cadenzaOn
Nick Baskin wrote > On Mon, Dec 5, 2016 at 1:16 PM, SoundsFromSound < > soundsfromsound@ > > > wrote: > >> Nick Baskin wrote >> > Hello all, >> > >> > I'm trying to typeset a piece where one player has an unmetered cadenza >> > while every other player rests. I'm trying to use mmrest-of-length to >> > generate the rests, but if I use \cadenzaOn, I get the error >> "programming >> > error: Multi_measure_rest::get_rods (): I am not spanned!" and the >> rests >> > are not printed. This error doesn't happen if I use skip-of-rest >> instead, >> > but in that case, I don't get the rests. >> > >> > >> > Thanks in advance, >> > Brin >> > >> > ___ >> > lilypond-user mailing list >> >> > lilypond-user@ >> >> > https://lists.gnu.org/mailman/listinfo/lilypond-user >> >> > > Hello Ben, > > Maybe it's an issue with the screen shot, but it looks like there's no > rest > in the lower staff in the screenshot? But it's interesting that the error > message disappears with the development version as opposed to the stable > one; any thoughts on what might have changed? > > Brin > > ___ > lilypond-user mailing list > lilypond-user@ > https://lists.gnu.org/mailman/listinfo/lilypond-user Hi Brin, You are correct, however I just thought perhaps you could find it useful if you knew at least I was not seeing any errors like you were - perhaps you can try your score in a 2.19 version just as a test? Not sure what's changed but, no errors here. :) Let us know what happens. - composer | sound designer LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond -- View this message in context: http://lilypond.1069038.n5.nabble.com/mmrest-of-length-and-cadenzaOn-tp197634p197657.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mmrest-of-length and \cadenzaOn
On Mon, Dec 5, 2016 at 1:16 PM, SoundsFromSound wrote: > Nick Baskin wrote > > Hello all, > > > > I'm trying to typeset a piece where one player has an unmetered cadenza > > while every other player rests. I'm trying to use mmrest-of-length to > > generate the rests, but if I use \cadenzaOn, I get the error "programming > > error: Multi_measure_rest::get_rods (): I am not spanned!" and the rests > > are not printed. This error doesn't happen if I use skip-of-rest instead, > > but in that case, I don't get the rests. > > > > > > Thanks in advance, > > Brin > > > > ___ > > lilypond-user mailing list > > > lilypond-user@ > > > https://lists.gnu.org/mailman/listinfo/lilypond-user > > Hello, > > Not sure this 100% answers your question, but for what it's worth, I just > copied and pasted your code into my Frescobaldi and the log showed no > errors > and it engraved "correctly" as is. No "programming error" at all. > > I used LilyPond 2.19.52. > > See attached for screenshot. > > Ben > > works_ok_.png > <http://lilypond.1069038.n5.nabble.com/file/n197654/works_ok_.png> > > > > - > composer | sound designer > LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond > -- > View this message in context: http://lilypond.1069038.n5. > nabble.com/mmrest-of-length-and-cadenzaOn-tp197634p197654.html > Sent from the User mailing list archive at Nabble.com. > > ___ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user > Hello Ben, Maybe it's an issue with the screen shot, but it looks like there's no rest in the lower staff in the screenshot? But it's interesting that the error message disappears with the development version as opposed to the stable one; any thoughts on what might have changed? Brin ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: mmrest-of-length and \cadenzaOn
Nick Baskin wrote > Hello all, > > I'm trying to typeset a piece where one player has an unmetered cadenza > while every other player rests. I'm trying to use mmrest-of-length to > generate the rests, but if I use \cadenzaOn, I get the error "programming > error: Multi_measure_rest::get_rods (): I am not spanned!" and the rests > are not printed. This error doesn't happen if I use skip-of-rest instead, > but in that case, I don't get the rests. > > > Thanks in advance, > Brin > > ___ > lilypond-user mailing list > lilypond-user@ > https://lists.gnu.org/mailman/listinfo/lilypond-user Hello, Not sure this 100% answers your question, but for what it's worth, I just copied and pasted your code into my Frescobaldi and the log showed no errors and it engraved "correctly" as is. No "programming error" at all. I used LilyPond 2.19.52. See attached for screenshot. Ben works_ok_.png <http://lilypond.1069038.n5.nabble.com/file/n197654/works_ok_.png> - composer | sound designer LilyPond Tutorials (for beginners) --> http://bit.ly/bcl-lilypond -- View this message in context: http://lilypond.1069038.n5.nabble.com/mmrest-of-length-and-cadenzaOn-tp197634p197654.html Sent from the User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
mmrest-of-length and \cadenzaOn
Hello all, I'm trying to typeset a piece where one player has an unmetered cadenza while every other player rests. I'm trying to use mmrest-of-length to generate the rests, but if I use \cadenzaOn, I get the error "programming error: Multi_measure_rest::get_rods (): I am not spanned!" and the rests are not printed. This error doesn't happen if I use skip-of-rest instead, but in that case, I don't get the rests. Here is a minimal example that demonstrates the problem: %% \version "2.18.2" MyCadenza = \relative c' { c4 d8 e f g g4 f2 g4 g \bar "|" } \new GrandStaff << \new Staff { \cadenzaOn \MyCadenza \cadenzaOff c'1 } \new Staff { \cadenzaOn #(mmrest-of-length MyCadenza) \cadenzaOff c'1 } >> %%% I'm running version 2.18.2 on Mac OS 10.11.6. Is there a different command I should be using to get a full measure rest while I'm using \cadenzaOn? Thanks in advance, Brin ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user