Mercurial > dottes
view abcfirstline.py @ 446:abdf2745a9a8 build-default-192
Adjust Shave the Donkey to more closely reflect Havoc practice.
And add Step n' Fetch Her as alternate title. Same tune, different dance.
author | Jim Hague <jim.hague@acm.org> |
---|---|
date | Mon, 02 Dec 2013 20:59:18 +0000 |
parents | 811151d3ae73 |
children | 1b79867b4f35 |
line wrap: on
line source
#!/usr/bin/env python # # Write out a modified version of a .abc file with just the data # to print the first line of the music only. # import sys def process(inf): continued = False print "X:1" for line in inf: line = line.strip() # If it is empty or starts "%", ignore it. if len(line) == 0 or line[0] == "%": continue # Is it a header line? I.e. does it start LETTER COLON? # If so, output only ones we need. start = line[:2] if len(start) > 1 and start[1] == ":" and start[0].isalpha(): if start[0] in ["M", "K", "L"]: print line # Output line. If it is a continuation, output at most one # continuation. else: print line if continued or line[-1] != "\\": break else: continued = True if len(sys.argv) > 1: for arg in sys.argv[1:]: try: inf = open(arg, "r") process(inf) finally: inf.close() else: process(sys.stdin)