2014-02-14 74 views
-1

我希望CSS/SCSS/JS文件具有不同的規則。這個問題感覺像是超常見的東西,但我無法找到任何東西!針對不同文件類型的不同vim規則

我嘗試這樣做,從我發現,它沒有工作

autocmd *.css, *.scss, *.js set shiftwidth=2 
autocmd *.css, *.scss, *.js set softtabstop=2 

autocmd *.rb set shiftwidth=4 
autocmd *.rb set softtabstop=4 

的錯誤是

E215: Illegal character after *: *.css, *.scss, *.js set shiftwidth=2 
+0

爲什麼這是一個Ruby,JavaScript或CSS的問題? –

回答

1

你離開了自動命令事件(一個或多個)的名稱。嘗試

:autocmd BufRead,BufNewFile *.css,*.scss,*.js set shiftwidth=2 softtabstop=2 
:autocmd BufRead,BufNewFile *.rb set shiftwidth=4 softtabstop=4 

或者(尤其是如果您使用更多文件類型和/或多個選項)使用filetype插件。開始於

:filetype plugin on 

並查看您是否喜歡默認ftplugins提供的設置。那麼,我剛剛檢查,並沒有CSS,JavaScript或紅寶石爲您設置'shiftwidth'選項。所以請閱讀

:help ftplugins 
:help ftplugin-overrule 

瞭解如何添加您自己的設置。

+0

'autocmd'和fullblown ftplugins的替代方法是'after/ftplugin'文件夾。請參閱':h after-directory'。我會想象這是設置這些的好地方。 –

+0

@PeterRincker:'/ ftplugin'目錄被描述爲':help ftplugin-overrule'下的一個選項,這部分幫助給出了更多的上下文。無論如何,這依賴於在用戶的vimrc文件中添加':filetype plugin on'。 – benjifisher

相關問題