我正在使用屏幕将我正在使用Vim查看的代码从一个窗口复制到另一个当前使用Vim编辑文件的窗口。不幸的是,当粘贴到第二个窗口时,每个换行后我的输入左边的空白区域越来越多。这个空白如何进入我的缓冲区?
我试图在Vim添加额外的空格时关闭自动缩进,但问题仍然存在。
以下是可能相关的信息:
答案 0 :(得分:20)
您是使用鼠标还是其他非vim方式进行复制?如果是,则必须在粘贴前:set paste
和:set nopaste
之后执行。有关快速映射的信息,请参阅:h pastetoggle
。
如果您的所有vim会话都是本地的并且Vim支持它(:echo has('clipboard')<CR>
应该回显1
),您应该使用系统剪贴板:"+y
来抽取"+p
来粘贴没有那个讨厌的缩进。
或者,更好的是,在同一个Vim会话中打开文件。
答案 1 :(得分:0)
问题来自listchars
和eol
Vim在行尾添加一个字符,一些用户添加例如↲
要删除此额外字符,您需要不在列表框中设置eop,例如:
set listchars=tab:\ \ ,trail:-,extends:>,nbsp:\ ,precedes:<
选项卡将替换为空格,尾随空格将显示为 - 等等...
由于eol不存在,它将无法显示,这将解决您的问题