list-buffersやoccurのようないくつかのメジャーモードは、バッファーのテキストをプログラム的に構築します。これらにたいしてFont
Lockモードをサポートするためには、そのバッファーにテキストを挿入するタイミングでテキストのフェイスを指定するのがもっとも簡単な方法です。
これはスペシャルテキストプロパティfont-lock-face (特殊な意味をもつプロパティを参照)により、テキスト内にフェイスを指定することによって行われます。Font
Lockモードが有効になったとき、このプロパティはfaceと同じように表示を制御します。Font
Lockモードが無効になるとfont-lock-faceは表示に効果をもちません。
何らかのテキストにたいしてfont-lock-faceを使用するモードや、通常のFont
Lock機構を使用するモードでも問題はありません。しかし通常のFont
Lock機構を使用しないモードでは、変数font-lock-defaultsをセットするべきではありません。この場合にはfaceプロパティはオーバーライドされないので、faceプロパティの使用も機能します。しかしfont-lock-modeの切り替えによりユーザーがフォント化を制御でき、かつモードのFont
Lock機構の使用の有無に関わらずコードが機能するので、一般的にはfont-lock-faceの使用の方が優っています。