From [email protected] Tue Aug 2 09:43:18 1994 Article: 398 of comp.infosystems.announce From: [email protected] (Earl Hood) Subject: New man2html (Tool to convert nroff text to HTML) Date: Thu, 21 Jul 94 22:51:53 GMT-1:00 Organization: Engineering, Convex Computer Corporation, Richardson, Tx USA Announcing a new version of man2html. The new version supports linking to cross-referenced manpages. The linking capabilities are general enough to support calls to custom CGI programs or static files. You may find out more on man2html at http://www.oac.uci.edu/indiv/ehood/ man2html is obtainable via FTP as ftp.uci.edu/pub/dtd2html/perlWWW.15July.1994.tar.gz Here is some excerpts from the man2html documentation: __________________________________________________________________________ MAN2HTML Description man2html takes formatted nroff in standard input (STDIN) and outputs the HTML to standard output (STDOUT). The formatted nroff output is surrounded with <PRE> tags with the following exceptions/additions: * Section heads are wrapped in HTML header tags. See Section Head Map File for more information. This feature can be turned off with the -noheads command-line option. * Overstriken words designated with the "<char><backspace><char>" sequences are wrapped in <STRONG> tags. * Overstriken words designated with the "_<backspace><char>" sequences (ie. underlined words) are wrapped in <EM> tags. man2html also does the following: * Merges the multi-page formatted nroff into a single page. See Usage for information on how to tell man2html the page size and margin width/heights of the formatted nroff. Depagination can be turned off with the -nodepage command-line option. * Creates links to other manpages if the -cgiurl command-line option is specified. By default, man2html does not put a title, <TITLE>, in the HTML file. However, one can specify a title via the -title command-line option. ... _________________________________________________________________ Linking to Other Manpages man2html allows the ability to link to other manpages referenced. If the -cgiurl option is specified, man2html will create anchors that link to other manpages. The URL entered with the -cgiurl option is actually a template that determines the actual URL used to link to other manpages. The following variables are defined during run time that may be used in the template string: * $title : The title of the manual page referenced. * $section: The section number of the manual page referenced. * $subsection: The subsection of the manual page referenced. Any other text in the template is preserved "as is". Caution: man2html evaluates the template string as a Perl expression. Therefore, one might need to surround the variable names with '{}' (eg. ${title}) so man2html properly recognizes the variable. Note: If a CGI program calling man2html is actuall a shell script or a Perl program, make sure to properly escape the '$' character in the URL template to avoid variable interpolation by the CGI program. Normally, the URL calls a CGI program (hence the option name), but the URL can easily link to statically converted documents. EXAMPLE1 The following template string is specified to call a CGI program to retrieve the appropriate manpage linked to: man.cgi?$section$subsection+$title If the ls(1) manpage is referenced in the 'SEE ALSO' section, the above template will translate to the following URL: man.cgi?1+ls The actual HTML markup will look like the following: <A HREF="man.cgi?1+ls">ls(1)</A> EXAMPLE2 The following template string is specified to retrieve pre-converted manpages: http://foo.org/man$section/$title.$section$subsection.html If the mount(1M) manpage is referenced, the above template will translate to the following URL: http://foo.org/man1/mount.1M.html The actual HTML markup will look like the following: <A HREF="http://foo.org/man1/mount.1M.html">mount(1M)</A> _________________________________________________________________ -- Earl Hood | CONVEX Computer Corporation [email protected] | 3000 Waterview Parkway Phone: (214) 497-4387 | P.O. Box 833851 FAX: (214) 497-4500 | Richardson, TX 75083-3851