implemented 'diw' and 'diW' commands for deleting inside a word or WORD

This commit is contained in:
2025-08-07 18:33:03 +01:00
parent c6f40ba9a0
commit b6960f4c68
3 changed files with 68 additions and 0 deletions

View File

@@ -146,6 +146,7 @@ struct
| #"f" => appendChr (app, chr, str)
| #"F" => appendChr (app, chr, str)
| #"g" => appendChr (app, chr, str)
| #"i" => appendChr (app, chr, str)
(* invalid command: reset mode *)
| _ => Finish.clearMode app)
| KEY_ESC => Finish.clearMode app
@@ -209,6 +210,16 @@ struct
Finish.resizeText (app, width, height)
| WITH_SEARCH_LIST searchList =>
Finish.withSearchList (app, searchList))
| #"i" =>
(case newCmd of
CHAR_EVENT #"w" => NormalDelete.deleteInsideWord app
| CHAR_EVENT #"W" => NormalDelete.deleteInsideWORD app
| CHAR_EVENT _ => Finish.clearMode app
| KEY_ESC => Finish.clearMode app
| RESIZE_EVENT (width, height) =>
Finish.resizeText (app, width, height)
| WITH_SEARCH_LIST searchList =>
Finish.withSearchList (app, searchList))
| _ => Finish.clearMode app
(* useful reference as list of non-terminal commands *)