Re: elegant compound time signatures
Hi, Does somebody knows if compound times works with time signatures on top http://lsr.dsi.unimi.it/LSR/Item?id=272 ? I tried several tweaks, but they doesn't seem to work in this type of time signatures (for example, they remain 5/4, instead of 2/4 + 3/4, and so on). Any sugestion? Regards Bageh Hans Aberg wrote: On 20 Oct 2008, at 15:01, Graham Percival wrote: ... I find hard to understand what the second bracelet group does: { \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) s4 \unset subdivideBeams \unset beatLength s8. s4 } This gives you the single beam between the 2nd and 3rd 16th notes in each bar. That part I understood - but not exactly how. It appears after the melody line code, so it msu alter some context. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user - Alexandre Ficagna www.myspace.com/alexandreficagna -- View this message in context: http://www.nabble.com/elegant-compound-time-signatures-tp20053025p21045760.html Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
Hi Bageh, 2008/12/21 alexandre_ficagna alr...@ibest.com.br: Hi, Does somebody knows if compound times works with time signatures on top http://lsr.dsi.unimi.it/LSR/Item?id=272 ? I tried several tweaks, but they doesn't seem to work in this type of time signatures (for example, they remain 5/4, instead of 2/4 + 3/4, and so on). Any sugestion? You need to use the correct context when overriding the TimeSignature object's properties, since its engraver has been removed from the Staff context. Here's the relevant code from Graham's snippet: % graphical display \once \override Staff.TimeSignature #'Y-offset = #3 \once \override Staff.TimeSignature #'stencil = #ly:text-interface::print \once \override Staff.TimeSignature #'text = #(markup Since the LSR snippet creates a new context called TimeSig, which \consists the Time_signature_engraver you'll have to amend these lines: \once \override TimeSig.TimeSignature #'Y-offset = #3 \once \override TimeSig.TimeSignature #'stencil = #ly:text-interface::print \once \override TimeSig.TimeSignature #'text = #(markup Regards, Neil ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On 20 Oct 2008, at 06:53, Graham Percival wrote: On Sun, Oct 19, 2008 at 04:36:48PM +0200, Hans Aberg wrote: This gankino horo snip is typeset as (2+2)+(2+1)+(2+2), again not wrong, but scores use the styles 4+3+4 or (2+2)+3+(2+2). (Hitting the same 2+1 problem.) What, like this? I think this is the second bar of the gankino horo snippet. Here's two ways of doing it, depending on how picky you want to be. Yes, both styles exist in my scores. It is though too complicated to wrte stuff i each measure, as in your second example. I used: \tempo 4 = 120 \time 11/16 \set beatGrouping = #'(2 2 2 1 2 2) \set subdivideBeams = ##t #(override-auto-beam-setting '(end * * 11 16) 4 16) #(override-auto-beam-setting '(end * * 11 16) 7 16) Now the beaming, in latest LilyPond 2.11.62, the beaming has changed to: inline: Gankino-snip2.11.62.png Changing the above to \set beatGrouping = #'(2 2 3 2 2) does not change this output. - I think I know essentially what structure is needed to describe these beaming patterns, and even went as far start writing a Haskell program. But the it is a complicated problem. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
Hans I'm not familiar with the whole rhythmic requirement but this seems to reproduce the second bar of the snippet correctly. Unfortunately subdivideBeams still must be turned on/off manually if the (2+2) pattern is required. The key is setting the beatLength to 8 rather than the 16 derived from the time signature. (As I'm currently reviewing the Rhythms section of the Notation Reference this might be a useful example of using beatLength) Trevor \version 2.11.62 \relative c'' { \time 11/16 #(override-auto-beam-setting '(end 1 16 11 16) 4 16) #(override-auto-beam-setting '(end 1 16 11 16) 7 16) \set beatLength = #(ly:make-moment 1 8) c16 b a g g f a g8 f16 e \set subdivideBeams = ##t c'16 b a g \unset subdivideBeams g f a g8 f16 e } - Original Message - From: Hans Aberg [EMAIL PROTECTED] To: Graham Percival [EMAIL PROTECTED] Cc: lilypond-user@gnu.org Sent: Monday, October 20, 2008 9:14 AM Subject: Re: elegant compound time signatures On 20 Oct 2008, at 06:53, Graham Percival wrote: On Sun, Oct 19, 2008 at 04:36:48PM +0200, Hans Aberg wrote: This gankino horo snip is typeset as (2+2)+(2+1)+(2+2), again not wrong, but scores use the styles 4+3+4 or (2+2)+3+(2+2). (Hitting the same 2+1 problem.) What, like this? I think this is the second bar of the gankino horo snippet. Here's two ways of doing it, depending on how picky you want to be. Yes, both styles exist in my scores. It is though too complicated to wrte stuff i each measure, as in your second example. I used: \tempo 4 = 120 \time 11/16 \set beatGrouping = #'(2 2 2 1 2 2) \set subdivideBeams = ##t #(override-auto-beam-setting '(end * * 11 16) 4 16) #(override-auto-beam-setting '(end * * 11 16) 7 16) Now the beaming, in latest LilyPond 2.11.62, the beaming has changed to: Changing the above to \set beatGrouping = #'(2 2 3 2 2) does not change this output. - I think I know essentially what structure is needed to describe these beaming patterns, and even went as far start writing a Haskell program. But the it is a complicated problem. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
Trevor: a top-post in this case makes the thread really bloody confusing to read. (I know this email compounds the problem, but I've given up on this thread) Hans: at the risk of sounding grumpy, did you try compiling my example? I believe it does everything you want. Trevor again: at the risk of sounding even grumpier, your solution produces the same output as mine, but uses the much more confusing #(override-beam...) stuff. \set beamGrouping is much easier to understand and use. Cheers, - Graham On Mon, Oct 20, 2008 at 09:49:49AM +0100, Trevor Daniels wrote: Hans I'm not familiar with the whole rhythmic requirement but this seems to reproduce the second bar of the snippet correctly. Unfortunately subdivideBeams still must be turned on/off manually if the (2+2) pattern is required. The key is setting the beatLength to 8 rather than the 16 derived from the time signature. (As I'm currently reviewing the Rhythms section of the Notation Reference this might be a useful example of using beatLength) Trevor \version 2.11.62 \relative c'' { \time 11/16 #(override-auto-beam-setting '(end 1 16 11 16) 4 16) #(override-auto-beam-setting '(end 1 16 11 16) 7 16) \set beatLength = #(ly:make-moment 1 8) c16 b a g g f a g8 f16 e \set subdivideBeams = ##t c'16 b a g \unset subdivideBeams g f a g8 f16 e } - Original Message - From: Hans Aberg [EMAIL PROTECTED] To: Graham Percival [EMAIL PROTECTED] Cc: lilypond-user@gnu.org Sent: Monday, October 20, 2008 9:14 AM Subject: Re: elegant compound time signatures On 20 Oct 2008, at 06:53, Graham Percival wrote: On Sun, Oct 19, 2008 at 04:36:48PM +0200, Hans Aberg wrote: This gankino horo snip is typeset as (2+2)+(2+1)+(2+2), again not wrong, but scores use the styles 4+3+4 or (2+2)+3+(2+2). (Hitting the same 2+1 problem.) What, like this? I think this is the second bar of the gankino horo snippet. Here's two ways of doing it, depending on how picky you want to be. Yes, both styles exist in my scores. It is though too complicated to wrte stuff i each measure, as in your second example. I used: \tempo 4 = 120 \time 11/16 \set beatGrouping = #'(2 2 2 1 2 2) \set subdivideBeams = ##t #(override-auto-beam-setting '(end * * 11 16) 4 16) #(override-auto-beam-setting '(end * * 11 16) 7 16) Now the beaming, in latest LilyPond 2.11.62, the beaming has changed to: Changing the above to \set beatGrouping = #'(2 2 3 2 2) does not change this output. - I think I know essentially what structure is needed to describe these beaming patterns, and even went as far start writing a Haskell program. But the it is a complicated problem. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
Graham Percival wrote: Hans: at the risk of sounding grumpy, did you try compiling my example? I believe it does everything you want. One thing your snippet doesn't display -- time signatures of the form, 3+3+2 8 Is this possible? The other alternative time signature form is something like 2½ 4 (hope that character comes through on the email: it's a 1/2) ... which I think Grainger was first to use. There are some other weird ones that I remember from e.g. Le marteau sans maître, but off the top of my head I can't recall exactly the written form. Practically, they corresponded to time signatures like 4/6 (i.e. 4 triplet crotchets/quarter notes), but they were written differently. Are there options here? (I already know that weird-but-'normal' time signatures like 7/10, 4/6 etc. will work.) ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On 20 Oct 2008, at 11:21, Graham Percival wrote: Hans: at the risk of sounding grumpy, did you try compiling my example? I believe it does everything you want. Yes, I think it was clear from my reply. I mentioned that although writing in each measure \unset subdivideBeams \unset beatLength does the job, it is a bit cumbersome. The second problem is that LilyPond beamings varies quite a bit from version to version, so sprinkling, so this solution may not be stable. There is a need of a more general beaming pattern selection scheme. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
Graham Percival Monday, October 20, 2008 10:21 AM Trevor: a top-post in this case makes the thread really bloody confusing to read. (I know this email compounds the problem, but I've given up on this thread) Perhaps. But having to scroll down looking for additions can be equally annoying. There was an example recently when a responder completely missed a second addition lower down. Trevor again: at the risk of sounding even grumpier, your solution produces the same output as mine, but uses the much more confusing #(override-beam...) stuff. \set beamGrouping is much easier to understand and use. Yes, but I was replying to Hans who was already using the #(override-beam...) stuff to explain why it didn't work. So (being more positive) do you or anyone have a real example when #(override-beam...) stuff is essential, i.e., when beamGrouping doesn't work? That would be a useful addition to the manual, or alternatively it might suggest #(override-beam...) could be played down. Cheers, - Graham Trevor [remainder deleted] ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On Mon, Oct 20, 2008 at 12:36:20PM +0200, Hans Aberg wrote: On 20 Oct 2008, at 11:21, Graham Percival wrote: Hans: at the risk of sounding grumpy, did you try compiling my example? I believe it does everything you want. Yes, I think it was clear from my reply. I mentioned that although writing in each measure \unset subdivideBeams \unset beatLength does the job, it is a bit cumbersome. Ah, that's what you meant by It is though too complicated to wrte stuff i each measure [sic]. Sorry. The second problem is that LilyPond beamings varies quite a bit from version to version, so sprinkling, so this solution may not be stable. This shouldn't be a problem if you set up the overrides correctly, and as long as there aren't any regression bugs. There is a need of a more general beaming pattern selection scheme. To be picky, this is a problem about subdivided beams, not the main beams. Anyway, it's true that something this complicated would require some scheme programming. Cheers, - Graham ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On Mon, 20 Oct 2008 11:41:22 +0100 Trevor Daniels [EMAIL PROTECTED] wrote: So (being more positive) do you or anyone have a real example when #(override-beam...) stuff is essential, i.e., when beamGrouping doesn't work? That would be a useful addition to the manual, or alternatively it might suggest #(override-beam...) could be played down. Well, beamGrouping deals with beatLength. If you wanted to set up a beaming rule that only affected other durations, you'd need to use #(override-beam...) Hmm... say, 3/4 time? beatLength would be 4. You could manually set that to 8 for some reason, and set beamGrouping to (6), but still want to end 16th note beams at every quarter. You'd then need override-beam. Cheers, - Graham ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On 20 Oct 2008, at 13:15, Graham Percival wrote: I managed to get this working without individual tweaks. It's messy, but once it's all set up, you can write any number of bars and get the 2_2, 3, 4 beaming. If you want the final 4 to be a 2_2 as well, it should be obvious how to make that happen. Just add a \repeat unfold around the second voice; basically, treat it like the global voice that many people use for rehearsal marks and the like. Thank you, I saw it, though I find hard to understand what the second bracelet group does: { \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) s4 \unset subdivideBeams \unset beatLength s8. s4 } Hans \version 2.11.62 \new Voice \relative c'' { \time 11/16 #(override-auto-beam-setting '(end 1 16 11 16) 4 16) #(override-auto-beam-setting '(end 1 16 11 16) 7 16) \set Timing.beatGrouping = #'(4 3 4) c16 b a g g f a g8 f16 e } { \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) s4 \unset subdivideBeams \unset beatLength s8. s4 } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
Graham Percival wrote: One thing your snippet doesn't display -- time signatures of the form, 3+3+2 8 Is this possible? Yes, see the very first message in this thread! Forgive me, that was badly phrased. What I was really meaning to ask was if you could add this second case as an extra example to the snippet -- I think it's important to give the two different versions as they are both widely used notations. (They could also be interpreted somewhat differently: I would probably use 3/8 + 3/8 + 2/8 where I intended the compound elements to be less 'joined' than 3+3+2/8.) Again, see the first message in this thread, or even better, the improved elegant time signatures (or some similar subject) email I sent a few hours later. OK, I think I see now in principle how these things can be done with your method. Again, what my request should really be interpreted to mean is, can some such cases be added to the documentation snippet -- but I recognise you have limited time. I don't think I have the second email you sent ... ? I only have emails with the same subject as this mail. ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On 20 Oct 2008, at 12:53, Graham Percival wrote: The second problem is that LilyPond beamings varies quite a bit from version to version, so sprinkling, so this solution may not be stable. This shouldn't be a problem if you set up the overrides correctly, and as long as there aren't any regression bugs. I am not sure what is gong on. I used \time 11/16 \set beatGrouping = #'(2 2 3 2 2) \set subdivideBeams = ##t #(override-auto-beam-setting '(end * * 11 16) 4 16) #(override-auto-beam-setting '(end * * 11 16) 7 16) which worked fine in an earlier LilyPond 2.11.* version, but not know. I have experienced similar problems in the past. Hans: at the risk of sounding grumpy, did you try compiling my example? I believe it does everything you want. Yes, I think it was clear from my reply. I mentioned that although writing in each measure \unset subdivideBeams \unset beatLength does the job, it is a bit cumbersome. Ah, that's what you meant by It is though too complicated to wrte stuff i each measure [sic]. Sorry. Yes. Think of writing a time in 4-time, and having to write that in in every measure. Though a fix, counterintuitive, as the fix belongs to the meter and not the measure. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On Mon, Oct 20, 2008 at 02:16:56PM +0200, Hans Aberg wrote: On 20 Oct 2008, at 13:15, Graham Percival wrote: treat it like the global voice that many people use for rehearsal marks and the like. Thank you, I saw it, though I find hard to understand what the second bracelet group does: { \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) s4 \unset subdivideBeams \unset beatLength s8. s4 } This gives you the single beam between the 2nd and 3rd 16th notes in each bar. Cheers, - Graham ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On Mon, Oct 20, 2008 at 02:23:25PM +0200, Joseph Wakeling wrote: I don't think I have the second email you sent ... ? I only have emails with the same subject as this mail. Whoops! I forgot to set up my lilypond-user alias, so I tried to send that email to a non-existant mailing list. Sent now. Cheers, - Graham ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
I managed to get this working without individual tweaks. It's messy, but once it's all set up, you can write any number of bars and get the 2_2, 3, 4 beaming. If you want the final 4 to be a 2_2 as well, it should be obvious how to make that happen. Just add a \repeat unfold around the second voice; basically, treat it like the global voice that many people use for rehearsal marks and the like. Cheers, - Graham \version 2.11.62 \new Voice \relative c'' { \time 11/16 #(override-auto-beam-setting '(end 1 16 11 16) 4 16) #(override-auto-beam-setting '(end 1 16 11 16) 7 16) \set Timing.beatGrouping = #'(4 3 4) c16 b a g g f a g8 f16 e } { \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) s4 \unset subdivideBeams \unset beatLength s8. s4 } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On 20 Oct 2008, at 15:01, Graham Percival wrote: ... I find hard to understand what the second bracelet group does: { \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) s4 \unset subdivideBeams \unset beatLength s8. s4 } This gives you the single beam between the 2nd and 3rd 16th notes in each bar. That part I understood - but not exactly how. It appears after the melody line code, so it msu alter some context. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On 20 Oct 2008, at 12:53, Graham Percival wrote: There is a need of a more general beaming pattern selection scheme. To be picky, this is a problem about subdivided beams, not the main beams. From what I can see, one needs to create a general trees structure, as generated by + and parenthesizes. Then these can have different renderings in the output using bars, space breaks and beaming. The difference between a meter pattern and others, is that it covers a whole measure, or possibly a sequences of measure. Then the basis for writing a time signature is that one chooses a refinement of such a structure, and writes it out. Anyway, it's true that something this complicated would require some scheme programming. Since I do not do Scheme, I thought if using Haskell to write LilyPond code. But in the description above, given a music line, one needs to find suitable applicable patterns, as described above. LilyPond has that, but not the means of describing the general iterated structures I described above. Hans ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user
Re: elegant compound time signatures
On Sun, Oct 19, 2008 at 04:36:48PM +0200, Hans Aberg wrote: This gankino horo snip is typeset as (2+2)+(2+1)+(2+2), again not wrong, but scores use the styles 4+3+4 or (2+2)+3+(2+2). (Hitting the same 2+1 problem.) What, like this? I think this is the second bar of the gankino horo snippet. Here's two ways of doing it, depending on how picky you want to be. Cheers, - Graham \version 2.11.62 \relative c'' { \time 11/16 \set Timing.beatGrouping = #'(4 3 4) c16 b a g g f a g8 f16 e \set subdivideBeams = ##t \set beatLength = #(ly:make-moment 1 8) c'16[ b a g] \unset subdivideBeams \unset beatLength g f a g8 f16 e } ___ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user