>>>>> "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