[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:54755] Re: 日本語 man ページのテキストファイル変換について



武藤@Debianぷろじぇくとです。

At Tue, 4 Jan 2011 03:32:48 +0900,
Shinichi Yamanaka wrote:
> 英語の man ページ(例えば ls)であれば
> 	$ man 1 ls | col -b > ls.1.txt
> で ls のマニュアルページをテキストファイルに変換できますが、この方法で日
> 本語のマニュアルページををテキストファイルに変換すると、文字が化けたり空
> 白になったりして、日本語に変換できません。
> 
> 以前にもこのような質問があったのかもしれないと思い、
> debian-users Mailing List Archive
> (http://lists.debian.or.jp/debian-users/) のスレッドで Suject を眺めたの
> ですが、それらしきものは確認できませんでした。
> (過去の ML のデータは取得できなくなったのでしょうか?)

fmlのget/mgetはサーバへの負荷が大きいため、使用できないようにしています。

> 日本語 man ページをテキストファイルに変換する方法についてご存知の方がお
> られましたら、アドバイスをお願いしたいと思います。

Postscript経由で抽出というのを考えておられたようですが、テキストでなんとか
するよりもはるかに面倒に思えます。
GUIなしの環境でなんとかしたいというのは、バッチで処理したいということで
しょうか。

たとえば、Emacsの M-x man で表示されるmanページは、そのバッファをテキストで
保存すれば、col -b同様にバックスペース強調文字は解除されるようです。
マクロをうまく書けばほぼ自動でできるでしょう。

HTMLでもよければman2htmlなどを経由して、テキスト化したいならさらにw3mに
通す、といったやり方もあるでしょう。

そのほかには(本来一番まっとうそうな方法として)、Debian Bug #552201
 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=552201
で提示している debdiff.charclass.patch CJK文字幅対応パッチを適用した
groffの環境では、(ワーニングはいっぱい出るものの) man 1 ls | col -b
も希望の動作になっています。Lennyや次期リリースバージョンのSqueezeには
このパッチは入りませんが、その次のリリースには適用される予定です。
-- 
武藤 健志@ kmuto @ kmuto.jp
           Debian/JPプロジェクト   (kmuto@debian.org, kmuto@debian.or.jp)
           株式会社トップスタジオ  (kmuto@xxxxxxxxxxxxxxx)
URI: http://kmuto.jp/ (Debianな話題など)