Ruff! (Runtime function formatter) is a documentation generation system for programs written in the Tcl programming language. Ruff! uses runtime introspection in conjunction with comment analysis to generate reference manuals for Tcl programs.
Ruff! is covered by a liberal BSD open-source license that permits use for any purpose.
In comparison with other source code based documentation generators, Ruff! produces documentation that not only requires less duplication of effort from the programmer, but is also more complete, more accurate and more maintainable.
On the output side,
The Ruff! documentation itself is produced with Ruff!. For a larger example, see the CAWT reference manual or the reference pages for Woof! (though the latter is with an older version of Ruff!).
The ::ruff reference page describes the Ruff! documentation generation API. The ::ruff::sample page shows some sample output for some of the Ruff! features along with the associated source code from which it was generated.
Download the Ruff! distribution from https://sourceforge.net/projects/magicsplat/files/ruff/. The source code repository is at https://github.com/apnadkarni/ruff.
To install, extract the distribution to a directory listed in your Tcl auto_path
variable.
Ruff! is authored by Ashok P. Nadkarni.
It uses the textutil
package from tcllib and a modified version of the Markdown inline parser from the Caius project.