FreeBSDで日本語のマニュアルを読むには、ports/japanese/man でインストールされるjmanを使う。
のだが、そろそろ jman が使っている groff が古い(FreeBSD9に入っている英語のマニュアルが正しく清書できない)とか、UTF-8 の環境だと使いにくい(LANG=ja_JP.eucJP jman する必要がある)とか問題があるので、別の手段を検討する。
参考にしたのは、FreeBSD 9.0RELASEで日本語manを使う - akira_youの私見
当初、/usr/doc/ja_JP.eucJP/man/Makefile.inc を書き換えて、/usr/share/man/ja_JP.UTF-8 にutf-8のマニュアルソースを入れたりしてみたのだが、それだと ports/japanese/* 等でインストールされる /usr/local/man/ja が見られないので、結局マニュアルソースは今まで通り euc-jpでインストールして、manコマンドでのフォーマット時に utf-8 に変換することにした。
以下、試行錯誤の末の最終手順。

  1. ports/japanese/nkf をインストールする
  2. ports/textpfoc/groff をインストールする
    このとき、ports/textproc/groff/Makefileを修正して、依存関係の ghostscript8をghostscript9にしておく
  3. 日本語のマニュアルページをインストールする。
    ports/japanese/man-doc をインストールしても良いし、/usr/doc/ja_JP.eucJP/man でmake installしても良い
  4. man/ja から man/ja_JP.UTF-8 にシンボリックリンクを張る
    # ln -s /usr/share/man/ja /usr/share/man/ja_JP.UTF-8
    # ln -s /usr/local/man/ja /usr/local/man/ja_JP.UTF-8
    
  5. /usr/bin/man を /usr/local/bin/man にコピーする
  6. /usr/local/bin/man を編集する
PAGERは私の場合はlvを使っているが、jmanが入れるjlessでも良いと思う。
これで、/usr/local/bin/man を使えば日本語のマニュアルも見られるようになる。
日本語のマニュアルは内容が古かったりするので、そう言う時は man -oを使えば英語のマニュアルが読める。

2014/3/20追記
コメントで、ja.tmacの存在を教えてもらったので、ぐぐって見たところ、本家のgroffにどこかのバージョンから入ったもののようです。([Groff-commit] groff ChangeLog tmac/Makefile.sub tmac/ja.tmac)
試しにfindしてみたところ、/usr/local/share/groff/1.21/tmac/ja.tmac にありました。(portupgradeしたら1.22.2になった)
そこで、コメントで教えて頂いた通り、groffのオプションに -mja を追加してみたところ、綺麗に整形されるようになりました。

あと、この記事に書くのは相応しくないのですが、MovableTypeのCaptchaは確かに死ぬほど見づらいので、Movable TypeのCAPTCHA認証画像を見やすくする | miauler を参考に背景画像の明度を上げるのと、lineノイズを除去すると言うのをやってみました。
背景画像の画像ファイルを差し替えるのは面倒なのでやっていません。

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: FreeBSDで日本語マニュアル

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/3108

コメント(5)

satoumc :

いろいろ検討した上でのよい解決策だと思います。
FreeBSD10.0を入れたので早速真似させていただきました。

ところで普通にgroffで日本語を処理すると、行の折り返しが賢くありません。
私は以下のようにして使い始めました。

・Linux(Ubuntu)から/usr/share/groff/1.22.2/tmac/ja.tmac を借りてきて
FreeBSDの /usr/share/tmac/ にコピー。
・紹介していただいたmanのスクリプトの
NROFF='/usr/local/bin/groff -S -P-h -Wall -mtty-char -man'
TROFF='/usr/local/bin/groff -S -man'
のところにオプションを追加。
NROFF='/usr/local/bin/groff -S -P-h -Wall -mtty-char -man -mja'
TROFF='/usr/local/bin/groff -S -man -mja'

これで日本語マニュアルがもっと綺麗に見られます。
ちなみにUbuntuだと、環境変数 MANROFFOPT="-mja" と設定するだけです。
でも日本語マニュアルのコンテンツ充実度はFreeBSDの勝ちです。

-----------------------
あとCaptchaが難しすぎ。何回もやり直したよ。

false :

コメントありがとうございます。

確かに折り返しが変ですね。
ja.tmac、今度試してみます。

キャプチャは、自分でコメントするときはログインしてしまうので普段見ないのですが、今みたら確かに見にくいですね。MovableTypeの標準なんですが・・・。

false :

くぼさんから以下のコメントを頂きましたが、テンプレートのメンテナンスをサボっていたので投稿できない状態になっていました。

-----------------
groff の説明ありがとうございます。感謝して使わせて頂いております。

先日、紙が欲しくなり、探し回りましたが見付けられず、github に groff の日本語ps
についてまとめました。

https://github.com/obuk/using-grops

くぼ :

お手数をおかけしました。

まだ groff の出力に不満がありますが、TeX より軽く、好みに合います。
しかし、書く方は時間がかかります。少し慣れてみようと思いましたが、
すぐに諦め、pod を書いて pod2man と groff を通しています。

くぼ :

12月に groff 1.22.4 がリリースされたので、vbox に groff をインストール
してみました。すると man や patch でヘッダフッタが出なくなっていました。
mdoc マクロに起因するもののように見えますが、お分りになるでしょうか。

コメントする

このブログ記事について

このページは、falseが2014年1月 7日 10:24に書いたブログ記事です。

ひとつ前のブログ記事は「FreeBSD 9.2/amd64」です。

次のブログ記事は「asteriskの導入 (3)」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1