bug-lilypond
[Top][All Lists]
Advanced

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

Issue 1465 in lilypond: \pageBreak breaks \page-ref


From: lilypond
Subject: Issue 1465 in lilypond: \pageBreak breaks \page-ref
Date: Wed, 29 Dec 2010 02:03:42 +0000

Status: Accepted
Owner: ----
Labels: Type-Defect Priority-Critical Regression

New issue 1465 by ColinPKCampbell: \pageBreak breaks \page-ref
http://code.google.com/p/lilypond/issues/detail?id=1465

In version 2.12.3 the code below behaves as expected: the \page-ref for mark A is page 2. Under 2.13.44 it is displayed as 1.

\version "2.12.3" % Mark A is on page 2
%\version "2.13.44"
  \label #'firstScore
  \score {
    {
      c'1
      \pageBreak \mark A \label #'markA
      c'1
    }
  }
  \markup { The first score begins on page \page-ref #'firstScore
    "0" "?" }
  \markup { Mark A is on page \page-ref #'markA "0" "?" }

  \markup { The first score begins on page \page-ref #'firstScore "0" "?" }
  \markup { Mark A is on page \page-ref #'markA "0" "?" }

The code is supplied by Neil Puttock, who comments on the previous issue 884:
 It's a consequence of the way label-page-table is generated;
since 2.13.5 the order is consistently reversed, leading to \page-ref
accessing the first entry for markA.  Here's the output for
label-page-table in 2.12 and 2.13:

(2.12.3)
((markA . 2) (markTheEnd . 2) (firstScore . 1) (markA . 1))

(2.13.45)
((firstScore . 1) (markA . 1) (markA . 2) (markTheEnd . 2))

<Neil gives the code above, modified by me to add the \version lines and take out a \book block >

Due to the way labels are generated inside a score (using paper
columns), the concept of a label at a page break is dubious: the same
NonMusicalPaperColumn is on two pages (at the end of the last system
before the break, and the start of the next system after the break),
hence the duplicated page marker you see in the output for
label-page-table above.



Attachments:
        bug2-13-44.pdf  20.3 KB
        bug2-12-3.pdf  18.8 KB




reply via email to

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