Bruce, I think you misunderstood what I meant. I was talking about 
how to write it in BNF, not how to do it programmatically, which is 
obvious to any programmer, e.g. 0==strnicmp(key, "dor", 3)

Bruce Olson wrote:
> There need not be any problem here. Allow both upper and lower case
> characters and convert where required. 
> 
> The tune scoring mode (among the 7 'Greek' modes recognized by ABC)
> occurs only as the X at the end of the 'K:key X' specification. The
> meaning of X is determined in a subroutine (= the working part of a
> macro). Let your program's internal identifier for modes be Y(n),
> (n=1-7), = ion, mix, dor, ael, phy, or loc, respectively, which exhausts
> the possibilities. Convert the X string to all lower case then trim to
> the first 3 non-blank characters = x. A single additional command then
> searchs for x in the Y(n). If this command doesn't determine a unique 
> n' in the range of 1 to 7, then the tune is improperly coded, but with
> correct tune coding then you will get an n' (such that Y(n') = x)
> uniquely determining the scoring mode, and this implies nothing
> elsewhere in the ABC as far as upper or lower case letters go.

Henrik Norbeck, Stockholm, Sweden
[EMAIL PROTECTED]
http://www.norbeck.nu/         My home page
http://www.norbeck.nu/abcmus/  AbcMus player program
http://www.norbeck.nu/abc/     >1900 ABC tunes
http://www.norbeck.nu/blackthorn Irish trad music band
http://www.rfod.se/folklink/   Links to Swedish trad music
To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html

Reply via email to