Wanderlust での smtp-open-connection-function の切り換え。

Emacs から SSH をコキ使うを参考にして .emacs 群を変更中。

この文書に従って smtp-open-connection-function も変更。

無事、普段遣いの smtpd へ ssh + nc で接続できる事を確認した。しかし open-network-stream で通信したい smtpd も幾つかある。

それならばと Wanlderlust のテンプレート機能を使って、ドラフトバッファ内で smtp-open-connection-function へ open-ssh-stream-idea を代入してみた。だがそれでは効果がないようだ。

どうやら smtp.el に渡ってくるのはグローバル変数の方らしい。*1

汚い書き方と自覚しつつ、当面以下の対処で凌ぐ事にした。*2

(add-hook 'wl-mail-send-pre-hook
	  (lambda ()
	    (setq-default
	     ;; to global variable.
	     smtp-open-connection-function
	     ;; from buffer-local vaiable.
	     smtp-open-connection-function)))

*1:setq ではバッファローカル変数しか書き変わらない……よね ?

*2:各テンプレート内でバッファローカル変数 smtp-open-connection-function へ代入するようにしてある