diff options
author | Luuk van Baal <luukvbaal@gmail.com> | 2023-05-24 20:26:03 +0200 |
---|---|---|
committer | Luuk van Baal <luukvbaal@gmail.com> | 2023-05-25 11:24:22 +0200 |
commit | d2dc7cfa5b930a1ff68426f3d47809508ac7d392 (patch) | |
tree | 468b4ada8e8ece847155fdbf97fa0bb4df9e3db8 /src/nvim/undo.c | |
parent | ad7cded1f3f40912d962796d6965dac17ecb97f0 (diff) | |
download | rneovim-d2dc7cfa5b930a1ff68426f3d47809508ac7d392.tar.gz rneovim-d2dc7cfa5b930a1ff68426f3d47809508ac7d392.tar.bz2 rneovim-d2dc7cfa5b930a1ff68426f3d47809508ac7d392.zip |
vim-patch:9.0.0608: with spelling, deleting a full stop does not update next line
Problem: With spell checking, deleting a full stop at the end of a line
does not update SpellCap at the start of the next line.
Solution: Update the next line when characters have been deleted. Also when
using undo.
https://github.com/vim/vim/commit/26f09ea54b2c60abf21df42c60bdfc60eca17b0d
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src/nvim/undo.c')
-rw-r--r-- | src/nvim/undo.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/nvim/undo.c b/src/nvim/undo.c index 00a3922a5b..1eb73d85d7 100644 --- a/src/nvim/undo.c +++ b/src/nvim/undo.c @@ -120,6 +120,7 @@ #include "nvim/path.h" #include "nvim/pos.h" #include "nvim/sha256.h" +#include "nvim/spell.h" #include "nvim/state.h" #include "nvim/strings.h" #include "nvim/types.h" @@ -2372,6 +2373,12 @@ static void u_undoredo(int undo, bool do_buf_event) } changed_lines(top + 1, 0, bot, newsize - oldsize, do_buf_event); + // When text has been changed, 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) && bot <= curbuf->b_ml.ml_line_count) { + redrawWinline(curwin, bot); + } // Set the '[ mark. if (top + 1 < curbuf->b_op_start.lnum) { |