feat: linting and diagnostics
commit
2c743d5652
|
@ -0,0 +1,10 @@
|
|||
require:
|
||||
- standard
|
||||
- standard-custom
|
||||
- standard-performance
|
||||
- rubocop-performance
|
||||
|
||||
inherit_gem:
|
||||
standard: config/base.yml
|
||||
standard-custom: config/base.yml
|
||||
standard-performance: config/base.yml
|
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
include:
|
||||
- "**/*.rb"
|
||||
exclude:
|
||||
- spec/**/*
|
||||
- test/**/*
|
||||
- vendor/**/*
|
||||
- ".bundle/**/*"
|
||||
require: []
|
||||
domains: []
|
||||
reporters:
|
||||
- rubocop
|
||||
- require_not_found
|
||||
- typecheck
|
||||
require_paths: []
|
||||
plugins: []
|
||||
max_files: 5000
|
|
@ -0,0 +1,7 @@
|
|||
source "https://rubygems.org"
|
||||
|
||||
group :development do
|
||||
gem "rdoc"
|
||||
gem "rubocop"
|
||||
gem "solargraph"
|
||||
end
|
|
@ -0,0 +1,48 @@
|
|||
# Ruby Starter
|
||||
|
||||
A super simple Ruby starter project.
|
||||
|
||||
Rubocop and Solargraph are included for linting and code completion, respectively and are configured to be used with [Zed](https://zed.dev/).
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- [Ruby](https://www.ruby-lang.org/en/documentation/installation/)
|
||||
- [Bundler](https://bundler.io/)
|
||||
- [StandardRB](https://github.com/standardrb/standard)
|
||||
|
||||
## Setup
|
||||
|
||||
1. Clone this repository
|
||||
2. Install dependencies: `bundle install`
|
||||
3. Write awesome code
|
||||
|
||||
## Usage with Zed
|
||||
|
||||
Zed is a rough-around-the-edges editor in Beta. It's not very configurable yet,
|
||||
so we're locked into using Solargraph as our language server. Solargraph is
|
||||
only officially compatible with [Rubocop](https://rubocop.org/) _(ACAB)_ for linting, but we use our ruleset of choice, [StandardRB] by configuring it in `.rubocop.yml`.
|
||||
|
||||
For now, make sure that StandardRB is installed globally, as Zed can't yet reach
|
||||
into your local Gem's, as far as we are aware.
|
||||
|
||||
Solargraph is configured in `.solargraph.yml` to use robocop, but to enable
|
||||
inline diagnostics and formatting on save you must add the following to your Zed
|
||||
`settings.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"lsp": {
|
||||
"solargraph": {
|
||||
"initialization_options": {
|
||||
"diagnostics": true,
|
||||
"formatting": true,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
If you'd like to generate some user-friendly documentation, you can run
|
||||
`rake` on the command line to generate some HTML docs in the `rdoc` directory, made up of your comments and some metadata from your code.
|
Loading…
Reference in New Issue