# HG changeset patch # User Paul Boddie # Date 1383352723 -3600 # Node ID 97ab922fbbd028a60cca3aed417bdd2dd2ccb528 # Parent c3d772d8cbad526c865a04e8a2198fcc6dc722aa Simplified the archive filenames and tidied up relative path handling. diff -r c3d772d8cbad -r 97ab922fbbd0 merge.py --- a/merge.py Sat Nov 02 01:24:31 2013 +0100 +++ b/merge.py Sat Nov 02 01:38:43 2013 +0100 @@ -33,7 +33,7 @@ for path, dirnames, filenames in walk(package): path = relpath(path, package) for filename in filenames: - results.append(join(path, filename)) + results.append(normpath(join(path, filename))) return results # Main program. @@ -110,7 +110,7 @@ if is_zipfile: zf.extract(filename, outdir) else: - target = normpath(join(outdir, leafname, filename)) + target = join(outdir, leafname, filename) target_dir = split(target)[0] if not exists(target_dir): makedirs(target_dir) @@ -134,10 +134,6 @@ try: write("MoinMoinPackage|1\n") for entry in entries: - - # Reference the adjusted location of each file. - - entry[1] = join(outleafname, entry[1]) write("|".join(entry) + "\n") finally: f.close() @@ -147,8 +143,13 @@ page_package = ZipFile(package_zip, "w") try: + page_package.write(join(outdir, "MOIN_PACKAGE"), "MOIN_PACKAGE") + for filename in get_filenames(outdir): - page_package.write(join(outleafname, filename)) + if split(filename)[-1] == "MOIN_PACKAGE": + continue + + page_package.write(join(outleafname, filename), filename) finally: page_package.close()