Vim块粘贴内联或新行

Vim块粘贴内联或新行,vim,Vim,我有一个问题,我试图用Vim拖动/剪切并粘贴一块文本,但它的行为不一致 结果是: 在下面的这篇文章中,我要剪切中间的一栏,然后粘贴第三栏。所以我选择(ctrl-v)文本,剪切它(x),将光标移到第三列的末尾(现在是第二列),然后粘贴(p) 有时Vim做得很好,结果是: A a 1 B b 2 C c 3 D d 4 A a 1 2 3 4 B b C c D d 有时,结果是: A a 1 B b 2 C c 3 D d 4 A a 1 2 3 4 B b C c D d 我需要控制这种

我有一个问题,我试图用Vim拖动/剪切并粘贴一块文本,但它的行为不一致

结果是:

在下面的这篇文章中,我要剪切中间的一栏,然后粘贴第三栏。所以我选择(ctrl-v)文本,剪切它(x),将光标移到第三列的末尾(现在是第二列),然后粘贴(p)

有时Vim做得很好,结果是:

A a 1
B b 2
C c 3
D d 4
A a
1
2
3
4
B b
C c
D d
有时,结果是:

A a 1
B b 2
C c 3
D d 4
A a
1
2
3
4
B b
C c
D d

我需要控制这种行为,而不是成为它的人质。。。如何控制此行为?

我建议您阅读帮助主题以进行视觉选择,
:h visual.txt
。有关
可视操作符的部分及其注释可能会
特别有用。选择行为是相当一致和容易的
不过我还是要理解。如果你剪切或复制了某样东西,就要期待它是
以相同模式放置:字符、行或块

我想在第三次之后剪下中间的生态柱并粘贴。所以我 块选择(ctrl-v)文本,拖动它(y),将光标移到 第三列的末尾(现在是第二列)和粘贴(p)

你不应该这样做。要“剪切”中间列,请执行以下操作: 请描述,您是来使用
x
而不是
y
的。拉金只会复制它,然后 放在那儿吧

关于上一个以行方式粘贴内容的示例 时尚,使用
p
时不应出现这种情况,因为它保存了 区块信息。我唯一能想到的解释是 请注意,您删除了一列并使用
:put
粘贴它。那将 将其转换为逐行粘贴。或者:

  • 你也拉了一样东西(比如说从
    V
    ),你正试图 按块粘贴
  • 你的例子不能很好地解释你的问题
  • 有某种插件或配置会影响这一点
  • 在这个过程中,随机的未知钥匙被砰地一声关上了

好吧,一个答案是无条件的消费插件()

使用“gbp”可以内联粘贴块(我重新映射到[LEADER]pb)


它可以工作…

在执行块选择时是否复制行返回?如果您使用ctrl+V,沿着中间行使用ctrl+I,然后添加一个空格,退出并粘贴,可能会有所帮助。如果您一直使用
,行为应该是一致的(对我来说也是如此)。当然,您可以在粘贴之前检查
:echo getregtype(“”)
,它应该以
^V
开头。对不起。。。我说猛拉文本,并给出了一个剪切文本的例子…似乎我不是唯一的一个:这家伙正在尝试默认情况下不内联粘贴。我试图在默认情况下不粘贴新行。我有一个类似的问题,只是我没有看到不一致的行为-我的视觉块总是粘贴为新行(您的第二个示例),而我希望能够将块粘贴到现有行上,以重新排列文本列(如您的第一个示例)。大概有一些选项或替代粘贴命令可以切换这种行为-只需要找到它是什么…我确实知道vim有很多操作符,我确信有一些操作符组合可以一致地进行内联块粘贴内联/换行,但这并不是我所要求的。。。我只想不断地猛拉和粘贴块,这是我目前无法做到的。这可能是因为我无意中(看着另一个窗口)装配了一个命令,并弄乱了默认设置。我只是想控制自己的行为。我发誓我不会变得疯狂。。。我在Vim上做了同样的事情,观察到了不同的行为。除非。。。我真的疯了。。。问题是要花很长时间才能观察到行为上的变化,这很难诊断…@MtCS好吧,如果你觉得很难,想象一下我们在另一边。你说的不清楚。对不起,我说的不清楚。我确实尝试过在剪切后使用$p,但它对我不起作用。如果你用相同的文本重复我在这里使用的相同击键,并且它不起作用,那么唯一的解释就是有一个插件或配置弄乱了你的命令。再次尝试使用
Vim-u NONE
启动Vim以跳过初始化。我强烈建议您始终不要使用许多插件,直到您对Vim的工作原理有了基本了解。太晚了,我使用了几十个插件…:我不喜欢使用长命令在vim上执行高级操作。。。不过我喜欢插件。真是太好了,伙计。通过谷歌搜索找到了这个。直截了当地说,做我想做的事。