diff --git a/lua/user/init.lua b/lua/user/init.lua index a03304c..095b4ce 100644 --- a/lua/user/init.lua +++ b/lua/user/init.lua @@ -22,7 +22,7 @@ local config = { -- Add plugins plugins = { -- Extended file type support - { "sheerun/vim-polyglot", lazy = false }, -- Community plugins + { "sheerun/vim-polyglot", lazy = false }, -- Community plugins "AstroNvim/astrocommunity", { import = "astrocommunity.pack.angular" }, { import = "astrocommunity.pack.ansible" }, @@ -79,6 +79,23 @@ local config = { "p00f/clangd_extensions.nvim", optional = true, opts = { extensions = { autoSetHints = true } }, + init = function() + -- load clangd extensions when clangd attaches + local augroup = vim.api.nvim_create_augroup("clangd_extensions", { clear = true }) + vim.api.nvim_create_autocmd("LspAttach", { + group = augroup, + desc = "Load clangd_extensions with clangd", + callback = function(args) + if assert(vim.lsp.get_client_by_id(args.data.client_id)).name == "clangd" then + require("clangd_extensions") + -- add more `clangd` setup here as needed such as loading autocmds + require("clangd_extensions.inlay_hints").setup_autocmd() + require("clangd_extensions.inlay_hints").set_inlay_hints() + vim.api.nvim_del_augroup_by_id(augroup) -- delete auto command since it only needs to happen once + end + end, + }) + end, }, { "simrat39/rust-tools.nvim",