Commit: patch 9.1.0512: Mode message for spell completion doesn't match allowed keys

3 views
Skip to first unread message

Christian Brabandt

unread,
Jun 21, 2024, 2:00:15 AM6/21/24
to vim...@googlegroups.com
patch 9.1.0512: Mode message for spell completion doesn't match allowed keys

Commit: https://github.com/vim/vim/commit/7002c055d560ae0b3bb1e24ad409390a5443daad
Author: zeertzjq <zeer...@outlook.com>
Date: Fri Jun 21 07:55:07 2024 +0200

patch 9.1.0512: Mode message for spell completion doesn't match allowed keys

Problem: Mode message for spell completion doesn't match allowed keys
(Kyle Kovacs)
Solution: Show "^S" instead of "s".
(zeertzjq)

This matches the code in vim_is_ctrl_x_key():

case CTRL_X_SPELL:
return (c == Ctrl_S || c == Ctrl_P || c == Ctrl_N);

fixes: neovim/neovim#29431
closes: #15065

Signed-off-by: zeertzjq <zeer...@outlook.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/insexpand.c b/src/insexpand.c
index 78fea5127..01fa6de83 100644
--- a/src/insexpand.c
+++ b/src/insexpand.c
@@ -58,7 +58,7 @@ static char *ctrl_x_msgs[] =
N_(" Command-line completion (^V^N^P)"),
N_(" User defined completion (^U^N^P)"),
N_(" Omni completion (^O^N^P)"),
- N_(" Spelling suggestion (s^N^P)"),
+ N_(" Spelling suggestion (^S^N^P)"),
N_(" Keyword Local completion (^N^P)"),
NULL, // CTRL_X_EVAL doesn't use msg.
N_(" Command-line completion (^V^N^P)"),
diff --git a/src/testdir/test_spell.vim b/src/testdir/test_spell.vim
index 1ddcd83d5..692e191a3 100644
--- a/src/testdir/test_spell.vim
+++ b/src/testdir/test_spell.vim
@@ -5,6 +5,7 @@ source check.vim
CheckFeature spell

source screendump.vim
+source view_util.vim

func TearDown()
set nospell
@@ -300,6 +301,20 @@ func Test_compl_with_CTRL_X_CTRL_K_using_spell()
set spell& spelllang& dictionary& ignorecase&
endfunc

+func Test_compl_with_CTRL_X_s()
+ new
+ set spell spelllang=en_us showmode
+ inoremap <buffer><F2> <Cmd>let g:msg = Screenline(&lines)<CR>
+
+ call feedkeys("STheatre\<C-X>s\<F2>\<C-Y>\<Esc>", 'tx')
+ call assert_equal(['Theater'], getline(1, '$'))
+ call assert_match('(^S^N^P)', g:msg)
+
+ bwipe!
+ set spell& spelllang& showmode&
+ unlet g:msg
+endfunc
+
func Test_spellrepall()
new
set spell
diff --git a/src/version.c b/src/version.c
index e0b0d5ccf..41d9281a3 100644
--- a/src/version.c
+++ b/src/version.c
@@ -704,6 +704,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 512,
/**/
511,
/**/
Reply all
Reply to author
Forward
0 new messages