Booky is a simple application that helps with writing a single work, probably about or at least containing code. The main purpose is to take a collection of html fragments and code snippets and to compile them together into a pdf or other document, hopefully running a test suite against the code at the same time.
Booky. Build tool for books. Takes files from a source directory
and generates output in the build directory in different formats.
-o, --output [format] supports html (default), txt or pdf -p, --processor [from] supports textile (default), markdown or none -c, --clean removes all files from the build directory -h, --help display this help message
Their are a few pieces of software that already solve a subset or superset of this problem. They have the advantage of being finished and in active use, and the disadvantage of being more general in scope, and hence more complicated. Do have a look at the following as they might be a better fit for your needs:
- Sphinx (http://sphinx.pocoo.org)
- Vellum (https://launchpad.net/vellum/)
- ReStructured Text (http://docutils.sourceforge.net/rst.html)
- CSS2XSLFO (http://www.re.be/css2xslfo/index.xhtml)
- LaTeX (http://www.latex-project.org/)
The following modules are required for all the callbacks to work. If you don’t need the relevant functionality though everything should run without them.
- Idiopidae (http://www.zedshaw.com/projects/idiopidae/)
- Textile (http://pypi.python.org/pypi/textile)
- Markdown (http://www.freewisdom.org/projects/python-markdown/)
- Pisa (http://www.htmltopdf.org/)
- BeautifulSoup (http://crummy.com/software/BeautifulSoup)
- Pygments (http://pygments.org/)
Currently if you try something that requires a module you don’t have you’ll get a nice error.
It’s packaged with setuptools so as long as you have that installed you should be able to just run:
python setup.py install
If you’re hacking on the software I’d recommend running it in development mode.
python setup.py develop