Basics
Soho consists of a single command-line program called soho-build.
Running it on a specially structured directory will generate HTML
files, copy assets (such as images, CSS or JavaScript files) and
generate a site map.
For each file to process (thus excluding assets), the following tasks
are done:
- Generate HTML from the source file. The source file may be written
in a special markup such as reStructuredText or directly in
HTML. In all cases, a generator is chosen based on the file
extension and returns an HTML fragment.
- Apply a template to this HTML fragment. Currently, only Page
Templates (also known as Zope Page Templates or ZPT) is supported,
but Soho can be extended to support other templating systems. When
applying the template, additional bindings can be provided through
a metadata file (or directly in the source file if possible,
e.g. if the source file is in reStructuredText).
All in all, here is a diagram of the process: