From 6926991a56d3a113bd9dd6b92222c0351d63dc6f Mon Sep 17 00:00:00 2001 From: huttongrabiel Date: Fri, 7 Oct 2022 20:17:00 -0700 Subject: LibGUI: Delete from current position to end of line in VimEditingEngine When in normal mode pressing Shift+D will delete from the current cursor position to the end of the line. Leaving the cursor on the character before where the cursor was when the deletion took place. --- Userland/Libraries/LibGUI/VimEditingEngine.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Userland') diff --git a/Userland/Libraries/LibGUI/VimEditingEngine.cpp b/Userland/Libraries/LibGUI/VimEditingEngine.cpp index d2e82014e1..941b512e16 100644 --- a/Userland/Libraries/LibGUI/VimEditingEngine.cpp +++ b/Userland/Libraries/LibGUI/VimEditingEngine.cpp @@ -963,6 +963,11 @@ bool VimEditingEngine::on_key_in_normal_mode(KeyEvent const& event) move_to_logical_line_end(); switch_to_insert_mode(); return true; + case (KeyCode::Key_D): + m_editor->delete_text_range({ m_editor->cursor(), { m_editor->cursor().line(), m_editor->current_line().length() } }); + if (m_editor->cursor().column() != 0) + move_one_left(); + break; case (KeyCode::Key_I): move_to_logical_line_beginning(); switch_to_insert_mode(); -- cgit v1.2.3