Menu

#3281 3 or 4 pages

Verified
nobody
Defect
2014-02-20
2013-03-30
Anonymous
No

Originally created by: *anonymous

Originally created by: colingh...@gmail.com
Originally owned by: k-ohara5...@oco.net

Jan Nieuwenhuizen reported here:

http://lists.gnu.org/archive/html/bug-lilypond/2013-03/msg00122.html

as follows:

Hi,

Why is this on four pages, it seems to fit on three.

This is with v2.17.12

#(set-default-paper-size "a8")

\paper
{
  indent = 2\mm
  tagline = #f
}

\relative c'
{
  f2 f     f4 f f f
  f f f f  f f f f
  f f f f  f f f f
  f f f f  f f f f

  f f f f  f f f f
  f f f f  f f f f
  f f f f  f f f f
  f f f f  f f f f

  f f f f  f f f f
  f f f f  f f f f
  f f f f  f f f f
  f f f f  f f f f
}

Discussion

1 2 > >> (Page 1 of 2)
  • Google Importer

    Google Importer - 2013-05-23

    Originally posted by: dak@gnu.org

    Any pointers whether this might have worked differently in older versions?

     
  • Google Importer

    Google Importer - 2013-05-26

    Originally posted by: thomasmo...@gmail.com

    With 2.12.3
      12 pages(!)
    with 2.13.47, 2.14.2, 2.15.40, 2.16.2, 2.17.17, 2.17.19 (from current master)
      always 4 pages.

     
  • Google Importer

    Google Importer - 2013-08-11

    Originally posted by: PhilEHol...@googlemail.com

    If you set ragged-last-bottom = ##f then it fits on 3 pages.  My guess is that there's a penalty for a full last page when ragged-last-bottom = ##t, and so Lily spaces the lines to avoid such a thing.

     
  • Google Importer

    Google Importer - 2013-09-21

    Originally posted by: dak@gnu.org

    Comment #3 does not convince me.  I don't think that setting ragged-last-bottom to ##f should lead to _fewer_ pages.  It is _adding_ a constraint.  Normally one of the most important evils to avoid should be unnecessary pages.  If they can be avoided with a non-ragged bottom, that should be done.  A non-ragged bottom combined with one page less is the best result, anyway, even if allowing for a ragged last bottom.

     
  • Google Importer

    Google Importer - 2013-11-12

    Originally posted by: k-ohara5...@oco.net

    The page-breaker does, in fact, forbid any compression at all of 'ragged' pages.  In the example, the four staves need just a bit of compression to fit within a page.

    We all seem to think that "ragged" should mean to allow extra space at the bottom of a page (rather than its current meaning of constraining the spaces between staves to their nominal distances).
    http://codereview.appspot.com/25710043

    Labels: Patch-new
    Owner: k-ohara5...@oco.net

     
  • Google Importer

    Google Importer - 2013-11-12

    Originally posted by: lemzw...@googlemail.com

    I indeed think that `ragged' implicates that pages are neither stretched nor compressed vertically.  To change that, I strongly suggest to add a new flag, say, `ragged-compression' which probably should be set to ##t by default.

     
  • Google Importer

    Google Importer - 2013-11-12

    Originally posted by: k-ohara5...@oco.net

    Okay.  But then page-breaking works as above, depending on ragged-bottom, which does surprise people https://code.google.com/p/lilypond/issues/detail?id=347#c5

    Labels: -Patch-new
    Owner: ---

     
  • Google Importer

    Google Importer - 2013-11-13

    Originally posted by: lemzw...@googlemail.com

    Well, everything is a matter of documentation :-)

     
  • Google Importer

    Google Importer - 2013-11-13

    Originally posted by: k-ohara5...@oco.net

    The documentation was accurate, but the behavior was so surprising that no-one interpreted the documentation to mean what it meant -- except apparently Phil.

    I hesitate to add the complexity of switchable behavior, without an example where the behavior shown at the top of this issue could be desirable.

    Add backward compatibility for Werner
    http://codereview.appspot.com/25710043

    Labels: Patch-new
    Owner: k-ohara5...@oco.net
    Cc: lemzw...@googlemail.com
    Status: Started

     
  • Google Importer

    Google Importer - 2013-11-14

    Originally posted by: pkx1...@gmail.com

    Passes Make, Make check and a full make doc.

    Reg test diff gives me

    --snip--
    @@ -4,6 +4,8 @@
    Preprocessing graphical objects...
    Calculating page and line breaks (1 possible page breaks)...[1]
    Drawing systems...
    +warning: cannot fit music on page: overflow is 2.439188
    +warning: compressing music to fit
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/d6/lily-aeb0033e.texidoc'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/d6/lily-aeb0033e.eps'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/d6/lily-aeb0033e-1.eps'...

    input/regression/page-turn-page-breaking-auto-first-page.log

    --snip--

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2013-11-14

    Originally posted by: k-ohara5...@oco.net

    Thanks, James. 
    That regression test was supposed to change, but should not have changed so much to cause that warning, and I missed it.  New patch is up.

    This test is multi-page so `make check` doesn't show the image difference, so I'll attach before and after.  Before the patch (left) the page-breaker squeezes more music on the first page so it will not have to squeeze the ragged-bottom second page, but then the page layout squeezes the second page anyway to match the first page (issue 1377; maybe we should only stretch to match the penultimate page).  After the patch, the tightness is more even.

    I looked quickly through the sixty other multi-page tests and found no problems.
    http://codereview.appspot.com/25710043

     
  • Google Importer

    Google Importer - 2013-11-15

    Originally posted by: pkx1...@gmail.com

    Patchy the autobot says: passes make, make check and a full make doc.

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2013-11-15

    Originally posted by: k-ohara5...@oco.net

    I still hesitate to add this backward-compatibility switch, because I can't see any use for it.  Thinking through all the combinations of options (in the code for page-turn-breaking, where we need to estimate page-fits) was difficult, at least for me.

    I asked on -user, what people use ragged-bottom for.

    We could keep 'ragged-bottom' behaving as it does now, and change only 'ragged-last-bottom' to allow vertical compression or a gap on the last page.  That makes the code simpler.  I inserted a page doing this in the Rietveld page, leaving the patch currently under review at the end.

     
  • Google Importer

    Google Importer - 2013-11-16

    Originally posted by: pkx1...@gmail.com

    Patch on countdown for Nov 19th - 06:00 GMT

    Labels: -Patch-review Patch-countdown

     
  • Google Importer

    Google Importer - 2013-11-18

    Originally posted by: k-ohara5...@oco.net

    The response on -user <http://lists.gnu.org/archive/html/lilypond-user/2013-11/msg00563.html> implies that users accept how ragged-bottom pages currently behave --- except of course that the last page should allow compression by default when the earlier pages are best-fit.

    So, a patch to change only the behavior of ragged-last-bottom, with docs update:
    http://codereview.appspot.com/25710043/

    Regression tests show some "compressing music to fit" messages replaced by one that includes the relevant page number, if there is a page number to report.

    Labels: -Patch-countdown Patch-new

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: k-ohara5...@oco.net

    (No comment was entered for this change.)

    Labels: -Patch-new Patch-needs_work

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: k-ohara5...@oco.net

    (No comment was entered for this change.)

    Labels: -Patch-needs_work Patch-new

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: dak@gnu.org

    Patchy the autobot says: passes tests.  The new warnings look a bit worse than the old.  For the one-page case, only the previous warning: cannot fit music on page: overflow is 13.096881 remains, with the warning: compressing music to fit message complete elided.  For the multi-page case, we get warning: cannot fit music on page: overflow is 7.297150, warning: cannot fit music on page 1; this page was compressed.  It would be better to deliver the information (page + overflow) in a single line to avoid the repetitive nature.  No idea how feasible that is.

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: dak@gnu.org

    Since the patchy run for comment #19 overlapped with the apparent change committed with comment #18, resetting to Patch-new.  But the remark for the warning behavior remains even if the warnings get factored out into a different issue.

    Labels: -Patch-review Patch-new

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: pkx1...@gmail.com

    OK passes make, make check and a full make doc but I get the following:

    --snip--
    input/regression/profile-property-access.log    

    @@ -122,8 +122,8 @@

    grob properties, top 50 rounded to 10

    -TOTAL                         : 294530
    -outside-staff-priority        :  66470
    +TOTAL                         : 295550
    +outside-staff-priority        :  67500
    cross-staff                   :  14520
    staff-symbol                  :  13840
    cause                         :  12010
    @@ -135,7 +135,7 @@
    direction                     :   7360
    meta                          :   6070
    vertical-skylines             :   6060
    -pure-Y-offset-in-progress     :   5610
    +pure-Y-offset-in-progress     :   5600
    stencil                       :   5100
    Y-extent                      :   4690
    duration-log                  :   4690

       

    input/regression/page-breaking-end-of-score.log    

    @@ -10,7 +10,7 @@
    Fitting music on 1 or 2 pages...
    Drawing systems...
    warning: cannot fit music on page: overflow is 6.119719
    -warning: compressing music to fit
    +warning: cannot fit music on page 2; this page was compressed
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/f7/lily-b9567f71.texidoc'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/f7/lily-b9567f71.eps'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/f7/lily-b9567f71-1.eps'...

    input/regression/page-overflow-compression.log    

    @@ -6,7 +6,7 @@
    Fitting music on 1 page...
    Drawing systems...
    warning: cannot fit music on page: overflow is 3.124461
    -warning: compressing music to fit
    +warning: cannot fit music on page 1; this page was compressed
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/c6/lily-73a13001.texidoc'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/c6/lily-73a13001.eps'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/c6/lily-73a13001-1.eps'...

    input/regression/page-breaking-min-systems-per-page2.log    

    @@ -6,7 +6,7 @@
    Fitting music on 1 page...
    Drawing systems...
    warning: cannot fit music on page: overflow is 92.080959
    -warning: compressing music to fit
    +warning: cannot fit music on page 1; this page was compressed
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/94/lily-32d78681.texidoc'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/94/lily-32d78681.eps'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/94/lily-32d78681-1.eps'...

    input/regression/page-breaking-page-count3.log    

    @@ -13,7 +13,7 @@
    continuing, cross fingers
    Drawing systems...
    warning: cannot fit music on page: overflow is 7.297150
    -warning: compressing music to fit
    +warning: cannot fit music on page 1; this page was compressed
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/15/lily-7dccbf09.texidoc'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/15/lily-7dccbf09.eps'...
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/15/lily-7dccbf09-1.eps'...

    input/regression/rest-positioning.log    

    @@ -5,7 +5,6 @@
    Calculating line breaks...
    Drawing systems...
    warning: cannot fit music on page: overflow is 13.096881
    -warning: compressing music to fit
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/9e/lily-347a89b1.texidoc'...
    Writing /tmp/build-lilypond-autobuild/out/lybook-testdb/9e/lily-347a89b1-1.signature
    Layout output to `/tmp/build-lilypond-autobuild/out/lybook-testdb/9e/lily-347a89b1.eps'...
       

    input/regression/repeat-sign-global-size-5.log    

    @@ -9,7 +9,6 @@
    Calculating line breaks...
    Drawing systems...
    warning: cannot fit music on page: overflow is 32.587000
    -warning: compressing music to fit
    Writing header field `texidoc' to `/tmp/build-lilypond-autobuild/out/lybook-testdb/9f/lily-e80b4547.texidoc'...
    Writing /tmp/build-lilypond-autobuild/out/lybook-testdb/9f/lily-e80b4547-1.signature
    Writing /tmp/build-lilypond-autobuild/out/lybook-testdb/9f/lily-e80b4547-2.signature
    --snip--

    James

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: k-ohara5...@oco.net

    The code that discovers a page is over-full is rather distant from the code that counts out the page-number.  If we want to be told which page was over-full, it is much cleaner to have a separate message from the one that told us how much it was over-full.  Thus the two lines.   I can streamline the messages, though, if you think leaving out some details made them a bit worse than the old.

    In most regression tests, there are no page numbers, so we don't get the second line.
    http://codereview.appspot.com/25710043/

    Labels: -Patch-review Patch-new

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: lemzw...@googlemail.com

    Why not make lilypond always emit the page number?  Probably even multiple times if necessary or useful.  Then warning messages don't need to take care of page numbers.

    I think that lilypond could be much more verbose here to entertain the waiting user.

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: dak@gnu.org

    I think you overestimate the entertainment value of a sudden dump of a large bunch of numbers at the end of a long wait.

     
  • Google Importer

    Google Importer - 2013-11-19

    Originally posted by: lemzw...@googlemail.com

    Well, if it improves warning messages (or rather, the ability to better locate where the warning happens), why not?

     
  • Google Importer

    Google Importer - 2013-11-20

    Originally posted by: dak@gnu.org

    First you have to notice there's a warning in the midst of the end-of-run dump of numbers.

    They are easy enough to overlook anyway.

    No, I don't think the default amount of verbosity is too low, and Keith's approach fit pretty well into that.

     
1 2 > >> (Page 1 of 2)