Vim错误的缩进

时间:2013-04-04 17:19:29

标签: ruby vim

我正在使用Vim编辑Windows 7 上的Ruby文件,我有缩进问题。在我的Ubuntu虚拟机上,具有相同的Vim设置,Ruby文件的缩进正确设置为2个字符。我没有必要指定expandtab或设置标签宽度。

我的_vimrc / .vimrc文件只是提供默认的vimrc_example文件,filetype plugin indent设置为on

这是我在Windows上获得的:

enter image description here

如果我输入:filetype,我会得到以下结果:

filetype detection:ON plugin:ON indent:ON

如果我输入:set filetype?,我会得到以下结果:

filetype=ruby

如果我输入:set indentexpr?,我会得到以下结果:

indentexpr=GetRubyIndent()

P.S。我对PHP也有同样的问题。

2 个答案:

答案 0 :(得分:3)

要为一种类型的文件设置缩进,请将以下内容放在autocmd文件中(或用于Windows ~/.vimrc),以使用_vimrc

autocmd BufNewFile,BufRead *.ruby set shiftwidth=2
autocmd BufNewFile,BufRead *.ruby set tabstop=2
autocmd BufNewFile,BufRead *.ruby set softtabstop=2

或者以更干净的方式做同样的事情,将ruby.vim文件放在~/.vim/ftplugin/内,其中包含以下内容:

set tabstop=2  
set softtabstop=2 
set shiftwidth=2

答案 1 :(得分:1)

好的,我有答案!
我暂时重命名了我的Ubuntu上的所有插件文件夹,直到找到了罪魁祸首! 优秀的vim-rails插件也为您设置expandtab和shiftwidth :) 现在我只需要在Windows上安装它。