From a3065a8582c97035b5f5c0c0545d1836757a5b58 Mon Sep 17 00:00:00 2001 From: Scott Bahling Date: Mon, 23 Sep 2013 15:34:24 +0200 Subject: Better handling of INDEXs --- panfry/main.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'panfry') diff --git a/panfry/main.py b/panfry/main.py index 1b90181..917ebc0 100755 --- a/panfry/main.py +++ b/panfry/main.py @@ -33,13 +33,20 @@ class StoppableHttpServer(BaseHTTPServer.HTTPServer): self.handle_request() +def get_INDEX(path, index): + INDEX = os.path.join('src', path, 'INDEX') + if os.path.isfile(INDEX): + for line in open(INDEX, 'r').readlines(): + newpath = os.path.join(path, line.strip()) + index = get_INDEX(newpath, index) + index.append(newpath) + return index + def get_env(): env = panfry.cli.init_argparser().parse_args() env.pub_path = os.path.abspath(env.pub_path) - env.index = [''] if env.cmd in ['gen']: - INDEX = os.path.join(env.doc_path, 'src', 'INDEX') if not os.path.isdir(env.doc_path): print("%s directory not found. Aborting..." % env.doc_path) exit(1) @@ -54,8 +61,8 @@ def get_env(): if env.pandoc_options: env.pandoc_options = list(shlex.split(env.pandoc_options)) - if os.path.isfile(INDEX): - env.index += open(INDEX, 'r').readlines() + env.index = [''] + env.index = get_INDEX('', env.index) return env -- cgit v1.2.3