2つの文字を入れ替えます(transpose-chars
)。
2つの単語を入れ替えます(transpose-words
)。
釣り合いのとれた2つの式を入れ替えます(transpose-sexps
)。
2つの行を入れ替えます(transpose-lines
)。
2つのセンテンスを入れ替えます(transpose-sentences
)。
2つのパラグラフを入れ替えます(transpose-paragraphs
)。
2つのリージョンを入れ替えます。
2つの文字を入れ違いに入力してしまう間違いはよくありますが、それらが隣接しているときはC-t(transpose-chars
)コマンドで訂正できます。通常C-tはポイントの左右にある文字を入れ替えます。行末でこのコマンドを使う場合、最後の文字と改行を入れ替えるのはおそらく無意味なので、C-tは行末の2文字を入れ替えます。このような入れ違いミスにすぐ気付いたときは、C-tだけで訂正できます。すぐに間違いに気付かなかった場合、C-tをタイプする前に、入れ替えて入力してしまった文字の間にカーソルを移動しなければなりません。単語の最後の文字とスペースを入れ替えて入力してしまった場合、そこに戻るには単語移動コマンド(M-f、M-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-sentencesとM-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つのマークの間のテキストと入れ替えます。このコマンドは複数の文字(や単語、センテンス、パラグラフ)を一度に行うために最適です。