[Mew-dist 13037] mew-offline.el (was: mew-{,real-}send-hook)
Shuichi KITAGUCHI ( 北口修一 )
kit at example.com
2000年 5月 21日 (日) 00:31:42 JST
北口です。
# なんとなく was: 化(^^;
> # 手紙を実際に送り、queue が空になったときにもフックが使えると
> # 良いのですが。
ちょうどそんな感じの作業をやっていました。queue が空になった時では
なくて、queue を空にする操作が終了した時(要は送信の操作が終了した時)
ですが。
添付のパッチでそうなります。
# mode-line の " Running" を変更したかったので、そのパッチも入っています。
で、こっちが本題ですが、Summary Mode で i した時に
接続->受信->送信->切断を実現するもの(β版)を、
ftp://ftp.Mew.org/pub/Mew/Win32/beta/mew-offline.el
ftp://ftp.Mew.org/pub/Mew/Win32/beta/rascon.el
に置いておきました。Win32 もしくは FreeBSD + ppp/pppctl で、興味が
あって、かつ勇気のある方はお試しください。なお改善要求等は大歓迎
ですが、対応は 1 週間単位で遅くなる可能性が高いと思われます。
# PPxP はうまく動いてくれなかったので、対応できていません。
ppp/pppctl で使う方法は、
1. ppp.conf に
set socket <port_no> <password> # 指定ポート番号での制御を受け付ける
set filter dial 0 deny 0/0 0/0 # auto-dial を無効化
を追加し、
# ppp -auto <config_name>
で起動して background で動かす。
2. ~/.emacs に、
(setq rascon-current-entry '("config_name" "0" ""))
(setq rascon-offline-ppp-port "<port_no>")
(setq rascon-offline-ppp-passwd "<password>")
を追加(config_name は ppp.conf 中の設定名を、port_no/password は
ppp.conf に記述したものと同じものを指定)。
こんな感じになると思います。ppp 自体の設定がちゃんとできているかは、
# pppctl -p <password> <port_no> dial
でチェックできると思います。
Win32 方面は、今まで ~/.emacs で mew-offline-*-p を setq していたものは、
mew-offline-use-* に変えてください、ぐらいで大丈夫だと信じています。
他の詳しい設定は、たいしたものではないので mew-offline.el を眺めてみて
ください。
# ドキュメントまでまだ手が回っていません。ごめんなさい。
最後に、まだβ版ということで仕様等は予告なく変更されることがあります、
ということにしておきますのでご注意ください。
--
Shuichi Kitaguchi <kit at example.com>
-------------- next part --------------
Index: mew-blvs.el
===================================================================
RCS file: /usr/local/cvsroot/mew/mew-blvs.el,v
retrieving revision 1.1.1.4
diff -u -r1.1.1.4 mew-blvs.el
--- mew-blvs.el 2000/05/19 16:08:12 1.1.1.4
+++ mew-blvs.el 2000/05/20 14:20:50
@@ -22,6 +22,7 @@
(defvar mew-summary-buffer-start-point nil)
(defvar mew-summary-buffer-process nil)
+(defvar mew-summary-buffer-process-status " Running")
(defvar mew-summary-buffer-string nil)
(defvar mew-summary-buffer-config nil)
(defvar mew-summary-buffer-begin nil)
Index: mew-env.el
===================================================================
RCS file: /usr/local/cvsroot/mew/mew-env.el,v
retrieving revision 1.1.1.4
diff -u -r1.1.1.4 mew-env.el
--- mew-env.el 2000/05/19 16:08:13 1.1.1.4
+++ mew-env.el 2000/05/20 14:18:33
@@ -209,7 +209,8 @@
;; tricky way to tell users that subprocess is running
(or (assq 'mew-summary-buffer-process minor-mode-alist)
- (setq minor-mode-alist (cons '(mew-summary-buffer-process " Running")
+ (setq minor-mode-alist (cons '(mew-summary-buffer-process
+ mew-summary-buffer-process-status)
minor-mode-alist)))
(defvar mew-connection-type1 nil
Index: mew-smtp.el
===================================================================
RCS file: /usr/local/cvsroot/mew/mew-smtp.el,v
retrieving revision 1.1.1.6
diff -u -r1.1.1.6 mew-smtp.el
--- mew-smtp.el 2000/05/19 16:08:14 1.1.1.6
+++ mew-smtp.el 2000/05/20 14:52:36
@@ -198,7 +198,8 @@
(if flushp
(progn
(message "Flushing %s ... " qfld)
- (mew-smtp-send-message)))))))
+ (mew-smtp-send-message))
+ (run-hooks 'mew-smtp-flush-hook))))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
@@ -259,7 +260,8 @@
(mew-smtp-set-error pnm nil)
(mew-smtp-set-lock pnm nil)
(if (processp sshpro) (delete-process sshpro))
- (mew-smtp-set-ssh-process pnm nil)))
+ (mew-smtp-set-ssh-process pnm nil)
+ (run-hooks 'mew-smtp-flush-hook)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
Mew-dist メーリングリストの案内