From 8eaa615596be321a3be12378c5e7d65cc7e482b6 Mon Sep 17 00:00:00 2001 From: Squibid Date: Fri, 24 Jan 2025 13:56:11 -0600 Subject: kitchen sink --- lua/lsps/clangd.lua | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lua/lsps/clangd.lua (limited to 'lua/lsps/clangd.lua') diff --git a/lua/lsps/clangd.lua b/lua/lsps/clangd.lua new file mode 100644 index 0000000..05ebfb7 --- /dev/null +++ b/lua/lsps/clangd.lua @@ -0,0 +1,31 @@ +local map = require('core.misc').map + +return function(server_name, attach, capabilities) + require('lspconfig')[server_name].setup { + on_attach = function(client, bufnr) + attach(client, bufnr) + + -- add some clangd specific mappings + local opts = { buffer = bufnr } + map("n", "o", "ClangdSwitchSourceHeader", opts) + end, + capabilities = capabilities, + + cmd = { + "clangd", + "--background-index", + "--clang-tidy", + "--header-insertion=iwyu", + "--completion-style=detailed", + "--function-arg-placeholders", + "--fallback-style=llvm" + }, + init_options = { + usePlaceholders = true, + clangdFileStatus = true, + fallback_flags = { + "-xc" -- makes clangd think we're using c instead of c++ + } + } + } +end -- cgit v1.2.1