Next: Face Remapping, Previous: Attribute Functions, Up: Faces [Contents][Index]
Emacsが与えられたテキスト断片を表示する際には、そのテキストの視覚的外観は異なるソースから描画されるフェイスにより決定されるかもしれません。これら種々のソースが特定の文字にいたいして複数のフェイスを指定する場合には、Emacsはそれらのさまざまなフェイスの属性をマージします。以下にEmacsがフェイスをマージする順序を優先度順に記します:
region
フェイスを使用してそれをハイライトする。Standard
Faces in The GNU Emacs Manualを参照のこと。
nil
のface
属性をもつオーバーレイにテキストがある場合には、Emacsはそのプロパティにより指定されるフェイス(1つ以上)を適用する。そのオーバーレイがmouse-face
プロパティをもち、マウスがそのオーバーレイに十分に近ければEmacsはかわりにmouse-face
で指定されるフェイスかフェイス属性を適用する。Overlay Propertiesを参照のこと。
1つの文字を複数のオーバーレイがカバーする場合には、高優先度のオーバーレイが低優先度のオーバーレイをオーバーライドする。Overlaysを参照のこと。
face
やmouse-face
プロパティを含む場合には、Emacsは指定されたフェイスやフェイス属性を適用する。Special Propertiesを参照のこと(これはFont Lockモードのフェイス適用方法。Font Lock Modeを参照)。
mode-line
フェイスを適用する。選択されていないウィンドウのモードラインではEmacsはmode-line-inactive
フェイスを使用する。ヘッダーラインにたいしてはEmacsはheader-line
フェイスを適用する。
before-string
やafter-string
プロパティを介したオーバーレイ文字列(Overlay Propertiesを参照)、あるいはディスプレイ文字列(Other Display Specsを参照)に由来するテキストであり、かつ文字列にface
やmouse-face
プロパティが含まれないが、バッファーのテキストがフェイスを定義するディスプレイプロパティやオーバーレイプロパティの影響を受ける場合には、Emacsは“基礎”にあるバッファーテキストのフェイス属性を適用する。これはたとえオーバーレイ文字列やディスプレイ文字列がマージン内に表示されている場合も同様であることに注意(Display Marginsを参照)。
default
フェイスの属性を適用する。
各ステージにおいてフェイスが有効な:inherit
属性をもつ場合には、Emacsは値unspecified
をもつすべての属性が、親フェイス(1つ以上)由来で描画に使用される対応する値をもつものとして扱います。Face Attributesを参照してください。親フェイスでも属性がunspecifiedのままかもしれないことに注意してください。その場合にはフェイスマージの次レベルでもその属性はunspecifiedのままです。