-- ======================================================================== -- DEBUG CONFIGURATION - Global DAP keymaps -- ======================================================================== -- These keymaps are available whenever nvim-dap is loaded -- Works for all languages: Flutter, Rust, Python, etc. -- ======================================================================== return { -- nvim-dap: Debug Adapter Protocol client { 'mfussenegger/nvim-dap', optional = true, keys = { -- Function key shortcuts (standard debugging across all editors) { '', function() require('dap').continue() end, desc = 'Debug: Start/Continue' }, { '', function() require('dap').step_over() end, desc = 'Debug: Step over' }, { '', function() require('dap').step_into() end, desc = 'Debug: Step into' }, { '', function() require('dap').step_out() end, desc = 'Debug: Step out' }, -- Leader-based debug commands (more discoverable) { 'db', function() require('dap').toggle_breakpoint() end, desc = 'Toggle breakpoint' }, { 'dB', function() require('dap').set_breakpoint(vim.fn.input('Breakpoint condition: ')) end, desc = 'Conditional breakpoint' }, { 'dc', function() require('dap').continue() end, desc = 'Continue' }, { 'di', function() require('dap').step_into() end, desc = 'Step into' }, { 'do', function() require('dap').step_out() end, desc = 'Step out' }, { 'dO', function() require('dap').step_over() end, desc = 'Step over' }, { 'dt', function() require('dap').terminate() end, desc = 'Terminate' }, { 'dr', function() require('dap').repl.toggle() end, desc = 'Toggle REPL' }, { 'dl', function() require('dap').run_last() end, desc = 'Run last' }, { 'dC', function() require('dap').run_to_cursor() end, desc = 'Run to cursor' }, }, config = function() -- Register which-key group require('which-key').add { { 'd', group = ' debug' }, } end, }, -- nvim-dap-ui: UI for nvim-dap { 'rcarriga/nvim-dap-ui', optional = true, keys = { { 'du', function() require('dapui').toggle() end, desc = 'Toggle UI' }, { 'de', function() require('dapui').eval() end, desc = 'Eval', mode = { 'n', 'v' } }, }, }, }