This extension connects coc.nvim to the clangd language server.
- install Node.js.
coc.nvimandcoc-clangdrun 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 coc-clangdwill try to findclangdfrom your$PATH, if not found, you can run:CocCommand clangd.installto install the latest release from GitHub- follow Project setup to generate
compile_commands.jsonfor your project
Note: If you've configured
clangdas 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, defaulttrueclangd.arguments: arguments forclangdserver, default[]clangd.checkUpdates: check for clangd language server updates on startup, defaultfalseclangd.disableDiagnostics: disable diagnostics from clangd, defaultfalseclangd.disableSnippetCompletion: disable completion snippet from clangd, defaultfalseclangd.compilationDatabasePath: specifies the directory containing the compilation database, default''clangd.fallbackFlags: extra clang flags used to parse files when no compilation database is found, default[]clangd.path: path toclangdexecutable, defaultclangdclangd.semanticHighlighting: enable semantic highlighting, requires jackguo380/vim-lsp-cxx-highlight to work, defaultfalse
clangd.switchSourceHeader: switch between source/header filesclangd.symbolInfo: resolve symbol info under the cursorclangd.install: install latest clangd release from GitHubclangd.update: check for updates to clangd from GitHub
Apache 2.0 with LLVM Exception
This is the standard LLVM license.
This extension is created by create-coc-extension