build_class.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #!/usr/bin/env python3
  2. # generates HTML man pages docs/html/<category>.html
  3. # (c) The GRASS Development Team, Markus Neteler, Glynn Clements 2003, 2004, 2005, 2006, 2009, 2019
  4. import sys
  5. import os
  6. import string
  7. from build_html import *
  8. no_intro_page_classes = ['display', 'general', 'miscellaneous', 'postscript']
  9. os.chdir(html_dir)
  10. #write separate module pages:
  11. #for all module groups:
  12. cls = sys.argv[1]
  13. modclass = sys.argv[2]
  14. year = None
  15. if len(sys.argv) > 3:
  16. year = sys.argv[3]
  17. filename = modclass + ".html"
  18. f = open(filename + ".tmp", 'w')
  19. write_html_header(f, "%s modules - GRASS GIS %s Reference Manual" % (modclass.capitalize(), grass_version))
  20. modclass_lower = modclass.lower()
  21. modclass_visible = modclass
  22. if modclass_lower not in no_intro_page_classes:
  23. if modclass_visible == 'raster3d':
  24. # covert keyword to nice form
  25. modclass_visible = '3D raster'
  26. f.write(modclass_intro_tmpl.substitute(modclass=modclass_visible, modclass_lower=modclass_lower))
  27. f.write(modclass_tmpl.substitute(modclass=to_title(modclass_visible)))
  28. #for all modules:
  29. for cmd in html_files(cls):
  30. basename = os.path.splitext(cmd)[0]
  31. desc = check_for_desc_override(basename)
  32. if desc is None:
  33. desc = get_desc(cmd)
  34. f.write(desc2_tmpl.substitute(cmd = cmd,
  35. basename = basename,
  36. desc = desc))
  37. f.write("</table>\n")
  38. write_html_footer(f, "index.html", year)
  39. f.close()
  40. replace_file(filename)