当我在Vim中执行Rmodel,Rcontroller和其他人时。我只看到白色文字。
但当我转到下一个缓冲区,然后返回:bn
和:bl
时,颜色正常。
这是我的.vim文件夹 https://github.com/regedarek/dotvim
答案 0 :(得分:83)
使用:syntax sync fromstart
我从http://vim.wikia.com/wiki/Fix_syntax_highlighting
得到了这个提示该文章还建议为该命令创建映射,例如映射F12:
noremap <F12> <Esc>:syntax sync fromstart<CR>
inoremap <F12> <C-o>:syntax sync fromstart<CR>
答案 1 :(得分:40)
尝试:
:e
如果您没有未保存的文件更改。
或者:
:syn off | syn on
答案 2 :(得分:8)
有时语法是可以的,但所有被破坏的都是折叠。在这种情况下,zx
会有很多帮助。
来自VIM文档:
ZX
更新折叠:撤消手动打开和关闭折叠:重新应用 'foldlevel',然后执行“zv”:查看光标线。 还强制重新计算折叠。这在使用时很有用 'foldexpr'和缓冲区以导致的方式改变 折叠不能正确更新。
答案 3 :(得分:6)
尝试了以上所有 - 没有一个对我有用。
唯一有效的方法是:
:filetype detect
所以我重新制作了一个快捷方式
:noremap <Leader> :filetype detect
答案 4 :(得分:3)
另一种选择是:
doautocmd Syntax
答案 5 :(得分:0)
您也可以尝试:
CTRL-L
从VIM文档(:h CTRL-L
):
清除并重新绘制屏幕。处理提前输入后,重绘可能会在以后发生。
答案 6 :(得分:-1)