5 ; (list PROPERTYDESCRIPTIONS))
11 ; (list 'translatorPropertySymbol type-predicate backend-property-symbol)
13 ; Descriptions earlier in the list take precedence over later descriptions.
17 (define generic-beam-properties
20 (list 'beamSlopeDamping number? 'damping)
21 (list 'autoKneeGap number? 'auto-knee-gap)
22 (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
23 (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
24 (list 'beamHeight number? 'height-hs)
25 (list 'beamVerticalPosition number? 'y-position-hs)
31 (define generic-stem-properties
34 (list 'stemVerticalDirection dir? 'direction)
35 (list 'verticalDirection dir? 'direction)
36 (list 'stemLength number? 'length)
37 (list 'flagStyle string? 'flag-style)
38 (list 'stemCentered boolean? 'stem-centered)
39 (list 'noStemExtend boolean? 'no-stem-extend)
40 (list 'stemShorten number? 'shorten)
44 (define generic-dot-properties
47 (list 'dotDirection dir? 'direction)
48 (list 'verticalDirection dir? 'direction)
52 (define generic-script-properties
54 (list 'articulationScriptVerticalDirection dir? 'direction)
55 (list 'articulationScriptPadding number? 'padding)
62 (define generic-text-properties
63 (cons 'Text_item (list
64 (list 'textStyle string? 'style)
65 (list 'textScriptPadding number? 'padding)
66 (list 'textVerticalAlignment dir? 'self-alignment-Y)
67 (list 'textHorizontalAlignment dir? 'self-alignment-X)
68 (list 'textScriptWordSpace number? 'word-space)
72 (define generic-sustain-pedal-properties
73 (cons 'Sustain_pedal (list
74 (list 'textScriptPadding number? 'padding)
75 (list 'sustainPedalPadding number? 'padding))))
77 (define generic-chord-name-properties
78 (cons 'Chord_name (list
79 (list 'textScriptWordSpace number? 'word-space)
80 (list 'chordNameWordSpace number? 'word-space)
81 (list 'chordNameStyle string? 'style))))
83 (define generic-crescendo-properties
84 (cons 'Crescendo (list
85 (list 'dynamicDirection dir? 'direction)
86 (list 'verticalDirection dir? 'direction)
87 (list 'dynamicPadding number? 'padding)
88 (list 'dynamicMinimumSpace number? 'minimum-space)
91 (define generic-dynamic-line-spanner-properties
92 (cons 'Dynamic_line_spanner (list
93 (list 'dynamicDirection dir? 'direction)
94 (list 'verticalDirection dir? 'direction)
95 (list 'dynamicPadding number? 'padding)
96 (list 'dynamicMinimumSpace number? 'minimum-space)
99 (define generic-volta-spanner-properties
100 (cons 'Volta_spanner (list
101 (list 'voltaVerticalDirection dir? 'direction)
102 (list 'voltaPadding number? 'padding)
103 (list 'voltaMinimumSpace number? 'minimum-space)
106 (define generic-bar-properties
107 (cons 'Staff_bar (list
108 (list 'barSize number? 'bar-size))
112 ; don't do this yet. Depends on whennn the staff is really announced
113 (define generic-staff-symbol-properties
114 (cons 'Staff_symbol (list
119 (define generic-breathing-sign-properties
120 (cons 'Breathing_sign
122 (list 'breathingSignVerticalDirection dir? 'direction)
123 (list 'verticalDirection dir? 'direction)
126 (define generic-clef-properties
129 (list 'clefStyle string? 'style))
133 (define generic-All-properties
134 (cons 'all (list (list 'fontSize number? 'fontsize))))
137 (define generic-notehead-properties
139 (list (list 'noteHeadStyle symbol? 'style))))
142 (define generic-rest-properties
144 (list (list 'restStyle string? 'reststyle))))
146 (define generic-rest-collision-properties
147 (cons 'Rest_collision
148 (list (list 'maximumRestCount number? 'maximum-rest-count))))
150 (define generic-tie-properties
152 (list 'tieVerticalDirection dir? 'direction)
153 (list 'verticalDirection dir? 'direction)
154 (list 'tieDash number? 'dashed)
157 (define generic-tie-column-properties
158 (cons 'Tie_column (list
159 (list 'tieVerticalDirection dir? 'direction)
160 (list 'verticalDirection dir? 'direction)
163 (define generic-note-column-properties
166 (list 'horizontalNoteShift number? 'horizontal-shift)
167 (list 'forceHorizontalShift number? 'force-hshift)
170 (define generic-collision-properties
173 (list 'collisionMergeDotted boolean? 'merge-differently-dotted)
178 (define generic-slur-properties
181 (list 'slurVerticalDirection dir? 'direction)
182 (list 'verticalDirection dir? 'direction)
183 (list 'slurDash number? 'dashed))))
185 (define generic-timesig-properties
186 (cons 'Time_signature
188 (list 'timeSignatureStyle string? 'style))))
190 (define (symbol-or-boolean? s)
191 (or (boolean? s) (symbol? s)))
193 (define generic-tuplet-spanner-properties
194 (cons 'Tuplet_spanner
196 (list 'tupletDirection dir? 'direction)
197 (list 'tupletNumberVisibility symbol-or-boolean? 'tuplet-number-visibility)
198 (list 'tupletBracketVisibility symbol-or-boolean? 'tuplet-bracket-visibility)
207 ;; don't forget to add these to the Generic_property_list property in
210 (define generic-voice-properties
212 generic-stem-properties
213 generic-breathing-sign-properties
214 generic-crescendo-properties
215 generic-dynamic-line-spanner-properties
216 generic-tie-properties
217 generic-tie-column-properties
218 generic-tuplet-spanner-properties
219 generic-notehead-properties
220 generic-rest-properties
221 generic-slur-properties
222 generic-beam-properties
223 generic-text-properties
224 generic-sustain-pedal-properties
225 generic-note-column-properties
226 generic-script-properties
227 generic-All-properties
230 (define generic-grace-properties generic-voice-properties)
231 (define generic-staff-properties
233 generic-text-properties
234 generic-bar-properties
235 generic-timesig-properties
236 generic-clef-properties
237 generic-collision-properties
238 generic-sustain-pedal-properties
239 generic-rest-collision-properties
240 generic-volta-spanner-properties
241 ; generic-staff-symbol-properties
242 generic-All-properties
245 (define generic-grand-staff-properties
247 generic-text-properties
248 generic-bar-properties
251 (define generic-thread-properties
252 (list generic-All-properties
253 generic-notehead-properties
254 generic-dot-properties
259 (define generic-lyrics-properties
260 (list generic-text-properties
264 (define generic-chord-staff-properties
265 (list generic-chord-name-properties