As most of you know, the Scarlatti project is moving, with texts of
some 80 sonatas of the 555 posted
(http://www.geocities.com/Vienna/Studio/1714/scarlattimus.html)
using Lily 1.2.16. An expert proofreader, Jim Bailey, is working
through them, so the musical and historical basis for them is in
place.

However, difficulties with typesetting remain, so here is a
consolidated list of my Wouldn't It Be Nice If's for the project,
roughly in order of importance. Most have been mentioned previously
on the list, all are in the direction of having Lily do as she is
told.

* stem lengths: a precise control is needed on a note-by-note basis,
especially for beamed notes, both to avoid collisions and to make
multiple beam lines look smooth in sequence. I feel it would be
easiest to use if the stem lengths of the first and last note head in
a beam could be specified. This mechanism could also be used to solve
the remaining problems with weird knee beams.

* autochange staff: a mechanism is needed to force a symbol onto a
specific staff, especially rest symbols (but it would occasionally be
used for notes when beam density leaves no option).

* partial bars: these are common throughout early music, not just at
the beginning. I submit that \partial should have no effect
whatsoever on bar lines or bar counting, as it does now - it should
mean solely that this bar is of unusual length but is otherwise
normal. Either a) the next bar starts at the next |, or b) syntax of
the form \partial 4*3 to denote that this bar is 3 quarter notes long
(and that no time signature is wanted) would work. As it is, I have
to use skips for short bars and this leaves excess blank space. I
don't have the option of ignoring barcheck warnings because in music
of the complexity of Scarlatti they are an essential error detection
mechanism.

* multiple ornament positions should be allowed for a single voice
column, for chords that have two notes ornamented e.g.
\Thread {a^\prall} \Thread {fis_\prall}

* a symbol should be picked to specify that an ornament is placed in
front of a note head, matching the ^ and _ provided now. One possible
way of handling collisions with accidentals would be to require that
any accidental be included in the front ornament, but if not,
ornaments normally come in front of an accidental.

* skip vs. rest: at present Lily allocates less space for a skip than
for a rest. This makes for poor layout in polyphonic music, e.g. the
notes of
\Voice {a8 b c d} \Voice {s16 c8 d e f16}
come out unequally spaced when they should be equally spaced.

* forceHorizontalShift: the shift should be applied whether or not
the item is contained in a collision list, and should be applicable
to ornaments independently of the note to which they are attached.

* there should be an option to specify the position of an ornament
vertically. Often this would be combined with a horizontal shift -
common practice was to write the ornament slightly above the note
head and to the left just enough to clear the stem.

* there should be an option to permit the upper notehead of a
colliding pair within a voice to be on the left side of the stem, not
solely the right as at present. (I would use this globally.)

* beam subgrouping should be off by default (the breaking of the 16th
beam line within a beam in accordance with the key signature that
occurs now).

* the placing of ties where they are not written should default to
off.

Lots of work still to do, but we're getting there :-)

John

Reply via email to