local keymaps = { { 'n', 'dr', 'DapContinue', { desc = '[D]ebug [R]esume (or start)' } }, { 'n', 'dR', 'DapRestartFrame', { desc = '[D]ebug [R]estart' } }, { 'n', 'dt', 'DapRestartFrame', { desc = '[D]ebug [R]estart' } }, { 'n', 'dp', 'DapToggleBreakpoint', { desc = '[D]ebug Break[p]oint' } }, { 'n', 'dh', 'lua require("dap.ui.widgets").hover()', { desc = '[D]ebug [H]over' } }, { 'n', 'si', '<DapStepInto', { desc = '[S]tep [I]nto' } }, { 'n', 'so', '<DapStepOver', { desc = '[S]tep [O]ver' } }, { 'n', 'sO', '<DapStepOut', { desc = '[S]tep [O]ut' } }, } for _, keymap in ipairs(keymaps) do local mode = keymap[1] local lhs = keymap[2] local rhs = keymap[3] local opts = keymap[4] or {} vim.keymap.set(mode, lhs, rhs, opts) end