Mercurial > vim
annotate src/testdir/test_termcodes.vim @ 18621:a9bfdc5ea1ec v8.1.2303
patch 8.1.2303: cursor in wrong position after horizontal scroll
Commit: https://github.com/vim/vim/commit/08f23636aef595f4cc061dfee8248dca97df16b3
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Nov 16 14:19:33 2019 +0100
patch 8.1.2303: cursor in wrong position after horizontal scroll
Problem: Cursor in wrong position after horizontal scroll.
Solution: Set w_valid_leftcol. (closes https://github.com/vim/vim/issues/5214, closes https://github.com/vim/vim/issues/5224)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 16 Nov 2019 14:30:03 +0100 |
parents | e460e6878406 |
children | 169c810d4e51 |
rev | line source |
---|---|
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1 " Tests for decoding escape sequences sent by the terminal. |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
3 " This only works for Unix in a terminal |
17657
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
4 source check.vim |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
5 CheckNotGui |
0da9bc55c31a
patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
6 CheckUnix |
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 |
16437
fbc0b3b38c79
patch 8.1.1223: middle mouse click test fails without a clipboard
Bram Moolenaar <Bram@vim.org>
parents:
16423
diff
changeset
|
8 source shared.vim |
fbc0b3b38c79
patch 8.1.1223: middle mouse click test fails without a clipboard
Bram Moolenaar <Bram@vim.org>
parents:
16423
diff
changeset
|
9 |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
10 " xterm2 and sgr always work, urxvt is optional. |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
11 let s:ttymouse_values = ['xterm2', 'sgr'] |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
12 if has('mouse_urxvt') |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
13 call add(s:ttymouse_values, 'urxvt') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
14 endif |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
15 |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
16 " dec doesn't support all the functionality |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
17 if has('mouse_dec') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
18 let s:ttymouse_dec = ['dec'] |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
19 else |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
20 let s:ttymouse_dec = [] |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
21 endif |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
22 |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
23 " netterm only supports left click |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
24 if has('mouse_netterm') |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
25 let s:ttymouse_netterm = ['netterm'] |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
26 else |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
27 let s:ttymouse_netterm = [] |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
28 endif |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
29 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
30 " Helper function to emit a terminal escape code. |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
31 func TerminalEscapeCode(code, row, col, m) |
16352
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
32 if &ttymouse ==# 'xterm2' |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
33 " need to use byte encoding here. |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
34 let str = list2str([a:code + 0x20, a:col + 0x20, a:row + 0x20]) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
35 if has('iconv') |
17914
af3d441845cd
patch 8.1.1953: more functions can be used as a method
Bram Moolenaar <Bram@vim.org>
parents:
17686
diff
changeset
|
36 let bytes = str->iconv('utf-8', 'latin1') |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
37 else |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
38 " Hopefully the numbers are not too big. |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
39 let bytes = str |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
40 endif |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
41 call feedkeys("\<Esc>[M" .. bytes, 'Lx!') |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
42 elseif &ttymouse ==# 'sgr' |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
43 call feedkeys(printf("\<Esc>[<%d;%d;%d%s", a:code, a:col, a:row, a:m), 'Lx!') |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
44 elseif &ttymouse ==# 'urxvt' |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
45 call feedkeys(printf("\<Esc>[%d;%d;%dM", a:code + 0x20, a:col, a:row), 'Lx!') |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
46 endif |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
47 endfunc |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
48 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
49 func DecEscapeCode(code, down, row, col) |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
50 call feedkeys(printf("\<Esc>[%d;%d;%d;%d&w", a:code, a:down, a:row, a:col), 'Lx!') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
51 endfunc |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
52 |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
53 func NettermEscapeCode(row, col) |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
54 call feedkeys(printf("\<Esc>}%d,%d\r", a:row, a:col), 'Lx!') |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
55 endfunc |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
56 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
57 func MouseLeftClick(row, col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
58 if &ttymouse ==# 'dec' |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
59 call DecEscapeCode(2, 4, a:row, a:col) |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
60 elseif &ttymouse ==# 'netterm' |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
61 call NettermEscapeCode(a:row, a:col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
62 else |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
63 call TerminalEscapeCode(0, a:row, a:col, 'M') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
64 endif |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
65 endfunc |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
66 |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
67 func MouseMiddleClick(row, col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
68 if &ttymouse ==# 'dec' |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
69 call DecEscapeCode(4, 2, a:row, a:col) |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
70 else |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
71 call TerminalEscapeCode(1, a:row, a:col, 'M') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
72 endif |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
73 endfunc |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
74 |
18307
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
75 func MouseRightClick(row, col) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
76 if &ttymouse ==# 'dec' |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
77 call DecEscapeCode(6, 1, a:row, a:col) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
78 else |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
79 call TerminalEscapeCode(2, a:row, a:col, 'M') |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
80 endif |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
81 endfunc |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
82 |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
83 func MouseCtrlLeftClick(row, col) |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
84 let ctrl = 0x10 |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
85 call TerminalEscapeCode(0 + ctrl, a:row, a:col, 'M') |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
86 endfunc |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
87 |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
88 func MouseCtrlRightClick(row, col) |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
89 let ctrl = 0x10 |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
90 call TerminalEscapeCode(2 + ctrl, a:row, a:col, 'M') |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
91 endfunc |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
92 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
93 func MouseLeftRelease(row, col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
94 if &ttymouse ==# 'dec' |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
95 call DecEscapeCode(3, 0, a:row, a:col) |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
96 elseif &ttymouse ==# 'netterm' |
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
97 " send nothing |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
98 else |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
99 call TerminalEscapeCode(3, a:row, a:col, 'm') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
100 endif |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
101 endfunc |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
102 |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
103 func MouseMiddleRelease(row, col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
104 if &ttymouse ==# 'dec' |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
105 call DecEscapeCode(5, 0, a:row, a:col) |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
106 else |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
107 call TerminalEscapeCode(3, a:row, a:col, 'm') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
108 endif |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
109 endfunc |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
110 |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
111 func MouseRightRelease(row, col) |
18307
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
112 if &ttymouse ==# 'dec' |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
113 call DecEscapeCode(7, 0, a:row, a:col) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
114 else |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
115 call TerminalEscapeCode(3, a:row, a:col, 'm') |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
116 endif |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
117 endfunc |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
118 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
119 func MouseLeftDrag(row, col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
120 if &ttymouse ==# 'dec' |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
121 call DecEscapeCode(1, 4, a:row, a:col) |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
122 else |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
123 call TerminalEscapeCode(0x20, a:row, a:col, 'M') |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
124 endif |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
125 endfunc |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
126 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
127 func MouseWheelUp(row, col) |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
128 call TerminalEscapeCode(0x40, a:row, a:col, 'M') |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
129 endfunc |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
130 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
131 func MouseWheelDown(row, col) |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
132 call TerminalEscapeCode(0x41, a:row, a:col, 'M') |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
133 endfunc |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
134 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
135 func Test_term_mouse_left_click() |
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
136 new |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
137 let save_mouse = &mouse |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
138 let save_term = &term |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
139 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
140 call test_override('no_query_mouse', 1) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
141 set mouse=a term=xterm |
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
142 call setline(1, ['line 1', 'line 2', 'line 3 is a bit longer']) |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
143 |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
144 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec + s:ttymouse_netterm |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
145 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
146 exe 'set ttymouse=' .. ttymouse_val |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
147 go |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
148 call assert_equal([0, 1, 1, 0], getpos('.'), msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
149 let row = 2 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
150 let col = 6 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
151 call MouseLeftClick(row, col) |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
152 call MouseLeftRelease(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
153 call assert_equal([0, 2, 6, 0], getpos('.'), msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
154 endfor |
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
155 |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
156 let &mouse = save_mouse |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
157 let &term = save_term |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
158 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
159 call test_override('no_query_mouse', 0) |
16263
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
160 bwipe! |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
161 endfunc |
d3377393e3d9
patch 8.1.1136: decoding of mouse click escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
162 |
18307
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
163 func Test_xterm_mouse_right_click_extends_visual() |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
164 if has('mac') |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
165 throw "Skipped: test right click in visual mode does not work on macOs (why?)" |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
166 endif |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
167 let save_mouse = &mouse |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
168 let save_term = &term |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
169 let save_ttymouse = &ttymouse |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
170 call test_override('no_query_mouse', 1) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
171 set mouse=a term=xterm |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
172 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
173 for visual_mode in ["v", "V", "\<C-V>"] |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
174 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
175 let msg = 'visual=' .. visual_mode .. ' ttymouse=' .. ttymouse_val |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
176 exe 'set ttymouse=' .. ttymouse_val |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
177 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
178 call setline(1, repeat([repeat('-', 7)], 7)) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
179 call MouseLeftClick(4, 4) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
180 call MouseLeftRelease(4, 4) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
181 exe "norm! " .. visual_mode |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
182 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
183 " Right click extends top left of visual area. |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
184 call MouseRightClick(2, 2) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
185 call MouseRightRelease(2, 2) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
186 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
187 " Right click extends bottom bottom right of visual area. |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
188 call MouseRightClick(6, 6) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
189 call MouseRightRelease(6, 6) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
190 norm! r1gv |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
191 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
192 " Right click shrinks top left of visual area. |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
193 call MouseRightClick(3, 3) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
194 call MouseRightRelease(3, 3) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
195 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
196 " Right click shrinks bottom right of visual area. |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
197 call MouseRightClick(5, 5) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
198 call MouseRightRelease(5, 5) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
199 norm! r2 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
200 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
201 if visual_mode ==# 'v' |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
202 call assert_equal(['-------', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
203 \ '-111111', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
204 \ '1122222', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
205 \ '2222222', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
206 \ '2222211', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
207 \ '111111-', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
208 \ '-------'], getline(1, '$'), msg) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
209 elseif visual_mode ==# 'V' |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
210 call assert_equal(['-------', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
211 \ '1111111', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
212 \ '2222222', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
213 \ '2222222', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
214 \ '2222222', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
215 \ '1111111', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
216 \ '-------'], getline(1, '$'), msg) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
217 else |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
218 call assert_equal(['-------', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
219 \ '-11111-', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
220 \ '-12221-', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
221 \ '-12221-', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
222 \ '-12221-', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
223 \ '-11111-', |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
224 \ '-------'], getline(1, '$'), msg) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
225 endif |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
226 endfor |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
227 endfor |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
228 |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
229 let &mouse = save_mouse |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
230 let &term = save_term |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
231 let &ttymouse = save_ttymouse |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
232 call test_override('no_query_mouse', 0) |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
233 bwipe! |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
234 endfunc |
176fa195b95d
patch 8.1.2148: no test for right click extending Visual area
Bram Moolenaar <Bram@vim.org>
parents:
18301
diff
changeset
|
235 |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
236 " Test that <C-LeftMouse> jumps to help tag and <C-RightMouse> jumps back. |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
237 func Test_xterm_mouse_ctrl_click() |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
238 let save_mouse = &mouse |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
239 let save_term = &term |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
240 let save_ttymouse = &ttymouse |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
241 set mouse=a term=xterm |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
242 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
243 for ttymouse_val in s:ttymouse_values |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
244 let msg = 'ttymouse=' .. ttymouse_val |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
245 exe 'set ttymouse=' .. ttymouse_val |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
246 help |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
247 /usr_02.txt |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
248 norm! zt |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
249 let row = 1 |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
250 let col = 1 |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
251 call MouseCtrlLeftClick(row, col) |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
252 call MouseLeftRelease(row, col) |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
253 call assert_match('usr_02.txt$', bufname('%'), msg) |
18223
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
254 call assert_equal('*usr_02.txt*', expand('<cWORD>'), msg) |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
255 |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
256 call MouseCtrlRightClick(row, col) |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
257 call MouseRightRelease(row, col) |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
258 call assert_match('help.txt$', bufname('%'), msg) |
18223
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
259 call assert_equal('|usr_02.txt|', expand('<cWORD>'), msg) |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
260 |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
261 helpclose |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
262 endfor |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
263 |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
264 let &mouse = save_mouse |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
265 let &term = save_term |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
266 let &ttymouse = save_ttymouse |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
267 endfunc |
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
268 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
269 func Test_term_mouse_middle_click() |
17686
853afcc375b2
patch 8.1.1840: Testing: WorkingClipboard() is not accurate
Bram Moolenaar <Bram@vim.org>
parents:
17657
diff
changeset
|
270 CheckFeature clipboard_working |
16437
fbc0b3b38c79
patch 8.1.1223: middle mouse click test fails without a clipboard
Bram Moolenaar <Bram@vim.org>
parents:
16423
diff
changeset
|
271 |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
272 new |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
273 let save_mouse = &mouse |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
274 let save_term = &term |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
275 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
276 call test_override('no_query_mouse', 1) |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
277 let save_quotestar = @* |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
278 let @* = 'abc' |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
279 set mouse=a term=xterm |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
280 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
281 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
282 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
283 exe 'set ttymouse=' .. ttymouse_val |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
284 call setline(1, ['123456789', '123456789']) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
285 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
286 " Middle-click in the middle of the line pastes text where clicked. |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
287 let row = 1 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
288 let col = 6 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
289 call MouseMiddleClick(row, col) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
290 call MouseMiddleRelease(row, col) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
291 call assert_equal(['12345abc6789', '123456789'], getline(1, '$'), msg) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
292 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
293 " Middle-click beyond end of the line pastes text at the end of the line. |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
294 let col = 20 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
295 call MouseMiddleClick(row, col) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
296 call MouseMiddleRelease(row, col) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
297 call assert_equal(['12345abc6789abc', '123456789'], getline(1, '$'), msg) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
298 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
299 " Middle-click beyond the last line pastes in the last line. |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
300 let row = 5 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
301 let col = 3 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
302 call MouseMiddleClick(row, col) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
303 call MouseMiddleRelease(row, col) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
304 call assert_equal(['12345abc6789abc', '12abc3456789'], getline(1, '$'), msg) |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
305 endfor |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
306 |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
307 let &mouse = save_mouse |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
308 let &term = save_term |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
309 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
310 call test_override('no_query_mouse', 0) |
16423
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
311 let @* = save_quotestar |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
312 bwipe! |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
313 endfunc |
4182fa3b9f70
patch 8.1.1216: mouse middle click is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16352
diff
changeset
|
314 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
315 " TODO: for unclear reasons this test fails if it comes after |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
316 " Test_xterm_mouse_ctrl_click() |
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
317 func Test_1xterm_mouse_wheel() |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
318 new |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
319 let save_mouse = &mouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
320 let save_term = &term |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
321 let save_ttymouse = &ttymouse |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
322 set mouse=a term=xterm |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
323 call setline(1, range(1, 100)) |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
324 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
325 for ttymouse_val in s:ttymouse_values |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
326 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
327 exe 'set ttymouse=' .. ttymouse_val |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
328 go |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
329 call assert_equal(1, line('w0'), msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
330 call assert_equal([0, 1, 1, 0], getpos('.'), msg) |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
331 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
332 call MouseWheelDown(1, 1) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
333 call assert_equal(4, line('w0'), msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
334 call assert_equal([0, 4, 1, 0], getpos('.'), msg) |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
335 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
336 call MouseWheelDown(1, 1) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
337 call assert_equal(7, line('w0'), msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
338 call assert_equal([0, 7, 1, 0], getpos('.'), msg) |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
339 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
340 call MouseWheelUp(1, 1) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
341 call assert_equal(4, line('w0'), msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
342 call assert_equal([0, 7, 1, 0], getpos('.'), msg) |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
343 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
344 call MouseWheelUp(1, 1) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
345 call assert_equal(1, line('w0'), msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
346 call assert_equal([0, 7, 1, 0], getpos('.'), msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
347 endfor |
16265
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
348 |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
349 let &mouse = save_mouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
350 let &term = save_term |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
351 let &ttymouse = save_ttymouse |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
352 bwipe! |
7feb5b90be5f
patch 8.1.1137: xterm mouse wheel escape sequence is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16263
diff
changeset
|
353 endfunc |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
354 |
18223
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
355 " Test that dragging beyond the window (at the bottom and at the top) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
356 " scrolls window content by the number of of lines beyond the window. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
357 func Test_term_mouse_drag_beyond_window() |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
358 let save_mouse = &mouse |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
359 let save_term = &term |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
360 let save_ttymouse = &ttymouse |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
361 call test_override('no_query_mouse', 1) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
362 set mouse=a term=xterm |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
363 let col = 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
364 call setline(1, range(1, 100)) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
365 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
366 " Split into 3 windows, and go into the middle window |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
367 " so we test dragging mouse below and above the window. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
368 2split |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
369 wincmd j |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
370 2split |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
371 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
372 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
373 let msg = 'ttymouse=' .. ttymouse_val |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
374 exe 'set ttymouse=' .. ttymouse_val |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
375 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
376 " Line #10 at the top. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
377 norm! 10zt |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
378 redraw |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
379 call assert_equal(10, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
380 call assert_equal(2, winheight(0), msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
381 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
382 let row = 4 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
383 call MouseLeftClick(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
384 call assert_equal(10, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
385 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
386 " Drag downwards. We're still in the window so topline should |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
387 " not change yet. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
388 let row += 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
389 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
390 call assert_equal(10, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
391 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
392 " We now leave the window at the bottom, so the window content should |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
393 " scroll by 1 line, then 2 lines (etc) as we drag further away. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
394 let row += 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
395 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
396 call assert_equal(11, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
397 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
398 let row += 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
399 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
400 call assert_equal(13, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
401 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
402 " Now drag upwards. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
403 let row -= 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
404 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
405 call assert_equal(14, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
406 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
407 " We're now back in the window so the topline should not change. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
408 let row -= 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
409 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
410 call assert_equal(14, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
411 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
412 let row -= 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
413 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
414 call assert_equal(14, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
415 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
416 " We now leave the window at the top so the window content should |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
417 " scroll by 1 line, then 2, then 3 (etc) in the opposite direction. |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
418 let row -= 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
419 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
420 call assert_equal(13, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
421 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
422 let row -= 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
423 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
424 call assert_equal(11, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
425 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
426 let row -= 1 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
427 call MouseLeftDrag(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
428 call assert_equal(8, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
429 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
430 call MouseLeftRelease(row, col) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
431 call assert_equal(8, winsaveview().topline, msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
432 call assert_equal(2, winheight(0), msg) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
433 endfor |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
434 |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
435 let &mouse = save_mouse |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
436 let &term = save_term |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
437 let &ttymouse = save_ttymouse |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
438 call test_override('no_query_mouse', 0) |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
439 bwipe! |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
440 endfunc |
8a86e518fa42
patch 8.1.2106: no tests for dragging the mouse beyond the window
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
441 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
442 func Test_term_mouse_drag_window_separator() |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
443 let save_mouse = &mouse |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
444 let save_term = &term |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
445 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
446 call test_override('no_query_mouse', 1) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
447 set mouse=a term=xterm |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
448 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
449 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
450 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
451 exe 'set ttymouse=' .. ttymouse_val |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
452 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
453 " Split horizontally and test dragging the horizontal window separator. |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
454 split |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
455 let rowseparator = winheight(0) + 1 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
456 let row = rowseparator |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
457 let col = 1 |
16310
5b8b849dc3aa
patch 8.1.1160: termcodes test would fail in a very big terminal
Bram Moolenaar <Bram@vim.org>
parents:
16300
diff
changeset
|
458 |
16352
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
459 " When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported. |
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
460 if ttymouse_val !=# 'xterm2' || row <= 223 |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
461 call MouseLeftClick(row, col) |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
462 let row -= 1 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
463 call MouseLeftDrag(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
464 call assert_equal(rowseparator - 1, winheight(0) + 1, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
465 let row += 1 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
466 call MouseLeftDrag(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
467 call assert_equal(rowseparator, winheight(0) + 1, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
468 call MouseLeftRelease(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
469 call assert_equal(rowseparator, winheight(0) + 1, msg) |
16310
5b8b849dc3aa
patch 8.1.1160: termcodes test would fail in a very big terminal
Bram Moolenaar <Bram@vim.org>
parents:
16300
diff
changeset
|
470 endif |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
471 bwipe! |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
472 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
473 " Split vertically and test dragging the vertical window separator. |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
474 vsplit |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
475 let colseparator = winwidth(0) + 1 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
476 let row = 1 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
477 let col = colseparator |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
478 |
16352
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
479 " When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported. |
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
480 if ttymouse_val !=# 'xterm2' || col <= 223 |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
481 call MouseLeftClick(row, col) |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
482 let col -= 1 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
483 call MouseLeftDrag(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
484 call assert_equal(colseparator - 1, winwidth(0) + 1, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
485 let col += 1 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
486 call MouseLeftDrag(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
487 call assert_equal(colseparator, winwidth(0) + 1, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
488 call MouseLeftRelease(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
489 call assert_equal(colseparator, winwidth(0) + 1, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
490 endif |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
491 bwipe! |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
492 endfor |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
493 |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
494 let &mouse = save_mouse |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
495 let &term = save_term |
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
496 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
497 call test_override('no_query_mouse', 0) |
16275
ed5172ae1c32
patch 8.1.1142: no test for dragging the window separators with the mouse
Bram Moolenaar <Bram@vim.org>
parents:
16265
diff
changeset
|
498 endfunc |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
499 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
500 func Test_term_mouse_drag_statusline() |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
501 let save_mouse = &mouse |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
502 let save_term = &term |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
503 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
504 call test_override('no_query_mouse', 1) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
505 let save_laststatus = &laststatus |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
506 set mouse=a term=xterm laststatus=2 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
507 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
508 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
509 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
510 exe 'set ttymouse=' .. ttymouse_val |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
511 |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
512 call assert_equal(1, &cmdheight, msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
513 let rowstatusline = winheight(0) + 1 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
514 let row = rowstatusline |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
515 let col = 1 |
16310
5b8b849dc3aa
patch 8.1.1160: termcodes test would fail in a very big terminal
Bram Moolenaar <Bram@vim.org>
parents:
16300
diff
changeset
|
516 |
16352
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
517 if ttymouse_val ==# 'xterm2' && row > 223 |
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
518 " When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported. |
16310
5b8b849dc3aa
patch 8.1.1160: termcodes test would fail in a very big terminal
Bram Moolenaar <Bram@vim.org>
parents:
16300
diff
changeset
|
519 continue |
5b8b849dc3aa
patch 8.1.1160: termcodes test would fail in a very big terminal
Bram Moolenaar <Bram@vim.org>
parents:
16300
diff
changeset
|
520 endif |
5b8b849dc3aa
patch 8.1.1160: termcodes test would fail in a very big terminal
Bram Moolenaar <Bram@vim.org>
parents:
16300
diff
changeset
|
521 |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
522 call MouseLeftClick(row, col) |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
523 let row -= 1 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
524 call MouseLeftDrag(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
525 call assert_equal(2, &cmdheight, msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
526 call assert_equal(rowstatusline - 1, winheight(0) + 1, msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
527 let row += 1 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
528 call MouseLeftDrag(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
529 call assert_equal(1, &cmdheight, msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
530 call assert_equal(rowstatusline, winheight(0) + 1, msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
531 call MouseLeftRelease(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
532 call assert_equal(1, &cmdheight, msg) |
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
533 call assert_equal(rowstatusline, winheight(0) + 1, msg) |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
534 endfor |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
535 |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
536 let &mouse = save_mouse |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
537 let &term = save_term |
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
538 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
539 call test_override('no_query_mouse', 0) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
540 let &laststatus = save_laststatus |
16300
f3d579f009d1
patch 8.1.1155: termcodes tests can be improved
Bram Moolenaar <Bram@vim.org>
parents:
16275
diff
changeset
|
541 endfunc |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
542 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
543 func Test_term_mouse_click_tab() |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
544 let save_mouse = &mouse |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
545 let save_term = &term |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
546 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
547 call test_override('no_query_mouse', 1) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
548 set mouse=a term=xterm |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
549 let row = 1 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
550 |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
551 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec + s:ttymouse_netterm |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
552 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
553 exe 'set ttymouse=' .. ttymouse_val |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
554 e Xfoo |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
555 tabnew Xbar |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
556 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
557 let a = split(execute(':tabs'), "\n") |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
558 call assert_equal(['Tab page 1', |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
559 \ ' Xfoo', |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
560 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
561 \ '> Xbar'], a, msg) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
562 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
563 " Test clicking on tab names in the tabline at the top. |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
564 let col = 2 |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
565 redraw |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
566 call MouseLeftClick(row, col) |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
567 call MouseLeftRelease(row, col) |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
568 let a = split(execute(':tabs'), "\n") |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
569 call assert_equal(['Tab page 1', |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
570 \ '> Xfoo', |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
571 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
572 \ ' Xbar'], a, msg) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
573 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
574 let col = 9 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
575 call MouseLeftClick(row, col) |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
576 call MouseLeftRelease(row, col) |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
577 let a = split(execute(':tabs'), "\n") |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
578 call assert_equal(['Tab page 1', |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
579 \ ' Xfoo', |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
580 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
581 \ '> Xbar'], a, msg) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
582 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
583 %bwipe! |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
584 endfor |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
585 |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
586 let &mouse = save_mouse |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
587 let &term = save_term |
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
588 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
589 call test_override('no_query_mouse', 0) |
16320
57e0f6b4a87d
patch 8.1.1165: no test for mouse clicks in the terminal tabpage line
Bram Moolenaar <Bram@vim.org>
parents:
16310
diff
changeset
|
590 endfunc |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
591 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
592 func Test_term_mouse_click_X_to_close_tab() |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
593 let save_mouse = &mouse |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
594 let save_term = &term |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
595 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
596 call test_override('no_query_mouse', 1) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
597 set mouse=a term=xterm |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
598 let row = 1 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
599 let col = &columns |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
600 |
16493
4912193bc5e7
patch 8.1.1250: no test for netterm mouse
Bram Moolenaar <Bram@vim.org>
parents:
16489
diff
changeset
|
601 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec + s:ttymouse_netterm |
16352
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
602 if ttymouse_val ==# 'xterm2' && col > 223 |
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
603 " When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported. |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
604 continue |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
605 endif |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
606 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
607 exe 'set ttymouse=' .. ttymouse_val |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
608 e Xtab1 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
609 tabnew Xtab2 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
610 tabnew Xtab3 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
611 tabn 2 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
612 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
613 let a = split(execute(':tabs'), "\n") |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
614 call assert_equal(['Tab page 1', |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
615 \ ' Xtab1', |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
616 \ 'Tab page 2', |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
617 \ '> Xtab2', |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
618 \ 'Tab page 3', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
619 \ ' Xtab3'], a, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
620 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
621 " Click on "X" in tabline to close current tab i.e. Xtab2. |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
622 redraw |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
623 call MouseLeftClick(row, col) |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
624 call MouseLeftRelease(row, col) |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
625 let a = split(execute(':tabs'), "\n") |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
626 call assert_equal(['Tab page 1', |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
627 \ ' Xtab1', |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
628 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
629 \ '> Xtab3'], a, msg) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
630 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
631 %bwipe! |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
632 endfor |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
633 |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
634 let &mouse = save_mouse |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
635 let &term = save_term |
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
636 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
637 call test_override('no_query_mouse', 0) |
16324
6b2412d0509f
patch 8.1.1167: no test for closing tab by click in tabline
Bram Moolenaar <Bram@vim.org>
parents:
16320
diff
changeset
|
638 endfunc |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
639 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
640 func Test_term_mouse_drag_to_move_tab() |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
641 let save_mouse = &mouse |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
642 let save_term = &term |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
643 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
644 call test_override('no_query_mouse', 1) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
645 " Set 'mousetime' to 1 to avoid recognizing a double-click in the loop |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
646 set mouse=a term=xterm mousetime=1 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
647 let row = 1 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
648 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
649 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
650 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
651 exe 'set ttymouse=' .. ttymouse_val |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
652 e Xtab1 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
653 tabnew Xtab2 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
654 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
655 let a = split(execute(':tabs'), "\n") |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
656 call assert_equal(['Tab page 1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
657 \ ' Xtab1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
658 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
659 \ '> Xtab2'], a, msg) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
660 redraw |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
661 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
662 " Click in tab2 and drag it to tab1. |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
663 " Check getcharmod() to verify that click is not |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
664 " interpreted as a spurious double-click. |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
665 call MouseLeftClick(row, 10) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
666 call assert_equal(0, getcharmod(), msg) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
667 for col in [9, 8, 7, 6] |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
668 call MouseLeftDrag(row, col) |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
669 endfor |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
670 call MouseLeftRelease(row, col) |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
671 let a = split(execute(':tabs'), "\n") |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
672 call assert_equal(['Tab page 1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
673 \ '> Xtab2', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
674 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
675 \ ' Xtab1'], a, msg) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
676 |
16342
06f3eb443e93
patch 8.1.1176: test for dragging a tab is flaky
Bram Moolenaar <Bram@vim.org>
parents:
16340
diff
changeset
|
677 " brief sleep to avoid causing a double-click |
06f3eb443e93
patch 8.1.1176: test for dragging a tab is flaky
Bram Moolenaar <Bram@vim.org>
parents:
16340
diff
changeset
|
678 sleep 20m |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
679 %bwipe! |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
680 endfor |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
681 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
682 let &mouse = save_mouse |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
683 let &term = save_term |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
684 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
685 call test_override('no_query_mouse', 0) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
686 set mousetime& |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
687 endfunc |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
688 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
689 func Test_term_mouse_double_click_to_create_tab() |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
690 let save_mouse = &mouse |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
691 let save_term = &term |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
692 let save_ttymouse = &ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
693 call test_override('no_query_mouse', 1) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
694 " Set 'mousetime' to a small value, so that double-click works but we don't |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
695 " have to wait long to avoid a triple-click. |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
696 set mouse=a term=xterm mousetime=100 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
697 let row = 1 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
698 let col = 10 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
699 |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
700 let round = 0 |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
701 for ttymouse_val in s:ttymouse_values + s:ttymouse_dec |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
702 let msg = 'ttymouse=' .. ttymouse_val |
16481
8428e0edba1b
patch 8.1.1244: no tests for CTRL-mouse-click
Bram Moolenaar <Bram@vim.org>
parents:
16437
diff
changeset
|
703 exe 'set ttymouse=' .. ttymouse_val |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
704 e Xtab1 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
705 tabnew Xtab2 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
706 |
16487
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
707 if round > 0 |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
708 " We need to sleep, or else the first MouseLeftClick() will be |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
709 " interpreted as a spurious triple-click. |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
710 sleep 100m |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
711 endif |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
712 let round += 1 |
a4732cdcfaaf
patch 8.1.1247: urxvt mouse codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
16481
diff
changeset
|
713 |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
714 let a = split(execute(':tabs'), "\n") |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
715 call assert_equal(['Tab page 1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
716 \ ' Xtab1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
717 \ 'Tab page 2', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
718 \ '> Xtab2'], a, msg) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
719 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
720 redraw |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
721 call MouseLeftClick(row, col) |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
722 " Check getcharmod() to verify that first click is not |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
723 " interpreted as a spurious double-click. |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
724 call assert_equal(0, getcharmod(), msg) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
725 call MouseLeftRelease(row, col) |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
726 call MouseLeftClick(row, col) |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
727 call assert_equal(32, getcharmod(), msg) " double-click |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
728 call MouseLeftRelease(row, col) |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
729 let a = split(execute(':tabs'), "\n") |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
730 call assert_equal(['Tab page 1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
731 \ ' Xtab1', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
732 \ 'Tab page 2', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
733 \ '> [No Name]', |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
734 \ 'Tab page 3', |
16346
2fb516abde42
patch 8.1.1178: when mouse click tests fails value of 'ttytype' is unknown
Bram Moolenaar <Bram@vim.org>
parents:
16342
diff
changeset
|
735 \ ' Xtab2'], a, msg) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
736 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
737 %bwipe! |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
738 endfor |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
739 |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
740 let &mouse = save_mouse |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
741 let &term = save_term |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
742 let &ttymouse = save_ttymouse |
16489
42910f306377
patch 8.1.1248: no test for dec mouse
Bram Moolenaar <Bram@vim.org>
parents:
16487
diff
changeset
|
743 call test_override('no_query_mouse', 0) |
16340
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
744 set mousetime& |
2f70fc41ff7e
patch 8.1.1175: no test for dragging a tab and double click for new tab
Bram Moolenaar <Bram@vim.org>
parents:
16324
diff
changeset
|
745 endfunc |
16348
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
746 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
747 func Test_xterm_mouse_click_in_fold_columns() |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
748 new |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
749 let save_mouse = &mouse |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
750 let save_term = &term |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
751 let save_ttymouse = &ttymouse |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
752 let save_foldcolumn = &foldcolumn |
16352
c742c008953e
patch 8.1.1181: tests for mouse clicks are a bit flaky
Bram Moolenaar <Bram@vim.org>
parents:
16348
diff
changeset
|
753 set mouse=a term=xterm foldcolumn=3 ttymouse=xterm2 |
16348
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
754 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
755 " Create 2 nested folds. |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
756 call setline(1, range(1, 7)) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
757 2,6fold |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
758 norm! zR |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
759 4,5fold |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
760 call assert_equal([-1, -1, -1, 4, 4, -1, -1], |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
761 \ map(range(1, 7), 'foldclosed(v:val)')) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
762 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
763 " Click in "+" of inner fold in foldcolumn should open it. |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
764 redraw |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
765 let row = 4 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
766 let col = 2 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
767 call MouseLeftClick(row, col) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
768 call MouseLeftRelease(row, col) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
769 call assert_equal([-1, -1, -1, -1, -1, -1, -1], |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
770 \ map(range(1, 7), 'foldclosed(v:val)')) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
771 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
772 " Click in "-" of outer fold in foldcolumn should close it. |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
773 redraw |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
774 let row = 2 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
775 let col = 1 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
776 call MouseLeftClick(row, col) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
777 call MouseLeftRelease(row, col) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
778 call assert_equal([-1, 2, 2, 2, 2, 2, -1], |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
779 \ map(range(1, 7), 'foldclosed(v:val)')) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
780 norm! zR |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
781 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
782 " Click in "|" of inner fold in foldcolumn should close it. |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
783 redraw |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
784 let row = 5 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
785 let col = 2 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
786 call MouseLeftClick(row, col) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
787 call MouseLeftRelease(row, col) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
788 call assert_equal([-1, -1, -1, 4, 4, -1, -1], |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
789 \ map(range(1, 7), 'foldclosed(v:val)')) |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
790 |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
791 let &foldcolumn = save_foldcolumn |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
792 let &ttymouse = save_ttymouse |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
793 let &term = save_term |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
794 let &mouse = save_mouse |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
795 bwipe! |
5f3a86ba4261
patch 8.1.1179: no test for mouse clicks in the fold column
Bram Moolenaar <Bram@vim.org>
parents:
16346
diff
changeset
|
796 endfunc |
16936
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
797 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
798 " This only checks if the sequence is recognized. |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
799 func Test_term_rgb_response() |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
800 set t_RF=x |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
801 set t_RB=y |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
802 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
803 " response to t_RF, 4 digits |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
804 let red = 0x12 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
805 let green = 0x34 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
806 let blue = 0x56 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
807 let seq = printf("\<Esc>]10;rgb:%02x00/%02x00/%02x00\x07", red, green, blue) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
808 call feedkeys(seq, 'Lx!') |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
809 call assert_equal(seq, v:termrfgresp) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
810 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
811 " response to t_RF, 2 digits |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
812 let red = 0x78 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
813 let green = 0x9a |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
814 let blue = 0xbc |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
815 let seq = printf("\<Esc>]10;rgb:%02x/%02x/%02x\x07", red, green, blue) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
816 call feedkeys(seq, 'Lx!') |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
817 call assert_equal(seq, v:termrfgresp) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
818 |
16940
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
819 " response to t_RB, 4 digits, dark |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
820 set background=light |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17914
diff
changeset
|
821 eval 'background'->test_option_not_set() |
16940
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
822 let red = 0x29 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
823 let green = 0x4a |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
824 let blue = 0x6b |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
825 let seq = printf("\<Esc>]11;rgb:%02x00/%02x00/%02x00\x07", red, green, blue) |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
826 call feedkeys(seq, 'Lx!') |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
827 call assert_equal(seq, v:termrbgresp) |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
828 call assert_equal('dark', &background) |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
829 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
830 " response to t_RB, 4 digits, light |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
831 set background=dark |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
832 call test_option_not_set('background') |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
833 let red = 0x81 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
834 let green = 0x63 |
16936
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
835 let blue = 0x65 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
836 let seq = printf("\<Esc>]11;rgb:%02x00/%02x00/%02x00\x07", red, green, blue) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
837 call feedkeys(seq, 'Lx!') |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
838 call assert_equal(seq, v:termrbgresp) |
16940
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
839 call assert_equal('light', &background) |
16936
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
840 |
16940
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
841 " response to t_RB, 2 digits, dark |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
842 set background=light |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
843 call test_option_not_set('background') |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
844 let red = 0x47 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
845 let green = 0x59 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
846 let blue = 0x5b |
16936
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
847 let seq = printf("\<Esc>]11;rgb:%02x/%02x/%02x\x07", red, green, blue) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
848 call feedkeys(seq, 'Lx!') |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
849 call assert_equal(seq, v:termrbgresp) |
16940
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
850 call assert_equal('dark', &background) |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
851 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
852 " response to t_RB, 2 digits, light |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
853 set background=dark |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
854 call test_option_not_set('background') |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
855 let red = 0x83 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
856 let green = 0xa4 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
857 let blue = 0xc2 |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
858 let seq = printf("\<Esc>]11;rgb:%02x/%02x/%02x\x07", red, green, blue) |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
859 call feedkeys(seq, 'Lx!') |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
860 call assert_equal(seq, v:termrbgresp) |
1c264ca8f2e8
patch 8.1.1471: 'background' not correctly set for 2-digit rgb termresponse
Bram Moolenaar <Bram@vim.org>
parents:
16936
diff
changeset
|
861 call assert_equal('light', &background) |
16936
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
862 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
863 set t_RF= t_RB= |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
864 endfunc |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
865 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
866 " This only checks if the sequence is recognized. |
18285
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
867 " This must be after other tests, because it has side effects to xterm |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
868 " properties. |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
869 func Test_xx01_term_style_response() |
16936
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
870 " Termresponse is only parsed when t_RV is not empty. |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
871 set t_RV=x |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
872 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
873 " send the termresponse to trigger requesting the XT codes |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
874 let seq = "\<Esc>[>41;337;0c" |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
875 call feedkeys(seq, 'Lx!') |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
876 call assert_equal(seq, v:termresponse) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
877 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
878 let seq = "\<Esc>P1$r2 q\<Esc>\\" |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
879 call feedkeys(seq, 'Lx!') |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
880 call assert_equal(seq, v:termstyleresp) |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
881 |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
882 set t_RV= |
73e6ed2f69a2
patch 8.1.1469: no test for checking the cursor style response
Bram Moolenaar <Bram@vim.org>
parents:
16493
diff
changeset
|
883 endfunc |
16942
5f3e960ce76d
patch 8.1.1472: add_termcap_entry() is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16940
diff
changeset
|
884 |
18360
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
885 " This checks the iTerm2 version response. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
886 " This must be after other tests, because it has side effects to xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
887 " properties. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
888 func Test_xx02_iTerm2_response() |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
889 " Termresponse is only parsed when t_RV is not empty. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
890 set t_RV=x |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
891 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
892 " Old versions of iTerm2 used a different style term response. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
893 set ttymouse=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
894 call test_option_not_set('ttymouse') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
895 let seq = "\<Esc>[>0;95;c" |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
896 call feedkeys(seq, 'Lx!') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
897 call assert_equal(seq, v:termresponse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
898 call assert_equal('xterm', &ttymouse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
899 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
900 set ttymouse=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
901 call test_option_not_set('ttymouse') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
902 let seq = "\<Esc>[>0;95;0c" |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
903 call feedkeys(seq, 'Lx!') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
904 call assert_equal(seq, v:termresponse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
905 call assert_equal('sgr', &ttymouse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
906 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
907 set t_RV= |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
908 endfunc |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
909 |
18285
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
910 " This checks the libvterm version response. |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
911 " This must be after other tests, because it has side effects to xterm |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
912 " properties. |
18360
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
913 func Test_xx03_libvterm_response() |
18285
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
914 " Termresponse is only parsed when t_RV is not empty. |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
915 set t_RV=x |
18311
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
916 |
18285
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
917 set ttymouse=xterm |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
918 call test_option_not_set('ttymouse') |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
919 let seq = "\<Esc>[>0;100;0c" |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
920 call feedkeys(seq, 'Lx!') |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
921 call assert_equal(seq, v:termresponse) |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
922 call assert_equal('sgr', &ttymouse) |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
923 |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
924 set t_RV= |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
925 endfunc |
db8cd5e56586
patch 8.1.2137: parsing the termresponse is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18247
diff
changeset
|
926 |
18360
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
927 " This checks the Mac Terminal.app version response. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
928 " This must be after other tests, because it has side effects to xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
929 " properties. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
930 func Test_xx04_Mac_Terminal_response() |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
931 " Termresponse is only parsed when t_RV is not empty. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
932 set t_RV=x |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
933 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
934 set ttymouse=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
935 call test_option_not_set('ttymouse') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
936 let seq = "\<Esc>[>1;95;0c" |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
937 call feedkeys(seq, 'Lx!') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
938 call assert_equal(seq, v:termresponse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
939 call assert_equal('sgr', &ttymouse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
940 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
941 " Reset is_not_xterm and is_mac_terminal. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
942 set t_RV= |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
943 set term=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
944 set t_RV=x |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
945 endfunc |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
946 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
947 " This checks the mintty version response. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
948 " This must be after other tests, because it has side effects to xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
949 " properties. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
950 func Test_xx05_mintty_response() |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
951 " Termresponse is only parsed when t_RV is not empty. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
952 set t_RV=x |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
953 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
954 set ttymouse=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
955 call test_option_not_set('ttymouse') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
956 let seq = "\<Esc>[>77;20905;0c" |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
957 call feedkeys(seq, 'Lx!') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
958 call assert_equal(seq, v:termresponse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
959 call assert_equal('sgr', &ttymouse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
960 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
961 set t_RV= |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
962 endfunc |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
963 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
964 " This checks the screen version response. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
965 " This must be after other tests, because it has side effects to xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
966 " properties. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
967 func Test_xx06_screen_response() |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
968 " Termresponse is only parsed when t_RV is not empty. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
969 set t_RV=x |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
970 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
971 " Old versions of screen don't support SGR mouse mode. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
972 set ttymouse=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
973 call test_option_not_set('ttymouse') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
974 let seq = "\<Esc>[>83;40500;0c" |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
975 call feedkeys(seq, 'Lx!') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
976 call assert_equal(seq, v:termresponse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
977 call assert_equal('xterm', &ttymouse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
978 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
979 " screen supports SGR mouse mode starting in version 4.7. |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
980 set ttymouse=xterm |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
981 call test_option_not_set('ttymouse') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
982 let seq = "\<Esc>[>83;40700;0c" |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
983 call feedkeys(seq, 'Lx!') |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
984 call assert_equal(seq, v:termresponse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
985 call assert_equal('sgr', &ttymouse) |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
986 |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
987 set t_RV= |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
988 endfunc |
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
989 |
18311
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
990 " This checks the xterm version response. |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
991 " This must be after other tests, because it has side effects to xterm |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
992 " properties. |
18360
e460e6878406
patch 8.1.2174: screen not recognized as supporting "sgr" mouse codes
Bram Moolenaar <Bram@vim.org>
parents:
18350
diff
changeset
|
993 func Test_xx07_xterm_response() |
18311
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
994 " Termresponse is only parsed when t_RV is not empty. |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
995 set t_RV=x |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
996 |
18350
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
997 " Do Terminal.app first to check that is_mac_terminal is reset. |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
998 set ttymouse=xterm |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
999 call test_option_not_set('ttymouse') |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1000 let seq = "\<Esc>[>1;95;0c" |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1001 call feedkeys(seq, 'Lx!') |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1002 call assert_equal(seq, v:termresponse) |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1003 call assert_equal('sgr', &ttymouse) |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1004 |
18311
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1005 " xterm < 95: "xterm" (actually unmodified) |
18350
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1006 set t_RV= |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1007 set term=xterm |
b1796f1b28fa
patch 8.1.2169: terminal flags are never reset
Bram Moolenaar <Bram@vim.org>
parents:
18311
diff
changeset
|
1008 set t_RV=x |
18311
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1009 set ttymouse=xterm |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1010 call test_option_not_set('ttymouse') |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1011 let seq = "\<Esc>[>0;94;0c" |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1012 call feedkeys(seq, 'Lx!') |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1013 call assert_equal(seq, v:termresponse) |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1014 call assert_equal('xterm', &ttymouse) |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1015 |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1016 " xterm >= 95 < 277 "xterm2" |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1017 set ttymouse=xterm |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1018 call test_option_not_set('ttymouse') |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1019 let seq = "\<Esc>[>0;267;0c" |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1020 call feedkeys(seq, 'Lx!') |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1021 call assert_equal(seq, v:termresponse) |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1022 call assert_equal('xterm2', &ttymouse) |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1023 |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1024 " xterm >= 277: "sgr" |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1025 set ttymouse=xterm |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1026 call test_option_not_set('ttymouse') |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1027 let seq = "\<Esc>[>0;277;0c" |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1028 call feedkeys(seq, 'Lx!') |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1029 call assert_equal(seq, v:termresponse) |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1030 call assert_equal('sgr', &ttymouse) |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1031 |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1032 set t_RV= |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1033 endfunc |
60fce48438e2
patch 8.1.2150: no test for 'ttymouse' set from xterm version response
Bram Moolenaar <Bram@vim.org>
parents:
18307
diff
changeset
|
1034 |
16942
5f3e960ce76d
patch 8.1.1472: add_termcap_entry() is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16940
diff
changeset
|
1035 func Test_get_termcode() |
18247
eda5b2cb1dc4
patch 8.1.2118: termcodes test fails when $TERM is "dumb"
Bram Moolenaar <Bram@vim.org>
parents:
18223
diff
changeset
|
1036 try |
eda5b2cb1dc4
patch 8.1.2118: termcodes test fails when $TERM is "dumb"
Bram Moolenaar <Bram@vim.org>
parents:
18223
diff
changeset
|
1037 let k1 = &t_k1 |
eda5b2cb1dc4
patch 8.1.2118: termcodes test fails when $TERM is "dumb"
Bram Moolenaar <Bram@vim.org>
parents:
18223
diff
changeset
|
1038 catch /E113/ |
eda5b2cb1dc4
patch 8.1.2118: termcodes test fails when $TERM is "dumb"
Bram Moolenaar <Bram@vim.org>
parents:
18223
diff
changeset
|
1039 throw 'Skipped: Unable to query termcodes' |
eda5b2cb1dc4
patch 8.1.2118: termcodes test fails when $TERM is "dumb"
Bram Moolenaar <Bram@vim.org>
parents:
18223
diff
changeset
|
1040 endtry |
16942
5f3e960ce76d
patch 8.1.1472: add_termcap_entry() is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16940
diff
changeset
|
1041 set t_k1= |
5f3e960ce76d
patch 8.1.1472: add_termcap_entry() is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16940
diff
changeset
|
1042 set t_k1& |
5f3e960ce76d
patch 8.1.1472: add_termcap_entry() is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16940
diff
changeset
|
1043 call assert_equal(k1, &t_k1) |
16947
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1044 |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1045 " use external termcap first |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1046 set nottybuiltin |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1047 set t_k1= |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1048 set t_k1& |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1049 " when using external termcap may get something else, but it must not be |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1050 " empty, since we would fallback to the builtin one. |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1051 call assert_notequal('', &t_k1) |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1052 |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1053 if &term =~ 'xterm' |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1054 " use internal termcap first |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1055 let term_save = &term |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1056 let &term = 'builtin_' .. &term |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1057 set t_k1= |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1058 set t_k1& |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1059 call assert_equal(k1, &t_k1) |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1060 let &term = term_save |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1061 endif |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1062 |
b2179cf1a0a5
patch 8.1.1474: 'ttybuiltin' is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16942
diff
changeset
|
1063 set ttybuiltin |
16942
5f3e960ce76d
patch 8.1.1472: add_termcap_entry() is not tested
Bram Moolenaar <Bram@vim.org>
parents:
16940
diff
changeset
|
1064 endfunc |
18289
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1065 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1066 func GetEscCodeCSI27(key, modifier) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1067 let key = printf("%d", char2nr(a:key)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1068 let mod = printf("%d", a:modifier) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1069 return "\<Esc>[27;" .. mod .. ';' .. key .. '~' |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1070 endfunc |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1071 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1072 func GetEscCodeCSIu(key, modifier) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1073 let key = printf("%d", char2nr(a:key)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1074 let mod = printf("%d", a:modifier) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1075 return "\<Esc>[" .. key .. ';' .. mod .. 'u' |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1076 endfunc |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1077 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1078 " This checks the CSI sequences when in modifyOtherKeys mode. |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1079 " The mode doesn't need to be enabled, the codes are always detected. |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1080 func RunTest_modifyOtherKeys(func) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1081 new |
18301
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1082 set timeoutlen=10 |
18289
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1083 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1084 " Shift-X is send as 'X' with the shift modifier |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1085 call feedkeys('a' .. a:func('X', 2) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1086 call assert_equal('X', getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1087 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1088 " Ctrl-i is Tab |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1089 call setline(1, '') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1090 call feedkeys('a' .. a:func('i', 5) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1091 call assert_equal("\t", getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1092 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1093 " Ctrl-I is also Tab |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1094 call setline(1, '') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1095 call feedkeys('a' .. a:func('I', 5) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1096 call assert_equal("\t", getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1097 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1098 " Alt-x is ø |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1099 call setline(1, '') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1100 call feedkeys('a' .. a:func('x', 3) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1101 call assert_equal("ø", getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1102 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1103 " Meta-x is also ø |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1104 call setline(1, '') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1105 call feedkeys('a' .. a:func('x', 9) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1106 call assert_equal("ø", getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1107 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1108 " Alt-X is Ø |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1109 call setline(1, '') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1110 call feedkeys('a' .. a:func('X', 3) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1111 call assert_equal("Ø", getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1112 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1113 " Meta-X is ø |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1114 call setline(1, '') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1115 call feedkeys('a' .. a:func('X', 9) .. "\<Esc>", 'Lx!') |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1116 call assert_equal("Ø", getline(1)) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1117 |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1118 bwipe! |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1119 set timeoutlen& |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1120 endfunc |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1121 |
18301
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1122 func Test_modifyOtherKeys_basic() |
18289
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1123 call RunTest_modifyOtherKeys(function('GetEscCodeCSI27')) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1124 call RunTest_modifyOtherKeys(function('GetEscCodeCSIu')) |
16dd8ebc2339
patch 8.1.2139: the modifyOtherKeys codes are not tested
Bram Moolenaar <Bram@vim.org>
parents:
18285
diff
changeset
|
1125 endfunc |
18295
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1126 |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1127 func RunTest_mapping_shift(key, func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1128 call setline(1, '') |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1129 if a:key == '|' |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1130 exe 'inoremap \| xyz' |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1131 else |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1132 exe 'inoremap ' .. a:key .. ' xyz' |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1133 endif |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1134 call feedkeys('a' .. a:func(a:key, 2) .. "\<Esc>", 'Lx!') |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1135 call assert_equal("xyz", getline(1)) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1136 if a:key == '|' |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1137 exe 'iunmap \|' |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1138 else |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1139 exe 'iunmap ' .. a:key |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1140 endif |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1141 endfunc |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1142 |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1143 func RunTest_mapping_works_with_shift(func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1144 new |
18301
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1145 set timeoutlen=10 |
18295
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1146 |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1147 call RunTest_mapping_shift('@', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1148 call RunTest_mapping_shift('A', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1149 call RunTest_mapping_shift('Z', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1150 call RunTest_mapping_shift('^', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1151 call RunTest_mapping_shift('_', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1152 call RunTest_mapping_shift('{', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1153 call RunTest_mapping_shift('|', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1154 call RunTest_mapping_shift('}', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1155 call RunTest_mapping_shift('~', a:func) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1156 |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1157 bwipe! |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1158 set timeoutlen& |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1159 endfunc |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1160 |
18301
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1161 func Test_mapping_works_with_shift_plain() |
18295
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1162 call RunTest_mapping_works_with_shift(function('GetEscCodeCSI27')) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1163 call RunTest_mapping_works_with_shift(function('GetEscCodeCSIu')) |
43e9523f6d84
patch 8.1.2142: some key mappings do not work with modifyOtherKeys
Bram Moolenaar <Bram@vim.org>
parents:
18289
diff
changeset
|
1164 endfunc |
18301
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1165 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1166 func RunTest_mapping_mods(map, key, func, code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1167 call setline(1, '') |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1168 exe 'inoremap ' .. a:map .. ' xyz' |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1169 call feedkeys('a' .. a:func(a:key, a:code) .. "\<Esc>", 'Lx!') |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1170 call assert_equal("xyz", getline(1)) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1171 exe 'iunmap ' .. a:map |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1172 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1173 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1174 func RunTest_mapping_works_with_mods(func, mods, code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1175 new |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1176 set timeoutlen=10 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1177 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1178 if a:mods !~ 'S' |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1179 " Shift by itself has no effect |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1180 call RunTest_mapping_mods('<' .. a:mods .. '-@>', '@', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1181 endif |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1182 call RunTest_mapping_mods('<' .. a:mods .. '-A>', 'A', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1183 call RunTest_mapping_mods('<' .. a:mods .. '-Z>', 'Z', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1184 if a:mods !~ 'S' |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1185 " with Shift code is always upper case |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1186 call RunTest_mapping_mods('<' .. a:mods .. '-a>', 'a', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1187 call RunTest_mapping_mods('<' .. a:mods .. '-z>', 'z', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1188 endif |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1189 if a:mods != 'A' |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1190 " with Alt code is not in upper case |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1191 call RunTest_mapping_mods('<' .. a:mods .. '-a>', 'A', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1192 call RunTest_mapping_mods('<' .. a:mods .. '-z>', 'Z', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1193 endif |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1194 call RunTest_mapping_mods('<' .. a:mods .. '-á>', 'á', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1195 if a:mods !~ 'S' |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1196 " Shift by itself has no effect |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1197 call RunTest_mapping_mods('<' .. a:mods .. '-^>', '^', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1198 call RunTest_mapping_mods('<' .. a:mods .. '-_>', '_', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1199 call RunTest_mapping_mods('<' .. a:mods .. '-{>', '{', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1200 call RunTest_mapping_mods('<' .. a:mods .. '-\|>', '|', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1201 call RunTest_mapping_mods('<' .. a:mods .. '-}>', '}', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1202 call RunTest_mapping_mods('<' .. a:mods .. '-~>', '~', a:func, a:code) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1203 endif |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1204 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1205 bwipe! |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1206 set timeoutlen& |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1207 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1208 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1209 func Test_mapping_works_with_shift() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1210 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'S', 2) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1211 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'S', 2) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1212 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1213 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1214 func Test_mapping_works_with_ctrl() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1215 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'C', 5) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1216 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'C', 5) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1217 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1218 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1219 func Test_mapping_works_with_shift_ctrl() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1220 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'C-S', 6) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1221 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'C-S', 6) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1222 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1223 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1224 " Below we also test the "u" code with Alt, This works, but libvterm would not |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1225 " send the Alt key like this but by prefixing an Esc. |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1226 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1227 func Test_mapping_works_with_alt() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1228 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'A', 3) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1229 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'A', 3) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1230 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1231 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1232 func Test_mapping_works_with_shift_alt() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1233 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'S-A', 4) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1234 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'S-A', 4) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1235 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1236 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1237 func Test_mapping_works_with_ctrl_alt() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1238 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'C-A', 7) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1239 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'C-A', 7) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1240 endfunc |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1241 |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1242 func Test_mapping_works_with_shift_ctrl_alt() |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1243 call RunTest_mapping_works_with_mods(function('GetEscCodeCSI27'), 'C-S-A', 8) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1244 call RunTest_mapping_works_with_mods(function('GetEscCodeCSIu'), 'C-S-A', 8) |
506bf60a30a0
patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabled
Bram Moolenaar <Bram@vim.org>
parents:
18295
diff
changeset
|
1245 endfunc |