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