]> git.donarmstrong.com Git - lilypond.git/blob - ly/params.ly
release: 1.3.2
[lilypond.git] / ly / params.ly
1 % params.ly
2 % generic paper parameters
3
4 paperfile = \papersize + ".ly";
5 % paperfile = "a4.ly";
6 \include \paperfile;
7 \include "paper.ly";
8
9 interline = \staffheight / 4.0;
10
11
12 stafflinethickness = \interline / 10.0;
13
14 % urg, need grace_ versions of these too?
15 beam_thickness = 0.52 * (\interline - \stafflinethickness);
16 interbeam = (2.0 * \interline + \stafflinethickness - \beam_thickness) / 2.0;
17 interbeam4 = (3.0 * \interline - \beam_thickness) / 3.0;
18
19
20
21 % stems and beams
22 %
23 % poor man's array size
24 stem_max = 3.0;
25
26 %{ Specify length of stems for notes in the staff
27 that don't have beams. 
28  Measured in staff positions.
29 %}
30 stem_length0 = 7.;
31 stem_length1 = 5.;
32 stem_length2 = 4.;
33 stem_length3 = 3.;
34
35 %{
36 The space taken by a note is determined by the formula 
37
38 arithmetic_multiplier * ( c + log2 (time) ))
39
40 where code(time) is the amount of time a note occupies.  The value
41 of code(c) is chosen such that the smallest space within a measure is
42 arithmetic_basicspace.  The smallest space is the one following the
43 shortest note in the measure.  Typically arithmetic_basicspace is set
44 to the width of a quarter note head.
45 %}
46 arithmetic_basicspace = 2.;
47 arithmetic_multiplier = 0.9 * \quartwidth ;
48
49
50
51 % urg.
52 % if only these ugly arrays were scm,
53 % we could override them in the Grace context
54 grace_factor = 0.8;
55 grace_stem_length0 = \stem_length0 * \grace_factor;
56 grace_stem_length1 = \stem_length1 * \grace_factor;
57 grace_stem_length2 = \stem_length2 * \grace_factor;
58 grace_stem_length3 = \stem_length3 * \grace_factor;
59
60 % only used for beams
61 minimum_stem_length0 = 0.0 ; % not used
62 minimum_stem_length1 = 3. ;
63 minimum_stem_length2 = 2.5;
64 minimum_stem_length3 = 2.0;
65
66 grace_minimum_stem_length0 = 0.0 ; % not used
67 grace_minimum_stem_length1 = \minimum_stem_length1 * \grace_factor;
68 grace_minimum_stem_length2 = \minimum_stem_length2 * \grace_factor;
69 grace_minimum_stem_length3 = \minimum_stem_length3 * \grace_factor;
70
71 %{
72   stems in unnatural (forced) direction should be shortened,
73   according to [Roush & Gourlay].  Their suggestion to knock off
74   a whole staffspace seems a bit drastical: we'll do half.
75 %}
76
77 forced_stem_shorten0 = 1.0;
78 forced_stem_shorten1 = \forced_stem_shorten0;
79 forced_stem_shorten2 = \forced_stem_shorten1;
80 forced_stem_shorten3 = \forced_stem_shorten2;
81
82 % don't shorten grace stems, always up
83 grace_forced_stem_shorten0 = 0.;
84 grace_forced_stem_shorten1 = \grace_forced_stem_shorten0;
85 grace_forced_stem_shorten2 = \grace_forced_stem_shorten1;
86 grace_forced_stem_shorten3 = \grace_forced_stem_shorten2;
87
88 % there are several ways to calculate the direction of a beam
89
90 % * MAJORITY : number count of up or down notes
91 % * MEAN     : mean centre distance of all notes
92 % * MEDIAN   : mean centre distance weighted per note
93 %
94
95 #'slope-quantisation = #'normal
96 #'beam-dir-algorithm = #'majority       %urg.
97
98
99 %{
100 dit(code(beam_dir_algorithm)) Specify algorithm for determining
101 whether beams go up or down.  It is real valued.  If set to 2.0 then
102 majority selection is used.  If set to 3.0, then mean selection is
103 used based on the mean center distance.  If set to 4.0 then median
104 selection is used, based on the median center distance.
105 %}
106
107
108 % catch suspect beam slopes, set slope to zero if
109 % outer stem is lengthened more than
110 beam_lengthened = 0.2 * \interline;
111 % and slope is running away steeper than
112 beam_steep_slope = 0.2 / 1.0;
113
114 %{
115 dit(code(slur_x_gap)) Horizontal space between note and slur.  Set to
116 code(\interline / 5) by default.  
117
118 %}
119 % OSU: suggested gap = ss / 5;
120 slur_x_gap = \interline / 5.0;
121 slur_y_gap = 0.25 * \interline;
122 slur_y_free = 0.75 * \interline;
123 slur_x_minimum = 1.5 * \interline;
124
125 %{
126 Like beams, slurs often aren't as steep as the notes they encompass.
127 This sets the amount of damping.
128 %}
129 % slope damping: keep dy/dx < slur_slope_damping
130 slur_slope_damping = 0.3;
131 slur_interstaff_slope_damping = 0.6;
132 % height damping: keep h/dx < slur_height_damping
133 slur_height_damping = 0.4;
134 slur_interstaff_height_damping = 0.5;
135 % snap to stem if slur ends closer to stem than
136 slur_snap_to_stem = 1.75 * \interline;
137 slur_interstaff_snap_to_stem = 2.5 * \interline;
138 % maximum dy change allowed by snapping
139 slur_snap_max_slope_change = 0.5;
140 slur_interstaff_snap_max_slope_change = 0.5;
141
142
143
144 tie_x_minimum = \interline + \slur_x_minimum;
145 % OSU: tie gap == slur gap
146 tie_x_gap = \slur_x_gap;
147 tie_y_gap = 0.25 * \interline;
148 % length of a tie that's a staffspace high
149 tie_staffspace_length = 4.0 * \interline;
150
151 % ugh: rename to bow (in bezier.cc and fonts.doc too...)
152 % slur_thickness = 1.8 * \stafflinethickness;
153 slur_thickness = 1.4 * \stafflinethickness;
154
155 %{
156  Specifies the maximum height of slurs.
157 %}
158 slur_height_limit = \staffheight;
159
160
161 %{
162 Specifes the ratio of slur hight to slur width
163 to aim for.  Default value is 0.3. 
164 %}
165
166 % slur_ratio = 0.3;
167 % try bit flatter slurs
168 slur_ratio = 0.25;
169 slur_clip_ratio = 1.2;
170 slur_clip_height = 3.0 * \staffheight;
171 slur_clip_angle = 100.0;
172 slur_rc_factor = 2.4;
173
174 % ugh
175 notewidth = (\quartwidth + \wholewidth) / 2.0;
176
177 gourlay_energybound = 100000.;
178 %{
179 Maximum number of measures per line to try when using Gourlay
180 method. 
181 %}
182 gourlay_maxmeasures = 10.;
183
184
185 %{ Ross. page 151 lists these values, but we think that thick lines
186 and kernings are too thick.
187
188 bar_kern = 0.5 * \interline;
189 bar_thinkern = 0.75 * \interline;
190 barthick_thick = 0.5* \interline;
191 barthick_score = 0.13333* \interline;
192 barthick_thin = 0.1*\interline;
193
194 %}
195
196 bar_kern = 3.0 * \stafflinethickness;
197 bar_thinkern = 3.0 * \stafflinethickness;
198 barthick_thick = 6.0* \stafflinethickness;
199 barthick_thin = 1.6*\stafflinethickness;
200 barthick_score = 1.6*\stafflinethickness;
201
202 bracket_arch_thick = \interline / 3.0;
203 bracket_width = 2.0 * \interline;
204 bracket_thick = 2.0 * \stafflinethickness;
205 bracket_arch_height = 1.5 * \interline;
206 bracket_arch_width = \bracket_arch_height;
207 bracket_arch_angle = 50.0;
208
209 tuplet_spanner_gap = 2.0 * \interline;
210 tuplet_thick = 1.0*\stafflinethickness;
211 volta_thick = 1.6*\stafflinethickness;
212 volta_spanner_height = 2.0 *\interline;
213
214 % relative thickness of thin lines  1.6 : 1 : 0.8
215 stemthickness = 0.8*\stafflinethickness;
216 rulethickness = \stafflinethickness;
217
218
219 extender_height = 0.8*\stafflinethickness;
220
221 hyphen_thickness = 0.05*\font_normal;
222 hyphen_height = 0.2*\font_normal;
223 hyphen_minimum_length = 0.25*\font_normal;
224
225 % Multi-measure rests
226 mmrest_x_minimum = 1.4*\staffheight;
227
228
229 % chop off this much when next to pp / ff sign.
230 crescendo_shorten = 4.0 * \interline;
231 crescendo_thickness   = \stafflinethickness;
232 crescendo_height = 0.666 * \interline;
233
234 % in internote.
235 restcollision_minimum_dist = 3.0;
236 restcollision_minimum_beamdist = 1.5;
237
238
239 % unit for note collision resolving
240 collision_note_width = \notewidth;      %ugh.
241
242 % deprecated!
243 postBreakPadding = 0.0;
244
245 % optical correction amount.
246 stemSpacingCorrection = 0.5*\interline;
247
248
249 %{
250  relative strength of space following breakable columns (eg. prefatory matter)
251  %}
252 breakable_column_space_strength = 2.0; 
253
254 % space after inline clefs and such get this much stretched
255 decrease_nonmus_spacing_factor = 1.0 ;
256
257 %{
258  space before musical columns (eg. taken by accidentals) get this much
259  stretched when they follow a musical column, in absence of grace notes.
260
261  0.0 means no extra space (accidentals are ignored)
262 %}
263 musical_to_musical_left_spacing_factor = 0.4;
264
265 %{
266  stretch space this much if there are grace notes before the column
267 %}
268 before_grace_spacing_factor = 1.2;
269
270 %{
271 If columns do not have spacing information set, set it to this much
272 %}
273 loose_column_distance = 2.0 * \interline;
274
275 %{
276 Relative cost of compressing (vs. stretching).  Increasing this
277 will cause scores to be set looser
278 .
279 %}
280
281 compression_energy_factor = 0.6;
282
283 % if stem is on middle line, choose this direction.
284 stem_default_neutral_direction = 1.0;
285
286 % in interline
287 articulation_script_padding_default = 1.0;
288
289 % Backward compatibility -- has no function; 
290 Gourlay = 0.0;
291 Wordwrap =0.0;
292
293 \include "engraver.ly";
294
295
296