headertext= r"""
-<p>You're looking at a page with some LilyPond samples.
-These files are also included in the distribution. The output is
-completely generated by LilyPond, without any touch up by humans.
-<p>The PostScript files were generated using TeX and dvips at 600 dpi.
-The pictures are 90dpi anti-aliased snapshots of the printed output.
-The images are in PNG format, and should be viewable with any current
-browser.
+<p>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 <tt>.ly</tt> source file, without any further touch
+up.
+
+<p>
+
+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.
-<p>If you want a better impression of the appearance, do print out one of
-the postscript files.
"""
+headertext_nopics= r"""
+<p>Nothing to be seen here, move along.
+"""
#
# FIXME breaks on multiple strings.
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:
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
- -o,-output=FILE write output to file.
+ -o, --output=FILE write output to file
-s, --subdirs=DIR add subdir
- --suffix=SUF specify suffix"""
+ --suffix=SUF specify suffix
+
+"""
)
sys.exit (0)
list = open(filename, 'w')
else:
list = sys.stdout
- list.write ('<html><title>Rendered Examples</title>\n')
+ list.write ('<html><head><title>Rendered Examples</title>\n')
+ list.write ('<style type="text/css">\n')
+ list.write ('hr { border:0; height:1; color: #000000; background-color: #000000; }\n')
+ list.write ('</style></head>\n')
+
list.write ('<body bgcolor=white>\n')
if inputs:
(base, ext2) = os.path.splitext (base)
ext = ext2 + ext
- print '%s, ' % ex
header = read_lilypond_header(ex)
-
def read_dict(s, default, h =header):
try:
ret = h[s]
composer = read_dict('composer', '')
desc = read_dict('description', '')
list.write('<hr>\n')
- list.write('<h1>example file: %s</h1>\n' % head);
- if composer <> '':
+ list.write('<h1>%s</h1>\n' % head);
+ if composer:
list.write('<h2>%s</h2>\n' % composer)
- if desc <> '':
+ if desc:
list.write('%s<p>' % desc)
list.write ('<ul>\n')
def list_item(filename, desc, type, l = list):
if file_exist_b(filename):
+
l.write ('<li><a href="%s">%s</a>' % (filename, desc))
+
+ # todo: include warning if it uses \include
+ # files.
+
size=os.stat(filename)[stat.ST_SIZE]
kB=(size + 512) / 1024
if kB:
- l.write (' (%s %dkB)' % (type, kB))
+ l.write (' (%s %d kB)' % (type, kB))
else:
- l.write (' (%s %dcharacters)' % (type, size))
+ l.write (' (%s %d characters)' % (type, size))
pictures = ['jpeg', 'png', 'xpm']
l.write ('\n')
if not file_exist_b (f):
break
list_item(f, 'See a picture of page %d' % pageno, 'png')
- list_item(base + '.pdf', 'Print ', 'PDF')
- list_item(base + '.ps.gz', 'Print ', 'gzipped PostScript')
+ list_item(base + '.pdf', 'Print', 'PDF')
list_item(base + '.midi', 'Listen', 'MIDI')
list.write ("</ul>\n");
for d in dirs:
allfiles = allfiles + find ('*.ly.txt', d)
-print allfiles
-
gen_list (allfiles, outfile)