]> git.donarmstrong.com Git - lilypond.git/blob - input/new/fret-diagrams-explained-and-developed.ly
Change example for fret diagrams to show opposing-landscape
[lilypond.git] / input / new / fret-diagrams-explained-and-developed.ly
1 \version "2.12.0"
2
3 \header {
4   lsrtags = "fretted-strings,tweaks-and-overrides"
5   texidoc = "This snippet shows many possibilities for obtaining
6 and tweaking fret diagrams."
7   doctitle = "Fret diagrams explained and developed"
8 }
9
10 <<
11   \chords {
12     a2 a
13     \repeat unfold 3 {
14       c c c d d
15     }
16   }
17   
18   \new Voice = "mel" {
19     \textLengthOn
20     % Set global properties of fret diagram
21     \override TextScript #'size = #1.2
22     \override TextScript 
23       #'fret-diagram-details #'finger-code = #'below-string
24     \override TextScript #'fret-diagram-details #'dot-color = #'black
25     
26     %% A chord for ukelele
27     a'2^\markup {
28       \override #'(fret-diagram-details . (
29                    (string-count . 4)
30                    (dot-color . white)
31                    (finger-code . in-dot))) {
32         \fret-diagram #"4-2-2;3-1-1;2-o;1-o;"
33       }
34     }
35     
36     %% A chord for ukelele, with formatting defined in definition string
37     %  1.2 * size, 4 strings, 4 frets, fingerings below string
38     %  dot radius .35 of fret spacing, dot position 0.55 of fret spacing
39     a'2^\markup {
40       \override #'(fret-diagram-details . (
41                    (dot-color . white)
42                    (open-string . "o"))) {
43         \fret-diagram #"s:1.2;w:4;h:3;f:2;d:0.35;p:0.55;4-2-2;3-1-1;2-o;1-o;"
44       }
45     }
46     
47       %% These chords will be in normal orientation
48
49     %% C major for guitar, barred on third fret
50     %  verbose style
51     %  roman fret label, finger labels below string, straight barre
52     c'2^\markup {
53       % 110% of default size
54       \override #'(size . 1.1) {
55         \override #'(fret-diagram-details . (
56                      (number-type . roman-lower)
57                      (finger-code . below-string)
58                      (barre-type . straight))) {
59           \fret-diagram-verbose #'((mute 6)
60                                    (place-fret 5 3 1)
61                                    (place-fret 4 5 2)
62                                    (place-fret 3 5 3)
63                                    (place-fret 2 5 4)
64                                    (place-fret 1 3 1)
65                                    (barre 5 1 3))
66         }
67       }
68     }
69     
70     %% C major for guitar, barred on third fret
71     %% Double barre used to test barre function
72     %  verbose style
73     c'2^\markup {
74       % 110% of default size
75       \override #'(size . 1.1) {
76         \override #'(fret-diagram-details . (
77                      (number-type . arabic)
78                      (dot-label-font-mag . 0.9)
79                      (finger-code . in-dot)
80                      (fret-label-font-mag . 0.6)
81                      (fret-label-vertical-offset . 0)
82                      (label-dir . -1)
83                      (mute-string . "M")
84                      (xo-font-magnification . 0.4)
85                      (xo-padding . 0.3))) {
86           \fret-diagram-verbose #'((mute 6)
87                                    (place-fret 5 3 1)
88                                    (place-fret 4 5 2)
89                                    (place-fret 3 5 3)
90                                    (place-fret 2 5 4)
91                                    (place-fret 1 3 1)
92                                    (barre 4 2 5)
93                                    (barre 5 1 3))
94         }
95       }
96     }
97     
98     %% C major for guitar, with capo on third fret
99     %  verbose style
100     c'2^\markup {
101       % 110% of default size
102       \override #'(size . 1.1) {
103         \override #'(fret-diagram-details . (
104                      (number-type . roman-upper)
105                      (dot-label-font-mag . 0.9)
106                      (finger-code . none)
107                      (fret-label-vertical-offset . 0.5)
108                      (xo-font-magnification . 0.4)
109                      (xo-padding . 0.3))) {
110           \fret-diagram-verbose #'((mute 6)
111                                    (capo 3)
112                                    (open 5)
113                                    (place-fret 4 5 1)
114                                    (place-fret 3 5 2)
115                                    (place-fret 2 5 3)
116                                    (open 1))
117         }
118       }
119     }
120     
121     %% simple D chord
122     d'2^\markup {
123       \override #'(fret-diagram-details . (
124                    (finger-code . below-string)
125                    (dot-radius . 0.35)
126                    (dot-position . 0.5)
127                    (fret-count . 3))) {
128         \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
129       }
130     }
131
132     %% simple D chord, large top fret thickness
133     d'2^\markup  {
134       \override #'(fret-diagram-details . (
135                    (finger-code . below-string)
136                    (dot-radius . 0.35)
137                    (dot-position . 0.5)
138                    (top-fret-thickness . 7)
139                    (fret-count . 3))) {
140         \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
141       }
142     }
143
144       % These chords will be in landscape orientation
145     \override TextScript 
146        #'fret-diagram-details #'orientation = #'landscape
147
148     %% C major for guitar, barred on third fret
149     %  verbose style
150     %  roman fret label, finger labels below string, straight barre
151     c'2^\markup {
152       % 110% of default size
153       \override #'(size . 1.1) {
154         \override #'(fret-diagram-details . (
155                      (number-type . roman-lower)
156                      (finger-code . below-string)
157                      (barre-type . straight))) {
158           \fret-diagram-verbose #'((mute 6)
159                                    (place-fret 5 3 1)
160                                    (place-fret 4 5 2)
161                                    (place-fret 3 5 3)
162                                    (place-fret 2 5 4)
163                                    (place-fret 1 3 1)
164                                    (barre 5 1 3))
165         }
166       }
167     }
168     
169     %% C major for guitar, barred on third fret
170     %% Double barre used to test barre function
171     %  verbose style
172     c'2^\markup {
173       % 110% of default size
174       \override #'(size . 1.1) {
175         \override #'(fret-diagram-details . (
176                      (number-type . arabic)
177                      (dot-label-font-mag . 0.9)
178                      (finger-code . in-dot)
179                      (fret-label-font-mag . 0.6)
180                      (fret-label-vertical-offset . 0)
181                      (label-dir . -1)
182                      (mute-string . "M")
183                      (xo-font-magnification . 0.4)
184                      (xo-padding . 0.3))) {
185           \fret-diagram-verbose #'((mute 6)
186                                    (place-fret 5 3 1)
187                                    (place-fret 4 5 2)
188                                    (place-fret 3 5 3)
189                                    (place-fret 2 5 4)
190                                    (place-fret 1 3 1)
191                                    (barre 4 2 5)
192                                    (barre 5 1 3))
193         }
194       }
195     }
196     
197     %% C major for guitar, with capo on third fret
198     %  verbose style
199     c'2^\markup {
200       % 110% of default size
201       \override #'(size . 1.1) {
202         \override #'(fret-diagram-details . (
203                      (number-type . roman-upper)
204                      (dot-label-font-mag . 0.9)
205                      (finger-code . none)
206                      (fret-label-vertical-offset . 0.5)
207                      (xo-font-magnification . 0.4)
208                      (xo-padding . 0.3))) {
209           \fret-diagram-verbose #'((mute 6)
210                                    (capo 3)
211                                    (open 5)
212                                    (place-fret 4 5 1)
213                                    (place-fret 3 5 2)
214                                    (place-fret 2 5 3)
215                                    (open 1))
216         }
217       }
218     }
219     
220     %% simple D chord
221     d'2^\markup {
222       \override #'(fret-diagram-details . (
223                    (finger-code . below-string)
224                    (dot-radius . 0.35)
225                    (dot-position . 0.5)
226                    (fret-count . 3))) {
227         \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
228       }
229     }
230
231     %% simple D chord, large top fret thickness
232     d'2^\markup {
233       \override #'(fret-diagram-details . (
234                    (finger-code . below-string)
235                    (dot-radius . 0.35)
236                    (dot-position . 0.5)
237                    (top-fret-thickness . 7)
238                    (fret-count . 3))) {
239         \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
240       }
241     }
242
243       % These chords will be in opposing-landscape orientation
244     \override TextScript #'fret-diagram-details 
245                            #'orientation = #'opposing-landscape
246
247     %% C major for guitar, barred on third fret
248     %  verbose style
249     %  roman fret label, finger labels below string, straight barre
250     c'2^\markup {
251       % 110% of default size
252       \override #'(size . 1.1) {
253         \override #'(fret-diagram-details . (
254                      (number-type . roman-lower)
255                      (finger-code . below-string)
256                      (barre-type . straight))) {
257           \fret-diagram-verbose #'((mute 6)
258                                    (place-fret 5 3 1)
259                                    (place-fret 4 5 2)
260                                    (place-fret 3 5 3)
261                                    (place-fret 2 5 4)
262                                    (place-fret 1 3 1)
263                                    (barre 5 1 3))
264         }
265       }
266     }
267     
268     %% C major for guitar, barred on third fret
269     %% Double barre used to test barre function
270     %  verbose style
271     c'2^\markup {
272       % 110% of default size
273       \override #'(size . 1.1) {
274         \override #'(fret-diagram-details . (
275                      (number-type . arabic)
276                      (dot-label-font-mag . 0.9)
277                      (finger-code . in-dot)
278                      (fret-label-font-mag . 0.6)
279                      (fret-label-vertical-offset . 0)
280                      (label-dir . -1)
281                      (mute-string . "M")
282                      (xo-font-magnification . 0.4)
283                      (xo-padding . 0.3))) {
284           \fret-diagram-verbose #'((mute 6)
285                                    (place-fret 5 3 1)
286                                    (place-fret 4 5 2)
287                                    (place-fret 3 5 3)
288                                    (place-fret 2 5 4)
289                                    (place-fret 1 3 1)
290                                    (barre 4 2 5)
291                                    (barre 5 1 3))
292         }
293       }
294     }
295     
296     %% C major for guitar, with capo on third fret
297     %  verbose style
298     c'2^\markup {
299       % 110% of default size
300       \override #'(size . 1.1) {
301         \override #'(fret-diagram-details . (
302                      (number-type . roman-upper)
303                      (dot-label-font-mag . 0.9)
304                      (finger-code . none)
305                      (fret-label-vertical-offset . 0.5)
306                      (xo-font-magnification . 0.4)
307                      (xo-padding . 0.3))) {
308           \fret-diagram-verbose #'((mute 6)
309                                    (capo 3)
310                                    (open 5)
311                                    (place-fret 4 5 1)
312                                    (place-fret 3 5 2)
313                                    (place-fret 2 5 3)
314                                    (open 1))
315         }
316       }
317     }
318     
319     %% simple D chord
320     d'2^\markup {
321       \override #'(fret-diagram-details . (
322                    (finger-code . below-string)
323                    (dot-radius . 0.35)
324                    (dot-position . 0.5)
325                    (fret-count . 3))) {
326         \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
327       }
328     }
329
330     %% simple D chord, large top fret thickness
331     d'2^\markup {
332       \override #'(fret-diagram-details . (
333                    (finger-code . below-string)
334                    (dot-radius . 0.35)
335                    (dot-position . 0.5)
336                    (top-fret-thickness . 7)
337                    (fret-count . 3))) {
338         \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;"
339       }
340     }
341   }
342 >>