[JM:00166] Re: [POST:DP] man man.1

Back to archive index

R4000 2.2 tati****@kc5*****
2011年 3月 10日 (木) 00:39:48 JST


こんばんは、立花@鎌ヶ谷市です。

In <20110****@kc5*****>,
 at Date: Wed, 09 Mar 2011 21:04:07 +0900 (JST),
  on Subject: [JM:00164] Re: [POST:DP] man man.1 ,
   "R4000 2.2" <tati****@kc5*****> writes:

| ソースを見ると、標準出力が tty であれば BROWSER ないし -B オプションで
| 指定されたコマンドを、tty でなければ HTMLPAGER ないし -H オプションで
| 指定したコマンドに HTMLファイルを処理させているようです。
| # isatty(1) で判定
| コマンドのパス補完は行わずにそのまま system関数で起動しているので、
| フルパスで指定しないとうまくないのかもしれません。
| コマンドにHTMLファイルを処理させているだけなので、はっきりわかりませんが
| たぶん
| 「HTML ファイルを (整形された) テキストに変換する」
| ということだと思います。
| w3m だと、w3m -dump までを指定するとHTMLをテキストに変換するようです。

実験してみました。
gdb で少し追いかけてみると、HTMLファイルは MANPATH のどこかに
セクション1 のものならば html1 というディレクトリの下に
コマンド名.1.html というファイルを置かないとroffファイルとみなして
しまうので HTMLタグがそのままで表示されるようです。

test-page2.1.html というファイルを /usr/man/ja_JP.eucJP/html1 に置いて、
% ./man -B /usr/bin/w3m test-page2
% ./man -H "/usr/bin/w3m -dump" test-page2 | more
で w3m が整形した結果が表示されました。

test-page2.1.html というファイルを manコマンドと同じディレクトリに置いて、
% ./man -B /usr/bin/w3m ./test-page2.1.html
だと、HTMLタグがそのままで表示されました。

あれ、原文の

tati> .\"O .SH "HTML PAGES"
tati> .\"O Man will find HTML pages if they live in directories named as
tati> .\"O 'html' followed by a section extension.  The last file extension is
tati> .\"O expected to be ".html", thus a valid name for an HTML version of the
tati> .\"O .BR ls (1)
tati> .\"O man page would be
tati> .\"O .IR /usr/share/man/htmlman1/ls.1.html .
tati> .SH "HTML ページ"
tati> .B man
tati> コマンドはセクション拡張子の後に 'html' とつくファイルを、
tati> HTML ページとして見つける。
tati> ファイル名の拡張子の最後は ".html' が期待され、したがって
tati> .BR ls (1)
tati> の man ページのHTML版は
tati> .I /usr/share/man/htmlman1/ls.1.html
tati> である。

は

.I /usr/share/man/html1/ls.1.html
である。

の間違いのようですね。
これだけ configure の対象外で直書きされてました。

--
tati****@kc5*****				立花 晃@鎌ヶ谷市




linuxjm-discuss メーリングリストの案内
Back to archive index