Mercurial > vim
annotate src/testdir/test_textobjects.vim @ 24610:c1263588156b v8.2.2844
patch 8.2.2844: Vim9: memory leak when using searchpair()
Commit: https://github.com/vim/vim/commit/24f720998f852dd1ba861ec67d56625a507b915e
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri May 7 20:43:54 2021 +0200
patch 8.2.2844: Vim9: memory leak when using searchpair()
Problem: Vim9: memory leak when using searchpair().
Solution: Free the v_instr field.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 07 May 2021 20:45:03 +0200 |
parents | 3ac0ef0578ef |
children | d4a710f06f02 |
rev | line source |
---|---|
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Test for textobjects |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
17089
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
17049
diff
changeset
|
3 source check.vim |
8e9e9124c7a2
patch 8.1.1544: some balloon tests don't run when they can
Bram Moolenaar <Bram@vim.org>
parents:
17049
diff
changeset
|
4 CheckFeature textobjects |
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
6 func CpoM(line, useM, expected) |
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 new |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 if a:useM |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 set cpoptions+=M |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 else |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 set cpoptions-=M |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 endif |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 call setline(1, a:line) |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 call setreg('"', '') |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 normal! ggfrmavi)y |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 call assert_equal(getreg('"'), a:expected[0]) |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 call setreg('"', '') |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 normal! `afbmavi)y |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
23 call assert_equal(getreg('"'), a:expected[1]) |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
24 |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
25 call setreg('"', '') |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 normal! `afgmavi)y |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 call assert_equal(getreg('"'), a:expected[2]) |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 |
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
29 q! |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
30 endfunc |
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
31 |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
32 func Test_inner_block_without_cpo_M() |
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
33 call CpoM('(red \(blue) green)', 0, ['red \(blue', 'red \(blue', '']) |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
34 endfunc |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
35 |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
36 func Test_inner_block_with_cpo_M_left_backslash() |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
37 call CpoM('(red \(blue) green)', 1, ['red \(blue) green', 'blue', 'red \(blue) green']) |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
38 endfunc |
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
39 |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
40 func Test_inner_block_with_cpo_M_right_backslash() |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
41 call CpoM('(red (blue\) green)', 1, ['red (blue\) green', 'blue\', 'red (blue\) green']) |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
42 endfunc |
9642
8cc4dfadfd48
commit https://github.com/vim/vim/commit/00b24be454800f544676aa8850fb4378a568901e
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
43 |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
44 func Test_quote_selection_selection_exclusive() |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
45 new |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
46 call setline(1, "a 'bcde' f") |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
47 set selection=exclusive |
18677
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
48 |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
49 exe "norm! fdvhi'y" |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
50 call assert_equal('bcde', @") |
18677
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
51 |
18644
7bfe68b637be
patch 8.1.2314: vi' sometimes does not select anything
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
52 let @"='dummy' |
7bfe68b637be
patch 8.1.2314: vi' sometimes does not select anything
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
53 exe "norm! $gevi'y" |
7bfe68b637be
patch 8.1.2314: vi' sometimes does not select anything
Bram Moolenaar <Bram@vim.org>
parents:
17089
diff
changeset
|
54 call assert_equal('bcde', @") |
18677
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
55 |
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
56 let @"='dummy' |
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
57 exe "norm! 0fbhvi'y" |
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
58 call assert_equal('bcde', @") |
953e83e09e78
patch 8.1.2330: vi' does not always work when 'selection' is exclusive
Bram Moolenaar <Bram@vim.org>
parents:
18644
diff
changeset
|
59 |
11478
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
60 set selection&vim |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
61 bw! |
29a781fd3f27
patch 8.0.0622: selecting quoted text fails with 'selection' "exclusive"
Christian Brabandt <cb@256bit.org>
parents:
11091
diff
changeset
|
62 endfunc |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
63 |
15930
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
64 func Test_quote_selection_selection_exclusive_abort() |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
65 new |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
66 set selection=exclusive |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
67 call setline(1, "'abzzc'") |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
68 let exp_curs = [0, 1, 6, 0] |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
69 call cursor(1,1) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
70 exe 'norm! fcdvi"' |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
71 " make sure to end visual mode to have a clear state |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
72 exe "norm! \<esc>" |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
73 call assert_equal(exp_curs, getpos('.')) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
74 call cursor(1,1) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
75 exe 'norm! fcvi"' |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
76 exe "norm! \<esc>" |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
77 call assert_equal(exp_curs, getpos('.')) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
78 call cursor(1,2) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
79 exe 'norm! vfcoi"' |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
80 exe "norm! \<esc>" |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
81 let exp_curs = [0, 1, 2, 0] |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
82 let exp_visu = [0, 1, 7, 0] |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
83 call assert_equal(exp_curs, getpos('.')) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
84 call assert_equal(exp_visu, getpos("'>")) |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
85 set selection&vim |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
86 bw! |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
87 endfunc |
e580c9d75443
patch 8.1.0971: failure for selecting quoted text object moves cursor
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
88 |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
89 " Tests for string and html text objects |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
90 func Test_string_html_objects() |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
91 enew! |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
92 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
93 let t = '"wo\"rd\\" foo' |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
94 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
95 normal! da" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
96 call assert_equal('foo', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
97 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
98 let t = "'foo' 'bar' 'piep'" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
99 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
100 normal! 0va'a'rx |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
101 call assert_equal("xxxxxxxxxxxx'piep'", getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
102 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
103 let t = "bla bla `quote` blah" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
104 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
105 normal! 02f`da` |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
106 call assert_equal("bla bla blah", getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
107 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
108 let t = 'out " in "noXno"' |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
109 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
110 normal! 0fXdi" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
111 call assert_equal('out " in ""', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
112 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
113 let t = "\"'\" 'blah' rep 'buh'" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
114 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
115 normal! 03f'vi'ry |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
116 call assert_equal("\"'\" 'blah'yyyyy'buh'", getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
117 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
118 set quoteescape=+*- |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
119 let t = "bla `s*`d-`+++`l**` b`la" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
120 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
121 normal! di` |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
122 call assert_equal("bla `` b`la", getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
123 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
124 let t = 'voo "nah" sdf " asdf" sdf " sdf" sd' |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
125 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
126 normal! $F"va"oha"i"rz |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
127 call assert_equal('voo "zzzzzzzzzzzzzzzzzzzzzzzzzzzzsd', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
128 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
129 let t = "-<b>asdf<i>Xasdf</i>asdf</b>-" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
130 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
131 normal! fXdit |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
132 call assert_equal('-<b>asdf<i></i>asdf</b>-', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
133 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
134 let t = "-<b>asdX<i>a<i />sdf</i>asdf</b>-" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
135 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
136 normal! 0fXdit |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
137 call assert_equal('-<b></b>-', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
138 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
139 let t = "-<b>asdf<i>Xasdf</i>asdf</b>-" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
140 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
141 normal! fXdat |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
142 call assert_equal('-<b>asdfasdf</b>-', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
143 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
144 let t = "-<b>asdX<i>as<b />df</i>asdf</b>-" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
145 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
146 normal! 0fXdat |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
147 call assert_equal('--', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
148 |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
149 let t = "-<b>\ninnertext object\n</b>" |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
150 put =t |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
151 normal! dit |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
152 call assert_equal('-<b></b>', getline('.')) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
153 |
20199
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
154 " copy the tag block from leading indentation before the start tag |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
155 let t = " <b>\ntext\n</b>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
156 $put =t |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
157 normal! 2kvaty |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
158 call assert_equal("<b>\ntext\n</b>", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
159 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
160 " copy the tag block from the end tag |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
161 let t = "<title>\nwelcome\n</title>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
162 $put =t |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
163 normal! $vaty |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
164 call assert_equal("<title>\nwelcome\n</title>", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
165 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
166 " copy the outer tag block from a tag without an end tag |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
167 let t = "<html>\n<title>welcome\n</html>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
168 $put =t |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
169 normal! k$vaty |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
170 call assert_equal("<html>\n<title>welcome\n</html>", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
171 |
22604
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
172 " nested tag that has < in a different line from > |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
173 let t = "<div><div\n></div></div>" |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
174 $put =t |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
175 normal! k0vaty |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
176 call assert_equal("<div><div\n></div></div>", @") |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
177 |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
178 " nested tag with attribute that has < in a different line from > |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
179 let t = "<div><div\nattr=\"attr\"\n></div></div>" |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
180 $put =t |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
181 normal! 2k0vaty |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
182 call assert_equal("<div><div\nattr=\"attr\"\n></div></div>", @") |
3ac0ef0578ef
patch 8.2.1850: "vat" does not select tags correctly over line break
Bram Moolenaar <Bram@vim.org>
parents:
21552
diff
changeset
|
183 |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
184 set quoteescape& |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
185 enew! |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
186 endfunc |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
187 |
14554
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
188 func Test_empty_html_tag() |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
189 new |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
190 call setline(1, '<div></div>') |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
191 normal 0citxxx |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
192 call assert_equal('<div>xxx</div>', getline(1)) |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
193 |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
194 call setline(1, '<div></div>') |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
195 normal 0f<cityyy |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
196 call assert_equal('<div>yyy</div>', getline(1)) |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
197 |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
198 call setline(1, '<div></div>') |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
199 normal 0f<vitsaaa |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
200 call assert_equal('aaa', getline(1)) |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
201 |
20199
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
202 " selecting a tag block in an non-empty blank line should fail |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
203 call setline(1, ' ') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
204 call assert_beeps('normal $vaty') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
205 |
14554
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
206 bwipe! |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
207 endfunc |
e7f92d1a3fcd
patch 8.1.0290: "cit" on an empty HTML tag changes the whole tag
Christian Brabandt <cb@256bit.org>
parents:
14131
diff
changeset
|
208 |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
209 " Tests for match() and matchstr() |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
210 func Test_match() |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
211 call assert_equal("b", matchstr("abcd", ".", 0, 2)) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
212 call assert_equal("bc", matchstr("abcd", "..", 0, 2)) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
213 call assert_equal("c", matchstr("abcd", ".", 2, 0)) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
214 call assert_equal("a", matchstr("abcd", ".", 0, -1)) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
215 call assert_equal(-1, match("abcd", ".", 0, 5)) |
21552
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
216 call assert_equal(0, match("abcd", ".", 0, -1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
217 call assert_equal(0, match('abc', '.', 0, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
218 call assert_equal(1, match('abc', '.', 0, 2)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
219 call assert_equal(2, match('abc', '.', 0, 3)) |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
220 call assert_equal(-1, match('abc', '.', 0, 4)) |
21552
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
221 call assert_equal(1, match('abc', '.', 1, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
222 call assert_equal(2, match('abc', '.', 2, 1)) |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
223 call assert_equal(-1, match('abc', '.', 3, 1)) |
21552
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
224 call assert_equal(3, match('abc', '$', 0, 1)) |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
225 call assert_equal(-1, match('abc', '$', 0, 2)) |
21552
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
226 call assert_equal(3, match('abc', '$', 1, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
227 call assert_equal(3, match('abc', '$', 2, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
228 call assert_equal(3, match('abc', '$', 3, 1)) |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
229 call assert_equal(-1, match('abc', '$', 4, 1)) |
21552
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
230 call assert_equal(0, match('abc', '\zs', 0, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
231 call assert_equal(1, match('abc', '\zs', 0, 2)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
232 call assert_equal(2, match('abc', '\zs', 0, 3)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
233 call assert_equal(3, match('abc', '\zs', 0, 4)) |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
234 call assert_equal(-1, match('abc', '\zs', 0, 5)) |
21552
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
235 call assert_equal(1, match('abc', '\zs', 1, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
236 call assert_equal(2, match('abc', '\zs', 2, 1)) |
cbc570e66d11
patch 8.2.1326: Vim9: skipping over white space after list
Bram Moolenaar <Bram@vim.org>
parents:
20895
diff
changeset
|
237 call assert_equal(3, match('abc', '\zs', 3, 1)) |
12560
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
238 call assert_equal(-1, match('abc', '\zs', 4, 1)) |
44aa2997239d
patch 8.0.1158: still old style tests
Christian Brabandt <cb@256bit.org>
parents:
11478
diff
changeset
|
239 endfunc |
13223
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
240 |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
241 " This was causing an illegal memory access |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
242 func Test_inner_tag() |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
243 new |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
244 norm ixxx |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
245 call feedkeys("v", 'xt') |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
246 insert |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
247 x |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
248 x |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
249 . |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
250 norm it |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
251 q! |
e37327129859
patch 8.0.1486: accessing invalid memory with "it"
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
252 endfunc |
14131
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
253 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
254 func Test_sentence() |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
255 enew! |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
256 call setline(1, 'A sentence. A sentence? A sentence!') |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
257 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
258 normal yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
259 call assert_equal('A sentence.', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
260 normal yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
261 call assert_equal('A sentence. ', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
262 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
263 normal ) |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
264 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
265 normal yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
266 call assert_equal('A sentence?', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
267 normal yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
268 call assert_equal('A sentence? ', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
269 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
270 normal ) |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
271 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
272 normal yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
273 call assert_equal('A sentence!', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
274 normal yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
275 call assert_equal(' A sentence!', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
276 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
277 normal 0 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
278 normal 2yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
279 call assert_equal('A sentence. ', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
280 normal 3yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
281 call assert_equal('A sentence. A sentence?', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
282 normal 2yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
283 call assert_equal('A sentence. A sentence? ', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
284 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
285 %delete _ |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
286 endfunc |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
287 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
288 func Test_sentence_with_quotes() |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
289 enew! |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
290 call setline(1, 'A "sentence." A sentence.') |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
291 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
292 normal yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
293 call assert_equal('A "sentence."', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
294 normal yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
295 call assert_equal('A "sentence." ', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
296 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
297 normal ) |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
298 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
299 normal yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
300 call assert_equal('A sentence.', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
301 normal yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
302 call assert_equal(' A sentence.', @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
303 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
304 %delete _ |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
305 endfunc |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
306 |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
14554
diff
changeset
|
307 func Test_sentence_with_cursor_on_delimiter() |
14131
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
308 enew! |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
309 call setline(1, "A '([sentence.])' A sentence.") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
310 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
311 normal! 15|yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
312 call assert_equal("A '([sentence.])'", @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
313 normal! 15|yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
314 call assert_equal("A '([sentence.])' ", @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
315 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
316 normal! 16|yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
317 call assert_equal("A '([sentence.])'", @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
318 normal! 16|yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
319 call assert_equal("A '([sentence.])' ", @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
320 |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
321 normal! 17|yis |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
322 call assert_equal("A '([sentence.])'", @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
323 normal! 17|yas |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
324 call assert_equal("A '([sentence.])' ", @") |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
325 |
20895
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
326 " don't get stuck on a quote at the start of a sentence |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
327 %delete _ |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
328 call setline(1, ['A sentence.', '"A sentence"?', 'A sentence!']) |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
329 normal gg)) |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
330 call assert_equal(3, getcurpos()[1]) |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
331 |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
332 %delete _ |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
333 call setline(1, ['A sentence.', "'A sentence'?", 'A sentence!']) |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
334 normal gg)) |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
335 call assert_equal(3, getcurpos()[1]) |
56c86b167b68
patch 8.2.0999: moving to next sentence gets stuck on quote
Bram Moolenaar <Bram@vim.org>
parents:
20199
diff
changeset
|
336 |
14131
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
337 %delete _ |
ec85acd49b8e
patch 8.1.0083: "is" and "as" have trouble with quoted punctuation
Christian Brabandt <cb@256bit.org>
parents:
13223
diff
changeset
|
338 endfunc |
20199
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
339 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
340 " Test for the paragraph (ap) text object |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
341 func Test_paragraph() |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
342 new |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
343 call setline(1, ['First line.', 'Second line.', 'Third line.']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
344 call cursor(2, 1) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
345 normal vapy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
346 call assert_equal("First line.\nSecond line.\nThird line.\n", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
347 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
348 call cursor(2, 1) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
349 call assert_beeps('normal vapapy') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
350 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
351 call setline(1, ['First line.', 'Second line.', ' ', '']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
352 call cursor(1, 1) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
353 normal vapy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
354 call assert_equal("First line.\nSecond line.\n \n\n", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
355 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
356 call setline(1, ['', '', '', 'First line.', 'Second line.']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
357 call cursor(2, 1) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
358 normal yap |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
359 call assert_equal("\n\n\nFirst line.\nSecond line.\n", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
360 call assert_beeps('normal 3yap') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
361 exe "normal \<C-C>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
362 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
363 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
364 call setline(1, [' ', ' ', ' ']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
365 call cursor(2, 1) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
366 normal Vipy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
367 call assert_equal(" \n \n \n", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
368 call cursor(2, 1) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
369 call assert_beeps("normal Vipip") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
370 exe "normal \<C-C>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
371 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
372 close! |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
373 endfunc |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
374 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
375 " Tests for text object aw |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
376 func Test_textobj_a_word() |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
377 new |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
378 call append(0, ['foobar,eins,foobar', 'foo,zwei,foo ']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
379 " diw |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
380 norm! 1gg0diw |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
381 call assert_equal([',eins,foobar', 'foo,zwei,foo ', ''], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
382 " daw |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
383 norm! 2ggEdaw |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
384 call assert_equal([',eins,foobar', 'foo,zwei,', ''], getline(1, '$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
385 " daw the last word in a line |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
386 call setline(1, ['foo bar', 'foo bar', '']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
387 call cursor(1, 5) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
388 normal daw |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
389 call assert_equal('foo', getline(1)) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
390 " aw in visual mode |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
391 call cursor(2, 5) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
392 normal! vawx |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
393 call assert_equal('foo', getline(2)) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
394 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
395 call append(0, ["foo\teins\tfoobar", "foo\tzwei\tfoo "]) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
396 " diW |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
397 norm! 2ggwd2iW |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
398 call assert_equal(['foo eins foobar', 'foo foo ', ''], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
399 " daW |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
400 norm! 1ggd2aW |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
401 call assert_equal(['foobar', 'foo foo ', ''], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
402 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
403 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
404 call append(0, ["foo\teins\tfoobar", "foo\tzwei\tfoo "]) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
405 " aw in visual line mode switches to characterwise mode |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
406 norm! 2gg$Vawd |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
407 call assert_equal(['foo eins foobar', 'foo zwei foo'], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
408 norm! 1gg$Viwd |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
409 call assert_equal(['foo eins ', 'foo zwei foo'], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
410 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
411 " visually selecting a tab before a word with 'selection' set to 'exclusive' |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
412 set selection=exclusive |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
413 normal gg3lvlawy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
414 call assert_equal("\teins", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
415 " visually selecting a tab before a word with 'selection' set to 'inclusive' |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
416 set selection=inclusive |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
417 normal gg3lvlawy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
418 call assert_equal("\teins\t", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
419 set selection& |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
420 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
421 " selecting a word with no non-space characters in a buffer fails |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
422 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
423 call setline(1, ' ') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
424 call assert_beeps('normal 3lyaw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
425 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
426 " visually selecting words backwards with no more words to select |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
427 call setline(1, 'one two') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
428 call assert_beeps('normal 2lvh2aw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
429 exe "normal \<C-C>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
430 call assert_beeps('normal $vh3aw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
431 exe "normal \<C-C>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
432 call setline(1, ['', 'one two']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
433 call assert_beeps('normal 2G2lvh3aw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
434 exe "normal \<C-C>" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
435 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
436 " selecting words forward with no more words to select |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
437 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
438 call setline(1, 'one a') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
439 call assert_beeps('normal 0y3aw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
440 call setline(1, 'one two ') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
441 call assert_beeps('normal 0y3aw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
442 call assert_beeps('normal 03ly2aw') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
443 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
444 " clean up |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
445 bw! |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
446 endfunc |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
447 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
448 " Test for is and as text objects |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
449 func Test_textobj_sentence() |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
450 new |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
451 call append(0, ['This is a test. With some sentences!', '', |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
452 \ 'Even with a question? And one more. And no sentence here']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
453 " Test for dis - does not remove trailing whitespace |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
454 norm! 1gg0dis |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
455 call assert_equal([' With some sentences!', '', |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
456 \ 'Even with a question? And one more. And no sentence here', ''], |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
457 \ getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
458 " Test for das - removes leading whitespace |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
459 norm! 3ggf?ldas |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
460 call assert_equal([' With some sentences!', '', |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
461 \ 'Even with a question? And no sentence here', ''], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
462 " when used in visual mode, is made characterwise |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
463 norm! 3gg$Visy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
464 call assert_equal('v', visualmode()) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
465 " reset visualmode() |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
466 norm! 3ggVy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
467 norm! 3gg$Vasy |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
468 call assert_equal('v', visualmode()) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
469 " basic testing for textobjects a< and at |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
470 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
471 call setline(1, ['<div> ','<a href="foobar" class="foo">xyz</a>',' </div>', ' ']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
472 " a< |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
473 norm! 1gg0da< |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
474 call assert_equal([' ', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
475 norm! 1pj |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
476 call assert_equal([' <div>', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
477 " at |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
478 norm! d2at |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
479 call assert_equal([' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
480 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
481 call setline(1, ['<div> ','<a href="foobar" class="foo">xyz</a>',' </div>', ' ']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
482 " i< |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
483 norm! 1gg0di< |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
484 call assert_equal(['<> ', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
485 norm! 1Pj |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
486 call assert_equal(['<div> ', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
487 norm! d2it |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
488 call assert_equal(['<div></div>',' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
489 " basic testing for a[ and i[ text object |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
490 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
491 call setline(1, [' ', '[', 'one [two]', 'thre', ']']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
492 norm! 3gg0di[ |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
493 call assert_equal([' ', '[', ']'], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
494 call setline(1, [' ', '[', 'one [two]', 'thre', ']']) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
495 norm! 3gg0ftd2a[ |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
496 call assert_equal([' '], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
497 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
498 " clean up |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
499 bw! |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
500 endfunc |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
501 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
502 " Test for quote (', " and `) textobjects |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
503 func Test_textobj_quote() |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
504 new |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
505 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
506 " Test for i" when cursor is in front of a quoted object |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
507 call append(0, 'foo "bar"') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
508 norm! 1gg0di" |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
509 call assert_equal(['foo ""', ''], getline(1,'$')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
510 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
511 " Test for visually selecting an inner quote |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
512 %d |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
513 " extend visual selection from one quote to the next |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
514 call setline(1, 'color "red" color "blue"') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
515 call cursor(1, 7) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
516 normal v4li"y |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
517 call assert_equal('"red" color "blue', @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
518 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
519 " try to extend visual selection from one quote to a non-existing quote |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
520 call setline(1, 'color "red" color blue') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
521 call cursor(1, 7) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
522 call feedkeys('v4li"y', 'xt') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
523 call assert_equal('"red"', @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
524 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
525 " try to extend visual selection from one quote to a next partial quote |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
526 call setline(1, 'color "red" color "blue') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
527 call cursor(1, 7) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
528 normal v4li"y |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
529 call assert_equal('"red" color ', @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
530 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
531 " select a quote backwards in visual mode |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
532 call cursor(1, 12) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
533 normal vhi"y |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
534 call assert_equal('red" ', @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
535 call assert_equal(8, col('.')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
536 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
537 " select a quote backwards in visual mode from outside the quote |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
538 call cursor(1, 17) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
539 normal v2hi"y |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
540 call assert_equal('red', @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
541 call assert_equal(8, col('.')) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
542 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
543 " visually selecting a quote with 'selection' set to 'exclusive' |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
544 call setline(1, 'He said "How are you?"') |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
545 set selection=exclusive |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
546 normal 012lv2li"y |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
547 call assert_equal('How are you?', @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
548 set selection& |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
549 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
550 " try copy a quote object with a single quote in the line |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
551 call setline(1, "Smith's car") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
552 call cursor(1, 6) |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
553 call assert_beeps("normal yi'") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
554 call assert_beeps("normal 2lyi'") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
555 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
556 " selecting space before and after a quoted string |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
557 call setline(1, "some 'special' string") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
558 normal 0ya' |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
559 call assert_equal("'special' ", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
560 call setline(1, "some 'special'string") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
561 normal 0ya' |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
562 call assert_equal(" 'special'", @") |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
563 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
564 close! |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
565 endfunc |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
566 |
a4bd28e2cf1d
patch 8.2.0655: search code not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
18677
diff
changeset
|
567 " vim: shiftwidth=2 sts=2 expandtab |