From b9474080161e4611ea3f33e38a3cf2256e8fda06 Mon Sep 17 00:00:00 2001 From: pin Date: Mon, 8 Feb 2010 09:25:55 +0000 Subject: [PATCH] =?utf8?q?Affichage=20des=20noms=20de=20note=20de=20fran?= =?utf8?q?=C3=A7ais.=20pprint=20plus=20verbeux=20(affichage=20partie=20/?= =?utf8?q?=20refrain).?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.cri.ensmp.fr/svn/minwii/trunk@10 fe552daf-6dbe-4428-90eb-1537e0879342 --- src/songs/musicxmltosong.py | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/songs/musicxmltosong.py b/src/songs/musicxmltosong.py index 1724fc4..0d4bb99 100755 --- a/src/songs/musicxmltosong.py +++ b/src/songs/musicxmltosong.py @@ -20,6 +20,15 @@ DIATO_SCALE = {'C' : 60, 'G' : 67, 'A' : 69, 'B' : 71} + +FR_NOTES = {'C' : u'Do', + 'D' : u'Ré', + 'E' : u'Mi', + 'F' : u'Fa', + 'G' : u'Sol', + 'A' : u'La', + 'B' : u'Si'} + _marker = [] class Part(object) : @@ -81,13 +90,16 @@ class Part(object) : def iterNotes(self) : "exécution de la chanson avec l'alternance couplets / refrains" for verse in self.verses : + print "---partie---" repeats = len(verse[0].lyrics) if repeats > 1 : for i in range(repeats) : # couplet + print "---couplet%d---" % i for note in verse : yield note, i # refrain + print "---refrain---" for note in self.chorus : yield note, 0 else : @@ -96,7 +108,7 @@ class Part(object) : def pprint(self) : for note, verseIndex in self.iterNotes() : - print note.name, note.midi, note.duration, note.lyrics[verseIndex] + print note.nom, note.name, note.midi, note.duration, note.lyrics[verseIndex] @@ -136,6 +148,16 @@ class Note(object) : name = '%s%s' % (name, abs(self.alter) * alterext) return name + @property + def nom(self) : + name = FR_NOTES[self.step] + if self.alter < 0 : + alterext = 'b' + else : + alterext = '#' + name = '%s%s' % (name, abs(self.alter) * alterext) + return name + class Lyric(object) : -- 2.20.1