【发布时间】:2011-07-07 11:17:26
【问题描述】:
在 Vim 中,我想为每种文件类型使用不同的颜色方案。
eg 我想对 Python 和 JavaScript 文件使用 desert256 颜色方案,而对 HTML 使用 jellybeans 颜色方案 & CSS 文件。
我已尝试将以下代码放入我的 .vimrc,但颜色方案更改仅在第一次更改缓冲区时发生。
ie 如果我打开一个新的 Python 文件,则使用 Python 的颜色方案,并且当我打开一个新的 CSS *buffer*,确实颜色方案更改为 CSS 的颜色方案。但是,改回 Python 的缓冲区并不会改回颜色方案。
我已经使用autocmd WinEnter 尝试在更改窗口(和缓冲区)时实现此规则,但它没有帮助:
autocmd WinEnter,FileType python,javascript colorscheme desert256
autocmd WinEnter,FileType *,html,css colorscheme jellybeans " This includes default filetype colorscheme.
我该如何解决这个问题?此外,一个好处是在不需要时不更改颜色方案 - ie 从 Python 更改为 JavaScript 缓冲区不会改变“自身”的配色方案。
编辑:
如果有人感兴趣,here is my .vimrc repo in github.com。一旦给出,我将使用我在此处找到的解决方案对其进行更新。
【问题讨论】:
-
可能重复:Changing Vim indentation behavior by file type。解决方案都是一样的——ftplugin、autocmd。
标签: vim