在托管系统上,我通过 SSH 登录并使用 vim 编辑文件。通常,一旦我处于插入模式,我就可以从本地剪贴板粘贴到 ssh 窗口中,VIM 可以很好地接受它,但由于某种原因,该系统上的情况变得不稳定,文本到处都是。
我输入:set
以获取选项列表,这就是返回的内容:
--- Options ---
filetype=php history=50 ruler ttyfast viminfo='20,"50 t_Sf=^[[3%dm
helplang=en hlsearch syntax=php ttymouse=xterm2 t_Sb=^[[4%dm
backspace=indent,eol,start
comments=s1:/*,mb:*,ex:*/,://,:#
fileencoding=utf-8
fileencodings=utf-8,latin1
formatoptions=qrowcb
include=\(require\|include\)\(_once\)\?
indentexpr=GetPhpIndent()
indentkeys=0{,0},0),:,!^F,o,O,e,*<Return>,=?>,=<?,=*/
iskeyword=@,48-57,_,192-255,$
omnifunc=phpcomplete#CompletePHP
在其他系统上我通常只会看到这样的内容:
--- Options ---
background=dark history=50 ruler ttyfast viminfo='20,"50 t_Sf=^[[3%dm
filetype=php hlsearch syntax=php ttymouse=xterm2 t_Sb=^[[4%dm
backspace=indent,eol,start
我尝试将这些行添加到~/.vimrc
:
:set comments=
:set formatoptions=
:set include=
:set indentexpr=
:set indentkeys=
:set iskeyword=
:set omnifunc=
正在读取文件(如果出现语法错误vim
),但这无助于取消设置任何这些选项。这些选项也仅在编辑文件时出现.php
。
如何摆脱 vim 中的这些额外选项,而无需每次都手动输入上面列出的命令?
答案1
删除:
你的~/.vimrc
.你只需要在 vim 中使用它,它就隐含在这样的脚本中。
答案2
虽然不是将所有 vim 选项恢复为默认值的直接答案,但您可以使用它:set paste
来解决您的问题。
可能发生的情况是,vim 正在加载一个语法文件,该文件会在您键入时自动格式化该文件。您可以使用 暂时禁用此行为:set paste
,这会告诉 vim 根本不进行任何格式化。
完成粘贴后,您可以执行:set nopaste
或:set paste!
重新关闭粘贴模式。