From François Pinard's notes |
||
The making of this Web siteThis site is maintained by François Pinard. It is served by Erlang (Yaws). Genuine sources for pages are either reST files or Tomboy notes, with bits of purer CSS and HTML. Page generation is driven by many Makefiles and site.mk files, relying on Docutils, Traiter, and other Python scripts. Some more historical details below… The techniques used for generating HTML pages, as well as the overall aspect of the site, have been initially stolen and adapted from René Seindal, the original author and current maintainer of GNU m4, maybe the nicest GNU package I ever maintained (while René completed his doctoral studies). I am grateful to him for sharing information and complicity with me. You may visit his own Web site. I later adapted the techniques from m4 to the marvelous Python language, reducing and simplifying all Makefiles along the way. For a good while, the site was statically generated by a single make command. However, the Browse and Folders buttons, once found in the menu section of most projects, were fully served by Python scripts. The whole Make machinery and static pre-processing were then removed through the usage of a Python-based Web server and templating system. My first was Webert (unpublished), able among other things to render Allout files on the fly. Later, I dropped Webert in favour of CherryPy, only retaining the Traiter part. In these times, all HTML pages were generated dynamically or expanded on the fly, almost abusively. Experimenting more with reStructuredText files, as per David Goodger's excellent Docutils project, the next step has been to progressively replace various Allout files, would it mean the re-introduction of static pre-processing of these reST files whenever possible, for improving browsing efficiency. Wanting a blog, I also linked PyBlosXom to CherryPy for a while. From CherryPy and PyBlosXom, I then switched to Yaws, a Web server written in Erlang, and activated its included Wiki (From CherryPy to Yaws). I was attracted to this capability of more easily modifying a page. This has been an opportunity for simplifying and straightening all the recursive Makefile machinery generating my Web sites. Doing so, I also replaced PyBlosXom with a simple, tiny Python script. The above Wiki has not been so productive in practice, most
contributions were from spammers. I happily replaced it with
Tomboy, a kind of
extremely efficient, but all personal Wiki. I completed it with
tboy,
a home-made script for HTML-publishing a subset of my
notes. Last modified: 2009-12-23 03:46 |
||