Skip to content


Subversion checkout URL

You can clone with
Download ZIP
mad(1) is a markdown manual page viewer
Shell Makefile
Latest commit 9699605 @tj Merge pull request #27 from thomd/completion
bash completion for mad pages
Failed to load latest commit information.
bin Release 0.4.1
etc moved bash completion script into /etc
examples Fixed: remove html tags
share/mad Added stdin support Release 0.4.1
Makefile moved bash completion script into /etc add docs
package.json add package.json


mad(1) is a markdown driven manual page viewer, this makes manuals easier to write, reuse, and read.

markdown man page


Usage: mad <file>


  -U, --update-self update mad(1) itself
  -u, --update      update remote mad-pages
  -v, --version     output cpm version
  -h, --help        output this help information
  -l, --list      list mad-pages


Install mad(1) and its associated mad page.

$ make install

Uninstall both mad(1) and the associated mad page.

$ make uninstall

Via npm:

$ npm install -g mad


I love man pages, however they are annoying to write by hand, and often converted from markdown anyway. mad(1) is effectively the same idea, but write your manuals in markdown like you would anyway, re-use them in your github readmes, wikis, or use markdown to HTML conversion tools.

mad(1) pipes to less(1) so you get the same paging / searching goodness that you expect from man(1).

Page repository

mad-pages is a collection of useful mad pages such as language operator precedence tables, http status codes, mime type tables etc. Use mad --update to install/re-install them.

Page lookup

Use the MAD_PATH environment variable to control where mad(1) will look for a manual page. The ".md" extension may be omitted.

For example:


The following paths will always be searched:

 - .
 - /usr/local/share/mad
 - /usr/share/mad


By default mad(1) installs and sources /usr/local/etc/mad.conf for its formatting. You may edit this file directly, or if you're scared of overwriting it when updating mad(1) you can copy this file to something like ~/mad.conf and export MAD_CONFIG=~/mad.conf.

heading: 1m
code: 90m
strong: 1m
em: 4m


Jade manual:

jade manual markdown

Something went wrong with that request. Please try again.