update dap

This commit is contained in:
2025-05-20 15:54:32 -05:00
parent 2efcf9f592
commit dadd13a702
4 changed files with 104 additions and 56 deletions

View File

@@ -1,12 +1,7 @@
return {
{
"mfussenegger/nvim-dap",
dependencies = {
"rcarriga/nvim-dap-ui",
"theHamsta/nvim-dap-virtual-text",
"nvim-neotest/nvim-nio",
"williamboman/mason.nvim",
},
dependencies = {},
config = function()
local dap = require("dap")
dap.adapters.dart = {
@@ -14,11 +9,33 @@ return {
command = "flutter",
args = { "debug_adapter" },
}
local ui = require("dapui")
require("dapui").setup()
require("nvim-dap-virtual-text").setup()
vim.keymap.set("n", "<leader>bb", dap.toggle_breakpoint, { desc = "Toggle breakpoint" })
vim.keymap.set("n", "<leader>b1", dap.continue, { desc = "Continue" })
vim.keymap.set("n", "<leader>b2", dap.step_into, { desc = "Step into" })
vim.keymap.set("n", "<leader>b3", dap.step_over, { desc = "Step over" })
vim.keymap.set("n", "<leader>b4", dap.step_out, { desc = "Step out" })
vim.keymap.set("n", "<leader>b5", dap.step_back, { desc = "Step back" })
vim.keymap.set("n", "<leader>b6", dap.restart, { desc = "Restart" })
dap.configurations.go = {}
end,
},
{
"rcarriga/nvim-dap-ui",
dependencies = {
"mfussenegger/nvim-dap",
"nvim-neotest/nvim-nio",
},
config = function()
local dap = require("dap")
local ui = require("dapui")
ui.setup()
dap.listeners.before.attach.dapui_config = function()
ui.open()
end
dap.listeners.before.launch.dapui_config = function()
ui.open()
end
vim.keymap.set("n", "<leader>be", function()
require("dapui").eval(nil, { enter = true })
end, { desc = "Evaluate variable under cursor" })
@@ -26,21 +43,77 @@ return {
require("dap").terminate()
require("dapui").close()
end, { desc = "Quit DAP" })
vim.keymap.set("n", "<leader>b1", dap.continue, { desc = "Continue" })
vim.keymap.set("n", "<leader>b2", dap.step_into, { desc = "Step into" })
vim.keymap.set("n", "<leader>b3", dap.step_over, { desc = "Step over" })
vim.keymap.set("n", "<leader>b4", dap.step_out, { desc = "Step out" })
vim.keymap.set("n", "<leader>b5", dap.step_back, { desc = "Step back" })
vim.keymap.set("n", "<leader>b6", dap.restart, { desc = "Restart" })
dap.configurations.go = {}
dap.listeners.before.attach.dapui_config = function()
ui.open()
end
dap.listeners.before.launch.dapui_config = function()
ui.open()
end
end,
},
{
"theHamsta/nvim-dap-virtual-text",
dependencies = {
"mfussenegger/nvim-dap",
},
config = function()
require("nvim-dap-virtual-text").setup({
enabled = true,
enabled_commands = true,
highlight_changed_variables = true,
highlight_new_as_changed = true,
show_stop_reason = true,
commented = false,
all_references = false,
virt_text_pos = "eol",
all_frames = false,
virt_lines = false,
})
end,
},
{
"jay-babu/mason-nvim-dap.nvim",
dependencies = {
"mason.nvim",
"mfussenegger/nvim-dap",
},
config = function()
require("mason-nvim-dap").setup({
ensure_installed = { "delve", "dart" },
automatic_installation = true,
automatic_setup = true,
handlers = {
function(config)
require("mason-nvim-dap").default_setup(config)
end,
},
})
end,
},
{
"mfussenegger/nvim-dap-python",
dependencies = "mfussenegger/nvim-dap",
config = function()
-- use the system python as a default; venv-selector will
-- overwrite this when you pick a venv
require("dap-python").setup("python3") -- or an absolute path
end,
},
{
"linux-cultist/venv-selector.nvim",
dependencies = {
"neovim/nvim-lspconfig",
{ "nvim-telescope/telescope.nvim", branch = "0.1.x", dependencies = { "nvim-lua/plenary.nvim" } },
"mfussenegger/nvim-dap-python", -- tiny wrapper that registers the debugpy adapter
"mfussenegger/nvim-dap",
},
lazy = false,
branch = "regexp",
keys = {
{ "<leader>v", "<cmd>VenvSelect<cr>" },
},
opts = {
dap_enabled = true,
search = {
anaconda_base = {
command = "fd /python$ /opt/homebrew/anaconda3/envs --full-path --color never -E /proc",
type = "anaconda",
},
},
},
},
}

View File

@@ -4,7 +4,6 @@ return {
"williamboman/mason-lspconfig.nvim",
"WhoIsSethDaniel/mason-tool-installer.nvim",
"mfussenegger/nvim-dap",
"jay-babu/mason-nvim-dap.nvim",
},
config = function()
-- import mason
@@ -22,11 +21,6 @@ return {
},
})
require("mason-nvim-dap").setup({
ensure_installed = { "python", "delve", "dart" },
automatic_installation = true,
})
require("mason-lspconfig").setup({
ensure_installed = {
-- LSP server names only
@@ -45,13 +39,11 @@ return {
"dockerls", -- Docker
"graphql", -- GraphQL
"sqlls", -- SQL (or try "sqls")
"powershell_es", -- PowerShell
"perlnavigator", -- Perl
"vimls", -- Vim
"lemminx", -- XML
"cmake", -- CMake
"zls", -- Zig
-- Add others you use!
},
automatic_installation = true,
})
@@ -66,6 +58,7 @@ return {
"pylint", -- python linter
"eslint_d", -- js linter
"golangci-lint", -- golang linter
"debugpy",
},
})
end,

View File

@@ -1,18 +0,0 @@
return {
"linux-cultist/venv-selector.nvim",
dependencies = {
"neovim/nvim-lspconfig",
"mfussenegger/nvim-dap",
"mfussenegger/nvim-dap-python", --optional
{ "nvim-telescope/telescope.nvim", branch = "0.1.x", dependencies = { "nvim-lua/plenary.nvim" } },
},
lazy = false,
branch = "regexp", -- This is the regexp branch, use this for the new version
keys = {
{ "<leader>v", "<cmd>VenvSelect<cr>" },
},
---@type venv-selector.Config
opts = {
-- Your settings go here
},
}