小编kam*_*ish的帖子

Vim不会应用.vimrc中的某些设置

我的.vimrc有一个字符串"set tabstop = 4",但是当我打开一些东西时它不适用,例如python文件.这是我的完整.vimrc:

cnoremap Q q
au! BufWritePost .vimrc source %
set tabstop=4
set shiftwidth=4
set smarttab
set expandtab
set softtabstop=4
set autoindent
"set syntax=off
set t_co=256
Run Code Online (Sandbox Code Playgroud)

strace说vim读取/home/user/.vimrc,并且他真的读取了这个文件,例如,cnoremap有效,他取代:Q by:q如预期的那样,但是如果我,例如,取消注释set syntax=off,则不适用.另外,vim -V2接下来说:

...
?????????? ???????? "$HOME/.vimrc"
????? "syntax/off.vim syntax/off/*.vim" ? "/home/user/.vim,/usr/share/vim/vimfiles,/usr/share/vim/vim80,/usr/share/vim/vimfiles/after,/home/user/.vim/after"
not found in 'runtimepath': "syntax/off.vim syntax/off/*.vim"
...
Run Code Online (Sandbox Code Playgroud)

当然,我想,这是有选择的东西.但如果我在编辑器中制作:so $MYVIMRC,他会应用所有设置!

现在我使用bash别名vim ="vim -S~/.vimrc",并且在详细模式下,他应用.vimrc没有错误并按预期工作,但这是奇怪的解决方案.

这可能有什么问题?为什么vim不应用.vimrc中的tabstop /语法?

输出 :verb set ts

tabstop=8
        ? ????????? ??? ????? ???????? ? /usr/share/vim/vim80/ftplugin/python.vim
Run Code Online (Sandbox Code Playgroud)

输出:脚本名称

1: /etc/vimrc
  2: /usr/share/vim/vim80/syntax/syntax.vim …
Run Code Online (Sandbox Code Playgroud)

vim

5
推荐指数
1
解决办法
687
查看次数

标签 统计

vim ×1