次: , 前: Search-based Fontification, 上: Font Lock Mode


22.5.3 その他のフォントロック変数

本節では、font-lock-defaultsを用いてメジャーモードで 設定できる他の変数について述べます。

— 変数: font-lock-keywords-only

nil以外であると、フォントロック(font-lock)モードは、 構文に基づいてコメントや文字列を強調表示すべきでないことを意味する。 font-lock-keywordsに基づく強調表示のみを行う。

— 変数: font-lock-keywords-case-fold-search

nil以外であると、font-lock-keywordsの 正規表現探索では大文字小文字を区別しないことを意味する。

— 変数: font-lock-syntax-table

この変数は、コメントや文字列の表示方法に用いる 構文テーブルを指定する。

— 変数: font-lock-beginning-of-syntax-function

この変数がnil以外であると、 ポイントを構文上の『トップレベル』で文字列やコメントの外側に 後方移動する関数であること。 フォントロック(font-lock)モードは、 構文に基づく処理において正しい結果を得るために 必要に応じてこの関数を使う。

関数は引数なしで呼び出される。 ポイントを構文ブロックの先頭に置くこと。 典型的な値は、 beginning-of-line(行頭は構文ブロックの外側である)、 あるいは、 プログラム向けのモードではbeginning-of-defun、 テキスト向けのモードではbackward-paragraph (モード固有の関数は構文ブロックの外側にポイントを移動する)である。

値がnilであると、バッファの先頭を構文ブロックの外側の位置として使う。 これは誤りではないが、動作を遅くする。

— 変数: font-lock-mark-block-function

この変数がnil以外であると、 コマンドM-g M-gfont-lock-fontify-block)による 再表示のためにテキストの括られた範囲を選ぶために 引数なしで呼ばれ関数であること。

関数は、選んだ範囲にリージョンを設定すること。 正しい結果を得られるように大きめのテキスト範囲を選ぶのがよいが、 再表示処理が遅くならないように大きすぎないこと。 典型的な値は、プログラム向けモードではmark-defun、 テキスト向けモードではmark-paragraphである。