Emacs と半角カナ

生 Emacs 21 で半角カナの入ったファイルを開いたら文字化けというかまともにマルチバイト文字が解釈されてなくてどうしようもなくなってしまう、という現象が起きていたのだが、これが解決した。

/* 生。というのは XEmacs の場合は問題なく読み書きできたから。Mule や Meadow も試していないがきっとそうだろう。 */

要するに文字コードを Emacs に自動判別させずに指定してやればよかった。問題の現象は sjis で半角カナを入れた場合には発生せず、euc-jp の「半角カナ」のときだけ発生し、また terminal に依存しないことから Emacs のコードの解釈の問題だとは早いうちに当たりがついていたんだけど、面倒だったのと、あまり直接的な回答が見当たらなかったので伸ばし伸ばしになっていた。

結論から言うと

  • 編集対象ファイルの中で Emacs に対し文字コードを指定する際の細かいルールが分かっていなかった。
  • 拡張子ごとに文字コードを設定することができるはずだと思ってはいたが、具体的にどういう設定方法になるのか分かっていなかった。

の2点が問題だった。今回、どちらも解決した。

  • -*- 方式は2行目に書いても有効にならなかった。1行目に書いたらちゃんと動作した。
  • 拡張子ごとの設定は (modify-coding-system-alist 'file "ファイル名のパターン" 'コード) で ok だった。

More