]> git.donarmstrong.com Git - lilypond.git/blob - ly/titling-init.ly
* lily/kpath.cc:
[lilypond.git] / ly / titling-init.ly
1 \version "2.4.0"
2
3 slashSeparator = \markup {
4     \hcenter
5     \vcenter \combine
6       \beam #2.0 #0.5 #0.48
7       \raise #0.7 \beam #2.0 #0.5 #0.48
8   }
9
10
11 tagline = \markup {
12   \with-url
13   #"http://lilypond.org/pdflink/"
14   \line {
15     "Engraved by LilyPond"
16     #(ly:export (lilypond-version))
17     "-"
18     "www.lilypond.org"
19   }
20 }
21 bookTitleMarkup = \markup {
22
23   \column {
24       \override #'(baseline-skip . 3)
25     \fill-line { \fromproperty #'header:dedication }
26     \fill-line {
27       \huge \bigger \bigger \bold \fromproperty #'header:title
28     }
29     \fill-line {
30       \override #'(baseline-skip . 6)
31       \column {
32         \fill-line {
33           \huge \bigger \bigger
34           \bold \fromproperty #'header:subtitle
35         }
36         \fill-line {
37           \huge \bigger
38           \bold \fromproperty #'header:subsubtitle
39         }
40 %% From 2.4:
41 %%      \column {
42 %%        \override #'(baseline-skip . 5)
43 %%        ""
44 %%      }
45       }
46     }
47     \fill-line {
48       \fromproperty #'header:poet
49       \fromproperty #'header:instrument 
50       \column {
51         \fromproperty #'header:composer
52         \fromproperty #'header:arranger
53       }
54     }
55   }
56
57 }
58
59 scoreTitleMarkup = \markup {
60   \fill-line {
61     \fromproperty #'header:piece
62     \fromproperty #'header:opus
63   }
64 }
65
66 #(define (first-page layout props arg)
67   (if (= (chain-assoc-get 'page:page-number props -1) 1)
68     (interpret-markup layout props arg)
69     empty-stencil))
70
71 #(define (last-page layout props arg)
72   (if (chain-assoc-get 'page:last? props #f)
73     (interpret-markup layout props arg)
74     empty-stencil))
75
76 #(define (not-first-page layout props arg)
77   (if (not (= (chain-assoc-get 'page:page-number props -1) 1))
78     (interpret-markup layout props arg)
79     empty-stencil))
80
81 #(define (not-single-page layout props arg)
82   (if (not (and (= (chain-assoc-get 'page:page-number props -1) 1)
83                 (chain-assoc-get 'page:last? props -1)))
84     (interpret-markup layout props arg)
85     empty-stencil))
86
87 oddHeaderMarkup = \markup
88 \on-the-fly #not-single-page
89 \fill-line {
90   ""
91   \on-the-fly #not-first-page \fromproperty #'header:instrument
92   \fromproperty #'page:page-number-string
93 }
94
95 evenHeaderMarkup = \markup
96 \fill-line {
97   \fromproperty #'page:page-number-string
98   \fromproperty #'header:instrument
99   ""
100 }
101
102 oddFooterMarkup = \markup {
103   \column {
104     \fill-line {
105
106       %% Copyright header field only on first page.
107       \on-the-fly #first-page \fromproperty #'header:copyright
108     }
109     \fill-line {
110       %% Tagline header field only on last page.
111       \on-the-fly #last-page \fromproperty #'header:tagline
112     }
113   }
114 }
115
116