From fb91c582ad5b552f3ed081fb2737d682a7cad181 Mon Sep 17 00:00:00 2001 From: Albert Cervin Date: Mon, 24 Nov 2025 22:47:13 +0100 Subject: Fall back to delete when not in word When deleting a word, you could get "stuck" on non-word chars. To avoid this, fall back to delete word being a normal delete when not in a word. --- src/dged/buffer_view.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/dged/buffer_view.c') diff --git a/src/dged/buffer_view.c b/src/dged/buffer_view.c index 390b7ff..76a3b5b 100644 --- a/src/dged/buffer_view.c +++ b/src/dged/buffer_view.c @@ -228,6 +228,12 @@ void buffer_view_delete_word(struct buffer_view *view) { if (region_has_size(word)) { buffer_delete(view->buffer, word); view->dot = word.begin; + } else { + // fall back to being a normal delete to keep + // progressing + view->dot = buffer_delete( + view->buffer, + region_new(view->dot, buffer_next_char(view->buffer, view->dot))); } buffer_push_undo_boundary(view->buffer); } -- cgit v1.2.3