bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: help! line won't break!


From: Laura Conrad
Subject: Re: help! line won't break!
Date: Sun, 14 May 2006 07:41:21 -0400
User-agent: Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux)

>>>>> "JC" == Jim Cline <address@hidden> writes:

    JC> I'm nearly at the end of my piece, and also my wits.  
    JC> I am getting the message

    JC> warning: can't find line breaking that satisfies constraints

    JC> and indeed, it refuses to break, running the rest of the piece
    JC> off of the page.  I tried putting \break commands in, but they are 
ignored.
    JC> Has anyone run into this before?

The most likely thing is that you have a bar that's a bit too long
or short somewhere, so all the subsequent bars are ending in the
middle of notes instead of between notes.  This is a real nuisance
when you're trying to make scores of music that was originally
printed in unbarred parts, so that even when everything's right it can
happen that there's a long stretch where there's no place where all
the parts are between notes at a "barline".  If not a bug, this is a
real deficiency in lilypond's ability to set Renaissance music.

Assuming you have an error, the way to find it is to put in barchecks
where you think the barlines should be, and then you can find the
erroneous measure.  For instance, to take a trivial example:

          { \time 2/4 a4 b4 c16 c4 d4 \break e4 }          

won't break before the e, and you can find where the long measure is
by putting in bar checks:

   { \time 2/4 a4 b4 | c16 c4 d4 | \break e4 }

and then lily will tell you that she doesn't think there's a barline
at your second barcheck.

If it's not an error but a real feature of your piece, you might have
to split a note into two tied notes where you want to break the line:

For instance:

   voiceA = { \time 2/4 a2 b c d e f g }
   voiceB = { \time 2/4 r4 a2 b c d e f g }

is not going to find a breaking point if you put those two voices in a
score, so if you want one, you have to do:

   voiceA = { \time 2/4 a2 b c d e f g }
   voiceB = { \time 2/4 r4 a2 b c4 ~ \break c4  d2 e f g }

When I'm typesetting Renaissance music on a deadline, I usually just
punt and decide from the MIDI file that all the parts are the same
length, or print them out in pairs if I can't get all the parts to
print together.  Music that really runs into this design deficiency is
best played from unbarred parts anyway.  But if you really need a
score, you have to figure out how to put the tied notes in from the
amount of score that does print out, or by putting in the barchecks.

This is actually more of a lilypond-user question than a bug report,
so I've copied that group.

But I'm also keeping it on bug-lilypond because I also have a feature
request -- I do think it would be good if there were a way to override
lily's insistence on breaking at a barline without changing the
composer's note values.

-- 
Laura (mailto:address@hidden , http://www.laymusic.org/ )
(617) 661-8097  fax: (501) 641-5011
233 Broadway, Cambridge, MA 02139




reply via email to

[Prev in Thread] Current Thread [Next in Thread]