如何将多个标签行粘贴到Vi中?

tri*_*ley 23 vi vim

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

但是,如果我粘贴在页面上相互叠加的选项卡.

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

Ant*_*emi 49

如果你使用普通的vi:

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

<Esc> :set noai

<paste all you want>

<Esc> :set ai
Run Code Online (Sandbox Code Playgroud)

我有.exrc以下快捷方式:

map ^P :set noai^M
map ^N :set ai^M
Run Code Online (Sandbox Code Playgroud)

请注意,这些必须是实际的控制字符 - 使用Ctrl- V Ctrl- 插入它们P等等.

如果你正在使用vim:

使用该paste选项.除了禁用autoindent它还将设置其他选项,如textwidthwrapmargin粘贴友好的默认值:

<Esc> :set paste

<paste all you want>

<Esc> :set nopaste
Run Code Online (Sandbox Code Playgroud)

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

set pastetoggle=<C-P> " Ctrl-P toggles paste mode
Run Code Online (Sandbox Code Playgroud)