Updated lsp mode (markdown)

Tianyi Li 2022-04-18 20:54:52 -07:00
parent edfdbc7c39
commit 96592d02b3

@ -1,4 +1,4 @@
1. Install [lsp-mode](https://github.com/emacs-lsp/lsp-mode) and optionally, [lsp-ui](https://github.com/emacs-lsp/lsp-ui) + ~~[company-lsp](https://github.com/tigersoldier/company-lsp)~~ (company-lsp was deprecated and no longer works with lsp-mode, reference https://github.com/scalameta/metals/issues/2641) 1. Install [lsp-mode](https://github.com/emacs-lsp/lsp-mode) and optionally, [lsp-ui](https://github.com/emacs-lsp/lsp-ui) + ~~[company-lsp](https://github.com/tigersoldier/company-lsp)~~ (company-lsp was deprecated and no longer works with lsp-mode, reference https://github.com/scalameta/metals/issues/2641. You only can install it manually)
2. Install [emacs-ccls](https://github.com/MaskRay/emacs-ccls) (Melpa: https://melpa.org/#/ccls) and [configure](#configure) it 2. Install [emacs-ccls](https://github.com/MaskRay/emacs-ccls) (Melpa: https://melpa.org/#/ccls) and [configure](#configure) it
3. Open a source file where either [[.ccls|Project-Setup#ccls-file]] or [[compile_commands.json|Project-Setup#compile_commandsjson]] is in the project root (it works without them, if you don't need extra compiler command line options like `-I`) 3. Open a source file where either [[.ccls|Project-Setup#ccls-file]] or [[compile_commands.json|Project-Setup#compile_commandsjson]] is in the project root (it works without them, if you don't need extra compiler command line options like `-I`)
4. `(require 'ccls)`, `M-x lsp` 4. `(require 'ccls)`, `M-x lsp`
@ -185,9 +185,9 @@ lsp-ui-doc.el renders comments in a child frame (Emacs >= 26) or inline (< 26).
``` ```
### Completion ### Completion
DO NOT install company-lsp. This package is deprecated and no longer works with lsp-mode, https://github.com/scalameta/metals/issues/2641 DO NOT install company-lsp by melpa. This package is deprecated and no longer works with lsp-mode, from https://github.com/scalameta/metals/issues/2641. You can install it manually.
~~Add `company-lsp` to `company-backends`. ccls has a fuzzy matching algorithm to order candidates according to your query. You may want to disable client-side cache and sorting:~~ Add `company-lsp` to `company-backends`. ccls has a fuzzy matching algorithm to order candidates according to your query. You may want to disable client-side cache and sorting:
```elisp ```elisp
(setq company-transformers nil company-lsp-async t company-lsp-cache-candidates nil) (setq company-transformers nil company-lsp-async t company-lsp-cache-candidates nil)