在{{Vim}}中,我想为每种文件类型使用不同的颜色方案。
例如,我想在{{Python}}和{{JavaScript}}文件中使用{{desert256}}颜色方案,并在{{HTML}}和{{CSS}}文件中使用{{jellybeans}}颜色方案。
我已经尝试将以下代码放入我的
即。如果我打开一个新的Python文件,则使用Python的颜色方案,并且当我打开一个新的CSS *缓冲区*时,确实会将颜色方案更改为CSS的颜色方案。但是,切换回Python的缓冲区不会将颜色方案更改回来。
我已经使用
例如,我想在{{Python}}和{{JavaScript}}文件中使用{{desert256}}颜色方案,并在{{HTML}}和{{CSS}}文件中使用{{jellybeans}}颜色方案。
我已经尝试将以下代码放入我的
.vimrc
中,但颜色方案的更改仅在第一次更改缓冲区时发生。即。如果我打开一个新的Python文件,则使用Python的颜色方案,并且当我打开一个新的CSS *缓冲区*时,确实会将颜色方案更改为CSS的颜色方案。但是,切换回Python的缓冲区不会将颜色方案更改回来。
我已经使用
autocmd WinEnter
尝试使此规则在更改窗口(和缓冲区)时发生,但没有帮助:autocmd WinEnter,FileType python,javascript colorscheme desert256
autocmd WinEnter,FileType *,html,css colorscheme jellybeans " This includes default filetype colorscheme.
我应该怎么修复这个问题?此外,一个额外的奖励是在不需要更改颜色方案时不更改它 - 即,从 Python 缓冲区切换到 JavaScript 缓冲区不会将颜色方案更改为“自身”。
编辑:
如果有人感兴趣,这是我的.vimrc
仓库在github.com上。一旦找到解决方案,我会在这里更新它。