Description
Is your enhancement request related to a problem? Please describe.
I'm using eglot in emacs as my lsp-client. However, eglot does not support code-lenses, just code actions. That means it is currently impossible to use e.g. the eval plugin to evaluate code snippets.
Describe the solution you'd like
I would like to be able to use the eval as a code action; e.g. when the cursor is over foo/or maybe just when 'foo 5' is selected in a piece of code like:
-- >>> foo 5
--
I want hls to give my 'evaluate foo 5' as a code action (rather than/instead of) a code lens.
Describe alternatives you've considered
The alternative would be to implement and integrate code-lenses into eglot / emacs. However,
- since this pr has been open for quite a while, that does not really seem to move all that much, but maybe more importantly
- Even with lsp-mode I find the lens-actions overlays to show e.g. "evaluate" and/or type lenses fairly disruptive; (as e.g. it requires clicking on it), I think having eval be available as a code-action will make for much better integration into e.g. emacs/eglot (and potentially other mostly keyboard oriented editors).
Additional context
Since this functionality seems to already mostly exist in form of a code-lens, I'm optimistically hoping it would not be too much work to add this. I'd be happy to help implement it; but I simply wanted to raise an issue first to see if there are fundamental reasons why providing eval as a code-action (in addition to) a code-lens is undesirable.