Add client feature table

Fangrui Song 2018-11-15 20:39:08 -08:00
parent 67460ce964
commit 051ff96a45
2 changed files with 40 additions and 0 deletions

39
Client-feature-table.md Normal file

@ -0,0 +1,39 @@
| Client | codeLens | Diagnostics | documentHighlight | Custom Location[] requests | hierarchicalDocumentSymbol |
|-------------------------|---|-----------------|---|---------|---|
| [atom-ide-ccls] | ✓ | ✓ | ✓ | | |
| [eglot] | | flymake | ✓ | | |
| [emacs-ccls] | ✓ | lsp-ui-flycheck | ✓ | ✓ | ✓ |
| [ale] | | ✓ | | | |
| [LanguageClient-neovim] | | ✓ | ✓ | ✓ | |
| [vim-lsp] | | | | | |
| [vscode-ccls] | ✓ | ✓ | ✓ | Partial | |
| Client | hover | onTypeFormatting | semanticHighlight | signatureHelp | snippets |
|-------------------------|-------|------------------|-------------------|---------------|----------|
| [atom-ide-ccls] | ✓ | ✓ | ✓ | ✓ | ✓ |
| [eglot] | ✓ | | | echo area | ✓ |
| [emacs-ccls] | ✓ | ✓ | ✓ | echo area | ✓ |
| [ale] | ✓ | | | | |
| [LanguageClient-neovim] | ✓ | | | ✓ | |
| [vim-lsp] | ✓ | | | | |
| [vscode-ccls] | ✓ | ✓ | ✓ | dropdown | ✓ |
* Atom IDE: [atom-ide-ccls]
* Emacs: [eglot] [emacs-ccls](depended on [lsp-mode])
* (Neo)Vim: [ale] [coc.nvim] [LanguageClient-neovim] [vim-lsp]
* VSCode: [vscode-ccls]
### Custom `Location[]` requests
ccls supports many cross reference exntensions (requests that return `Location[]` like `textDocument/definition`), see
https://github.com/MaskRay/ccls/wiki/FAQ#definitions and following sections.
[ale]: https://github.com/w0rp/ale
[coc.nvim]: https://github.com/neoclide/coc.nvim
[eglot]: https://github.com/joaotavora/eglot
[emacs-ccls]: https://github.com/MaskRay/emacs-ccls
[atom-ide-ccls]: https://github.com/isundaylee/atom-ide-ccls
[LanguageClient-neovim]: https://github.com/autozimu/LanguageClient-neovim
[lsp-mode]: https://github.com/emacs-lsp/lsp-mode
[vim-lsp]: https://github.com/prabirshrestha/vim-lsp
[vscode-ccls]: https://github.com/MaskRay/vscode-ccls

@ -10,3 +10,4 @@
- [[vim-lsp]] - [[vim-lsp]]
- [[Visual Studio Code]] - [[Visual Studio Code]]
* [[Debugging]] * [[Debugging]]
* [[Client feature table]]