1. ホーム

[解決済み】Vimで削除(カットではない)する方法は?

2022-04-12 15:36:59

質問

行をデフォルトバッファに入れずに削除するにはどうしたらいいですか?

line that will be copied.

line that I want to be substitued with the previous one.

やろうとしていること

yy
dd
p

しかし、Vimは最近コピーした文字列を削除した(カットした)文字列に置き換えてしまいます。のようなバッファを使えばいいのは知っています。 "1yy , dd では "1p しかし、私はいつもコピーした文字列をバッファに入れるのを忘れてしまい、最初に内容を貼り付けて(コピーされる行)、次に必要なもの(前のものと置換される行)を削除する必要があります。

Vi(m)でテキストをコピーせずに本当に削除するにはどうしたらいいですか?

もう一つの関連する質問は、挿入モードで単語を前方削除するにはどうしたらいいのでしょうか?私は、以下のようなものが欲しいのです。 Ctrl + w .

解決方法は?

ブラックホールレジスタを使用してください。 "_ を使えば、本当に何かを削除することができます。 "_d .

使用方法 "_dP を使用すると、何かを貼り付けて、さらに貼り付けられるようになります。

2つ目の質問に対しては <C-o>dw . <C-o> を残したまま通常のコマンドを実行する場合に使用します。 挿入 モードとなります。

もちろん、入力の手間を省くために独自のマッピングを設定することができます。私はこれを使っています。

nnoremap <leader>d "_d
xnoremap <leader>d "_d
xnoremap <leader>p "_dP