小编bit*_*ask的帖子

如何在 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万
查看次数

Vim:显示标签行中的标签索引

假设我打开了file1.txt, file2.txt,file3a.txtfile3b.txt这样的标签行(顶部的东西)看起来像这样:

file1.txt  file2.txt  2 file3a.txt
Run Code Online (Sandbox Code Playgroud)

(请注意如何file3b.txt.丢失,因为它显示在与 相同的选项卡中的拆分中file3a.txt

为了在选项卡之间更快地移动(使用<Number>gt),我希望每个选项卡都沿着文件名显示其索引。像这样:

1:<file1.txt>  2:<file2.txt>  3:<2 file3a.txt>
Run Code Online (Sandbox Code Playgroud)

格式(特别是尖括号)是可选的;我只希望索引出现在那里(1:2:等等)。

没有任何线索:h tab-page-commands或谷歌。

layout vim tabs

10
推荐指数
4
解决办法
1万
查看次数

标签 统计

vim ×2

copy-paste ×1

layout ×1

tabs ×1