Re: [abcusers] Proposal for (simple) ending syntax
John Chambers a skrivas: [snip] before or after a |. The abbreviation :: may be used for :|:, i.e., a combined end-repeat and start-repeat in the middle of a staff. I see ::, but no :|: in the actual standard/draft. Do we have to implement it? [snip] 1. An alternate ending is indicated by [ immediately followed by a string of digits, hyphens and commas. If the [ follows a bar line, it may be omitted. It is expected that these define a sequence 1..N, in the same fashion as standard music notation, to indicate playing the phrase N times with two or more different endings.. Agree (already done in abcm2ps). 2. Multiple colons may be used before or after bar lines to mark the ends of repeated sections. These are used to indicate multiple times through the passage, one extra time per colon. If the multi--ending [snip] |: ... | ... |[1,3 ... :|[2,4 ... :| |::: ... | ... |[1,3 ... :|[2,4 ... :| These are equivalent. The extra colons are useful for readability, but aren't needed because the 1,3 and 2,4 give the same information. [snip] The extra colons may be omitted with no loss of meaning. [snip] Many musicians are not familiar with the multi-colon notation. But [snip] Right, over 45 years of my music life, I never saw such a notation! [snip] I'd rather not see this degenerate into a discussion of how to notate all the possible repeat patterns. Granted, this isn't a completely [snip] OK for me, I will just ignore these multiple colons instead of adding dashed bars! BTW, could these last ones (simple colon) be the new standard? -- Ken ar c'hentañ | ** Breizh ha Linux atav! ** | http://moinejf.free.fr/ Pépé Jef| please, on reply, mailto:[EMAIL PROTECTED] |or mailto:[EMAIL PROTECTED] To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Proposal for (simple) ending syntax
Jean-Francois Moine [EMAIL PROTECTED] mentions: | John Chambers a skrivas: | [snip] | before or after a |. The abbreviation :: may be used for :|:, i.e., a | combined end-repeat and start-repeat in the middle of a staff. | | I see ::, but no :|: in the actual standard/draft. Do we have to | implement it? Good point. Something that has been mentioned before that I think is a good idea: Redundant bar lines should generally be reduced without comment. This is already done in some cases by abc2ps. Thus, if one line ends with :| and the next starts with |:, and you've used the -c option (meaning to ignore line endings and generate staff breaks automagically), the pair is reduced to ::. Similarly, :: will be rewritten as :|\n|: if that's where a staff break ends up. There are a lot of abc files around with endings like :|| and :|], which aren't strictly legal by the current standard, but probably should be made legal. I saw a case of :|: earlier today in another mailing list. So :|: and :||: should be accepted as meaning the same as :: (which should probably be considered an abbreviation). The best justification is the old advice to be liberal in what you accept and conservative in what you produce. The other form of this argument is that it makes life easier for programmers in the long run. A lot of abc has been and will be generated by software. The programmer's job is made a lot easier if you can do things like just produce :| at the end of a repeat without the routine knowing what comes next. This will tend to produce :||: in the naive case. Requiring the program to reduce this to :: is a needless complication that wastes many programmer hours. The abc can't just be produced; it must be accumulated in memory and examined for possible rewritings like this. It's far more efficient to just output the simple abc, and then chew these things up during input and do the reduction there. There's also the fact that abc isn't just a computer code. It is written and read by humans. Many of them are musicians with very poor understanding of the needs of software. Current practice shows that they do generate all sorts of "reasonable" abc. Life would be easier for everyone if the software were also reasonable about such things. You may think that it makes extra work for the programmer, but that bit of extra work saves everyone a lot of hand-editing to correct the abc from non-expert users (or users of software that produces such non-standard abc). | |: ... | ... |[1,3 ... :|[2,4 ... :| | |::: ... | ... |[1,3 ... :|[2,4 ... :| ... | Right, over 45 years of my music life, I never saw such a notation! Where've you been, boy? I've seen it a lot. I would say, though, that it's notation mostly used and liked by dance musicians. One of the real problems with a lot of printed music is following the repeats. I've seen a lot of cases of a piece of music falling apart and dying because the musicians can't find the start of a repeat or misunderstand how many times to play a phrase. If you're reading music that has been put up on a stand, it helps a lot if the repeats are VERY clearly marked. So experienced dance musicians will write the |::: to give the reader advance warning that this is the start of a four-times repeat. The bar line(s) will typically also be very thick, and together with the three colons, it gives you a mark that's easy to spot in a fraction of a second. Most musicians not working under such pressure don't know or care about such things, but some of us know about it and consider it valuable. And it's so easy to implement ... | OK for me, I will just ignore these multiple colons instead of adding | dashed bars! BTW, could these last ones (simple colon) be the new | standard? Not sure what you're saying here. In a case like |:: ... ::|, the colons are not extra. This means three times through, and there's no other common notation for it. Ignoring the extra colons in such cases is simply wrong. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Proposal for (simple) ending syntax
John Chambers wrote: While the great chord debate rages on, I thought I'd toss out what I've implemented in my abc2ps clone for handling more kinds of endings and repeats than the rather limited ABC 1.6 allows. This isn't a solution to all the world's repeat problems. It is merely something that is 1) very easy to implement and 2) covers 90% of what is needed. snip I have no real objection to this, and in fact have already implemented some of it in BarFly. However, while it is perfectly easy for display programs to implement, when it comes to playing abc that's another story! One immediate problem is that there are many tunes out there which are (incorrectly) written as: |: ,,, |1 ... :|2 ... :| ... BarFly (and probably other players too) will patch this up and let it play correctly because it _knows_ that only two repeats are possible. Once higher numbers of repeats become available this has to be flagged as an error (missing third repeat). I've found it quite difficult to get all the alternate ending possibilities to play correctly. Not that any of this is an argument against the proposal, just that it may take a while for players to catch up with the standard if it is incorporated. Phil Taylor To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Proposal for (simple) ending syntax
Phil Taylor writes: | John Chambers wrote: | While the great chord debate rages on, I thought I'd toss out what | I've implemented in my abc2ps clone for handling more kinds of | endings and repeats than the rather limited ABC 1.6 allows. | snip | | I have no real objection to this, and in fact have already implemented | some of it in BarFly. However, while it is perfectly easy for display | programs to implement, when it comes to playing abc that's another story! | One immediate problem is that there are many tunes out there which are | (incorrectly) written as: | | |: ,,, |1 ... :|2 ... :| ... | | BarFly (and probably other players too) will patch this up and let | it play correctly because it _knows_ that only two repeats are possible. | Once higher numbers of repeats become available this has to be flagged | as an error (missing third repeat). This can't possibly be treated as an error, because it's how the current ABC standard requires that one write a 4-times repeat with two endings. There are a lot of ABC files written this way, with a lot of grumbling about ABC's limitations. Nobody likes it, but it's not an error if the software forces you to write it that way. Until most of these tunes get rewritten, software should accept this as correct 1.6 ABC. And, of course, the ABC won't be rewritten until software generally accepts the better notation. One problem is that too many people treat that final :| as a typo. It causes a lot of problems with people trying to read music, because a lot of them will also treat the final repeat as a typo and barge ahead, while the other half of the group does the repeat. But it isn't a typo or error at all; it's simply the best that ABC permits. Ignoring the final :| is incorrect behavior. It should be treated as if it were written: |: ,,, |1,3 ... :|2,4 ... :| ... I and others would have preferred to write this. The reason we didn't is that the software rejected it. I've patched abc2ps to accept it. This wasn't difficult; it took me maybe half an hour. But there's still a lot of software out there that won't accept it, and as a result, there's still a lot of ABC that writes it the other way. The best solution, of course, is to try to get software writers to make programs accept the extended repeat notation. Once the most popular programs accept it, only then can we start suggesting to users that they upgrade their files to use it. And only after they've (mostly) done so can we decree the 1.6 repeat notation obsolete. This will probably take a couple of years even if all the software is upgraded this week. (Yes, I am well aware that it's a lot harder for player programs. But it sure would be nice if they'd play my Scandinavian tunes correctly, and most of them have 4-times repeats. I just did a quick check, and I still have over 200 tunes that use the |1...:|2...:| notation, even after converting a lot of them.) To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
[abcusers] Proposal for (simple) ending syntax
While the great chord debate rages on, I thought I'd toss out what I've implemented in my abc2ps clone for handling more kinds of endings and repeats than the rather limited ABC 1.6 allows. This isn't a solution to all the world's repeat problems. It is merely something that is 1) very easy to implement and 2) covers 90% of what is needed. The current standard only allows first and second endings. It uses [1 and [2, where the [ may be omitted after a |, and there may be a : before or after a |. The abbreviation :: may be used for :|:, i.e., a combined end-repeat and start-repeat in the middle of a staff. The limitations here are that only twice-through repeats are possible using either of the notations: |: ... :| |: ... |[1 ... :|[2 ... || What I propose is that the new standard allow: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1. An alternate ending is indicated by [ immediately followed by a string of digits, hyphens and commas. If the [ follows a bar line, it may be omitted. It is expected that these define a sequence 1..N, in the same fashion as standard music notation, to indicate playing the phrase N times with two or more different endings.. 2. Multiple colons may be used before or after bar lines to mark the ends of repeated sections. These are used to indicate multiple times through the passage, one extra time per colon. If the multi--ending syntax is used, the extra colons may be omitted at the beginning of the phrase (to go along with conventional music notation). Multiple colons may be used to indicate multiple repeats without differences in the endings. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The new standard might also include the statement that endings need not start at bar lines; i.e., it is legal to use [ to indicate an ending that is a partial measure. This is legal with the old standard, of course, but it often doesn't work, because implementors aren't familiar with the usage. Some examples of repeated phrases, where ... stands for the notes: A phrase played three times: |:: ... ::| A phrase played four times, with alternating endings: |: ... | ... |1,3 ... :|2,4 ... :| |::: ... | ... |1,3 ... :|2,4 ... :| |: ... | ... |[1,3 ... :|[2,4 ... :| |::: ... | ... |[1,3 ... :|[2,4 ... :| These are equivalent. The extra colons are useful for readability, but aren't needed because the 1,3 and 2,4 give the same information. A phrase played four times, with three different endings: |: ... | ... |1,3 ... :|2 ... :|4 ... || A phrase played four times, with a different ending the fourth time: |::: ... | ... |[1-3 ... ::|[4 ... || The extra colons may be omitted with no loss of meaning. A phrase played three times with partial-measure endings: |: ... | ... | ... [1 ... :[2 ... :[3 ... || Many musicians are not familiar with the multi-colon notation. But dance musicians usually know it very well, and like it because it makes the music easier to read. It's another "standard" that is not implemented by all ABC software due to lack of familiarity. I'd rather not see this degenerate into a discussion of how to notate all the possible repeat patterns. Granted, this isn't a completely general solution to all the world's problems. But it's something that handles most of the common repeat patterns, and can be implemented very quickly. Then we can discuss how best to handle all the remaining cases. I have a growing number of tunes in my collection that use these extensions ... To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html