Previous: Moving by Parens, Up: Parentheses [Contents][Index]
Emacsにはカッコのマッチング(parenthesis matching)機能がいくつかあります。これにより、どのカッコ(または他の区切り)がどのようにマッチするか簡単に見ることができます。
終了文字となる自己挿入文字をタイプすると、Emacsはそれがスクリーン上にあれば、マッチする開始区切りの位置を簡単に示します。スクリーン上にない場合、Emacsは開始区切りの近くにあるテキストをエコーエリアに表示します。どちらの方法でも、どのグループを終了したのか見分けることができます。開始区切りと終了区切りがマッチしない — ‘[x)’のような場合、エコーエリアに警告メッセージが表示されます。
3つの変数が、マッチするカッコの表示を制御します:
blink-matching-paren
は、この機能をオンまたはオフに切り替えます。nil
は無効にしますが、デフォルトのt
は有効にします。jump
にセットすると、マッチする開始区切りに数瞬カーソルを移動して指示します。
blink-matching-delay
は、マッチする開始区切りを何秒表示するかを指定します。これには整数または浮動小数点数を指定します。デフォルトは1です。
blink-matching-paren-distance
には、マッチする開始区切りを後方に何文字検索するかを指定します。この文字数内にマッチが見つからない場合、Emacsは検索を中止して、何も表示しません。デフォルトは102400です。
グローバルなマイナーモードのShow Parenモードは、より強力な自動的なマッチングの類を提供します。これは開始区切りの前、または終了区切りの後ろにポイントを移動すると、その区切りと、それに対応する反対側の区切りをハイライトします。Show Parenモードに切り替えるには、M-x show-paren-modeとタイプしてください。
グローバルなマイナーモードのElectric Pairモードは、マッチする区切りを簡単に挿入する方法を提供します。開始区切りを挿入すると、マッチする終了区切りが自動的に挿入され、2つの区切りの間にポイントが配されます。反対に終了区切りを既存の区切りの先に挿入した場合、何の挿入もされず、その位置は単にスキップされます。以下の変数はElectric Pairモードの追加機能を制御します:
electric-pair-preserve-balance
—
非nil
の場合、デフォルトのペアリングロジックは、開始区切りと終了区切りの数のバランスになります。
electric-pair-delete-adjacent-pairs
—
非nil
の場合、隣接する区切りの間でのバックスペースにより、終了区切りも自動的に削除します。
electric-pair-open-newline-between-pairs
—
非nil
の場合、2つの隣接するペアの間での改行の挿入は、ポイントの後ろに自動的に自動的に追加の改行をオープンします。
electric-pair-skip-whitespace
—
非nil
の場合、終了区切りのスキップを決定する前に、マイナーモードが空白文字を前方にスキップするようにします。
Electric Pairモードに切り替えるには、M-x electric-pair-modeとタイプしてください。