{...}: { plugins.dap = { enable = true; }; keymaps = [ # Prefix: dap { mode = ["n" "v"]; key = "d"; action = ""; options = { silent = true; desc = "+dap"; }; } # Session management: { mode = ["n"]; key = "dc"; action = "DapContinue"; options = { silent = true; }; } { mode = ["n"]; key = "dq"; action = "DapDisconnect"; options = { silent = true; }; } { mode = ["n"]; key = "dn"; action = "DapNew"; options = { silent = true; }; } { mode = ["n"]; key = "dQ"; action = "DapTerminate"; options = { silent = true; }; } # Stepping: { mode = ["n"]; key = "dr"; action = "DapRestartFrame"; options = { silent = true; }; } { mode = ["n"]; key = "di"; action = "DapStepInto"; options = { silent = true; }; } { mode = ["n"]; key = "dO"; action = "DapStepOut"; options = { silent = true; }; } { mode = ["n"]; key = "do"; action = "DapStepOver"; options = { silent = true; }; } { mode = ["n"]; key = "dp"; action = "DapPause"; options = { silent = true; }; } # Repl: { mode = ["n"]; key = "dE"; action = "DapEval"; options = { silent = true; }; } { mode = ["n"]; key = "dR"; action = "DapToggleRepl"; options = { silent = true; }; } # Breakpoints: { mode = ["n"]; key = "dB"; action = "DapClearBreakpoints"; options = { silent = true; }; } { mode = ["n"]; key = "db"; action = "DapToggleBreakpoint"; options = { silent = true; }; } ]; }