]> git.donarmstrong.com Git - lilypond.git/blob - ly/auto-beam-settings.ly
release: 1.3.24
[lilypond.git] / ly / auto-beam-settings.ly
1 % auto-beam-settings.ly
2 % setup for auto-beam engraver
3 %
4 % specify generic beam end times
5
6 % format:
7 %
8 %     [time-signature]'beamAutoEnd'[duration]
9 %
10 % where
11 %
12 %     time-signature = 'time'[numerator]'_'denominator; eg: 3_4
13 %     duration = [numerator]'_'denominator; eg: 3_8, _16
14 %
15
16 % in 3/2 time:
17 %   end beams each 1/2 note
18 %   end beams with 16th notes each 1/4 note
19 %   end beams with 32th notes each 1/8 note
20
21
22 %{
23
24 UGH UGH. 
25
26 Fixme: should use an alist
27
28 autoBeamSettings = (list
29   (cons (list (make-moment MEASURE) TIME-SIGNATURE) (make-moment INTERVAL)
30   ..
31
32   )
33
34
35
36 %}
37
38 time3_2beamAutoEnd = #(make-moment 1 2)
39 %time3_2beamAutoEnd_16 = #(make-moment 1 4)
40 time3_2beamAutoEnd_16 = #(make-moment 1 4)
41 time3_2beamAutoEnd_32 = #(make-moment 1 8)
42
43 time3_4beamAutoBegin_8 = #(make-moment 1 4)
44 time3_4beamAutoEnd = #(make-moment 3 4)
45 time3_4beamAutoBegin_16 = #(make-moment 1 16)
46 time3_4beamAutoEnd_16 = #(make-moment 1 4)
47 %time3_4beamAutoBegin_32 = #(make-moment 1 8)
48 time3_4beamAutoEnd_32 = #(make-moment 1 8)
49
50 time3_8beamAutoBegin_16 = #(make-moment 1 8)
51 time3_8beamAutoEnd = #(make-moment 3 8)
52
53 % in common time:
54 %   end beams each 1/2 note
55 %   end beams with 32th notes each 1/8 note
56 %   end beams with 1/8 triplets each 1/4 note
57
58 time4_4beamAutoEnd = #(make-moment 1 2)
59 time4_4beamAutoEnd_12 = #(make-moment 1 4)
60 time4_4beamAutoEnd_16 = #(make-moment 1 4)
61 time4_4beamAutoEnd_32 = #(make-moment 1 8)
62
63 time2_4beamAutoEnd = #(make-moment 1 4)
64 time2_4beamAutoEnd_12 = #(make-moment 1 4)
65 time2_4beamAutoEnd_16 = #(make-moment 1 4)
66 time2_4beamAutoEnd_32 = #(make-moment 1 8)
67
68
69 time4_8beamAutoEnd = #(make-moment 1 4)
70 time4_8beamAutoEnd_16 = #(make-moment 1 4)
71 time4_8beamAutoEnd_32 = #(make-moment 1 8)
72
73 time4_16beamAutoEnd = #(make-moment 1 8)
74
75 time6_8beamAutoEnd = #(make-moment 3 8)
76 time6_8beamAutoEnd_16 = #(make-moment 3 8)
77 time6_8beamAutoEnd_32 = #(make-moment 1 8)
78
79 time9_8beamAutoEnd = #(make-moment 3 8)
80 time9_8beamAutoEnd_16 = #(make-moment 3 8)
81 time9_8beamAutoEnd_32 = #(make-moment 1 8)
82
83 time12_8beamAutoEnd = #(make-moment 3 8)
84 time12_8beamAutoEnd_16 = #(make-moment 3 8)
85 time12_8beamAutoEnd_32 = #(make-moment 1 8)
86
87
88
89 %{
90
91 Users may override in most cases, simply by issuing
92
93     % from here on consider ending beam every 1/4 note
94     \property Voice.beamAutoEnd = #(make-moment 1 4)
95
96     % no autobeaming
97     \property Voice.beamAuto = ##f  
98
99 or, more globally, by doing:
100
101  \paper{
102         \translator{
103             \VoiceContext
104             % consider ending beam at every 1/2 note
105             beamAutoEnd = #(make-moment 1 2)
106         }
107     }
108
109 see also input/test/auto-beam-override.ly
110
111 %}
112