*UPDATE* rest2web 0.2.0
This is a major update to rest2web, introducing lots of new features and improvements.
The main new features are :
* rest2web now renders pages a whole directory at a time and builds a tree of the site structureas it goes. This allows the new standard functions to provide very simple ways of automatically building sidebars. The data strucures are also available for you to process yourself.
* The new *standard functions* also include a one line way to print navigation trails.
* You can now specify your template encoding and output encoding - rest2web is fully unicode internally. It ought to 'do the right thing' if you don't specify what encodings are being used (even if you mix encodings).
* A new system of macros for frequently used shorthands (including smilies and Python source coloring).
* Lots more values available in the template namespace.
:Author: Michael Foord :Contact: email@example.com :Version: 0.2.0 :Date: 2005/06/01 :License: BSD-License http://www.voidspace.org.uk/documents/BSD-LICENSE.txt :Home Page: http://www.voidspace.org.uk/python/rest2web :Sourceforge: http://sourceforge.net/projects/rest2web :Development: SVN Repository https://svn.rest2web.python-hosting.com/trunk/ :Support: Pythonutils Mailing List http://www.voidspace.org.uk/mailman/listinfo/pythonutils_voidspace.org.uk
:Quick Download: http://www.voidspace.org.uk/cgi-bin/voidspace.py?file=rest2web.zip (725k)
Note : rest2web requires the pythonutils module http://www.voidspace.org.uk/python/pythonutils.html
What is restweb ? ===================
rest2web is a tool for automatically building websites, or parts of websites. It allows you to maintain your content as reST (see http://docutils.sourceforge.net ) - a relaxed (WYSIWYG) text markup. (You can keep content as HTML as well if you prefer).
It will generate HTML from your contents and insert it into HTML templates, automatically building index pages, sidebars, and navigation trails (breadcrumbs) as it goes. It features a simple templating system, macros, and more.
Adding pages to your site can be as simple as dropping the text file of cotnent into the desired directory. rest2web will add it to the index page and build the target file. If you delete a page, rest2web can automatically update the indexes for you.
Because rest2web resolves all links locally, it can be used to create HTML files viewable from the filesystem. This makes it an ideal way to create documentation.
See the docs and example site (included in the distribution) : http://www.voidspace.org.uk/python/rest2web
The example site illustrates most of the features of rest2web, which is now building a significant proportion of Voidspace - see http://www.voidspace.org.uk/technology for a live example.
What's Changed Since 0.1.0 ? ===============================
Version 0.2.0 2005/06/01 Various minor changes especially additions to the namespace pages are rendered in. Sites are rendered a whole section at a time. This means pages have index data for that section available. This is the ``sections`` variable in the namespace. Added the ``output-encoding`` and `final_encoding`` values to the restindex. Added the ``template-encoding`` value to the restindex. rest2web is now entirely unicode internally. It's now possible to specify title and description for the default section. Added indextree and thispage, allows building of sidebars. Added standard functions. Added macros. Started using subversion repository. Changed all line endings to 'LF'.
What's Next ? ===============
The next step is to have rest2web automatically create contents and sitemaps for sites it is creating. I'd like to integrate with a system that inspects Python objects for helping to automate some of the process of documenting Python projects.