patch 9.0.0590: after exiting Insert mode spelling not checked in next line
Problem: After exiting Insert mode spelling is not checked in the next
line.
Solution: When spelling is enabled redraw the next line after exiting Insert
mode in case the spell highlight needs updating.
diff --git a/src/spell.c b/src/spell.c
index 08f627d..628814f 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -1238,18 +1238,27 @@
}
/*
- * Return TRUE if spell checking is not enabled.
+ * Return TRUE if spell checking is enabled for "wp".
+ */
+ int
+spell_check_window(win_T *wp)
+{
+ return wp->w_p_spell
+ && *wp->w_s->b_p_spl != NUL
+ && wp->w_s->b_langp.ga_len > 0
+ && *(char **)(wp->w_s->b_langp.ga_data) != NULL;
+}
+
+/*
+ * Return TRUE and give an error if spell checking is not enabled.
*/
static int
no_spell_checking(win_T *wp)
{
- if (!wp->w_p_spell || *wp->w_s->b_p_spl == NUL
- || wp->w_s->b_langp.ga_len == 0)
- {
- emsg(_(e_spell_checking_is_not_possible));
- return TRUE;
- }
- return FALSE;
+ if (spell_check_window(wp))
+ return FALSE;
+ emsg(_(e_spell_checking_is_not_possible));
+ return TRUE;
}
/*