On Friday, 14 April 2000, "James Hammons" writes:

> This is my first attempt to get some reasonable chord symbol output from
> lily, and it's looking pretty good.  There are a few problems, though:

Some fixes.  Maybe I commented-out too much, but I don't want duplicates
now that we're looking what chords are really wrong.

Jan.


%%%% This fixes chord-customisation:
#(define (pitch->note-name pitch)
  (cons (cadr pitch) (caddr pitch)))
%%%%

%#(set! note-names-alist
%      (append 
%      '(
%((1 . 0) . ("Foo" ""))
%)
%     note-names-alist))

#(set! chord-names-alist
      (append 
      '(
    (((0 . 0) (3 . 0) (4 . 0)) . ("sus" . ""))
    ;(((0 . 0) (2 . -1) (4 . -1) (6 . -2)) . (("script" . "o") . "7"))
    (((0 . 0) (2 . -1) (4 . -1) (6 . -2)) . ("" . ("script" . "o7")))
    ;(((0 . 0) (2 . -1) (4 . -1) (6 . -1)) . (("script" . "x") . "7"))
    (((0 . 0) (2 . -1) (4 . -1) (6 . -1)) . ("" . ("script" . "x7")))

    (((0 . 0) (4 . 0)) . ("5" . ""))

    ; typo
    ;(((0 . 0) (2 . -1) (4 . -1)) . ("" . ("script" . "o")))
    (((0 . 0) (2 . -1) (4 . -1)) . ("" . ("script" . "o")))

    (((0 . 0) (2 . 0) (4 . 1)) . ("aug" . ""))
    (((0 . 0) (2 . 0) (4 . 1) (6 . -1)) . ("aug7" . ""))

    ; huh, we aready have these?
    ;(((0 . 0) (1 . 0) (4 . 0)) . ("2" . ""))
    ;;(((0 . 0) (2 . 0) (4 . 0) (6 . 0)) . ("maj7" . ""))
    ;(((0 . 0) (2 . 0) (4 . 0) (6 . 0)) . ("m" . (("script" . "maj7"))))
    ;;(((0 . 0) (2 . -1) (4 . 0) (6 . -1)) . ("m7" . ""))
    ;(((0 . 0) (2 . -1) (4 . 0) (6 . -1)) . ("m" . (("script" . "7"))))

    ;;(((0 . 0) (2 . -1) (4 . 0) (6 . 0)) . ("m(maj)7" . ""))
    ;(((0 . 0) (2 . -1) (4 . 0) (6 . 0)) . ("m(maj)7" . ""))
    ;(((0 . 0) (2 . -1) (4 . 0) (6 . 0)) . ("m" . (("script" . "(maj)7"))))

    ;(((0 . 0) (2 . 0) (4 . -1) (6 . 0)) . ("maj7(\\textflat 5)" . ""))
    (((0 . 0) (2 . 0) (4 . -1) (6 . 0)) . ("" . (("script" . "maj7(\\textflat 5)"))))

    (((0 . 0) (3 . 0) (4 . 0) (6 . -1)) . ("7sus4" . ""))

    ;(((0 . 0) (2 . 0) (4 . 0) (6 . -1)) . ("7" . ""))
    (((0 . 0) (2 . 0) (4 . 0) (5 . 0)) . ("maj6" . ""))
    (((0 . 0) (2 . -1) (4 . 0) (5 . 0)) . ("m6" . ""))

    ; c = 0, d = 1
    ;;(((0 . 0) (2 . 0) (4 . 0) (8 . 0)) . ("add9" . ""))
    ;(((0 . 0) (2 . 0) (4 . 0) (1 . 0)) . ("" . (("script" . "add9"))))

    ; we don't want the '/no7'
    ;(((0 . 0) (2 . 0) (4 . 0) (5 . 0) (8 . 0)) . ("6/9" . ""))
    (((0 . 0) (2 . 0) (4 . 0) (5 . 0) (1 . 0)) . ("" . (("script" . "6/9"))))

    ;already have this?
    ;(((0 . 0) (2 . 0) (4 . 0) (6 . 0) (1 . 0)) . ("maj9" . ""))
)))

chord = \notes\transpose c''\chords{
c
c:m
c:m5-
c:5^3
c:4^3
c:5+
c:2^3
c:m5-.7-
c:7+
c:7.4^3
c:5+.7
c:m5-.7
c:5-.7+
c:m7+
c:m7
c:7
c:6
c:m6
c:9^7
c:6.9^7
c:9
c:7+.9
}

\score{
<
\context ChordNames \chord
\context Staff \chord
>
    \paper
    {
        \translator { \ChordNameContext chordNameWordSpace = #1 }
        \translator { \LyricsContext textScriptWordSpace = #0.3 }
    }
}

%    (((0 . 0) (2 . -1) (4 . 0)) . ("Bar" . ("script" . "Baz")))

-- 
Jan Nieuwenhuizen <[EMAIL PROTECTED]> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org

Reply via email to