airheadの日記: memo: Font LinkingでFeed Demonの文字化け対策
Going My Way: 文字化けなしのRSS Reader「FeedDemon Beta」
をきっかけに、FeedDemon 1.0 RC1を試してみた。なるほどいい感じ。で、メニューなどの言語リソースファイルが英語しかないので、訳してみようと思った。でまあ、ざーっと1/4ほどやったところで気がついた。誰かやっとるだろう、と。教えてGoogle。oku's room Wiki: FeedDemonの日本語化でやってました。ははは。
で、そちらのWikiページでも指摘されているように、CDATAな部分を日本語に書き換えると文字化けする。Resource Hackerで本体を調べてみると、ダイアログなどにフォント"MS Sans Serif"が指定されており、ここで化けているようだ。本体を書き換えるのは怖いので、今回はFont Link機能で対処することにした。他の洋モノソフトでも同様のケースがあるかもしれないし、やっておいて損はないだろう。
Font Link機能とはWindows 2000から(?)追加された、"MS Sans Serif"のように日本語文字を持たないフォントに、他の日本語フォントを関連付ける機能。足りない文字だけ支持されたフォントで代替表示される。詳細はこちら、Windows 2000/XPのFont Link機能 (Font Linking)を参照。Windows 2000で実際に行った作業は次のとおり。
- regedit.exeを起動
- Font Link関連部分(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink)をREGファイルとして書き出す
- REGファイルを[編集]で開き、既に存在している「文字列(MS語。レジストリエントリを指す)」"Microsoft Sans Serif"を"MS Sans Serif"に書き換える
- REGファイルを[結合]し、Windowsを再起動する。再起動後、"MS Sans Serif"で日本語文字を表示させようとすると、その箇所だけ"MS UIゴシック"辺りで表示される
とやった結果、Feed Demonの化けてた箇所の問題は解消されました。めでたしめでたし...とかゴチャゴチャ書くほどのもんでもなくて、「Windows2000/XPを使ってるなら下のテキストをメモ帳かなんかで"fontlink.reg"とかいう名前で保存して、それをダブルクリックしたあとOS再起動」でいいはず。はずだけど、レジストリが絡むんで自己責任でね。
-- この下の行から --
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink]
"MS Sans Serif"=hex(7):4d,00,53,00,47,00,4f,00,54,00,48,00,49,00,43,00,\
2e,00,54,00,54,00,43,00,2c,00,4d,00,53,00,20,00,55,00,49,00,20,00,47,00,6f,\
00,74,00,68,00,69,00,63,00,00,00,53,00,69,00,6d,00,53,00,75,00,6e,00,2e,00,\
54,00,54,00,43,00,2c,00,53,00,69,00,6d,00,53,00,75,00,6e,00,00,00,67,00,75,\
00,6c,00,69,00,6d,00,2e,00,74,00,74,00,63,00,2c,00,67,00,75,00,6c,00,69,00,\
6d,00,00,00,6d,00,69,00,6e,00,67,00,6c,00,69,00,75,00,2e,00,74,00,74,00,63,\
00,2c,00,50,00,4d,00,69,00,6e,00,67,00,4c,00,69,00,55,00,00,00,00,00
-- この上の行まで --
(22:50 追記)めでたし...と思ったけど、ステータスバーとかブラウザ部のタブとかでまだ化けてるな。もうちょっと見直して書き直そう。
memo: Font LinkingでFeed Demonの文字化け対策 More ログイン