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