I tried to locate the slur breaking bug (see my post from Sun, 15 Aug
1999, or the TODO file) today, and found similar problems with other
Spanners.

What I found from the source is that Spanners get broken so that the
left starting point of the Spanner's clone in the next line is at the
left margin of the paper -- before the clef and key. I understand that
this is necessary, since the staff symbol has to be broken this way.

But other Spanners have to start a little bit later in the line; the
Slurs, Ties and Crescendo/Decrescendo Spanners belong to this
category; they should start after the introductory clef and key have
been printed. The latter currently start at the paper margin, a
behaviour which I think is incorrect, since I can't find it in any
printed works.

The slur code seems to contain some special-casing to move the left
spanpoint past the clef and the key, but it fails in some situations,
such as in the code snippet I posted earlier. Some questions arose to
me as I browsed around in the source:

- Where is the code that moves the left end of the slur horizontally?

- Where is the code that decides the vertical position of the slur end
point at the end of line and the vertical position of the slur start
point at the next line?

- Shouldn't the Spanners that require said treatment be grouped
through a common base class?

thanks for any answers,

-- 
michael krause [aka raw style / lego] - www.tu-harburg.de/~semk2104/

Reply via email to