STANNIX Community


Manual: man2html

man2html(1)					   General Commands Manual					 man2html(1)

NAME
       man2html - format a manual page in html

SYNOPSIS
       man2html [options] [file]

DESCRIPTION
       man2html	 converts a manual page as found in file (or stdin, in case no file argument, or the argument "-", is given)
       from man-style nroff into html, and prints the result on stdout.	 It does support tbl but does not  know	 about	eqn.
       The exit status is 0. If something goes wrong, an error page is printed on stdout.

       This  can  be  used as a stand-alone utility, but is mainly intended as an auxiliary, to enable users to browse their
       man pages using a html browser like lynx(1), xmosaic(1) or netscape(1).

       The main part of man2html is the troff-to-html engine written by Richard Verhoeven (rcb5@win.tue.nl).  It adds hyper‐
       links for the following constructs:

       foo(3x)		 "http://localhost/cgi-bin/man/man2html?3x+foo"
       method://string	 "method://string"
       www.host.name	 "http://www.host.name"
       ftp.host.name	 "ftp://ftp.host.name"
       name@host	 "mailto:name@host"
       	 "file:/usr/include/string.h"

       (The first of these can be tuned by options - see below.)  No lookup is done - the links generated  need	 not  exist.
       Also  an	 index with internal hyperlinks to the various sections is generated, so that it is easier to find one's way
       in large man pages like bash(1).

OPTIONS
       When reading from stdin, it is not always clear how to do .so expansion. The -D option allows a script to define	 the
       working directory.

       -D pathname
	      Strip the last two parts from the pathname, and do a chdir(dir) before starting the conversion.

       The -E option allows the easy generation of error messages from a cgi script.

       -E string
	      Output an error page containing the given error message.

       The general form of a hyperlink generated for a man page reference is

	      

       with a default as shown above. The parts of this hyperlink are set using the various options.

       -h     Set method:cgipath to http://localhost.

       -H host[.domain][:port]
	      Set method:cgipath to http://host.domain:port.

       -l     Set method:cgipath to lynxcgi:/usr/lib.

       -L dir Set method:cgipath to lynxcgi:dir.

       -M man2htmlpath
	      Set the man2htmlpath to use. The default is /cgi-bin/man/man2html.

       -p     Set separator to '/'.

       -q     Set separator to '?'. This is the default.

       -r     Use relative html paths, instead of cgi-bin paths.

       On  a  machine  without running httpd, one can use lynx to browse the man pages, using the lynxcgi method.  When some
       http daemon is running, lynx, or any other browser, can be used to browse the man pages, using the http method.	 The
       option -l (for `lynxcgi') selects the former behaviour.	With it, the default cgipath is /usr/lib.

       In general, a cgi script can be called by

	      /?

       and the environment variables PATH_INFO and QUERY_STRING will be set to  and , respectively.  Since
       lynxcgi does not handle the PATH_INFO part, we generate hyperlinks with `?' as a separator by default.  The option -p
       (for `path') selects '/' as a separator, while the option -q (for `query') selects '?' as a separator.

       The option -H host will specify the host to use (instead of localhost).	A cgi script could use

	      man2html -H $SERVER_NAME

       if the variable SERVER_NAME is set.  This would allow your machine to act as a server and export man pages.

BUGS
       There are many heuristics.  The output will not always be perfect.  The lynxcgi method will not work if lynx was com‐
       piled without selecting support for it.	There may be problems with security.

AUTHOR
       Richard Verhoeven was the original author of man2html.  Michael Hamilton and Andries Brouwer subsequently improved on
       it.  Federico Lucifredi  is the current maintainer.

SEE ALSO
       lynx(1), man(1), hman(1)

						       1 January 1998						 man2html(1)