[mew-dist 21777] Re: Mew 3.0.67

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2002年 9月 26日 (木) 10:58:05 JST


From: Kazu Yamamoto (山本和彦) <kazu at example.com> さん曰く
Subject: [mew-dist 21759] Mew 3.0.67
Message-ID: <20020924.213704.74177823.kazu at example.com>
Date: Tue, 24 Sep 2002 21:37:04 +0900 (JST)

> 遅くなって申し訳けありません。Mew 3.0.67 をリリースします。

> mew-mode-line-magic-number がなくなった点と、

確認も遅くなってごめんなさい。手持ちの Emacs を総動員して動作を
確認しました。ありがとうございます。

ただし、

From: Kan Sasaki <sasaki at example.com> さん曰く
Subject: [mew-dist 21673] Re: mew-summary-setup-mode-line
Message-ID: <20020911.150443.126779734.sasaki at example.com>
Date: Wed, 11 Sep 2002 15:04:43 +0900 (JST)

で佐々木さんが指摘していますが、そのうち Emacs-21.4 になるであろ
う CVS 上の Emacs-21.3.50 だと '%p' が mode-line-position という
変数に含まれるようになってます。

ちなみに、CVS 上の Emacs の bindings.el ではこんな感じになってい
ます。

  (setq-default mode-line-format
    (list
     (propertize "-" 'help-echo help-echo)
     'mode-line-mule-info
     'mode-line-modified
     'mode-line-frame-identification
     'mode-line-buffer-identification
     (propertize "   " 'help-echo help-echo)
     'mode-line-position
     '(vc-mode vc-mode)
     (propertize "   " 'help-echo help-echo)
    <<snip>>

  (setq-default mode-line-position
    `((-3 . ,(propertize "%p" 'help-echo help-echo))
      (line-number-mode 
       ((column-number-mode
	 (10 ,(propertize " (%l,%c)" 'help-echo help-echo))
	 (6 ,(propertize " L%l" 'help-echo help-echo))))
       ((column-number-mode
	 (5 ,(propertize " C%c" 'help-echo help-echo))))))))

mode-line-position 自体は去年の 10月から存在しているのでなくなる
ことはないと思います。また、mode-line-position の内容は何回か変
わっています。mode-line-position だと car に '%p' が含まれるとき
もあるので、それらを鑑みてこんな風↓にしてみました。

(defun mew-summary-setup-mode-line ()
  (let ((tgt mew-mode-line-target)
	target prev pos)
    (if (boundp 'mode-line-position)
	(progn
	  (make-local-variable 'mode-line-position)
	  (setq mode-line-position (copy-sequence (default-value 'mode-line-position)))
	  (setq prev mode-line-position))
      (setq mode-line-format (copy-sequence (default-value 'mode-line-format)))
      (setq prev mode-line-format))
    (setq target (or (rassoc tgt prev) (car (member tgt prev))))
    (when target
      (setq pos (- (length prev) (length (member target prev))))
      (setcar (nthcdr pos prev) mew-mode-line-format))
    (or (assq 'mew-summary-buffer-process mode-line-process)
	(setq mode-line-process
	      (cons '(mew-summary-buffer-process
		      mew-summary-buffer-process-status)
		    mode-line-process)))))

# なんで、mode-line-position が buffer-local では無いのかは不明。
# あと、バルーンヘルプは捨てています。

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



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