文字化けと対策

Fight Mojibake!!!
(これからも── Mojibake と戦い続ける)

「文字化け」しているウェブサイトは、最近では見なくなりました(と思いたい)。

大昔──、まだ人類が石のヤリでマンモスと戦っていたころは、何度も何度もウェブ・ブラウザの「文字コード」を手動で変更していましたよね。何もかもが懐かしい──。

石のヤリ:
Internet Explosion ──もとい Internet Explore 6
マンモス:
Yahoo!ジオシティーズ

──いや、両方とも世間では健在ですけれど。

ウェブ上の文章が異常な状態で表示される原因は、おもに「文字コード」の問題です。ソフトウエアと人間の両方が成長することで、じょじょに改善されているけれど──。

文字化け - Wikipedia

Unicode 版「美乳テーブル」

ところが、まだまだ文字は化ける!

そこで、UTF-8 時代の「おまじない」として、次のページで面白いアイデアを紹介しています。

Unicode 版美乳テーブルを探せ

これをちょっとだけ改変して、利用してみました。

「郵便太郎」は お出かけ中?

上のページで提案されている「?」という文字は、正式名称を顔郵便マークと言います。愛らしくて良いですね。

ところが──、フォントによっては表示されません

具体的には、各種 IPA モナーフォント(←よりによってジオシティーズのページ)では「・」に なってしまう。上の行でも、見られない人がいるのでは?

文字化け対策の文字が化けていたら、本末転倒です。

上のページから好きな UTF-8 固有のバイトシーケンスを含む文字を選べば、効果は同じはず。別の文字にしたほうが無難ですね。

名前が「堀」さんなら、話は簡単だ!

自分は、「†」を選びました。ATOK では「ダガー」の変換で すぐに出てきます。

日本語が表示できるフォントであれば、ほぼ確実に表示される(と思う)ため、「†」は おすすめですよ!

実際に使ってみる

HTML5 で使う場合は、下の位置が適切です。

<!doctype html>
<html lang="ja">
  <head>
    <meta charset="utf-8" />
    <!--  This site is Japanese only.  -->
    <title>ゆうすけのホームページへようこそ!</title>
  </head>
  <body>
    <p>1999/03/02から[000000135]人のお客様が訪れました(^^)</p>
  </body>
</html>

これは HTML 4.x でも XHTML 1.x でも同じことで、メタタグで文字コードを指定した直後コメントで書くと良いでしょう。

ついでに言うと、文字コードの指定は、なるべく早い段階ですると良いです。上に示したコードのように <head> の次がベストですね。

自分が運用しているミニブログでも、こっそりとコードの中に仕込んでいます。

Ciao! I am a harsh thug.

プログラムを書く時にも、簡単に応用できますね!

#! p:/YUUSUKE/benkyou/puroguramu/perl/
# 

# 「変数」に 1 を「代入」する!
$hensuu = 1;

おわりに

長々と書いてきてアレですが、指定した文字コードで書いた (X)HTML が文字化けするなら、それはブラウザの問題だ! 窓から捨てろ! ──と言いたくなります。

ただ、テキストエディタなどで編集する場合は、「ソース・コードから自動的に文字コードを認識」するとは限りません。自分が惚れ込んでいる Xyzzy でも、けっこう化ける。

今回の情報は、どちらかと言えば「エディタで編集する際に文字化けしない方法」と言えます。

Xyzzy の文字化けを対策する方法は ほかにもあるけれど、今回の「ピューと書く! ダガー法」は、手軽で良いと思います。

[2] このページの一番上へ戻る