[mew-dist 22932] split horizon
Kazu Yamamoto ( 山本和彦 )
kazu at example.com
2003年 1月 20日 (月) 22:06:40 JST
主に許さんへ、
昔、Summary モードを縦に割って、両方で Message モードを表示させたいと
いう要望があったかと思いますが、実装してみました。
Summary モードで、SPC を押す前に、C-x3 で縦に割って下さい。
引用などでは、直感通りには動きません。そこまではやる気なし。メッセージ
を並べて読むのが目的だから。
--かず
Index: mew.el
===================================================================
RCS file: /cvsroot/mew/mew/mew.el,v
retrieving revision 1.165
diff -c -r1.165 mew.el
*** mew.el 2003/01/20 03:04:55 1.165
--- mew.el 2003/01/20 13:02:58
***************
*** 409,427 ****
;;; Message buffer
;;;
(defun mew-buffer-message ()
(let* ((me (selected-frame))
(frames (frame-list))
(len (length frames))
(i 0))
(catch 'loop
(while frames
! (if (equal me (car frames))
! (throw 'loop i))
! (setq i (1+ i))
! (setq frames (cdr frames))))
(setq i (- len i 1))
! (format "%s%d" mew-buffer-message i)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
--- 409,443 ----
;;; Message buffer
;;;
+ (defun mew-window-number ()
+ (let ((x (car (window-edges (selected-window))))
+ (wins (window-list))
+ (i 1)
+ win)
+ (while wins
+ (setq win (car wins))
+ (setq wins (cdr wins))
+ (when (save-excursion (window-buffer win) (mew-summary-p))
+ (if (> x (car (window-edges win)))
+ (setq i (1+ i)))))
+ i))
+
(defun mew-buffer-message ()
(let* ((me (selected-frame))
(frames (frame-list))
(len (length frames))
+ (n (mew-window-number))
(i 0))
(catch 'loop
(while frames
! (if (equal me (car frames))
! (throw 'loop i))
! (setq i (1+ i))
! (setq frames (cdr frames))))
(setq i (- len i 1))
! (if (= n 1)
! (format "%s%d" mew-buffer-message i)
! (format "%s%d<%d>" mew-buffer-message i n))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
Mew-dist メーリングリストの案内