helix-editor / helix

A post-modern modal text editor.
https://helix-editor.com
Mozilla Public License 2.0
33.67k stars 2.5k forks source link

Option to cycle through signature help signatures #5403

Closed Kenneth-Mata closed 6 months ago

Kenneth-Mata commented 1 year ago

I'm using omnisharp and i get the documentation popup which shows the documentation for the main implementation of the method but there doesn't seem to be a way to cycle through the different overloads.

2023-01-04_14-18

the-mikedavis commented 1 year ago

As far as I know the LSP spec does not support this. Does this work in any other editor you have tried?

Kenneth-Mata commented 1 year ago

i'll check out in emacs with eglot and see, feels very odd if the spec does not support it

Kenneth-Mata commented 1 year ago

As far as I know the LSP spec does not support this. Does this work in any other editor you have tried?

Looking around at this issue in lsp-mode (one lsp implementation for emacs) eglot does seem to do so, or at least doing so using signature help

the-mikedavis commented 1 year ago

Ah interesting, I bet those are keybindings to cycle through the signatures list: https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#signatureHelp

That would also be useful for languages with variadic functions where you might want to see a signature for a function with higher arity

Kenneth-Mata commented 1 year ago

Was curious how is this one going, today i happened to be looking at neovim and instead of cycling through the different signatures, they just call the full list and display it

jabcross commented 11 months ago

It works fine on VSCode with clangd, giving you the ability to cycle through the implementations with the up and down arrow keys. Is this currently in the roadmap? I am interested in implementing this, as it's one of the only sticking points preventing me from adopting helix for my C++ work.

image

Armando-CodeCafe commented 10 months ago

Bumping this because in csharp this is quite a hassle to constantly have to google the documentation of certain functions just to find out the overloads