patch 9.0.1761: g<kEnd> behaves different from g<end>

Commit: 
https://github.com/vim/vim/commit/654bdbbd329e7267051cc2eb496bc52b66053081
Author: zeertzjq <[email protected]>
Date:   Sun Aug 20 18:24:20 2023 +0200

    patch 9.0.1761: g<kEnd> behaves different from g<end>
    
    Problem:  g<kEnd> behaves different from g<end>
    Solution: Make g<kEnd> behave like g<End>
    
    closes: #12861
    
    Signed-off-by: Christian Brabandt <[email protected]>
    Co-authored-by: zeertzjq <[email protected]>

diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt
index 46f968045..2ddd1b9ce 100644
--- a/runtime/doc/motion.txt
+++ b/runtime/doc/motion.txt
@@ -255,7 +255,8 @@ g$                  When lines wrap ('wrap' on): To the 
last character of
                        instead of going to the end of the line.
                        When 'virtualedit' is enabled moves to the end of the
                        screen line.
-                                                       *g<End>*
+
+                                                       *g<End>* *g<kEnd>*
 g<End>                 Like |g$| but to the last non-blank character
                        instead of the last character.
 
diff --git a/src/normal.c b/src/normal.c
index cbcfd746d..38229e96e 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -5823,7 +5823,7 @@ nv_g_dollar_cmd(cmdarg_T *cap)
     int                col_off = curwin_col_off();
     int                flag = FALSE;
 
-    if (cap->nchar == K_END)
+    if (cap->nchar == K_END || cap->nchar == K_KEND)
        flag = TRUE;
 
     oap->motion_type = MCHAR;
diff --git a/src/testdir/test_normal.vim b/src/testdir/test_normal.vim
index 92d1134d7..efda142d1 100644
--- a/src/testdir/test_normal.vim
+++ b/src/testdir/test_normal.vim
@@ -4105,20 +4105,24 @@ func Test_normal_click_on_double_width_char()
 endfunc
 
 func Test_normal33_g_cmd_nonblank()
-  " Test that g$ goes to the last non-blank char and g<end> to the last
+  " Test that g<End> goes to the last non-blank char and g$ to the last
   " visible column
   20vnew
   setlocal nowrap nonumber signcolumn=no
   call setline(1, ['fooo   fooo         fooo   fooo         fooo   fooo        
 fooo   fooo        '])
-  exe "normal 0g\<end>"
+  exe "normal 0g\<End>"
   call assert_equal(11, col('.'))
   normal 0g$
   call assert_equal(20, col('.'))
+  exe "normal 0g\<kEnd>"
+  call assert_equal(11, col('.'))
   setlocal wrap
-  exe "normal 0g\<end>"
+  exe "normal 0g\<End>"
   call assert_equal(11, col('.'))
   normal 0g$
   call assert_equal(20, col('.'))
+  exe "normal 0g\<kEnd>"
+  call assert_equal(11, col('.'))
   bw!
 endfunc
 
diff --git a/src/version.c b/src/version.c
index 93192c323..19509d1dd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -695,6 +695,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1761,
 /**/
     1760,
 /**/

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/E1qXlJW-00Aijm-JF%40256bit.org.

Raspunde prin e-mail lui