]> git.donarmstrong.com Git - lilypond.git/blob - scm/generic-property.scm
467f9e8c73acdf1dc6c99858122e6665ebac7c35
[lilypond.git] / scm / generic-property.scm
1
2 (define generic-beam-properties
3   (cons "Beam"
4         (list
5          (list 'beamSlopeDamping number? 'damping)
6          (list 'autoKneeGap number? 'auto-knee-gap)
7          (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
8          (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
9          (list 'beamHeight number? 'height-hs)
10          (list 'beamVerticalPosition number? 'y-position-hs)
11          )
12         )
13   )
14
15
16 (define generic-stem-properties
17   (cons "Stem"
18         (list
19          (list 'verticalDirection dir? 'direction)       
20          (list 'stemVerticalDirection dir? 'direction)
21          (list 'stemLength number? 'length)
22          (list 'flagStyle string? 'flag-style)
23          (list 'stemCentered boolean? 'stem-centered)
24          (list 'noStemExtend boolean? 'no-stem-extend)
25          (list 'stemShorten number? 'shorten)
26          ))
27   )
28
29 (define generic-dot-properties
30   (cons "Dots" (list
31                 (list 'verticalDirection dir? 'direction)
32                 (list 'dotDirection dir? 'direction)
33                 )
34         ))
35
36 (define generic-script-properties
37   (cons "Script" (list
38                   (list 'articulationScriptVerticalDirection dir? 'direction)
39                   (list 'articulationScriptPadding number? 'padding)
40
41                   ))
42   )
43
44
45
46 (define generic-text-properties
47   (cons "Text_item" (list
48                      (list 'textStyle string? 'style)
49                      (list 'textScriptPadding number? 'padding)
50                      (list 'textVerticalAlignment dir? 'self-alignment-Y)
51                      (list 'textHorizontalAlignment dir? 'self-alignment-X)
52                      )
53         ))
54
55 (define generic-crescendo-properties
56   (cons "Crescendo" (list
57                      (list 'verticalDirection dir? 'direction)
58                      (list 'dynamicDirection dir? 'direction)
59                      (list 'dynamicPadding number? 'padding) 
60                      (list 'dynamicMinimumSpace number? 'minimum-space) 
61                      )))
62   
63 (define generic-dynamic-line-spanner-properties
64   (cons "Dynamic_line_spanner" (list
65                      (list 'verticalDirection dir? 'direction)
66                      (list 'dynamicDirection dir? 'direction)
67                      (list 'dynamicPadding number? 'padding) 
68                      (list 'dynamicMinimumSpace number? 'minimum-space) 
69                      )))
70   
71 (define generic-volta-spanner-properties
72   (cons "Volta_spanner" (list
73                      (list 'voltaVerticalDirection dir? 'direction)
74                      (list 'voltaPadding number? 'padding) 
75                      (list 'voltaMinimumSpace number? 'minimum-space) 
76                      )))
77   
78 (define generic-bar-properties
79   (cons "Staff_bar" (list
80                      (list 'barSize number? 'bar-size))
81         )
82   )     
83
84 ; don't do this yet. Depends on whennn the staff is really announced
85 (define generic-staff-symbol-properties
86   (cons "Staff_symbol" (list
87                         )
88         )
89   )
90
91 (define generic-breathing-sign-properties
92   (cons "Breathing_sign"
93         (list
94          (list 'verticalDirection dir? 'direction)
95          (list 'breathingSignVerticalDirection dir? 'direction)
96          )))
97
98 (define generic-clef-properties
99   (cons "Clef_item"
100         (list
101          (list 'clefStyle string? 'style))
102         )
103   )
104
105 (define generic-All-properties
106   (cons "all"  (list (list 'fontSize number? 'fontsize))))
107
108 (define generic-rest-properties
109   (cons "Rest" (list (list 'restStyle string? 'reststyle))))
110
111 (define generic-rest-collision-properties
112   (cons "Rest_collision" (list (list 'maximumRestCount number? 'maximum-rest-count))))
113
114 (define generic-tie-properties
115   (cons "Tie" (list
116                (list 'verticalDirection dir? 'direction)
117                (list 'tieVerticalDirection dir? 'direction)
118   )))
119 (define generic-tie-column-properties
120   (cons "Tie_column" (list
121                       (list 'verticalDirection dir? 'direction)
122                       (list 'tieVerticalDirection dir? 'direction)
123   )))
124
125
126 (define generic-note-column-properties
127   (cons "Note_column"
128         (list
129          (list 'horizontalNoteShift number? 'horizontal-shift)
130          (list 'forceHorizontalShift number? 'force-hshift)
131          )))
132
133 (define generic-collision-properties
134   (cons "Collision"
135         (list
136          (list 'collisionMergeDotted boolean? 'merge-differently-dotted)
137          )
138         )
139   )
140   
141 (define generic-slur-properties
142   (cons "Slur"
143         (list
144          (list 'verticalDirection dir? 'direction)       
145          (list 'slurVerticalDirection dir? 'direction)
146          (list 'slurDash number? 'dashed))))
147
148 (define generic-timesig-properties
149   (cons "Time_signature"
150         (list
151          (list 'timeSignatureStyle string? 'style))))
152
153 (define (symbol-or-boolean? s)
154   (or (boolean? s) (symbol? s)))
155
156 (define generic-tuplet-spanner-properties
157   (cons "Tuplet_spanner"
158         (list
159          (list 'tupletNumberVisibility symbol-or-boolean? 'tuplet-number-visibility)
160          (list 'tupletBracketVisibility symbol-or-boolean? 'tuplet-bracket-visibility)
161         ))
162 )
163
164 (define generic-voice-properties
165   (list
166    generic-stem-properties
167    generic-breathing-sign-properties
168    generic-crescendo-properties
169    generic-dynamic-line-spanner-properties
170    generic-tie-properties
171    generic-tie-column-properties   
172    generic-tuplet-spanner-properties
173    generic-rest-properties
174    generic-slur-properties
175    generic-beam-properties
176    generic-text-properties
177    generic-note-column-properties
178    generic-script-properties
179    generic-All-properties
180    ))
181
182 (define generic-grace-properties generic-voice-properties)
183 (define generic-staff-properties
184   (list
185    generic-text-properties   
186    generic-bar-properties
187    generic-timesig-properties
188    generic-clef-properties
189    generic-collision-properties
190    generic-rest-collision-properties
191    generic-volta-spanner-properties
192 ;   generic-staff-symbol-properties
193    generic-All-properties      
194    )
195   )
196 (define generic-grand-staff-properties
197   (list
198    generic-text-properties   
199    generic-bar-properties
200    ))
201
202 (define generic-thread-properties
203   (list generic-All-properties
204         generic-dot-properties
205         )
206
207   )
208    
209 (define generic-lyrics-properties
210   (list generic-text-properties
211   )
212   
213 )