[Mew-dist 400] メッセージが日本語か英語かで環境を分ける。

Mikio Nakajima gy2m-nkjm at example.com
1997年 1月 13日 (月) 17:51:03 JST


  こんばんは、中島です。

  メッセージが日本語か英語かで環境を分ける、ちゅうのはどうでしょう
か?

メッセージが英語なら発信前に ispell をかけておきたい、のが日本人の
人情でしょうし、かと言って日本語に一々 ispell がかかってしまうのは
うっとうしい。

~/.signature に

   中島幹夫 <gy2m-nkjm at example.com>

という署名を書いているけど、外人さん相手なら漢字は止めておきたい、
などなど...。

mew-charset-guess-region を使えば本文の charset を判定できますので、
Mew の内部の実装にもよりますけど、何なりと環境を分けることはできそ
うです。

とりあえず上記 2 つを作ってみましたので、お試し下さい。

中島幹夫 <gy2m-nkjm at example.com>

-------------- next part --------------
(setq mew-signature-file "~/.signature")
(make-local-variable 'mew-signature-file)

(defadvice mew-draft-insert-signature (before my-add activate)
  ;; 本文が英語なら mew-signature-file に ~/.signature.eng を代入する。
  ;; 本文が英語以外なら mew-signature-file に ~/.signature を代入する。
  ;; ~/.signature.eng に英語用の署名を書いておくこと。
  (save-match-data
    (let ((eng (string-match "\\.eng$" mew-signature-file)))
      (if (string= (mew-charset-guess-region mew-draft-buffer-header (point-max))
                   "us-ascii" )
          (if (not eng)
              (setq mew-signature-file (concat mew-signature-file ".eng")) )
        (if eng
            (setq mew-signature-file (substring mew-signature-file 0 -4)) )))))

(add-hook 'mew-send-hook
          (function
           (lambda ()
             (if (string=
                  (mew-charset-guess-region mew-draft-buffer-header (point-max))
                  "us-ascii" )
                 (ispell-message) ))))



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