configurationSubLime Linter插件以使用Ruby 1.9语法

我想获得SubLime Linter插件( https://github.com/Kronuz/SublimeLinter )来识别Ruby 1.9语法。 有没有人能够得到这个在SublimeText 2工作?

这是我目前的默认设置文件:

/* SublimeLinter default settings */ { /* Sets the mode in which SublimeLinter runs: true - Linting occurs in the background as you type (the default). false - Linting only occurs when you initiate it. "load-save" - Linting occurs only when a file is loaded and saved. */ "sublimelinter": true, /* Maps linters to executables for non-built in linters. If the executable is not in the default system path, or on posix systems in /usr/local/bin or ~/bin, then you must specify the full path to the executable. Linter names should be lowercase. This is the effective default map; your mappings may override these. "sublimelinter_executable_map": { "perl": "perl", "php": "php", "ruby": "ruby" }, */ "sublimelinter_executable_map": { }, /* Maps syntax names to linters. This allows variations on a syntax (for example "Python (Django)") to be linted. The key is the base filename of the .tmLanguage syntax files, and the value is the linter name (lowercase) the syntax maps to. */ "sublimelinter_syntax_map": { "Python Django": "python" }, // An array of linter names to disable. Names should be lowercase. "sublimelinter_disable": [ ], /* The minimum delay in seconds (fractional seconds are okay) before a linter is run when the "sublimelinter" setting is true. This allows you to have background linting active, but defer the actual linting until you are idle. When this value is greater than the built in linting delay, errors are erased when the file is modified, since the assumption is you don't want to see errors while you type. */ "sublimelinter_delay": 0, // If true, lines with errors or warnings will be filled in with the outline color. "sublimelinter_fill_outlines": false, // If true, lines with errors or warnings will have a gutter mark. "sublimelinter_gutter_marks": false, // If true, the find next/previous error commands will wrap. "sublimelinter_wrap_find": true, // If true, when the file is saved any errors will appear in a popup list "sublimelinter_popup_errors_on_save": false, // jshint: options for linting JavaScript. See http://jshint.com/#docs for more info. // By deault, eval is allowed. "jshint_options": { "evil": true, "regexdash": true, "browser": true, "wsh": true, "trailing": true, "sub": true, "strict": false }, // A list of pep8 error numbers to ignore. By default "line too long" errors are ignored. // The list of error codes is in this file: https://github.com/jcrocholl/pep8/blob/master/pep8.py. // Search for "Ennn:", where nnn is a 3-digit number. "pep8_ignore": [ "E501" ], /* If you use SublimeLinter for pyflakes checks, you can ignore some of the "undefined name xxx" errors (comes in handy if you work with post-processors, globals/builtins available only at runtime, etc.). You can control what names will be ignored with the user setting "pyflakes_ignore". Example: "pyflakes_ignore": [ "some_custom_builtin_o_mine", "A_GLOBAL_CONSTANT" ], */ "pyflakes_ignore": [ ], /* Ordinarily pyflakes will issue a warning when 'from foo import *' is used, but it is ignored since the warning is not that helpful. If you want to see this warning, set this option to false. */ "pyflakes_ignore_import_*": true, // Objective-J: if true, non-ascii characters are flagged as an error. "sublimelinter_objj_check_ascii": false } 

我能够使用我的ruby 1.9可执行文件的绝对path来工作。 我使用的是rbenv,所以为了得到我运行rbenv which ruby的path,你可能需要把/usr/local/bin/ruby或者/usr/local/bin/ruby19

这就是我的sublimelinter默认设置的样子(如果你愿意的话,你也可以把它放到一个项目特定的文件中:)

Preferences -> Package Settings -> SublimeLinter -> Settings - User

 "sublimelinter_executable_map": { "ruby": "~/.rbenv/versions/1.9.3-p0/bin/ruby" }, 

当使用rvm时,你应该可以使用rvm-auto-ruby

有这个问题,但我认为现在就解决了: https : //github.com/SublimeLinter/SublimeLinter/issues/30

所有,只是想编钟,因为我也有这个问题,下面的工作在Ubuntu上的ST2 v 2.0.1 User / SublimeLinter.sublime-settings文件

Preferences -> Package Settings -> SublimeLinter -> Settings - User

 { "sublimelinter_executable_map": { "ruby": "~/.rvm/bin/rvm-auto-ruby" } } 

添加完成后,重新启动ST2,进入控制台并通过运行以下命令来检查它是否已经更新:

 view.settings().get("sublimelinter_executable_map") 

你应该得到以下输出:

 {'ruby': u'~/.rvm/bin/rvm-auto-ruby'} 

我也能够得到这个工作,通过添加PATH和点ruby的rbenv垫到sublimelinter_executable_map(我认为这也是从官方文档推荐的方式。)这也使您可以切换ruby版本,而不必更新configuration了。

 { "sublimelinter_executable_map": { "path": "/usr/local/var/rbenv/shims:/Users/luke/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin", "ruby": "/usr/local/var/rbenv/shims/ruby" } } 

在SublimeLinter 3中,不需要额外的configuration就可以支持rbenv(希望是rvm)(除了确保它们在你的shell启动的正确位置初始化)。