Next: , Previous: , Up: Font Lockモード   [Contents][Index]


24.6.7 Font Lockのためのフェイス

Font Lockモードはハイライトに任意のフェイスを使用できますが、Emacsは特にFontLockがテキストのハイライトに使用するいくつかのフェイスを定義しています。これらのFont Lockフェイス(Font Lock faces)を以下にリストします。これらのフェイスはFontLockモードの外部における構文的なハイライトでメジャーモードが使用することもできます(メジャーモードの慣習を参照)。

以下の各シンボルはフェイス名であり、かつデフォルト値がシンボル自身であるような変数でもあります。つまりfont-lock-comment-faceのデフォルト値はfont-lock-comment-faceです。

リストはそのフェイスの典型的な使い方の説明とともに、重要度が高い順にソートされています。あるモードの構文的カテゴリーが以下の使い方の記述にうまく適合しない場合には、この並び順をガイドとして使用することによってフェイスを割り当てることができるでしょう。

font-lock-warning-face

特有な構文(たとえば‘‘foo’のようにEmacs Lispシンボルにおけるエスケープされていない判りにくいクォート)や、Emacs Lispの‘;;;###autoload’、Cの‘#error’のような他のテキストの意味を大きく変更する構文にたいして使用される。

font-lock-function-name-face

定義、または宣言される関数の名前にたいして使用される。

font-lock-function-call-face

呼び出される関数の名前にたいして使用される。このフェイスはデフォルトではfont-lock-function-name-faceを継承する。

font-lock-variable-name-face

定義、または宣言される変数の名前にたいして使用される。

font-lock-variable-use-face

参照される変数の名前にたいして使用される。このフェイスはデフォルトではfont-lock-variable-name-faceを継承する。

font-lock-keyword-face

Cの‘for’や‘if’のように、構文的に特別な意味をもつキーワードにたいして使用される。

font-lock-comment-face

コメントにたいして使用される。

font-lock-comment-delimiter-face

Cの‘/*’と‘*/’のようなコメント区切りにたいして使用される。ほとんどの端末ではこのフェイスはfont-lock-comment-faceを継承する。

font-lock-type-face

ユーザー定義データ型にたいして使用される。

font-lock-constant-face

Cの‘NULL’のような定数の名前にたいして使用される。

font-lock-builtin-face

ビルトイン関数の名前にたいして使用される。

font-lock-preprocessor-face

プロセッサーコマンドにたいして使用される。デフォルトでは、font-lock-builtin-faceを継承する。

font-lock-string-face

文字列定数にたいして使用される。

font-lock-doc-face

特別な形式のコメントや文字列内のプログラムコード内に埋め込まれたドキュメントにたいして使用される。デフォルトではfont-lock-string-faceを継承する。

font-lock-doc-markup-face

font-lock-doc-faceを使用するテキスト内のmark-up要素にたいして使用される。これは通常はHaddock、Javadoc、Doxygenなどの慣例にしたがってプログラムコード内に埋め込まれた、ドキュメント内のマークアップ構文にたいして使用される。このフェイスは、デフォルトではfont-lock-constant-faceを継承する。

font-lock-negation-char-face

見逃しやすい否定文字にたいして使用される。

font-lock-escape-face

文字列内のエスケープシーケンスにたいして使用される。このフェイスはデフォルトではfont-lock-regexp-grouping-backslashを継承する。

以下はPythonでエスケープシーケンス\nが使用されている例:

print('Hello world!\n')
font-lock-number-face

数値にたいして。

font-lock-operator-face

演算子にたいして。

font-lock-property-name-face

構造体におけるフィールド定義のようなオブジェクトのプロパティにたいして使用される。このフェイスはデフォルトではfont-lock-variable-name-faceを継承する。

font-lock-property-use-face

構造体のフィールドの使用のように、オブジェクトのプロパティにたいして使用される。このフェイスはデフォルトではfont-lock-property-name-faceを継承する。

たとえば、

typedef struct
{
  int prop;
//    ^ property
} obj;

int main()
{
  obj o;
  o.prop = 3;
//  ^ property
}
font-lock-punctuation-face

カッコや区切り文字などの句読点文字。

font-lock-bracket-face

カッコ(()[]{})にたいして使用される。このフェイスはデフォルトではfont-lock-punctuation-faceを継承する。

font-lock-delimiter-face

区切り文字(;:,)にたいして使用される。このフェイスはデフォルトではfont-lock-punctuation-faceを継承する。

font-lock-misc-punctuation-face

カッコや区切り文字以外の句読点文字にたいして使用される。このフェイスはデフォルトではfont-lock-builtin-faceを継承する。