Hello Harm,

I don't have a solution, but I found, that not-first-page is not defined in the global space. You can't access it with $(display not-first-page). If you (re-)define a procedure #(define (not-first-page layout props arg) (interpret-markup layout props arg)) the example compiles. So propably there is a way to expose the needed functions/vars to another scope?

Cheers,
Jan-Peter

Am 22.03.2013 02:05, schrieb Thomas Morley:
myname = #(ly:parser-output-name parser)

oddFooterMarkupI =
   \markup \fill-line { "XYZ" }

oddFooterMarkupII =
   \markup {
           %\on-the-fly #not-first-page
           \fill-line { "123" }
   }

writeBookTwice =
#(define-void-function (parser location book)
    (ly:book?)

    ; process with oddFooterMarkupI
    (ly:output-def-set-variable!
       (ly:book-paper book)
       'oddFooterMarkup
       oddFooterMarkupI)
    (ly:book-process
       book
       $defaultpaper
       $defaultlayout
       myname)

    ; process with oddFooterMarkupII
    (ly:output-def-set-variable!
       (ly:book-paper book)
       'oddFooterMarkup
       oddFooterMarkupII)
    (ly:book-process
       book
       $defaultpaper
       $defaultlayout
       (format "~a-other-footer" myname)))


\writeBookTwice
   \book {
     \bookpart { \repeat unfold 2 { c''1 \pageBreak } }
     \bookpart { \repeat unfold 2 { cis''1 \pageBreak } }
   }


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to