Rubocop for Visual Studio Code
Visual Studio Code ใง rubocop ใๅฎ่กใใใจใฏในใใณใทใงใณใงใใ
This extension provides interfaces to rubocop for vscode.
rubocop is a code analyzer for ruby.
ruby rubocop in Code Market Place
Problems
This extension may have problems when using a rvm or chruby environment. We recommend vscode-ruby. It can also lint ruby code.
When autoCorrect is enabled, the history of changing file is broken.
Features
- lint by executing the command "Ruby: lint by rubocop" (cmd+shift+p and type command)
- auto invoke when saving file
- auto correct command "Ruby: autocorrect by rubocop"
Exclude file
The extension forces rubocop's force-exclusion
option.
If you do not want rubocop to be executed on some file, you can add AllCops/Exclude in rubocop.yml. The file can be saved without executing rubocop.
Installation
Installation of ruby and rubocop is required.
gem install rubocop
- Type F1 (or Command + Shift + P)
- execute "Extensions: install extension"
- type rubocop and execute
ext install ruby-rubocop
If VSCode market place is not configured in your FLOSS distribution of code (you have Open VSX instead):
- Go on VSCode Marketplace and clic on the Download Extension button.
- Install the extension manually from the CLI:
code --install-extension misogi.ruby-rubocop-0.8.5.vsix
ChangeLog
Configuration
Specify configuration (via navigating to File > Preferences > Workspace Settings
and editing file settings.json):
{
// If not specified searches for 'rubocop' executable available on PATH (default and recommended)
"ruby.rubocop.executePath": "",
// You can use specific path
// "ruby.rubocop.executePath": "/Users/you/.rbenv/shims/"
// "ruby.rubocop.executePath": "/Users/you/.rvm/gems/ruby-2.3.2/bin/"
// "ruby.rubocop.executePath": "D:/bin/Ruby22-x64/bin/"
// If not specified, it assumes a null value by default.
"ruby.rubocop.configFilePath": "/path/to/config/.rubocop.yml",
// default true
"ruby.rubocop.onSave": true
}
Keybindings
You can change the keybinding (via editing keybindings.json
)
{ "key": "ctrl+alt+l", "command": "ruby.rubocopAutocorrect",
"when": "editorLangId == 'ruby'" }
todo
- more configurable command line options (like -R)
- integration with rbenv
- testing & CI support
Contribute with this extension
Please install packages with yarn.
yarn install
You could install TSLint extension for .ts files.
Please format code using prettier.
yarn prettier src/* test/* --write
License
ใใฎใฝใใใฆใงใขใฏ MIT ใฉใคใปใณในใฎๅ ใงๅ ฌ้ใใใฆใใพใใLICENSE.txt ใใ่ฆงไธใใใ
This software is released under the MIT License, see LICENSE.txt.