私は最近尋ねました:
だから、以下のコードから行きます:
I said Hello
I said There
I said I am some code
次のようにコーディングするには:
Hello
There
I am some code
では、行からn個の文字を削除するにはどうすればよいですか?
私は最近尋ねました:
だから、以下のコードから行きます:
I said Hello
I said There
I said I am some code
次のようにコーディングするには:
Hello
There
I am some code
では、行からn個の文字を削除するにはどうすればよいですか?
回答:
さらに簡単です!繰り返しますが、長方形コマンドを使用します。削除する長方形の1つの角に移動し、を押しC-SPC
てマークを設定します。長方形のもう一方の角に移動して、C-x r d
(delete-rectangle
)を押します。たとえば、操作する最初の行に移動し、C-a
またはhome
を押して行の先頭に移動し、操作する最後の行に移動して、右下隅に移動してから削除します。C-u number C-f
C-x r d
最終行の文字数が目的の文字数より少ない場合は、代わりに左下隅と右上隅を使用する方が便利な場合があります。または、ジャンク文字を挿入できます(最初の行と最後の行の両方が短い場合に便利です)。
を使用C-x r k
して、長方形を殺すことができます。これにより、C-x r y
後でヤンク()できます(挿入したい場所の左上隅に移動します)。
C-x r t
(string-rectangle
)を使用して空の文字列を入力することもできます。
長方形コマンドは列の位置に基づいています。n列(タブなどの複数列の文字と違いがあります)ではなく、n文字を削除する場合は、正規表現の置換を使用できます:^.\{42\}
何も置き換えずにすべての行の最初の42文字を削除します。
別の可能性:このようなタスクに複数のカーソルを使用することが本当に好きです。package.el
MELPA を介して利用でき、それは私のemacsの不可欠な部分になりました。私は単純に選択しI said
(場合によってはその前に改行を含めます)、を使用M-x mc/mark-all-like-this
して、途中にいます。より詳細な制御が必要な場合は、mc/mark-next-like-this
またはを使用できますmc/mark-next-lines
。
私のキーバインディング:
(use-package multiple-cursors
:bind (("C->" . mc/mark-next-like-this)
("C-M->" . mc/mark-all-like-this-dwim)))
必須のEmacs Rocks!エピソード:http : //emacsrocks.com/e13.html