[英]How to enable Rubocop with Syntastic Vim plugin and Rbenv?
我想启用Syntastic的Rubocop检查器。 我已经设置了它具有检查器,并给出了可执行文件的路径。 尽管:SyntasticInfo
报告它不是活动的检查器。 另外:SyntasticCheck rubocop
报告说rubocop不是可用的检查器。
我还需要其他设置吗? 这可能是由rubocop --version
给出的警告消息引起的吗?
.vimrc设置
let g:syntastic_ruby_checkers = ['rubocop', 'mri']
let g:syntastic_ruby_rubocop_exec = '/Users/jjasonclark/.rbenv/shims/rubocop'
rubocop警告消息
warning: parser/current is loading parser/ruby21, which recognizes
warning: 2.1.5-compliant syntax, but you are running 2.1.2.
0.26.0
编辑:根据评论,我发现了一个部分的解决方法。 可以使用命令行参数来调用RBENV垫片,以指定Ruby版本。 这适用于手动运行命令,但不适用于Syntastic插件。 我的猜测是它不起作用,因为来自Rubocop的关于解析器版本的警告消息。
let g:syntastic_ruby_rubocop_exec = 'RBENV_VERSION=2.1.2 /Users/jjasonclark/.rbenv/shims/rubocop'
编辑:我安装了Ruby 2.1.5,并更新了RBENV_VERSION
值以成功删除警告消息。 这仍然不能启用Rubocop for Syntastic。 :SyntasticCheck rubocop
仍报告syntastic: warning: checker rubocop is not available
Syntastic正在加载错误版本的Ruby。 在命令行中,输入ruby -v && which ruby
。
现在,将设置的第二行更改为:
let g:syntastic_ruby_rubocop_exec = '/Users/jjasonclark/.rbenv/shims/ruby /Users/jjasonclark/yourprojectname/bin/rubocop'
使用which ruby
路径显示which ruby
和which rubocop
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.