配置vim以扩展选项卡,但某些文件类型除外

时间:2014-01-18 23:39:34

标签: vim indentation

人们通常会问如何扩展特定文件类型的选项卡 - 我希望在逆集上完成扩展:如何为所有文件类型扩展选项卡。

我已经为所有文件设置了全局设置:

set tabstop=4 shiftwidth=4 expandtab softtabstop=4 autoindent

我希望排除没有文件类型的所有文件以及以.txt结尾的文件。我已经尝试了像

这样的东西
if &filetype == ""
   setlocal noexpandtab noautoindent
endif

autocmd FileType "" set noexpandtab

无济于事。 (第一个匹配我的perl文件,第二个匹配任何东西)

1 个答案:

答案 0 :(得分:1)

可能只有当文件类型实际上已经设置时才会触发File Type事件,在您的情况下,这恰好相反。我会尝试类似的东西:

autocmd BufEnter * if &filetype == "" | setlocal noxpandtab | setlocal noautoindent | endif

这应该有效,也许您需要一些其他事件类型,而不仅仅是BufEnter。另外,不要忘记将您的autocmd包装在augroup中,否则它们可能会多次执行,请参阅http://learnvimscriptthehardway.stevelosh.com/chapters/14.html;)祝您好运!