Mercurial > vim
annotate src/testdir/test_virtualedit.vim @ 32094:7d94b1c0f292 v9.0.1378
patch 9.0.1378: illegal memory access when using virtual editing
Commit: https://github.com/vim/vim/commit/c99cbf8f289bdda5d4a77d7ec415850a520330ba
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 4 14:13:10 2023 +0000
patch 9.0.1378: illegal memory access when using virtual editing
Problem: Illegal memory access when using virtual editing.
Solution: Make sure "startspaces" is not negative.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 04 Mar 2023 15:15:04 +0100 |
parents | dbec60b8c253 |
children | 22a08166a876 |
rev | line source |
---|---|
12164
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Tests for 'virtualedit'. |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
3 func Test_yank_move_change() |
12279
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
4 new |
12164
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 call setline(1, [ |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 \ "func foo() error {", |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 \ "\tif n, err := bar();", |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 \ "\terr != nil {", |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 \ "\t\treturn err", |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 \ "\t}", |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 \ "\tn = n * n", |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 \ ]) |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 set virtualedit=all |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 set ts=4 |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 function! MoveSelectionDown(count) abort |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 normal! m` |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 silent! exe "'<,'>move'>+".a:count |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 norm! `` |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 endfunction |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 xmap ]e :<C-U>call MoveSelectionDown(v:count1)<CR> |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 2 |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
23 normal 2gg |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 normal J |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
25 normal jVj |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 normal ]e |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 normal ce |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 bwipe! |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
29 set virtualedit= |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
30 set ts=8 |
5d82470552ce
patch 8.0.0962: crash with virtualedit and joining lines
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
31 endfunc |
12279
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
32 |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
33 func Test_paste_end_of_line() |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
34 new |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
35 set virtualedit=all |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
36 call setline(1, ['456', '123']) |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
37 normal! gg0"ay$ |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
38 exe "normal! 2G$lllA\<C-O>:normal! \"agP\r" |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
39 call assert_equal('123456', getline(2)) |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
40 |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
41 bwipe! |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
42 set virtualedit= |
57e0b701611e
patch 8.0.1019: pasting in virtual edit happens in the wrong place
Christian Brabandt <cb@256bit.org>
parents:
12164
diff
changeset
|
43 endfunc |
13786
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
44 |
14216
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
45 func Test_replace_end_of_line() |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
46 new |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
47 set virtualedit=all |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
48 call setline(1, range(20)) |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
49 exe "normal! gg2jv10lr-" |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
50 call assert_equal(["1", "-----------", "3"], getline(2,4)) |
15607
2dcaa860e3fc
patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents:
14216
diff
changeset
|
51 call setline(1, range(20)) |
2dcaa860e3fc
patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents:
14216
diff
changeset
|
52 exe "normal! gg2jv10lr\<c-k>hh" |
2dcaa860e3fc
patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents:
14216
diff
changeset
|
53 call assert_equal(["1", "───────────", "3"], getline(2,4)) |
14216
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
54 |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
55 bwipe! |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
56 set virtualedit= |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
57 endfunc |
12bdbf9f7e20
patch 8.1.0125: virtual edit replace with multi-byte fails at end of line
Christian Brabandt <cb@256bit.org>
parents:
13786
diff
changeset
|
58 |
13786
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
59 func Test_edit_CTRL_G() |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
60 new |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
61 set virtualedit=insert |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
62 call setline(1, ['123', '1', '12']) |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
63 exe "normal! ggA\<c-g>jx\<c-g>jx" |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
64 call assert_equal(['123', '1 x', '12 x'], getline(1,'$')) |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
65 |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
66 set virtualedit=all |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
67 %d_ |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
68 call setline(1, ['1', '12']) |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
69 exe "normal! ggllix\<c-g>jx" |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
70 call assert_equal(['1 x', '12x'], getline(1,'$')) |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
71 |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
72 |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
73 bwipe! |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
74 set virtualedit= |
0fa21ba32e21
patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Christian Brabandt <cb@256bit.org>
parents:
12279
diff
changeset
|
75 endfunc |
18481
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
76 |
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
77 func Test_edit_change() |
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
78 new |
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
79 set virtualedit=all |
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
80 call setline(1, "\t⒌") |
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
81 normal Cx |
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
82 call assert_equal('x', getline(1)) |
24725
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
83 " Do a visual block change |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
84 call setline(1, ['a', 'b', 'c']) |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
85 exe "normal gg3l\<C-V>2jcx" |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
86 call assert_equal(['a x', 'b x', 'c x'], getline(1, '$')) |
18481
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
87 bwipe! |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
88 set virtualedit= |
18481
26256dcadd77
patch 8.1.2235: "C" with 'virtualedit' set does not include multi-byte char
Bram Moolenaar <Bram@vim.org>
parents:
15607
diff
changeset
|
89 endfunc |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
90 |
32094
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
91 func Test_edit_special_char() |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
92 new |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
93 se ve=all |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
94 norm a0 |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
95 sil! exe "norm o00000\<Nul>k<a0s" |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
96 |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
97 bwipe! |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
98 set virtualedit= |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
99 endfunc |
7d94b1c0f292
patch 9.0.1378: illegal memory access when using virtual editing
Bram Moolenaar <Bram@vim.org>
parents:
31849
diff
changeset
|
100 |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
101 " Tests for pasting at the beginning, end and middle of a tab character |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
102 " in virtual edit mode. |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
103 func Test_paste_in_tab() |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
104 new |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
105 call append(0, '') |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
106 set virtualedit=all |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
107 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
108 " Tests for pasting a register with characterwise mode type |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
109 call setreg('"', 'xyz', 'c') |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
110 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
111 " paste (p) unnamed register at the beginning of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
112 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
113 call cursor(1, 2, 0) |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
114 normal p |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
115 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
116 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
117 " paste (P) unnamed register at the beginning of a tab |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
118 call setline(1, "a\tb") |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
119 call cursor(1, 2, 0) |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
120 normal P |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
121 call assert_equal("axyz\tb", getline(1)) |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
122 |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
123 " paste (p) unnamed register at the end of a tab |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
124 call setline(1, "a\tb") |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
125 call cursor(1, 2, 6) |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
126 normal p |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
127 call assert_equal("a\txyzb", getline(1)) |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
128 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
129 " paste (P) unnamed register at the end of a tab |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
130 call setline(1, "a\tb") |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
131 call cursor(1, 2, 6) |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
132 normal P |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
133 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
134 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
135 " Tests for pasting a register with blockwise mode type |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
136 call setreg('"', 'xyz', 'b') |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
137 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
138 " paste (p) unnamed register at the beginning of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
139 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
140 call cursor(1, 2, 0) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
141 normal p |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
142 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
143 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
144 " paste (P) unnamed register at the beginning of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
145 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
146 call cursor(1, 2, 0) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
147 normal P |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
148 call assert_equal("axyz\tb", getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
149 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
150 " paste (p) unnamed register at the end of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
151 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
152 call cursor(1, 2, 6) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
153 normal p |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
154 call assert_equal("a\txyzb", getline(1)) |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
155 |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
156 " paste (P) unnamed register at the end of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
157 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
158 call cursor(1, 2, 6) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
159 normal P |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
160 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
161 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
162 " Tests for pasting with gp and gP in virtual edit mode |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
163 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
164 " paste (gp) unnamed register at the beginning of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
165 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
166 call cursor(1, 2, 0) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
167 normal gp |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
168 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
169 call assert_equal([0, 1, 12, 0, 12], getcurpos()) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
170 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
171 " paste (gP) unnamed register at the beginning of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
172 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
173 call cursor(1, 2, 0) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
174 normal gP |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
175 call assert_equal("axyz\tb", getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
176 call assert_equal([0, 1, 5, 0, 5], getcurpos()) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
177 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
178 " paste (gp) unnamed register at the end of a tab |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
179 call setline(1, "a\tb") |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
180 call cursor(1, 2, 6) |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
181 normal gp |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
182 call assert_equal("a\txyzb", getline(1)) |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
183 call assert_equal([0, 1, 6, 0, 12], getcurpos()) |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
184 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
185 " paste (gP) unnamed register at the end of a tab |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
186 call setline(1, "a\tb") |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
187 call cursor(1, 2, 6) |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
188 normal gP |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
189 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
190 call assert_equal([0, 1, 12, 0, 12], getcurpos()) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
191 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
192 " Tests for pasting a named register |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
193 let @r = 'xyz' |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
194 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
195 " paste (gp) named register in the middle of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
196 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
197 call cursor(1, 2, 2) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
198 normal "rgp |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
199 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
200 call assert_equal([0, 1, 8, 0, 8], getcurpos()) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
201 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
202 " paste (gP) named register in the middle of a tab |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
203 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
204 call cursor(1, 2, 2) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
205 normal "rgP |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
206 call assert_equal('a xyz b', getline(1)) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
207 call assert_equal([0, 1, 7, 0, 7], getcurpos()) |
18771
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
208 |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
209 bwipe! |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
210 set virtualedit= |
50fde4e20790
patch 8.1.2375: no suffucient testing for registers
Bram Moolenaar <Bram@vim.org>
parents:
18481
diff
changeset
|
211 endfunc |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
212 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
213 " Test for yanking a few spaces within a tab to a register |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
214 func Test_yank_in_tab() |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
215 new |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
216 let @r = '' |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
217 call setline(1, "a\tb") |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
218 set virtualedit=all |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
219 call cursor(1, 2, 2) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
220 normal "ry5l |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
221 call assert_equal(' ', @r) |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
222 |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
223 bwipe! |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
224 set virtualedit= |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
225 endfunc |
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
226 |
18791
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
227 " Insert "keyword keyw", ESC, C CTRL-N, shows "keyword ykeyword". |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
228 " Repeating CTRL-N fixes it. (Mary Ellen Foster) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
229 func Test_ve_completion() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
230 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
231 set completeopt&vim |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
232 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
233 exe "normal ikeyword keyw\<Esc>C\<C-N>" |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
234 call assert_equal('keyword keyword', getline(1)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
235 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
236 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
237 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
238 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
239 " Using "C" then then <CR> moves the last remaining character to the next |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
240 " line. (Mary Ellen Foster) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
241 func Test_ve_del_to_eol() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
242 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
243 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
244 call append(0, 'all your base are belong to us') |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
245 call search('are', 'w') |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
246 exe "normal C\<CR>are belong to vim" |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
247 call assert_equal(['all your base ', 'are belong to vim'], getline(1, 2)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
248 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
249 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
250 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
251 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
252 " When past the end of a line that ends in a single character "b" skips |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
253 " that word. |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
254 func Test_ve_b_past_eol() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
255 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
256 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
257 call append(0, '1 2 3 4 5 6') |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
258 normal gg^$15lbC7 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
259 call assert_equal('1 2 3 4 5 7', getline(1)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
260 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
261 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
262 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
263 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
264 " Make sure 'i', 'C', 'a', 'A' and 'D' works |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
265 func Test_ve_ins_del() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
266 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
267 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
268 call append(0, ["'i'", "'C'", "'a'", "'A'", "'D'"]) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
269 call cursor(1, 1) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
270 normal $4lix |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
271 call assert_equal("'i' x", getline(1)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
272 call cursor(2, 1) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
273 normal $4lCx |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
274 call assert_equal("'C' x", getline(2)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
275 call cursor(3, 1) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
276 normal $4lax |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
277 call assert_equal("'a' x", getline(3)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
278 call cursor(4, 1) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
279 normal $4lAx |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
280 call assert_equal("'A'x", getline(4)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
281 call cursor(5, 1) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
282 normal $4lDix |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
283 call assert_equal("'D' x", getline(5)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
284 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
285 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
286 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
287 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
288 " Test for yank bug reported by Mark Waggoner. |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
289 func Test_yank_block() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
290 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
291 set virtualedit=block |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
292 call append(0, repeat(['this is a test'], 3)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
293 exe "normal gg^2w\<C-V>3jy" |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
294 call assert_equal("a\na\na\n ", @") |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
295 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
296 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
297 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
298 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
299 " Test "r" beyond the end of the line |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
300 func Test_replace_after_eol() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
301 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
302 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
303 call append(0, '"r"') |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
304 normal gg$5lrxa |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
305 call assert_equal('"r" x', getline(1)) |
24725
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
306 " visual block replace |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
307 %d _ |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
308 call setline(1, ['a', '', 'b']) |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
309 exe "normal 2l\<C-V>2jrx" |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
310 call assert_equal(['a x', ' x', 'b x'], getline(1, '$')) |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
311 " visual characterwise selection replace after eol |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
312 %d _ |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
313 call setline(1, 'a') |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
314 normal 4lv2lrx |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
315 call assert_equal('a xxx', getline(1)) |
18791
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
316 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
317 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
318 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
319 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
320 " Test "r" on a tab |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
321 " Note that for this test, 'ts' must be 8 (the default). |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
322 func Test_replace_on_tab() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
323 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
324 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
325 call append(0, "'r'\t") |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
326 normal gg^5lrxAy |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
327 call assert_equal("'r' x y", getline(1)) |
19613
9c15be376631
patch 8.2.0363: some Normal mode commands not tested
Bram Moolenaar <Bram@vim.org>
parents:
18791
diff
changeset
|
328 call setline(1, 'aaaaaaaaaaaa') |
9c15be376631
patch 8.2.0363: some Normal mode commands not tested
Bram Moolenaar <Bram@vim.org>
parents:
18791
diff
changeset
|
329 exe "normal! gg2lgR\<Tab>" |
9c15be376631
patch 8.2.0363: some Normal mode commands not tested
Bram Moolenaar <Bram@vim.org>
parents:
18791
diff
changeset
|
330 call assert_equal("aa\taaaa", getline(1)) |
18791
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
331 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
332 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
333 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
334 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
335 " Test to make sure 'x' can delete control characters |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
336 func Test_ve_del_ctrl_chars() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
337 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
338 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
339 call append(0, "a\<C-V>b\<CR>sd") |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
340 set display=uhex |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
341 normal gg^xxxxxxi[text] |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
342 set display= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
343 call assert_equal('[text]', getline(1)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
344 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
345 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
346 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
347 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
348 " Test for ^Y/^E due to bad w_virtcol value, reported by |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
349 " Roy <royl@netropolis.net>. |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
350 func Test_ins_copy_char() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
351 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
352 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
353 call append(0, 'abcv8efi.him2kl') |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
354 exe "normal gg^O\<Esc>3li\<C-E>\<Esc>4li\<C-E>\<Esc>4li\<C-E> <--" |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
355 exe "normal j^o\<Esc>4li\<C-Y>\<Esc>4li\<C-Y>\<Esc>4li\<C-Y> <--" |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
356 call assert_equal(' v i m <--', getline(1)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
357 call assert_equal(' 8 . 2 <--', getline(3)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
358 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
359 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
360 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
361 |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
362 " Test for yanking and pasting using the small delete register |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
363 func Test_yank_paste_small_del_reg() |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
364 new |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
365 set virtualedit=all |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
366 call append(0, "foo, bar") |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
367 normal ggdewve"-p |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
368 call assert_equal(', foo', getline(1)) |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
369 bwipe! |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
370 set virtualedit= |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
371 endfunc |
f966b20bb74d
patch 8.1.2384: test 48 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18784
diff
changeset
|
372 |
19969
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
373 " Test for delete that breaks a tab into spaces |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
374 func Test_delete_break_tab() |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
375 new |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
376 call setline(1, "one\ttwo") |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
377 set virtualedit=all |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
378 normal v3ld |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
379 call assert_equal(' two', getline(1)) |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
380 set virtualedit& |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
381 close! |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
382 endfunc |
b07672d13ff9
patch 8.2.0540: regexp and other code not tested
Bram Moolenaar <Bram@vim.org>
parents:
19613
diff
changeset
|
383 |
20941
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
384 " Test for using <BS>, <C-W> and <C-U> in virtual edit mode |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
385 " to erase character, word and line. |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
386 func Test_ve_backspace() |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
387 new |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
388 call setline(1, 'sample') |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
389 set virtualedit=all |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
390 set backspace=indent,eol,start |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
391 exe "normal 15|i\<BS>\<BS>" |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
392 call assert_equal([0, 1, 7, 5], getpos('.')) |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
393 exe "normal 15|i\<C-W>" |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
394 call assert_equal([0, 1, 6, 0], getpos('.')) |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
395 exe "normal 15|i\<C-U>" |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
396 call assert_equal([0, 1, 1, 0], getpos('.')) |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
397 set backspace& |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
398 set virtualedit& |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
399 close! |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
400 endfunc |
505d97ea54da
patch 8.2.1022: various parts of code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19969
diff
changeset
|
401 |
24725
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
402 " Test for delete (x) on EOL character and after EOL |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
403 func Test_delete_past_eol() |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
404 new |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
405 call setline(1, "ab") |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
406 set virtualedit=all |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
407 exe "normal 2lx" |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
408 call assert_equal('ab', getline(1)) |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
409 exe "normal 10lx" |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
410 call assert_equal('ab', getline(1)) |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
411 set virtualedit& |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
412 bw! |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
413 endfunc |
3cdbce5ba73f
patch 8.2.2901: some operators not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
20941
diff
changeset
|
414 |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
415 " After calling s:TryVirtualeditReplace(), line 1 will contain one of these |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
416 " two strings, depending on whether virtual editing is on or off. |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
417 let s:result_ve_on = 'a x' |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
418 let s:result_ve_off = 'x' |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
419 |
25487
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
420 " Utility function for Test_global_local_virtualedit() |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
421 func s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
422 call setline(1, 'a') |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
423 normal gg7l |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
424 normal rx |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
425 endfunc |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
426 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
427 " Test for :set and :setlocal |
25487
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
428 func Test_global_local_virtualedit() |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
429 new |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
430 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
431 " Verify that 'virtualedit' is initialized to empty, can be set globally to |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
432 " all and to empty, and can be set locally to all and to empty. |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
433 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
434 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
435 set ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
436 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
437 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
438 set ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
439 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
440 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
441 setlocal ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
442 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
443 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
444 setlocal ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
445 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
446 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
447 |
25487
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
448 " Verify that :set affects multiple windows. |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
449 split |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
450 set ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
451 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
452 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
453 wincmd p |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
454 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
455 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
456 set ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
457 wincmd p |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
458 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
459 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
460 bwipe! |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
461 |
25487
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
462 " Verify that :setlocal affects only the current window. |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
463 new |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
464 split |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
465 setlocal ve=all |
25487
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
466 call s:TryVirtualeditReplace() |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
467 call assert_equal(s:result_ve_on, getline(1)) |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
468 wincmd p |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
469 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
470 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
471 bwipe! |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
472 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
473 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
474 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
475 " Verify that the buffer 'virtualedit' state follows the global value only |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
476 " when empty and that "none" works as expected. |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
477 " |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
478 " 'virtualedit' State |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
479 " +--------+--------------------------+ |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
480 " | Local | Global | |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
481 " | | | |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
482 " +--------+--------+--------+--------+ |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
483 " | | "" | "all" | "none" | |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
484 " +--------+--------+--------+--------+ |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
485 " | "" | off | on | off | |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
486 " | "all" | on | on | on | |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
487 " | "none" | off | off | off | |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
488 " +--------+--------+--------+--------+ |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
489 new |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
490 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
491 setglobal ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
492 setlocal ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
493 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
494 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
495 setlocal ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
496 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
497 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
498 setlocal ve=none |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
499 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
500 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
501 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
502 setglobal ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
503 setlocal ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
504 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
505 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
506 setlocal ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
507 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
508 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
509 setlocal ve=none |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
510 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
511 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
512 setlocal ve=NONE |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
513 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
514 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
515 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
516 setglobal ve=none |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
517 setlocal ve= |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
518 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
519 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
520 setlocal ve=all |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
521 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
522 call assert_equal(s:result_ve_on, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
523 setlocal ve=none |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
524 call s:TryVirtualeditReplace() |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
525 call assert_equal(s:result_ve_off, getline(1)) |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
526 |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
527 bwipe! |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
528 |
25487
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
529 " Verify that the 'virtualedit' state is copied to new windows. |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
530 new |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
531 call s:TryVirtualeditReplace() |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
532 call assert_equal(s:result_ve_off, getline(1)) |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
533 split |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
534 setlocal ve=all |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
535 call s:TryVirtualeditReplace() |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
536 call assert_equal(s:result_ve_on, getline(1)) |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
537 split |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
538 call s:TryVirtualeditReplace() |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
539 call assert_equal(s:result_ve_on, getline(1)) |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
540 setlocal ve= |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
541 split |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
542 call s:TryVirtualeditReplace() |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
543 call assert_equal(s:result_ve_off, getline(1)) |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
544 bwipe! |
c26ff3203b43
patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Bram Moolenaar <Bram@vim.org>
parents:
25380
diff
changeset
|
545 |
25380
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
546 setlocal virtualedit& |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
547 set virtualedit& |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
548 endfunc |
ac88cd21ae88
patch 8.2.3227: 'virtualedit' can only be set globally
Bram Moolenaar <Bram@vim.org>
parents:
24725
diff
changeset
|
549 |
31845
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
550 func Test_virtualedit_setlocal() |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
551 enew |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
552 setglobal virtualedit=all |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
553 setlocal virtualedit=all |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
554 normal! l |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
555 redraw |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
556 setlocal virtualedit=none |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
557 call assert_equal(1, wincol()) |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
558 |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
559 setlocal virtualedit& |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
560 set virtualedit& |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
561 endfunc |
2ce8e7c4acf4
patch 9.0.1255: changing 'virtualedit' does not have immediate effect
Bram Moolenaar <Bram@vim.org>
parents:
30295
diff
changeset
|
562 |
29674
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
563 func Test_virtualedit_mouse() |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
564 let save_mouse = &mouse |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
565 set mouse=a |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
566 set virtualedit=all |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
567 new |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
568 |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
569 call setline(1, ["text\tword"]) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
570 redraw |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
571 call test_setmouse(1, 4) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
572 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
573 call assert_equal([0, 1, 4, 0, 4], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
574 call test_setmouse(1, 5) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
575 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
576 call assert_equal([0, 1, 5, 0, 5], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
577 call test_setmouse(1, 6) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
578 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
579 call assert_equal([0, 1, 5, 1, 6], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
580 call test_setmouse(1, 7) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
581 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
582 call assert_equal([0, 1, 5, 2, 7], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
583 call test_setmouse(1, 8) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
584 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
585 call assert_equal([0, 1, 5, 3, 8], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
586 call test_setmouse(1, 9) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
587 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
588 call assert_equal([0, 1, 6, 0, 9], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
589 call test_setmouse(1, 15) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
590 call feedkeys("\<LeftMouse>", "xt") |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
591 call assert_equal([0, 1, 10, 2, 15], getcurpos()) |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
592 |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
593 bwipe! |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
594 let &mouse = save_mouse |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
595 set virtualedit& |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
596 endfunc |
b11130c6e694
patch 9.0.0177: cursor position wrong with 'virtualedit' and mouse click
Bram Moolenaar <Bram@vim.org>
parents:
25487
diff
changeset
|
597 |
31849
dbec60b8c253
patch 9.0.1257: code style is not check in test scripts
Bram Moolenaar <Bram@vim.org>
parents:
31845
diff
changeset
|
598 " this was replacing the NUL at the end of the line |
30295
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
599 func Test_virtualedit_replace_after_tab() |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
600 new |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
601 s/\v/ 0 |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
602 set ve=all |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
603 let @" = '' |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
604 sil! norm vPvr0 |
31849
dbec60b8c253
patch 9.0.1257: code style is not check in test scripts
Bram Moolenaar <Bram@vim.org>
parents:
31845
diff
changeset
|
605 |
30295
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
606 call assert_equal("\t0", getline(1)) |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
607 set ve& |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
608 bwipe! |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
609 endfunc |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
610 |
da023a22d73e
patch 9.0.0483: illegal memory access when replacing in virtualedit mode
Bram Moolenaar <Bram@vim.org>
parents:
29674
diff
changeset
|
611 |
18784
7b57a80f70f6
patch 8.1.2381: not all register related code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
18771
diff
changeset
|
612 " vim: shiftwidth=2 sts=2 expandtab |