如何阻止vim在粘贴剪贴板时插入注释字符



当我将像下面这样的行粘贴到Vim中时,

" OmniCppComplete
let OmniCpp_NamespaceSearch = 1

Vim自动将"注释字符添加到所有行。我怎么去掉这个,让它像原来那样粘起来呢?

What I'm getting after the paste in Vim:
 66     " OmniCppComplete
 67     " let OmniCpp_NamespaceSearch = 1

两个主要选项:

  • 直接从寄存器中插入而不进入插入模式,使用 "+p
    • "表示"使用以下寄存器";
    • +为剪贴板,
    • p for put!

如果您在Linux中使用中键选择粘贴,请使用*而不是+来引用它。

  • 进入插入模式粘贴前,请先运行:set paste。使用:set nopaste离开插入模式后将其关闭。

在Vim中进入模式:set paste。然后按Ctrl + Shift + V

会成功的。

不要通过编辑和粘贴来粘贴。不行

到目前为止,每个人都没有抓住重点。当你开始一个新的行时,Vim会自动插入注释字段(无论是从粘贴还是从输入)。

您设置了至少带有r或o选项的格式选项。要查看您的设置,键入

:set formatoptions?

要删除这些选项,输入

:set formatoptions=

粘贴将按照您期望的方式工作。

类型
:help fo-table

查看formatoptions中每个字母的含义

当您在UI中使用Vim时,转到菜单TerminalReset并清除。然后尝试粘贴您的代码。

它会被原样粘贴。

最新更新