ecco is a literate-programming style documentation generator for emacs. Its a port of the very excellent docco.
Docco is mainly for javascript, and already has many language-specific ports like shocco for shell-scripts, rocco for ruby, among others.
The idea is to write comments and in-code documentation as markdown,
and, then type M-x ecco
and see pretty docs in your browser.
To understand what it does, look here for ecco-generated documentation for the ecco program itself.
An advantage of ecco is that it uses emacs's built-in comment processing funcionality and highlighting functionality and so it works for any language.
To get it
$ pwd
/path/to/my/emacs-packages
$ git clone git://github.com/capitaomorte/ecco.git
Then, in your .emacs
or .emacs.d/init.el
(require 'ecco)
Skip the next line if you have a "markdown" program in your path
(setq ecco-markdown-program "/path/to/your/markdown/interpreter")
Inside emacs, open any file where you have comments as markdown, try this
M-x ecco
To generate documentation for many files try
M-x ecco-files
I haven't (yet) included ecco in any package-management system (plan to do so soon, el-get and melpa are good candidates)
If you have a working markdown interpreter in your path, you can skip the next
step. Otherwise a good, fast markdown interpreter for many operating systems,
including Windows, is
peg-markdown. So once you have
installed it, add this line to .emacs
as well.
For the moment, ecco, still depends on an external markdown
program that you
may have to install in your system and configure ecco to use it by setting the
variable ecco-markdown-program
.
In the future I'll try to make it work with org-mode, which is included with recent emacsen and provides mechanisms for exporting to html alternatively maybe someone wants to write a markdown interpreter in emacs-lisp!