[Mew-dist 15437] Re: b88
Shun-ichi TAHARA ( 田原 俊一 )
jado at example.com
2000年 12月 13日 (水) 17:06:36 JST
From: Kazu Yamamoto (山本和彦) <kazu at example.com>
Message-Id: <20001212.195709.74682059.kazu at example.com>
> b88 をリリースします。
> ftp://ftp.mew.org/pub/Mew/alpha/mew-1.95b88.tar.gz
オリジナル(fancyじゃない方)のスレッド表示ルーチンも、再帰しないように
してみました。ほんの少しだけ速くなったような気がします。
# XEmacsだと、insert がすごく遅いので、他は全部誤差みたいなものですが
結果、fancyな方も、さほど速度的に不利というわけではないようですので、
あとは見た目の好みで選んでください、って感じでしょうか。
_______________________________
田原 俊一 jado at example.com, shunichi_tahara at example.com
http://flowernet.gr.jp/jado/
FingerPrint: 16 9E 70 3B 05 86 5D 08 - B8 4C 47 3A E7 E9 8E D9
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
-------------- next part --------------
*** mew-thread.el.orig Tue Dec 12 19:44:07 2000
--- mew-thread.el Wed Dec 13 16:55:41 2000
*************** (defun mew-summary-thread-region (beg en
*** 332,339 ****
mew-virtual-buffer-thread-top folder
(mew-summary-scan-form folder 'column)))
(t
! (mew-summary-thread-print-loop
! mew-virtual-buffer-thread-top 0 folder
(mew-summary-scan-form folder 'column))))
(setq tm6 (current-time))
;;
--- 332,339 ----
mew-virtual-buffer-thread-top folder
(mew-summary-scan-form folder 'column)))
(t
! (mew-summary-thread-print
! mew-virtual-buffer-thread-top folder
(mew-summary-scan-form folder 'column))))
(setq tm6 (current-time))
;;
*************** (defun mew-summary-thread-region (beg en
*** 355,387 ****
;;; Visualizing thread
;;;
! (defun mew-summary-thread-print-loop (top level folder column)
! (while top
! (mew-summary-thread-print (car top) level folder column)
! (setq top (cdr top))))
!
! (defun mew-summary-thread-print (me level folder column)
! (let (cld)
! (mew-elet
! (insert (mew-thread-get-line me))
! (forward-line -1)
! (move-to-column column)
! (if (< level mew-thread-indent-array-size)
! (insert (aref mew-thread-indent-array level))
! (let* ((i 0)
! (max (1- mew-thread-indent-array-size)) ;; take care
! (lim (/ level max))
! (j (% level max)))
! (while (< i lim)
! (insert (aref mew-thread-indent-array max))
! (setq i (1+ i)))
! (insert (aref mew-thread-indent-array j))))
! (if (not (search-forward "\r" nil t))
! ()
! (insert " " folder " " (mew-thread-get-msg me)))
! (forward-line))
! (setq cld (mew-thread-get-child me))
! (if cld (mew-summary-thread-print-loop cld (1+ level) folder column))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
--- 355,394 ----
;;; Visualizing thread
;;;
! (defun mew-summary-thread-print (tree folder column)
! (let ((tree-stack nil)
! (level 0))
! (while tree
! (let* ((me (car tree))
! (cld (mew-thread-get-child me)))
! (mew-elet
! (insert (mew-thread-get-line me))
! (forward-line -1)
! (move-to-column column)
! (if (< level mew-thread-indent-array-size)
! (insert (aref mew-thread-indent-array level))
! (let* ((i 0)
! (max (1- mew-thread-indent-array-size)) ;; take care
! (lim (/ level max))
! (j (% level max)))
! (while (< i lim)
! (insert (aref mew-thread-indent-array max))
! (setq i (1+ i)))
! (insert (aref mew-thread-indent-array j))))
! (if (search-forward "\r" nil t)
! (insert " " folder " " (mew-thread-get-msg me)))
! (forward-line))
! (setq tree (cdr tree))
! (cond
! (cld
! (setq tree-stack (cons tree tree-stack))
! (setq tree cld)
! (setq level (1+ level)))
! (t
! (while (and (null tree) tree-stack)
! (setq tree (car tree-stack))
! (setq tree-stack (cdr tree-stack))
! (setq level (1- level)))))))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
Mew-dist メーリングリストの案内