In message <[EMAIL PROTECTED]>, Jeff Bigler
<[EMAIL PROTECTED]> writes
>> Date: Thu, 3 Jul 2003 23:42:01 +0100
>> From: Jack Campin <[EMAIL PROTECTED]>
>> 
>> >> According to the BNF definition
>> >> http://www.norbeck.nu/abc/abcbnfx.htm
>> >> The bang is NOT a line terminator
>> 
>> Which was a booboo on the part of whoever let that through.
>> 
>> > IOW the ! simulates a line break.
>> 
>> It does in ABC2WIN, but as far as I know it doesn't yet in any other
>> application.  Which is a pain in the bum because it's a really good
>> idea and far more useful in the long term than the !...! constructs.
>
>Unfortunately, there's ABC out there that uses the !...! constructs, and
>other ABC out there that expects ! to be a line terminator.
>
>As far as I know, only abc2win has so far used ! as a line terminator,
>and the !...! extensions already exist in the 1.7.6 "draft standard",
>which most people on this list seem to agree should be the starting
>point for the new 2.0.0 standard.  This would argue for keeping !...! as
>part of standard ABC, and making ! as line terminator nonstandard.
>
>If this happens, I see several options for abc2win:

I'm more interested in the standard. However we do have to recognise
that many tunes out there use the abc2win standard.

>
>1) Keep ! as a line terminator and don't implement the !...!
>   extensions.  This would make abc2win a "nonstandard" implementation.
>
>2) Allow both.  Program abc2win to look first for all of the !...!
>   commands that are defined in the standard.  Any ! that is not part of
>   one of these commands is interpreted as a line terminator.  (Even if
>   the standard never mentions ! as a possible forced line break
>   character, I like this option as a piece of defensive programming.)
>   This probably wouldn't break many ABC files (if any), because the
>   odds of having two line breaks with only a few characters in between
>   is slim.  (Besides that, the only !...! commands that I see that
>   contain legal ABC in between are !D.C.!, !f!, !ff!, !fff!, and
>   !ffff!.)

No, that's a bad idea. It does not allow for extensions to these
symbols. If I write a program to test for all "standard" !..! comments
then my program breaks as soon as another is added to the standard or a
different program starts to recognise them. What we want from the
standard is that new features will not cause old programs to crash. Or
perhaps I should say "future new features will not cause current
programs to crash".

>
>3) Use another character for either the escape character for either
>   extensions (e.g., +...+ instead of !...!) or as a line terminator.
>   This would also make abc2win a "nonstandard" implementation, and
>   would definitely break some (possibly many) existing ABC files.
>
>
>In terms of adding a forced line break to the standard, several people
>have talked about preserving the few ASCII characters that are as yet
>undesignated in ABC for something "important".  I think having a unique
>forced line break character may well be useful enough to warrant using
>one of them.  What would folks think of using & for this purpose?
>
>
>Jeff
>
>P.S.  While we're on the subject of the !...! commands, does anyone know
>why the mezzo piano dynamic was left out?  I.e., !mp! is not in the
>1.7.6 draft standard, and abcm2ps doesn't implement it.  (I had to add
>it by hand to deco.c, as follows.)

<g> I had already implemented in my upcoming abc reader as it's an
obvious omission.


Bernard Hill
Braeburn Software
Author of Music Publisher system
Music Software written by musicians for musicians
http://www.braeburn.co.uk
Selkirk, Scotland

To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html

Reply via email to