patch 8.2.3430: no generic way to trigger an autocommand on mode change
Problem: No generic way to trigger an autocommand on mode change.
Solution: Add the ModeChanged autocommand event. (Magnus Gross, closes #8856)
diff --git a/src/edit.c b/src/edit.c
index 93b1342..e1e796f 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -284,6 +284,7 @@
else
State = INSERT;
+ trigger_modechanged();
stop_insert_mode = FALSE;
#ifdef FEAT_CONCEAL
@@ -3681,6 +3682,7 @@
#endif
State = NORMAL;
+ trigger_modechanged();
// need to position cursor again (e.g. when on a TAB )
changed_cline_bef_curs();
@@ -3811,6 +3813,7 @@
State = INSERT | (State & LANGMAP);
else
State = replaceState | (State & LANGMAP);
+ trigger_modechanged();
AppendCharToRedobuff(K_INS);
showmode();
#ifdef CURSOR_SHAPE