On Wed, 23 Jul 2003, Steven Bennett wrote:

Steve,

The issues you discussed are specificly addressed in
the new revision of the standard, shortly to be
released.

I quote from the working document:

<<
The basic ABC notation is done with the following
characters:

 !"#$%&'()*+,-./0123456789:;<=>?@
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
abcdefghijklmnopqrstuvwxyz{|}~

However, the contents of the information fields, "..."
annotations and free text sections may be written using
any character set. The default ABC character set is
Latin-1, which is also the default used in webpages.
If you would like to use a different character set, you
may find more information in section Charset field.

<snip>

Charset field
Example:

%%abc-charset iso-8859-1

This field documents according to which character set a
tune or a tunebook is coded. When no charset is
specified, iso-8859-1 (a.k.a. Latin-1) is assumed. This
is also the default charset for webpages.

Legal values for the charset field are:

iso-8859-1, iso-8859-2, iso-8859-3, iso-8859-4,
iso-8859-5, iso-8859-6, iso-8859-7, iso-8859-8,
iso-8859-9, iso-8859-10, us-ascii, utf-8.

Software that exports ABC tunes conforming to this
standard, must include a charset field.

All ABC software must be able to handle tunes coded in
iso-8859-1 and us-ascii. Support for the other charsets
is optional. Extensive information about these
charsets, can be found here:

http://czyborra.com/charsets/iso8859.html

Later occurrences of the charset field, override
earlier ones.
>>

So the standard allows you to code stuff like lyrics,
titles, decorations, and other strings in utf-8, if you
so desire.

At the same time the basic ABC notation (anything
that's not a free text string) is guaranteed to be
coded always in plain old ASCII (TAB, LF, CR, Space,
"!"--"~" being the only characters allowed) which
ensures that non utf-8 aware software can still
succesfully parse the music itself, even though the
lyrics may be coded in Chinese!

Since in utf-8, as you will know, ASCII characters are
coded as-is, there is no need to change anything in the
parser. The only thing that needs to be changed are the
routines that print strings, after they have been
parsed.

Let me know if you need further clarification.


 Groeten,
 Irwin Oppenheim
 [EMAIL PROTECTED]
 ~~~*

 Chazzanut Online:
 http://www.joods.nl/~chazzanut/
To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html

Reply via email to