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

Re: gettext usage in perl (Re: [debian-devel:12672] Re: now debconf Japanized)



鍋谷です。

kgh12351@xxxxxxxxxxx (Taketoshi Sano) writes:

> 佐野@浜松です。
> 
> > liblocale-gettext-perl パッケージが使えます。
>(略)
> なるほど、これを使えば perl のスクリプトの中から gettext を
> 使って現在の locale に対応したメッセージを出力できるという
> わけですね。勉強になります。 _o_

私も昔、Perl script を gettextize するパッケージがどこかに
あるはずだ、とやっきになって探したことがあります。

> と、思ったら既に pppconfig は gettextize されてる、、、、
> 
> 誰か日本語のメッセージカタログ作って本当に表示できるかどうか
> 試してもらえませんか ? もしすぐに日本語 OK になるようだったら
> ついでに BTS に送ってもらえれば woody からは pppconfig でも
> 日本語表示になりますね。(potato-jp なら追加 OK か ?)

確認してみました。一項目だけ翻訳して試してみましたが、ちゃんと
動作しています。問題は、

o xgettext 時の警告は修正できるのでしょうか?
o 「Depends: liblocale-gettext-perl」が無いと裏ワザになりそう
o 私は PPP を使ったことがありませんので、全部翻訳するのはキツそう(^^;

というあたりでしょうか。

==================================================================
[PO の作成]

% apt-get source pppconfig
% cd pppconfig-2.0.5/
% xgettext pppconfig
警告: ファイル `pppconfig' の拡張子 `' は不明です、C として実行します
pppconfig:595: 警告: 終了していないリテラル文字列
pppconfig:596: 警告: 終了していない文字定数
pppconfig:604: 警告: 終了していないリテラル文字列
pppconfig:828: 警告: 終了していない文字定数
....
....

% cp messages.po ja.po

(ja.po を翻訳)

% cp ja.po /usr/share/locale/ja/LC_MESSAGES/pppconfig.mo
% msgfmt --output-file=ja.mo ja.po
% cp ja.mo /usr/share/locale/ja/LC_MESSAGES/pppconfig.mo

[テスト]

% env LC_ALL=C /usr/sbin/pppconfig 
You must be root to run this program.
% env LC_ALL=ja_JP.ujis /usr/sbin/pppconfig 
このプログラムを実行するにはルート権限が必要です。

-- 
大阪大学理学研究科物理学専攻 博士後期課程3年 大坪研究室
      鍋谷 栄展  <nabetani@xxxxxxxxxxxxxxxxxxxxxxxxxxx>