man2html

マニュアルページを整形して html にする

man2html - マニュアルページを整形して html にする
man2html [options] [file]
man2htmlfile として指定されたファイル (ファイル引き数がなかったり、 - が指定され た場合は標準入力) を変換して、 man スタイルの nroff から html を生成し、 結果を標準出力に表示します。 tbl はサポートしていますが eqn はしていま せん。返り値は常に 0 です。なにか問題が起こった場合は、エラーページが 標準出力に表示されます。
これはスタンドアローンのユーティリティとしても使えますが、主な目的は、 ユーザーが man ページを lynx (1), xmosaic (1), netscape (1) などの html ブラウザを用いて見ることができるようにするための補助をする ことです。 (See for info on how to browse man pages via Usually it would suffice to put MANHTMLPAGER=/usr/bin/lynx in the environment.)
man2html の主要部は Richard Verhoeven (rcb5@win.tue.nl) によって書かれた troff-to-html エンジンです。これは以下のような形式のハイパーリンクを付 加します。 l l. 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 <string.h> file:/usr/include/string.h (最初のリンクはオプションによって変更できます - 以下の記述を参照のこと) リンク先の確認は行われず、リンク先が存在していなくてもリンク行が生成 されます。文書内部での、セクションなどへのハイパーリンクも生成されます。 したがって bash (1) などの大きなマン・ページで必要な部分を探すのが楽になります。
ます。 -D オプションを用いれば、スクリプトからワーキングディレクトリ を指定することができます。
-D pathname
pathname の最後の二つ分を取り除き、変換を行う前にそこに chdir(dir) します。 -E オプションを用いると cgi スクリプトから簡単にエラーメッセージを生 成することができます。
-E string
与えられたエラーメッセージを含むエラーページを出力します。 参照先がマン・ページであるハイパーリンク、一般に以下のような形式で生成 されます。 <method:cgipath><man2htmlpath><separator><manpage> デフォルトは上の通りですが、ハイパーリンクの各部は各種オプション を用いることでいろいろ設定できます。
-h
method:cgipath を http://localhost にします。デフォルトです。
-H host[.domain][:port]
method:cgipath を htttp:// host.domain:port に設定します。
-l
method:cgipath を lynxcgi: /home/httpd に設定します。
-L dir
method:cgipath を lynxcgi: dir に設定します。
-M man2htmlpath
man2htmlpath を設定します。デフォルトは /cgi-bin/man/man2html です。
-p
セパレーターを '/' に設定します。
-q
セパレーターを '?' に設定します。デフォルトです。 httpd が稼動していないマシンでは、 lynx で lynxcgi を用いればマン・ページを閲覧することができます。 http デーモンが稼動している場合は、 lynx でも他のブラウザでも閲覧でき ます。オプション -l (`lynxcgi' の意味) は前者を選択します。これを指定 すると、デフォルトの cgipath は /home/httpd/ になります。
一般には cgi スクリプトは <path_to_script>/<more_path>?<query> のようなかたちで呼ぶことができます。 環境変数 PATH_INFO と QUERY_STRING がそれぞれ <more_path> と <query> に設定されます。 lynxcgi は PATH_INFO 部分を扱うことができないので、デ フォルトでは `?' をセパレーターとするハイパーリンクを生成することにし ました。オプション `-p' (`path' の意味) は '/' をセパレーターにします。 一方 `-q' (`query' の意味) は '?' をセパレーターにします。
オプション -H host は (localhost の代わりに) 用いるホスト を指定します。環境変数 SERVER_NAME が設定されていれば、 cgi スクリプ トから man2html -H $SERVER_NAME のように用いることができます。これによって、お使いのマシンを、マン・ペー ジを提供するサーバーのように動作させることができます。
多くの発見的手法 (heuristic) が用いられています。出力は常に完全である とは限りません。 lynxcgi は、これをサポートするように選択して lynx を コンパイルしなければ動作しません。セキュリティ上の問題があるかもしれま せん。
lynx (1), man (1)