SublimeLinter-Rubocop 即使在启用并且路径中有 rubocop 时也不会运行
Posted
技术标签:
【中文标题】SublimeLinter-Rubocop 即使在启用并且路径中有 rubocop 时也不会运行【英文标题】:SublimeLinter-Rubocop not running even when enabled and rubocop in path 【发布时间】:2017-06-04 20:34:27 【问题描述】:我正在尝试让 Rubocop 警告在 Sublime Text 3 中显示为代码标记。我正在使用 SublimeLinter
和 SublimeLinter-rubocop
包。 (类似的RuboCop
包确实有效,但似乎不支持代码标记。)
rubocop
已安装并从 rbenv shims 文件夹运行:
$ rubocop response_test.rb
...
1 file inspected, 11 offenses detected
SublimeLinter 正在使用 rbenv 垫片:
SublimeLinter: computed PATH using /bin/bash:
/Users/andrew/.rbenv/shims
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
扩展已启用:
...
"linters":
"rubocop":
"@disable": false,
"args": [],
"excludes": []
,
...
...
但是警告没有显示,而且 linter 甚至没有运行:
reloading settings Packages/User/SublimeLinter.sublime-settings
SublimeLinter: ruby: response_test.rb ['/usr/bin/ruby', '-wc']
SublimeLinter: ruby output:
Syntax OK
有什么可以解释的吗?我是 Rubocop 和 Sublime Text 的新手,所以我可能错过了一些基本的东西。
【问题讨论】:
【参考方案1】:我最近也遇到了同样的问题,刚刚解决了。 您可能已经想通了,但这是我的解决方案。
我认为问题在于您的 sublime 正在搜索系统原始 ruby 的路径/usr/bin/ruby'
。
你必须
首先,在Packages/User/SublimeLinter.sublime-settings
中为您的 ruby env(在我的情况下为 rbenv)指定正确的路径,如下所示:
...
"paths":
"linux": [],
"osx": [
"~/.rbenv/shims/"
],
"windows": []
,
...
之后完全关闭 sublime 并重新打开它。
希望这会有所帮助。
【讨论】:
这对我有用。但作为 RVM 用户,我的 OSX 路径看起来更像这样:“/Users/ckragt/.rvm/gems/ruby-2.5.3/bin”以上是关于SublimeLinter-Rubocop 即使在启用并且路径中有 rubocop 时也不会运行的主要内容,如果未能解决你的问题,请参考以下文章