diff --git a/init.lua b/init.lua index 5b51ffb..b5fa448 100644 --- a/init.lua +++ b/init.lua @@ -187,22 +187,30 @@ require("lazy").setup({ { "neovim/nvim-lspconfig", config = function() - local lspconfig = require('lspconfig') - - lspconfig.cmake.setup{} - - lspconfig.omnisharp.setup{ - cmd = { "omnisharp" }, - filetypes = { "cs", "vb" }, - root_dir = lspconfig.util.root_pattern(".git", ".csproj", ".sln") - } - - vim.keymap.set("n", "e", vim.diagnostic.open_float) - vim.keymap.set("n", "[d", vim.diagnostic.goto_prev) - vim.keymap.set("n", "]d", vim.diagnostic.goto_next) - vim.keymap.set("n", "q", vim.diagnostic.setloclist) - end - }, + local lspconfig = require("lspconfig") + lspconfig.cmake.setup {} + lspconfig.omnisharp.setup { + cmd = { "omnisharp" }, + filetypes = { "cs", "vb" }, + root_dir = lspconfig.util.root_pattern(".git", ".csproj", ".sln"), + } + lspconfig.clangd.setup { + cmd = { "clangd" }, + filetypes = { "c", "cpp", "objc", "objcpp" }, + root_dir = lspconfig.util.root_pattern("compile_commands.json", ".git"), + } + lspconfig.dartls.setup { + cmd = { "dart", "language-server", "--protocol=lsp" }, + filetypes = { "dart" }, + init_options = { + closingLabels = true, + outline = true, + flutterOutline = true, + }, + root_dir = lspconfig.util.root_pattern("pubspec.yaml"), + } + end, + }, { "stevearc/conform.nvim", event = { "BufWritePre" },