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] Neovim support #34

Open
b0o opened this issue May 18, 2023 · 5 comments
Open

[Feature] Neovim support #34

b0o opened this issue May 18, 2023 · 5 comments
Labels
enhancement New feature or request

Comments

@b0o
Copy link

b0o commented May 18, 2023

Just want to say a big thanks for your extension - it's been a real life-saver while debugging complex types!

I'm a Neovim user, but I've got a VSCode instance running in the background just for your extension and a small handful of others. It would be amazing to see your extension as a Neovim plugin. I see from your dotfiles that you're a Neovim user as well, so I thought you might also be interested.

Considering the way you've modularized the extension, it seems creating a Neovim front-end should be pretty straightforward. What do you think? Perhaps using sidebar.nvim could make the process a bit easier?

Really looking forward to what comes next.

@mxsdev
Copy link
Owner

mxsdev commented May 19, 2023

Hi! Thanks so much for reaching out :)

I was originally planning a neovim extension, but never got around to it since I didn't know if it would be of use to anyone. In my experience there were not many web developers using neovim, it was predominantly systems programmers. Things move fast though so maybe that's changed? I also had to switch to VSCode for my job, so that didn't help either haha.

I have implemented nested/folding sidebars in neovim plugins so I feel comfortable enough with the UI side of things.

The main challenge I foresaw is figuring out how to interface with lspconfig in such a way as to (1) enable custom global compiler plugins and (2) send custom lsp requests. The api is probably mostly undocumented, so it would just be time consuming.

Your kind words are very motivating, though, so I'll take another look for sure!

@mxsdev mxsdev added the enhancement New feature or request label May 19, 2023
@b0o
Copy link
Author

b0o commented May 19, 2023

There are dozens of us!

For (2), I know of client.request(method, params, [handler], bufnr), as well as a lower-level interface via client.rpc.request({method}, {params}, {callback}, {notify_reply_callback}), those might help? I am personally not sure about (1).

@xlboy
Copy link

xlboy commented Aug 27, 2023

I have a need for this, along with some of my other friends who use neovim :)

@net
Copy link

net commented Apr 26, 2024

I would love this in Neovim ❤️

@mgray88
Copy link

mgray88 commented Nov 13, 2024

@b0o dozens!

The main challenge I foresaw is figuring out how to interface with lspconfig in such a way as to (1) enable custom global compiler plugins and (2) send custom lsp requests. The api is probably mostly undocumented, so it would just be time consuming

@mxsdev for (1), it looks like maybe the typescript-tools nvim plugin is handling lsp plugins: https://github.com/pmizio/typescript-tools.nvim/blob/f8c2e0b36b651c85f52ad5c5373ff8b07adc15a7/lua/typescript-tools/process.lua#L55

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

5 participants