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
を継承する。