Next: , Previous: Major Modes, Up: Top


18 字下げ

本章では、字下げ(indentation)を 付加/削除/調整するEmacsコマンドについて説明します。

<TAB>
モードに固有の方法で、現在行を『適切に』字下げする。
C-j
<RET>に続けて<TAB>を実行する(newline-and-indent)。
M-^
2つの行を連結して1つにする(delete-indentation)。 C-jの効果を取り消す。
C-M-o
ポイント位置で行を分割する。 つまり、行内のポイント以降のテキストは新たな行になり、かつ、 ポイント位置まで字下げする(split-line)。
M-m
現在行の空白でない最初の文字までポイントを (行末か行頭へ向かって)移動する(back-to-indentation)。
C-M-\
複数の行を同じ桁に字下げする(indent-region)。
C-x <TAB>
複数の行の塊を(右か左に)同じ量だけきっちり移動する (indent-rigidly)。
M-i
ポイント位置からあらかじめ設定したつぎのタブストップ位置まで字下げする (tab-to-tab-stop)。
M-x indent-relative
ポイント位置からまえの行の字下げ位置まで字下げする。

ほとんどのプログラム言語には、字下げの慣習があります。 Lispコードでは、括弧の入れ子の深さに従って行を字下げします。 細部はかなり異なりますが、概念的にはCコードでも同様の考え方で字下げします。

どんな言語であっても、行を字下げするには<TAB>コマンドを使います。 各メジャーモードでは、特定の言語に適した字下げを行うように、 このコマンドを定義します。 Lispモードでは、<TAB>は括弧の深さに応じて行を整列します。 行のどこで<TAB>を打鍵しても、その行全体を整列します。 Cモードでは、<TAB>は、 Cの構文上のさまざまな側面を考慮した巧みで洗練された 字下げスタイルを実現しています。

テキスト(text)モードでは、 <TAB>はtab-to-tab-stopコマンドを実行します。 これは、つぎのタブストップ位置まで字下げを行います。 タブストップ位置はM-x edit-tab-stopsで設定できます。