1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
To: vim_dev@googlegroups.com
Subject: Patch 8.1.1250
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------
Patch 8.1.1250
Problem: No test for netterm mouse.
Solution: Add some tests for netterm mouse.
Files: src/testdir/test_termcodes.vim
*** ../vim-8.1.1249/src/testdir/test_termcodes.vim 2019-05-02 23:00:19.227658452 +0200
--- src/testdir/test_termcodes.vim 2019-05-03 13:42:03.533584828 +0200
***************
*** 20,25 ****
--- 20,32 ----
let s:ttymouse_dec = []
endif
+ " netterm only supports left click
+ if has('mouse_netterm')
+ let s:ttymouse_netterm = ['netterm']
+ else
+ let s:ttymouse_netterm = []
+ endif
+
" Helper function to emit a terminal escape code.
func TerminalEscapeCode(code, row, col, m)
if &ttymouse ==# 'xterm2'
***************
*** 43,51 ****
--- 50,64 ----
call feedkeys(printf("\<Esc>[%d;%d;%d;%d&w", a:code, a:down, a:row, a:col), 'Lx!')
endfunc
+ func NettermEscapeCode(row, col)
+ call feedkeys(printf("\<Esc>}%d,%d\r", a:row, a:col), 'Lx!')
+ endfunc
+
func MouseLeftClick(row, col)
if &ttymouse ==# 'dec'
call DecEscapeCode(2, 4, a:row, a:col)
+ elseif &ttymouse ==# 'netterm'
+ call NettermEscapeCode(a:row, a:col)
else
call TerminalEscapeCode(0, a:row, a:col, 'M')
endif
***************
*** 72,77 ****
--- 85,92 ----
func MouseLeftRelease(row, col)
if &ttymouse ==# 'dec'
call DecEscapeCode(3, 0, a:row, a:col)
+ elseif &ttymouse ==# 'netterm'
+ " send nothing
else
call TerminalEscapeCode(3, a:row, a:col, 'm')
endif
***************
*** 114,120 ****
set mouse=a term=xterm
call setline(1, ['line 1', 'line 2', 'line 3 is a bit longer'])
! for ttymouse_val in s:ttymouse_values + s:ttymouse_dec
let msg = 'ttymouse=' .. ttymouse_val
exe 'set ttymouse=' .. ttymouse_val
go
--- 129,135 ----
set mouse=a term=xterm
call setline(1, ['line 1', 'line 2', 'line 3 is a bit longer'])
! for ttymouse_val in s:ttymouse_values + s:ttymouse_dec + s:ttymouse_netterm
let msg = 'ttymouse=' .. ttymouse_val
exe 'set ttymouse=' .. ttymouse_val
go
***************
*** 363,369 ****
set mouse=a term=xterm
let row = 1
! for ttymouse_val in s:ttymouse_values + s:ttymouse_dec
let msg = 'ttymouse=' .. ttymouse_val
exe 'set ttymouse=' .. ttymouse_val
e Xfoo
--- 378,384 ----
set mouse=a term=xterm
let row = 1
! for ttymouse_val in s:ttymouse_values + s:ttymouse_dec + s:ttymouse_netterm
let msg = 'ttymouse=' .. ttymouse_val
exe 'set ttymouse=' .. ttymouse_val
e Xfoo
***************
*** 413,419 ****
let row = 1
let col = &columns
! for ttymouse_val in s:ttymouse_values + s:ttymouse_dec
if ttymouse_val ==# 'xterm2' && col > 223
" When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported.
continue
--- 428,434 ----
let row = 1
let col = &columns
! for ttymouse_val in s:ttymouse_values + s:ttymouse_dec + s:ttymouse_netterm
if ttymouse_val ==# 'xterm2' && col > 223
" When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported.
continue
*** ../vim-8.1.1249/src/version.c 2019-05-03 11:21:01.645784762 +0200
--- src/version.c 2019-05-03 13:43:44.645013888 +0200
***************
*** 769,770 ****
--- 769,772 ----
{ /* Add new patch number below this line */
+ /**/
+ 1250,
/**/
--
Save the plankton - eat a whale.
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|