LEFT | RIGHT |
1 \version "2.13.44" | 1 \version "2.13.46" |
| 2 |
| 3 #(define (filter-instrument instrument-name tuning-alist) |
| 4 (filter (lambda (entry) |
| 5 (string-prefix? instrument-name |
| 6 (symbol->string (car entry)))) |
| 7 tuning-alist)) |
| 8 |
| 9 #(define (chord-display tuning-alist-entry) |
| 10 (let* ((ch-mus (cdr tuning-alist-entry)) |
| 11 (tuning-symbol (car tuning-alist-entry)) |
| 12 (ev-chord (car (extract-named-music |
| 13 ch-mus |
| 14 'EventChord))) |
| 15 (elts (ly:music-property ev-chord 'elements))) |
| 16 (music-map (lambda (m) |
| 17 (begin |
| 18 (if (not (null? (ly:music-property m 'duration))) |
| 19 (ly:music-set-property! |
| 20 m |
| 21 'duration |
| 22 (ly:make-duration 0 0 1 1))) |
| 23 m)) |
| 24 ev-chord) |
| 25 (let ((elts (ly:music-property ev-chord 'elements)) |
| 26 (script (make-music 'TextScriptEvent |
| 27 'direction 1 |
| 28 'text (symbol->string tuning-symbol)))) |
| 29 (ly:music-set-property! |
| 30 ev-chord |
| 31 'elements |
| 32 (cons script elts))) |
| 33 ev-chord)) |
| 34 |
| 35 displayInstrumentDefaultTunings = |
| 36 #(define-music-function (parser location instrument) (string?) |
| 37 (let* ((filtered-instruments (filter-instrument instrument defaultStringTunin
gs)) |
| 38 (display-elements (map chord-display filtered-instruments))) |
| 39 (make-music 'SequentialMusic 'elements display-elements))) |
| 40 |
2 | 41 |
3 \score { | 42 \score { |
4 { | 43 { |
5 \new Staff { | 44 \new Staff { |
6 \textLengthOn | 45 \textLengthOn |
| 46 \override Score.RehearsalMark #'self-alignment-X = #LEFT |
| 47 |
| 48 \mark \markup {\left-align "Guitar tunings"} |
7 \clef "treble_8" | 49 \clef "treble_8" |
8 <e, a, d g b e'>1^\markup {"guitar-tuning"} | 50 \displayInstrumentDefaultTunings #"guitar" |
9 <b,, e, a, d g b e'>1^\markup {"guitar-seven-string-tuning"} | |
10 <d, a, d g b e'>1^\markup {"guitar-drop-d-tuning"} | |
11 <d, g, d g b d'>1^\markup {"guitar-open-g-tuning"} | |
12 \break | 51 \break |
13 <d, a, d fis a d'>1^\markup {"guitar-open-d-tuning"} | 52 |
14 <d, a, d g a d'>1^\markup {"guitar-dadgad-tuning"} | 53 \mark \markup {\left-align "Bass tunings"} |
15 <e, a, d fis b e'>1^\markup {"guitar-lute-tuning"} | 54 \clef "bass_8" |
16 <e, a, d e a e'>1^\markup {"guitar-asus4-tuning"} | 55 \displayInstrumentDefaultTunings #"bass" |
| 56 \break |
| 57 |
| 58 \mark \markup {\left-align "Mandolin tunings"} |
| 59 \clef "treble" |
| 60 \displayInstrumentDefaultTunings #"mandolin" |
| 61 \break |
| 62 |
| 63 \mark \markup {\left-align "Banjo tunings"} |
| 64 \clef "treble_8" |
| 65 \displayInstrumentDefaultTunings #"banjo" |
| 66 \break |
| 67 |
| 68 \mark \markup {\left-align "Ukulele tunings"} |
| 69 \clef "treble" |
| 70 \displayInstrumentDefaultTunings #"ukulele" |
| 71 \clef "alto" |
| 72 \displayInstrumentDefaultTunings #"tenor-ukulele" |
| 73 \displayInstrumentDefaultTunings #"baritone-ukulele" |
| 74 \break |
| 75 |
| 76 \mark \markup {\left-align "Orchestral string tunings"} |
| 77 \clef "treble" |
| 78 \displayInstrumentDefaultTunings #"violin" |
| 79 \clef "alto" |
| 80 \displayInstrumentDefaultTunings #"viola" |
| 81 \clef "bass" |
| 82 \displayInstrumentDefaultTunings #"cello" |
| 83 \clef "bass_8" |
| 84 \displayInstrumentDefaultTunings #"double-bass" |
17 } | 85 } |
18 } | 86 } |
19 } | 87 } |
20 | |
21 \score { | |
22 { | |
23 \new Staff { | |
24 \clef "bass_8" | |
25 \textLengthOn | |
26 <e,, a,, d, g,>1^\markup {"bass-tuning"} | |
27 <e,, a,, d, g,>1^\markup {"bass-four-string-tuning"} | |
28 <d,, a,, d, g,>1^\markup {"bass-drop-d-tuning"} | |
29 <b,,, e,, a,, d, g,>1^\markup {"bass-five-string-tuning"} | |
30 \break | |
31 <b,,, e,, a,, d, g, c>1^\markup {"bass-six-string-tuning"} | |
32 } | |
33 } | |
34 } | |
35 | |
36 \score { | |
37 { | |
38 % \markup "Bass Guitar Tunings" | |
39 \new Staff { | |
40 \clef "treble" | |
41 \textLengthOn | |
42 <g d' a' e''>1^\markup {"mandolin-tuning"} | |
43 } | |
44 } | |
45 } | |
46 | |
47 \score { | |
48 { | |
49 \new Staff { | |
50 \clef "treble_8" | |
51 \textLengthOn | |
52 <g' d g b d'> 1^\markup{"banjo-open-g-tuning"} | |
53 <g' c g b d'> 1^\markup{"banjo-c-tuning"} | |
54 <g' d g c' d'>1^\markup{"banjo-modal-tuning"} | |
55 <a' d fis a d'>1^\markup{"banjo-open-d-tuning"} | |
56 \break | |
57 <a' d fis a d'>1^\markup{"banjo-open-dm-tuning"} | |
58 } | |
59 } | |
60 } | |
61 | |
62 \score { | |
63 { | |
64 \new Staff { | |
65 \clef "treble" | |
66 \textLengthOn | |
67 <g' c' e' a'>1^\markup{"ukulele-tuning"} | |
68 <a' d' fis' b'>1^\markup{"ukulele-d-tuning"} | |
69 \clef "alto" | |
70 <a' e' c' g>1^\markup{"ukulele-tenor-tuning"} | |
71 <e' b g d>1^\markup{"ukulele-baritone-tuning"} | |
72 } | |
73 } | |
74 } | |
75 | |
76 \score { | |
77 { | |
78 \new Staff { | |
79 \textLengthOn | |
80 \clef "treble" | |
81 <g d' a' e''>1^\markup{"violin-tuning"} | |
82 \clef "alto" | |
83 <c g d' a'>1^\markup{" viola-tuning"} | |
84 \clef "bass" | |
85 <c, g, d a>1^\markup{"cello-tuning"} | |
86 \clef "bass_8" | |
87 <e,, a,, d, g,>1^\markup{" double-bass-tuning"} | |
88 } | |
89 } | |
90 } | |
LEFT | RIGHT |