Re: [abcusers] Multiple Endings
Jean-François Moine wrote: On Fri, 28 Feb 2003 21:44:29 +, [EMAIL PROTECTED] (Phil Taylor) wrote: John Chambers has proposed a series of extensions to handle this, and I tried to implement them in my own program. It turned out to be a nightmare to get it working in the player. Eventually I got frustrated with it and pulled all the code. As far as I know, only John's abc2ps clone implements this, and no player programs. This works with abcm2ps. About players, numerical values would be feasible (use a bitmap), while free text (as [last time) asks for more information... Not sure how bitmaps are relevant to this. It turned out that there were lots of small irreconcilable problems with existing files when you allow more than two repeats. For example, in the simplest case I wanted to be able to play triple endings like this: abc abc |1 ABC ABC :|2 CBA CBA :|3 BCA BCA || Just a very simple extension of what we have at present. The problem is that there are loads of tunes out there with two endings, which are written like this: abc abc |1 ABC ABC :|2 CBA CBA :| It doesn't cause any problem at present, as the program knows that you can't have more than two endings and so treats the second :| as a terminator rather than as a repeat. If more than two endings are allowed then the program plays the tune three times and then throws an error because it can't find the expected third ending. Put this in the tune header: P:(AB)3AC then write the tune like this: [P:A] AA,2A, B,2C |[P:B]DD3 z3 ||[P:C] DD6 |] OK for computers, but not for people reading a score! Yeah. Phil Taylor To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
The latter. People on this list will try to tell you that you don't really want to do that, which of course you do or you wouldn't be asking :) Regards, Aaron In a message dated 2/28/2003 12:43:38 PM Eastern Standard Time, [EMAIL PROTECTED] writes: I'm having problems getting the variant ending feature to work for me. This works for 1 and 2 being different: AA,2A, B,2C |1DD3 z3 :||2 DD6 |] But I can't seem to find a way to indicate 1-3 are the same with 4 being different. I've tried encapsulating it in quotes, brackets, parentheses... Am I missing something, or is the ABC standard missing something? To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
On Fri, 28 Feb 2003 21:44:29 +, [EMAIL PROTECTED] (Phil Taylor) wrote: John Chambers has proposed a series of extensions to handle this, and I tried to implement them in my own program. It turned out to be a nightmare to get it working in the player. Eventually I got frustrated with it and pulled all the code. As far as I know, only John's abc2ps clone implements this, and no player programs. This works with abcm2ps. About players, numerical values would be feasible (use a bitmap), while free text (as [last time) asks for more information... Put this in the tune header: P:(AB)3AC then write the tune like this: [P:A] AA,2A, B,2C |[P:B]DD3 z3 ||[P:C] DD6 |] OK for computers, but not for people reading a score! -- Ken ar c'hentañ | ** Breizh ha Linux atav! ** | http://moinejf.free.fr/ Pépé Jef| mailto:[EMAIL PROTECTED] To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
John Chambers wrote: Since I'm also involved with styles like trad Scandinavian music (How can you possibly write music without using 3rd and 4th endings?) I don't really understand your problem. I've played A LOT of Scandinavian music and NEVER seen a 3rd and 4th ending in print. Though, of course they could be handy for handwritten music. What is needed much more is bis notation. Do we allow repeats within repeats, or should we use some other way of writing it? Henrik Norbeck, Stockholm, Sweden [EMAIL PROTECTED] http://home.swipnet.se/hnorbeck/ My home page http://home.swipnet.se/hnorbeck/abcmus/ AbcMus player program http://home.swipnet.se/hnorbeck/abc.htm 1600 ABC tunes http://surf.to/blackthorn Irish trad music band http://www.rfod.se/folklink/ Links to Swedish music To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
Henrik Norbeck writes: | John Chambers wrote: | Since I'm also involved with styles like trad Scandinavian music | (How can you possibly write music without using 3rd and 4th | endings?) | | I don't really understand your problem. I've played A LOT of | Scandinavian music and NEVER seen a 3rd and 4th ending in | print. Though, of course they could be handy for handwritten music. | What is needed much more is bis notation. Do we allow repeats | within repeats, or should we use some other way of writing it? Well, I suspect that you hang out with people who are less lazy than the ones that I know. ;-) I've learned most of the Scand stuff that I know either by ear or from handwritten pages. I've noticed that published music tends to write out the repeats that the lazier types condense. Consider this well-known tune: X: 1 T: Polska efter Pekkos Olof Hansson R: Bingsj\o-polska M: 3/4 L: 1/16 K: Dm |: DEFG A4 d4 | A2BA G2AG F2AF | D2f2 ~f2ef gfed | ^c2a2 age^c A4 | DEFG A4 d4 | A2BA G2AG F2AF | D2f2 ~f2ef gfed | age^c d8 :| |: A2df a2ba g4 | A2^ce gage f4 | fafd ege^c d2e2 | ~f2ed ^c2ec A3A | A2df a2ba g4 | A2^ce gage f4 | fafd ege^c d2e2 | {f}ed^ce d8 :| This is what you would probably see in print. But note that in each section, the first three bars are repeated exactly. So this can be written as: X: 1 T: Polska efter Pekkos Olof Hansson R: Bingsj\o-polska M: 3/4 L: 1/16 K: Dm |: DEFG A4 d4 | A2BA G2AG F2AF | D2f2 ~f2ef gfed |1,3 ^c2a2 age^c A4 :|2,4 age^c d8 :| |: A2df a2ba g4 | A2^ce gage f4 | fafd ege^c d2e2 |1,3 ~f2ed ^c2ec A3A :|2,4 {f}ed^ce d8 :| This uses half as much paper, and actually makes the repeat pattern much clearer. And you can fit twice as many tunes on a page, so you don't have to carry as much paper to events where you'll need printed music. (Or you can have twice as many tunes to choose from.) But I think the real explanation is laziness. Or the desire to spend less time writing and more time playing. So people writing down tunes by hand are more likely to do this than a publisher. One could argue that this notation would be useful in British-Isles styles. There are lots of tunes whose 8-bar phrases obviously have a 4-bars-repeated structure. But on closer examination, it turns out not to be that useful. In those tunes whose bars 5 and 6 are identical to bars 1 and 2, you usually find that bars 7 and 8 are both different from bars 3 and 4. So the above compact notation only saves you two bars per phrase, and half of each phrase is under the repeat bracket. This isn't nearly as usueful. In Scandinavian music, the above pattern with only the last of 4 bars varied is so common that treating it as 4x4 rather than 2x8 makes a lot more sense. And, of course, if you're a classical musician, you complain when you see any repeats. All those repeats should be unrolled, and everything written out in full, no matter how many pages it takes. ;-) One place that I saw the |1,3 ... :|2,4 ... notation a lot was back in college when I was in the marching band. A very real constraint here is that the musicians have those little lyre attachments on their instruments that are mini-music stands; they use a standard (quite small) page size, and you can't turn pages while you're playing. An instrument's part MUST fit onto one page. For some pieces, there's no real problem, but some music requires rather inventive notation to shoehorn a piccolo, flute or clarinet part onto a single small page. I've actually had some email contact with a few musicians who are involved in this sort of music. They find some of my abc2ps tweaks very useful, for exactly this reason. Of course, for purely musical purposes, none of this is needed. Repeats aren't needed. (Key signatures aren't needed. ;-) But sometimes there are very practical (if non-musical) reasons for wanting compact notation. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
[abcusers] Multiple Endings
I'm having problems getting the variant ending feature to work for me. This works for 1 and 2 being different: AA,2A, B,2C |1DD3 z3 :||2 DD6 |] But I can't seem to find a way to indicate 1-3 are the same with 4 being different. I've tried encapsulating it in quotes, brackets, parentheses... Am I missing something, or is the ABC standard missing something? Thanks for any and all help. ___ Steven K. Mariner [EMAIL PROTECTED] http://home.earthlink.net/~marinersk/ To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
| I'm having problems getting the variant ending feature to work for me. | This works for 1 and 2 being different: | | AA,2A, B,2C |1DD3 z3 :||2 DD6 |] | | But I can't seem to find a way to indicate 1-3 are the same with 4 being | different. I've tried encapsulating it in quotes, brackets, parentheses... | | Am I missing something, or is the ABC standard missing something? What you're missing is that the ABC standard is very sketchy here, and what you want isn't very widely implemented. Most abc software implements only first and second endings. It turns out that the abc standard doesn't say what endings software must handle. It just says that the ending notation exists, and gives one example that has a first and second ending. Most implementers have taken this to mean that they don't need to implement anything else. Indeed, in traditional folk music of the British Isles (which was abc's first uses), you don't see many alternate endings at all, and you'll search long and hard for a third or fourth ending. So people working with that sort of music don't notice that there's something missing. Since I'm also involved with styles like trad Scandinavian music (How can you possibly write music without using 3rd and 4th endings?), I made my own clone of abc2ps (jcabc2ps) which implements endings like |1,3 and |1-3 and so on. I can even do random text in endings, though that's a different story and is probably worth trying to get some standards on. One problem with my doing this, of course, is that my Scand tunes tend to come out with the endings wrong when you feed them to other abc tools. But there's not much I can do about that. And when we've discussed the topic in the past, it's pretty obvious that the overwhelming majority consider the subject boring. Who the hell needs THAT? Let's discuss something interesting instead. I wonder what other abc tools implement |1,3 and |1-3 now? Does any tool implement any endings beyond this? One thing I can write is: ... :|[Coda ... |] To be unambiguous, you would need to use the full syntax here, with the bracket, so that the quoted ending text isn't mistaken for a chord. But it's sufficient to handle all the cases that I know of, and easy for a program to parse. I'd have to warn users that this is an extension of the abc syntax, not supported by any standard that I know of, so it probably won't make sense to other abc tools. One of the things that perhaps qualifies as broken in current abc is that you often see the notation |: ... |1 ... :|2 ... :| This prints out just like you'd expect, with a repeat symbol before the 2nd ending and also at the end of the section. This is often used as a kludge to hint that the section should be played four times, because this is actually accepted by most abc software. But it produces a real musical disaster when you put the music on stands before a group of musicians. Half the group will notice that final repeat and go back for the 3rd time through the phrase. The other half will either not notice it, or will treat it as an obvious typo (because the ending brackets clearly say that the phrase is to be done exactly twice), and will barge ahead. The music then collapses on the floor and you have to stop and explain that, yes, this is atrocious notation, but it's all that the software will permit. This example really should be: |: ... |1,3 ... :|2,4 ... :| Unfortunately, very few abc programs accept this. It's not an actual violation of the standard. But the standard doesn't say that abc programs have to handle this, so most don't. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
Steven K. Mariner wrote: I'm having problems getting the variant ending feature to work for me. This works for 1 and 2 being different: AA,2A, B,2C |1DD3 z3 :||2 DD6 |] Your program should have flagged :|| as an error - the correct symbol for a repeat bar is :| But I can't seem to find a way to indicate 1-3 are the same with 4 being different. I've tried encapsulating it in quotes, brackets, parentheses... Am I missing something, or is the ABC standard missing something? John Chambers has proposed a series of extensions to handle this, and I tried to implement them in my own program. It turned out to be a nightmare to get it working in the player. Eventually I got frustrated with it and pulled all the code. As far as I know, only John's abc2ps clone implements this, and no player programs. This is what the standard says: First and second repeats First and second repeats can be generated with the symbols [1 and [2, e.g. faf gfe|[1 dfe dBA:|[2 d2e dcB|]. When adjacent to bar lines, these can be shortened to |1 and :|2, but with regard to spaces | [1 is legal, | 1 is not. No mention of more than two endings. As things stand at present the only way you can do it so it will be universally understood is to use the part-order syntax. Put this in the tune header: P:(AB)3AC then write the tune like this: [P:A] AA,2A, B,2C |[P:B]DD3 z3 ||[P:C] DD6 |] Phil Taylor To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
[abcusers] Multiple Endings
When John first suggested multiple alternate endings and repeats of 2 times I thought it was a good idea and started to implement it in BarFly. Getting it to display was easy, but getting it to play correctly turned out to be a nightmare, to the extent that after working on it for several days I gave up and pulled all the new code out. There were all sorts of problems. Of course that does not mean that it can't be done, just that it ain't as easy as it looks at first sight. A few things to consider when discussing repeat syntax: * It has to coexist happily with other methods of specifying repeats, such as the P: field in the header, and not rule out the use of conventional musical indirection (e.g. using the Segno). (A lot of people would like to use that.) * If we can have multiple alternate endings, why not multiple alternate segments within a repeat, not necessarily at the end? This is common in pipe music, and we have seen requests for it on this list. * It is very common to see repeats written as: abc |[1 abc :|[2 cba :| which is wrong (the last repeat should be written as || or |]), and is explicitly forbidden by the 1.6 standard. At the moment, because it's so common BarFly lets it go without comment, but what should be done here? Should it be treated as an instruction to repeat the section four times with endings 1,2,1,2, or should it generate an error? * We need a clear set of rules as to where repeats should start from. At present, when it encounters a repeat BarFly searches backwards for one of the following symbols: |:, ||, |], [|, a P: field, or the start of the tune. This seems to give the least problems, but it does mean that you can't use a double bar or thin/thick bar within a repeat. * We also need a (preferably illustrated) description of how the various repeats are to be displayed in conventional notation. If we have a 4x repeat - |:::...:::|, should that be displayed with four dots arranged vertically next to the bar line? I have seen that symbol used in music where the context suggests that a normal single repeat is what is intended (e.g. in the Original Sacred Harp). Phil Taylor To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
On Thu 13 Dec 2001 at 11:57AM +, Phil Taylor wrote: When John first suggested multiple alternate endings and repeats of 2 times I thought it was a good idea and started to implement it in BarFly. Getting it to display was easy, but getting it to play correctly turned out to be a nightmare, to the extent that after working on it for several days I gave up and pulled all the new code out. There were all sorts of problems. Of course that does not mean that it can't be done, just that it ain't as easy as it looks at first sight. abc2midi should handle alternate endings - it took some thinking about, but I'm reasonably confident that it does actually work. A few things to consider when discussing repeat syntax: * It has to coexist happily with other methods of specifying repeats, such as the P: field in the header, and not rule out the use of conventional musical indirection (e.g. using the Segno). (A lot of people would like to use that.) The P: field is currently the way to generate more than 2 times through a section. So far I haven't attempted to implement segno/coda based repeats. * If we can have multiple alternate endings, why not multiple alternate segments within a repeat, not necessarily at the end? This is common in pipe music, and we have seen requests for it on this list. The problem is how you notate the end of a segment - this is not imediately obvious to me. * It is very common to see repeats written as: abc |[1 abc :|[2 cba :| which is wrong (the last repeat should be written as || or |]), and is explicitly forbidden by the 1.6 standard. At the moment, because it's so common BarFly lets it go without comment, but what should be done here? Should it be treated as an instruction to repeat the section four times with endings 1,2,1,2, or should it generate an error? I would say an error / warning. * We need a clear set of rules as to where repeats should start from. At present, when it encounters a repeat BarFly searches backwards for one of the following symbols: |:, ||, |], [|, a P: field, or the start of the tune. This seems to give the least problems, but it does mean that you can't use a double bar or thin/thick bar within a repeat. I think it is reasonable to require |: at the start of a repeat section and issue a warning if it has been missed out. By require, I mean that a player program might ignore the end repeat if there is no start repeat and just play once through. James Allwright To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
James Allwright writes: | On Thu 13 Dec 2001 at 11:57AM +, Phil Taylor wrote: | When John first suggested multiple alternate endings and repeats of | 2 times I thought it was a good idea and started to implement it in | BarFly. Getting it to display was easy, but getting it to play correctly | turned out to be a nightmare, to the extent that after working on it | for several days I gave up and pulled all the new code out. There were | all sorts of problems. Of course that does not mean that it can't be | done, just that it ain't as easy as it looks at first sight. | | abc2midi should handle alternate endings - it took some thinking about, | but I'm reasonably confident that it does actually work. How about a reminder of the best place to get the current version? I have it in my notes, but I'd guess that other interested parties might not. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
At 01:34 PM 12-13-2001 +, James Allwright you wrote: On Thu 13 Dec 2001 at 11:57AM +, Phil Taylor wrote: A few things to consider when discussing repeat syntax: * It has to coexist happily with other methods of specifying repeats, such as the P: field in the header, and not rule out the use of conventional musical indirection (e.g. using the Segno). (A lot of people would like to use that.) The P: field is currently the way to generate more than 2 times through a section. So far I haven't attempted to implement segno/coda based repeats. I would like both the P: field, and an inline way. I have several pieces of music to notate in which the most convenient way to notate them in abc is as P: A3B3C3D3E3F3G3, which is a bit rediculous when it would make more sense to write it as |: ... :3| |: ... :3|, etc. On the other hand, I have some music where I could write it as P: (A2B2)3 without repeats or as P: (AB)3 with repeats and it isn't clear which is better. The original source doesn't have repeats, but has instructions like Slide to the left _._; That again to the right _:_/Step in with right, step out again, kick in with right and shake foot. Hokey Pokey and turn single _._; That again with left _:_, with the _._, _:_ etc, indicating the number of times a particular part is played. I guess I want the flexibility to do one piece as (A2B2)3 without repeats and the other without specifying a pre-key P: line (so I naturally get ABCDEFG) with repeats. * If we can have multiple alternate endings, why not multiple alternate segments within a repeat, not necessarily at the end? This is common in pipe music, and we have seen requests for it on this list. I assume this means music with an ABC AB'C structure? The problem is how you notate the end of a segment - this is not imediately obvious to me. By convention ;-) The easiest convention would be to require all internal parts to have the same length, so something like: |: abc |[1 abc | abc |[2 cba | cba | cba :| would play as | abc | abc | abc | cba || abc |cba |cba |cba || (double bar between repeats). However, if parts 1 and 3 are supposed to be one length, and 2 and 4 a different length, this doesn't work. In theory, only the last repeated segment has a problem, since the ending of the others is implicit in the beginning of their successor. What would |: abc |[1 abc | abc |[2 cba | cba ]| cba :| conflict with? I could even see allowing (but not insisting) that the second segment begin with ]|[2, so the |[1 is closed. * It is very common to see repeats written as: abc |[1 abc :|[2 cba :| which is wrong (the last repeat should be written as || or |]), and is explicitly forbidden by the 1.6 standard. At the moment, because it's so common BarFly lets it go without comment, but what should be done here? Should it be treated as an instruction to repeat the section four times with endings 1,2,1,2, or should it generate an error? I would say an error / warning. The first notation I propose above for internal segments in repeats would also allow |: abc |[1 abc |[2 cba :| as a valid way of writing the thing (the common post-segment part is empty). Is this a problem in people's minds? * We need a clear set of rules as to where repeats should start from. At present, when it encounters a repeat BarFly searches backwards for one of the following symbols: |:, ||, |], [|, a P: field, or the start of the tune. This seems to give the least problems, but it does mean that you can't use a double bar or thin/thick bar within a repeat. I think it is reasonable to require |: at the start of a repeat section and issue a warning if it has been missed out. By require, I mean that a player program might ignore the end repeat if there is no start repeat and just play once through. That seems reasonable. Can we then allow nested repeats? James Allwright To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
Phil taylor writes: | A few things to consider when discussing repeat syntax: | | * It has to coexist happily with other methods of specifying repeats, | such as the P: field in the header, and not rule out the use of conventional | musical indirection (e.g. using the Segno). (A lot of people would like to | use that.) There has long been a debate over whether a letter in the header P field refers to just once through the part or includes repeat(s). If you look at the (mostly English) books that use this notation, you see that they do it both ways. So this is probably a rathole; no matter how you do it, half the users will loudly insist that you're wrong. This doesn't mean that we can't establish an ABC standard, of course; it just means that no matter what we decide, we'll be wrong. This should be a separate topic. The P fields need to be worked over, and a consistent interpretation found. But this shouldn't get in the way of getting [3 and [1,3 legalized and implemented, which is useful to a lot more musicians. | * If we can have multiple alternate endings, why not multiple alternate | segments within a repeat, not necessarily at the end? This is common | in pipe music, and we have seen requests for it on this list. Yeah; I'd like that. But I'd classify it as one of the things that has killed action on the topic in the past, so it should wait until we can at least get [3 and [1,3 legalized and implemented. | * It is very common to see repeats written as: | | abc |[1 abc :|[2 cba :| | | which is wrong (the last repeat should be written as || or |]), and is | explicitly forbidden by the 1.6 standard. At the moment, because it's | so common BarFly lets it go without comment, but what should be done | here? Should it be treated as an instruction to repeat the section | four times with endings 1,2,1,2, or should it generate an error? This is done because with most current ABC tools, it's the *only* way to indicate four times through. It's definitely crappy notation, but it's the best you can do if the software chokes on: abc |[1,3 abc :|[2,4 cba :| BTW, where does the 1.6 standard explicitly forbid this final :|? I don't seem to see anything at all on the topic, only the statement that :| marks the end of a repeated section. This would imply that the above notation is legal, since that bar line *is* the end of a repeated section. | * We need a clear set of rules as to where repeats should start from. | At present, when it encounters a repeat BarFly searches backwards for | one of the following symbols: |:, ||, |], [|, a P: field, or the start | of the tune. This seems to give the least problems, but it does mean | that you can't use a double bar or thin/thick bar within a repeat. Going back to || or [| isn't a very good idea. It's common practice to use double bars to mark the major phrases within a section, and they are (almost) never used as repeat boundaries. The code should go back to |: or the start of the tune. We oughta state this in the ABC standard docs. This would both answer the question, and make life easier for implementers. (Some people have ranted about the practice of omitting |: initially, but this is a losing battle. You're fighting too much tradition in this case.) | * We also need a (preferably illustrated) description of how the various | repeats are to be displayed in conventional notation. If we have a | 4x repeat - |:::...:::|, should that be displayed with four dots | arranged vertically next to the bar line? I have seen that symbol used | in music where the context suggests that a normal single repeat is what | is intended (e.g. in the Original Sacred Harp). That's a bit bizarre, though I've seen it, too. And some printers use four dots for all repeats, because it's visually stronger. There is a problem of finding the start of repeats in a lot of printed music, and some printers have used various techniques to make them stand out. Using a thick double bar and big dots is probably better. The meaning of a four-dot repeat isn't at all standardized, and it is best left as an option in the program. In ABC, |::: or |4: would be a much better way to signal four times. I do sorta like the |4: ... :4| suggestion, though it hadn't occurred to me. But while it's a clever computerish notation, I don't think I'd want to print it that way. The few musicians who use such repeat notation (mostly dance musicians) expect |::: ... :::|. An option to write 4x in bold letters over the ending could come in handy, too, so that musicians would be less likely to misunderstand. Repeat notation is an ongoing problem in a lot of printed music. Lots of printers produce notation that is difficult for musicians to get right. It's common for music to collapse as people jump to different points at a repeat sign. Then you have to stop and discuss it, and every musician writes their own idiosyncratic notes on the
Re: [abcusers] Multiple Endings
Phil taylor writes: | A few things to consider when discussing repeat syntax: | | * It has to coexist happily with other methods of specifying repeats, | such as the P: field in the header, and not rule out the use of conventional | musical indirection (e.g. using the Segno). (A lot of people would like to | use that.) There has long been a debate over whether a letter in the header P field refers to just once through the part or includes repeat(s). If you look at the (mostly English) books that use this notation, you see that they do it both ways. So this is probably a rathole; no matter how you do it, half the users will loudly insist that you're wrong. This doesn't mean that we can't establish an ABC standard, of course; it just means that no matter what we decide, we'll be wrong. This should be a separate topic. The P fields need to be worked over, and a consistent interpretation found. But this shouldn't get in the way of getting [3 and [1,3 legalized and implemented, which is useful to a lot more musicians. | * If we can have multiple alternate endings, why not multiple alternate | segments within a repeat, not necessarily at the end? This is common | in pipe music, and we have seen requests for it on this list. Yeah; I'd like that. But I'd classify it as one of the things that has killed action on the topic in the past, so it should wait until we can at least get [3 and [1,3 legalized and implemented. | * It is very common to see repeats written as: | | abc |[1 abc :|[2 cba :| | | which is wrong (the last repeat should be written as || or |]), and is | explicitly forbidden by the 1.6 standard. At the moment, because it's | so common BarFly lets it go without comment, but what should be done | here? Should it be treated as an instruction to repeat the section | four times with endings 1,2,1,2, or should it generate an error? This is done because with most current ABC tools, it's the *only* way to indicate four times through. It's definitely crappy notation, but it's the best you can do if the software chokes on: abc |[1,3 abc :|[2,4 cba :| BTW, where does the 1.6 standard explicitly forbid this final :|? I don't seem to see anything at all on the topic, only the statement that :| marks the end of a repeated section. This would imply that the above notation is legal, since that bar line *is* the end of a repeated section. | * We need a clear set of rules as to where repeats should start from. | At present, when it encounters a repeat BarFly searches backwards for | one of the following symbols: |:, ||, |], [|, a P: field, or the start | of the tune. This seems to give the least problems, but it does mean | that you can't use a double bar or thin/thick bar within a repeat. Going back to || or [| isn't a very good idea. It's common practice to use double bars to mark the major phrases within a section, and they are (almost) never used as repeat boundaries. The code should go back to |: or the start of the tune. We oughta state this in the ABC standard docs. This would both answer the question, and make life easier for implementers. (Some people have ranted about the practice of omitting |: initially, but this is a losing battle. You're fighting too much tradition in this case.) | * We also need a (preferably illustrated) description of how the various | repeats are to be displayed in conventional notation. If we have a | 4x repeat - |:::...:::|, should that be displayed with four dots | arranged vertically next to the bar line? I have seen that symbol used | in music where the context suggests that a normal single repeat is what | is intended (e.g. in the Original Sacred Harp). That's a bit bizarre, though I've seen it, too. And some printers use four dots for all repeats, because it's visually stronger. There is a problem of finding the start of repeats in a lot of printed music, and some printers have used various techniques to make them stand out. Using a thick double bar and big dots is probably better. The meaning of a four-dot repeat isn't at all standardized, and it is best left as an option in the program. In ABC, |::: or |4: would be a much better way to signal four times. I do sorta like the |4: ... :4| suggestion, though it hadn't occurred to me. But while it's a clever computerish notation, I don't think I'd want to print it that way. The few musicians who use such repeat notation (mostly dance musicians) expect |::: ... :::|. An option to write 4x in bold letters over the ending could come in handy, too, so that musicians would be less likely to misunderstand. Repeat notation is an ongoing problem in a lot of printed music. Lots of printers produce notation that is difficult for musicians to get right. It's common for music to collapse as people jump to different points at a repeat sign. Then you have to stop and discuss it, and every musician writes their own idiosyncratic notes on the
Re: [abcusers] Multiple Endings
On Thu 13 Dec 2001 at 03:30PM +, John Chambers wrote: How about a reminder of the best place to get the current version? http://abc.sourceforge.net/abcMIDI/ James Allwright To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
John == John Chambers [EMAIL PROTECTED] writes: John BTW, where does the 1.6 standard explicitly forbid this final :|? I John don't seem to see anything at all on the topic, only the statement John that :| marks the end of a repeated section. This would imply that John the above notation is legal, since that bar line *is* the end of a John repeated section. No, you never repeat the alternates. (Except for your :|1,3 example.) John (Some people have ranted about the practice of omitting |: initially, John but this is a losing battle. You're fighting too much tradition in John this case.) But it might not be a bad idea for printing programs to provide an option to not print an initial |:. This would allow ABC coders to write balanced repeat indicators, but have them print the way most printed music does it. -- Laura (mailto:[EMAIL PROTECTED] , http://www.laymusic.org/ ) (617) 661-8097 fax: (801) 365-6574 233 Broadway, Cambridge, MA 02139 (If I haven't invited you to my party on December 16, I'm sure it's an oversight.) To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
On Thu 13 Dec 2001 at 03:24PM +, John Chambers wrote: | * We also need a (preferably illustrated) description of how the various | repeats are to be displayed in conventional notation. If we have a | 4x repeat - |:::...:::|, should that be displayed with four dots | arranged vertically next to the bar line? I have seen that symbol used | in music where the context suggests that a normal single repeat is what | is intended (e.g. in the Original Sacred Harp). As a concrete suggestion for the multiple repeat syntax, how about: !4x!|: ...:| The idea being that 4x is attached to the immediately following start repeat by a printer program and detected as the repeat count by a player program. If the printer program wants to use lots of dots or other clever stuff to indicate a strange repeat, then it can, but that doesn't show up in the abc. James Allwright To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
John Chambers wrote: Phil taylor writes: | * It is very common to see repeats written as: | | abc |[1 abc :|[2 cba :| | | which is wrong (the last repeat should be written as || or |]), and is | explicitly forbidden by the 1.6 standard. At the moment, because it's | so common BarFly lets it go without comment, but what should be done | here? Should it be treated as an instruction to repeat the section | four times with endings 1,2,1,2, or should it generate an error? This is done because with most current ABC tools, it's the *only* way to indicate four times through. It's definitely crappy notation, but it's the best you can do if the software chokes on: abc |[1,3 abc :|[2,4 cba :| No, people use it sloppily where there is only one repeat. BTW, where does the 1.6 standard explicitly forbid this final :|? I don't seem to see anything at all on the topic, only the statement that :| marks the end of a repeated section. This would imply that the above notation is legal, since that bar line *is* the end of a repeated section. You are quite right. I could have sworn that the standard forbade the use of :| to terminate the second repeat. Maybe it was in an earlier version of the standard? Phil Taylor To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
I think it is reasonable to require |: at the start of a repeat section Not given the amount of ABC out there that doesn't have one. Like all of mine. And I am NOT interested in re-editing the whole damn lot to please simpleminded fussbudget implementations. : If we can have multiple alternate endings, why not multiple alternate : segments within a repeat, not necessarily at the end? This is common : in pipe music, and we have seen requests for it on this list. I suggest we hold off on this one and get the simpler extension fixed first (while bearing in mind that it might be added later and shouldn't be precluded). The historical reason why it's so common in pipe music is because of the format of pipe tune books. For a really big umpty-part tune, you needed to save space to get it all one page (see David Glen's collections of about 100 years ago for most of the examples; you can watch his typo- graphy getting increasingly desperate as he approaches the bottom of the page). Publishers less concerned about saving paper, as in most modern tune collections, make much less use of it. There is probably no point in going for it unless we can do an altogether more sophisticated structure. A very long time ago (years) I posted an example of what such a structure might do: the 9/8 march Heights of Dargai has the form ABAC DBDC, and I've seen that in a modern book (in two staff lines) as [1,2 A [1,3 B :| [3,4 D [2,4 C :| which was remarkably readable (unlike some of Glen's stunts). But the amount of structural analysis required to use such a feature is far beyond what most ABC coders do. It might get more use if we had editing tools that could identify common sections and create variant-repeat structures to make more compact notation, but as yet we don't. +| At present, when it encounters a repeat BarFly searches backwards for +| one of the following symbols: |:, ||, |], [|, a P: field, or the start +| of the tune. This seems to give the least problems, but it does mean +| that you can't use a double bar or thin/thick bar within a repeat. + Going back to || or [| isn't a very good idea. It's common practice + to use double bars to mark the major phrases within a section, and + they are (almost) never used as repeat boundaries. The code should go + back to |: or the start of the tune. We oughta state this in the ABC + standard docs. This would both answer the question, and make life + easier for implementers. ...if those implementers didn't actually care whether their software could handle existing ABC written years before they thought up this restriction. A futureproof way of allowing repeats to cross double bars would be to introduce a new kind of repeat-transparent double bar. This would print the same way as || does, but would tell player programs to search back past it for the start of the repeated section. That wouldn't break any existing ABC (*all* of which has the semantics Phil described insofar as the transcriber thought about it) but would allow transcribers to get the behaviour John wants for new material. A sign like |.| or |:| would do it. ? As a concrete suggestion for the multiple repeat syntax, how about: ?!4x!|: ...:| I already suggested a syntax for it: |4: ... :4| which has the advantage of not using ! signs (a complete no-no given the amount of ABC out there written for abc2win, which puts ! to a far more productive use that would be much better adopted by any new standard). It also has bracketing which humans or computers can use to check that the transcriber hasn't forgotten something. ? The idea being that 4x is attached to the immediately following start ? repeat by a printer program and detected as the repeat count by a player ? program. CHARACTERS IN ABC SOURCE DON'T NEED TO GET PRINTED IN STAFF NOTATION! As John Chambers says, a lot of users would rather have :: in the middle of the staff. Others might like 4x, 4 defa or whatever. Formatters can generate any of them no matter what the ABC notation looks like, so long as it's unambiguous, and a *good* formatter will give the user a choice. The focus needs to be on designing a notation to be intrinsically readable, helps avoid mistakes, and is easy to implement for whatever purpose ABC might be put to. ASCII-fying a particular style of staff notation isn't going to get there. === http://www.purr.demon.co.uk/jack/ === To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
Jack Campin wrote: | ... A very long time ago (years) I posted an | example of what such a structure might do: the 9/8 march Heights of | Dargai has the form ABAC DBDC, and I've seen that in a modern book (in | two staff lines) as | | [1,2 A [1,3 B :| | [3,4 D [2,4 C :| | | which was remarkably readable ... That's wonderful notation! I'm gonna have to find some excuses to use it. You wouldn't have that tune still around, would you? It might make a good example to throw into a test collection. My abc2ps clone should handle it without problems, but it's not much of a challenge for a music formatter. It could be a good test for a player. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
Phil taylor writes: | John Chambers wrote: | Phil taylor writes: | | * It is very common to see repeats written as: | | abc |[1 abc :|[2 cba :| | | This is done because with most current ABC tools, it's the *only* way | to indicate four times through. It's definitely crappy notation, but | it's the best you can do if the software chokes on: | abc |[1,3 abc :|[2,4 cba :| | | No, people use it sloppily where there is only one repeat. Perhaps; there certainly is a lot of sloppiness. But I and others have used it knowingly, because it's the only way to get a clue onto the paper that the section is to be played more than twice. I've stopped doing this since I implemented [1,3 and [2,4 endings. But I haven't gotten around to upgrading all my files to use this. | BTW, where does the 1.6 standard explicitly forbid this final :|? I | don't seem to see anything at all on the topic, only the statement | that :| marks the end of a repeated section. This would imply that | the above notation is legal, since that bar line *is* the end of a | repeated section. | | You are quite right. I could have sworn that the standard forbade the | use of :| to terminate the second repeat. Maybe it was in an earlier | version of the standard? I don't think so. The subject of endings and repeats was always quite sketchy. This isn't really a criticism of Chris, since his effort was obviously a prototype. Also, he was mostly concerned with British Isles folk music, where there's not a lot of need for such notation. I do remember noticing right off that the documentation on this left a bit to be desired, and obvious a lot of software didn't do much with the idea. But after all these years, and with the growing interest in using ABC for other kinds of music, it's maybe time we did something about it. In any case, the :| at the end of the second ending is conventional when there are 3rd and 4th endings. It makes sense that at the end of the 2nd ending you'd tell the reader to go back and do it again. Now we just need the conventional notation to indicate what to play for the other endings. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
Phil taylor writes: | John Chambers wrote: | Phil taylor writes: | | * It is very common to see repeats written as: | | abc |[1 abc :|[2 cba :| | | This is done because with most current ABC tools, it's the *only* way | to indicate four times through. It's definitely crappy notation, but | it's the best you can do if the software chokes on: | abc |[1,3 abc :|[2,4 cba :| | | No, people use it sloppily where there is only one repeat. Perhaps; there certainly is a lot of sloppiness. But I and others have used it knowingly, because it's the only way to get a clue onto the paper that the section is to be played more than twice. I've stopped doing this since I implemented [1,3 and [2,4 endings. But I haven't gotten around to upgrading all my files to use this. | BTW, where does the 1.6 standard explicitly forbid this final :|? I | don't seem to see anything at all on the topic, only the statement | that :| marks the end of a repeated section. This would imply that | the above notation is legal, since that bar line *is* the end of a | repeated section. | | You are quite right. I could have sworn that the standard forbade the | use of :| to terminate the second repeat. Maybe it was in an earlier | version of the standard? I don't think so. The subject of endings and repeats was always quite sketchy. This isn't really a criticism of Chris, since his effort was obviously a prototype. Also, he was mostly concerned with British Isles folk music, where there's not a lot of need for such notation. I do remember noticing right off that the documentation on this left a bit to be desired, and obvious a lot of software didn't do much with the idea. But after all these years, and with the growing interest in using ABC for other kinds of music, it's maybe time we did something about it. In any case, the :| at the end of the second ending is conventional when there are 3rd and 4th endings. It makes sense that at the end of the 2nd ending you'd tell the reader to go back and do it again. Now we just need the conventional notation to indicate what to play for the other endings. To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html
Re: [abcusers] Multiple Endings
John Chambers writes: Going back to || or [| isn't a very good idea. It's common practice to use double bars to mark the major phrases within a section, and they are (almost) never used as repeat boundaries. The code should go back to |: or the start of the tune. We oughta state this in the ABC standard docs. This would both answer the question, and make life easier for implementers. There's a backwards-compatibility problem here: the [| and |] constructs came relatively late in the life of abc---in abc 1.6, I think, since my copy of abc2mtex 1.5 chokes on both. The result is that there are a lot of tunes out there (well...in my collection, at least; while I don't know about anybody else's, it's a pretty safe bet that there are plenty) which use || instead of |]. Of course I could re-edit most of them by a global search-and-replace, (at the price of a few unpleasant surprises) but I don't want to, since I want to be able to print them with my favorite legacy app. James Allright writes: I think it is reasonable to require |: at the start of a repeat section and issue a warning if it has been missed out. By require, I mean that a player program might ignore the end repeat if there is no start repeat and just play once through. I can live with that. However, having the player program go back to the beginning of a tune whenever there's no begin-repeat would be a serious bug IMHO. (And it would be nice to be able to turn the warnings off. Come to think of it, that seems like a good general design feature: warnings tell the user that there's something there which is neither correct nor a disaster. They're very useful, but if the user--mea culpa--already knows that that his or her practice is frowned upon, and is pig-headed enough to insist on using it anyway, the warnings become annoying, and he or she'll be better-disposed toward the program if it's possible to turn off the source of annoyance.) Cheers, John Walsh To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html