[mew-dist 24618] Check jisx0213 (was: mew-ask-charset)

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2004年 2月 20日 (金) 16:14:42 JST


全然 mew-ask-charset の話ではないのですが、別解ということで。

From: SHIBATA Akira <shiba at example.com> さん曰く
Subject: [mew-dist 24617] mew-ask-charset
Message-ID: <20040220.132138.34012309.shiba at example.com>
Date: Fri, 20 Feb 2004 13:21:38 +0900 (JST)

> 会社でcharset=iso-2022-jp-3なメールを送りつけて,周りから文字化
> けしていると苦情を言われてしまったので,送る前にチェックする方法
> はないものか

ぼくも wnn の辞書に x0213 を追加してから、たまにやりそうになった
ことがありましたので、こんなことをやっています。

(when (and (mew-coding-system-p 'iso-2022-jp-3)
	   (mew-coding-system-p 'iso-2022-jp-3-strict)
	   (mew-coding-system-p 'iso-2022-jp-3-compatible))
  (defvar mew-default-jp-3 'iso-2022-jp-3-compatible)

  (defadvice mew-cs-encode-region (before select-jp-3 activate)
    (when (and (memq this-command
		     '(mew-draft-make-message mew-draft-send-message))
	       (eq cs 'iso-2022-jp-3))
      (ding)
      (message "[default:%s] (I)so-2022-jp-3, (S)trict, (C)ompatible"
	       mew-default-jp-3)
      (let ((c (read-char)))
	(cond
	 ((= c ?i) (setq cs 'iso-2022-jp-3))
	 ((= c ?s) (setq cs 'iso-2022-jp-3-strict))
	 ((= c ?c) (setq cs 'iso-2022-jp-3-compatible))
	 (t (setq cs mew-default-jp-3))))
      (message "select %s" cs) (sit-for 1)))
  )

そうすると、

(1) x0213 な文字が含まれていたら、質問されるのですぐ気付く。
(2) iso-2022-jp-3 の 三種類の符号化方式を使い分けられる。

ことができます。もともとは (2) のために作ったので、(1) の機能は
おまけです。(C-g 以外抜けられないし)

-compatible, -strict ってなに? という方は川幡さんのページを見て
ください。
 
http://www.m17n.org/m17n2000_all_but_registration/proceedings/kawabata/jisx0213.html

jp-3 を使いたいのだけど読めない人がいる ML とかだと、-strict と
か -compatible を使うこともあります。Mew の default の
iso-2022-jp-3 だとまったく読めなくなっちゃいますから。

-- 
白井秀行@とかいうのを Wiki に書くの?
          けど、これじゃ濃すぎるなぁ。



Mew-dist メーリングリストの案内