Awesome
lsp-ui
<!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-refresh-toc -->Table of Contents
<!-- markdown-toc end -->Intro
This package contains all the higher level UI modules of lsp-mode
, like flycheck support and code lenses.
By default, lsp-mode
automatically activates lsp-ui
unless lsp-auto-configure
is set to nil
.
You only have to put (use-package lsp-ui)
in your config and the package will work out of the box.
(use-package)
Or use the builtin package manager.
M-x package-install [RET] lsp-ui [RET]
lsp-ui-sideline:
Show informations of the symbols on the current line. It also show flycheck diagnostics and LSP code actions
Customization:
lsp-ui-sideline-show-diagnostics
show diagnostics messages in sidelinelsp-ui-sideline-show-hover
show hover messages in sidelinelsp-ui-sideline-show-code-actions
show code actions in sidelinelsp-ui-sideline-update-mode
When set to 'line' the information will be updated when user changes current line otherwise the information will be updated when user changes current pointlsp-ui-sideline-delay
seconds to wait before showing sideline
lsp-ui-peek:
Add peek feature
You may remap xref-find-{definitions,references}
(bound to <kbd>M-.</kbd> <kbd>M-?</kbd> by default):
(define-key lsp-ui-mode-map [remap xref-find-definitions] #'lsp-ui-peek-find-definitions)
(define-key lsp-ui-mode-map [remap xref-find-references] #'lsp-ui-peek-find-references)
There is a window-local jump list dedicated to cross references:
(lsp-ui-peek-jump-backward)
(lsp-ui-peek-jump-forward)
Other cross references:
(lsp-ui-peek-find-workspace-symbol "pattern 0")
;; If the server supports custom cross references
(lsp-ui-peek-find-custom 'base "$cquery/base")
Customization:
lsp-ui-peek-enable
enable ‘lsp-ui-peek’lsp-ui-peek-show-directory
show the directory of files
lsp-ui-doc
Show object documentation at point in a child frame.
Show documentation in a WebKit widget
Focus into lsp-ui-doc-frame
Customization:
lsp-ui-doc-enable
Enable lsp-ui-doclsp-ui-doc-position
Where to display the doc (top, bottom or at-point)lsp-ui-doc-side
Where to display the doc (left or right)lsp-ui-doc-delay
Number of seconds before showing the doclsp-ui-doc-show-with-cursor
When non-nil, move the cursor over a symbol to show the doclsp-ui-doc-show-with-mouse
When non-nil, move the mouse pointer over a symbol to show the doc
lsp-ui-imenu
Show imenu entries.
Customization:
lsp-ui-imenu-kind-position
place to show entries kindlsp-ui-imenu-buffer-position
place to show the buffer windowlsp-ui-imenu-window-width
set window widthlsp-ui-imenu-window-fix-width
when non-nil, the window will not be resizable (eg. unaffected bybalance-windows
)lsp-ui-imenu--custom-mode-line-format
mode line formatlsp-ui-imenu-auto-refresh
auto refresh when necessarylsp-ui-imenu-refresh-delay
delay to refresh imenu
Contributing
Any kind of help is appreciated. If you want to help us maintaining this package, leave a note.