X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=buildscripts%2Fmutopia-index.py;h=f64898fbb5c6f76f04812a6a451dfaeff872e6c5;hb=9b725aa625683f62a56453c8900b6d007674236b;hp=be4163087bd25fb365783db9736e676364d23134;hpb=998986bbd15afaafb24904a777e8be9ba1233799;p=lilypond.git diff --git a/buildscripts/mutopia-index.py b/buildscripts/mutopia-index.py index be4163087b..f64898fbb5 100644 --- a/buildscripts/mutopia-index.py +++ b/buildscripts/mutopia-index.py @@ -3,7 +3,34 @@ name = 'mutopia-index' -import find +import fnmatch +import os + +_debug = 0 + +_prune = ['(*)'] + +def find(pattern, dir = os.curdir): + list = [] + names = os.listdir(dir) + names.sort() + for name in names: + if name in (os.curdir, os.pardir): + continue + fullname = os.path.join(dir, name) + if fnmatch.fnmatch(name, pattern): + list.append(fullname) + if os.path.isdir(fullname) and not os.path.islink(fullname): + for p in _prune: + if fnmatch.fnmatch(name, p): + if _debug: print "skip", `fullname` + break + else: + if _debug: print "descend into", `fullname` + list = list + find(pattern, fullname) + return list + + import re import os import sys @@ -25,28 +52,30 @@ def file_exist_b (fn): headertext= r""" -These example files are taken from the LilyPond distribution. -LilyPond currently only outputs TeX and MIDI. The pictures and -PostScript files were generated using TeX, Ghostscript and some -graphics tools. The papersize used for these examples is A4. -The images are in PNG format, and should be viewable with any current browser. -We don't use GIFS due to patent problems. + +
You're looking at a page with some LilyPond samples. These files +are also included in the distribution. The output is completely +generated from the .ly source file, without any further touch +up. +
-If you want an accurate impression of the output quality please print -out the samples first. -""" -headertext_nopics = r"""This is a subdirectory of the LilyPond example -set. We decided not to show any examples from this directory. If you -want to view them, then you have to download LilyPond and compile them -yourself.""" +The pictures are 90 dpi anti-aliased snapshots of the printed output. +If you want a better impression of the appearance, do print out one of +the PDF or PostScript files; they use scalable fonts, and should look +good at any resolution. + +""" +headertext_nopics= r""" +
Nothing to be seen here, move along. +""" # # FIXME breaks on multiple strings. # -def read_mudela_header (fn): - s = gulp_file(fn) +def read_lilypond_header (fn): + s = open(fn).read () s = re.sub('%.*$', '', s) s = re.sub('\n', ' ', s) @@ -59,7 +88,7 @@ def read_mudela_header (fn): return dict while s: - m = re.search (r"""\s*(\S+)\s*=\s*([^;]+)\s*;""", s) + m = re.search (r'''\s*(\S+)\s*=\s*"([^"]+)"''', s) if m == None: s = '' else: @@ -74,107 +103,117 @@ def read_mudela_header (fn): return dict def help (): - sys.stdout.write (r"""Usage: mutopia-index [options] INFILE OUTFILE -Generate index for mutopia\n + sys.stdout.write (r"""Usage: mutopia-index [OPTIONS] INFILE OUTFILE +Generate index for mutopia. + Options: - -h, --help print this help - --prefix=PRE specify prefix + -h, --help print this help + -o, --output=FILE write output to file -s, --subdirs=DIR add subdir - --suffix=SUF specify suffix""" + --suffix=SUF specify suffix + +""" ) sys.exit (0) # ugh. -def gen_list(inputs, subdir, filename): - (pre, subdirs, post)=subdir +def gen_list(inputs, filename): print "generating HTML list %s\n" % filename - list = open(filename, 'w') - list.write ('
' % desc) - list.write ('