>>>>> "Irwin" == I Oppenheim <[EMAIL PROTECTED]> writes:

    Irwin> Maybe you can comment on how the !nobreak! command is
    Irwin> implemented in lilypond, where you found it useful?

Lilypond translates the lilypond input format into TeX, so it's
implemented via the TeX line-breaking algorithm.  This is described in
detail in "Digital Typesetting" by Donald Knuth, and in less detail in
"The TeXbook" by the same author.  The short answer is that possible
places for line breaks have penalties attached to them, and a
\nobreak puts a very high penalty for a break there, and a \break puts
a very low (or maybe negative) penalty.

The reason I find \nobreak useful is that I often print out scores at
different typesizes for different purposes, so saying where the lines
*should* break doesn't make sense, but there are certain places where
they definitely *shouldn't* break (which are nevertheless on
barlines).

    Irwin> On Fri, 11 Jul 2003, Phil Taylor wrote:

    >> The other suggestion made here, that we need another
    >> character to mark a place where programs should _not_
    >> linebreak seems much less useful. I can see that one
    >> might want to specify a section of a tune where
    >> linebreaks were not permitted, but if you specify a
    >> single point, what is the program to do if a
    >> linebreak falls naturally there?  Move the line break
    >> one note (or one bar) to the right or to the left?

Lilypond only does line breaking on a barline, so if you want a break
where there isn't one, you have to put one in (which can be invisible).

    >> Either way the programming's gonna get messy.

Programming a good linebreaking algorithm is indeed messy.  

-- 
Laura (mailto:[EMAIL PROTECTED] , http://www.laymusic.org/ )
(617) 661-8097  fax: (801) 365-6574 
233 Broadway, Cambridge, MA 02139


To subscribe/unsubscribe, point your browser to: http://www.tullochgorm.com/lists.html

Reply via email to