Next: , Previous: , Up: Fixit   [Contents][Index]


16.2 テキストの入れ替え

C-t

2つの文字を入れ替えます(transpose-chars)。

M-t

2つの単語を入れ替えます(transpose-words)。

C-M-t

バランスのとれた2つの式を入れ替えます(transpose-sexps)。

C-x C-t

2つの行を入れ替えます(transpose-lines)。

2つの文字を入れ違いに入力してしまう間違いはよくありますが、それらが隣接しているときはC-t(transpose-chars)コマンドで訂正できます。通常C-tはポイントの左右にある文字を入れ替えます。行末でこのコマンドを使う場合、最後の文字と改行を入れ替えるのはおそらく無意味なので、C-tは行末の2文字を入れ替えます。このような入れ違いミスにすぐ気付いたときは、C-tだけで訂正できます。すぐに間違いに気付かなかった場合、C-tをタイプする前に、入れ替えて入力してしまった文字の間にカーソルを移動しなければなりません。単語の最後の文字とスペースを入れ替えて入力してしまった場合、そこに戻るには単語移動コマンドが良い方法です。それ以外では、逆向きの検索(C-r)が最善な方法の場合があります。Searchを参照してください。

M-tは、ポイントの前にある単語と、後にある単語を入れ替えます(transpose-words)。このコマンドはポイントより後方、またはポイントがある単語を前方に移動して、ポイントをその後に移動します。文字の間にある区切り文字は移動しません。たとえば‘FOO, BARは、‘BAR FOO,’ではなく、‘BAR, FOOに入れ替わります。

C-M-t (transpose-sexps)も似ていますが、これは2つの式(Expressionsを参照してください)を入れ替えます。そしてC-x C-t (transpose-lines)は、行を入れ替えます。これらはM-tと同様に動作しますが、入れ替えを行うテキスト単位が異なります。

入れ替えコマンドに数引数を指定すると、反復回数になります。これは入れ替えコマンドに、ポイントより前(またはポイントがある)の移動させる文字(または単語、式、行)を、何文字(または単語、式、行)後に移動させるか指示します。たとえばC-u 3 C-tは、ポイントの前にある文字を3文字後ろに移動します。つまり‘f∗oobar’は‘oobf∗ar’に変更されます。これはC-tを3回繰り返したのと同じですC-u - 4 M-tはポイントの前にある単語を、後方に単語4つ分移動します。C-u - C-M-tは、引数を指定しないC-M-tの効果を取り消します。

数引数0には特別な意味が割り当てられています(繰り返し回数としては、0に意味がありません)。これはポイントの後ろで終わる文字(または単語、式、行)を、マーク位置で終わる文字(または単語、式、行)と入れ替えます。