Eu nunca estou satisfeito com as respostas "defina todas essas coisas para o caso". Insisto em saber quais dessas coisas foram erradas e como elas foram acertadas. Aqui está um comando que mostra os valores de todas as configurações relevantes mencionadas aqui, bem como onde elas foram definidas pela última vez. Se nenhuma Last set from
linha seguir, é um valor padrão. Não faz sentido set
registrar valores padrão corretos.
:verbose set autoindent? smartindent? cindent? cinkeys? indentexpr?
noautoindent
nosmartindent
cindent
Last set from ~/.vim/vimrc
cinkeys=0{,0},0),:,!^F,o,O,e
Last set from ~/.vim/vimrc
indentexpr=
Press ENTER or type command to continue
Consulte: http://vimdoc.sourceforge.net/htmldoc/options.html#:set-verbose
Tudo o que eu precisava fazer era remover set smartindent
um plug-in e adicioná-lo ao meu ~/.vim/vimrc
:
set cindent cinkeys-=0#
set expandtab shiftwidth=4 tabstop=4 softtabstop=4