[Mew-dist 15208] Re: b82 + patches

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2000年 11月 29日 (水) 15:55:01 JST


From: NINOMIYA Hideyuki <nin at example.com> さん曰く
Subject: [Mew-dist 15206] Re: b82 + patches
Message-ID: <20001129.152232.112616635.nin at example.com>
Date: Wed, 29 Nov 2000 15:23:17 +0900

にん> +folder <(C-cC-q)-(t)> ++folder 行き来してて思った事。。

にん> +folder で 'v'(mew-summary-toggle-disp-msg) して Summary only 表示に
にん> していて、't' で ++folder に移った時は ++folder も Sunnary only で
にん> 表示してくれると有難い。
にん> 逆に ++folder で 'v' で表示を切替えた場合に 'C-cC-q' して戻った時にも
にん> +folder の表示状態が ++folder と同じだと嬉しい。。

'C-cC-q' のときは出来ませんが、こんな感じかしら?

# 若干、すでに報告済のパッチを含みます。(_ _)

-- 
白井秀行 (mailto:shirai at example.com)

--- mew-thread.el.orig	Mon Nov 27 22:03:05 2000
+++ mew-thread.el	Wed Nov 29 15:51:13 2000
@@ -106,8 +106,11 @@
   (cond
    ((mew-virtual-p)
     (let ((msg (mew-summary-message-number))
-	  (fld (mew-summary-folder-name)))
+	  (fld (mew-summary-folder-name))
+	  (mew-summary-jump-message-then-display
+	   mew-summary-buffer-disp-msg))
       (mew-summary-goto-folder nil fld)
+      (setq mew-summary-buffer-disp-msg mew-summary-jump-message-then-display)
       (mew-summary-jump-message msg)))
    (arg
     (mew-summary-thread-region (region-beginning) (region-end)))
@@ -122,6 +125,8 @@
   (mew-summary-only
    (let* ((folder (mew-summary-folder-name 'ext))
 	  (vfolder (concat "+" folder))
+	  (mew-summary-jump-message-then-display
+	   mew-summary-buffer-disp-msg)
 	  (db (make-vector 211 0)) ;; prime 211 = 2 x 3 x 5 x 7 + 1
 	  top start me prnt prnt-cld my-id prnt-id func)
      (message "Making thread ... ")
@@ -139,12 +144,14 @@
 	   (if (not (looking-at mew-regex-thread))
 	       (forward-line)
 	     (setq my-id (mew-match 1))
+	     (if (string= my-id "")
+		 (setq my-id (make-temp-name "dummy")))
 	     (setq prnt-id (mew-match 2))
 	     (forward-line)
 	     (setq me (mew-thread-make-entry))
 	     (mew-thread-set-myid me my-id)
 	     (mew-thread-set-prntid me prnt-id)
-	     (mew-thread-set-line me (buffer-substring start (point)))
+	     (mew-thread-set-line me (mew-buffer-substring start (point)))
 	     (set (intern my-id db) me)
 	     (setq prnt (symbol-value (intern-soft prnt-id db)))
 	     (if (null prnt)
@@ -156,6 +163,7 @@
      (message "Making thread ... done")
      (message "Displaying thread ... ")
      (mew-summary-switch-to-folder vfolder)
+     (setq mew-summary-buffer-disp-msg mew-summary-jump-message-then-display)
      (mew-erase-buffer)
      (auto-show-mode 1)
      (setq mew-virtual-buffer-thread-top nil)
@@ -182,7 +190,6 @@
      (if mark (mew-mark-undo-marks (list mew-mark-review)))
      (set-buffer-modified-p nil)
      (if msg (mew-summary-jump-message msg))
-     (mew-summary-display nil)
      (message "Displaying thread ... done"))))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -237,13 +244,13 @@
 	(forward-char len))
       (setq regex (concat regex mew-thread-indent-string))
       (setq regex (regexp-quote regex))
-      (mew-summary-review-one)
+      (save-excursion (mew-summary-review-one))
       (forward-line)
       (catch 'loop
 	(while t
 	  (move-to-column column)
 	  (if (looking-at regex)
-	      (mew-summary-review-one)
+	      (save-excursion (mew-summary-review-one))
 	    (throw 'loop nil))
 	  (forward-line))))))
 



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