38.10.4 フェイスを扱う関数
フェイスの属性で指定できるのは、フォント、前景色、背景色、下線です。
フェイスでは値nil
を指定することでこれらを未指定にできます。
以下は、フェイスを作成したり変更する基本関数です。
— Function:
make-face name
この関数は、すべての属性をnil
とした
nameという名前の新たなフェイスを定義する。
nameという名前のフェイスが既存ならばなにもしない。
— Function:
face-list
この関数は、定義済みのすべてのフェイス名のリストを返す。
— Function:
copy-face old-face new-name &optional frame new-frame
この関数は、既存のold-faceという名前のフェイスのコピーとして
フェイスnew-nameを定義する。
new-nameが既存でなければ、フェイスnew-nameを作成する。
省略可能な引数フレームframeを指定すると、
この関数はそのフレームだけに適用する。
さもなければ、各フレームにおいて個別に、
そのフレームのold-faceの属性を
同じフレームのnew-faceにコピーする。
省略可能な引数フレームnew-frameを指定すると、
copy-face
は
フレームframeのold-faceの属性を
フレームnew-frameのnew-faceにコピーする。
以下の関数を使って既存のフレームの属性を変更できます。
フレームframeを指定すると、そのフレームだけに影響します。
さもなければ、新たなフレームに適用されるデフォルトに加えて
すべてのフレームに影響します。
— Function:
set-face-foreground face color &optional frame
— Function:
set-face-background face color &optional frame
これらの関数は、フェイスfaceの前景色(あるいは背景色)として
colorを設定する。
引数colorは、表示色名の文字列であること。
白黒スクリーンでは、濃淡は点猫パターンで実現する。
— Function:
set-face-stipple face pattern &optional frame
この関数は、フェイスfaceの背景点猫パターンとして
patternを設定する。
引数patternは、Xサーバーで定義された背景点猫パターンの名前であること。
あるいは、点猫を使わないことを意味するnil
であること。
白黒階調の特定の濃淡を扱うために自動的に点猫パターンを使うため、
普通は点猫パターンに注意する必要はない。
— Function:
set-face-font face font &optional frame
この関数は、フェイスfaceのフォントを設定する。
引数fontは、読者のシステムの正しいフォント名か
Emacsのフォントセット名(see Fontsets)の文字列であること。
フォントを明示的に設定するとつねに正確にそれを使うため、
太字(bold)や斜体(italic)の属性の効果は消失することに注意。
— Function:
set-face-bold-p face bold-p &optional frame
この関数は、フェイスfaceの太字(bold)の属性を設定する。
nil
以外は太字あり、nil
は太字なしを意味する。
— Function:
set-face-italic-p face italic-p &optional frame
この関数は、フェイスfaceの斜体(italic)の属性を設定する。
nil
以外は斜体あり、nil
は斜体なしを意味する。
— Function:
set-face-underline-p face underline-p &optional frame
この関数は、フェイスfaceの下線の属性を設定する。
nil
以外は下線あり、nil
は下線なしを意味する。
— Function:
invert-face face &optional frame
フェイスfaceの前景色と背景色を入れ換える。
フェイスに前景色と背景色の両者が設定されていないと、
その前景色と背景色にはデフォルトの背景色と前景色を設定する。
つぎの関数は、フェイスの属性を調べます。
フレームframeを指定しない場合、
新たなフレーム向けのデフォルトのデータを参照します。
— Function:
face-foreground face &optional frame
— Function:
face-background face &optional frame
この関数は、フェイスfaceの前景色(あるいは背景色)を
文字列で返す。
— Function:
face-stipple face &optional frame
この関数は、フェイスfaceの背景点猫パターンの名前を返す。
なければnil
を返す。
— Function:
face-font face &optional frame
この関数はフェイスfaceのフォントの名前を返す。
— Function:
face-bold-p face &optional frame
この関数はフェイスfaceの太字(bold)属性を返す。
— Function:
face-italic-p face &optional frame
この関数はフェイスfaceの斜体(italic)属性を返す。
— Function:
face-underline-p face &optional frame
この関数はフェイスfaceの下線属性を返す。
— Function:
face-id face
この関数はフェイスfaceのフェイス番号を返す。
— Function:
face-documentation face
この関数はフェイスfaceの説明文字列を返す。
なければnil
を返す。
— Function:
face-equal face1 face2 &optional frame
この関数は、フェイスface1とface2が
表示上の同じ属性を持てばt
を返す。
— Function:
face-differs-from-default-p face &optional frame
この関数は、フェイスfaceの表示がデフォルトのフェイスの表示と
異なる場合にはt
を返す。
フェイスの各属性がデフォルトフェイスの対応する属性に等しいか
(デフォルトから継承すること意味する)nil
であると、
フェイスはデフォルトのフェイスと『等しい』とみなす。
— Variable:
region-face
この変数の値は、リージョンが活性(暫定マーク(transient-mark)モードのみ)
の場合にリージョン内の文字の表示に使用するフェイス番号を指定する。
リージョン内の文字では、これが指定するフェイスが
テキスト属性やオーバレイのすべてのフェイスに優先する。
暫定マーク(transient-mark)モードについて詳しくは、see The Mark。
通常、値はregion
という名前のフェイスのフェイス番号である。
— Function:
frame-update-face-colors frame
この関数は、フレームframeの前景色や背景色を変更後に
フレームframe上のフェイスの表示を更新する。