[g11n-ja-discuss] Re: iconv の変換

Takahiro Arai GEB02647 @ nifty.com
2007年 4月 14日 (土) 16:52:19 PDT


> >>>>>>> build 57 から tcsh が変わり、ロケールが ja
> >>>>>>>       
> >>>>>>>           
> >>>>>>>               
> >>>>>> だと日本語が通らなくなりました。 これは修正されるものでしょうか? しかし UTF-8
> >>>>>> は問題が無くなったようですね。
> >>>>>>
> >>>>>> デフォルトが utf-8 になったとか。
> >>>>>> dspmbyte を euc に明示的に指定するではだめでしょうか。
> >>>>>>     
> >>>>>>         
> >>>>>>             
> >>>>> だめだと思います。 dspmbyte は無効になっているのではないでしょうか。
> >>>>>
> >>>>>   
> >>>>>       
> >>>>>           
> >>>> なるほどと思って見てみると、すでにバグレポートが登録されてました。
> >>>>
> >>>>         
> >>
> http://bugs.opensolaris.org/view_bug.do?bug_id=6527485
> >>     
> >>>> build60 で直りそうです。
> >>>>     
> >>>>         
> >>> dspmbyte
> >>>       
> >>
> を使うようにしてもダメなようです。 ソースも見ましたが、直すにはかなり大変そうでした。 dspmbyte
> >> の対応はかなり削除されているように見受けられました。 wchar を使うと Solaris の
> wchar
> >> と相性が悪い事が行われていて問題を起こしています。 wchar
> >> の仕様的にはどうなのかわからないのですが、tcsh
> のやり方が強引なのかなという気がしたのですけれど。
> >>     
> >>>   
> >>>       
> >> 単純に shell のプロンプトで日本語入れるとそのまま通っているようですが、
> >> (前はここで文字化け) 具体的に問題点を教えてもらえると助かります...
> >>
> >> bash-3.00$ uname -a
> >> SunOS iwi 5.11 snv_61 i86pc i386 i86pc
> >> bash-3.00$ locale
> >> LANG=ja
> >> LC_CTYPE="ja"
> >> LC_NUMERIC="ja"
> >> LC_TIME="ja"
> >> LC_COLLATE="ja"
> >> LC_MONETARY="ja"
> >> LC_MESSAGES="ja"
> >> LC_ALL=ja
> >> bash-3.00$ あああ
> >> bash: あああ: command not found
> >> bash-3.00$ 漢字
> >> bash: 漢字: command not found
> >>
> >> /usr/lib/locale/ja/LC_MESSAGES/tcsh
> のメッセージファイルが壊れている
> >> のでちょっと rm した結果です。
> >>     
> >
> >
> > 表示はできるようになりましたが、編集は問題がありますよね。 例えば、バックスペースで1文字削除が
> 1byte だけ削除になるなど。
> >
> > プロンプトが bash になっていますが… これは tcsh で試されているのでしょうか? (^^;)
> >
> >   
> 
> bash のほうをコピーしてしまいました...
> 確かにバックスペースで1文字削除されますね。で今度は UTF-8 でも
> ここが動かなくなってしまってる。でソースをみるとおしゃるとお
> りで WIDE_STRINGS を disable にした 6527485 の変更で 8bit clean
> にはなったがマルチバイト文字の編集機能が動かなくなってしまった。
> sh.h をみると wchar_t の未使用ビットにアトリビュートを割り当てて
> いて、ちょうどここが Solaris の EUC WC とぶつかって ja locale で
> おかしくなってしまったようです。wchar_t の未使用ビットにアトリ
> ビュートを割り当てるのは将来的に不明なのでよろしくないのですが、
> とりあえず EUC WC とぶつからないように割り当てる送付のパッチと
> 6527485 の WIDE_STRINGS を disable
> にするパッチ(config_f.h.patch)
> を削除して、再び WIDE_STRINGS で使うことでとりあえず ja/PCK/UTF-8
> で動きました。ので、とりあえずこっちのパッチにしてもらおうかと思
> いますが、どうでしょうか。

日本語以外の他のロケールでもそれで問題がないのであればいいと思います。

/usr/lib/locale/ja/LC_MESSAGES/tcsh は古いバージョン用のままになっているのではないでしょうか?
 
 
This message posted from opensolaris.org


g11n-ja-discuss メーリングリストの案内