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.
diff --git a/src/testdir/dumps/Test_spell_4.dump b/src/testdir/dumps/Test_spell_4.dump
new file mode 100644
index 0000000..c49dc84
--- /dev/null
+++ b/src/testdir/dumps/Test_spell_4.dump
@@ -0,0 +1,8 @@
+| +0&#ffffff0@2|T|h|i|s| |l|i|n|e| |h|a|s| |a| |s+0&#ffd7d7255|e|p|l@1| +0&#ffffff0|e|r@1|o|r|.| |a+0fd7ff255|n|d| +0&#ffffff0|m|i|s@1|i|n|g| |c|a|p|s| |a|n|d| |t|r|a|i|l|i|n|g| |s|p|a|c|e|s|.| @5
+|a+0fd7ff255|n|o|t|h|e|r| +0&#ffffff0|m|i|s@1|i|n|g| |c|a|p| |h|e|r|e|.| @49
+|N|o|t| @71
+|a|n|d| |h|e|r>e| @66
+|a|n|d| |h|e|r|e|.| @65
+|~+0#4040ff13&| @73
+|~| @73
+| +0#0000000&@56|4|,|8| @10|A|l@1|
diff --git a/src/testdir/dumps/Test_spell_5.dump b/src/testdir/dumps/Test_spell_5.dump
new file mode 100644
index 0000000..a23ce5c
--- /dev/null
+++ b/src/testdir/dumps/Test_spell_5.dump
@@ -0,0 +1,8 @@
+| +0&#ffffff0@2|T|h|i|s| |l|i|n|e| |h|a|s| |a| |s+0&#ffd7d7255|e|p|l@1| +0&#ffffff0|e|r@1|o|r|.| |a+0fd7ff255|n|d| +0&#ffffff0|m|i|s@1|i|n|g| |c|a|p|s| |a|n|d| |t|r|a|i|l|i|n|g| |s|p|a|c|e|s|.| @5
+|a+0fd7ff255|n|o|t|h|e|r| +0&#ffffff0|m|i|s@1|i|n|g| |c|a|p| |h|e|r|e|.| @49
+|N|o|t| @71
+|a|n|d| |h|e|r|e>.| @65
+|a+0fd7ff255|n|d| +0&#ffffff0|h|e|r|e|.| @65
+|~+0#4040ff13&| @73
+|~| @73
+| +0#0000000&@56|4|,|9| @10|A|l@1|
diff --git a/src/testdir/test_spell.vim b/src/testdir/test_spell.vim
index 90c6d53..3712b54 100644
--- a/src/testdir/test_spell.vim
+++ b/src/testdir/test_spell.vim
@@ -987,6 +987,14 @@
call term_sendkeys(buf, "3GANot\<Esc>")
call VerifyScreenDump(buf, 'Test_spell_3', {})
+ " Deleting a full stop removes missing Cap in next line
+ call term_sendkeys(buf, "5Gddk$x")
+ call VerifyScreenDump(buf, 'Test_spell_4', {})
+
+ " Undo also updates the next line (go to command line to remove message)
+ call term_sendkeys(buf, "u:\<Esc>")
+ call VerifyScreenDump(buf, 'Test_spell_5', {})
+
" clean up
call StopVimInTerminal(buf)
call delete('XtestSpellCap')