Next: , Previous: , Up: タイプミスを訂正するコマンド   [Contents][Index]


17.2 テキストの入れ替え

C-t

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

M-t

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

C-M-t

釣り合いのとれた2つの式を入れ替えます(transpose-sexps)。

C-x C-t

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

M-x transpose-sentences

2つのセンテンスを入れ替えます(transpose-sentences)。

M-x transpose-paragraphs

2つのパラグラフを入れ替えます(transpose-paragraphs)。

M-x transpose-regions

2つのリージョンを入れ替えます。

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

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

C-M-t (transpose-sexps)も似ていますが、これは2つの式(対応が取れたカッコの式を参照してください)、C-x C-t (transpose-lines)は行を入れ替えます。M-x transpose-sentencesM-x transpose-paragraphsはそれぞれセンテンスとパラグラフを入れ替えます。これらのコマンドは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に意味がありません)。これはポイントの後ろで終わる文字(または単語、式、行)を、マーク位置で終わる文字(または単語、式、行)と入れ替えます。

M-x transpose-regionsはポイントとマークの間のテキストを、マークリングに最後にpushされた2つのマークの間のテキストと入れ替えます(マークのセットを参照)。プレフィクス数引数を与えるとポイントとマークの間のテキストを、その個数分マークリングを戻ってから連続する2つのマークの間のテキストと入れ替えます。このコマンドは複数の文字(や単語、センテンス、パラグラフ)を一度に行うために最適です。