diff options
Diffstat (limited to 'dot_config/nvim/lua/plugins/dap.lua')
| -rw-r--r-- | dot_config/nvim/lua/plugins/dap.lua | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/dot_config/nvim/lua/plugins/dap.lua b/dot_config/nvim/lua/plugins/dap.lua new file mode 100644 index 0000000..0299847 --- /dev/null +++ b/dot_config/nvim/lua/plugins/dap.lua @@ -0,0 +1,150 @@ +return { + -- "rcarriga/nvim-dap-ui", + "igorlfs/nvim-dap-view", + dependencies = { + "mfussenegger/nvim-dap", + "nvim-neotest/nvim-nio", + { "theHamsta/nvim-dap-virtual-text", opts = {} }, + }, + keys = { + { + "<leader>dB", + function() + require("dap").set_breakpoint(vim.fn.input("Breakpoint condition: ")) + end, + desc = "Breakpoint Condition", + }, + { + "<leader>db", + function() + require("dap").toggle_breakpoint() + end, + desc = "Toggle Breakpoint", + }, + { + "<leader>dc", + function() + require("dap").continue() + end, + desc = "Run/Continue", + }, + { + "<leader>da", + function() + require("dap").continue({ before = get_args }) + end, + desc = "Run with Args", + }, + { + "<leader>dC", + function() + require("dap").run_to_cursor() + end, + desc = "Run to Cursor", + }, + { + "<leader>dg", + function() + require("dap").goto_() + end, + desc = "Go to Line (No Execute)", + }, + { + "<leader>di", + function() + require("dap").step_into() + end, + desc = "Step Into", + }, + { + "<leader>dj", + function() + require("dap").down() + end, + desc = "Down", + }, + { + "<leader>dk", + function() + require("dap").up() + end, + desc = "Up", + }, + { + "<leader>dl", + function() + require("dap").run_last() + end, + desc = "Run Last", + }, + { + "<leader>do", + function() + require("dap").step_out() + end, + desc = "Step Out", + }, + { + "<leader>dO", + function() + require("dap").step_over() + end, + desc = "Step Over", + }, + { + "<leader>dP", + function() + require("dap").pause() + end, + desc = "Pause", + }, + { + "<leader>dr", + function() + require("dap").repl.toggle() + end, + desc = "Toggle REPL", + }, + { + "<leader>ds", + function() + require("dap").session() + end, + desc = "Session", + }, + { + "<leader>dt", + function() + require("dap").terminate() + end, + desc = "Terminate", + }, + { + "<leader>dw", + function() + require("dap.ui.widgets").hover() + end, + desc = "Widgets", + }, + }, + config = function() + local dap = require("dap") + -- local dapui = require("dapui") + local dapui = require("dap-view") + + dapui.setup() + + dap.listeners.before.attach.dapui_config = function() + dapui.open() + end + dap.listeners.before.launch.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, +} |
