vim-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.

ee09fcc9b6

Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
Luuk van Baal
2023-05-24 20:13:11 +02:00
parent bff67c9fbe
commit ad7cded1f3
5 changed files with 37 additions and 9 deletions

View File

@@ -53,6 +53,7 @@
#include "nvim/popupmenu.h"
#include "nvim/pos.h"
#include "nvim/search.h"
#include "nvim/spell.h"
#include "nvim/state.h"
#include "nvim/strings.h"
#include "nvim/syntax.h"
@@ -3394,6 +3395,14 @@ static bool ins_esc(long *count, int cmdchar, bool nomove)
check_spell_redraw();
// When text has been changed in this line, possibly the start of the next
// line may have SpellCap that should be removed or it needs to be
// displayed. Schedule the next line for redrawing just in case.
if (spell_check_window(curwin)
&& curwin->w_cursor.lnum < curbuf->b_ml.ml_line_count) {
redrawWinline(curwin, curwin->w_cursor.lnum + 1);
}
int temp = curwin->w_cursor.col;
if (disabled_redraw) {
RedrawingDisabled--;