bug-lilypond
[Top][All Lists]
Advanced

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

Re: NR 3.2.3 Reference to page numbers - buggy? (issue 884)


From: Neil Puttock
Subject: Re: NR 3.2.3 Reference to page numbers - buggy? (issue 884)
Date: Wed, 29 Dec 2010 00:49:45 +0000

On 27 December 2010 17:58, Jean-Charles Malahieude <address@hidden> wrote:

> May I guess that it is due to \mark falling before the first note event
> is generated?

No.  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))

Of course, this means that in 2.12 the following snippet is also
wrong, so it would be incorrect to assume this bug is a regression:

\book {
  \label #'firstScore         %% page 1
  \score {
    {
      c'1
      \label #'markA % still page 2, due to alist order in label-page-table
      \pageBreak
      \mark A   %% page 2
      c'1 \label #'markTheEnd %% page 2

    }
  }

  \markup { The first score begins on page \page-ref #'firstScore "0" "?" }
  %% prints page 1

  \markup { Mark A is on page \page-ref #'markA "0" "?" }
  %% prints page 2
  \markup { Finish line on page \page-ref #'markTheEnd "0" "?" }
  %% prints page 2
}

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.

Cheers,
Neil



reply via email to

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