I suspect that a greater problem lies in the finer detail.  For instance
(not saying BF, Muse or any particular package does or does not
accept any of these things, they are just to give a feel)

instead of [K:] allow [K :] or [ K:] or [k:] or [ k : ],
instead of [M:2/4] [Q:160] allow [M:2/4 Q:160]
instead of [M:2/4] allow [M:2 / 4]
instead of
T:Imagine a title that's very long
allow
T:Imagine a title
that's very long
(and should that be formatted as 2 lines or 1 when printed?)
instead of
abc abc abc abc :|:
def def def def
allow
abc abc abc abc :|
:def def def def
or
abc abc abc abc :
|:def def def def

instead of ABC:|: DEF
allow A B C: || : D E F
or (with a much more interesting "false" scent)
A B
C:
|: D E F

and so on.  These details have the potential for allowing music
created by hand and "checked" by one package to be
unacceptable to another.  Believe me, I found *lots* of them
out there on the web.

Laurie
----- Original Message -----
From: Phil Taylor <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, October 18, 2000 12:17 AM
Subject: Re: [abcusers] Modes, democracy and benevolent(?) dictatorship


David Barnert wrote:

>Just a little earlier in this thread, it occurred to me that what
>I would like to see in BarFly is a "Save as standard abc" menu
>command. A text file would be saved (and displayed) that preserves
>as much of the active file as possible without using any features
>not found in the current standard. V: lines and whatever else
>would either be stripped or "commented out" (%). What would remain
>would be readable by any program that adhered to the standard, and
>would therefore be suitable for posting publicly.
>

It's an interesting idea.  To guarantee* acceptability to all the other
programs you need to go back to version 1.6.  In order to reduce an abc to
v1.6 the program would have to:

* Remove any macro definitions from the tune headers.
* Convert any notes with multiple slashes e.g. a// -> a/4
* Change M: none to M:4/4 (even if it's wrong).
* Remove any clef specifications from the K: fields, and if that
  leaves a K: field in the tune empty, remove the field itself.
* Convert any inline fields in the tune, placing them on a separate line.
* Convert any w: lines to W:, removing any asterisks or underlines.
* Remove any annotation text written as "^text" or "_text".
* In multi voice abc, remove any V: fields in the header, strip out
  all voices other than V:1 and remove the V:1 field identifier from
  that.
* Remove (or %comment out) any text between the tunes.  (Well, the
  abc 1.6 definition doesn't mention that, but it does cause trouble
  for some programs.)

Have I forgotten anything?  The trouble is that if a file was
made using all those features it probably really needed them, and
stripping them out will result in a travesty of the original.

I think the real trouble is not with the traditional dance tunes for
which abc was invented, but with more complex music for which abc v1.6
is simply inadequate.

* Actually not even v1.6 guarantees acceptability, since there are
several ambiguities in it.  I have a test file of 45 tunes which all
conform to v1.6 AFAICS, but includes many examples of complex and
difficult abcs.  None of the programs I have tested (including BarFly)
gets them all right.

Phil Taylor


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

Reply via email to