]> git.donarmstrong.com Git - lilypond.git/commitdiff
* scm/page-breaking.scm (ly:optimal-page-breaks): don't do
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 11 Jun 2004 13:40:22 +0000 (13:40 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 11 Jun 2004 13:40:22 +0000 (13:40 +0000)
negative penalties.

* scm/page-breaking.scm (ly:optimal-page-breaks): new
file. Rewrite function.

ChangeLog
scm/page-breaking.scm

index 91cc77b0f255a9c8410edcab76988ebbb473ec9c..616031b97649844ccd4293320e3f4b3e697c00b7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2004-06-11  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
+       * scm/page-breaking.scm (ly:optimal-page-breaks): don't do
+       negative penalties.
+
        * Documentation/user/changing-defaults.itely (Creating contexts):
        index entries
 
index c5b381d495dca17e3153d47fff176d000809ed47..11d590f0ecff3518ed33c6ce065dce44c684af16 100644 (file)
@@ -61,7 +61,7 @@
       #:pageno page-num
       #:penalty penalty))
 
-  (define INFINITY 1e9)
+  (define MAXPENALTY 1e9)
 
   
   (define (line-height line)
         ;; scale independent
         (relative-empty (/ left available)))
 
-      ;; Convexity: two half-empty pages is better than 1 completely
-      ;; empty page
-      (* (1+ relative-empty) relative-empty)))
+      (if (negative? left)
+
+         ;
+         ; too full 
+         MAXPENALTY
+
+         ;; Convexity: two half-empty pages is better than 1 completely
+         ;; empty page
+         (* (1+ relative-empty) relative-empty))))
   
 
   ;; TODO: rewrite
@@ -151,13 +157,13 @@ CURRENT-BEST is the best result sofar, or #f."
                      "height " page-height " spc used: " space-used "\n"
                      "pen " this-page-penalty " lines: " current-lines  "\n"))
         
-        (foo (display debug-info))
+;       (foo (display debug-info))
         )
 
       (if (and (pair? done-lines)
               
               ;; if this page is too full, adding another line won't help
-              (positive? this-page-penalty))
+              (< this-page-penalty MAXPENALTY))
          (walk-paths (cdr done-lines) (cdr best-paths) (cons (car done-lines) current-lines)
                      last? new-best)
          new-best)))
@@ -197,7 +203,7 @@ DONE."
        (break-numbers (map line-number break-nodes))
        )
 
-    (display break-lines)
+;    (display break-lines)
     
     (if (ly:get-option 'verbose)
        (begin