mirror of
https://github.com/vim/vim.git
synced 2025-09-26 04:04:07 -04:00
patch 8.2.5064: no test for what 8.1.0052 fixes
Problem: No test for what 8.1.0052 fixes. Solution: Add a test. (closes #10531)
This commit is contained in:
@@ -3458,8 +3458,8 @@ vgetorpeek(int advance)
|
||||
* get a character: 3. from the user - get it
|
||||
*/
|
||||
if (typebuf.tb_len == 0)
|
||||
// timedout may have been set while waiting for a mapping
|
||||
// that has a <Nop> RHS.
|
||||
// timedout may have been set if a mapping with empty RHS
|
||||
// fully matched while longer mappings timed out.
|
||||
timedout = FALSE;
|
||||
|
||||
if (advance)
|
||||
|
@@ -1685,4 +1685,34 @@ func Test_expr_map_escape_special()
|
||||
nunmap …
|
||||
endfunc
|
||||
|
||||
" Testing for mapping after an <Nop> mapping is triggered on timeout.
|
||||
" Test for what patch 8.1.0052 fixes.
|
||||
func Test_map_after_timed_out_nop()
|
||||
CheckRunVimInTerminal
|
||||
|
||||
let lines =<< trim END
|
||||
set timeout timeoutlen=400
|
||||
inoremap ab TEST
|
||||
inoremap a <Nop>
|
||||
END
|
||||
call writefile(lines, 'Xtest_map_after_timed_out_nop')
|
||||
let buf = RunVimInTerminal('-S Xtest_map_after_timed_out_nop', #{rows: 6})
|
||||
|
||||
" Enter Insert mode
|
||||
call term_sendkeys(buf, 'i')
|
||||
" Wait for the "a" mapping to timeout
|
||||
call term_sendkeys(buf, 'a')
|
||||
call term_wait(buf, 500)
|
||||
" Send "a" and wait for a period shorter than 'timeoutlen'
|
||||
call term_sendkeys(buf, 'a')
|
||||
call term_wait(buf, 100)
|
||||
" Send "b", should trigger the "ab" mapping
|
||||
call term_sendkeys(buf, 'b')
|
||||
call WaitForAssert({-> assert_equal("TEST", term_getline(buf, 1))})
|
||||
|
||||
" clean up
|
||||
call StopVimInTerminal(buf)
|
||||
call delete('Xtest_map_after_timed_out_nop')
|
||||
endfunc
|
||||
|
||||
" vim: shiftwidth=2 sts=2 expandtab
|
||||
|
@@ -734,6 +734,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
5064,
|
||||
/**/
|
||||
5063,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user