會留里

弹指间,心无间

vim自动匹配不同的配置文件

虽说在开发之前一般都会做好各种规范约束,是tab还是空格缩进,空格的话两个还是4个?

但在实际开发的过程中你往往会发现很多意外的情况。

  • 1.其它公司交接过来的项目。
  • 2.公司与个人的东西规范不一,经常搞混淆。

毕竟是人,总会有不小心的情况。 由此会产生各种无意义的提交,又或者调试了半天错误最后发现只是tab与空格之间不兼容所生的低级却让人懊恼的bug!

此时autocmd就是你的解决方案。

.vimrc:

set tabstop=2
set shiftwidth=2

autocmd BufNewFile,BufRead,Bufwrite /Sites/* set tabstop=4 shiftwidth=4

上述配置为全局2空格缩进,在最后一句autocmd声明了在 /Sites 下的所有文件进行编辑前将执行 set tabstop=4 shiftwidth=4 命令,也就是缩进变更为4空格。

Good luck~ :D