]> git.donarmstrong.com Git - lilypond.git/blob - ly/property.ly
release: 1.1.44
[lilypond.git] / ly / property.ly
1 % property.ly
2 % list of properties that lily recognises
3 % and some shorthands (ugh)
4
5 %{
6
7 SEE THE REFERENCE MANUAL FOR EXPLANATIONS.
8
9 %}
10
11 \version "1.0.20";
12
13 %hmm, (these) abbrevs suck, imo
14 % i guess they're meant as some form of doco
15 % that's what i use them for...
16 stemup =        \property Voice.verticalDirection = \up 
17 stemboth=       \property Voice.verticalDirection = \center
18 stemdown =      \property Voice.verticalDirection = \down
19
20 slurup = \notes {
21         s1*0
22         \property Voice.slurVerticalDirection = \up 
23         }
24 slurboth= \notes {
25         s1*0
26         \property Voice.slurVerticalDirection = \center
27 }
28 slurdown = \notes {     
29         s1*0
30         \property Voice.slurVerticalDirection = \down
31 }
32
33 shifton =       \property Voice.hshift = 1
34 shiftoff =      \property Voice.hshift = 0
35
36 onevoice = {    
37         \stemboth \shiftoff     
38 }
39
40 voiceone = 
41         \context Voice = one  {
42         \stemup
43 }
44
45 voicetwo = 
46         \context Voice = two {
47         \stemdown
48 }
49
50 voicethree = 
51         \context Voice = three {
52         \stemup
53
54 }
55
56 voicefour = 
57         \context Voice = four {
58         \stemdown
59         \shifton
60 }
61
62 onestaff = 
63         \translator Staff=one
64
65
66 staffone = {    
67         \translator Staff=one
68         \property Staff.verticalDirection = \center
69         \property Staff.hshift = 0
70 }
71
72 stafftwo = {    
73         \translator Staff=two
74         \property Staff.verticalDirection = \center
75         \property Staff.hshift = 0
76 }
77
78 staffthree = {  
79         \translator Staff=three
80         \property Staff.verticalDirection = \center
81         \property Staff.hshift = 0
82 }
83
84 stafffour = {   
85         \translator Staff=four
86         \property Staff.verticalDirection = \center
87         \property Staff.hshift = 0
88 }
89
90 % ugh, cluttering global namespace...
91
92 % ugh2. 
93 none=0
94 free=0
95 normal=1
96 traditional=2
97 infinity=10000
98
99 beamslopeproportional = 
100         \property Score.beamslopedamping = \none
101
102 beamslopedamped = 
103         \property Score.beamslopedamping = \normal
104
105
106 beamslopezero = 
107         \property Score.beamslopedamping = \infinity
108
109
110 % this sucks, you'd want to pass an array, at least
111 % (or embedded code: you still can't dictate the slope / stemlength)
112 beamposfree = 
113         \property Score.beamquantisation = \none
114
115
116 beamposnormal = 
117         \property Score.beamquantisation = \normal
118
119
120 beampostraditional = 
121         \property Score.beamquantisation = \traditional
122
123
124 slurnormal = 
125         \property Voice.slurdash = ""
126
127
128 slurdotted = 
129         \property Voice.slurdash = 1
130
131
132 %{
133  for grace note hack, see input/test/grace.ly
134 %}
135 pletoff = {
136         \property Voice.pletvisibility = 0
137 }
138 pleton = {
139         \property Voice.pletvisibility = 3
140 }
141 tiny  = {
142         \property Voice.fontsize= "-2"
143         \pletoff %urg
144 }
145
146 small  = {
147         \property Voice.fontsize= "-1"
148 }
149
150 normalsize = {
151         \property Voice.fontsize= "0"
152         \pleton %urg
153 }
154
155 %{
156   [urg: try at] temporary grace note hack
157   the total visible duration of the grace notes must be half
158   the duration of the 'at' note: e.g.:
159
160   \grace b8 \graceat c4 \ecarg
161   \grace c16 b16 \graceat c4 \ecarg
162
163 grace = {
164         \tiny
165 % it would be so cool not to have to specify these factors each time...
166 % :-(
167         \property Voice.pletvisibility = 0
168         \[1/16
169 }
170
171 graceat = \melodic {
172         \normalsize
173         \property Voice.pletvisibility = 0
174         \] \[31/32
175 }
176
177 ecarg =  \melodic {
178         \property Voice.pletvisibility = 0
179         \]
180         \property Voice.pletvisibility = 3
181 }
182 %}
183
184 normalkey = {
185         \property Staff.keyoctaviation = 1
186 }
187
188 specialkey = {
189         \property Staff.keyoctaviation = 0
190 }
191
192 % End the incipit and print a ``normal line start''.
193 endincipit = \notes{
194     \partial 16; s16  % Hack to handle e.g. \bar ".|"; \endincipit
195     \property Staff.clefStyle = "fullSizeChanges" 
196     \nobreak \bar "";
197 }
198