> >    If I understand "context free" then notes are simply notes, and the
> > software should all formatting, or the user should tell the software which
> > formating to use (dotted rests vs. r4 r8 as an example).  Then there is
> > uniformity in the piece of music if, for example, a group of people are
> > entering music and the publisher wants the music with dotted rests, then
> > it takes one change.  Notes, when taken out of their contexts, don't have
> > ties.  A certain note is held for 5 beats.  When you say "we're in 3/4
> > time" then the one note becomes c3~c2.
>
> Sure, Lily doesn't do this but it could be done.  It seems like the Right
> to do, so that you can cut'n paste and shift pieces of music.

That reminds me of related topic that should also go onto the TODO list:

In today's notation of Renaissance music, a slightly different
notation of bars is used.

Firstly, bars are not drawn across staff lines (where the notes usually
go), but rather between them (where the lyrics usually go).

Secondly, but more important and related to the above discusssion:
The sum of the durations in a single bar may be
greater than the duration of that bar.  E.g. when being in
"Renaissance mode" -- whatever that means (maybe setting some
Renaissance specific properties) --, in 4/4 time signature,
look at the code "| e2 f1 | d2 | e1 |".

Here, lily should NOT print a warning pointing out the duration
overflow in the first bar and the duration underflow in the second bar.
Instead, as far as scheduling of events is concerned, this should be
interpreted as "| e2 f2~ | f2 d2 | e1 |".
Note that turning off all bar warnings is no solution, because
"| e2 f2 g2 | d2 | e1 |" should still produce a duration overflow
warning, as, in that case, there is no reason not to write
"| e2 f2 | g2 d2 | e1|" instead.  Similarly, lily should produce a
warning when there is a duration underflow that is not compensated
by a preceding duration overflow.

All these constraints can be fullfilled by shortening the last note
of a bar, if there is a duration overflow in a bar, and implicitly
adding a tied note of the same pitch and proper length to the next
bar, and leaving the rest of lily's bar checking code unchanged
(i.e. basically what Tim suggested).

Notationally however, lily should interpret the initial code sample
as it is, namely "| e2 f1 | d2 | e1 |".  That is, lily should really
produce a bar that contains e2 and f1.  The next bar should only
contain the d2, but aligned to the second half of the bar.

N.B.: As far as I know, the mensural notation system of Renaissance
music did not at all make use of bars.  The barlines in today's
notation of Renaissance music is only a help for today's musicians
for better reading, because we are used to bar notation.  This would
also explain why the bar lines are placed between the staff lines,
i.e. aside the music itself.

Bye,
     Juergen

Reply via email to