--- In MakeMicroMusic@yahoogroups.com
, "Graham Breed" <gbreed@...> wrote:
> > Aaron wrote:
> > One thing I find annoying about abc syntax is the logic of using
> > capital letters for the 'middle c' octave...my way around that has
> > been to NEVER use capitals for nominals, and I have a home-rolled
> > pre-processor that puts them in for me before abcm2ps even sees the
> > input. It goes with my minimal keystroke principal, see below...
> I avoided using capitals for nominals, and found that abcm2ps doesn't
> care. It treats c, the same as C (or whichever way round it is).
yeah, I did know that, but I found I liked the idea of middle c being
just " c " so the octaves read like so:
c,, c, c c' c''
compare that to the two unaltered standard-syntax possibilities, and
you'll see why I like it better:
c,,, c,, c, c c'
C,, C, C c c'
I have no idea why the original developer of abc wanted such an ugly
syntax--I think perhaps it had to do with fiddle range, as folk fiddle
tunes were the original domain of abc.
> While I'm here I'm interested in a <something> to Csound conversion as
> well. For the quality I want there'll have to be a way of specifying
> the exact rhythms, probably by stating the standard length of each
> beat, swing ratios, how much to equalize fast notes, and so on.
I've already developed such a tool for MIDI-file generation, called
'micro_composer' (formerly some years ago known as 'et_compose'), and
I'm (slowly) developing a fork for Csound score generation now. The
syntax is either an abc-related diatonic notation, or a numerical
degree-based notation, e.g. these would be the same:
1: div=17 [L:1/4] _e2 cd | z4 # 17tet, eb 1/2 nt, c&d are 1/4 nts
1: div=17 1/4 5.4 t 0 3 | r4 # 't' is for tie
The two syntaxes can be intermingled if desired, as the regular
expression parser engine searches for all possible meanings for every
input event 'token'.
Among it's features are Gaussian (normal distribution) rhythmic and
attack randomization for a 'human touch'. The standard length of each
beat works with the abc-style '[L:1/8]' or the non-abc style '1/8',
and multiples of this standard can also be specified using abc ties
(e.g. c2- c2 for 4 beats of standard length), untied abc notes (e.g.
c4 for 4 beats of standard length) or two forms of non-abc tie syntax
('5.0 t t t' or '5.0 t3' both being middle c for 4 beats of standard
Eventually, I'd like the upper syntax to be as completely compatible
with abcm2ps as possible, so score creation could be completely easy
and transparent as just inputting an unaltered abc file to the engine
for csound score output...right now, the process I imagine is
composing in micro_csound_composer syntax to get your Csound score,
processing that with csound, and then hand or automated editing of the
same '.mc' file will give you a '.abc' file for use with abcm2ps.