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

[Feature] rocks --lsp command for rocks.toml #23

Open
mrcjkb opened this issue Jun 22, 2024 · 1 comment
Open

[Feature] rocks --lsp command for rocks.toml #23

mrcjkb opened this issue Jun 22, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@mrcjkb
Copy link
Member

mrcjkb commented Jun 22, 2024

  • We already have all the logic needed to query luarocks,org (except for custom servers like rocks-binaries) and parse versions, etc.
  • This could be used by rocks.nvim to provide
    • Diagnostics about outdated or out-of-sync1 rocks
    • Code actions for editing rocks.toml
    • Completions for rocks and versions
  • Not entirely sure if rocks is the right tool for this, but I think it would have better performance being in a separate process than within Neovim.
  • Would we want a separate rocks-lsp-lib crate, to keep it separate from rocks-lib?

Footnotes

  1. Would need the ability to query installed rocks - which has a different tree structure than rocks when installed with luarocks.

@mrcjkb mrcjkb self-assigned this Jun 22, 2024
@vhyrro
Copy link
Contributor

vhyrro commented Jul 2, 2024

If the LSP is "lightweight enough" (which I can imagine it being, since it's just reading a TOML file and providing basic diagnostics by using the library), we could happily make a rocks lsp subcommand that would launch the LSP.

We could gate this behind a feature flag for convenience, if someone really doesn't want the subcommand nor its dependencies :)

@mrcjkb mrcjkb added the enhancement New feature or request label Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants