Mercurial > vim
annotate src/testdir/test_filter_cmd.vim @ 18669:9007e9896303 v8.1.2326
patch 8.1.2326: cannot parse a date/time string
Commit: https://github.com/vim/vim/commit/10455d43fef041309ce0613fa792c635dd71e3a8
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Nov 21 15:36:18 2019 +0100
patch 8.1.2326: cannot parse a date/time string
Problem: Cannot parse a date/time string.
Solution: Add strptime(). (Stephen Wall, closes #)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 21 Nov 2019 15:45:03 +0100 |
parents | b912277e3877 |
children | 068337e86133 |
rev | line source |
---|---|
9941
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Test the :filter command modifier |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
3 func Test_filter() |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
4 edit Xdoesnotmatch |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 edit Xwillmatch |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 call assert_equal('"Xwillmatch"', substitute(execute('filter willma ls'), '[^"]*\(".*"\)[^"]*', '\1', '')) |
9980
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
7 bwipe Xdoesnotmatch |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
8 bwipe Xwillmatch |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
9 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
10 new |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
11 call setline(1, ['foo1', 'foo2', 'foo3', 'foo4', 'foo5']) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
12 call assert_equal("\nfoo2\nfoo4", execute('filter /foo[24]/ 1,$print')) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
13 call assert_equal("\n 2 foo2\n 4 foo4", execute('filter /foo[24]/ 1,$number')) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
14 call assert_equal("\nfoo2$\nfoo4$", execute('filter /foo[24]/ 1,$list')) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
15 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
16 call assert_equal("\nfoo1$\nfoo3$\nfoo5$", execute('filter! /foo[24]/ 1,$list')) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
17 bwipe! |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
18 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
19 command XTryThis echo 'this' |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
20 command XTryThat echo 'that' |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
21 command XDoThat echo 'that' |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
22 let lines = split(execute('filter XTry command'), "\n") |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
23 call assert_equal(3, len(lines)) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
24 call assert_match("XTryThat", lines[1]) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
25 call assert_match("XTryThis", lines[2]) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
26 delcommand XTryThis |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
27 delcommand XTryThat |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
28 delcommand XDoThat |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
29 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
30 map f1 the first key |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
31 map f2 the second key |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
32 map f3 not a key |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
33 let lines = split(execute('filter the map f'), "\n") |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
34 call assert_equal(2, len(lines)) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
35 call assert_match("f2", lines[0]) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
36 call assert_match("f1", lines[1]) |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
37 unmap f1 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
38 unmap f2 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
39 unmap f3 |
9941
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
40 endfunc |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
41 |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
42 func Test_filter_fails() |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
43 call assert_fails('filter', 'E471:') |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
44 call assert_fails('filter pat', 'E476:') |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
45 call assert_fails('filter /pat', 'E476:') |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
46 call assert_fails('filter /pat/', 'E476:') |
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
47 call assert_fails('filter /pat/ asdf', 'E492:') |
9980
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
48 |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
49 call assert_fails('filter!', 'E471:') |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
50 call assert_fails('filter! pat', 'E476:') |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
51 call assert_fails('filter! /pat', 'E476:') |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
52 call assert_fails('filter! /pat/', 'E476:') |
b222552cf0c4
commit https://github.com/vim/vim/commit/d29459baa61819e59961804ed258efac5733ec70
Christian Brabandt <cb@256bit.org>
parents:
9941
diff
changeset
|
53 call assert_fails('filter! /pat/ asdf', 'E492:') |
9941
e975914c17e9
commit https://github.com/vim/vim/commit/7b668e83d0635d082b7ec90d7d2aa30a9d7d8928
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
54 endfunc |
10520
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
55 |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
56 function s:complete_filter_cmd(filtcmd) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
57 let keystroke = "\<TAB>\<C-R>=execute('let cmdline = getcmdline()')\<CR>\<C-C>" |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
58 let cmdline = '' |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
59 call feedkeys(':' . a:filtcmd . keystroke, 'ntx') |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
60 return cmdline |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
61 endfunction |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
62 |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
63 func Test_filter_cmd_completion() |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
64 " Do not complete pattern |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
65 call assert_equal("filter \t", s:complete_filter_cmd('filter ')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
66 call assert_equal("filter pat\t", s:complete_filter_cmd('filter pat')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
67 call assert_equal("filter /pat\t", s:complete_filter_cmd('filter /pat')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
68 call assert_equal("filter /pat/\t", s:complete_filter_cmd('filter /pat/')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
69 |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
70 " Complete after string pattern |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
71 call assert_equal('filter pat print', s:complete_filter_cmd('filter pat pri')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
72 |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
73 " Complete after regexp pattern |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
74 call assert_equal('filter /pat/ print', s:complete_filter_cmd('filter /pat/ pri')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
75 call assert_equal('filter #pat# print', s:complete_filter_cmd('filter #pat# pri')) |
4b152b5f414f
commit https://github.com/vim/vim/commit/7069bf18e1b1b7bc7640335e07d1022b5acc9048
Christian Brabandt <cb@256bit.org>
parents:
9980
diff
changeset
|
76 endfunc |
14913
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
77 |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
78 func Test_filter_cmd_with_filter() |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
79 new |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
80 set shelltemp |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
81 %!echo "a|b" |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
82 let out = getline(1) |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
83 bw! |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
84 if has('win32') |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
85 let out = trim(out, '" ') |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
86 endif |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
87 call assert_equal('a|b', out) |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
88 set shelltemp& |
d4777be849d0
patch 8.1.0468: MS-Windows: filter command with pipe character fails
Bram Moolenaar <Bram@vim.org>
parents:
10520
diff
changeset
|
89 endfunction |
14968
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
90 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
91 func Test_filter_commands() |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
92 let g:test_filter_a = 1 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
93 let b:test_filter_b = 2 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
94 let test_filter_c = 3 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
95 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
96 " Test filtering :let command |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
97 let res = split(execute("filter /^test_filter/ let"), "\n") |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
98 call assert_equal(["test_filter_a #1"], res) |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
99 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
100 let res = split(execute("filter /\\v^(b:)?test_filter/ let"), "\n") |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
101 call assert_equal(["test_filter_a #1", "b:test_filter_b #2"], res) |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
102 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
103 unlet g:test_filter_a |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
104 unlet b:test_filter_b |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
105 unlet test_filter_c |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
106 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
107 " Test filtering :set command |
14987
5b06b642fbee
patch 8.1.0505: filter command test may fail if helplang is not set
Bram Moolenaar <Bram@vim.org>
parents:
14968
diff
changeset
|
108 let helplang=&helplang |
5b06b642fbee
patch 8.1.0505: filter command test may fail if helplang is not set
Bram Moolenaar <Bram@vim.org>
parents:
14968
diff
changeset
|
109 set helplang=en |
14968
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
110 let res = join(split(execute("filter /^help/ set"), "\n")[1:], " ") |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
111 call assert_match('^\s*helplang=\w*$', res) |
14987
5b06b642fbee
patch 8.1.0505: filter command test may fail if helplang is not set
Bram Moolenaar <Bram@vim.org>
parents:
14968
diff
changeset
|
112 let &helplang=helplang |
14968
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
113 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
114 " Test filtering :llist command |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
115 call setloclist(0, [{"filename": "/path/vim.c"}, {"filename": "/path/vim.h"}, {"module": "Main.Test"}]) |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
116 let res = split(execute("filter /\\.c$/ llist"), "\n") |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
117 call assert_equal([" 1 /path/vim.c: "], res) |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
118 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
119 let res = split(execute("filter /\\.Test$/ llist"), "\n") |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
120 call assert_equal([" 3 Main.Test: "], res) |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
121 |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
122 " Test filtering :jump command |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
123 e file.c |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
124 e file.h |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
125 e file.hs |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
126 let res = split(execute("filter /\.c$/ jumps"), "\n")[1:] |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
127 call assert_equal([" 2 1 0 file.c", ">"], res) |
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
128 |
16433
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
129 " Test filtering :marks command |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
130 b file.c |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
131 mark A |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
132 b file.h |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
133 mark B |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
134 let res = split(execute("filter /\.c$/ marks"), "\n")[1:] |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
135 call assert_equal([" A 1 0 file.c"], res) |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
136 |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
137 call setline(1, ['one', 'two', 'three']) |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
138 1mark a |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
139 2mark b |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
140 3mark c |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
141 let res = split(execute("filter /two/ marks abc"), "\n")[1:] |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
142 call assert_equal([" b 2 0 two"], res) |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
143 |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
144 bwipe! file.c |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
145 bwipe! file.h |
9c206a78ec04
patch 8.1.1221: filtering does not work when listing marks
Bram Moolenaar <Bram@vim.org>
parents:
14987
diff
changeset
|
146 bwipe! file.hs |
14968
c5ec5ddbe814
patch 8.1.0495: :filter only supports some commands
Bram Moolenaar <Bram@vim.org>
parents:
14913
diff
changeset
|
147 endfunc |
18454
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
148 |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
149 func Test_filter_display() |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
150 edit Xdoesnotmatch |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
151 let @a = '!!willmatch' |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
152 let @b = '!!doesnotmatch' |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
153 let @c = "oneline\ntwoline\nwillmatch\n" |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
154 let @/ = '!!doesnotmatch' |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
155 call feedkeys(":echo '!!doesnotmatch:'\<CR>", 'ntx') |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
156 let lines = map(split(execute('filter /willmatch/ display'), "\n"), 'v:val[5:6]') |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
157 |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
158 call assert_true(index(lines, '"a') >= 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
159 call assert_false(index(lines, '"b') >= 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
160 call assert_true(index(lines, '"c') >= 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
161 call assert_false(index(lines, '"/') >= 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
162 call assert_false(index(lines, '":') >= 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
163 call assert_false(index(lines, '"%') >= 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
164 |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
165 let lines = map(split(execute('filter /doesnotmatch/ display'), "\n"), 'v:val[5:6]') |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
166 call assert_true(index(lines, '"a') < 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
167 call assert_false(index(lines, '"b') < 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
168 call assert_true(index(lines, '"c') < 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
169 call assert_false(index(lines, '"/') < 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
170 call assert_false(index(lines, '":') < 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
171 call assert_false(index(lines, '"%') < 0) |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
172 |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
173 bwipe! |
b912277e3877
patch 8.1.2221: cannot filter :disp output
Bram Moolenaar <Bram@vim.org>
parents:
16433
diff
changeset
|
174 endfunc |