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

Key bindings for builtins lsp_document/workspace_symbols #713

Open
zenhog opened this issue Apr 3, 2021 · 1 comment
Open

Key bindings for builtins lsp_document/workspace_symbols #713

zenhog opened this issue Apr 3, 2021 · 1 comment
Labels
enhancement Enhancement to performance, inner workings or existent features

Comments

@zenhog
Copy link

zenhog commented Apr 3, 2021

I feel like builtin lsp_document/workspace_symbols could implement key bindings to actually do things like lsp_reference, lsp_definition, lsp_implementation, etc ...
So far, you have to jump to a symbol through the lsp_XX_symbols builtins, then use the key binding necessary to do some lsp action. I feel like it should not be the case, since actions are mostly done on Symbols, the symbol list should have binding possibilities, just like C-V C-T for opening files in splits. An even further thing to consider would be to even initialize the filter text to the current symbol (if in a function, or if the cursor points to a global variable).
I think this can be done through custom picker functions, but I've never used neovim before with all this lua involved, so I don't feel comfortable diving into this.

@zenhog zenhog added the enhancement Enhancement to performance, inner workings or existent features label Apr 3, 2021
@fdschmidt93
Copy link
Member

Sounds interesting and worthwhile.

I'll pin down the request: in brief, the idea is to provide an action that bridges entries of lsp_{document, workspace}_symbols and several lsp pickers, which should be quite straightforward.

Happy to guide on a PR. I've added this to mentored projects #1190

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement to performance, inner workings or existent features
Projects
None yet
Development

No branches or pull requests

2 participants