Hi Werner,

On Mon, Feb 16, 2015 at 1:59 AM, Werner LEMBERG <w...@gnu.org> wrote:
  DN wrote:


>
> > From your analysis it appear that LilyPond is taking the entire
> > NonMusicalPaperColumn into account rather than just the right
> > extent.  I'll have a look.  (This could be major!)
>

That's not quite it.  As near as I can tell:

Spacing rods are created between columns--PaperColumn (PC) and
NonMusicalPaperColumn (NMPC).  The distance that these rods enforce is from
the beginning of one column to the next.  So, if we have two notes, there
is a distance set between two PCs.  For ties at the beginning of the line,
the rod governs a NMPC on the left and the PC on the right that is
associated with the NoteHead.  So when you set  minimum-distance or
minimum-distance-after-break In the latter case, minimum-distance specifies
a rod of that length between the beginning of the line and the PC; the tie
is drawn within whatever space is available to it.  So, in effect, you're
saying "move the NoteColumn to this staff position".

Where does that nice extra space come from that LilyPond gives to the
default tie after the time signature?  TimeSignature.extra-spacing-width.
 (That quantity--0.8, by default--is simply dded into the rod's width.)

Now, perhaps, minimum-distance after a break could be conceived of as an
_offset_, rather than an absolute value replacing whatever's there.  The
tie's length would change by that much.  This at least approximates what we
think minimum-distance is doing, though it's still an illusion.

You can visualize what happens with your example using the code below.  (I
have changed minimum-distance-after-break to minimum-distance so that
others can look who don't have access to current master.)

The interesting values here are in red--they are the required distances:
the rods.

Two things to notice:
(1) the offset note in the chord doesn't figure in the rod's width;
(2) minimum-distance takes effect when it is larger than what LilyPond
would put there.  The last tie gets a rod of 11.26; put 11.27 and it
changes.

%%%%%%%%%
\version "2.19.15"

\paper {
  line-width = 50\mm
}

\relative c'' {
  <bes des e g>1 ~ \break q \break

  \once\override Tie.minimum-length = 10
  <bes des e g>1 ~ \break q \break

  \time 4/4 <bes des e g>1 ~ \break \time 3/4 q2. \break

  \once\override Tie.minimum-length = 10
  \time 4/4 <bes des e g>1 ~ \break \time 3/4 q2. \break
}

\layout {
  \context {
    \Score
    \override PaperColumn.stencil = #ly:paper-column::print
    \override NonMusicalPaperColumn.stencil = #ly:paper-column::print
  }
}
%%%%%%%%%%%%%%

Hope this at least clarifies the problem!

David
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to