次: , 前: Lisp Indent, 上: Program Indent


20.5.4 Cの字下げコマンド

ここでは、Cモードとその関連モードにおける字下げコマンドを紹介します。

C-c C-q
現在のトップレベルの関数定義、あるいは、型宣言の集まりを字下げし直す (c-indent-defun)。
C-M-q
ポイントのうしろにある釣り合った式の中の各行を字下げし直す (c-indent-exp)。 前置引数を指定すると、 不正な構文に対する検査をせずに、警告メッセージも発しない。
<TAB>
現在行を字下げし直すか、タブ文字を挿入する (c-indent-command)。

c-tab-always-indenttならば、 現在行を字下げし直すだけで、他には何もしない。 これがデフォルト。

この変数がnilならば、 ポイントが左端か字下げの余白部分にある場合に限り、字下げし直す。 さもなければ、タブ (あるいは、indent-tabs-modenilならば、 等価な個数の空白)を挿入する。

上記の(nilt)以外の値であれば、通常どおり字下げし直す。 ただし、コメント、文字列、プリプロセッサ指令の内側では、タブを挿入する。

C-u <TAB>
現在行の構文に従って現在行を字下げし直す。 なお、現在行から始まる式を構成する行も同じ幅だけ字下げし直す。 see Multi-line Indent

カレントバッファ全体を字下げし直すには、 C-x h C-M-\と打ちます。 これは、まず、バッファ全体をリージョンとしてから、 そのリージョンを字下げし直します。

カレントブロックを字下げし直すには、C-M-u C-M-qと打ちます。 これは、まず、ブロックの先頭に移動してから、 ブロック全体を字下げし直します。