Vim不断改变expandtab

时间:2014-07-23 22:54:34

标签: vim

有时候Vim会不断更改我的expandtab设置。我总是想要特定文件类型的空格,但有时候,当我插入一个新行时,它会给我一个标签。

verb set expandtab?

告诉我nonexpandtab已在此文件中设置:

set autoindent
set expandtab
set shiftwidth=4
set numberwidth=4
set softtabstop=4
set smartindent
autocmd FileType ruby,php,vim,jade,erb,css,scss,html,coffee,javascript setlocal expandtab sw=2 sts=2
au FileType xml exe ":silent 1,$!XMLLINT_INDENT='    ' xmllint --format --recover - 2>/dev/null"
set backspace=indent,eol,start

" Command to set how many spaces
command! -nargs=1 SetSpace call s:SetSpace(<f-args>)
function! s:SetSpace(space)
  setlocal expandtab sta
  let &sw = a:space
  let &sts = a:space
endfunction

究竟在哪里set noexpandtab

更新
我注意到当我输入一个新行并且该行恰好缩进为8个空格然后Vim转换为制表符时会发生此问题。如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

遗憾的是,:verbose set并未捕获所有个实例,因此可能没有给出错误答案。

或者,您可以使用vim -V20vimlog捕获Vim会话的完整日志。退出Vim后,检查vimlog日志文件是否有可疑命令。