- commit
- 5ee50e75083c92b0698c62bf516fad5fb59e01f9
- parent
- 87a7a88e6b34138949f2f9ed8dfcdb070b305548
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2023-09-19 10:15
refactor/fix joining sections
Diffstat
| M | xi2.py | 25 | ++++++++----------------- |
1 files changed, 8 insertions, 17 deletions
diff --git a/xi2.py b/xi2.py
@@ -69,29 +69,20 @@ if __name__ == '__main__': 69 69 ll = ll.strip('\n') 70 70 ll = re.sub('\n\n+', '\n\n', ll) 71 7172 -1 # join track parts from different sets-1 72 # join tracks from different sections 73 73 tracks = dict()74 -1 for s in ll.split('\n\n'):75 -1 if len(tracks) == 0:76 -1 l = 077 -1 else:78 -1 l = max([len(t) for t in tracks])79 -1 for track in s.split('\n'):-1 74 for section in ll.split('\n\n'): -1 75 length = max([len(t) for t in tracks.values()], default=0) -1 76 for track in section.split('\n'): 80 77 try:81 -1 (name, data) = track.split(':', 1)-1 78 name, data = track.split(':', 1) 82 79 except Exception: 83 80 print(track) 84 81 raise85 -1 data = parse(data)86 82 if name not in tracks:87 -1 tracks[name] = [''] * l88 -1 tracks[name] += data89 -1 if len(tracks) == 0:90 -1 l = 091 -1 else:92 -1 l = max([len(t) for t in tracks])93 -1 for name, data in tracks.items():94 -1 data += [''] * (l - len(data))-1 83 tracks[name] = [] -1 84 tracks[name] += [''] * (length - len(tracks[name])) -1 85 tracks[name] += parse(data) 95 86 96 87 # create first track with meta infos 97 88 midi_tracks = []