Hallo, leider konnte ich nichts zu dem Thema finden, sondern lediglich Erklärungen dazu, wie sich das Kreuz hinter dem Akkordgrundbuchstaben ändern lässt (z.B. hochstellen, verkleinern etc.). Sollte ich was übersehen haben, dann tut es mir leid. Schickt mir den Link zu.
Also: Ich hätte die Akkordbezeichnung gerne in der Form "Fis" (für Fis-Dur) statt des standardmäßig eingestellten "F#". Wie sollte ich da vorgehen? Es müsste auch in Verbindung mit klein geschriebenen Buchstaben für Mollakkorde funktionieren, also bei \set chordNameLowercaseMinor = ##t.
Herzliche Grüße und besten Dank im Voraus.
Fabian
https://archiv.lilypondforum.de/index.php/topic,1595.msg8838.html#msg8838 (https://archiv.lilypondforum.de/index.php/topic,1595.msg8838.html#msg8838)
Ich hoffe es funktioniert noch, ansonsten melde Dich.
Gruß,
Harm
Ich verwende standardmäßig folgenden Code:
\language "deutsch"
#(define ((chord-name->german-markup-text-alteration B-instead-of-Bb) pitch lowercase?)
(define (pitch-alteration-semitones pitch)
(inexact->exact (round (* (ly:pitch-alteration pitch) 2))))
(define (conditional-string-downcase str condition)
(if condition
(string-downcase str)
str))
(let* ((name (ly:pitch-notename pitch))
(alt-semitones (pitch-alteration-semitones pitch))
(n-a (if (member (cons name alt-semitones) `((6 . -1) (6 . -1)))
(cons 7 (+ (if B-instead-of-Bb 1 1) alt-semitones))
(cons name alt-semitones))))
(make-line-markup
(list
(make-simple-markup
(conditional-string-downcase
(vector-ref #("C" "D" "E" "F" "G" "A" "H" "B") (car n-a))
lowercase?))
(let ((alteration (/ (cdr n-a) 2)))
(cond
((and (equal? lowercase? #f) (= alteration FLAT) (= (car n-a) 7)) (make-simple-markup ""))
((and (= alteration FLAT) (or (= (car n-a) 5) (= (car n-a) 2) )) (make-simple-markup "s"))
((= alteration FLAT) (make-simple-markup "es"))
((and (= alteration DOUBLE-FLAT) (or (= (car n-a) 5)(= (car n-a) 2) )) (make-simple-markup "ses"))
((= alteration DOUBLE-FLAT) (make-simple-markup "eses"))
((= alteration SHARP) (make-simple-markup "is"))
((= alteration DOUBLE-SHARP) (make-simple-markup "isis"))
(else empty-markup)))))))
#(define germanChords (chord-name->german-markup-text-alteration #t))
\layout {
\context {
\ChordNames
chordNameLowercaseMinor = ##t
chordRootNamer = #germanChords
chordNoteNamer = #(chord-name->german-markup #f)
}
}
\new ChordNames \chordmode {
f h4 b:m fis es as:m
}
Liebe Manuela, lieber harm6, danke für Eure Antworten. Ich probier's gleich aus! Liebe Grüße, Fabian
Problem gelöst, Manuelas Code hat funktioniert! Danke!
Dann ändere doch bitte den Betreff, damit in der Übersicht zu sehen ist, dass das Problem gelöst ist :)