This extension connects coc.nvim to the clangd language server.
The extension does not install clangd
for you! You must install clangd separately.
- make sure you have clangd installed already, and set up
compile_commands.json
for your project. - install Node.js.
coc.nvim
andcoc-clangd
run on Node.js. - install
coc.nvim
. Instructions usingvim-plug
(check out coc.nvim Wiki other options):- add to
.vimrc
:vim Plug 'neoclide/coc.nvim', {'branch': 'release'}
- in vim, run
:PlugInstall
- add to
- in vim, run
:CocInstall coc-clangd
Note: If you've configured
clangd
as a languageServer incoc-settings.json
, you should remove it to avoid running clangd twice!
clangd
supports some extensions that are not in the official Language Server Protocol specification.
coc-clangd
adds support for:
- Switching between header and implementation file:
:CocCommand clangd.switchSourceHeader
- File status monitor, shows on NeoVim statusline
- Describe symbol under the cursor:
:CocCommand clangd.symbolInfo
- Completions that adjust text near the cursor (e.g. correcting
.
to->
)
clangd.enabled
: enablecoc-clangd
, defaulttrue
clangd.disableDiagnostics
: disable diagnostics from clangd, defaultfalse
clangd.path
: path toclangd
executable, defaultclangd
clangd.arguments
: arguments forclangd
server, default[]
clangd.semanticHighlighting
: enable semantic highlighting, requires jackguo380/vim-lsp-cxx-highlight to work, defaultfalse
MIT
This extension is created by create-coc-extension