mdocml – UNIX manpage compiler, current version 1.12.1 (23 March 2012)
Sources: current, cvsweb (archives)
mdocml is a suite of tools compiling mdoc, the roff macro package of choice for BSD manual pages, and man, the predominant historical package for UNIX manuals. The mission of mdocml is to deprecate groff, the GNU troff implementation, for displaying mdoc pages whilst providing token support for man.
Why? groff amounts to over 5 MB of source code, most of which is C++ and all of which is GPL. It runs slowly, produces uncertain output, and varies in operation from system to system. mdocml strives to fix this (respectively small, C, ISC-licensed, fast and regular).
mdocml consists of the libmandoc validating compiler and mandoc, which interfaces with the compiler library to format output for UNIX terminals (with support for wide-character locales), XHTML, HTML, PostScript, and PDF. It also includes preconv, for recoding multibyte manuals; demandoc, for emitting only text parts of manuals; mandocdb, for indexing manuals; and apropos, whatis, and man.cgi (via catman) for semantic search of manual content. It is a BSD.lv project.
Disambiguation: mdocml is often referred to by its installed binary,
mdocml is in plain-old ANSI C and should build and run on any modern system; however, you'll
need libdb to build apropos, whatis, man.cgi, catman, and mandocdb (this is installed by default on BSD UNIX
systems — see the Makefile if you're running Linux). To build and install into /usr/local/, just
make install. Be careful: the preconv, apropos, and whatis binary names are
usually taken by existing utilities.
Binary archives consist of pre-compiled binaries, manuals, and other necessary files. Universal (Mac OS X) binaries are compiled for the PCC, i386, and x86_64 architectures. Windows binaries are compiled with MingW for the 32-bit (i686) and 64-bit (x86_64) architectures.
Several systems come bundled with mdocml utilities.
If your system does not appear below, the maintainers have not contacted me and it should not be considered
Please contact us if you plan on maintaining a downstream version!
These manuals are generated automatically and refer to the current release. They are the authoritative documentation for the mdocml system.
|apropos(1)||search the manual page database (text | xhtml | pdf | ps)|
|demandoc(1)||emit only text of UNIX manuals (text | xhtml | pdf | ps)|
|mandoc(1)||format and display UNIX manuals (text | xhtml | pdf | ps)|
|preconv(1)||recode multibyte UNIX manuals (text | xhtml | pdf | ps)|
|whatis(1)||search the manual page database (text | xhtml | pdf | ps)|
|mandoc(3)||mandoc macro compiler library (text | xhtml | pdf | ps)|
|man(7)||man language reference (text | xhtml | pdf | ps)|
|man.cgi(7)||cgi for manpage query and display (text | xhtml | pdf | ps)|
|eqn(7)||eqn-mandoc language reference (text | xhtml | pdf | ps)|
|mandoc_char(7)||mandoc special characters (text | xhtml | pdf | ps)|
|mdoc(7)||mdoc language reference (text | xhtml | pdf | ps)|
|roff(7)||roff-mandoc language reference (text | xhtml | pdf | ps)|
|tbl(7)||tbl-mandoc language reference (text | xhtml | pdf | ps)|
|catman(8)||update a man.cgi manpage cache (text | xhtml | pdf | ps)|
|mandocdb(8)||index UNIX manuals (text | xhtml | pdf | ps)|
Use the mailing lists for bug-reports, patches, questions, etc. Please check the TODO for known issues before posting. All lists are subscription-only: send a blank e-mail to the listed address to subscribe. Beyond that, contact Kristaps at kris...@bsd.lv. Archives are available at Gmane.
|disc...@mdocml.bsd.lv||bug-reports, general questions, and announcements|
|tec...@mdocml.bsd.lv||patches and system discussions|
|sou...@mdocml.bsd.lv||source commit messages|
23-03-2011: version 1.12.1
Significant work on apropos and mandocdb. These tools are now much more robust. A whatis implementation is now handled as an apropos mode. These tools are also able to minimally handle pre-formatted pages, that is, those already formatted by another utility such as GNU troff.
The man.cgi script is also now available for wider testing. It interfaces with mandocdb manuals cached by catman. HTML output is generated on-the-fly by libmandoc or internal methods to convert pre-formatted pages.
The mailing list archive for the discuss and tech lists are being hosted by Gmane at gmane.comp.tools.mdocml.user and gmane.comp.tools.mdocml.devel, respectively.
Lastly, I'm no longer providing binaries, as nobody has asked for them.
See cvsweb for historical notes.
Copyright © 2008–2011 Kristaps Dzonsons, $Date: 2012/03/24 02:07:32 $