Skip to content

Commit a59ad50

Browse files
nimr0dFrederik Vestre
authored andcommitted
Fix unexpected behavior in delete_word_backward and delete_word_forward (helix-editor#4392)
1 parent 7ab9613 commit a59ad50

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

helix-term/src/commands.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3238,8 +3238,8 @@ pub mod insert {
32383238
let text = doc.text().slice(..);
32393239

32403240
let selection = doc.selection(view.id).clone().transform(|range| {
3241-
let cursor = Range::point(range.cursor(text));
3242-
let next = movement::move_prev_word_start(text, cursor, count);
3241+
let anchor = movement::move_prev_word_start(text, range, count).from();
3242+
let next = Range::new(anchor, range.cursor(text));
32433243
exclude_cursor(text, next, range)
32443244
});
32453245
delete_selection_insert_mode(doc, view, &selection);
@@ -3252,10 +3252,11 @@ pub mod insert {
32523252
let (view, doc) = current!(cx.editor);
32533253
let text = doc.text().slice(..);
32543254

3255-
let selection = doc
3256-
.selection(view.id)
3257-
.clone()
3258-
.transform(|range| movement::move_next_word_start(text, range, count));
3255+
let selection = doc.selection(view.id).clone().transform(|range| {
3256+
let head = movement::move_next_word_end(text, range, count).to();
3257+
Range::new(range.cursor(text), head)
3258+
});
3259+
32593260
delete_selection_insert_mode(doc, view, &selection);
32603261

32613262
lsp::signature_help_impl(cx, SignatureHelpInvoked::Automatic);

0 commit comments

Comments
 (0)