Merge branch 'fix-clangd-root-dir'

i missed this PR earlier, was wondering why cpp setup was broken xD
This commit is contained in:
akioweh 2025-07-29 21:42:34 +04:00
commit 5a76d3847b
No known key found for this signature in database

View file

@ -60,18 +60,27 @@ return {
keys = { keys = {
{ "<leader>ch", "<cmd>ClangdSwitchSourceHeader<cr>", desc = "Switch Source/Header (C/C++)" }, { "<leader>ch", "<cmd>ClangdSwitchSourceHeader<cr>", desc = "Switch Source/Header (C/C++)" },
}, },
root_dir = function(fname) root_dir = function(bufnr, ondir)
return require("lspconfig.util").root_pattern( local root_directory = function(fname)
"Makefile", return require("lspconfig.util").root_pattern(
"configure.ac", "Makefile",
"configure.in", "configure.ac",
"config.h.in", "configure.in",
"meson.build", "config.h.in",
"meson_options.txt", "meson.build",
"build.ninja" "meson_options.txt",
)(fname) or require("lspconfig.util").root_pattern("compile_commands.json", "compile_flags.txt")( "build.ninja"
fname )(fname) or require("lspconfig.util").root_pattern(
) or require("lspconfig.util").find_git_ancestor(fname) "compile_commands.json",
"compile_flags.txt"
)(fname) or require("lspconfig.util").find_git_ancestor(fname)
end
if type(bufnr) == "string" then
return root_directory(bufnr)
else
local fname = vim.api.nvim_buf_get_name(bufnr)
ondir(root_directory(fname))
end
end, end,
capabilities = { capabilities = {
offsetEncoding = { "utf-16" }, offsetEncoding = { "utf-16" },