Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ruby): add ruby_lsp to list of installed lsp servers #1161

Closed
wants to merge 1 commit into from

Conversation

dsisnero
Copy link
Contributor

@dsisnero dsisnero commented Aug 14, 2024

📑 Add ruby_lsp to ruby

Add ruby_lsp for additional ruby lsp support

  • Not Completed
  • Completed

Copy link

Review Checklist

Does this PR follow the [Contribution Guidelines](development guidelines)? Following is a partial checklist:

Proper conventional commit scoping:

  • If you are adding a new plugin, the scope would be the name of the category it is being added into. ex. feat(utility): added noice.nvim plugin

  • If you are modifying a pre-existing plugin or pack, the scope would be the name of the plugin folder. ex. fix(noice-nvim): fix LSP handler error

  • Pull request title has the appropriate conventional commit type and scope where the scope is the name of the pre-existing directory in the project as described above

  • README is properly formatted and uses fenced in links with <url> unless they are inside a [title](url)

  • Entry returns a single plugin spec with the new plugin as the only top level spec (not applicable for recipes or packs).

  • Proper usage of opts table rather than setting things up with the config function.

  • Proper usage of specs table for all specs that are not dependencies of a given plugin (not applicable for recipes or packs).

@dsisnero dsisnero changed the title feat: add ruby_lsp to list of installed lsp servers feat(ruby): add ruby_lsp to list of installed lsp servers Aug 14, 2024
@Uzaaft
Copy link
Member

Uzaaft commented Aug 14, 2024

@dsisnero There is already a RUBY lsp in the pack.

@dsisnero
Copy link
Contributor Author

there is solargraph lsp, This add "ruby_lsp" in addition to the solargraph lsp

@ALameLlama
Copy link
Member

Solargraph is a ruby lsp https://github.com/castwide/solargraph they will both do the same job so you wouldn't want to have both running.

@Uzaaft
Copy link
Member

Uzaaft commented Aug 15, 2024

This PR seems be opened in confusion as to what solargraph does. Should atleast be bumped down to a draft for now.

@Uzaaft Uzaaft marked this pull request as draft August 15, 2024 13:59
@Uzaaft Uzaaft added the invalid This doesn't seem right label Aug 15, 2024
@Uzaaft Uzaaft closed this Aug 18, 2024
@dsisnero
Copy link
Contributor Author

I know what solargraph and ruby-lsp does. I was reading the neovim discourse and saw mentions of multiple lsp servers per buffer. Don't know if that is possible but was hoping it was. Would like to enable ruby-lsp for some of the capabilities and solargraph for some of the lsp capabilities

@Uzaaft
Copy link
Member

Uzaaft commented Aug 19, 2024

I know what solargraph and ruby-lsp does. I was reading the neovim discourse and saw mentions of multiple lsp servers per buffer. Don't know if that is possible but was hoping it was. Would like to enable ruby-lsp for some of the capabilities and solargraph for some of the lsp capabilities

That would be VERY smart to mention up front.
That's something you can do in your config.

@kaka-ruto
Copy link
Contributor

Ruby LSP is getting a lot better now and we should consider making it the default instead of solargraph https://railsatscale.com/2024-07-18-mastering-ruby-code-navigation-major-enhancements-in-ruby-lsp-2024/

@Uzaaft
Copy link
Member

Uzaaft commented Aug 28, 2024

Does it support the same feature set as solargraph? From what I've read, it doesn't seem so.

@kaka-ruto
Copy link
Contributor

kaka-ruto commented Aug 28, 2024

Solargraph currently supports the following

Hover
Completion
Signature help
Go to definition
Document symbols
Workspace symbols
Rename symbols
Find references
Formatting
Diagnostics (linting)

And the Ruby LSP features include

Hover
Go-to-Definition
Completion
Signature Help
Semantic highlighting
Symbol search and code outline
Linting errors and warnings (diagnostics)
Format on save
Format on type
Debugging support
Running and debugging tests through VS Code’s UI
Go to definition for classes, modules, constants and required files
Showing documentation on hover for classes, modules and constants
Completion for classes, modules, constants and require paths
Fuzzy search classes, modules and constants anywhere in the project and its dependencies (workspace symbol)
Go-to-Definition for ActiveRecord Model Callbacks and Associations
Navigation to Routes and Views
Code Navigation in .erb Files

Sure, a year ago Ruby LSP did not have most of these features, but this year the team has really done a lot and currently, it has more features and would be more helpful for us Ruby folks

@Uzaaft
Copy link
Member

Uzaaft commented Aug 28, 2024

At the end of the day, I honestly don't care about ruby. Feel free to re-open this PR, and remove the solargraph lsp if you'd like @dsisnero.

But your list(the one above this comment) is misleading at best. The solargraph list is incomplete, some of the ruby-lsp stuff is not relevant to neovim at all. But again, I dont care about ruby 🤷

@kaka-ruto
Copy link
Contributor

@dsisnero do you mind reopening this PR please

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
invalid This doesn't seem right
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants