X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=gen-sitemap.py;h=b6ab57d8be254160c17af11d82e1fe3282e26498;hb=deb1c3b89079430679d9cc459a2b272fb004b40c;hp=1afe424131947fac5bd56bb175d6ab734661fb71;hpb=5107d4f2a2139f5437eac462db3e80e7f58558f3;p=phdru.name%2Fphdru.name.git diff --git a/gen-sitemap.py b/gen-sitemap.py index 1afe424..b6ab57d 100755 --- a/gen-sitemap.py +++ b/gen-sitemap.py @@ -20,6 +20,10 @@ os.chdir(args.root_dir) fullpath = os.getcwd() fp_len = len(fullpath) +tree = ('', []) +current_subtree = tree[1] +save_level = 0 + for dirpath, dirs, files in sorted(os.walk(fullpath)): try: dirpath = dirpath[fp_len:] @@ -30,6 +34,15 @@ for dirpath, dirs, files in sorted(os.walk(fullpath)): raise StopIteration parts = dirpath.split('/') level = len(parts) - 2 - print ' ' * level + parts[-1] + if level < save_level: + current_subtree = tree[1] + for i in range(level): + current_subtree = current_subtree[-1][1] + elif level > save_level: + assert level - save_level == 1 + current_subtree = current_subtree[-1][1] + #else: # level == save_level: + current_subtree.append((parts[-1], [])) + save_level = level except StopIteration: pass