[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Tabla de Contenidos

man2html

Introduction

man2html can generate on the fly HTML pages from man documentation. This makes it a useful addition to asciidoc based notes. 1) One of the advantages it offers is that when man pages are converted to HTML they become navigable through hyperlinks. A similar script exists for info, info2www.

man2html can be used from the command line, for example, to read in lynx the html-formatted man page of grep:

$ zcat $(man --path 1 grep) | man2html -l | lynx -stdin

It is more useful, however, to setup a cgi-bin infrastructure which will allow the on the fly operation, see man2html(1).

http

This is the most versatile mode, as it works from any browser.

# mkdir /var/www/cgi-bin/man

# $EDITOR /etc/lynx.cfg

# NB: <TAB> must be a real tab.
TRUSTED_LYNXCGI:<TAB>/var/www/cgi-bin/man/

# $EDITOR /var/www/cgi-bin/man/man2html

#!/bin/bash
# $1 is the man section
# $2 is the command name
zcat "$(man --path $1 $2)" | /usr/bin/man2html

# chmod 0755 /var/www/cgi-bin/man/man2html

# /etc/rc.d/rc.httpd start

See asciidoc Mini HOWTO for how to use in an asciidoc file.

The steps are intended for localhost, or at most a LAN. cgi-bin may need some hardening for a public web server.

lynxcgi

This works only from lynx. Make sure lynx is compiled with enabled cgi-bin, the default for Slackware.

$ mkdir -p /home/httpd/cgi-bin/man

$ $EDITOR /etc/lynx.cfg

# NB: <TAB> must be a real tab.
TRUSTED_LYNXCGI:<TAB>/home/httpd/cgi-bin/man/

$ $EDITOR /home/httpd/cgi-bin/man/man2html

#!/bin/bash
# $1 is the man section
# $2 is the command name
zcat "$(man --path $1 $2)" | /usr/bin/man2html -l

$ chmod 0755 /home/httpd/cgi-bin/man/man2html

A link in an asciidoc file for grep will be:

lynxcgi:/home/httpd/cgi-bin/man/man2html?1+grep[grep(1)]

Sources

* Originally written by pdi * Contributions by markand

1)
The HTML from man2html is formatted differently from that of asciidoc, and a possible, but heavy-handed, solution might be the use of pandoc, available from Slackbuilds.org.
 es:howtos:software:man2html ()