トップ «前の日記(2006-10-06) 最新 次の日記(2006-10-11)» 編集

2006-10-08 [長年日記]

_ Y! Widget Engine + UnixUtils で日本語を扱うには

※ UnixUtils というのは Windows 版でバンドルされている Unix コマンドのバイナリが入っているディレクトリ名のことです。今後、YWE*1 で利用できる Unix コマンドのことを UnixUtils と書くこととします。

調べたら日本語周りがやはり悩ましげ。JavaScript の部分は UTF-8 か UTF-16 でいいとして、UnixUtils の部分をどうするか。例えば Windows にバンドルされている gawk であれば locale に応じてそれなりによしなに日本語を扱ってくれるが、考えたら OSX 標準の awk は gawk じゃない。nawk かなんかだっけ。まぁどっちにしろ locale と一致しないエンコーディングはそのままじゃ扱えないわけで。何かしらエンコーディングを変換するツールが要るなぁというのが実際のところ。

Panther 以降は iconv が標準バンドルなので、Windows 用に gnuwin32 の iconv を Widget に含めてしまうことでなんとか対応できるかなって感じ。ただし iconv には自動判別の機能はないので、OOo みたいにファイルを開いて一部を目視で確認してもらって、このエンコーディングで OK なら次へ進む、という形にしないとダメっぽい。(Web から取得するんであればヘッダなり meta なりのエンコーディングを読み取ればいいんだけど。)

ところで iconv って半角カナの扱いはどうなってんだろ。

Tags: Ecmascript

*1 Yahoo! Widget Engine