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

Re: XEmacs 21.5-b6



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

有沢さん> w3m-ucs.el のバイトコンパイル時に、以下のようにエラーとなり
有沢さん> ました。実害はありませんが、XEmacs-21.5 だと w3m-ucs はバイ
有沢さん> トコンパイルの対象から外れた方が良いかもしれません。

ぅーん、何でだろう。ぼくの環境ではエラーにならないのですよ。配布
版の mule-ucs-1.04-pkg.tar.gz をインストールしてあるんですが。

それを調べるのは後回しにして、普段の生活で XEmacs 21.5 latest を
使えるようにする作業を行ないました。このメールに、ぼくの .emacs
ファイルに入っているコードを添付しますが、ここには有沢さんが教え
て下さったものと、今日 xemacs-patches と xemacs-beta で指摘した
いくつかの問題を、未修正の XEmacs でも解決できるようにするための
対策が含まれています。

1. Unicode のデコードで日本語を優先的に使う (有沢さん)。

2. std11-extract-address-components が動かない問題の対策。
   これを使わないと Wanderlust では致命的かもしれません。

3. "\\cj" などの正規表現が使えない、japanese-hiragana や
   japanese-katakana が動かない等の問題の対策。

4. 同じく japanese-hiragana が動かない問題の対策。Egg の
   fence-mode で M-k や M-h キーが使えるようになります。

5. load-path から Mule-UCS のディレクトリを削除。

6,7. ごみです。:-p

なお、これをお使いになる場合は、なるべく .emacs ファイルなどの先
頭に挿入して下さい。

(if (and (fboundp 'find-coding-system)
	 (find-coding-system 'utf-8))
    ;; XEmacs 21.5-b6 and later.
    (progn
      (when (featurep 'mule)
	;; Prefer Japanese characters in unicode conversions.
	(set-language-unicode-precedence-list '(japanese-jisx0208
						latin-jisx0201
						japanese-jisx0213-1
						japanese-jisx0213-2))
	;; 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 ?あ)
	  (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 use Mule-UCS.
      (setq load-path
	    (delq nil
		  (mapcar
		   (lambda (dir)
		     (if (not (string-match "/mule-ucs/?$" dir))
			 dir))
		   load-path)))
;6      ;; Don't show column/line numbers in the modeline.
;6      (setq column-number-mode nil
;6	    line-number-mode nil)
;6      (delq (rassq 'modeline-position-status
;6		   default-mode-line-format)
;6	    default-mode-line-format)
;7      ;; Bind [escape][escape] key to `eval-expression'.
;7      (setq buffer-quit-function
;7	    (lambda nil
;7	      (call-interactively 'eval-expression)))
      ))
-- 
Katsumi Yamaoka <yamaoka@jpl.org>
;; あれっ?、さっき xemacs-beta に出した記事が配信されないなあ。