相关疑难解决方法(0)

如何在 vim 中替换粘贴猛拉文本而不猛拉已删除的行?

所以我通常会发现自己将文本从一个点复制到另一个点,同时覆盖粘贴新文本的旧文本:

blah1
newtext
blah2
wrong1
blah3
wrong2
blah4
Run Code Online (Sandbox Code Playgroud)

假设我对它进行了视觉标记newtextyank。现在我选择wrong1(可以是任何东西,不一定只是一个词)并p品尝newtext. 但是,如果我现在wrong2对它做同样的事情,它将被替换wrong1newtext

那么如何防止缓冲区中的文本与我当前正在覆盖的文本交换?

编辑 1

尽管我非常喜欢 reigister 建议(我想我将开始更多地使用寄存器,现在我发现了该:dis命令),但我将修改jinfield的答案,因为我不使用交换模式。

vnoremap p "0p
vnoremap P "0P
vnoremap y "0y
vnoremap d "0d
Run Code Online (Sandbox Code Playgroud)

完美地做到了这一点。

编辑 2

我太快了;romainl的解决方案正是我正在寻找的,没有Edit 1 中的黑客。
其实,vnoremap p "_dP够了!
所以,改变接受的答案。

vim copy-paste

63
推荐指数
6
解决办法
2万
查看次数

标签 统计

copy-paste ×1

vim ×1