VH-Man2html, UNIX man page to html converter
This page is no longer being maintained. VH-Man2html has been folded into the Linux man-1.4* and man-1.5 packages by Andries Brouwer (aeb@cwi.nl). The current version is usually found in http://ftp.win.tue.nl:/pub/linux/util/man
Richard Verhoeven (rcb5@win.tue.nl) wrote a very good heuristic-based man to html converter. I've enhanced Richard's man2html so that it can also handle BSD mandoc-style man pages. I've also written some scripts to front-end man2html. They are designed to work with the man related commands and makewhatis info from Caldera/Redhat Linux. They generate indexes and perform searchs. The Indexes are generated on demand and update themselves when necessary. The indexes are ordered alphabetically with an A,B,C,... quick-link header and divided into man sections with section cross-links.
What does the resulting HTML look like? Here's a sample page for telnet(1)
I've called my enhanced version of man2html, vh-man2html to distinguish it from both Richard's orginal and the many other scripts and programs of the same name. The V standing for Verhoeven's man2html, and the H for Hamilton's enhancements and packaging.
The March 1997 Linux Journal includes my article on vh-man2html. If you're interested in more details of how it came about, and a summary of how it works, please see the article.
Several man to html convertors exist. I've looked at two:- "Verhoeven" man2html was written by Richard Verhoeven (NL:5482ZX35) at the Eindhoven University of Technology (email: rcb5@win.tue.nl). It works by reading the man page source directly. This is faster and more accurate, but you need the sources online (not a problem for Linux systems). There are other translators also called man2html around on the net. Richard has a web page that summarises what's around, and where you can also get the original source for man2html.c.
- RosettaMan (Rman) - which works by examining the formatted output pages from troff+tbl+eqn. RosettaMan can be obtained via anonymous ftp to ftp://ftp.cs.berkeley.edu:/ucb/people/phelps/tcltk/rman.tar.Z. Rosetta man's strength is that it can be used on systems where man page sources aren't supplied, eg SGI.
VH-Man2html privides the following functionality:
- man.html - Main page for access to man2html and man indexes.
- man2html - CGI binary that converts man pages to html.
- manwhatis - CGI script for a name and synopsis index organised by manual section. Generated from the makewhatis info.
- mansec - CGI script for a name only index for each section.
- mansearch - CGI script for a glimpse based full text search.
- netscape-man - script which emulates the man command, but uses netscape as its pager.
- /var/man2html - Cache directory for indexes and glimpse indexes.
- Can work as a remote man-page server.
- Support for BSD mandoc man pages. This means it can now cope with all the Caldera/Redhat man pages (eg telnet, ftp, and lpr are now converted correctly).
- The /usr/bin/netscape-man script performs like the man command
but talks to a live (already running) netscape to present pages, e.g.
netscape-man lpr - netscape pops up lpr man page. netscape-man 8 sendmail - pops up sendmail (8) man page. netscape-man 7 into - pops up name+description index for sec 7. netscape-man 5 - pops up name-only index for sec 5. netscape-man -k pine - pops up a glimpse text search for pine.
Christoph Lameter (clameter@waterf.org) has put a version of vh-man2html into Debian Linux. His version is modified to work with man 2.3.
While working on man2html, I made some improvements to makewhatis that reduces its run time from 30 minutes to about 1.5 minutes on my 486DX2/66. It is now available as part of man-1.4g.tar.gz: at
ftp://sunsite.unc.edu/pub/Linux/apps/doctools/man