3 slashSeparator
= \markup {
7 \raise #0.7 \beam #2.0 #0.5 #0.48
13 %% todo: lilypond.org/music-engraving
14 #"http://lilypond.org/web/"
16 "Music engraving by LilyPond"
17 #(ly
:export
(lilypond-version
))
20 #(ly
:export
(ly
:wide-char-
>utf-
8 #x
2014))
25 bookTitleMarkup
= \markup {
26 \override #'(baseline-skip
. 3.5)
28 \fill-line
{ \fromproperty #'header
:dedication
}
29 \override #'(baseline-skip
. 3.5)
33 \bigger \fromproperty #'header
:title
37 \bigger \fromproperty #'header
:subtitle
41 \fromproperty #'header
:subsubtitle
44 \fromproperty #'header
:poet
45 { \large \bold \fromproperty #'header
:instrument
}
46 \fromproperty #'header
:composer
49 \fromproperty #'header
:meter
50 \fromproperty #'header
:arranger
56 scoreTitleMarkup
= \markup {
58 \fromproperty #'header
:piece
59 \fromproperty #'header
:opus
63 #(define
(first-page layout props arg
)
64 (if
(= (chain-assoc-get
'page
:page-number props -
1)
65 (ly
:output-def-lookup layout
'firstpagenumber
)) (interpret-markup layout props arg
)
68 #(define
(last-page layout props arg
)
69 (if
(chain-assoc-get
'page
:last? props
#f)
70 (interpret-markup layout props arg
)
73 #(define
(not-first-page layout props arg
)
74 (if
(not
(= (chain-assoc-get
'page
:page-number props -
1)
75 (ly
:output-def-lookup layout
'firstpagenumber
)))
76 (interpret-markup layout props arg
)
80 #(define
(not-single-page layout props arg
)
81 (if
(not
(and
(= (chain-assoc-get
'page
:page-number props -
1)
82 (ly
:output-def-lookup layout
'firstpagenumber
))
83 (chain-assoc-get
'page
:last? props -
1)))
84 (interpret-markup layout props arg
)
87 #(define
(print-page-number layout props arg
)
88 (if
(eq?
(ly
:output-def-lookup layout
'printpagenumber
) #t
)
89 (interpret-markup layout props arg
)
92 #(define
(print-page-number-check-first layout props arg
)
93 (if
(or
(not
(= (chain-assoc-get
'page
:page-number props -
1)
94 (ly
:output-def-lookup layout
'firstpagenumber
)))
95 (eq?
(ly
:output-def-lookup layout
'printfirstpagenumber
) #t
))
96 (print-page-number layout props arg
)
99 oddHeaderMarkup
= \markup
101 %% force the header to take some space, otherwise the
102 %% page layout becomes a complete mess.
104 \on-the-fly
#not-first-page
\fromproperty #'header
:instrument
105 \on-the-fly
#print-page-number-check-first
\fromproperty #'page
:page-number-string
108 evenHeaderMarkup
= \markup
110 \on-the-fly
#print-page-number-check-first
\fromproperty #'page
:page-number-string
111 \on-the-fly
#not-first-page
\fromproperty #'header
:instrument
115 oddFooterMarkup
= \markup {
118 %% Copyright header field only on first page.
119 \on-the-fly
#first-page
\fromproperty #'header
:copyright
122 %% Tagline header field only on last page.
123 \on-the-fly
#last-page
\fromproperty #'header
:tagline