[mew-dist 28403] Re: メールヘッダの配色

Kuroishi Mitsuo / 黒石 光雄 kuroishi.mitsuo at example.com
2008年 5月 10日 (土) 20:20:53 JST


2008/5/10 山本和彦 Kazu Yamamoto <kazu at example.com>:
>
> - ~/.mew-theme.el よりも優先される、さらに簡単な設定方法
>
>  以下のように簡単に設定できるようになりました。
>
>        (mew-header-color "Subject:" "green" "yellow")
>
>  * フィールド名は単なる文字列です。正規表現は使えません。
>  * 二番目の引数がキー、三番目の引数が値の色にです。
>  * 背景が明るい/暗いときはこう、みないなことは書けません。

早速,使ってみました.設定がわかりやすくなってカスタマイズ
しやすいです.

ところで,

- 三番目の引数のがない場合は, key と valueが同じ色に設定される # perl 使いなので
- bold の対応

が良いと思ったので,改造してみました.冗長すぎるかもなので,洗練してもらい
たいですが,差分を記載します.ご検討お願いします.

-- 
Kuroishi Mitsuo


Index: mew-vars2.el
===================================================================
RCS file: /cvsmew/mew/mew-vars2.el,v
retrieving revision 1.179
diff -u -p -r1.179 mew-vars2.el
--- mew-vars2.el        10 May 2008 04:47:31 -0000      1.179
+++ mew-vars2.el        10 May 2008 11:08:04 -0000
@@ -605,7 +605,9 @@ present, mew-face-header-marginal is use
 (mew-defstruct header-color field key val)
 (defvar mew-header-color-alist nil)

-(defun mew-header-color (field key-color val-color)
+(defun mew-header-color (field key-color &optional val-color)
+  (unless val-color
+    (setq val-color key-color))
   (let ((face-key (intern (concat "mew-face-color-" key-color)))
        (face-val (intern (concat "mew-face-color-" val-color))))
     (unless (facep face-key)
@@ -617,6 +619,20 @@ present, mew-face-header-marginal is use
     (setq mew-header-color-alist
          (cons (list field face-key face-val) mew-header-color-alist))))

+(defun mew-header-color-with-bold (field key-color &optional val-color)
+  (unless val-color
+    (setq val-color key-color))
+  (let ((face-key (intern (concat "mew-face-color-" key-color)))
+       (face-val (intern (concat "mew-face-color-" val-color))))
+    (unless (facep face-key)
+      (make-empty-face face-key)
+      (face-spec-set face-key `((t (:foreground ,key-color :bold t)))))
+    (unless (facep face-val)
+      (make-empty-face face-val)
+      (face-spec-set face-val `((t (:foreground ,val-color :bold t)))))
+    (setq mew-header-color-alist
+         (cons (list field face-key face-val) mew-header-color-alist))))
+
 (defun mew-key-face (key nspec)
   (or (mew-header-color-get-key (assoc key mew-header-color-alist))
       (mew-nspec-keyface nspec)



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