kubotaの日記: ロケール自動判別 - lv編 1
まあとりあえず今のところ、落としどころとしてはこのへんで妥協するのがよかろうとも思ってますが。まだこれ以外にも課題は山積してるんだし。
というわけで、次の課題。
ja_JP.UTF-8 ロケールで作業していて気付くことは、lv がロケール自動判別ではないということ。これは何とかしないと。「日本人は正しい国際化と思ってるけど、じつは日本人にしか使えない国際化」の一例になってしまう。英文マニュアルまで用意されていて、脱「日本ローカル」路線を行く lv がこれではちょっと。
出力エンコーディングをロケール自動判別がデフォルトになるように変更してみた。たしかにうまく動くが、こんどは入力エンコーディングの自動判別も新しく書き起こさないといけないかも。かなり CJK にえこひいきした構成となっているっぽいので、ロケール情報も参考にすることで、もっと汎用的なものにできないだろうか。emacs の language environment みたいに、言語ごとに、エンコーディング候補の優先順位を変えてみたりとか。
しかしここでも、一番の問題は実装ではなくて開発者とのネゴシエーションにあるものと予想しています。nl_langinfo() または setlocale(LC_CTYPE,NULL) とかを使った、美しくない実装をするしかないだろうから。あと、MS-DOS でもコンパイルできるようにしておく必要があるっぽいのをどうするか。
なお、ほかにも groff を UTF-8 ready にするなどの課題があるけど (groff がなぜ重要かというと、マニュアルページの表示に使うから)、こっちは鵜飼さんにおまかせします。ぼくには難しすぎ。
lv と ja_JP.UTF-8 (スコア:2, 興味深い)