updated for version 7.3.598
Problem: Cannot act upon end of completion. (Taro Muraoka)
Solution: Add an autocommand event that is triggered when completion has
finished. (Idea by Florian Klein)
diff --git a/src/edit.c b/src/edit.c
index bcae928..68b8968 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -3824,6 +3824,11 @@
if (want_cindent && in_cinkeys(KEY_COMPLETE, ' ', inindent(0)))
do_c_expr_indent();
#endif
+#ifdef FEAT_AUTOCMD
+ /* Trigger the CompleteDone event to give scripts a chance to act
+ * upon the completion. */
+ apply_autocmds(EVENT_COMPLETEDONE, NULL, NULL, FALSE, curbuf);
+#endif
}
}
diff --git a/src/fileio.c b/src/fileio.c
index d88ff25..df69423 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -7643,6 +7643,7 @@
{"CmdwinEnter", EVENT_CMDWINENTER},
{"CmdwinLeave", EVENT_CMDWINLEAVE},
{"ColorScheme", EVENT_COLORSCHEME},
+ {"CompleteDone", EVENT_COMPLETEDONE},
{"CursorHold", EVENT_CURSORHOLD},
{"CursorHoldI", EVENT_CURSORHOLDI},
{"CursorMoved", EVENT_CURSORMOVED},
diff --git a/src/version.c b/src/version.c
index afd4d7c..640d419 100644
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 598,
+/**/
597,
/**/
596,
diff --git a/src/vim.h b/src/vim.h
index 7fd6df9..3ed981e 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -1241,6 +1241,7 @@
EVENT_CMDWINENTER, /* after entering the cmdline window */
EVENT_CMDWINLEAVE, /* before leaving the cmdline window */
EVENT_COLORSCHEME, /* after loading a colorscheme */
+ EVENT_COMPLETEDONE, /* after finishing insert complete */
EVENT_FILEAPPENDPOST, /* after appending to a file */
EVENT_FILEAPPENDPRE, /* before appending to a file */
EVENT_FILEAPPENDCMD, /* append to a file using command */