]> git.donarmstrong.com Git - lilypond.git/blob - input/test/ancient-font.ly
Merge branch 'jneeman' of git+ssh://jneem@git.sv.gnu.org/srv/git/lilypond into jneeman
[lilypond.git] / input / test / ancient-font.ly
1 \version "2.10.0"
2 % TODO: split ancient-font into seperate files; possibly in
3 % different locations.
4 \header {
5 texidoc = "@cindex Ancient Font
6 Here are shown many (all?) of the symbols that are
7 included in LilyPond's support of ancient notation.
8 "
9 }
10
11
12 upperStaff = \new GregorianStaff =  "upperStaff" <<
13   \context GregorianVoice <<
14     \set Score.timing = ##f
15 %   \set Score.forceAccidental = ##t %%%%%%%% FIXME: what happened to this property?
16
17     \override Staff.StaffSymbol  #'line-count = #4
18
19      \transpose c c {
20         \override Staff.KeySignature  #'style = #'vaticana
21         \override Staff.Accidental  #'style = #'vaticana
22         \override NoteHead  #'style = #'vaticana.punctum
23         \key es \major
24         \clef "vaticana-fa2"
25         c!1 des! e! f! ges!
26
27         \override NoteHead  #'style = #'vaticana.inclinatum
28         a! b! ces'
29         \override Staff.BarLine  #'bar-size = #3.0 \bar "|"
30 %       \break % 1 (8*1)
31
32         \override NoteHead  #'style = #'vaticana.quilisma
33         b! des'! ges! fes!
34         \breathe
35         \clef "vaticana-fa1"
36         \override NoteHead  #'style = #'vaticana.plica
37         es d
38         \override NoteHead  #'style = #'vaticana.reverse.plica
39         c d
40         \override Staff.BarLine  #'bar-size = #3.0 \bar "|"
41 %       \break %2 (8*1)
42
43         \override NoteHead  #'style = #'vaticana.punctum.cavum
44         es f
45         \override NoteHead  #'style = #'vaticana.lpes
46         g as
47         \override NoteHead  #'style = #'vaticana.upes
48         bes as
49         \override NoteHead  #'style = #'vaticana.vupes
50         g f
51         \override NoteHead  #'style = #'vaticana.linea.punctum
52         \override Staff.BarLine  #'bar-size = #2.0 \bar "|"
53 %       \break % 3 (8*1)
54
55         es d
56         \override NoteHead  #'style = #'vaticana.epiphonus
57         c d
58         \override NoteHead  #'style = #'vaticana.cephalicus
59         es f
60
61         \override Staff.KeySignature  #'style = #'medicaea
62         \override Staff.Accidental  #'style = #'medicaea
63         \override Staff.Custos  #'style = #'medicaea
64         \override NoteHead  #'style = #'medicaea.punctum
65         \clef "medicaea-fa2"
66         ces! des!
67         \override Staff.BarLine  #'bar-size = #3.0 \bar "|"
68 %       \break % 4 (8*1)
69
70         e! f! ges!
71         \clef "medicaea-do2"
72         \override NoteHead  #'style = #'medicaea.inclinatum
73         a! b! ces'!
74         \override NoteHead  #'style = #'medicaea.virga
75         b! a!
76         \override Staff.BarLine  #'bar-size = #3.0 \bar "|"
77 %       \break % 5 (8*1)
78
79         ges! fes!
80         \clef "medicaea-fa1"
81         \override NoteHead  #'style = #'medicaea.rvirga
82         e! des! ces!
83
84         \override Staff.KeySignature  #'style = #'hufnagel
85         \override Staff.Accidental  #'style = #'hufnagel
86         \override Staff.Custos  #'style = #'hufnagel
87         \override NoteHead  #'style = #'hufnagel.punctum
88         \clef "hufnagel-fa2"
89         ces! des! es!
90         \override Staff.BarLine  #'bar-size = #3.0 \bar "|"
91 %       \break % 6 (8*1)
92
93         fes! ges!
94         \clef "hufnagel-do2"
95         \override NoteHead  #'style = #'hufnagel.lpes
96         as! bes! ces'!
97         \override NoteHead  #'style = #'hufnagel.virga
98         bes! as!
99         \override Staff.BarLine  #'bar-size = #3.0 \bar "|"
100 %       \break % 7 (8*1)
101
102         ges! fes!
103         \clef "hufnagel-do-fa"
104         \override NoteHead  #'style = #'hufnagel.punctum
105         es! des! ces! des! es! fes!
106         \bar "||"
107 %       \break % 8 (8*1)
108
109         s32*1
110 %       \break % 12 (32*1)
111     }
112   >>
113 >>
114
115 lowerStaff = \new MensuralStaff =  "lowerStaff" <<
116   \context MensuralVoice <<
117     
118     % this is broken until further notice -- see refman
119     % \override Staff.StaffSymbol  #'line-count = #5
120     \applyOutput #'Staff #(outputproperty-compatibility (make-type-checker 'staff-symbol-interface) 'line-count 5)
121
122      \transpose c c {
123         \set autoBeaming = ##f
124         \override NoteHead  #'style = #'neomensural
125         \override Rest  #'style = #'neomensural
126         \key a \major
127
128 % FIXME: lily crashes on some (invalid?) ligatures with:
129 %   ERROR: In procedure gh_scm2int:
130 %   ERROR: Wrong type argument in position 1: ()
131
132 % FIXME: lily emits "Programming error: Infinity or NaN encountered"
133 % on many ligatures such as BB.
134
135         cis'1 d'\breve gis'\breve e'\breve \[ e'\longa fis'\longa \]
136         \set Staff.forceClef = ##t
137         \clef "neomensural-c2"
138         cis1
139         \bar "|"
140 %       \break % 2 (16*1)
141
142         \[ g\breve dis''\longa \]
143         b\breve \[ a\longa d\longa \]
144         \clef "petrucci-c2"
145 %       \break % 4 (16*1)
146
147         fis1 ces1
148         \clef "petrucci-c2"
149         r\longa
150         \set Staff.forceClef = ##t
151         \clef "mensural-c2"
152         r\breve
153         \bar "|"
154 %       \break % 5 (8*1)
155
156         r2
157         \clef "mensural-g"
158         r4 r8 r16 r16
159         \override NoteHead  #'style = #'mensural
160         \override Stem  #'flag-style = #'mensural
161         \override Stem  #'thickness = #1.0
162         \override Rest  #'style = #'mensural
163         \clef "petrucci-f"
164         c8 b, c16 b, c32 b, c64 b, c64 b,
165         d8 e  d16 e  d32 e  d64 e  d64 e
166         r\longa
167         \set Staff.forceClef = ##t
168         \clef "petrucci-f"
169         r\breve
170         \bar "|"
171 %       \break % 6 (8*1)
172
173         r\breve 
174         \clef "mensural-f"
175         % FIXME: must set Stem flag-style to #'neomensural to avoid
176         % segmentation fault on r8/r16/r32.  (Strange: what has
177         % Stem flag-style to do with mensural rests?)
178         \override Stem  #'flag-style = #'neomensural
179         % FIXME: produces warnings about "flag `neomensurald4' (or 3) not found".
180         r2 r4 r8 r16 r16
181         \override Stem  #'flag-style = #'mensural
182         \set Staff.forceClef = ##t
183         \clef "mensural-f"
184         e\breve f g a1
185         \clef "mensural-g"
186 %       \break % 7 (8*1)
187
188         \[ bes'!\longa a'!\longa c''!\longa \]
189         e'1 d' c' d' \bar "|"
190         \bar "|"
191 %       \break % 9 (16*1)
192
193         bes'!\longa fis'!1 as'!1 ges'!\longa % lig
194         \set Staff.forceClef = ##t
195         \clef "mensural-g"
196         e'2 d' c' \bar "|"
197 %       \break % 11 (16*1)
198
199         \set Staff.forceClef = ##t
200         \clef "petrucci-g"
201         c'2 d' e' f'
202         \clef "petrucci-g"
203         g' as'! bes'! cis''!
204         bes'! as'! gis'! fis'!
205         \set Staff.forceClef = ##t
206         \clef "mensural-g"
207         es'! des'! cis'!1 \bar "||"
208 %       \break % 12 (8*1)
209     }
210   >>
211 >>
212
213 \paper {
214         line-thickness = #(/ staff-space 5.0)
215 }
216
217 \score {
218     \context Score <<
219         \upperStaff
220         \lowerStaff
221     >>
222     \layout {
223 % do we want to keep these settings? -gp
224         line-width = 17.25\cm
225         textheight = 26.0\cm
226         indent = 0.0
227         \context {
228             \Score
229             \accepts MensuralStaff
230             \accepts GregorianStaff
231 %           timing = ##f %%%%%%%% FIXME: this has no effect
232         }
233         \context {
234             \Voice
235             \name MensuralVoice
236             \alias Voice
237             \remove Ligature_bracket_engraver
238             \consists Mensural_ligature_engraver
239             \override NoteHead #'style = #'mensural
240 %           \override Stem #'flag-style = #'mensural %%%%%%%% FIXME: this core dumps
241             \override Stem #'thickness = #1.0
242             \override Rest #'style = #'mensural
243             autoBeaming = ##f
244         }
245         \context {
246             \Voice
247             \name GregorianVoice
248             \alias Voice
249             \remove Ligature_bracket_engraver
250 %           \consists Gregorian_ligature_engraver %%%%%%%% TODO: not yet implemented
251             \override NoteHead #'style = #'vaticana.punctum
252             autoBeaming = ##f
253         }
254         \context {
255             \Staff
256             \name MensuralStaff
257             \alias Staff
258             \accepts MensuralVoice
259             \consists Custos_engraver
260             \override TimeSignature #'style = #'mensural
261             \override KeySignature #'style = #'mensural
262             \override Accidental #'style = #'mensural
263             \override Custos #'style = #'mensural
264             \override Custos #'neutral-position = #3
265             \override Custos #'neutral-direction = #down
266             clefGlyph = #"clefs.petrucci.c2"
267             clefPosition = #-2
268             clefOctavation = #0 
269         }
270         \context {
271             \Staff
272             \name GregorianStaff
273             \alias Staff
274             \accepts GregorianVoice
275             \consists Custos_engraver
276             \remove Time_signature_engraver
277             \override StaffSymbol #'thickness = #2.0
278             \override StaffSymbol #'line-count = #4
279             \override KeySignature #'style = #'vaticana
280             \override Accidental #'style = #'vaticana
281             \override Custos #'style = #'vaticana
282             \override Custos #'neutral-position = #4
283             \override Custos #'neutral-direction = #down
284             clefGlyph = #"clefs.vaticana.do"
285             clefPosition = #1
286             clefOctavation = #0 
287         }
288         \context {
289             \RemoveEmptyStaffContext
290             \accepts MensuralVoice
291             \accepts GregorianVoice
292         }
293     }
294 }
295