diff --git a/dot_config/nvim/lsp/clangd.lua b/dot_config/nvim/lsp/clangd.lua new file mode 100644 index 0000000..65ebf8e --- /dev/null +++ b/dot_config/nvim/lsp/clangd.lua @@ -0,0 +1,22 @@ +return { + cmd = { "clangd" }, + filetypes = { + "c", "cpp", "objc", "objcpp", + "cuda", "proto", + }, + root_markers = { + ".clangd", + ".clang-tidy", + ".clang-format", + "compile_commands.json", + "compile_flags.txt", + "configure.ac", + "configure", + "config.h", + "Makefile", + ".git", + }, + capabilities = { + offsetEncoding = { "utf-16" }, + }, +} diff --git a/dot_config/nvim/lua/config/lsp.lua b/dot_config/nvim/lua/config/lsp.lua index f0584ea..5d72446 100644 --- a/dot_config/nvim/lua/config/lsp.lua +++ b/dot_config/nvim/lua/config/lsp.lua @@ -54,6 +54,7 @@ vim.api.nvim_create_autocmd("LspAttach", { vim.lsp.enable({ "lua_ls", "ols", + "clangd", }) -- Load Lsp on-demand, e.g: eslint is disable by default