[mew-dist 28410] mew-defface() (Was: Re: Re: メールヘッダの配色)

Takashi Masuda ( 増田貴士 ) masutaka at example.com
2008年 5月 14日 (水) 00:22:07 JST


増田です。

今回 mew-defface() が新規に作られていますが、このマクロは指定した
color を :foreground にセットしますよね? :background に対応して頂くこ
とはできますか?

◎背景
 メール本文の自分の名前に (:background "lemon chiffon") の色を付ける設
 定をしていた。→添付の「6.0.50 までの私の設定」

 cvs update したところ、mew-face-spec-set() がないとのエラーが発生した。
 単に custom-set-faces() に変更すれば良いことが分かったが、
 mew-defface() が出来たのでそちらを使うようにしてみた。
 →添付の「6.0.51 で試した設定」

 しかし、:forground に "lemon chiffon" がセットされてしまった..。
 どうやら mew-defface() は :background には色を設定できないみたい。


もしくは上記設定をユーザが簡単に設定できるというのはどうでしょうか?
少なくとも私のまわりでは需要がありそうです。(^^;

あと、body-url は今までどおり bold のほうがしっくりくるのですが、
いかがでしょう..? まあ、個人の設定で変えれば済む話なんですが。

よろしくお願いします。

--
Takashi Masuda <masutaka at example.com>
-------------- next part --------------
;; 「自分の名前」を定義
(defconst mew-my-name-regexp
  (concat
   "\\(増田\\|貴士\\|ますだ\\|ますたか\\|たかし\\|"
   "マスダ\\|マスタカ\\|タカシ\\|masuda\\)"))
(defvar mew-my-name-face-list
  '((((class color) (type tty)) (:bold t))
    (((class color) (background light)) (:background "lemon chiffon"))
    (((class color) (background dark))  (:background "gold"))
    (t (:bold t))))
(defface mew-my-name-face mew-my-name-face-list
  "自分の名前"
  :group 'mew-highlight)
(defvar mew-my-name-face 'mew-my-name-face)
(mew-face-spec-set 'mew-my-name-face mew-my-name-face-list)

(defadvice mew-highlight-body-region
  (after mew-highlight-body-region-my-favorite
	 (BEG END &optional draft rehighlight) activate)
  "「自分の名前」を強調表示"
  (dolist (cell (list (cons mew-my-name-regexp 'mew-my-name-face)))
    (if cell
	(save-excursion
	  (mew-elet
	   (goto-char BEG)
	   (while (and (<= (point) END) (re-search-forward (car cell) END t))
	     (put-text-property
	      (match-beginning 0) (match-end 0) 'face (cdr cell))))))))
-------------- next part --------------
;; 「自分の名前」を定義
(defconst mew-my-name-regexp
  (concat
   "\\(増田\\|貴士\\|ますだ\\|ますたか\\|たかし\\|"
   "マスダ\\|マスタカ\\|タカシ\\|masuda\\)"))
(mew-defface my-name
  "自分の名前"
  :tty "red" :light "lemon chiffon" :dark "gold")

(defadvice mew-highlight-body-region
  (after mew-highlight-body-region-my-favorite
	 (BEG END &optional draft rehighlight) activate)
  "「自分の名前」を強調表示"
  (dolist (cell (list (cons mew-my-name-regexp 'mew-face-my-name)))
    (if cell
	(save-excursion
	  (mew-elet
	   (goto-char BEG)
	   (while (and (<= (point) END) (re-search-forward (car cell) END t))
	     (put-text-property
	      (match-beginning 0) (match-end 0) 'face (cdr cell))))))))


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