spiffyscore

Check-in [6dcdb96a02]
Login
Overview
Comment:Improved lexing of roman numerals, including support for minor chord recognition
Timelines: family | ancestors | descendants | both | ply
Files: files | file ages | folders
SHA1: 6dcdb96a02795827f78ff38ecbc724f9e51092ff
User & Date: spiffytech@gmail.com on 2010-11-16 16:13:25
Other Links: branch diff | manifest | tags
Context
2010-11-16
16:34
Now parses chords check-in: 3d9a81ddef user: spiffytech@gmail.com tags: ply
16:13
Improved lexing of roman numerals, including support for minor chord recognition check-in: 6dcdb96a02 user: spiffytech@gmail.com tags: ply
15:57
Now parses roman numerals I-VII instead of notes check-in: 32e6229eaa user: spiffytech@gmail.com tags: ply
Changes

Modified parse.py from [911b321ada] to [1dcfc5e85f].

11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    "OCTAVE",
    "CHORD_TYPE",
)

t_ignore = " |"

#t_BASENOTE = r"[A-Ga-g]"
t_BASENOTE = r"I?V?I*[^ ]"
t_ACCIDENTAL = r"\^{1,2}|_{1,2}|="
t_REST = r"z"
t_OCTAVE = r"'+|,+"
t_CHORD_TYPE = r"m|7|m7|0|o|\+|mb5|sus|sus4|maj7|mmaj7|7sus4|dim|dim7|7b5|m7b5|6|b6|m6|mb6|46|maj9|9|add9|7b9|m9"

def t_NOTE_LENGTH(t):
    r"/?\d+"







|







11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    "OCTAVE",
    "CHORD_TYPE",
)

t_ignore = " |"

#t_BASENOTE = r"[A-Ga-g]"
t_BASENOTE = r"I+V?|VI*|i+v?|vi*"
t_ACCIDENTAL = r"\^{1,2}|_{1,2}|="
t_REST = r"z"
t_OCTAVE = r"'+|,+"
t_CHORD_TYPE = r"m|7|m7|0|o|\+|mb5|sus|sus4|maj7|mmaj7|7sus4|dim|dim7|7b5|m7b5|6|b6|m6|mb6|46|maj9|9|add9|7b9|m9"

def t_NOTE_LENGTH(t):
    r"/?\d+"