X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scripts%2Fmusicxml2ly.py;h=c6e7dd53c226d427d32aa9f160714aa67cfd4404;hb=37ca1f80bf5401accd17056938f4f7b2c147ddb2;hp=5b2a59ccb6234ace564191e3cbe59c6ac4523341;hpb=2885f759ba07d814656c040ed3b3f6f9c81f1b2e;p=lilypond.git diff --git a/scripts/musicxml2ly.py b/scripts/musicxml2ly.py index 5b2a59ccb6..c6e7dd53c2 100644 --- a/scripts/musicxml2ly.py +++ b/scripts/musicxml2ly.py @@ -1328,7 +1328,7 @@ chordkind_dict = { 'diminished-seventh': 'dim7', 'augmented-seventh': 'aug7', 'half-diminished': 'dim5m7', - 'major-minor': '7m5', + 'major-minor': 'maj7m5', # Sixths: 'major-sixth': '6', 'minor-sixth': 'm6', @@ -1355,7 +1355,7 @@ chordkind_dict = { #'German': '???', # Other: #'pedal': '???',(pedal-point bass) - #'power': '???',(perfect fifth) + 'power': '5^3', #'Tristan': '???', 'other': '1', 'none': None, @@ -1385,6 +1385,19 @@ def musicxml_harmony_to_lily_chordname (n): inversion = n.get_maybe_exist_named_child ('inversion') if inversion: # TODO: Lilypond does not support inversions, does it? + + # Mail from Carl Sorensen on lilypond-devel, June 11, 2008: + # 4. LilyPond supports the first inversion in the form of added + # bass notes. So the first inversion of C major would be c:/g. + # To get the second inversion of C major, you would need to do + # e:6-3-^5 or e:m6-^5. However, both of these techniques + # require you to know the chord and calculate either the fifth + # pitch (for the first inversion) or the third pitch (for the + # second inversion) so they may not be helpful for musicxml2ly. + inversion_count = string.atoi (inversion.get_text ()) + if inversion_count == 1: + # TODO: Calculate the bass note for the inversion... + pass pass for deg in n.get_named_children ('degree'): d = musicexp.ChordModification ()