为什么我只在VIM的某些项目中获得RSpec的语法高亮?

Jak*_*old 4 vim rspec syntax-highlighting

在开始一个新项目后不久,我意识到,我没有为我的RSpec文件获得正确的语法突出显示.

起初我认为这只是因为我的项目特定.vimrc,通过加载set exrc.但即使我删除它,它也无济于事.

我还认为问题出在spec文件本身,它没有被识别为RSpec,所以我从另一个项目中获取了一个文件,将其复制过来,但仍未正确突出显示.

语法高亮

这是在两个不同的地方打开的同一个文件.左边的那个在原始项目中,它突出显示,右边的那个是复制版本.

对于那个项目中的所有RSpec文件都会发生同样的事情,但它似乎可以在其他任何地方使用.

这是我的〜/ .vimrc,但我认为没有任何相关性,因为我之前从未遇到过这个问题,只是在这个特定的项目中.

luc*_*tte 9

你正在使用janus,所以你安装了rails.vim.正如您在此处所看到的,该插件为您定义了语法方法,这就是为什么只在rails项目中启用RSpec语法的原因.

如果要在每个spec文件中启用该syntaxt,可以将以下内容添加到vimrc:

autocmd BufRead *_spec.rb syn keyword rubyRspec describe context it specify it_should_behave_like before after setup subject its shared_examples_for shared_context let
highlight def link rubyRspec Function
Run Code Online (Sandbox Code Playgroud)