From d71ebeab24565bb109adc68253c2da6614eb5dda Mon Sep 17 00:00:00 2001 From: Amaan Qureshi Date: Fri, 21 Jul 2023 16:35:02 -0400 Subject: [PATCH] feat(clangd): better clangd root detection (#1165) --- lua/lazyvim/plugins/extras/lang/clangd.lua | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/lua/lazyvim/plugins/extras/lang/clangd.lua b/lua/lazyvim/plugins/extras/lang/clangd.lua index 339a8b8f..d9ce751c 100644 --- a/lua/lazyvim/plugins/extras/lang/clangd.lua +++ b/lua/lazyvim/plugins/extras/lang/clangd.lua @@ -53,14 +53,19 @@ return { keys = { { "cR", "ClangdSwitchSourceHeader", desc = "Switch Source/Header (C/C++)" }, }, - root_dir = function(...) - -- using a root .clang-format or .clang-tidy file messes up projects, so remove them + root_dir = function(fname) return require("lspconfig.util").root_pattern( - "compile_commands.json", - "compile_flags.txt", + "Makefile", + "CMakeLists.txt", "configure.ac", - ".git" - )(...) + "configure.in", + "config.h.in", + "meson.build", + "meson_options.txt", + "build.ninja" + )(fname) or require("lspconfig.util").root_pattern("compile_commands.json", "compile_flags.txt")( + fname + ) or require("lspconfig.util").find_git_ancestor(fname) end, capabilities = { offsetEncoding = { "utf-16" },