トピックが長いよ(笑)
xyzzyの使い方がわからぬやし 励ましあえ その4 http://pc2.2ch.net/test/read.cgi/software/1073911622/
491さんの後半の要望ですね。釣られた?あぁ、釣られてやるよ(笑)
~/.kamailに以下を追加
;Extend SMTP Server
(setq *kamail-ext-smtp-server*
'(("foo@bar.net" "hoge.smtp.server")
("hogehoge@fuga.com" ("auth.server.name" nil "認証方法" "username" "password"))
))
("メアド" "SMTPサーバ")の組み合わせを記述する、と。
ISPのメアドの他に例えばYahooのメアドも持っているのなら、
(setq *kamail-ext-smtp-server*
'(("mail-address@ISP.co.jp" "ISP.smtp.server") ; ISPのメアド
("hogehoge@yahoo.co.jp" ("smtp.mail.yahoo.co.jp" nil "login" "username" "password")) ; Yahoo mail
))
こんな感じ?あとは、
--- kamail-send.l.orig 2003-01-26 06:05:12.000000000 +0900
+++ kamail-send.l 2004-03-22 17:21:46.062563200 +0900
@@ -146,6 +146,15 @@
(defun kamail-send-buffer-send (&optional batch)
(message "Sending message ...")
+ (when *kamail-ext-smtp-server*
+ (let* ((sender (progn
+ (goto-char (point-min))
+ (scan-buffer "^From:.+<\\([^>].+\\)>.*$" :no-dup t :case-fold nil :regexp t)
+ (buffer-substring (match-beginning 1) (match-end 1))))
+ (smtp-server (safe-cdr (assoc sender *kamail-ext-smtp-server* :test 'string=))))
+ (if (stringp (safe-car smtp-server))
+ (setq *kamail-smtp-server* (safe-car smtp-server))
+ (setq *kamail-smtp-server* smtp-server))
(multiple-value-bind (server port auth user pass realm)
(kamail-send-read-smtp-server batch)
(multiple-value-bind (flag return)
@@ -164,7 +173,7 @@
(progn
(kamail-smtp-quit)
(error "送信エラー: ~A" (or return "unknown"))))
- )))
+ )))))
(defvar *kamail-smtp-stream* nil)
こんな感じで
送信者のアドレスをかなり適当に拾ってるから危ないです。使うんならその辺りをもう少しきちんとした方がいいかも。でも手元では一応動いたからこれでいいや(^^;
KaMailがバージョンアップしたらもっと洗練されて追加機能として入るのかもしれないし、それまでの繋ぎと言うことで。
添付ファイルの方は……面倒そうだからいいや(笑)
追記。どうもキューの一括送信をすると上手く動かないっぽい……気が向いたら見直してみよう