updated for version 7.2-131
diff --git a/src/option.c b/src/option.c
index 87497ea..d3912f8 100644
--- a/src/option.c
+++ b/src/option.c
@@ -5797,14 +5797,28 @@
/* load or unload key mapping tables */
errmsg = keymap_init();
- /* When successfully installed a new keymap switch on using it. */
- if (*curbuf->b_p_keymap != NUL && errmsg == NULL)
+ if (errmsg == NULL)
{
- curbuf->b_p_iminsert = B_IMODE_LMAP;
- if (curbuf->b_p_imsearch != B_IMODE_USE_INSERT)
- curbuf->b_p_imsearch = B_IMODE_LMAP;
- set_iminsert_global();
- set_imsearch_global();
+ if (*curbuf->b_p_keymap != NUL)
+ {
+ /* Installed a new keymap, switch on using it. */
+ curbuf->b_p_iminsert = B_IMODE_LMAP;
+ if (curbuf->b_p_imsearch != B_IMODE_USE_INSERT)
+ curbuf->b_p_imsearch = B_IMODE_LMAP;
+ }
+ else
+ {
+ /* Cleared the keymap, may reset 'iminsert' and 'imsearch'. */
+ if (curbuf->b_p_iminsert == B_IMODE_LMAP)
+ curbuf->b_p_iminsert = B_IMODE_NONE;
+ if (curbuf->b_p_imsearch == B_IMODE_LMAP)
+ curbuf->b_p_imsearch = B_IMODE_USE_INSERT;
+ }
+ if ((opt_flags & OPT_LOCAL) == 0)
+ {
+ set_iminsert_global();
+ set_imsearch_global();
+ }
# ifdef FEAT_WINDOWS
status_redraw_curbuf();
# endif
diff --git a/src/version.c b/src/version.c
index b002278..a8783b9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -677,6 +677,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 131,
+/**/
130,
/**/
129,