[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:14194] Re: ja.po of lynx
むつみです。
>>>>> In [debian-devel : No.14193]
>>>>> Atsuhito Kohda <kohda@xxxxxxxxxxxxxxxxxxxx> wrote:
>> > 佐野@浜松です。
>> >
>> > 「文字列の中で改行」というのは実際に ja.po を眺めた時に
>> > そのとおりなんでしょうか。例えば vi などで表示させると
>> > 文字化けしたりしますか ?
>> 以前は問題なかったので gettext の問題、少なくとも
えーと すくなくとも 以下の現象を見る限り基本的には
今の gettext の問題ではありません。過去 問題があった
gettext で japo を処理したために ja.po が破戒されて
いたために、その破戒をしなくなり正常に処理されるように
修正された gettext では、過去に破戒された japo が
読めなくなった ということです。
gettext には 以前から一文が長いと多バイト文字の
途中であることを考慮せずに改行を入れて切ってしまう
(たとえば euc-jp の 1 バイト目と 2 バイト目の間に
改行を入れてしまう)というバグがあるのが知られていました。
ただ、このバグは編集時に意図的に改行を入れてやることで
回避できてしまうこと、さらに改行を入れられてしまっても
人間から見て読めなくなるだけで gettext 自体は正常な stream
として処理してしまう(しまっていた)ので、ja.po 自体が
こわれても (その後、編集をおこなわずにいるために)気がつかないで放置さ
れていることが ままあります。
で、今回 gettext 側で この改行の処理のハンドリングを
ちゃんと行うようになったため、逆に過去 多バイト文字の途中で
あやまって改行が入れられてしまった状態になっていた 今回の
lynx-cur の ja.po のようなものが処理できなくなった(処理しなくなった)
ということでしょう。
基本的には ja.po を修正するのが(今後のことも考えると)正しい対処
だろうと思います。
--
いしかわ むつみ
<ishikawa@xxxxxxxxxxx>, <ishikawa@debian.org>, <ishikawa@xxxxxxxxxx>