mule-ja
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[mule-ja:29] .el file & utf-8


From: Katsumi Yamaoka
Subject: [mule-ja:29] .el file & utf-8
Date: Wed, 19 Jun 2013 08:37:37 +0900
User-agent: Gnus/5.130008 (真 Gnus v0.8) Emacs/24.3.50 (i686-pc-cygwin)

こんにちは山岡です。

Nemacs や Mule で培った文化がひとつ消えていくのでしょうか。
Wanderlust のリストでも話題が上がっていますが、先端の Emacs では
.el ファイルの coding-system が utf-8 に決め打ちされます。

--8<---------------cut here---------------start------------->8---
% bzr diff -r 112924..112925 lisp/international/mule-conf.el
=== modified file 'lisp/international/mule-conf.el'
--- lisp/international/mule-conf.el     2013-01-01 09:11:05 +0000
+++ lisp/international/mule-conf.el     2013-06-11 12:51:18 +0000
@@ -1508,6 +1508,7 @@
 (setq file-coding-system-alist
       (mapcar (lambda (arg) (cons (purecopy (car arg)) (cdr arg)))
       '(("\\.elc\\'" . utf-8-emacs)
+       ("\\.el\\'" . utf-8)
        ("\\.utf\\(-8\\)?\\'" . utf-8)
        ("\\.xml\\'" . xml-find-file-coding-system)
        ;; We use raw-text for reading loaddefs.el so that if it
--8<---------------cut here---------------end--------------->8---

これは編集するために find-file するときだけでなく、byte-compile
などの場合も適用されるので、例えば format の第1引数が iso-2022-jp
のカタカナであると、%\"%$%&%(%* のようなものと認識されてもう大変。
もちろんファイルの冒頭に -*- coding: iso-2022-jp -*- のようなも
の [1] があれば解決するのですが、古いプログラムがそれだけの理由
で淘汰されてしまうかもしれません。

試しに file-coding-system-alist から ("\\.el\\'" . utf-8) の項を
取り除くと、少なくとも日本語環境では euc-jp、junet、sjis、utf-8
を自動認識する機能が (まだ?) 活きていることがわかります。まさに
その自動認識とデコードに要する時間を節約することが決め打ちにした
理由で、そんな旧弊を引き摺る意義は無いと判断されたのでしょう。

個人的には Emacs や新しいパッケージだけ .dir-locals.el で utf-8
決め打ちをすれば十分ではなかったかと思います。


[1] ファイルの末尾に置く Local Variables 欄で指定しても、少なく
    とも XEmacs 21.4 は認識しません。



reply via email to

[Prev in Thread] Current Thread [Next in Thread]