CarbonEmacs/日本語環境の設定

提供: MacWiki
移動: 案内検索

Mac OS X 版 Emacs(CarbonEmacs)の日本語環境の設定を解説します。

Mac OS X では、旧 Mac OS を受け継ぐ Shift-JIS 部分、UNIX のターミナルアプリケーションの EUC、ファイルシステムは Unicode というように、複数の日本語エンコーディング環境が入り交じっているので複雑です。

設定方法[編集]

準備[編集]

後述の「ファイル名の濁点・半濁点問題」のための対策として

から utf-8m.el ファイルをダウンロードします。

設定[編集]

次のように記述します。 なお、CarbonEmacsPackage では、この設定があらかじめ済ませてありますので .emacs.el で設定する必要はありません。

(set-language-environment 'Japanese)
(set-default-coding-systems 'euc-jp-unix)
(set-terminal-coding-system 'utf-8) ;; *1
(set-keyboard-coding-system
 (if (eq window-system 'mac) 'sjis-mac 'utf-8))
(set-clipboard-coding-system 'utf-8)
;;(set-file-name-coding-system 'utf-8)
(require 'utf-8m)
(set-file-name-coding-system 'utf-8m) ;; *2
    • 1 terminal-coding-system を euc-jp にしている方もいらっしゃいます。これは Terminal.app 側の設定次第です。
    • 2「ファイル名の濁点・半濁点問題」用の修正ファイルです


ファイル名の濁点・半濁点問題[編集]

Carbon Emacs の dired などでファイル名を扱う場合、 日本語の濁点・半濁点部分やハングル文字、アクセント記号付きのアルファベットが文字化けしてしまいます。これは Mac OS X の HFS+ ファイルシステムが Unicode の特殊な形式(NFD; Normalization Form D という方式)を使っているために生じる問題です。utf-8m は、ファイルを読み込んだ後にさらに文字を置き換えることで、文字化けの一部を解消するプログラムです。

ところで、utf-8m は逆に、NFD 形式の utf-8 コードをうまく書き出すことができません。NFD の utf-8 データを扱う場合は、却ってデータの一貫性が失われますので注意して下さい。広く使われている Unicode (utf-8) は、 Normalization Form C という形式で NFD とは別のものです。

参考ページ:[編集]