patch 9.1.0765: No test for patches 6.2.418 and 7.3.489
Problem: No test for patches 6.2.418 and 7.3.489
Solution: Add a test. Fix some whitespace problems in test_mapping.vim.
Document the behavior (zeertzjq).
closes: #15815
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index ec94435..2773140 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt* For Vim version 9.1. Last change: 2024 Sep 26
+*map.txt* For Vim version 9.1. Last change: 2024 Oct 07
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -84,6 +84,8 @@
where the map command applies. Disallow mapping of
{rhs}, to avoid nested and recursive mappings. Often
used to redefine a command.
+ Note: Keys in {rhs} also won't trigger abbreviation,
+ with the exception of |i_CTRL-]| and |c_CTRL-]|.
Note: When <Plug> appears in the {rhs} this part is
always applied even if remapping is disallowed.
diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim
index 2b392c5..790efaa 100644
--- a/src/testdir/test_cmdline.vim
+++ b/src/testdir/test_cmdline.vim
@@ -3920,7 +3920,7 @@
set cpo-=*
endfunc
-func Test_cd_bslsh_completion_windows()
+func Test_cd_bslash_completion_windows()
CheckMSWindows
let save_shellslash = &shellslash
set noshellslash
diff --git a/src/testdir/test_mapping.vim b/src/testdir/test_mapping.vim
index 064f8ac..122793c 100644
--- a/src/testdir/test_mapping.vim
+++ b/src/testdir/test_mapping.vim
@@ -7,40 +7,62 @@
import './vim9.vim' as v9
func Test_abbreviation()
+ new
" abbreviation with 0x80 should work
inoreab чкпр vim
call feedkeys("Goчкпр \<Esc>", "xt")
call assert_equal('vim ', getline('$'))
iunab чкпр
- set nomodified
+ bwipe!
+endfunc
+
+func Test_abbreviation_with_noremap()
+ nnoremap <F2> :echo "cheese"
+ cabbr cheese xxx
+ call feedkeys(":echo \"cheese\"\<C-B>\"\<CR>", 'tx')
+ call assert_equal('"echo "xxx"', @:)
+ call feedkeys("\<F2>\<C-B>\"\<CR>", 'tx')
+ call assert_equal('"echo "cheese"', @:)
+ nnoremap <F2> :echo "cheese<C-]>"
+ call feedkeys("\<F2>\<C-B>\"\<CR>", 'tx')
+ call assert_equal('"echo "xxx"', @:)
+ nunmap <F2>
+ cunabbr cheese
+
+ new
+ inoremap <buffer> ( <C-]>()
+ iabbr <buffer> fnu fun
+ call feedkeys("ifnu(", 'tx')
+ call assert_equal('fun()', getline(1))
+ bwipe!
endfunc
func Test_abclear()
- abbrev foo foobar
- iabbrev fooi foobari
- cabbrev fooc foobarc
- call assert_equal("\n\n"
- \ .. "c fooc foobarc\n"
- \ .. "i fooi foobari\n"
- \ .. "! foo foobar", execute('abbrev'))
+ abbrev foo foobar
+ iabbrev fooi foobari
+ cabbrev fooc foobarc
+ call assert_equal("\n\n"
+ \ .. "c fooc foobarc\n"
+ \ .. "i fooi foobari\n"
+ \ .. "! foo foobar", execute('abbrev'))
- iabclear
- call assert_equal("\n\n"
- \ .. "c fooc foobarc\n"
- \ .. "c foo foobar", execute('abbrev'))
- abbrev foo foobar
- iabbrev fooi foobari
+ iabclear
+ call assert_equal("\n\n"
+ \ .. "c fooc foobarc\n"
+ \ .. "c foo foobar", execute('abbrev'))
+ abbrev foo foobar
+ iabbrev fooi foobari
- cabclear
- call assert_equal("\n\n"
- \ .. "i fooi foobari\n"
- \ .. "i foo foobar", execute('abbrev'))
- abbrev foo foobar
- cabbrev fooc foobarc
+ cabclear
+ call assert_equal("\n\n"
+ \ .. "i fooi foobari\n"
+ \ .. "i foo foobar", execute('abbrev'))
+ abbrev foo foobar
+ cabbrev fooc foobarc
- abclear
- call assert_equal("\n\nNo abbreviation found", execute('abbrev'))
- call assert_fails('%abclear', 'E481:')
+ abclear
+ call assert_equal("\n\nNo abbreviation found", execute('abbrev'))
+ call assert_fails('%abclear', 'E481:')
endfunc
func Test_abclear_buffer()
@@ -161,7 +183,7 @@
imap a c
call feedkeys("Go\<C-R>a\<Esc>", "xt")
call assert_equal('bbbb', getline('$'))
-
+
" langmap should not apply in Command-line mode
set langmap=+{ nolangremap
call feedkeys(":call append(line('$'), '+')\<CR>", "xt")
diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim
index 93db940..7a00135 100644
--- a/src/testdir/test_quickfix.vim
+++ b/src/testdir/test_quickfix.vim
@@ -6581,8 +6581,8 @@
call XbufferTests_range('l')
endfunc
-" Test for displaying fname pass from setqflist when the name
-" are hard links to prevent seemly duplicate entries.
+" Test for displaying fname passed from setqflist() when the names include
+" hard links to prevent seemingly duplicate entries.
func Xtest_hardlink_fname(cchar)
call s:setup_commands(a:cchar)
%bwipe
diff --git a/src/version.c b/src/version.c
index c8559ef..36af1c2 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 765,
+/**/
764,
/**/
763,