<< コミティア70 | main | 鍋とDVDと三尺三寸箸と >>
UTF-8 にしてみたらチルダ直った!
Web(sb) | 2004-11-24 (Wed) 21:29
RSS/Atom 内の URL に含まれるチルダが文字化けしていた不具合ですが、ようやく解決しました。
結局、ブログ自体の文字コードを UTF-8 にしてしまうことで解決。
私が使っているブログツール sb は、デフォルト設定だと日本語を含むファイルを全て EUC コードで出力します(ただし RSS/Atom 配信ファイルは除く)。で、RSS/Atom に関しては、公式に推奨されているように UTF-8 コードで出力されます。どうやらその出力する過程でチルダが文字化けするらしい、というところまではわかっていたんです。
いや、実はそのときから「ブログ本体を UTF-8 出力にすれば解決するんだろうな~」とは思ってたんですけどね。変換作業が面倒そうだったので放置してました(コラ)。でも昨日のらーよさんのエントリで UTF-8 の文字を見かけたので、やってみっかーと重い腰を上げたわけでございます。らーよさんに感謝(笑)。
そして思ったとおり面倒だったんですよ変換作業……。sb のヘルプにも、運営途中で文字コードを変換するのはやめたほうがいいと書いてあるくらいで。
本体の変換作業はさくっとできるんですが、問題はログ。とりあえず何も考えないで data フォルダの中身のバックアップをとってから、FTP ソフトの文字コード変換機能でがつっと UTF-8 に一括変換して、上書き。これでうまくいったらすげえよなと思っていたらやっぱり無茶だったらしく、文字化けでえらいことになって慌てて戻す(笑) そんな無謀更新作業中に訪問してくださった方、いらっしゃったらごめんなさいね……。最終的には、最初から文字コードを UTF-8 に設定した sb をこことは別にもうひとつ設置してログを移行し、更にそこからデータを移植するという暴挙に出ました。
そのときに判明したのが、UTF-8 コードのファイルには BOM というものがくっついてることがあるらしい、ということ。私はこの sb の変換作業をするときに、エディタでも FTP でもこの「BOM」というやつをくっつけて保存してたらしいのです。よく見たらソフトにちゃんと設定があったよ。そんなん知るかよ。はっ、つい本音が。つーか EmEditor も NextFTP もデフォルトでくっつける設定になってるんだもんな……。
さてなんだか危険な匂いのするこの「BOM」、一応さらっとこのへんとかこのあたりとかを流し読みしてみましたが、なんだか私の花咲いてる頭では専門的なことはよくわからなかったので、とりあえず「うぇぶで UTF-8 を つかうときわ ぼむをつけない」と覚えておくことにします。
というわけで、頭を花畑にしながら挑んだ変換作業ですが、当初の目的であった RSS/Atom に含まれるチルダはきちんと表示されるようになったので思い残すことはありません。ちょっと気になるのは三点リード(…)が三点ピリオド(...)に見えたり、にょろり(~)が汚く見えたりするようになったこと(らーよさんの図書館台帳も UTF-8 になってからそう見えるようになった)。原因はなんとなく想像がつくようなつかないような。なんにせよ私の手に負えることではない気がするので追求はやめておきます……。