return { { "stevearc/conform.nvim", event = "BufWritePre", config = function() require "configs.conform" end, }, { "christoomey/vim-tmux-navigator", lazy = false, }, { "williamboman/mason.nvim", opts = { ensure_installed = { "gopls", "rust-analyzer", "pyright", "mypy", "ruff", "black", "debugpy", "powershell-editor-services", "bash-language-server", "eslint-lsp", "js-debug-adapter", "prettier", "typescript-language-server", }, }, }, { "nvim-treesitter/nvim-treesitter", opts = { ensure_installed = { "lua", "javascript", "typescript", "tsx", "go", "terraform", "c_sharp", "bash", }, }, }, { "neovim/nvim-lspconfig", config = function() require("nvchad.configs.lspconfig").defaults() require "configs.lspconfig" end, }, { "lewis6991/gitsigns.nvim", config = function() require("gitsigns").setup() end, }, { "tpope/vim-fugitive", }, -- Golang { "olexsmir/gopher.nvim", ft = "go", config = function(_, opts) require("gopher").setup(opts) end, build = function() vim.cmd [[silent! GoInstallDeps]] end, }, -- Dap { "mfussenegger/nvim-dap", }, { "nvim-neotest/nvim-nio", }, { "rcarriga/nvim-dap-ui", dependencies = "mfussenegger/nvim-dap", config = function() local dap = require "dap" local dapui = require "dapui" dapui.setup() dap.listeners.after.event_initialized["dapui_config"] = function() dapui.open() end dap.listeners.before.event_terminated["dapui_config"] = function() dapui.close() end dap.listeners.before.event_exited["dapui_config"] = function() dapui.close() end end, }, { "dreamsofcode-io/nvim-dap-go", ft = "go", dependencies = { "mfussenegger/nvim-dap", "rcarriga/nvim-dap-ui", }, config = function(_, opts) require("dap-go").setup(opts) -- require("core.utils").load_mappings "dap_go" end, }, }