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

Re: XEmacs 21.5-b6



いい加減なことを書き散らかしたままではよろしくないので。^^;;

>>>>> In [emacs-w3m : No.03452]
>>>>>	Katsumi Yamaoka <yamaoka@jpl.org> wrote:

山岡> ;; 文字通り最新の XEmacs 21.5 がさきほど make し終わったんですが、
山岡> ;; process 周りが動かなくなってました。(ぁ〜ん ;_;)

w3m-rendering-half-dump を実行した結果、バッファの HTML ソースが
完璧に消えて無くなってしまうので process 周りが壊れていると思っ
たのですが、どうやらそうではなさそうです。まだよくわかりません。

有沢さん> ところで、coding-system の自動判定はちゃんと動いています?
有沢さん> 私のところでは、euc-japan のファイルを開くと raw-text となっ
有沢さん> てしまうのですが。

setup-japanese-environment-internal で使われている未定義の
coding-system を alias で作って

(set-language-environment "Japanese")

がちゃんと動くようにした結果、(coding-priority-list) の上位にあ
る iso-8-2 という category が euc-jp を指すようになったのですが
(21.5-b6 では euc-japan は euc-jp の alias で euc-jp が元)、なぜ
か euc-japan の自動判定はうまくいかないですね。それを言うなら
utf-8 もだめなんですが。

ともかく、何で XEmacs 21.5-b6 というものがリリースされたのか不思
議なくらいに、たぁーーくさんの問題がありそうです。よほど酔狂な人
以外は使わないのが無難でしょう。:-p

ところで、現在ぼくはその 21.5 latest で再び Mule-UCS を load し
て使っています。以下は .emacs に仕込んだ対策コードの改定版です。

(if (and (fboundp 'find-coding-system)
	 (find-coding-system 'utf-8))
    ;; XEmacs 21.5-b6 and later.
    (progn
      (when (featurep 'mule)
	;; Provide undefined coding-systems.
	(unless (find-coding-system 'japanese-shift-jis)
	  (define-coding-system-alias 'japanese-shift-jis 'shift_jis))
	(unless (find-coding-system 'japanese-iso-8bit)
	  (define-coding-system-alias 'japanese-iso-8bit 'euc-jp))
	;; Fit the charsets in unicode conversions to the language
	;; environment.
	(add-hook 'set-language-environment-hook
		  (lambda nil
		    (set-language-unicode-precedence-list (charset-list))))
	(set-language-environment "Japanese")
	;; Fix a bug in obsolete.el if it has not been fixed yet.
	(when (find-non-ascii-charset-string "ascii")
	  (defun find-non-ascii-charset-string (string)
	    (delq 'ascii (charsets-in-string string)))
	  (defun find-non-ascii-charset-region (start end)
	    (delq 'ascii (charsets-in-region start end))))
	;; Redefine Japanese category table.
	;;(unless (char-category-list (make-char 'japanese-jisx0208 36 34))
	(unless (char-category-list ?あ)
	  (modify-category-entry 'japanese-jisx0208 ?j nil t)
	  (loop for char in (string-to-list kinsoku-jis-bol)
	    do (modify-category-entry char ?s))
	  (loop for char in (string-to-list kinsoku-jis-eol)
	    do (modify-category-entry char ?e))
	  (modify-category-entry [japanese-jisx0208 33] ?S)
	  (modify-category-entry [japanese-jisx0208 34] ?S)
	  (modify-category-entry [japanese-jisx0208 40] ?S)
	  (modify-category-entry [japanese-jisx0208 35] ?A)
	  (modify-category-entry [japanese-jisx0208 36] ?H)
	  (modify-category-entry [japanese-jisx0208 37] ?K)
	  (modify-category-entry [japanese-jisx0208 38] ?G)
	  (modify-category-entry [japanese-jisx0208 39] ?Y)
	  (loop for row from 48 to 126
	    do (modify-category-entry `[japanese-jisx0208 ,row] ?C))
	  (loop for char in '(?ー ?゛ ?゜)
	    do (modify-category-entry char ?K)
	    (modify-category-entry char ?H))
	  (loop for char in '(?ヽ ?ヾ ?ゝ ?ゞ ?〃 ?仝 ?々 ?〆 ?〇)
	    do (modify-category-entry char ?C))
	  (modify-category-entry 'japanese-jisx0212 ?C))
	;; Fix a bug in japan-util.el if it has not been fixed yet.
	(eval-after-load "japan-util"
	  '(unless (eq (japanese-hiragana ?ア) ?あ)
	     (let ((l japanese-kana-table)
		   slot hiragana katakana jisx0201)
	       (while l
		 (setq slot (car l)
		       hiragana (car slot)
		       katakana (nth 1 slot)
		       jisx0201 (nth 2 slot)
		       l (cdr l))
		 (when (characterp katakana)
		   (put-char-code-property katakana
					   'hiragana hiragana)
		   (put-char-code-property katakana
					   'jisx0201 jisx0201)))))))
;;      ;; Don't show column/line numbers in the modeline.
;;      (setq column-number-mode nil
;;	    line-number-mode nil)
;;      (delq (rassq 'modeline-position-status
;;		   default-mode-line-format)
;;	    default-mode-line-format)
;;      ;; Bind [escape][escape] key to `eval-expression'.
;;      (setq buffer-quit-function
;;	    (lambda nil
;;	      (call-interactively 'eval-expression)))
      ))
-- 
Katsumi Yamaoka <yamaoka@jpl.org>
;; xemacs-beta や xemacs-patches で何も反応してもらえないので、
;; もうやめようか、と。:-p