This repository has been archived by the owner on Jul 31, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 286
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #551 from rubyide/remove_environment_support
Remote environment support
- Loading branch information
Showing
81 changed files
with
1,292 additions
and
1,053 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,3 +11,4 @@ coverage | |
.cache | ||
lerna-debug.log | ||
*.wasm | ||
build/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,63 +1,26 @@ | ||
# Visual Studio Code Ruby Extension | ||
# Visual Studio Code Ruby Extensions | ||
|
||
[![CircleCI](https://img.shields.io/circleci/build/github/rubyide/vscode-ruby?label=circleci&token=c9eaf03305b3fe24e8bc819f3f48060431e8e78f)](https://circleci.com/gh/rubyide/vscode-ruby) | ||
[![Build status](https://ci.appveyor.com/api/projects/status/vlgs2y7tsc4xpj4c?svg=true)](https://ci.appveyor.com/project/rebornix/vscode-ruby) | ||
[![codecov](https://codecov.io/gh/rubyide/vscode-ruby/branch/master/graph/badge.svg)](https://codecov.io/gh/rubyide/vscode-ruby) | ||
|
||
This extension provides Ruby language and debugging support for Visual Studio Code. | ||
This is the monorepo for the Visual Studio Code Ruby extensions. | ||
|
||
## Features | ||
Head on over to the [Ruby extension README](https://github.com/rubyide/vscode-ruby/blob/master/packages/vscode-ruby-client/README.md) to get started! | ||
|
||
- Automatic Ruby environment detection with support for rvm, rbenv, chruby, and asdf | ||
- Lint support via RuboCop, Standard, and Reek | ||
- Format support via RuboCop, Standard, Rufo, and RubyFMT | ||
- Semantic code folding support | ||
- Semantic highlighting support | ||
- Basic Intellisense support | ||
## Packages | ||
|
||
## Installation | ||
- [`vscode-ruby`](https://github.com/rubyide/vscode-ruby/blob/master/packages/vscode-ruby) - extension providing syntax highlighting, language configuration, and snippets for Ruby | ||
- [`vscode-ruby-client`](https://github.com/rubyide/vscode-ruby/blob/master/packages/vscode-ruby-client) - extension logic including the language server client | ||
- [`vscode-ruby-common`](https://github.com/rubyide/vscode-ruby/blob/master/packages/vscode-ruby-common) - common utilities that are shared among several other packages (eg environment detection) | ||
- [`vscode-ruby-debugger`](https://github.com/rubyide/vscode-ruby/blob/master/packages/vscode-ruby-debugger) - implementation of the debugger | ||
- [`language-server-ruby`](https://github.com/rubyide/vscode-ruby/blob/master/packages/language-server-ruby) - language server implementation | ||
<!-- - [`ruby-debug-ide-protocol`](https://github.com/rubyide/vscode-ruby/blob/master/packages/ruby-debug-ide-protocol) - implementation of the [ruby-debug-ide protocol](https://github.com/ruby-debug/ruby-debug-ide/blob/master/protocol-spec.md)r --> | ||
|
||
Search for `ruby` in the [VS Code Extension Gallery](https://code.visualstudio.com/docs/editor/extension-gallery) and install it! | ||
## Docs | ||
|
||
## Initial Configuration | ||
Documentation is available in the [docs](https://github.com/rubyide/vscode-ruby/tree/master/docs) folder | ||
|
||
By default, the extension provides sensible defaults for developers to get a better experience using Ruby in Visual Studio Code. However, these defaults do not include settings to enable features like formatting or linting. Given how dynamic Ruby projects can be (are you using rvm, rbenv, chruby, or asdf? Are your gems globally installed or via bundler? etc), the extension requires additional configuration for additional features to be available. | ||
## Developing | ||
|
||
### Using the Language Server | ||
|
||
It is **highly recommended** that you enable the Ruby language server (via the Use Language Server setting or `ruby.useLanguageServer` config option). The server does not default to enabled while it is under development but it provides a significantly better experience than the legacy extension functionality. See [docs/language-server.md](https://github.com/rubyide/vscode-ruby/blob/master/docs/language-server.md) for more information on the language server. | ||
|
||
Legacy functionality will most likely not receive additional improvements and will be fully removed when the extension hits v1.0 | ||
|
||
### Example Initial Configuration: | ||
|
||
```json | ||
"ruby.useBundler": true, //run non-lint commands with bundle exec | ||
"ruby.useLanguageServer": true, // use the internal language server (see below) | ||
"ruby.lint": { | ||
"rubocop": { | ||
"useBundler": true // enable rubocop via bundler | ||
}, | ||
"reek": { | ||
"useBundler": true // enable reek via bundler | ||
} | ||
}, | ||
"ruby.format": "rubocop" // use rubocop for formatting | ||
``` | ||
|
||
Reviewing the [linting](https://github.com/rubyide/vscode-ruby/blob/master/docs/linting.md) and [formatting](https://github.com/rubyide/vscode-ruby/blob/master/docs/formatting.md) docs is recommended | ||
|
||
For full details on configuration options, please take a look at the `Ruby` section in the VS Code settings UI. Each option is associated with a name and description. | ||
|
||
### Legacy Configuration | ||
|
||
[docs/legacy.md](https://github.com/rubyide/vscode-ruby/blob/master/docs/legacy.md) contains the documentation around the legacy functionality | ||
|
||
## Troubleshooting | ||
|
||
See [docs/troubleshooting.md](https://github.com/rubyide/vscode-ruby/blob/master/docs/troubleshooting.md) | ||
|
||
## Other Notable Extensions | ||
|
||
- [Ruby Solargraph](https://marketplace.visualstudio.com/items?itemName=castwide.solargraph) - Solargraph is a language server that provides intellisense, code completion, and inline documentation for Ruby. | ||
- [VSCode Endwise](https://github.com/kaiwood/vscode-endwise) - Wisely add "end" in Ruby | ||
See the [developing](https://github.com/rubyide/vscode-ruby/blob/master/docs/developing.md) docs |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.