問題
以前書いた記事で、Emacsでバックスラッシュが入力できない問題に対処しましたが、文字コードの問題でファイルを開いた時に化けてしまいました。
Cocoa Emacsでは、通常Option + ¥では/を入力できません。
¥に対するキーアサインをいじって、/を入力するようにします。(define-key global-map [?¥] [?\\]) ;; ¥の代わりにバックスラッシュを入力する
(...)
上記コードをコピペしたときに意図通り動くかどうかは未確認です
念の為、円マークとバックスラッシュはEmacs以外のところでそれぞれ打ち込んでからyankしたほうが安全です。
[?¥]
の部分の文字コードの解釈がUTF-8以外のものと解釈してしてしまうことがあったりなかったりするようです。
行頭にcoding: utf-8
を書けばよいのですが、たかだか1文字のためにそれも面倒。
解決方法
こうしたらASCIIの範囲に収まって、化けて困ることがなくなりました。
(define-key global-map [165] [92]) ;; 165が¥(円マーク) , 92が\(バックスラッシュ)を表す
¥に限らず、UTF-8の範囲にある文字にキーをバインドする場合、C-x C-e
でキーコードを調べて置き換えるといいでしょう。