On 9/25/09 2:17 PM, "fiëé visuëlle" <[email protected]> wrote:
>
> Just, pretty please: Could someone tell me how to get chord names with
> -is and -es (saying "fis" and not "f#")?
> Or of course point me to the appropriate chapter of the docs.
Here's a set of scheme routines that will allow you to get Fis, Aes, etc.
But it doesn't do the lower-case root name for minor chords. But I think
you have something from somebody that gets the lower-case root name for the
minor chords.
HTH,
Carl
%%%%%%%%%%%%%%%%%%%%%%%%%
\version "2.13.4"
#(define (pitch-alteration-semitones pitch)
(inexact->exact (round (* (ly:pitch-alteration pitch) 2))))
#(define ((chord-name->german-markup-text-alteration
B-instead-of-Bb) pitch)
"Return pitch markup for PITCH, using german note names.
If B-instead-of-Bb is set to #t, real german names are returned.
Otherwise, semi-german names (with Bb and below keeping the
british names). Alterations are indicated with -es and -is
instead of the flat and sharp symbols."
(let* ((name (ly:pitch-notename pitch))
(alt-semitones (pitch-alteration-semitones pitch))
(n-a (if (member (cons name alt-semitones) `((6 . -1) (6 . -2)))
(cons 7 (+ (if B-instead-of-Bb 1 0) alt-semitones))
(cons name alt-semitones))))
(make-line-markup
(list
(make-simple-markup
(vector-ref #("C" "D" "E" "F" "G" "A" "H" "B") (car n-a)))
(let ((alteration (/ (cdr n-a) 2)))
(cond
((= alteration FLAT) (make-simple-markup "es"))
((= alteration SHARP) (make-simple-markup "is"))
(else empty-markup)))))))
myChords = \chordmode{
ais1 bes b c
}
\score{
\new ChordNames {
\set chordRootNamer = #(chord-name->german-markup-text-alteration #t)
\myChords
}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%
_______________________________________________
lilypond-user mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-user