diff --git a/src/testdir/test_termcodes.vim b/src/testdir/test_termcodes.vim index 1a10d62577..0a4170e38b 100644 --- a/src/testdir/test_termcodes.vim +++ b/src/testdir/test_termcodes.vim @@ -885,13 +885,12 @@ endfunc " This checks the libvterm version response. " This must be after other tests, because it has side effects to xterm " properties. -" TODO: check other terminals response func Test_xx02_libvterm_response() " Termresponse is only parsed when t_RV is not empty. set t_RV=x + set ttymouse=xterm call test_option_not_set('ttymouse') - let seq = "\[>0;100;0c" call feedkeys(seq, 'Lx!') call assert_equal(seq, v:termresponse) @@ -900,6 +899,42 @@ func Test_xx02_libvterm_response() set t_RV= endfunc +" This checks the xterm version response. +" This must be after other tests, because it has side effects to xterm +" properties. +func Test_xx03_xterm_response() + " Termresponse is only parsed when t_RV is not empty. + set t_RV=x + + " xterm < 95: "xterm" (actually unmodified) + set ttymouse=xterm + call test_option_not_set('ttymouse') + let seq = "\[>0;94;0c" + call feedkeys(seq, 'Lx!') + call assert_equal(seq, v:termresponse) + call assert_equal('xterm', &ttymouse) + + " xterm >= 95 < 277 "xterm2" + set ttymouse=xterm + call test_option_not_set('ttymouse') + let seq = "\[>0;267;0c" + call feedkeys(seq, 'Lx!') + call assert_equal(seq, v:termresponse) + call assert_equal('xterm2', &ttymouse) + + " xterm >= 277: "sgr" + set ttymouse=xterm + call test_option_not_set('ttymouse') + let seq = "\[>0;277;0c" + call feedkeys(seq, 'Lx!') + call assert_equal(seq, v:termresponse) + call assert_equal('sgr', &ttymouse) + + set t_RV= +endfunc + +" TODO: check other terminals response + func Test_get_termcode() try let k1 = &t_k1 diff --git a/src/version.c b/src/version.c index 3fc889e91d..a8dc708142 100644 --- a/src/version.c +++ b/src/version.c @@ -753,6 +753,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2150, /**/ 2149, /**/