John Chambers wrote:
>John Walsh writes:
>| ...  And as a corollary, I hope that people writing playback
>| programs make it possible to reassign the letters H-Z, or at least disable
>| the defaults.  I know Abcmus does.  It's a real drag to hear emphasis
>| interpreted as an inverted mordent with no way of changing it.
>
>Maybe as  a  reminder  we  should  see  if  there's  yet  a
>concensus  on  just  what  the  syntax is for defining such
>things.  I've tried to follow a few of the discussions, but
>I'm  pretty  sure that I misunderstand most of what most of
>the people say.  I've been considering implementing some of
>the  ideas  for  some  time, but since the discussions have
>generally degenerated to the point that I don't  grok  them
>at  all,  I'm  pretty  sure  that  I  would  just implement
>something entirely different that what others think is  the
>perfect solution to all the world's ornamentation problems.
>
>At the very least, we need to way to tell novices  "If  you
>want to use the letter 'Q' to represent the 'foo' ornament,
>here's what you type ...."
>
>Is there a consistent way of saying this that a lot of  abc
>tools  now  use?   Or  are  they all inconsistent with each
>other?  Can we get a list of syntaxes that different  tools
>now implement?

At risk of opening that can of worms again, this is what BarFly
does:

You can define the meaning of any of the symbols [H..Z] by
means of the U: field, like this:

U: S = segno

Note that there are no exclamation marks bracketing the word
"segno", and no need for them.

You can place such definitions in any of three places:

(1) in the tune header, where it applies to that tune only.
(2) in the file header (applies to all tunes in that file).
(3) in an external file (where it's a global setting).

Local definitions take precedence over global definitions.
You can define multiple letters to represent the same symbol,
e.g.

U: T = trill
U: U = trill

In this case both letters will produce a trill symbol in the
staff notation, but you can define separate macros to make
them play differently.

You can also explicitly define a letter to have no meaning, so
it is ignored in the staff notation:

U: I = none

This is useful when working with abc produced by another program
which supports symbols which BarFly doesn't know how to draw.


This mechanism has been in place for a long time, and predates
the "draft" abc 1.7 stuff by several years.

Phil Taylor


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

Reply via email to