ただこう設定すると、Browserが利用しているAdobe Flash Player(ver.9.x)で日本語が上手く表示されなくなり(恐らく、日本語が1バイト系文字として解釈されているような感じ)困っていました。
検索してみたところ、「聖アンドレアスの失敗」さんのページに、そのものズバリの解法が書いてありました。元ネタは「リンゴが好きでぃす♪」さんのページのようです。皆さん有り難うございます!
要は、
- Carbonアプリは言語設定情報を__CF_USER_TEXT_ENCODING環境変数から取得する
- ~/.CFUserTextEncodingファイルが存在する場合には、__CF_USER_TEXT_ENCODING環境変数の設定値にはその値が用いられる。
- 言語設定を変更すると、~/.CFUserTextEncodingファイル値が変更される。
__CF_USER_TEXT_ENCODING の正式なフォーマットは見つけられなかったのですが、どうも、UID:CFStringEncoding:RegionCode という形式になっているようです。RegionCodeの実体値は、deprecatedになっているけどScript Manager Referenceなどを見ることになるのかな?
今回の「Flashを日本語環境で使いたい」という要求を満たすためには、~/.CFUserTextEncodingへ1:14と書いておくのが良いみたいです。
% echo -n 1:14 > ~/.CFUserTextEncoding
最初の値は「kCFStringEncodingMacJapanese」で後者は「verJapan」を意味しているものと思われます。
Carbon周りの調査は、歴史が詰まっていて、面白くもあり、苦しくもあり (^^;
0 件のコメント:
コメントを投稿