projects
/
treecutter.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
db574de
)
Adding initial sitemap, differentiate class directive in tree building.
author
Fredrik Unger
<fred@tree.se>
Mon, 28 Mar 2011 07:36:02 +0000
(09:36 +0200)
committer
Fredrik Unger
<fred@tree.se>
Mon, 28 Mar 2011 07:36:02 +0000
(09:36 +0200)
src/tree-cutter.py
patch
|
blob
|
history
diff --git
a/src/tree-cutter.py
b/src/tree-cutter.py
index 79bd372aee24cbfa0e54495d56a1b02a66da3b8a..35d4bb5a497aec5c57cef445011e5344f632948b 100755
(executable)
--- a/
src/tree-cutter.py
+++ b/
src/tree-cutter.py
@@
-153,9
+153,11
@@
def xsltConvert(doc):
def genMenu(page,sitemap,slevel,elevel):
title = None
sm = []
def genMenu(page,sitemap,slevel,elevel):
title = None
sm = []
- if elevel == MAXLEVEL or elevel == 1:
+ if elevel == MAXLEVEL or elevel == 1 or page == None:
+ html = '<ul>\n'
sm = sitemap
else:
sm = sitemap
else:
+ html = '<ul class="tree">\n'
idx = sitemap.index(page)
while (sitemap[idx]['level'] == page['level']):
idx = idx-1
idx = sitemap.index(page)
while (sitemap[idx]['level'] == page['level']):
idx = idx-1
@@
-165,7
+167,7
@@
def genMenu(page,sitemap,slevel,elevel):
sm.append(sitemap[idx])
idx = idx+1
oldlevel = slevel
sm.append(sitemap[idx])
idx = idx+1
oldlevel = slevel
- html = '<ul>\n'
+
for p in sm:
if slevel > p['level'] or elevel < p['level']:
continue
for p in sm:
if slevel > p['level'] or elevel < p['level']:
continue
@@
-178,8
+180,8
@@
def genMenu(page,sitemap,slevel,elevel):
if p['link'][-1] == '/':
html+='</li>\n'
html+='</ul>\n</li>\n'
if p['link'][-1] == '/':
html+='</li>\n'
html+='</ul>\n</li>\n'
- if page == p:
- html+='<li
><a href="%s">[%s]
</a>' % (p['link'],p['menu'])
+ if page
!= None and page
== p:
+ html+='<li
class="selected"><a href="%s">%s
</a>' % (p['link'],p['menu'])
else:
html+='<li><a href="%s">%s</a>' % (p['link'],p['menu'])
if p['link'][-1] != '/' or p['link'] == '/':
else:
html+='<li><a href="%s">%s</a>' % (p['link'],p['menu'])
if p['link'][-1] != '/' or p['link'] == '/':
@@
-205,6
+207,24
@@
def writeToTemplate(page,doc,sitemap):
for r in page['res']:
mkdir_p(os.path.dirname(tmptarget+r))
shutil.copyfile(r, tmptarget+r)
for r in page['res']:
mkdir_p(os.path.dirname(tmptarget+r))
shutil.copyfile(r, tmptarget+r)
+
+def createSitemap(sitemap):
+ (menu,menuname) = genMenu(None,sitemap,1,MAXLEVEL)
+ template = Template(file=style_tmpl,
+ searchList=[
+ {'title':'Sitemap'},
+ {'menu':menu},
+ {'article':menu},
+ {'levelmenu':''},
+ {'levelname':''}])
+ outfile = tmptarget+'sitemap.en.html'
+ mkdir_p(os.path.dirname(outfile))
+ out = open(outfile, 'w')
+ out.write(str(template))
+ out.close()
+
+
+
sitemap = generateSitemap()
tmptarget = tempfile.mkdtemp()+'/'
for page in sitemap:
sitemap = generateSitemap()
tmptarget = tempfile.mkdtemp()+'/'
for page in sitemap:
@@
-216,6
+236,8
@@
for page in sitemap:
writeToTemplate(page,pubdoc,sitemap)
t2 = time.time()
print "[%5.2f s]" % (round(t2-t1,2))
writeToTemplate(page,pubdoc,sitemap)
t2 = time.time()
print "[%5.2f s]" % (round(t2-t1,2))
+
+createSitemap(sitemap)
publish(tmptarget, args.output)
publish(args.style+"css", args.output)
publish(args.style+"images",args.output)
publish(tmptarget, args.output)
publish(args.style+"css", args.output)
publish(args.style+"images",args.output)