aboutsummaryrefslogtreecommitdiff
path: root/store/home/config/nvim/lua/setup/lsp/clangd.lua
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-03-12 22:50:12 +0800
committerYuqian Yang <crupest@crupest.life>2025-03-12 22:50:12 +0800
commit3ad034a1b5755bd5d8ebed71637dedb9089a7dce (patch)
tree228aed35af429f3819b897da2dd3b12742063f7d /store/home/config/nvim/lua/setup/lsp/clangd.lua
parent117afbc9af2cd4fd515d7fdbda8a1fa44c3d8a74 (diff)
downloadcrupest-3ad034a1b5755bd5d8ebed71637dedb9089a7dce.tar.gz
crupest-3ad034a1b5755bd5d8ebed71637dedb9089a7dce.tar.bz2
crupest-3ad034a1b5755bd5d8ebed71637dedb9089a7dce.zip
feat(nvim): improve configs a lot.HEADmain
Diffstat (limited to 'store/home/config/nvim/lua/setup/lsp/clangd.lua')
-rw-r--r--store/home/config/nvim/lua/setup/lsp/clangd.lua25
1 files changed, 25 insertions, 0 deletions
diff --git a/store/home/config/nvim/lua/setup/lsp/clangd.lua b/store/home/config/nvim/lua/setup/lsp/clangd.lua
new file mode 100644
index 0000000..6080510
--- /dev/null
+++ b/store/home/config/nvim/lua/setup/lsp/clangd.lua
@@ -0,0 +1,25 @@
+local lspconfig = require("lspconfig")
+
+local brew_clangd_path = "/usr/local/opt/llvm/bin/clangd"
+
+local function setup()
+ local clangd = "clangd"
+
+ if vim.uv.fs_stat(brew_clangd_path) ~= nil then
+ clangd = brew_clangd_path
+ end
+
+ -- setup lsp clangd
+ lspconfig.clangd.setup {
+ cmd = { clangd },
+ on_attach = function(_, bufnr)
+ vim.keymap.set('n', 'grs', "<cmd>ClangdSwitchSourceHeader<cr>", {
+ buffer = bufnr
+ })
+ end
+ }
+end
+
+return {
+ setup = setup
+}