#!/usr/bin/env python3
# generates docs/html/full_index.html
# (c) The GRASS Development Team, Markus Neteler, Glynn Clements 2003, 2004, 2005, 2006, 2009
import sys
import os
import string
from build_html import *
year = None
if len(sys.argv) > 1:
year = sys.argv[1]
os.chdir(html_dir)
# TODO: create some master function/dict somewhere
class_labels = {
"d": "display",
"db": "database",
"g": "general",
"i": "imagery",
"m": "miscellaneous",
"ps": "PostScript",
"r": "raster",
"r3": "3D raster",
"t": "temporal",
"v": "vector",
}
classes = []
for cmd in html_files("*"):
prefix = cmd.split(".")[0]
if prefix not in [item[0] for item in classes]:
classes.append((prefix, class_labels.get(prefix, prefix)))
classes.sort(key=lambda tup: tup[0])
# begin full index:
filename = "full_index.html"
f = open(filename + ".tmp", "w")
write_html_header(
f, "GRASS GIS %s Reference Manual: Full index" % grass_version, body_width="80%"
)
# generate main index of all modules:
f.write(full_index_header)
f.write(toc)
# for all module groups:
for cls, cls_label in classes:
f.write(cmd2_tmpl.substitute(cmd_label=to_title(cls_label), cmd=cls))
# for all modules:
for cmd in html_files(cls):
basename = os.path.splitext(cmd)[0]
desc = check_for_desc_override(basename)
if desc is None:
desc = get_desc(cmd)
f.write(desc1_tmpl.substitute(cmd=cmd, basename=basename, desc=desc))
f.write("\n")
write_html_footer(f, "index.html", year)
f.close()
replace_file(filename)
# done full index