Emacs-Lisp > defface

概要

  • Macro: defface FACE SPEC DOC [KEYWORD VALUE]...
  • (DISPLAY ATTS)に従ったデフォルトを持つカスタマイズ可能なフェイスとしてFACE-NAMEを宣言する。シンボルFACE-NAMEをクォートしないこと。引数DOCは、フェイスの説明文字列を指定する。

書式

(defface FACE-NAME
 ((DISPLAY ATTS) ...)))

説明

  • DISPLAY: ((REQ ITEM...)...)
例: ((type x) (class color) (background dark))
   frame が X 上にあり,color ディスプレイ,さらに background が
   darkである場合にマッチする。
例:(t ATTS3)
   DISPLAY が t であれば, frame がいかなる特性であろうと対応する
   ATTS が適用される

  • ATTS: (ATTR VALUE ATTR VALUE...)
例: (:foreground "LightSkyBlue" :bold t :italic nil)
   文字の色が "LightSkyBlue", Bold体だがitalic体ではない。

ATTS には次のものが指定できます。
ATTR VALUE 説明
:foreground color name 文字の前景を指定する(普通にいうと文字の色になる)
:background color name 文字の背景を指定する
:stipple bitmap file 名 文字の背景につける bitmap file を指定する
:bold t か nil ボールド体にする
:italic t か nil 斜体にする
:underline t か nil 下線をつける
:inverse-video t か nil foreground と background を反転させる
以下は,XEmacsでのみ使用可能なattributeです。
ATTR VALUE 説明
:size "9pt" や "2mm" など 文字の大きさ
:family "times"など font family を指定する
:strikethru t か nil (横線をつけて)消し文字にする

詳細な例

(wl-defface wl-highlight-message-headers
 '(
   (((type tty)
     (background dark))
    (:foreground "cyan"))
   (((class color)
     (background dark))
    (:foreground "gray" :bold t))
   (((class color)
     (background light))
    (:foreground "gray50" :bold t))
  )
 "Face used for displaying header names.")

には,(DISPLAY ATTS) の組が3つあり,最初にマッチしたものが適用されます。

  1. tty で background が dark の場合は文字の色を "cyan" にする。
  2. color デバイスで background が dark の場合は文字の色を "gray",bold 体にする。
  3. color デバイスで background が light の場合は文字の色を "gray50",bold 体にする。
  4. 上記のいずれにもマッチしない場合はfaceはnilになる。

呼出元

コメント:


履歴

  • 作者:kobapan
  • 日付:2009/01/03
  • 対象:
更新日 更新者 更新内容

コメント


名前:
コメント:
最終更新:2009年01月04日 17:11