次: Tab Stops, 前: Indentation, 上: Indentation
行の字下げを飛び越えるには、M-m(back-to-indentation
)を使います。
行のどこで実行しても、その行の空白でない最初の文字位置にポイントを移動します。
現在行のまえに字下げした行を挿入するには、 C-a C-o <TAB>を使います。 現在行のあとに字下げした行を挿入するには、C-e C-jを使います。
単にタブ文字を挿入するには、C-q <TAB>と打ちます。
C-M-o(split-line
)は、
ポイントから行末までのテキストを垂直に下ろします。
その結果、現在行は2つの行に分割されます。
C-M-oは、まず、ポイントの直後に空白やタブがある限りポイントを進めます。
そして、ポイントの直後に、
改行とポイント位置の桁までに必要な字下げを挿入します。
ポイント自身は挿入した改行の直前に留まります。
この点では、C-M-oはC-oに似ています。
2つの行を連結するには、
コマンドM-^(delete-indentation
)を使います。
このコマンドは、現在行の行頭の字下げと行区切り(改行文字)を
削除して空白1個に置き換えます。
ただし、この空白1個を省いてしまう(Lispコードには便利な)特別な場合があります。
2つの行を繋げた結果、開き括弧や閉じ括弧が連続する場合、
あるいは、さらに改行が続く場合です。
現在行の字下げだけを削除するには、
行頭に移動してからM-\(delete-horizontal-space
)を使います。
このコマンドは、カーソル(ポイント)の周りの空白とタブをすべて削除します。
詰め込み接頭辞がある場合、M-^は、 削除される改行の直後に現れる詰め込み接頭辞を削除します。 See Fill Prefix。
一度に複数の行の字下げを変更するコマンドもあります。
C-M-\(indent-region
)は、
リージョン内で始まるすべての行に作用します。
このコマンドは、行頭で<TAB>を打鍵したかのように
『普通の』方法で各行を字下げします。
数引数は字下げする桁位置を指定します。
つまり、最初の空白でない文字がその桁位置にくるように
行全体を右か左に水平移動します。
C-x <TAB>(indent-rigidly
)は、
リージョン内のすべての行を、
引数で指定した分だけ右に移動します(引数が負であれば左に移動)。
複数の行全部をきちっと揃えて(rigidly)横に移動することから、
コマンドにはこのような名前が付いています。
M-x indent-relativeは、先行する行(実際には空行でないいちばん近くの行)に
基づいてポイント位置を字下げします。
ポイント位置に空白を挿入してポイントを進めて、
ポイントが先行する行の字下げ位置の真下にくるようにします。
字下げ位置とは連続した白文字の末尾か行末のことです。
ポイントが先行する行のどの字下げ位置よりも右にある場合には、
ポイントのまえの白文字を削除してから、
先行する行の適用可能な最初の字下げ位置まで字下げします。
適用可能な字下げ位置がない場合には、
indent-relative
はtab-to-tab-stop
を実行します
字下げテキスト(indented text)モードでは、
<TAB>はindent-relative
と定義されます。
See Text。
テキストの一部を字下げする別の方法についてはSee Format Indentation。