GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/elisp/Multiline-Font-Lock.html ・ emacs-doc.conao3.com

24.7.9 複数行のFont Lock構文

通常、font-lock-keywords の要素が複数行にわたってマッチすることはありません。Font Lock は通常バッファの一部のみをスキャンするため、スキャン開始位置が行境界をまたぐような複数行の構造を見逃す可能性があり、この方法では確実に動作しません。(通常、スキャンは行の先頭から開始されます。)

複数行構成要素に対応する要素を適切に動作させるには、正しい識別と正しい再ハイライトという2つの側面があります。前者は、Font Lockがすべての複数行構成要素を検出することを意味します。後者は、複数行構成要素が変更された際――例えば、以前は複数行構成要素の一部であったテキストの一部がその一部ではなくなった場合など――に、Font Lockが関連するすべてのテキストを正しく再ハイライトすることを意味します。これら2つの側面は密接に関連しており、一方を機能させればもう一方も機能するように見えることがよくあります。しかし、確実な結果を得るには、両方の側面に明示的に取り組む必要があります。

複数行構成要素を正しく識別するための方法は、次の3通りあります。

複数行の構文を再ハイライトするには、いくつかの方法があります: