X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=gen-sitemap.py;h=797801099e67bae50b940a0b67f2e837b122dfa9;hb=HEAD;hp=63b34a2ff5ce9af1df3e161410d56205de97d76b;hpb=2f9b1d1da8492b7e0456953e585f247adfcbe3ab;p=phdru.name%2Fphdru.name.git diff --git a/gen-sitemap.py b/gen-sitemap.py index 63b34a2..7978010 100755 --- a/gen-sitemap.py +++ b/gen-sitemap.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#! /usr/bin/env python3 import argparse from fnmatch import fnmatch @@ -12,10 +12,11 @@ parser.add_argument('root_dir', help='Root dicrectory') args = parser.parse_args() exclude = [] -for pat in args.exclude: - exclude.append(pat) - if not pat.endswith('/*'): - exclude.append(pat + '/*') +if args.exclude: + for pat in args.exclude: + exclude.append(pat) + if not pat.endswith('/*'): + exclude.append(pat + '/*') os.chdir(args.root_dir) fullpath = os.getcwd() @@ -42,29 +43,52 @@ for dirpath, dirs, files in sorted(os.walk(fullpath)): elif level > save_level: assert level - save_level == 1 current_subtree = current_subtree[-1][1] - #else: # level == save_level: + # else: # level == save_level: current_subtree.append((parts[-1], [])) save_level = level except StopIteration: pass -def _tree2html(tree, level=0): - indent = " " * level - strings = [] - strings.append(indent + "") - return '\n'.join(strings) +sitemap_tmpl.append(""" +#end def +$phd_site.respond(self) +""") -write_if_changed("sitemap.html", _tree2html(tree[1])) +write_if_changed("sitemap.tmpl", ''.join(sitemap_tmpl))