\version "2.11.46" #(set-default-paper-size "a7" 'landscape) #(set-global-staff-size 13) \header { title="Title of the score" composer="The composer" copyright="Copyright footer" scorenumber="Number of the score" publisher = "The publisher" } #(define (page-number-for-label layout label) (let* ((table (ly:output-def-lookup layout 'label-page-table)) (label-page (and (list? table) (assoc label table))) (page-number (and label-page (cdr label-page))) ) page-number ) ) #(define copyright-footer-table '()) #(define thisPageCopyrightFooter-music #f) #(define is-copyright-page #f) #(let ((copyright-table (list))) (set! is-copyright-page (lambda (layout props arg) (ly:make-stencil `(delay-stencil-evaluation ,(delay (ly:stencil-expr (begin (if (and (null? copyright-table) (not (null? copyright-footer-table))) (for-each (lambda (label) (let* ((page-number (page-number-for-label layout label))) (if page-number (set! copyright-table (cons page-number copyright-table)) ) ) ) copyright-footer-table) ) (let* ((page-number (chain-assoc-get 'page:page-number props -1))) (if (memq page-number copyright-table) ; This is a copyright page! (interpret-markup layout props arg) empty-stencil ) ) ) ))) (cons 0 0) (cons 0 0) ;(ly:stencil-extent (interpret-markup layout props "XXX") Y) ) ) ) (set! thisPageCopyrightFooter-music (lambda (parser) (let* ((label (gensym "copyrightfooter"))) (set! copyright-footer-table (cons label copyright-footer-table)) (make-music 'Music 'page-marker #t 'page-label label) ) ) ) ) thisPageCopyrightFooter = #(define-music-function (parser location) () (thisPageCopyrightFooter-music parser) ) \paper { oddFooterMarkup = \markup { \column { \line {"---------------"} %% publisher header field only on title page. This does not add %% space if no markup is shown: \on-the-fly #first-page \fill-line { \fromproperty #'header:publisher \null } \line {"---------------"} %% copyright on pages with markers, reserves space even if no %% copyright is inserted on a page: \on-the-fly #is-copyright-page \fill-line { \fromproperty #'header:copyright \null } \line {"---------------"} } } } \thisPageCopyrightFooter \markup "With Copyright footer and publisher" \pageBreak \markup "No Copyright footer, no publisher" \pageBreak \thisPageCopyrightFooter \markup "With Copyright footer, no publisher"