diff src/testdir/test_termcodes.vim @ 26392:201243ceaa18 v8.2.3727

patch 8.2.3727: in a gnome terminal keys are recognized as mouse events Commit: https://github.com/vim/vim/commit/c14b57c0795671bafca14433bc376acfe6135a3a Author: Bram Moolenaar <Bram@vim.org> Date: Fri Dec 3 13:20:29 2021 +0000 patch 8.2.3727: in a gnome terminal keys are recognized as mouse events Problem: In a gnome terminal keys are recognized as mouse events. Solution: Only recognize DEC mouse events when four numbers are following. (closes #9256)
author Bram Moolenaar <Bram@vim.org>
date Fri, 03 Dec 2021 14:30:04 +0100
parents 485c7c4afeb7
children 4397cc04f2b1
line wrap: on
line diff
--- a/src/testdir/test_termcodes.vim
+++ b/src/testdir/test_termcodes.vim
@@ -2039,6 +2039,28 @@ func Test_modifyOtherKeys_no_mapping()
   set timeoutlen&
 endfunc
 
+" Check that when DEC mouse codes are recognized a special key is handled.
+func Test_ignore_dec_mouse()
+
+  new
+  let save_mouse = &mouse
+  let save_term = &term
+  let save_ttymouse = &ttymouse
+  call test_override('no_query_mouse', 1)
+  set mouse=a term=gnome ttymouse=
+
+  execute "set <xF1>=\<Esc>[1;*P"
+  nnoremap <S-F1> agot it<Esc>
+  call feedkeys("\<Esc>[1;2P", 'Lx!')
+  call assert_equal('got it', getline(1))
+
+  let &mouse = save_mouse
+  let &term = save_term
+  let &ttymouse = save_ttymouse
+  call test_override('no_query_mouse', 0)
+  bwipe!
+endfunc
+
 func RunTest_mapping_shift(key, func)
   call setline(1, '')
   if a:key == '|'