[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:03431] Re: Den8-viewer のカスタマイズについて



大橋さん、こんにちは。

        Sat, 30 Oct 1999 13:29:53 +0900 の
        [xyzzy:03430] Den8-viewer のカスタマイズについて
        への返事です.

|  1.画面を左右に分割する。
|  2.サマリーとビューの幅の比率を1:2にする。
|  3.サマリーのビューに表示する項目を、ステータスとタイトルのみにする。

とりあえず、こんなところでしょうか。

(defun pop-to-buffer (buffer &optional popup-windows vert-p)
  (if (eq buffer (selected-buffer))
      t
    (let ((w (get-buffer-window buffer (selected-window))))
      (if w
	  (set-window w)
	(let ((w (selected-window))
	      (nwindows (count-windows 'arg)))
	  (when (minibuffer-window-p w)
	    (other-window -1))
	  (when (and (= nwindows 1) popup-windows)
	    (split-window popup-windows vert-p)
	    (when (and (not (integerp popup-windows))
		       (minibuffer-window-p w))
	      (set-window w)
	      (other-window -1)))
	  (when (and (eq (selected-window) w)
		     (> nwindows 1))
	    (other-window 1)
	    (when (minibuffer-window-p (selected-window))
	      (other-window -2)))
	  (set-buffer buffer))))))

(setq *den8-summary-window-ratio* 1/3)

(defun den8-popup-summary-buffer ()
  (pop-to-buffer den8-summary-buffer
		 (truncate (* (screen-width) *den8-summary-window-ratio*))
		 t))

(defun den8-print-thread (l depth)
  (mapc #'(lambda (x)
	    (unless (and (zerop depth)
			 (den8msg-parent x))
	      (format t "~[ ~; ~;*~;R~;r~;w~;s~:;E~] ~4,'0D ~@[~V,1@T┗~]~A~%"
		      (den8msg-status x)
		      (den8msg-mailno x)
		      (unless (zerop depth) (+ 2 depth))
		      (den8msg-subject x))
	      (when (den8msg-child x)
		(den8-print-thread (den8msg-child x) (+ depth 1)))))
	l))

(defun den8-print-nothread (l)
  (mapc #'(lambda (x)
	    (format t "~[ ~; ~;*~;R~;r~;w~;s~:;E~] ~4,'0D ~A~%"
		    (den8msg-status x)
		    (den8msg-mailno x)
		    (den8msg-subject x)))
	l))

--
亀井哲弥(Tetsuya Kamei)
kamei@xxxxxxxxxxxx/JCA00343@xxxxxxxxxxx

Index Home