lilypond-user
[Top][All Lists]
Advanced

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

Re: book and instrument


From: Xavier Scheuer
Subject: Re: book and instrument
Date: Thu, 26 May 2011 22:51:08 +0200

On 26 May 2011 22:40, Jean-Charles Malahieude <address@hidden> wrote:
>
> Hi all!
>
> When using a separate book for generating instrumental parts, is there a
> easy way to get rid of the superfluous "instrument" appearing with each
> bookpart?

The answer has been given on the French Users mailing list:
http://lilypond-french-users.1298960.n2.nabble.com/bookpart-header-instrument-abc-is-printed-twice-tp5280023p5281062.html

Nicolas Sceaux defines  "not-part-first-page"  and
"print-page-number-check-part-first"  and changes  "oddHeaderMarkup"
and "evenHeaderMarkup"  accordingly.

\paper {
  #(define (not-part-first-page layout props arg)
     (if (not (= (chain-assoc-get 'page:page-number props -1)
                 (ly:output-def-lookup layout 'first-page-number)))
         (interpret-markup layout props arg)
         empty-stencil))

  #(define (print-page-number-check-part-first layout props arg)
     (if (or (not (= (chain-assoc-get 'page:page-number props -1)
                     (ly:output-def-lookup layout 'first-page-number)))
             (eq? (ly:output-def-lookup layout 'print-first-page-number) #t))
         (create-page-number-stencil layout props arg)
         empty-stencil))

  oddHeaderMarkup = \markup \fill-line {
    %% force the header to take some space, otherwise the
    %% page layout becomes a complete mess.
    " "
    \on-the-fly #not-part-first-page \fromproperty #'header:instrument
    \on-the-fly #print-page-number-check-part-first \fromproperty
#'page:page-number-string
  }
  evenHeaderMarkup = \markup \fill-line {
    \on-the-fly #print-page-number-check-part-first \fromproperty
#'page:page-number-string
    \on-the-fly #not-part-first-page \fromproperty #'header:instrument
    " "
  }
}

Maybe this could be implemented in LilyPond directly (and documented).

Cheers,
Xavier

-- 
Xavier Scheuer <address@hidden>



reply via email to

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