diff --git a/helix-term/src/commands.rs b/helix-term/src/commands.rs index 74b272c68..1139a0dc6 100644 --- a/helix-term/src/commands.rs +++ b/helix-term/src/commands.rs @@ -304,6 +304,7 @@ impl Command { select_textobject_inner, "Select inside object", dap_toggle_breakpoint, "Toggle breakpoint", dap_launch, "Launch debugger", + dap_run, "Begin program execution", suspend, "Suspend" ); } @@ -4326,3 +4327,12 @@ fn dap_launch(cx: &mut Context) { let _ = block_on(request).unwrap(); } } + +fn dap_run(cx: &mut Context) { + use helix_lsp::block_on; + + if let Some(debugger) = &mut cx.editor.debugger { + let request = debugger.configuration_done(); + let _ = block_on(request).unwrap(); + } +} diff --git a/helix-term/src/keymap.rs b/helix-term/src/keymap.rs index 840bd7e6d..651fbdf22 100644 --- a/helix-term/src/keymap.rs +++ b/helix-term/src/keymap.rs @@ -486,8 +486,9 @@ impl Default for Keymaps { "a" => code_action, "'" => last_picker, "d" => { "Debug" + "s" => dap_launch, "b" => dap_toggle_breakpoint, - "r" => dap_launch, + "r" => dap_run, }, "w" => { "Window" "C-w" | "w" => rotate_view,