我想将从桌面剪切的内容粘贴到在 Vi 中打开的文件中。

但是,如果我将选项卡粘贴到页面上的彼此之上。

我认为这是某种视觉模式的改变,但找不到命令。

有帮助吗?

解决方案

如果您使用普通 vi:

你可能有 autoindent 在。要在粘贴时将其关闭:

<Esc> :set noai

<paste all you want>

<Esc> :set ai

我在我的 .exrc 以下快捷键:

map ^P :set noai^M
map ^N :set ai^M

请注意,这些必须是实际的控制字符 - 使用以下命令插入它们 控制键-V 控制键- 等等。

如果您使用的是 vim:

使用 paste 选项。除了禁用之外 autoindent 它还会设置其他选项,例如 textwidthwrapmargin 粘贴友好的默认值:

<Esc> :set paste

<paste all you want>

<Esc> :set nopaste

您还可以设置一个键来切换粘贴模式。我的 .vimrc 有以下行:

set pastetoggle=<C-P> " Ctrl-P toggles paste mode

其他提示

如果您使用 VIM,则可以使用“*p(即双引号、星号、字母 p)。

我发现如果我首先将制表符行复制到文本编辑器中,然后将它们从那里重新复制到 vim,那么制表符是正确的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top