diff options
Diffstat (limited to '')
-rw-r--r-- | edit.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/edit.h b/edit.h index db0d416..535b575 100644 --- a/edit.h +++ b/edit.h @@ -28,17 +28,18 @@ #include <stdbool.h> #include <stddef.h> -enum EditMode { - EditInsert, -}; - struct Edit { - enum EditMode mode; wchar_t *buf; size_t pos; size_t len; size_t cap; struct Edit *cut; + struct { + enum EditViMode { + EditViInsert, + EditViCommand, + } mode; + } vi; }; enum EditFn { @@ -63,6 +64,9 @@ enum EditFn { // Perform an editing function. int editFn(struct Edit *e, enum EditFn fn); +// Perform a vi editing function. +int editVi(struct Edit *e, wchar_t ch); + // Insert a character at the cursor. int editInsert(struct Edit *e, wchar_t ch); |