From: Thomas Morley Date: Thu, 13 Aug 2015 23:32:22 +0000 (+0200) Subject: input/regression/bookparts.ly fails at PDF conversion stage X-Git-Tag: release/2.19.26-1~17 X-Git-Url: https://git.donarmstrong.com/lilypond.git?a=commitdiff_plain;h=3e89af67bc6a9e3fd5d9a28db256608ac79510e0;p=lilypond.git input/regression/bookparts.ly fails at PDF conversion stage issue 4554 fixes \with-link let it look at the first page number of the entire book --- diff --git a/ly/titling-init.ly b/ly/titling-init.ly index eb9ced5375..f397ad6bd9 100644 --- a/ly/titling-init.ly +++ b/ly/titling-init.ly @@ -76,14 +76,8 @@ scoreTitleMarkup = \markup { \column { #(define (book-first-page? layout props) "Return #t iff the current page number, got from @code{props}, is the book first one." - (define (ancestor layout) - "Return the topmost layout ancestor" - (let ((parent (ly:output-def-parent layout))) - (if (not (ly:output-def? parent)) - layout - (ancestor parent)))) (= (chain-assoc-get 'page:page-number props -1) - (ly:output-def-lookup (ancestor layout) 'first-page-number))) + (book-first-page layout props))) #(define (book-last-page? layout props) "Return #t iff the current page number, got from @code{props}, is the diff --git a/scm/define-markup-commands.scm b/scm/define-markup-commands.scm index 363977da9b..0022d721fc 100644 --- a/scm/define-markup-commands.scm +++ b/scm/define-markup-commands.scm @@ -509,6 +509,16 @@ in the PDF backend. (ly:stencil-add (ly:make-stencil link-expr xextent yextent) stil))) +(define-public (book-first-page layout props) + "Return the @code{'first-page-number} of the entire book" + (define (ancestor layout) + "Return the topmost layout ancestor" + (let ((parent (ly:output-def-parent layout))) + (if (not (ly:output-def? parent)) + layout + (ancestor parent)))) + (ly:output-def-lookup (ancestor layout) 'first-page-number)) + (define-markup-command (with-link layout props label arg) (symbol? markup?) #:category other @@ -536,8 +546,7 @@ only works in the PDF backend. (if (list? table) (assoc-get label table) #f)) - (first-page-number - (ly:output-def-lookup layout 'first-page-number)) + (first-page-number (book-first-page layout props)) (current-page-number (if table-page-number (1+ (- table-page-number first-page-number))