Mercurial > vim
annotate src/testdir/test64.in @ 8629:54ac275e3fc4 v7.4.1604
commit https://github.com/vim/vim/commit/3848e00e0177abdb31bc600234967863ec487233
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 19 18:42:29 2016 +0100
patch 7.4.1604
Problem: Although emoji characters are ambiguous width, best is to treat
them as full width.
Solution: Update the Unicode character tables. Add the 'emoji' options.
(Yasuhiro Matsumoto)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 19 Mar 2016 18:45:04 +0100 |
parents | dfd593d81818 |
children | 3666915cac0b |
rev | line source |
---|---|
4444 | 1 Test for regexp patterns without multi-byte support. |
2 See test95 for multi-byte tests. | |
1357 | 3 |
4 A pattern that gives the expected result produces OK, so that we know it was | |
5 actually tried. | |
6 | |
7 STARTTEST | |
8 :so small.vim | |
9 :" tl is a List of Lists with: | |
6510 | 10 :" regexp engine |
1357 | 11 :" regexp pattern |
12 :" text to test the pattern on | |
13 :" expected match (optional) | |
14 :" expected submatch 1 (optional) | |
15 :" expected submatch 2 (optional) | |
16 :" etc. | |
17 :" When there is no match use only the first two items. | |
18 :let tl = [] | |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
19 :" |
4444 | 20 :"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" |
21 :"""" Previously written tests """""""""""""""""""""""""""""""" | |
22 :"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" | |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
23 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
24 :call add(tl, [2, 'ab', 'aab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
25 :call add(tl, [2, 'b', 'abcdef', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
26 :call add(tl, [2, 'bc*', 'abccccdef', 'bcccc']) |
4675
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
27 :call add(tl, [2, 'bc\{-}', 'abccccdef', 'b']) |
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
28 :call add(tl, [2, 'bc\{-}\(d\)', 'abccccdef', 'bccccd', 'd']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
29 :call add(tl, [2, 'bc*', 'abbdef', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
30 :call add(tl, [2, 'c*', 'ccc', 'ccc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
31 :call add(tl, [2, 'bc*', 'abdef', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
32 :call add(tl, [2, 'c*', 'abdef', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
33 :call add(tl, [2, 'bc\+', 'abccccdef', 'bcccc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
34 :call add(tl, [2, 'bc\+', 'abdef']) "no match |
1465 | 35 :" |
36 :"operator \| | |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
37 :call add(tl, [2, 'a\|ab', 'cabd', 'a']) "alternation is ordered |
1465 | 38 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
39 :call add(tl, [2, 'c\?', 'ccb', 'c']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
40 :call add(tl, [2, 'bc\?', 'abd', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
41 :call add(tl, [2, 'bc\?', 'abccd', 'bc']) |
1465 | 42 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
43 :call add(tl, [2, '\va{1}', 'ab', 'a']) |
1465 | 44 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
45 :call add(tl, [2, '\va{2}', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
46 :call add(tl, [2, '\va{2}', 'caad', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
47 :call add(tl, [2, '\va{2}', 'aba']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
48 :call add(tl, [2, '\va{2}', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
49 :call add(tl, [2, '\va{2}', 'abaa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
50 :call add(tl, [2, '\va{2}', 'aaa', 'aa']) |
1465 | 51 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
52 :call add(tl, [2, '\vb{1}', 'abca', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
53 :call add(tl, [2, '\vba{2}', 'abaa', 'baa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
54 :call add(tl, [2, '\vba{3}', 'aabaac']) |
1465 | 55 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
56 :call add(tl, [2, '\v(ab){1}', 'ab', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
57 :call add(tl, [2, '\v(ab){1}', 'dabc', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
58 :call add(tl, [2, '\v(ab){1}', 'acb']) |
1465 | 59 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
60 :call add(tl, [2, '\v(ab){0,2}', 'acb', "", ""]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
61 :call add(tl, [2, '\v(ab){0,2}', 'ab', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
62 :call add(tl, [2, '\v(ab){1,2}', 'ab', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
63 :call add(tl, [2, '\v(ab){1,2}', 'ababc', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
64 :call add(tl, [2, '\v(ab){2,4}', 'ababcab', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
65 :call add(tl, [2, '\v(ab){2,4}', 'abcababa', 'abab', 'ab']) |
1465 | 66 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
67 :call add(tl, [2, '\v(ab){2}', 'abab', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
68 :call add(tl, [2, '\v(ab){2}', 'cdababe', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
69 :call add(tl, [2, '\v(ab){2}', 'abac']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
70 :call add(tl, [2, '\v(ab){2}', 'abacabab', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
71 :call add(tl, [2, '\v((ab){2}){2}', 'abababab', 'abababab', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
72 :call add(tl, [2, '\v((ab){2}){2}', 'abacabababab', 'abababab', 'abab', 'ab']) |
1465 | 73 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
74 :call add(tl, [2, '\v(a{1}){1}', 'a', 'a', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
75 :call add(tl, [2, '\v(a{2}){1}', 'aa', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
76 :call add(tl, [2, '\v(a{2}){1}', 'aaac', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
77 :call add(tl, [2, '\v(a{2}){1}', 'daaac', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
78 :call add(tl, [2, '\v(a{1}){2}', 'daaac', 'aa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
79 :call add(tl, [2, '\v(a{1}){2}', 'aaa', 'aa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
80 :call add(tl, [2, '\v(a{2})+', 'adaac', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
81 :call add(tl, [2, '\v(a{2})+', 'aa', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
82 :call add(tl, [2, '\v(a{2}){1}', 'aa', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
83 :call add(tl, [2, '\v(a{1}){2}', 'aa', 'aa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
84 :call add(tl, [2, '\v(a{1}){1}', 'a', 'a', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
85 :call add(tl, [2, '\v(a{2}){2}', 'aaaa', 'aaaa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
86 :call add(tl, [2, '\v(a{2}){2}', 'aaabaaaa', 'aaaa', 'aa']) |
1465 | 87 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
88 :call add(tl, [2, '\v(a+){2}', 'dadaac', 'aa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
89 :call add(tl, [2, '\v(a{3}){2}', 'aaaaaaa', 'aaaaaa', 'aaa']) |
1465 | 90 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
91 :call add(tl, [2, '\v(a{1,2}){2}', 'daaac', 'aaa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
92 :call add(tl, [2, '\v(a{1,3}){2}', 'daaaac', 'aaaa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
93 :call add(tl, [2, '\v(a{1,3}){2}', 'daaaaac', 'aaaaa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
94 :call add(tl, [2, '\v(a{1,3}){3}', 'daac']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
95 :call add(tl, [2, '\v(a{1,2}){2}', 'dac']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
96 :call add(tl, [2, '\v(a+)+', 'daac', 'aa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
97 :call add(tl, [2, '\v(a+)+', 'aaa', 'aaa', 'aaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
98 :call add(tl, [2, '\v(a+){1,2}', 'aaa', 'aaa', 'aaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
99 :call add(tl, [2, '\v(a+)(a+)', 'aaa', 'aaa', 'aa', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
100 :call add(tl, [2, '\v(a{3})+', 'daaaac', 'aaa', 'aaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
101 :call add(tl, [2, '\v(a|b|c)+', 'aacb', 'aacb', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
102 :call add(tl, [2, '\v(a|b|c){2}', 'abcb', 'ab', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
103 :call add(tl, [2, '\v(abc){2}', 'abcabd', ]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
104 :call add(tl, [2, '\v(abc){2}', 'abdabcabc','abcabc', 'abc']) |
1465 | 105 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
106 :call add(tl, [2, 'a*', 'cc', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
107 :call add(tl, [2, '\v(a*)+', 'cc', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
108 :call add(tl, [2, '\v((ab)+)+', 'ab', 'ab', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
109 :call add(tl, [2, '\v(((ab)+)+)+', 'ab', 'ab', 'ab', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
110 :call add(tl, [2, '\v(((ab)+)+)+', 'dababc', 'abab', 'abab', 'abab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
111 :call add(tl, [2, '\v(a{0,2})+', 'cc', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
112 :call add(tl, [2, '\v(a*)+', '', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
113 :call add(tl, [2, '\v((a*)+)+', '', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
114 :call add(tl, [2, '\v((ab)*)+', '', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
115 :call add(tl, [2, '\va{1,3}', 'aab', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
116 :call add(tl, [2, '\va{2,3}', 'abaa', 'aa']) |
1465 | 117 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
118 :call add(tl, [2, '\v((ab)+|c*)+', 'abcccaba', 'abcccab', '', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
119 :call add(tl, [2, '\v(a{2})|(b{3})', 'bbabbbb', 'bbb', '', 'bbb']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
120 :call add(tl, [2, '\va{2}|b{2}', 'abab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
121 :call add(tl, [2, '\v(a)+|(c)+', 'bbacbaacbbb', 'a', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
122 :call add(tl, [2, '\vab{2,3}c', 'aabbccccccccccccc', 'abbc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
123 :call add(tl, [2, '\vab{2,3}c', 'aabbbccccccccccccc', 'abbbc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
124 :call add(tl, [2, '\vab{2,3}cd{2,3}e', 'aabbbcddee', 'abbbcdde']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
125 :call add(tl, [2, '\va(bc){2}d', 'aabcbfbc' ]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
126 :call add(tl, [2, '\va*a{2}', 'a', ]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
127 :call add(tl, [2, '\va*a{2}', 'aa', 'aa' ]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
128 :call add(tl, [2, '\va*a{2}', 'aaa', 'aaa' ]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
129 :call add(tl, [2, '\va*a{2}', 'bbbabcc', ]) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
130 :call add(tl, [2, '\va*b*|a*c*', 'a', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
131 :call add(tl, [2, '\va{1}b{1}|a{1}b{1}', '']) |
1465 | 132 :" |
133 :"submatches | |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
134 :call add(tl, [2, '\v(a)', 'ab', 'a', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
135 :call add(tl, [2, '\v(a)(b)', 'ab', 'ab', 'a', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
136 :call add(tl, [2, '\v(ab)(b)(c)', 'abbc', 'abbc', 'ab', 'b', 'c']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
137 :call add(tl, [2, '\v((a)(b))', 'ab', 'ab', 'ab', 'a', 'b']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
138 :call add(tl, [2, '\v(a)|(b)', 'ab', 'a', 'a']) |
1465 | 139 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
140 :call add(tl, [2, '\v(a*)+', 'aaaa', 'aaaa', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
141 :call add(tl, [2, 'x', 'abcdef']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
142 :" |
4444 | 143 :"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" |
144 :""""" Simple tests """"""""""""""""""""""""""""""""""""""""""" | |
145 :"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" | |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
146 :" |
4444 | 147 :" Search single groups |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
148 :call add(tl, [2, 'ab', 'aab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
149 :call add(tl, [2, 'ab', 'baced']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
150 :call add(tl, [2, 'ab', ' ab ', 'ab']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
151 :" |
4444 | 152 :" Search multi-modifiers |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
153 :call add(tl, [2, 'x*', 'xcd', 'x']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
154 :call add(tl, [2, 'x*', 'xxxxxxxxxxxxxxxxsofijiojgf', 'xxxxxxxxxxxxxxxx']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
155 :" empty match is good |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
156 :call add(tl, [2, 'x*', 'abcdoij', '']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
157 :" no match here |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
158 :call add(tl, [2, 'x\+', 'abcdoin']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
159 :call add(tl, [2, 'x\+', 'abcdeoijdfxxiuhfij', 'xx']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
160 :call add(tl, [2, 'x\+', 'xxxxx', 'xxxxx']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
161 :call add(tl, [2, 'x\+', 'abc x siufhiush xxxxxxxxx', 'x']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
162 :call add(tl, [2, 'x\=', 'x sdfoij', 'x']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
163 :call add(tl, [2, 'x\=', 'abc sfoij', '']) " empty match is good |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
164 :call add(tl, [2, 'x\=', 'xxxxxxxxx c', 'x']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
165 :call add(tl, [2, 'x\?', 'x sdfoij', 'x']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
166 :" empty match is good |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
167 :call add(tl, [2, 'x\?', 'abc sfoij', '']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
168 :call add(tl, [2, 'x\?', 'xxxxxxxxxx c', 'x']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
169 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
170 :call add(tl, [2, 'a\{0,0}', 'abcdfdoij', '']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
171 :" same thing as 'a?' |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
172 :call add(tl, [2, 'a\{0,1}', 'asiubid axxxaaa', 'a']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
173 :" same thing as 'a\{0,1}' |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
174 :call add(tl, [2, 'a\{1,0}', 'asiubid axxxaaa', 'a']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
175 :call add(tl, [2, 'a\{3,6}', 'aa siofuh']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
176 :call add(tl, [2, 'a\{3,6}', 'aaaaa asfoij afaa', 'aaaaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
177 :call add(tl, [2, 'a\{3,6}', 'aaaaaaaa', 'aaaaaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
178 :call add(tl, [2, 'a\{0}', 'asoiuj', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
179 :call add(tl, [2, 'a\{2}', 'aaaa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
180 :call add(tl, [2, 'a\{2}', 'iuash fiusahfliusah fiushfilushfi uhsaifuh askfj nasfvius afg aaaa sfiuhuhiushf', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
181 :call add(tl, [2, 'a\{2}', 'abcdefghijklmnopqrestuvwxyz1234567890']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
182 :" same thing as 'a*' |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
183 :call add(tl, [2, 'a\{0,}', 'oij sdigfusnf', '']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
184 :call add(tl, [2, 'a\{0,}', 'aaaaa aa', 'aaaaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
185 :call add(tl, [2, 'a\{2,}', 'sdfiougjdsafg']) |
4673
05d57d7c2d55
updated for version 7.3.1084
Bram Moolenaar <bram@vim.org>
parents:
4671
diff
changeset
|
186 :call add(tl, [2, 'a\{2,}', 'aaaaasfoij ', 'aaaaa']) |
05d57d7c2d55
updated for version 7.3.1084
Bram Moolenaar <bram@vim.org>
parents:
4671
diff
changeset
|
187 :call add(tl, [2, 'a\{5,}', 'xxaaaaxxx ']) |
05d57d7c2d55
updated for version 7.3.1084
Bram Moolenaar <bram@vim.org>
parents:
4671
diff
changeset
|
188 :call add(tl, [2, 'a\{5,}', 'xxaaaaaxxx ', 'aaaaa']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
189 :call add(tl, [2, 'a\{,0}', 'oidfguih iuhi hiu aaaa', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
190 :call add(tl, [2, 'a\{,5}', 'abcd', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
191 :call add(tl, [2, 'a\{,5}', 'aaaaaaaaaa', 'aaaaa']) |
4679
4d92b873acef
updated for version 7.3.1087
Bram Moolenaar <bram@vim.org>
parents:
4677
diff
changeset
|
192 :" leading star as normal char when \{} follows |
4d92b873acef
updated for version 7.3.1087
Bram Moolenaar <bram@vim.org>
parents:
4677
diff
changeset
|
193 :call add(tl, [2, '^*\{4,}$', '***']) |
4d92b873acef
updated for version 7.3.1087
Bram Moolenaar <bram@vim.org>
parents:
4677
diff
changeset
|
194 :call add(tl, [2, '^*\{4,}$', '****', '****']) |
4d92b873acef
updated for version 7.3.1087
Bram Moolenaar <bram@vim.org>
parents:
4677
diff
changeset
|
195 :call add(tl, [2, '^*\{4,}$', '*****', '*****']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
196 :" same thing as 'a*' |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
197 :call add(tl, [2, 'a\{}', 'bbbcddiuhfcd', '']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
198 :call add(tl, [2, 'a\{}', 'aaaaioudfh coisf jda', 'aaaa']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
199 :" |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
200 :call add(tl, [2, 'a\{-0,0}', 'abcdfdoij', '']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
201 :" anti-greedy version of 'a?' |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
202 :call add(tl, [2, 'a\{-0,1}', 'asiubid axxxaaa', '']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
203 :call add(tl, [2, 'a\{-3,6}', 'aa siofuh']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
204 :call add(tl, [2, 'a\{-3,6}', 'aaaaa asfoij afaa', 'aaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
205 :call add(tl, [2, 'a\{-3,6}', 'aaaaaaaa', 'aaa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
206 :call add(tl, [2, 'a\{-0}', 'asoiuj', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
207 :call add(tl, [2, 'a\{-2}', 'aaaa', 'aa']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
208 :call add(tl, [2, 'a\{-2}', 'abcdefghijklmnopqrestuvwxyz1234567890']) |
4675
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
209 :call add(tl, [2, 'a\{-0,}', 'oij sdigfusnf', '']) |
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
210 :call add(tl, [2, 'a\{-0,}', 'aaaaa aa', '']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
211 :call add(tl, [2, 'a\{-2,}', 'sdfiougjdsafg']) |
4675
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
212 :call add(tl, [2, 'a\{-2,}', 'aaaaasfoij ', 'aa']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
213 :call add(tl, [2, 'a\{-,0}', 'oidfguih iuhi hiu aaaa', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
214 :call add(tl, [2, 'a\{-,5}', 'abcd', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
215 :call add(tl, [2, 'a\{-,5}', 'aaaaaaaaaa', '']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
216 :" anti-greedy version of 'a*' |
4675
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
217 :call add(tl, [2, 'a\{-}', 'bbbcddiuhfcd', '']) |
811a4c9b51d8
updated for version 7.3.1085
Bram Moolenaar <bram@vim.org>
parents:
4673
diff
changeset
|
218 :call add(tl, [2, 'a\{-}', 'aaaaioudfh coisf jda', '']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
219 :" |
4444 | 220 :" Test groups of characters and submatches |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
221 :call add(tl, [2, '\(abc\)*', 'abcabcabc', 'abcabcabc', 'abc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
222 :call add(tl, [2, '\(ab\)\+', 'abababaaaaa', 'ababab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
223 :call add(tl, [2, '\(abaaaaa\)*cd', 'cd', 'cd', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
224 :call add(tl, [2, '\(test1\)\? \(test2\)\?', 'test1 test3', 'test1 ', 'test1', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
225 :call add(tl, [2, '\(test1\)\= \(test2\) \(test4443\)\=', ' test2 test4443 yupiiiiiiiiiii', ' test2 test4443', '', 'test2', 'test4443']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
226 :call add(tl, [2, '\(\(sub1\) hello \(sub 2\)\)', 'asterix sub1 hello sub 2 obelix', 'sub1 hello sub 2', 'sub1 hello sub 2', 'sub1', 'sub 2']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
227 :call add(tl, [2, '\(\(\(yyxxzz\)\)\)', 'abcdddsfiusfyyzzxxyyxxzz', 'yyxxzz', 'yyxxzz', 'yyxxzz', 'yyxxzz']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
228 :call add(tl, [2, '\v((ab)+|c+)+', 'abcccaba', 'abcccab', 'ab', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
229 :call add(tl, [2, '\v((ab)|c*)+', 'abcccaba', 'abcccab', '', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
230 :call add(tl, [2, '\v(a(c*)+b)+', 'acbababaaa', 'acbabab', 'ab', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
231 :call add(tl, [2, '\v(a|b*)+', 'aaaa', 'aaaa', '']) |
5221
9982ec574beb
updated for version 7.4a.036
Bram Moolenaar <bram@vim.org>
parents:
5218
diff
changeset
|
232 :call add(tl, [2, '\p*', 'aá ', 'aá ']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
233 :" |
4444 | 234 :" Test greedy-ness and lazy-ness |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
235 :call add(tl, [2, 'a\{-2,7}','aaaaaaaaaaaaa', 'aa']) |
4673
05d57d7c2d55
updated for version 7.3.1084
Bram Moolenaar <bram@vim.org>
parents:
4671
diff
changeset
|
236 :call add(tl, [2, 'a\{-2,7}x','aaaaaaaaax', 'aaaaaaax']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
237 :call add(tl, [2, 'a\{2,7}','aaaaaaaaaaaaaaaaaaaa', 'aaaaaaa']) |
4673
05d57d7c2d55
updated for version 7.3.1084
Bram Moolenaar <bram@vim.org>
parents:
4671
diff
changeset
|
238 :call add(tl, [2, 'a\{2,7}x','aaaaaaaaax', 'aaaaaaax']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
239 :call add(tl, [2, '\vx(.{-,8})yz(.*)','xayxayzxayzxayz','xayxayzxayzxayz','ayxa','xayzxayz']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
240 :call add(tl, [2, '\vx(.*)yz(.*)','xayxayzxayzxayz','xayxayzxayzxayz', 'ayxayzxayzxa','']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
241 :call add(tl, [2, '\v(a{1,2}){-2,3}','aaaaaaa','aaaa','aa']) |
5895 | 242 :call add(tl, [2, '\v(a{-1,3})+', 'aa', 'aa', 'a']) |
243 :call add(tl, [2, '^\s\{-}\zs\( x\|x$\)', ' x', ' x', ' x']) | |
244 :call add(tl, [2, '^\s\{-}\zs\(x\| x$\)', ' x', ' x', ' x']) | |
245 :call add(tl, [2, '^\s\{-}\ze\(x\| x$\)', ' x', '', ' x']) | |
246 :call add(tl, [2, '^\(\s\{-}\)\(x\| x$\)', ' x', ' x', '', ' x']) | |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
247 :" |
4444 | 248 :" Test Character classes |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
249 :call add(tl, [2, '\d\+e\d\d','test 10e23 fd','10e23']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
250 :" |
4444 | 251 :" Test collections and character range [] |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
252 :call add(tl, [2, '\v[a]', 'abcd', 'a']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
253 :call add(tl, [2, 'a[bcd]', 'abcd', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
254 :call add(tl, [2, 'a[b-d]', 'acbd', 'ac']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
255 :call add(tl, [2, '[a-d][e-f][x-x]d', 'cexdxx', 'cexd']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
256 :call add(tl, [2, '\v[[:alpha:]]+', 'abcdefghijklmnopqrstuvwxyz6','abcdefghijklmnopqrstuvwxyz']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
257 :call add(tl, [2, '[[:alpha:]\+]', '6x8','x']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
258 :call add(tl, [2, '[^abc]\+','abcabcabc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
259 :call add(tl, [2, '[^abc]','defghiasijvoinasoiunbvb','d']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
260 :call add(tl, [2, '[^abc]\+','ddddddda','ddddddd']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
261 :call add(tl, [2, '[^a-d]\+','aaaAAAZIHFNCddd','AAAZIHFNC']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
262 :call add(tl, [2, '[a-f]*','iiiiiiii','']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
263 :call add(tl, [2, '[a-f]*','abcdefgh','abcdef']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
264 :call add(tl, [2, '[^a-f]\+','abcdefgh','gh']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
265 :call add(tl, [2, '[a-c]\{-3,6}','abcabc','abc']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
266 :call add(tl, [2, '[^[:alpha:]]\+','abcccadfoij7787ysf287yrnccdu','7787']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
267 :call add(tl, [2, '[-a]', '-', '-']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
268 :call add(tl, [2, '[a-]', '-', '-']) |
4805
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
269 :call add(tl, [2, '[a-f]*\c','ABCDEFGH','ABCDEF']) |
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
270 :call add(tl, [2, '[abc][xyz]\c','-af-AF-BY--','BY']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
271 :" filename regexp |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
272 :call add(tl, [2, '[-./[:alnum:]_~]\+', 'log13.file', 'log13.file']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
273 :" special chars |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
274 :call add(tl, [2, '[\]\^\-\\]\+', '\^\\\-\---^', '\^\\\-\---^']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
275 :" collation elem |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
276 :call add(tl, [2, '[[.a.]]\+', 'aa', 'aa']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
277 :" middle of regexp |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
278 :call add(tl, [2, 'abc[0-9]*ddd', 'siuhabc ii']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
279 :call add(tl, [2, 'abc[0-9]*ddd', 'adf abc44482ddd oijs', 'abc44482ddd']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
280 :call add(tl, [2, '\_[0-9]\+', 'asfi9888u', '9888']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
281 :call add(tl, [2, '[0-9\n]\+', 'asfi9888u', '9888']) |
4555
b2946c06d1b6
updated for version 7.3.1025
Bram Moolenaar <bram@vim.org>
parents:
4553
diff
changeset
|
282 :call add(tl, [2, '\_[0-9]\+', "asfi\n9888u", "\n9888"]) |
b2946c06d1b6
updated for version 7.3.1025
Bram Moolenaar <bram@vim.org>
parents:
4553
diff
changeset
|
283 :call add(tl, [2, '\_f', " \na ", "\n"]) |
b2946c06d1b6
updated for version 7.3.1025
Bram Moolenaar <bram@vim.org>
parents:
4553
diff
changeset
|
284 :call add(tl, [2, '\_f\+', " \na ", "\na"]) |
4677
c1622ff9ed8d
updated for version 7.3.1086
Bram Moolenaar <bram@vim.org>
parents:
4675
diff
changeset
|
285 :call add(tl, [2, '[0-9A-Za-z-_.]\+', " @0_a.A-{ ", "0_a.A-"]) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
286 :" |
4671
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
287 :"""" Test start/end of line, start/end of file |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
288 :call add(tl, [2, '^a.', "a_\nb ", "a_"]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
289 :call add(tl, [2, '^a.', "b a \na_"]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
290 :call add(tl, [2, '.a$', " a\n "]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
291 :call add(tl, [2, '.a$', " a b\n_a", "_a"]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
292 :call add(tl, [2, '\%^a.', "a a\na", "a "]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
293 :call add(tl, [2, '\%^a', " a \na "]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
294 :call add(tl, [2, '.a\%$', " a\n "]) |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
295 :call add(tl, [2, '.a\%$', " a\n_a", "_a"]) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
296 :" |
5296 | 297 :"""" Test recognition of character classes |
298 :call add(tl, [2, '[0-7]\+', 'x0123456789x', '01234567']) | |
299 :call add(tl, [2, '[^0-7]\+', '0a;X+% 897', 'a;X+% 89']) | |
300 :call add(tl, [2, '[0-9]\+', 'x0123456789x', '0123456789']) | |
301 :call add(tl, [2, '[^0-9]\+', '0a;X+% 9', 'a;X+% ']) | |
302 :call add(tl, [2, '[0-9a-fA-F]\+', 'x0189abcdefg', '0189abcdef']) | |
303 :call add(tl, [2, '[^0-9A-Fa-f]\+', '0189g;X+% ab', 'g;X+% ']) | |
304 :call add(tl, [2, '[a-z_A-Z0-9]\+', ';+aso_SfOij ', 'aso_SfOij']) | |
305 :call add(tl, [2, '[^a-z_A-Z0-9]\+', 'aSo_;+% sfOij', ';+% ']) | |
306 :call add(tl, [2, '[a-z_A-Z]\+', '0abyz_ABYZ;', 'abyz_ABYZ']) | |
307 :call add(tl, [2, '[^a-z_A-Z]\+', 'abAB_09;+% yzYZ', '09;+% ']) | |
308 :call add(tl, [2, '[a-z]\+', '0abcxyz1', 'abcxyz']) | |
309 :call add(tl, [2, '[a-z]\+', 'AabxyzZ', 'abxyz']) | |
310 :call add(tl, [2, '[^a-z]\+', 'a;X09+% x', ';X09+% ']) | |
311 :call add(tl, [2, '[^a-z]\+', 'abX0;%yz', 'X0;%']) | |
312 :call add(tl, [2, '[a-zA-Z]\+', '0abABxzXZ9', 'abABxzXZ']) | |
313 :call add(tl, [2, '[^a-zA-Z]\+', 'ab09_;+ XZ', '09_;+ ']) | |
314 :call add(tl, [2, '[A-Z]\+', 'aABXYZz', 'ABXYZ']) | |
315 :call add(tl, [2, '[^A-Z]\+', 'ABx0;%YZ', 'x0;%']) | |
316 :call add(tl, [2, '[a-z]\+\c', '0abxyzABXYZ;', 'abxyzABXYZ']) | |
317 :call add(tl, [2, '[A-Z]\+\c', '0abABxzXZ9', 'abABxzXZ']) | |
318 :call add(tl, [2, '\c[^a-z]\+', 'ab09_;+ XZ', '09_;+ ']) | |
319 :call add(tl, [2, '\c[^A-Z]\+', 'ab09_;+ XZ', '09_;+ ']) | |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
320 :call add(tl, [2, '\C[^A-Z]\+', 'ABCOIJDEOIFNSD jsfoij sa', ' jsfoij sa']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
321 :" |
4444 | 322 :"""" Tests for \z features |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
323 :" match ends at \ze |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
324 :call add(tl, [2, 'xx \ze test', 'xx ']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
325 :call add(tl, [2, 'abc\zeend', 'oij abcend', 'abc']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
326 :call add(tl, [2, 'aa\zebb\|aaxx', ' aabb ', 'aa']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
327 :call add(tl, [2, 'aa\zebb\|aaxx', ' aaxx ', 'aaxx']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
328 :call add(tl, [2, 'aabb\|aa\zebb', ' aabb ', 'aabb']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
329 :call add(tl, [2, 'aa\zebb\|aaebb', ' aabb ', 'aa']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
330 :" match starts at \zs |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
331 :call add(tl, [2, 'abc\zsdd', 'ddabcddxyzt', 'dd']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
332 :call add(tl, [2, 'aa \zsax', ' ax']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
333 :call add(tl, [2, 'abc \zsmatch\ze abc', 'abc abc abc match abc abc', 'match']) |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
334 :call add(tl, [2, '\v(a \zsif .*){2}', 'a if then a if last', 'if last', 'a if last']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
335 :call add(tl, [2, '\>\zs.', 'aword. ', '.']) |
5336 | 336 :call add(tl, [2, '\s\+\ze\[/\|\s\zs\s\+', 'is [a t', ' ']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
337 :" |
4657
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
338 :"""" Tests for \@= and \& features |
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
339 :call add(tl, [2, 'abc\@=', 'abc', 'ab']) |
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
340 :call add(tl, [2, 'abc\@=cd', 'abcd', 'abcd']) |
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
341 :call add(tl, [2, 'abc\@=', 'ababc', 'ab']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
342 :" will never match, no matter the input text |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
343 :call add(tl, [2, 'abcd\@=e', 'abcd']) |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
344 :" will never match |
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
345 :call add(tl, [2, 'abcd\@=e', 'any text in here ... ']) |
4657
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
346 :call add(tl, [2, '\v(abc)@=..', 'xabcd', 'ab', 'abc']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
347 :call add(tl, [2, '\(.*John\)\@=.*Bob', 'here is John, and here is B']) |
4657
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
348 :call add(tl, [2, '\(John.*\)\@=.*Bob', 'John is Bobs friend', 'John is Bob', 'John is Bobs friend']) |
4669
2d15582e132f
updated for version 7.3.1082
Bram Moolenaar <bram@vim.org>
parents:
4661
diff
changeset
|
349 :call add(tl, [2, '\<\S\+\())\)\@=', '$((i=i+1))', 'i=i+1', '))']) |
4569
f262fb02889d
updated for version 7.3.1032
Bram Moolenaar <bram@vim.org>
parents:
4557
diff
changeset
|
350 :call add(tl, [2, '.*John\&.*Bob', 'here is John, and here is B']) |
4657
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
351 :call add(tl, [2, '.*John\&.*Bob', 'John is Bobs friend', 'John is Bob']) |
93b7ed814bec
updated for version 7.3.1076
Bram Moolenaar <bram@vim.org>
parents:
4651
diff
changeset
|
352 :call add(tl, [2, '\v(test1)@=.*yep', 'this is a test1, yep it is', 'test1, yep', 'test1']) |
4661
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
353 :call add(tl, [2, 'foo\(bar\)\@!', 'foobar']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
354 :call add(tl, [2, 'foo\(bar\)\@!', 'foo bar', 'foo']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
355 :call add(tl, [2, 'if \(\(then\)\@!.\)*$', ' if then else']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
356 :call add(tl, [2, 'if \(\(then\)\@!.\)*$', ' if else ', 'if else ', ' ']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
357 :call add(tl, [2, '\(foo\)\@!bar', 'foobar', 'bar']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
358 :call add(tl, [2, '\(foo\)\@!...bar', 'foobar']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
359 :call add(tl, [2, '^\%(.*bar\)\@!.*\zsfoo', ' bar foo ']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
360 :call add(tl, [2, '^\%(.*bar\)\@!.*\zsfoo', ' foo bar ']) |
0dce3d812e7a
updated for version 7.3.1078
Bram Moolenaar <bram@vim.org>
parents:
4657
diff
changeset
|
361 :call add(tl, [2, '^\%(.*bar\)\@!.*\zsfoo', ' foo xxx ', 'foo']) |
5006
f451d60ab8ec
updated for version 7.3.1247
Bram Moolenaar <bram@vim.org>
parents:
4997
diff
changeset
|
362 :call add(tl, [2, '[ ]\@!\p\%([ ]\@!\p\)*:', 'implicit mappings:', 'mappings:']) |
5251
2e63b6c763f7
updated for version 7.4b.002
Bram Moolenaar <bram@vim.org>
parents:
5227
diff
changeset
|
363 :call add(tl, [2, '[ ]\@!\p\([ ]\@!\p\)*:', 'implicit mappings:', 'mappings:', 's']) |
5218
4ceacc1b0054
updated for version 7.4a.035
Bram Moolenaar <bram@vim.org>
parents:
5031
diff
changeset
|
364 :call add(tl, [2, 'm\k\+_\@=\%(_\@!\k\)\@<=\k\+e', 'mx__xe', 'mx__xe']) |
5227
a08fa2919f2b
updated for version 7.4a.039
Bram Moolenaar <bram@vim.org>
parents:
5221
diff
changeset
|
365 :call add(tl, [2, '\%(\U\@<=S\k*\|S\l\)R', 'SuR', 'SuR']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
366 :" |
4444 | 367 :"""" Combining different tests and features |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
368 :call add(tl, [2, '[[:alpha:]]\{-2,6}', '787abcdiuhsasiuhb4', 'ab']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
369 :call add(tl, [2, '', 'abcd', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
370 :call add(tl, [2, '\v(())', 'any possible text', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
371 :call add(tl, [2, '\v%(ab(xyz)c)', ' abxyzc ', 'abxyzc', 'xyz']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
372 :call add(tl, [2, '\v(test|)empty', 'tesempty', 'empty', '']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
373 :call add(tl, [2, '\v(a|aa)(a|aa)', 'aaa', 'aa', 'a', 'a']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
374 :" |
4478 | 375 :"""" \%u and friends |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
376 :call add(tl, [2, '\%d32', 'yes no', ' ']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
377 :call add(tl, [2, '\%o40', 'yes no', ' ']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
378 :call add(tl, [2, '\%x20', 'yes no', ' ']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
379 :call add(tl, [2, '\%u0020', 'yes no', ' ']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
380 :call add(tl, [2, '\%U00000020', 'yes no', ' ']) |
5360 | 381 :call add(tl, [2, '\%d0', "yes\x0ano", "\x0a"]) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
382 :" |
4740
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
383 :""""" \%[abc] |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
384 :call add(tl, [2, 'foo\%[bar]', 'fobar']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
385 :call add(tl, [2, 'foo\%[bar]', 'foobar', 'foobar']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
386 :call add(tl, [2, 'foo\%[bar]', 'fooxx', 'foo']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
387 :call add(tl, [2, 'foo\%[bar]', 'foobxx', 'foob']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
388 :call add(tl, [2, 'foo\%[bar]', 'foobaxx', 'fooba']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
389 :call add(tl, [2, 'foo\%[bar]', 'foobarxx', 'foobar']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
390 :call add(tl, [2, 'foo\%[bar]x', 'foobxx', 'foobx']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
391 :call add(tl, [2, 'foo\%[bar]x', 'foobarxx', 'foobarx']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
392 :call add(tl, [2, '\%[bar]x', 'barxx', 'barx']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
393 :call add(tl, [2, '\%[bar]x', 'bxx', 'bx']) |
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
394 :call add(tl, [2, '\%[bar]x', 'xxx', 'x']) |
4944
613651492c19
updated for version 7.3.1217
Bram Moolenaar <bram@vim.org>
parents:
4924
diff
changeset
|
395 :call add(tl, [2, 'b\%[[ao]r]', 'bar bor', 'bar']) |
4948
eb5c3508cd7d
updated for version 7.3.1219
Bram Moolenaar <bram@vim.org>
parents:
4944
diff
changeset
|
396 :call add(tl, [2, 'b\%[[]]r]', 'b]r bor', 'b]r']) |
5255
3c6e2b89875f
updated for version 7.4b.004
Bram Moolenaar <bram@vim.org>
parents:
5251
diff
changeset
|
397 :call add(tl, [2, '@\%[\w\-]*', '<http://john.net/pandoc/>[@pandoc]', '@pandoc']) |
4740
97560c16ca99
updated for version 7.3.1117
Bram Moolenaar <bram@vim.org>
parents:
4732
diff
changeset
|
398 :" |
4539
532c2e850256
updated for version 7.3.1017
Bram Moolenaar <bram@vim.org>
parents:
4478
diff
changeset
|
399 :"""" Alternatives, must use first longest match |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
400 :call add(tl, [2, 'goo\|go', 'google', 'goo']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
401 :call add(tl, [2, '\<goo\|\<go', 'google', 'goo']) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
402 :call add(tl, [2, '\<goo\|go', 'google', 'goo']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
403 :" |
4571
b2a8e3a66f8c
updated for version 7.3.1033
Bram Moolenaar <bram@vim.org>
parents:
4569
diff
changeset
|
404 :"""" Back references |
b2a8e3a66f8c
updated for version 7.3.1033
Bram Moolenaar <bram@vim.org>
parents:
4569
diff
changeset
|
405 :call add(tl, [2, '\(\i\+\) \1', ' abc abc', 'abc abc', 'abc']) |
4647
857f6c53f117
updated for version 7.3.1071
Bram Moolenaar <bram@vim.org>
parents:
4615
diff
changeset
|
406 :call add(tl, [2, '\(\i\+\) \1', 'xgoo goox', 'goo goo', 'goo']) |
4571
b2a8e3a66f8c
updated for version 7.3.1033
Bram Moolenaar <bram@vim.org>
parents:
4569
diff
changeset
|
407 :call add(tl, [2, '\(a\)\(b\)\(c\)\(dd\)\(e\)\(f\)\(g\)\(h\)\(i\)\1\2\3\4\5\6\7\8\9', 'xabcddefghiabcddefghix', 'abcddefghiabcddefghi', 'a', 'b', 'c', 'dd', 'e', 'f', 'g', 'h', 'i']) |
4692
08fbb1ce1bc5
updated for version 7.3.1093
Bram Moolenaar <bram@vim.org>
parents:
4682
diff
changeset
|
408 :call add(tl, [2, '\(\d*\)a \1b', ' a b ', 'a b', '']) |
4901
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
409 :call add(tl, [2, '^.\(.\).\_..\1.', "aaa\naaa\nb", "aaa\naaa", 'a']) |
4997
8a7d3a73adab
updated for version 7.3.1243
Bram Moolenaar <bram@vim.org>
parents:
4948
diff
changeset
|
410 :call add(tl, [2, '^.*\.\(.*\)/.\+\(\1\)\@<!$', 'foo.bat/foo.com', 'foo.bat/foo.com', 'bat']) |
8a7d3a73adab
updated for version 7.3.1243
Bram Moolenaar <bram@vim.org>
parents:
4948
diff
changeset
|
411 :call add(tl, [2, '^.*\.\(.*\)/.\+\(\1\)\@<!$', 'foo.bat/foo.bat']) |
8a7d3a73adab
updated for version 7.3.1243
Bram Moolenaar <bram@vim.org>
parents:
4948
diff
changeset
|
412 :call add(tl, [2, '^.*\.\(.*\)/.\+\(\1\)\@<=$', 'foo.bat/foo.bat', 'foo.bat/foo.bat', 'bat', 'bat']) |
5031
7ab94cb688be
updated for version 7.3.1259
Bram Moolenaar <bram@vim.org>
parents:
5006
diff
changeset
|
413 :call add(tl, [2, '\\\@<!\${\(\d\+\%(:.\{-}\)\?\\\@<!\)}', '2013-06-27${0}', '${0}', '0']) |
5502 | 414 :call add(tl, [2, '^\(a*\)\1$', 'aaaaaaaa', 'aaaaaaaa', 'aaaa']) |
5893 | 415 :call add(tl, [2, '^\(a\{-2,}\)\1\+$', 'aaaaaaaaa', 'aaaaaaaaa', 'aaa']) |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
416 :" |
4579
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
417 :"""" Look-behind with limit |
4682
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
418 :call add(tl, [2, '<\@<=span.', 'xxspanxx<spanyyy', 'spany']) |
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
419 :call add(tl, [2, '<\@1<=span.', 'xxspanxx<spanyyy', 'spany']) |
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
420 :call add(tl, [2, '<\@2<=span.', 'xxspanxx<spanyyy', 'spany']) |
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
421 :call add(tl, [2, '\(<<\)\@<=span.', 'xxspanxxxx<spanxx<<spanyyy', 'spany', '<<']) |
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
422 :call add(tl, [2, '\(<<\)\@1<=span.', 'xxspanxxxx<spanxx<<spanyyy']) |
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
423 :call add(tl, [2, '\(<<\)\@2<=span.', 'xxspanxxxx<spanxx<<spanyyy', 'spany', '<<']) |
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
424 :call add(tl, [2, '\(foo\)\@<!bar.', 'xx foobar1 xbar2 xx', 'bar2']) |
4579
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
425 :" |
4805
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
426 :" look-behind match in front of a zero-width item |
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
427 :call add(tl, [2, '\v\C%(<Last Changed:\s+)@<=.*$', '" test header']) |
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
428 :call add(tl, [2, '\v\C%(<Last Changed:\s+)@<=.*$', '" Last Changed: 1970', '1970']) |
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
429 :call add(tl, [2, '\(foo\)\@<=\>', 'foobar']) |
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
430 :call add(tl, [2, '\(foo\)\@<=\>', 'barfoo', '', 'foo']) |
4821
2f1ee97f5f23
updated for version 7.3.1157
Bram Moolenaar <bram@vim.org>
parents:
4805
diff
changeset
|
431 :call add(tl, [2, '\(foo\)\@<=.*', 'foobar', 'bar', 'foo']) |
4805
66803af09906
updated for version 7.3.1149
Bram Moolenaar <bram@vim.org>
parents:
4750
diff
changeset
|
432 :" |
5298 | 433 :" complicated look-behind match |
434 :call add(tl, [2, '\(r\@<=\|\w\@<!\)\/', 'x = /word/;', '/']) | |
5372 | 435 :call add(tl, [2, '^[a-z]\+\ze \&\(asdf\)\@<!', 'foo bar', 'foo']) |
5298 | 436 :" |
4750
7793e737ec87
updated for version 7.3.1122
Bram Moolenaar <bram@vim.org>
parents:
4740
diff
changeset
|
437 :""""" \@> |
7793e737ec87
updated for version 7.3.1122
Bram Moolenaar <bram@vim.org>
parents:
4740
diff
changeset
|
438 :call add(tl, [2, '\(a*\)\@>a', 'aaaa']) |
7793e737ec87
updated for version 7.3.1122
Bram Moolenaar <bram@vim.org>
parents:
4740
diff
changeset
|
439 :call add(tl, [2, '\(a*\)\@>b', 'aaab', 'aaab', 'aaa']) |
5334 | 440 :call add(tl, [2, '^\(.\{-}b\)\@>.', ' abcbd', ' abc', ' ab']) |
5370 | 441 :call add(tl, [2, '\(.\{-}\)\(\)\@>$', 'abc', 'abc', 'abc', '']) |
4750
7793e737ec87
updated for version 7.3.1122
Bram Moolenaar <bram@vim.org>
parents:
4740
diff
changeset
|
442 :" TODO: BT engine does not restore submatch after failure |
7793e737ec87
updated for version 7.3.1122
Bram Moolenaar <bram@vim.org>
parents:
4740
diff
changeset
|
443 :call add(tl, [1, '\(a*\)\@>a\|a\+', 'aaaa', 'aaaa']) |
7793e737ec87
updated for version 7.3.1122
Bram Moolenaar <bram@vim.org>
parents:
4740
diff
changeset
|
444 :" |
4615
5679b8ddd8cc
updated for version 7.3.1055
Bram Moolenaar <bram@vim.org>
parents:
4583
diff
changeset
|
445 :"""" "\_" prepended negated collection matches EOL |
5679b8ddd8cc
updated for version 7.3.1055
Bram Moolenaar <bram@vim.org>
parents:
4583
diff
changeset
|
446 :call add(tl, [2, '\_[^8-9]\+', "asfi\n9888", "asfi\n"]) |
5679b8ddd8cc
updated for version 7.3.1055
Bram Moolenaar <bram@vim.org>
parents:
4583
diff
changeset
|
447 :call add(tl, [2, '\_[^a]\+', "asfi\n9888", "sfi\n9888"]) |
5679b8ddd8cc
updated for version 7.3.1055
Bram Moolenaar <bram@vim.org>
parents:
4583
diff
changeset
|
448 :" |
4651
f10f63aaec5c
updated for version 7.3.1073
Bram Moolenaar <bram@vim.org>
parents:
4647
diff
changeset
|
449 :"""" Requiring lots of states. |
4673
05d57d7c2d55
updated for version 7.3.1084
Bram Moolenaar <bram@vim.org>
parents:
4671
diff
changeset
|
450 :call add(tl, [2, '[0-9a-zA-Z]\{8}-\([0-9a-zA-Z]\{4}-\)\{3}[0-9a-zA-Z]\{12}', " 12345678-1234-1234-1234-123456789012 ", "12345678-1234-1234-1234-123456789012", "1234-"]) |
4651
f10f63aaec5c
updated for version 7.3.1073
Bram Moolenaar <bram@vim.org>
parents:
4647
diff
changeset
|
451 :" |
4924
6ae32a64e153
updated for version 7.3.1207
Bram Moolenaar <bram@vim.org>
parents:
4901
diff
changeset
|
452 :"""" Skip adding state twice |
6ae32a64e153
updated for version 7.3.1207
Bram Moolenaar <bram@vim.org>
parents:
4901
diff
changeset
|
453 :call add(tl, [2, '^\%(\%(^\s*#\s*if\>\|#\s*if\)\)\(\%>1c.*$\)\@=', "#if FOO", "#if", ' FOO']) |
4615
5679b8ddd8cc
updated for version 7.3.1055
Bram Moolenaar <bram@vim.org>
parents:
4583
diff
changeset
|
454 :" |
6510 | 455 :""" Test \%V atom |
456 :call add(tl, [2, '\%>70vGesamt', 'Jean-Michel Charlier & Victor Hubinon\Gesamtausgabe [Salleck] Buck Danny {Jean-Michel Charlier & Victor Hubinon}\Gesamtausgabe', 'Gesamt']) | |
457 :" | |
4444 | 458 :"""" Run the tests |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
459 :" |
1357 | 460 :for t in tl |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
461 : let re = t[0] |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
462 : let pat = t[1] |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
463 : let text = t[2] |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
464 : let matchidx = 3 |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
465 : for engine in [0, 1, 2] |
6170 | 466 : if engine == 2 && re == 0 || engine == 1 && re == 1 |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
467 : continue |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
468 : endif |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
469 : let ®expengine = engine |
4651
f10f63aaec5c
updated for version 7.3.1073
Bram Moolenaar <bram@vim.org>
parents:
4647
diff
changeset
|
470 : try |
f10f63aaec5c
updated for version 7.3.1073
Bram Moolenaar <bram@vim.org>
parents:
4647
diff
changeset
|
471 : let l = matchlist(text, pat) |
f10f63aaec5c
updated for version 7.3.1073
Bram Moolenaar <bram@vim.org>
parents:
4647
diff
changeset
|
472 : catch |
5895 | 473 : $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . text . '\", caused an exception: \"' . v:exception . '\"' |
4651
f10f63aaec5c
updated for version 7.3.1073
Bram Moolenaar <bram@vim.org>
parents:
4647
diff
changeset
|
474 : endtry |
1357 | 475 :" check the match itself |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
476 : if len(l) == 0 && len(t) > matchidx |
5895 | 477 : $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . text . '\", did not match, expected: \"' . t[matchidx] . '\"' |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
478 : elseif len(l) > 0 && len(t) == matchidx |
5895 | 479 : $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . text . '\", match: \"' . l[0] . '\", expected no match' |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
480 : elseif len(t) > matchidx && l[0] != t[matchidx] |
5895 | 481 : $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . text . '\", match: \"' . l[0] . '\", expected: \"' . t[matchidx] . '\"' |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
482 : else |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
483 : $put ='OK ' . engine . ' - ' . pat |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
484 : endif |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
485 : if len(l) > 0 |
1357 | 486 :" check all the nine submatches |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
487 : for i in range(1, 9) |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
488 : if len(t) <= matchidx + i |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
489 : let e = '' |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
490 : else |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
491 : let e = t[matchidx + i] |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
492 : endif |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
493 : if l[i] != e |
5895 | 494 : $put ='ERROR ' . engine . ': pat: \"' . pat . '\", text: \"' . text . '\", submatch ' . i . ': \"' . l[i] . '\", expected: \"' . e . '\"' |
4545
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
495 : endif |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
496 : endfor |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
497 : unlet i |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
498 : endif |
f7944ce459ac
updated for version 7.3.1020
Bram Moolenaar <bram@vim.org>
parents:
4539
diff
changeset
|
499 : endfor |
1357 | 500 :endfor |
1405 | 501 :unlet t tl e l |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
502 :" |
5031
7ab94cb688be
updated for version 7.3.1259
Bram Moolenaar <bram@vim.org>
parents:
5006
diff
changeset
|
503 :"""""" multi-line tests """""""""""""""""""" |
4901
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
504 :let tl = [] |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
505 :" |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
506 :"""" back references |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
507 :call add(tl, [2, '^.\(.\).\_..\1.', ['aaa', 'aaa', 'b'], ['XX', 'b']]) |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
508 :call add(tl, [2, '\v.*\/(.*)\n.*\/\1$', ['./Dir1/Dir2/zyxwvuts.txt', './Dir1/Dir2/abcdefgh.bat', '', './Dir1/Dir2/file1.txt', './OtherDir1/OtherDir2/file1.txt'], ['./Dir1/Dir2/zyxwvuts.txt', './Dir1/Dir2/abcdefgh.bat', '', 'XX']]) |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
509 :" |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
510 :"""" line breaks |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
511 :call add(tl, [2, '\S.*\nx', ['abc', 'def', 'ghi', 'xjk', 'lmn'], ['abc', 'def', 'XXjk', 'lmn']]) |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
512 :" |
4444 | 513 :" Check that \_[0-9] matching EOL does not break a following \> |
4901
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
514 :call add(tl, [2, '\<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>', ['', 'localnet/192.168.0.1', ''], ['', 'localnet/XX', '']]) |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
515 :" |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
516 :" Check a pattern with a line break and ^ and $ |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
517 :call add(tl, [2, 'a\n^b$\n^c', ['a', 'b', 'c'], ['XX']]) |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
518 :" |
5504 | 519 :call add(tl, [2, '\(^.\+\n\)\1', [' dog', ' dog', 'asdf'], ['XXasdf']]) |
520 :" | |
4901
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
521 :"""" Run the multi-line tests |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
522 :" |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
523 :$put ='multi-line tests' |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
524 :for t in tl |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
525 : let re = t[0] |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
526 : let pat = t[1] |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
527 : let before = t[2] |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
528 : let after = t[3] |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
529 : for engine in [0, 1, 2] |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
530 : if engine == 2 && re == 0 || engine == 1 && re ==1 |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
531 : continue |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
532 : endif |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
533 : let ®expengine = engine |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
534 : new |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
535 : call setline(1, before) |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
536 : exe '%s/' . pat . '/XX/' |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
537 : let result = getline(1, '$') |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
538 : q! |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
539 : if result != after |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
540 : $put ='ERROR: pat: \"' . pat . '\", text: \"' . string(before) . '\", expected: \"' . string(after) . '\", got: \"' . string(result) . '\"' |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
541 : else |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
542 : $put ='OK ' . engine . ' - ' . pat |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
543 : endif |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
544 : endfor |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
545 :endfor |
56fbf60e9476
updated for version 7.3.1196
Bram Moolenaar <bram@vim.org>
parents:
4891
diff
changeset
|
546 :unlet t tl |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
547 :" |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
548 :" Check that using a pattern on two lines doesn't get messed up by using |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
549 :" matchstr() with \ze in between. |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
550 :set re=0 |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
551 /^Substitute here |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
552 :.+1,.+2s/""/\='"'.matchstr(getline("."), '\d\+\ze<').'"' |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
553 /^Substitute here |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
554 :.+1,.+2yank |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
555 Gop:" |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
556 :" |
4579
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
557 :" Check a pattern with a look beind crossing a line boundary |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
558 /^Behind: |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
559 /\(<\_[xy]\+\)\@3<=start |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
560 :.yank |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
561 Gop:" |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
562 :" |
4730
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
563 :" Check matching Visual area |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
564 /^Visual: |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
565 jfxvfx:s/\%Ve/E/g |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
566 jV:s/\%Va/A/g |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
567 jfxfxj:s/\%Vo/O/g |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
568 :/^Visual/+1,/^Visual/+4yank |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
569 Gop:" |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
570 :" |
4732
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
571 :" Check matching marks |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
572 /^Marks: |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
573 jfSmsfEme:.-4,.+6s/.\%>'s.*\%<'e../here/ |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
574 jfSmsj0fEme:.-4,.+6s/.\%>'s\_.*\%<'e../again/ |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
575 :/^Marks:/+1,/^Marks:/+3yank |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
576 Gop:" |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
577 :" |
4583
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
578 :" Check patterns matching cursor position. |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
579 :func! Postest() |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
580 new |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
581 call setline(1, ['ffooooo', 'boboooo', 'zoooooo', 'koooooo', 'moooooo', "\t\t\tfoo", 'abababababababfoo', 'bababababababafoo', '********_']) |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
582 call setpos('.', [0, 1, 0, 0]) |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
583 s/\%>3c.//g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
584 call setpos('.', [0, 2, 4, 0]) |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
585 s/\%#.*$//g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
586 call setpos('.', [0, 3, 0, 0]) |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
587 s/\%<3c./_/g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
588 %s/\%4l\%>5c./_/g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
589 %s/\%6l\%>25v./_/g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
590 %s/\%>6l\%3c./!/g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
591 %s/\%>7l\%12c./?/g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
592 %s/\%>7l\%<9l\%>5v\%<8v./#/g |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
593 1,$yank |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
594 quit! |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
595 endfunc |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
596 Go-0-:set re=0 |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
597 :call Postest() |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
598 :put |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
599 o-1-:set re=1 |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
600 :call Postest() |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
601 :put |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
602 o-2-:set re=2 |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
603 :call Postest() |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
604 :put |
321cfbef9431
updated for version 7.3.1039
Bram Moolenaar <bram@vim.org>
parents:
4579
diff
changeset
|
605 :" |
4671
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
606 :" start and end of buffer |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
607 /\%^ |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
608 yeGop:" |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
609 50%/\%^.. |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
610 yeGopA END:" |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
611 50%/\%$ |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
612 "ayb20gg/..\%$ |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
613 "bybGo"apo"bp:" |
b3c59716e700
updated for version 7.3.1083
Bram Moolenaar <bram@vim.org>
parents:
4669
diff
changeset
|
614 :" |
6170 | 615 :" Check for detecting error |
616 :set regexpengine=2 | |
617 :for pat in [' \ze*', ' \zs*'] | |
618 : try | |
619 : let l = matchlist('x x', pat) | |
620 : $put ='E888 NOT detected for ' . pat | |
621 : catch | |
622 : $put ='E888 detected for ' . pat | |
623 : endtry | |
624 :endfor | |
625 :" | |
5031
7ab94cb688be
updated for version 7.3.1259
Bram Moolenaar <bram@vim.org>
parents:
5006
diff
changeset
|
626 :""""" Write the results """"""""""""" |
4444 | 627 :/\%#=1^Results/,$wq! test.out |
1357 | 628 ENDTEST |
629 | |
4553
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
630 Substitute here: |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
631 <T="">Ta 5</Title> |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
632 <T="">Ac 7</Title> |
7b835b2969af
updated for version 7.3.1024
Bram Moolenaar <bram@vim.org>
parents:
4545
diff
changeset
|
633 |
4579
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
634 Behind: |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
635 asdfasd<yyy |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
636 xxstart1 |
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
637 asdfasd<yy |
4682
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
638 xxxstart2 |
4579
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
639 asdfasd<yy |
4682
2f51ee8825db
updated for version 7.3.1088
Bram Moolenaar <bram@vim.org>
parents:
4679
diff
changeset
|
640 xxstart3 |
4579
7a2be4a39423
updated for version 7.3.1037
Bram Moolenaar <bram@vim.org>
parents:
4571
diff
changeset
|
641 |
4730
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
642 Visual: |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
643 thexe the thexethe |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
644 andaxand andaxand |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
645 oooxofor foroxooo |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
646 oooxofor foroxooo |
749e2b2755d5
updated for version 7.3.1112
Bram Moolenaar <bram@vim.org>
parents:
4692
diff
changeset
|
647 |
4732
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
648 Marks: |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
649 asdfSasdfsadfEasdf |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
650 asdfSas |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
651 dfsadfEasdf |
0798b096bab3
updated for version 7.3.1113
Bram Moolenaar <bram@vim.org>
parents:
4730
diff
changeset
|
652 |
1357 | 653 Results of test64: |