Comments (8)
I think the defaults should provide the best experience with lsp-ui
, lsp-ui-peek
is intended to replace xref
so remapping those keybinding is the behavior I would expect as user.
Nothing stop you from using helm-xref
, does it ?
from lsp-ui.
A little tricky... helm-xref
does not provide entries like lsp-ui-peek-find-definitions
, instead it hijects xref-show-xrefs-function
and relies on xref-find-definitions/references
(require 'helm-xref)
(setq xref-show-xrefs-function 'helm-xref-show-xrefs)
helm-resume is useful and I think I may still use helm-xref occasionally (and for workspace/symbol)
from lsp-ui.
Another reason to not overload xref function is to make xref-find-definitions go to the definition and we may want peek interface to just peek the definition and not necessarily visit the file.
from lsp-ui.
i removed the remap, but then lsp-ui-peek-jump-backward doesn't work after that. Maybe we need to override then such that we can have a single interface to go back and forward the stack?
from lsp-ui.
@kvaneesh lsp-ui-peek-jump-backward works by injecting jump points into lsp-ui-peek--find-xrefs
.
(defun lsp-ui-peek--find-xrefs (input kind &optional request param)
"Find INPUT references.
KIND is 'references, 'definitions or a custom kind.
REQUEST PARAM."
;; ................
(when (featurep 'evil-jumps)
(lsp-ui-peek--with-evil-jumps (evil-set-jump)))
You need to inject it into xref--find-xrefs
if you also use xref-find-*
from lsp-ui.
Minor modes should generally not rebind key bindings that aren't specifically reserved to them. See https://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html. It's OK to document how to rebind the XRef keys, but lsp-ui
shouldn't do so by default.
from lsp-ui.
I hope you would not blame me.. Documented in README.md
from lsp-ui.
And FYI, I made up my mind to create a LSP layer for spacemacs. syl20bnr/spacemacs#10211 But my elisp skill is incapable to make it nice.
I believe there will be helm-xref or ivy-xref users.
from lsp-ui.
Related Issues (20)
- Changing semantic token face category of specific tokens? HOT 1
- doc-render issue in 29 HOT 6
- Long file paths in lsp-ui-peek-find show only prefix HOT 1
- lsp-ui-sideline pop message break line on emacs 29.0.60 HOT 11
- webkit lsp-ui-doc popup not showing up in emacs HOT 1
- lsp-ui-doc overlaps with completion-at-point popup and lsp-ui-doc-position not working
- lsp-ui breaks C-x 1
- lsp-ui-sideline no diagnostics HOT 1
- lsp-ui-doc-hide make emacs not responding unless press a arrow key HOT 2
- lsp-lens crashes, and get wrong-type-argument message HOT 1
- Add HTML space rendering to lsp-ui-doc
- LSP signature when typing function args HOT 2
- lsp-ui-doc-position 'at-point not working on terminal Emacs HOT 1
- code actions shown for entire line instead of only for issue at point HOT 1
- Bug: Warnings "Invalid face reference: lsp-flycheck-info-unnecessary" when using lsp-ui-sideline HOT 1
- Flymake support HOT 1
- Wrong key bindings in LSP UI flycheck <M-return> <return> HOT 1
- Another lsp-ui-doc markdown issue (lists) HOT 2
- lsp-ui-doc uses obsolete variable 'inhibit-point-motion-hooks'
- Show diagnostics for all lines in lsp-ui-sideline HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lsp-ui.