newline-and-indent
).
基本的なインデントコマンドはTABです.TABは前の行に従って現
在行を字下げします.TABにより実行される関数は主モードによります.
Lispモードではlisp-indent-line
,Cモードではc-indent-line
で
す.これらの関数は言語によった構文によって動作しますが,機能はどれもほぼ
同じです.どのプログラム言語の主モードでも,TABは,ポイントが行の
どの位置にあるかによらず,現在行の先頭に空白を挿入,または消去します.ポ
イントが行のはじめの空白にあるときにTABを押せば,ポイントは空白の
最後まで移動します.さもなければ,ポイントは前後の文字とともに移動し
ます.
タブ文字を挿入するにはC-q TABを使います.
新しいコードを大量に入力するときはLFD
(newline-and-indent
)のコマンドを使います.これはRETと
TABを続けて押す機能に相当します.LFDは空白行を作りそれを字下
げします.
TABはかっこでくくられたまとまりの中では直前の行に従って字下げし ます.たとえばある1行を標準設定以外の字下げに変更すると,後続する行はそ れに従います.TABの標準設定で美しく字下げできない場合でも次の行か らは利用することができます.
左マージンにある`(',`{'などの開きかっこ類はEmacsでは(字下 げのルーチンも含めて)関数の始まりを意味することを忘れないでください.よっ て関数の始まりでない場合,たとえ文字列内でも第0桁に開きかっこを置かない ようにします.この制限は字下げのコマンドを高速にするために重要です.必ず このルールを守ってください.See section Defuns.