Mercurial > vim
annotate src/testdir/test_vim9_cmd.vim @ 25028:faa3de7aed8b v8.2.3051
patch 8.2.3051: Vim9: for loop with one list variable does not work
Commit: https://github.com/vim/vim/commit/444d878324525787e55185ce3c3e29a3de9b700a
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jun 26 12:40:56 2021 +0200
patch 8.2.3051: Vim9: for loop with one list variable does not work
Problem: Vim9: for loop with one list variable does not work.
Solution: Use a separate flag for unpacking a list. (closes https://github.com/vim/vim/issues/8452)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 26 Jun 2021 12:45:03 +0200 |
parents | adcd50a18236 |
children | 7124992f26ef |
rev | line source |
---|---|
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1 " Test commands that are not compiled in a :def function |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 |
20172
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
3 source check.vim |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4 source vim9.vim |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
5 source term_util.vim |
21156
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
6 source view_util.vim |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 |
23938
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
8 def Test_vim9cmd() |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
9 var lines =<< trim END |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
10 vim9cmd var x = 123 |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
11 let s:y = 'yes' |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
12 vim9c assert_equal(123, x) |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
13 vim9cm assert_equal('yes', y) |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
14 END |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
15 CheckScriptSuccess(lines) |
24596
acd9220bdd0b
patch 8.2.2837: various code lines not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24545
diff
changeset
|
16 assert_fails('vim9cmd', 'E1164:') |
23938
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
17 enddef |
2a885d095bff
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Bram Moolenaar <Bram@vim.org>
parents:
23823
diff
changeset
|
18 |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 def Test_edit_wildcards() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
20 var filename = 'Xtest' |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 edit `=filename` |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 assert_equal('Xtest', bufname()) |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
23 |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
24 var filenr = 123 |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
25 edit Xtest`=filenr` |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
26 assert_equal('Xtest123', bufname()) |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
27 |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
28 filenr = 77 |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
29 edit `=filename``=filenr` |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
30 assert_equal('Xtest77', bufname()) |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
31 |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
32 edit X`=filename`xx`=filenr`yy |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
33 assert_equal('XXtestxx77yy', bufname()) |
23197
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
34 |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
35 CheckDefFailure(['edit `=xxx`'], 'E1001:') |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
36 CheckDefFailure(['edit `="foo"'], 'E1083:') |
24806
28127371aa18
patch 8.2.2941: Vim9: using does not handle a list of strings
Bram Moolenaar <Bram@vim.org>
parents:
24614
diff
changeset
|
37 |
28127371aa18
patch 8.2.2941: Vim9: using does not handle a list of strings
Bram Moolenaar <Bram@vim.org>
parents:
24614
diff
changeset
|
38 var files = ['file 1', 'file%2', 'file# 3'] |
28127371aa18
patch 8.2.2941: Vim9: using does not handle a list of strings
Bram Moolenaar <Bram@vim.org>
parents:
24614
diff
changeset
|
39 args `=files` |
28127371aa18
patch 8.2.2941: Vim9: using does not handle a list of strings
Bram Moolenaar <Bram@vim.org>
parents:
24614
diff
changeset
|
40 assert_equal(files, argv()) |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
41 enddef |
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
42 |
23370
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
43 def Test_expand_alternate_file() |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
44 var lines =<< trim END |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
45 edit Xfileone |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
46 var bone = bufnr() |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
47 edit Xfiletwo |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
48 var btwo = bufnr() |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
49 edit Xfilethree |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
50 var bthree = bufnr() |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
51 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
52 edit # |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
53 assert_equal(bthree, bufnr()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
54 edit %% |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
55 assert_equal(btwo, bufnr()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
56 edit %% # comment |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
57 assert_equal(bthree, bufnr()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
58 edit %%yy |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
59 assert_equal('Xfiletwoyy', bufname()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
60 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
61 exe "edit %%" .. bone |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
62 assert_equal(bone, bufnr()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
63 exe "edit %%" .. btwo .. "xx" |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
64 assert_equal('Xfiletwoxx', bufname()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
65 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
66 next Xfileone Xfiletwo Xfilethree |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
67 assert_equal('Xfileone', argv(0)) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
68 assert_equal('Xfiletwo', argv(1)) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
69 assert_equal('Xfilethree', argv(2)) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
70 next %%%zz |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
71 assert_equal('Xfileone', argv(0)) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
72 assert_equal('Xfiletwo', argv(1)) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
73 assert_equal('Xfilethreezz', argv(2)) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
74 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
75 v:oldfiles = ['Xonefile', 'Xtwofile'] |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
76 edit %%<1 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
77 assert_equal('Xonefile', bufname()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
78 edit %%<2 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
79 assert_equal('Xtwofile', bufname()) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
80 assert_fails('edit %%<3', 'E684:') |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
81 |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
82 edit Xfileone.vim |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
83 edit Xfiletwo |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
84 edit %%:r |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
85 assert_equal('Xfileone', bufname()) |
23711
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
86 |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
87 assert_false(bufexists('altfoo')) |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
88 edit altfoo |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
89 edit bar |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
90 assert_true(bufexists('altfoo')) |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
91 assert_true(buflisted('altfoo')) |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
92 bdel %% |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
93 assert_true(bufexists('altfoo')) |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
94 assert_false(buflisted('altfoo')) |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
95 bwipe! altfoo |
29eccef07e2f
patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Bram Moolenaar <Bram@vim.org>
parents:
23709
diff
changeset
|
96 bwipe! bar |
23370
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
97 END |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
98 CheckDefAndScriptSuccess(lines) |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
99 enddef |
622e90acea5d
patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Bram Moolenaar <Bram@vim.org>
parents:
23348
diff
changeset
|
100 |
23344
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
101 def Test_global_backtick_expansion() |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
102 new |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
103 setline(1, 'xx') |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
104 var name = 'foobar' |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
105 g/^xx/s/.*/`=name` |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
106 assert_equal('foobar', getline(1)) |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
107 bwipe! |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
108 enddef |
1f37fd20f851
patch 8.2.2215: Vim9: not recognized in global command
Bram Moolenaar <Bram@vim.org>
parents:
23274
diff
changeset
|
109 |
23521
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
110 def Test_folddo_backtick_expansion() |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
111 new |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
112 var name = 'xxx' |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
113 folddoopen edit `=name` |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
114 assert_equal('xxx', bufname()) |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
115 bwipe! |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
116 |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
117 new |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
118 setline(1, ['one', 'two']) |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
119 set nomodified |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
120 :1,2fold |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
121 foldclose |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
122 folddoclose edit `=name` |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
123 assert_equal('xxx', bufname()) |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
124 bwipe! |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
125 enddef |
0ef920a03380
patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Bram Moolenaar <Bram@vim.org>
parents:
23513
diff
changeset
|
126 |
20172
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
127 def Test_hardcopy_wildcards() |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
128 CheckUnix |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
129 CheckFeature postscript |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
130 |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
131 var outfile = 'print' |
20172
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
132 hardcopy > X`=outfile`.ps |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
133 assert_true(filereadable('Xprint.ps')) |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
134 |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
135 delete('Xprint.ps') |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
136 enddef |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
137 |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
138 def Test_syn_include_wildcards() |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
139 writefile(['syn keyword Found found'], 'Xthemine.vim') |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
140 var save_rtp = &rtp |
20172
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
141 &rtp = '.' |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
142 |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
143 var fname = 'mine' |
20172
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
144 syn include @Group Xthe`=fname`.vim |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
145 assert_match('Found.* contained found', execute('syn list Found')) |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
146 |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
147 &rtp = save_rtp |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
148 delete('Xthemine.vim') |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
149 enddef |
1d84eaed0ec8
patch 8.2.0641: Vim9: not expanded in :hardcopy and syn-include
Bram Moolenaar <Bram@vim.org>
parents:
20170
diff
changeset
|
150 |
21048
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
151 def Test_echo_linebreak() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
152 var lines =<< trim END |
21048
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
153 vim9script |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
154 redir @a |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
155 echo 'one' |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
156 .. 'two' |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
157 redir END |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
158 assert_equal("\nonetwo", @a) |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
159 END |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
160 CheckScriptSuccess(lines) |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
161 |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
162 lines =<< trim END |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
163 vim9script |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
164 redir @a |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
165 echo 11 + |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
166 77 |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
167 - 22 |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
168 redir END |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
169 assert_equal("\n66", @a) |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
170 END |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
171 CheckScriptSuccess(lines) |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
172 enddef |
524fa1d42e1e
patch 8.2.1075: Vim9: no line break allowed in :echo expression
Bram Moolenaar <Bram@vim.org>
parents:
20353
diff
changeset
|
173 |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
174 def Test_condition_types() |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
175 var lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
176 if 'text' |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
177 endif |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
178 END |
22860
53acb89ec9f2
patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Bram Moolenaar <Bram@vim.org>
parents:
22814
diff
changeset
|
179 CheckDefAndScriptFailure(lines, 'E1135:', 1) |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
180 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
181 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
182 if [1] |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
183 endif |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
184 END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
185 CheckDefFailure(lines, 'E1012:', 1) |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
186 CheckScriptFailure(['vim9script'] + lines, 'E745:', 2) |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
187 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
188 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
189 g:cond = 'text' |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
190 if g:cond |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
191 endif |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
192 END |
22860
53acb89ec9f2
patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Bram Moolenaar <Bram@vim.org>
parents:
22814
diff
changeset
|
193 CheckDefExecAndScriptFailure(lines, 'E1135:', 2) |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
194 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
195 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
196 g:cond = 0 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
197 if g:cond |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
198 elseif 'text' |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
199 endif |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
200 END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
201 CheckDefFailure(lines, 'E1012:', 3) |
22860
53acb89ec9f2
patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Bram Moolenaar <Bram@vim.org>
parents:
22814
diff
changeset
|
202 CheckScriptFailure(['vim9script'] + lines, 'E1135:', 4) |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
203 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
204 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
205 if g:cond |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
206 elseif [1] |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
207 endif |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
208 END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
209 CheckDefFailure(lines, 'E1012:', 2) |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
210 CheckScriptFailure(['vim9script'] + lines, 'E745:', 3) |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
211 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
212 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
213 g:cond = 'text' |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
214 if 0 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
215 elseif g:cond |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
216 endif |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
217 END |
22860
53acb89ec9f2
patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Bram Moolenaar <Bram@vim.org>
parents:
22814
diff
changeset
|
218 CheckDefExecAndScriptFailure(lines, 'E1135:', 3) |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
219 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
220 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
221 while 'text' |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
222 endwhile |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
223 END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
224 CheckDefFailure(lines, 'E1012:', 1) |
22860
53acb89ec9f2
patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Bram Moolenaar <Bram@vim.org>
parents:
22814
diff
changeset
|
225 CheckScriptFailure(['vim9script'] + lines, 'E1135:', 2) |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
226 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
227 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
228 while [1] |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
229 endwhile |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
230 END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
231 CheckDefFailure(lines, 'E1012:', 1) |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
232 CheckScriptFailure(['vim9script'] + lines, 'E745:', 2) |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
233 |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
234 lines =<< trim END |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
235 g:cond = 'text' |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
236 while g:cond |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
237 endwhile |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
238 END |
22860
53acb89ec9f2
patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Bram Moolenaar <Bram@vim.org>
parents:
22814
diff
changeset
|
239 CheckDefExecAndScriptFailure(lines, 'E1135:', 2) |
22500
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
240 enddef |
ef8a3177edc1
patch 8.2.1798: Vim9: trinary operator condition is too permissive
Bram Moolenaar <Bram@vim.org>
parents:
22494
diff
changeset
|
241 |
21050
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
242 def Test_if_linebreak() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
243 var lines =<< trim END |
21050
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
244 vim9script |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
245 if 1 && |
22494
4c21f7f6f9e3
patch 8.2.1795: Vim9: operators && and || have a confusing result
Bram Moolenaar <Bram@vim.org>
parents:
22435
diff
changeset
|
246 true |
4c21f7f6f9e3
patch 8.2.1795: Vim9: operators && and || have a confusing result
Bram Moolenaar <Bram@vim.org>
parents:
22435
diff
changeset
|
247 || 1 |
21050
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
248 g:res = 42 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
249 endif |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
250 assert_equal(42, g:res) |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
251 END |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
252 CheckScriptSuccess(lines) |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
253 unlet g:res |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
254 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
255 lines =<< trim END |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
256 vim9script |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
257 if 1 && |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
258 0 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
259 g:res = 0 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
260 elseif 0 || |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
261 0 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
262 || 1 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
263 g:res = 12 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
264 endif |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
265 assert_equal(12, g:res) |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
266 END |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
267 CheckScriptSuccess(lines) |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
268 unlet g:res |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
269 enddef |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
270 |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
271 def Test_while_linebreak() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
272 var lines =<< trim END |
21050
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
273 vim9script |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
274 var nr = 0 |
21056
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
275 while nr < |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
276 10 + 3 |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
277 nr = nr |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
278 + 4 |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
279 endwhile |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
280 assert_equal(16, nr) |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
281 END |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
282 CheckScriptSuccess(lines) |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
283 |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
284 lines =<< trim END |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
285 vim9script |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
286 var nr = 0 |
21056
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
287 while nr |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
288 < |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
289 10 |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
290 + |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
291 3 |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
292 nr = nr |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
293 + |
a7c202f5cbe9
patch 8.2.1079: Vim9: no line break allowed in a while loop
Bram Moolenaar <Bram@vim.org>
parents:
21050
diff
changeset
|
294 4 |
21050
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
295 endwhile |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
296 assert_equal(16, nr) |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
297 END |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
298 CheckScriptSuccess(lines) |
7a9daf73a724
patch 8.2.1076: Vim9: no line break allowed in :if expression
Bram Moolenaar <Bram@vim.org>
parents:
21048
diff
changeset
|
299 enddef |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
300 |
21058
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
301 def Test_for_linebreak() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
302 var lines =<< trim END |
21058
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
303 vim9script |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
304 var nr = 0 |
21058
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
305 for x |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
306 in |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
307 [1, 2, 3, 4] |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
308 nr = nr + x |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
309 endfor |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
310 assert_equal(10, nr) |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
311 END |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
312 CheckScriptSuccess(lines) |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
313 |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
314 lines =<< trim END |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
315 vim9script |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
316 var nr = 0 |
21058
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
317 for x |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
318 in |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
319 [1, 2, |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
320 3, 4 |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
321 ] |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
322 nr = nr |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
323 + |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
324 x |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
325 endfor |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
326 assert_equal(10, nr) |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
327 END |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
328 CheckScriptSuccess(lines) |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
329 enddef |
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
330 |
23966
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
331 def MethodAfterLinebreak(arg: string) |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
332 arg |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
333 ->setline(1) |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
334 enddef |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
335 |
21130
4a1e8086759b
patch 8.2.1116: Vim9: parsing command checks for list twice
Bram Moolenaar <Bram@vim.org>
parents:
21122
diff
changeset
|
336 def Test_method_call_linebreak() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
337 var lines =<< trim END |
21122
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
338 vim9script |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
339 var res = [] |
21122
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
340 func RetArg( |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
341 arg |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
342 ) |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
343 let s:res = a:arg |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
344 endfunc |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
345 [1, |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
346 2, |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
347 3]->RetArg() |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
348 assert_equal([1, 2, 3], res) |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
349 END |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
350 CheckScriptSuccess(lines) |
23823
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
351 |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
352 lines =<< trim END |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
353 new |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
354 var name = [1, 2] |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
355 name |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
356 ->copy() |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
357 ->setline(1) |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
358 assert_equal(['1', '2'], getline(1, 2)) |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
359 bwipe! |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
360 END |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
361 CheckDefAndScriptSuccess(lines) |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
362 |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
363 lines =<< trim END |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
364 new |
24067
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
365 def Foo(): string |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
366 return 'the text' |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
367 enddef |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
368 def Bar(F: func): string |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
369 return F() |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
370 enddef |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
371 def Test() |
24124
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
372 Foo ->Bar() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
373 ->setline(1) |
24067
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
374 enddef |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
375 Test() |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
376 assert_equal('the text', getline(1)) |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
377 bwipe! |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
378 END |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
379 CheckDefAndScriptSuccess(lines) |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
380 |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
381 lines =<< trim END |
780dec2ffa6b
patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
24049
diff
changeset
|
382 new |
23823
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
383 g:shortlist |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
384 ->copy() |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
385 ->setline(1) |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
386 assert_equal(['1', '2'], getline(1, 2)) |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
387 bwipe! |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
388 END |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
389 g:shortlist = [1, 2] |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
390 CheckDefAndScriptSuccess(lines) |
262ab14b27db
patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
23711
diff
changeset
|
391 unlet g:shortlist |
23966
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
392 |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
393 new |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
394 MethodAfterLinebreak('foobar') |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
395 assert_equal('foobar', getline(1)) |
09bde146adcb
patch 8.2.2525: Vim9: only local variables checked for a name
Bram Moolenaar <Bram@vim.org>
parents:
23938
diff
changeset
|
396 bwipe! |
24049
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
397 |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
398 lines =<< trim END |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
399 vim9script |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
400 def Foo(): string |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
401 return '# some text' |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
402 enddef |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
403 |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
404 def Bar(F: func): string |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
405 return F() |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
406 enddef |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
407 |
24124
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
408 Foo->Bar() |
24049
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
409 ->setline(1) |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
410 END |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
411 CheckScriptSuccess(lines) |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
412 assert_equal('# some text', getline(1)) |
fc4c2beea99a
patch 8.2.2566: Vim9: Function name is not recognized
Bram Moolenaar <Bram@vim.org>
parents:
23966
diff
changeset
|
413 bwipe! |
21122
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
414 enddef |
839ace6773aa
patch 8.2.1112: Vim9: no line continuation allowed in method call
Bram Moolenaar <Bram@vim.org>
parents:
21058
diff
changeset
|
415 |
23709
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
416 def Test_method_call_whitespace() |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
417 var lines =<< trim END |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
418 new |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
419 var yank = 'text' |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
420 yank->setline(1) |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
421 yank ->setline(2) |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
422 yank-> setline(3) |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
423 yank -> setline(4) |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
424 assert_equal(['text', 'text', 'text', 'text'], getline(1, 4)) |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
425 bwipe! |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
426 END |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
427 CheckDefAndScriptSuccess(lines) |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
428 enddef |
a0c4d04a58c4
patch 8.2.2396: Vim9: no white space allowed before "->"
Bram Moolenaar <Bram@vim.org>
parents:
23671
diff
changeset
|
429 |
24124
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
430 def Test_method_and_user_command() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
431 var lines =<< trim END |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
432 vim9script |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
433 def Cmd() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
434 g:didFunc = 1 |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
435 enddef |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
436 command Cmd g:didCmd = 1 |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
437 Cmd |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
438 assert_equal(1, g:didCmd) |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
439 Cmd() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
440 assert_equal(1, g:didFunc) |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
441 unlet g:didFunc |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
442 unlet g:didCmd |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
443 |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
444 def InDefFunc() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
445 Cmd |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
446 assert_equal(1, g:didCmd) |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
447 Cmd() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
448 assert_equal(1, g:didFunc) |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
449 unlet g:didFunc |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
450 unlet g:didCmd |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
451 enddef |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
452 InDefFunc() |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
453 END |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
454 CheckScriptSuccess(lines) |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
455 enddef |
f4061617c438
patch 8.2.2603: Vim9: no effect if user command is also a function
Bram Moolenaar <Bram@vim.org>
parents:
24067
diff
changeset
|
456 |
22685
80b4e604d1d5
patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Bram Moolenaar <Bram@vim.org>
parents:
22649
diff
changeset
|
457 def Test_skipped_expr_linebreak() |
80b4e604d1d5
patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Bram Moolenaar <Bram@vim.org>
parents:
22649
diff
changeset
|
458 if 0 |
80b4e604d1d5
patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Bram Moolenaar <Bram@vim.org>
parents:
22649
diff
changeset
|
459 var x = [] |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23422
diff
changeset
|
460 ->map(() => 0) |
22685
80b4e604d1d5
patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Bram Moolenaar <Bram@vim.org>
parents:
22649
diff
changeset
|
461 endif |
80b4e604d1d5
patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Bram Moolenaar <Bram@vim.org>
parents:
22649
diff
changeset
|
462 enddef |
80b4e604d1d5
patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Bram Moolenaar <Bram@vim.org>
parents:
22649
diff
changeset
|
463 |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
464 def Test_dict_member() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
465 var test: dict<list<number>> = {data: [3, 1, 2]} |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
466 test.data->sort() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
467 assert_equal({data: [1, 2, 3]}, test) |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
468 test.data |
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
469 ->reverse() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
470 assert_equal({data: [3, 2, 1]}, test) |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
471 |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
472 var lines =<< trim END |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
473 vim9script |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
474 var test: dict<list<number>> = {data: [3, 1, 2]} |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
475 test.data->sort() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
476 assert_equal({data: [1, 2, 3]}, test) |
21212
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
477 END |
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
478 CheckScriptSuccess(lines) |
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
479 enddef |
874a28fac941
patch 8.2.1157: Vim9: dict.name is not recognized as an expression
Bram Moolenaar <Bram@vim.org>
parents:
21196
diff
changeset
|
480 |
21156
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
481 def Test_bar_after_command() |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
482 def RedrawAndEcho() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
483 var x = 'did redraw' |
21156
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
484 redraw | echo x |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
485 enddef |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
486 RedrawAndEcho() |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
487 assert_match('did redraw', Screenline(&lines)) |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
488 |
21158
157fe2d26e16
patch 8.2.1130: Vim9: bar not recognized after function call
Bram Moolenaar <Bram@vim.org>
parents:
21156
diff
changeset
|
489 def CallAndEcho() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
490 var x = 'did redraw' |
21158
157fe2d26e16
patch 8.2.1130: Vim9: bar not recognized after function call
Bram Moolenaar <Bram@vim.org>
parents:
21156
diff
changeset
|
491 reg_executing() | echo x |
157fe2d26e16
patch 8.2.1130: Vim9: bar not recognized after function call
Bram Moolenaar <Bram@vim.org>
parents:
21156
diff
changeset
|
492 enddef |
157fe2d26e16
patch 8.2.1130: Vim9: bar not recognized after function call
Bram Moolenaar <Bram@vim.org>
parents:
21156
diff
changeset
|
493 CallAndEcho() |
157fe2d26e16
patch 8.2.1130: Vim9: bar not recognized after function call
Bram Moolenaar <Bram@vim.org>
parents:
21156
diff
changeset
|
494 assert_match('did redraw', Screenline(&lines)) |
157fe2d26e16
patch 8.2.1130: Vim9: bar not recognized after function call
Bram Moolenaar <Bram@vim.org>
parents:
21156
diff
changeset
|
495 |
21156
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
496 if has('unix') |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
497 # bar in filter write command does not start new command |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
498 def WriteToShell() |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
499 new |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
500 setline(1, 'some text') |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
501 w !cat | cat > Xoutfile |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
502 bwipe! |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
503 enddef |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
504 WriteToShell() |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
505 assert_equal(['some text'], readfile('Xoutfile')) |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
506 delete('Xoutfile') |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
507 |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
508 # bar in filter read command does not start new command |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
509 def ReadFromShell() |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
510 new |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
511 r! echo hello there | cat > Xoutfile |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
512 r !echo again | cat >> Xoutfile |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
513 bwipe! |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
514 enddef |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
515 ReadFromShell() |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
516 assert_equal(['hello there', 'again'], readfile('Xoutfile')) |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
517 delete('Xoutfile') |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
518 endif |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
519 enddef |
eb6c27af07dd
patch 8.2.1129: Vim9: bar not recognized after not compiled command
Bram Moolenaar <Bram@vim.org>
parents:
21130
diff
changeset
|
520 |
21255
4be91a7eafb2
patch 8.2.1178: Vim9: filter function recognized as command modifier
Bram Moolenaar <Bram@vim.org>
parents:
21212
diff
changeset
|
521 def Test_filter_is_not_modifier() |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
522 var tags = [{a: 1, b: 2}, {x: 3, y: 4}] |
23428
5807e3958e38
patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Bram Moolenaar <Bram@vim.org>
parents:
23422
diff
changeset
|
523 filter(tags, ( _, v) => has_key(v, 'x') ? 1 : 0 ) |
23072
4b398a229b0b
patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Bram Moolenaar <Bram@vim.org>
parents:
23011
diff
changeset
|
524 assert_equal([{x: 3, y: 4}], tags) |
21255
4be91a7eafb2
patch 8.2.1178: Vim9: filter function recognized as command modifier
Bram Moolenaar <Bram@vim.org>
parents:
21212
diff
changeset
|
525 enddef |
4be91a7eafb2
patch 8.2.1178: Vim9: filter function recognized as command modifier
Bram Moolenaar <Bram@vim.org>
parents:
21212
diff
changeset
|
526 |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
527 def Test_command_modifier_filter() |
22750
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
528 var lines =<< trim END |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
529 final expected = "\nType Name Content\n c \"c piyo" |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
530 @a = 'hoge' |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
531 @b = 'fuga' |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
532 @c = 'piyo' |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
533 |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
534 assert_equal(execute('filter /piyo/ registers abc'), expected) |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
535 END |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
536 CheckDefAndScriptSuccess(lines) |
24834
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
537 |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
538 # also do this compiled |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
539 lines =<< trim END |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
540 @a = 'very specific z3d37dh234 string' |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
541 filter z3d37dh234 registers |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
542 assert_match('very specific z3d37dh234 string', Screenline(&lines)) |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
543 END |
adcd50a18236
patch 8.2.2955: Vim9: using filter in compiled command does not work
Bram Moolenaar <Bram@vim.org>
parents:
24816
diff
changeset
|
544 CheckDefAndScriptSuccess(lines) |
22750
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
545 enddef |
f945413264d7
patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Bram Moolenaar <Bram@vim.org>
parents:
22691
diff
changeset
|
546 |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
547 def Test_win_command_modifiers() |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
548 assert_equal(1, winnr('$')) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
549 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
550 set splitright |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
551 vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
552 assert_equal(2, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
553 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
554 aboveleft vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
555 assert_equal(1, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
556 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
557 set splitright& |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
558 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
559 vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
560 assert_equal(1, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
561 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
562 belowright vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
563 assert_equal(2, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
564 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
565 rightbelow vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
566 assert_equal(2, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
567 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
568 |
22784
9a6431f4b27a
patch 8.2.1940: Vim9: browse modifier test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
22778
diff
changeset
|
569 if has('browse') |
9a6431f4b27a
patch 8.2.1940: Vim9: browse modifier test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
22778
diff
changeset
|
570 browse set |
9a6431f4b27a
patch 8.2.1940: Vim9: browse modifier test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
22778
diff
changeset
|
571 assert_equal('option-window', expand('%')) |
9a6431f4b27a
patch 8.2.1940: Vim9: browse modifier test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
22778
diff
changeset
|
572 close |
9a6431f4b27a
patch 8.2.1940: Vim9: browse modifier test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
22778
diff
changeset
|
573 endif |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
574 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
575 vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
576 botright split |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
577 assert_equal(3, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
578 assert_equal(&columns, winwidth(0)) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
579 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
580 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
581 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
582 vsplit |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
583 topleft split |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
584 assert_equal(1, winnr()) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
585 assert_equal(&columns, winwidth(0)) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
586 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
587 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
588 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
589 gettabinfo()->len()->assert_equal(1) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
590 tab split |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
591 gettabinfo()->len()->assert_equal(2) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
592 tabclose |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
593 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
594 vertical new |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
595 assert_inrange(&columns / 2 - 2, &columns / 2 + 1, winwidth(0)) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
596 close |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
597 enddef |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
598 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
599 func Test_command_modifier_confirm() |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
600 CheckNotGui |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
601 CheckRunVimInTerminal |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
602 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
603 " Test for saving all the modified buffers |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
604 let lines =<< trim END |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
605 call setline(1, 'changed') |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
606 def Getout() |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
607 confirm write Xfile |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
608 enddef |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
609 END |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
610 call writefile(lines, 'Xconfirmscript') |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
611 call writefile(['empty'], 'Xfile') |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
612 let buf = RunVimInTerminal('-S Xconfirmscript', {'rows': 8}) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
613 call term_sendkeys(buf, ":call Getout()\n") |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
614 call WaitForAssert({-> assert_match('(Y)es, \[N\]o: ', term_getline(buf, 8))}, 1000) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
615 call term_sendkeys(buf, "y") |
22778
3ec5f653f64d
patch 8.2.1937: Vim9: test for confirm modifier fails in some situations
Bram Moolenaar <Bram@vim.org>
parents:
22772
diff
changeset
|
616 call WaitForAssert({-> assert_match('(Y)es, \[N\]o: ', term_getline(buf, 8))}, 1000) |
3ec5f653f64d
patch 8.2.1937: Vim9: test for confirm modifier fails in some situations
Bram Moolenaar <Bram@vim.org>
parents:
22772
diff
changeset
|
617 call term_sendkeys(buf, "\<CR>") |
3ec5f653f64d
patch 8.2.1937: Vim9: test for confirm modifier fails in some situations
Bram Moolenaar <Bram@vim.org>
parents:
22772
diff
changeset
|
618 call TermWait(buf) |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
619 call StopVimInTerminal(buf) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
620 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
621 call assert_equal(['changed'], readfile('Xfile')) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
622 call delete('Xfile') |
22778
3ec5f653f64d
patch 8.2.1937: Vim9: test for confirm modifier fails in some situations
Bram Moolenaar <Bram@vim.org>
parents:
22772
diff
changeset
|
623 call delete('.Xfile.swp') " in case Vim was killed |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
624 call delete('Xconfirmscript') |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
625 endfunc |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
626 |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
627 def Test_command_modifiers_keep() |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
628 if has('unix') |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
629 def DoTest(addRflag: bool, keepMarks: bool, hasMarks: bool) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
630 new |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
631 setline(1, ['one', 'two', 'three']) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
632 normal 1Gma |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
633 normal 2Gmb |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
634 normal 3Gmc |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
635 if addRflag |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
636 set cpo+=R |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
637 else |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
638 set cpo-=R |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
639 endif |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
640 if keepMarks |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
641 keepmarks :%!cat |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
642 else |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
643 :%!cat |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
644 endif |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
645 if hasMarks |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
646 assert_equal(1, line("'a")) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
647 assert_equal(2, line("'b")) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
648 assert_equal(3, line("'c")) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
649 else |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
650 assert_equal(0, line("'a")) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
651 assert_equal(0, line("'b")) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
652 assert_equal(0, line("'c")) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
653 endif |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
654 quit! |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
655 enddef |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
656 DoTest(false, false, true) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
657 DoTest(true, false, false) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
658 DoTest(false, true, true) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
659 DoTest(true, true, true) |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
660 set cpo&vim |
22812
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
661 |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
662 new |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
663 setline(1, ['one', 'two', 'three', 'four']) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
664 assert_equal(4, line("$")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
665 normal 1Gma |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
666 normal 2Gmb |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
667 normal 3Gmc |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
668 lockmarks :1,2!wc |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
669 # line is deleted, marks don't move |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
670 assert_equal(3, line("$")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
671 assert_equal('four', getline(3)) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
672 assert_equal(1, line("'a")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
673 assert_equal(2, line("'b")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
674 assert_equal(3, line("'c")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
675 quit! |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
676 endif |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
677 |
22812
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
678 edit Xone |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
679 edit Xtwo |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
680 assert_equal('Xone', expand('#')) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
681 keepalt edit Xthree |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
682 assert_equal('Xone', expand('#')) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
683 |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
684 normal /a*b* |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
685 assert_equal('a*b*', histget("search")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
686 keeppatterns normal /c*d* |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
687 assert_equal('a*b*', histget("search")) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
688 |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
689 new |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
690 setline(1, range(10)) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
691 :10 |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
692 normal gg |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
693 assert_equal(10, getpos("''")[1]) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
694 keepjumps normal 5G |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
695 assert_equal(10, getpos("''")[1]) |
1ef3b04875ff
patch 8.2.1954: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22790
diff
changeset
|
696 quit! |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
697 enddef |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
698 |
23398
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
699 def Test_bar_line_continuation() |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
700 var lines =<< trim END |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
701 au BufNewFile Xfile g:readFile = 1 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
702 | g:readExtra = 2 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
703 g:readFile = 0 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
704 g:readExtra = 0 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
705 edit Xfile |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
706 assert_equal(1, g:readFile) |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
707 assert_equal(2, g:readExtra) |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
708 bwipe! |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
709 au! BufNewFile |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
710 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
711 au BufNewFile Xfile g:readFile = 1 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
712 | g:readExtra = 2 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
713 | g:readMore = 3 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
714 g:readFile = 0 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
715 g:readExtra = 0 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
716 g:readMore = 0 |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
717 edit Xfile |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
718 assert_equal(1, g:readFile) |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
719 assert_equal(2, g:readExtra) |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
720 assert_equal(3, g:readMore) |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
721 bwipe! |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
722 au! BufNewFile |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
723 unlet g:readFile |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
724 unlet g:readExtra |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
725 unlet g:readMore |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
726 END |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
727 CheckDefAndScriptSuccess(lines) |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
728 enddef |
40f824f5c7c7
patch 8.2.2242: Vim9: bar line continuation does not work at script level
Bram Moolenaar <Bram@vim.org>
parents:
23392
diff
changeset
|
729 |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
730 def Test_command_modifier_other() |
22814
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
731 new Xsomefile |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
732 setline(1, 'changed') |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
733 var buf = bufnr() |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
734 hide edit Xotherfile |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
735 var info = getbufinfo(buf) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
736 assert_equal(1, info[0].hidden) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
737 assert_equal(1, info[0].changed) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
738 edit Xsomefile |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
739 bwipe! |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
740 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
741 au BufNewFile Xfile g:readFile = 1 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
742 g:readFile = 0 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
743 edit Xfile |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
744 assert_equal(1, g:readFile) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
745 bwipe! |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
746 g:readFile = 0 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
747 noautocmd edit Xfile |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
748 assert_equal(0, g:readFile) |
23392
517fca70e084
patch 8.2.2239: Vim9: concatenating lines with backslash is inconvenient
Bram Moolenaar <Bram@vim.org>
parents:
23374
diff
changeset
|
749 au! BufNewFile |
517fca70e084
patch 8.2.2239: Vim9: concatenating lines with backslash is inconvenient
Bram Moolenaar <Bram@vim.org>
parents:
23374
diff
changeset
|
750 unlet g:readFile |
22814
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
751 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
752 noswapfile edit XnoSwap |
23422
bb0c53f4ef8b
patch 8.2.2254: Vim9: bool option type is number
Bram Moolenaar <Bram@vim.org>
parents:
23398
diff
changeset
|
753 assert_equal(false, &l:swapfile) |
22814
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
754 bwipe! |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
755 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
756 var caught = false |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
757 try |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
758 sandbox !ls |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
759 catch /E48:/ |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
760 caught = true |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
761 endtry |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
762 assert_true(caught) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
763 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
764 :8verbose g:verbose_now = &verbose |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
765 assert_equal(8, g:verbose_now) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
766 unlet g:verbose_now |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
767 enddef |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
768 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
769 def EchoHere() |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
770 echomsg 'here' |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
771 enddef |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
772 def EchoThere() |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
773 unsilent echomsg 'there' |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
774 enddef |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
775 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
776 def Test_modifier_silent_unsilent() |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
777 echomsg 'last one' |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
778 silent echomsg "text" |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
779 assert_equal("\nlast one", execute(':1messages')) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
780 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
781 silent! echoerr "error" |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
782 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
783 echomsg 'last one' |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
784 silent EchoHere() |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
785 assert_equal("\nlast one", execute(':1messages')) |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
786 |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
787 silent EchoThere() |
bb1b21a2aae3
patch 8.2.1955: Vim9: not all command modifiers are tested
Bram Moolenaar <Bram@vim.org>
parents:
22812
diff
changeset
|
788 assert_equal("\nthere", execute(':1messages')) |
23348
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
789 |
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
790 try |
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
791 silent eval [][0] |
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
792 catch |
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
793 echomsg "caught" |
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
794 endtry |
456d625bb8c1
patch 8.2.2217: Vim9: command modifiers not restored in catch block
Bram Moolenaar <Bram@vim.org>
parents:
23346
diff
changeset
|
795 assert_equal("\ncaught", execute(':1messages')) |
22772
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
796 enddef |
82a7aff951d2
patch 8.2.1934: Vim9: command modifiers in :def function not tested
Bram Moolenaar <Bram@vim.org>
parents:
22750
diff
changeset
|
797 |
22790
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
798 def Test_range_after_command_modifier() |
23346
2060f53b7c17
patch 8.2.2216: Vim9: range with missing colon can be hard to spot
Bram Moolenaar <Bram@vim.org>
parents:
23344
diff
changeset
|
799 CheckScriptFailure(['vim9script', 'silent keepjump 1d _'], 'E1050: Colon required before a range: 1d _', 2) |
22790
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
800 new |
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
801 setline(1, 'xxx') |
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
802 CheckScriptSuccess(['vim9script', 'silent keepjump :1d _']) |
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
803 assert_equal('', getline(1)) |
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
804 bwipe! |
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
805 enddef |
44317eb799d7
patch 8.2.1943: Vim9: wrong error message when colon is missing
Bram Moolenaar <Bram@vim.org>
parents:
22784
diff
changeset
|
806 |
23541
a2a38bc68dd9
patch 8.2.2313: Vim9: using uninitialized field when parsing range
Bram Moolenaar <Bram@vim.org>
parents:
23521
diff
changeset
|
807 def Test_silent_pattern() |
a2a38bc68dd9
patch 8.2.2313: Vim9: using uninitialized field when parsing range
Bram Moolenaar <Bram@vim.org>
parents:
23521
diff
changeset
|
808 new |
a2a38bc68dd9
patch 8.2.2313: Vim9: using uninitialized field when parsing range
Bram Moolenaar <Bram@vim.org>
parents:
23521
diff
changeset
|
809 silent! :/pat/put _ |
a2a38bc68dd9
patch 8.2.2313: Vim9: using uninitialized field when parsing range
Bram Moolenaar <Bram@vim.org>
parents:
23521
diff
changeset
|
810 bwipe! |
a2a38bc68dd9
patch 8.2.2313: Vim9: using uninitialized field when parsing range
Bram Moolenaar <Bram@vim.org>
parents:
23521
diff
changeset
|
811 enddef |
a2a38bc68dd9
patch 8.2.2313: Vim9: using uninitialized field when parsing range
Bram Moolenaar <Bram@vim.org>
parents:
23521
diff
changeset
|
812 |
24222
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
813 def Test_useless_command_modifier() |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
814 g:maybe = true |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
815 var lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
816 if g:maybe |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
817 silent endif |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
818 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
819 CheckDefAndScriptFailure(lines, 'E1176:', 2) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
820 |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
821 lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
822 for i in [0] |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
823 silent endfor |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
824 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
825 CheckDefAndScriptFailure(lines, 'E1176:', 2) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
826 |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
827 lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
828 while g:maybe |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
829 silent endwhile |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
830 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
831 CheckDefAndScriptFailure(lines, 'E1176:', 2) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
832 |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
833 lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
834 silent try |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
835 finally |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
836 endtry |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
837 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
838 CheckDefAndScriptFailure(lines, 'E1176:', 1) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
839 |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
840 lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
841 try |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
842 silent catch |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
843 endtry |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
844 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
845 CheckDefAndScriptFailure(lines, 'E1176:', 2) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
846 |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
847 lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
848 try |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
849 silent finally |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
850 endtry |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
851 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
852 CheckDefAndScriptFailure(lines, 'E1176:', 2) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
853 |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
854 lines =<< trim END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
855 try |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
856 finally |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
857 silent endtry |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
858 END |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
859 CheckDefAndScriptFailure(lines, 'E1176:', 3) |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
860 enddef |
a2e6029d354e
patch 8.2.2652: Vim9: can use command modifier without an effect
Bram Moolenaar <Bram@vim.org>
parents:
24216
diff
changeset
|
861 |
21196
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
862 def Test_eval_command() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
863 var from = 3 |
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
864 var to = 5 |
21196
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
865 g:val = 111 |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
866 def Increment(nrs: list<number>) |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
867 for nr in nrs |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
868 g:val += nr |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
869 endfor |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
870 enddef |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
871 eval range(from, to) |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
872 ->Increment() |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
873 assert_equal(111 + 3 + 4 + 5, g:val) |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
874 unlet g:val |
23096
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
875 |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
876 var lines =<< trim END |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
877 vim9script |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
878 g:caught = 'no' |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
879 try |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
880 eval 123 || 0 |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
881 catch |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
882 g:caught = 'yes' |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
883 endtry |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
884 assert_equal('yes', g:caught) |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
885 unlet g:caught |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
886 END |
b6aadb0b3a56
patch 8.2.2094: when an expression fails getting next command may be wrong
Bram Moolenaar <Bram@vim.org>
parents:
23072
diff
changeset
|
887 CheckScriptSuccess(lines) |
21196
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
888 enddef |
f45ce1ce284c
patch 8.2.1149: Vim9: :eval command not handled properly
Bram Moolenaar <Bram@vim.org>
parents:
21158
diff
changeset
|
889 |
21893
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
890 def Test_map_command() |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
891 var lines =<< trim END |
21893
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
892 nnoremap <F3> :echo 'hit F3 #'<CR> |
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
893 assert_equal(":echo 'hit F3 #'<CR>", maparg("<F3>", "n")) |
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
894 END |
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
895 CheckDefSuccess(lines) |
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
896 CheckScriptSuccess(['vim9script'] + lines) |
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
897 enddef |
f19ac9b8b011
patch 8.2.1496: Vim9: cannot use " #" in a mapping
Bram Moolenaar <Bram@vim.org>
parents:
21255
diff
changeset
|
898 |
21941
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
899 def Test_normal_command() |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
900 new |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
901 setline(1, 'doesnotexist') |
22425
eabc059a6ac4
patch 8.2.1761: Vim9: Some tests are still using :let
Bram Moolenaar <Bram@vim.org>
parents:
22351
diff
changeset
|
902 var caught = 0 |
21941
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
903 try |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
904 exe "norm! \<C-]>" |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
905 catch /E433/ |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
906 caught = 2 |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
907 endtry |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
908 assert_equal(2, caught) |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
909 |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
910 try |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
911 exe "norm! 3\<C-]>" |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
912 catch /E433/ |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
913 caught = 3 |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
914 endtry |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
915 assert_equal(3, caught) |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
916 bwipe! |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
917 enddef |
f65e76638eb5
patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Bram Moolenaar <Bram@vim.org>
parents:
21893
diff
changeset
|
918 |
22176
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
919 def Test_put_command() |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
920 new |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
921 @p = 'ppp' |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
922 put p |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
923 assert_equal('ppp', getline(2)) |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
924 |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
925 put ='below' |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
926 assert_equal('below', getline(3)) |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
927 put! ='above' |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
928 assert_equal('above', getline(3)) |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
929 assert_equal('below', getline(4)) |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
930 |
23628
b26bbc03126a
patch 8.2.2356: Vim9: ":put =expr" does not handle a list properly
Bram Moolenaar <Bram@vim.org>
parents:
23580
diff
changeset
|
931 :2put =['a', 'b', 'c'] |
b26bbc03126a
patch 8.2.2356: Vim9: ":put =expr" does not handle a list properly
Bram Moolenaar <Bram@vim.org>
parents:
23580
diff
changeset
|
932 assert_equal(['ppp', 'a', 'b', 'c', 'above'], getline(2, 6)) |
b26bbc03126a
patch 8.2.2356: Vim9: ":put =expr" does not handle a list properly
Bram Moolenaar <Bram@vim.org>
parents:
23580
diff
changeset
|
933 |
23156
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
934 # compute range at runtime |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
935 setline(1, range(1, 8)) |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
936 @a = 'aaa' |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
937 :$-2put a |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
938 assert_equal('aaa', getline(7)) |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
939 |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
940 setline(1, range(1, 8)) |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
941 :2 |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
942 :+2put! a |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
943 assert_equal('aaa', getline(4)) |
6aa8ddf7a3fa
patch 8.2.2124: Vim9: a range cannot be computed at runtime
Bram Moolenaar <Bram@vim.org>
parents:
23096
diff
changeset
|
944 |
23671
9ee9c4246a7f
patch 8.2.2377: Vim9: crash when using a range after another expression
Bram Moolenaar <Bram@vim.org>
parents:
23628
diff
changeset
|
945 []->mapnew(() => 0) |
9ee9c4246a7f
patch 8.2.2377: Vim9: crash when using a range after another expression
Bram Moolenaar <Bram@vim.org>
parents:
23628
diff
changeset
|
946 :$put ='end' |
9ee9c4246a7f
patch 8.2.2377: Vim9: crash when using a range after another expression
Bram Moolenaar <Bram@vim.org>
parents:
23628
diff
changeset
|
947 assert_equal('end', getline('$')) |
9ee9c4246a7f
patch 8.2.2377: Vim9: crash when using a range after another expression
Bram Moolenaar <Bram@vim.org>
parents:
23628
diff
changeset
|
948 |
22176
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
949 bwipe! |
23197
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
950 |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
951 CheckDefFailure(['put =xxx'], 'E1001:') |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
952 enddef |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
953 |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
954 def Test_put_with_linebreak() |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
955 new |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
956 var lines =<< trim END |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
957 vim9script |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
958 pu =split('abc', '\zs') |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
959 ->join() |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
960 END |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
961 CheckScriptSuccess(lines) |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
962 getline(2)->assert_equal('a b c') |
4ba101403fa2
patch 8.2.2144: Vim9: some corner cases not tested
Bram Moolenaar <Bram@vim.org>
parents:
23156
diff
changeset
|
963 bwipe! |
22176
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
964 enddef |
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
965 |
22260
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
966 def Test_command_star_range() |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
967 new |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
968 setline(1, ['xxx foo xxx', 'xxx bar xxx', 'xxx foo xx bar']) |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
969 setpos("'<", [0, 1, 0, 0]) |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
970 setpos("'>", [0, 3, 0, 0]) |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
971 :*s/\(foo\|bar\)/baz/g |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
972 getline(1, 3)->assert_equal(['xxx baz xxx', 'xxx baz xxx', 'xxx baz xx baz']) |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
973 |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
974 bwipe! |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
975 enddef |
d7c1e3efa88e
patch 8.2.1679: Vim9: ":*" is not recognized as a range
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
976 |
22649
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
977 def Test_f_args() |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
978 var lines =<< trim END |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
979 vim9script |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
980 |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
981 func SaveCmdArgs(...) |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
982 let g:args = a:000 |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
983 endfunc |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
984 |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
985 command -nargs=* TestFArgs call SaveCmdArgs(<f-args>) |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
986 |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
987 TestFArgs |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
988 assert_equal([], g:args) |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
989 |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
990 TestFArgs one two three |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
991 assert_equal(['one', 'two', 'three'], g:args) |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
992 END |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
993 CheckScriptSuccess(lines) |
6e965b3587a4
patch 8.2.1873: Vim9: missing white space when using <f-args>
Bram Moolenaar <Bram@vim.org>
parents:
22500
diff
changeset
|
994 enddef |
22176
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
21941
diff
changeset
|
995 |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
996 def Test_user_command_comment() |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
997 command -nargs=1 Comd echom <q-args> |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
998 |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
999 var lines =<< trim END |
24543
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1000 vim9script |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1001 Comd # comment |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1002 END |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1003 CheckScriptSuccess(lines) |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1004 |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1005 lines =<< trim END |
24543
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1006 vim9script |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1007 Comd# comment |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1008 END |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1009 CheckScriptFailure(lines, 'E1144:') |
24543
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1010 delcommand Comd |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1011 |
24543
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1012 lines =<< trim END |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1013 vim9script |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1014 command Foo echo 'Foo' |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1015 Foo3Bar |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1016 END |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1017 CheckScriptFailure(lines, 'E1144: Command "Foo" is not followed by white space: Foo3Bar') |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1018 |
b3bd27751e09
patch 8.2.2811: Vim9: error for missing white space doesn't say where
Bram Moolenaar <Bram@vim.org>
parents:
24541
diff
changeset
|
1019 delcommand Foo |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1020 enddef |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1021 |
22950
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1022 def Test_star_command() |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1023 var lines =<< trim END |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1024 vim9script |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1025 @s = 'g:success = 8' |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1026 set cpo+=* |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1027 exe '*s' |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1028 assert_equal(8, g:success) |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1029 unlet g:success |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1030 set cpo-=* |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1031 assert_fails("exe '*s'", 'E1050:') |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1032 END |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1033 CheckScriptSuccess(lines) |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1034 enddef |
1270401054d8
patch 8.2.2022: Vim9: star command recognized errornously
Bram Moolenaar <Bram@vim.org>
parents:
22860
diff
changeset
|
1035 |
23011
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1036 def Test_cmd_argument_without_colon() |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1037 new Xfile |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1038 setline(1, ['a', 'b', 'c', 'd']) |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1039 write |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1040 edit +3 % |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1041 assert_equal(3, getcurpos()[1]) |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1042 edit +/a % |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1043 assert_equal(1, getcurpos()[1]) |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1044 bwipe |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1045 delete('Xfile') |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1046 enddef |
ec23d84a096d
patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Bram Moolenaar <Bram@vim.org>
parents:
22950
diff
changeset
|
1047 |
23205
d998222d314d
patch 8.2.2148: Vim9: crash when user command doesn't match
Bram Moolenaar <Bram@vim.org>
parents:
23197
diff
changeset
|
1048 def Test_ambiguous_user_cmd() |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1049 command Cmd1 eval 0 |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1050 command Cmd2 eval 0 |
23205
d998222d314d
patch 8.2.2148: Vim9: crash when user command doesn't match
Bram Moolenaar <Bram@vim.org>
parents:
23197
diff
changeset
|
1051 var lines =<< trim END |
d998222d314d
patch 8.2.2148: Vim9: crash when user command doesn't match
Bram Moolenaar <Bram@vim.org>
parents:
23197
diff
changeset
|
1052 Cmd |
d998222d314d
patch 8.2.2148: Vim9: crash when user command doesn't match
Bram Moolenaar <Bram@vim.org>
parents:
23197
diff
changeset
|
1053 END |
23513
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1054 CheckDefAndScriptFailure(lines, 'E464:', 1) |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1055 delcommand Cmd1 |
872239543313
patch 8.2.2299: Vim9: invalid memory access making error message flaky
Bram Moolenaar <Bram@vim.org>
parents:
23477
diff
changeset
|
1056 delcommand Cmd2 |
23205
d998222d314d
patch 8.2.2148: Vim9: crash when user command doesn't match
Bram Moolenaar <Bram@vim.org>
parents:
23197
diff
changeset
|
1057 enddef |
d998222d314d
patch 8.2.2148: Vim9: crash when user command doesn't match
Bram Moolenaar <Bram@vim.org>
parents:
23197
diff
changeset
|
1058 |
23254
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1059 def Test_command_not_recognized() |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1060 var lines =<< trim END |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1061 d.key = 'asdf' |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1062 END |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1063 CheckDefFailure(lines, 'E1146:', 1) |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1064 |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1065 lines =<< trim END |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1066 d['key'] = 'asdf' |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1067 END |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1068 CheckDefFailure(lines, 'E1146:', 1) |
4b7e996354e0
patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Bram Moolenaar <Bram@vim.org>
parents:
23205
diff
changeset
|
1069 enddef |
21058
111f877e63d9
patch 8.2.1080: Vim9: no line break allowed in a for loop
Bram Moolenaar <Bram@vim.org>
parents:
21056
diff
changeset
|
1070 |
23272
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1071 def Test_magic_not_used() |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1072 new |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1073 for cmd in ['set magic', 'set nomagic'] |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1074 exe cmd |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1075 setline(1, 'aaa') |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1076 s/.../bbb/ |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1077 assert_equal('bbb', getline(1)) |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1078 endfor |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1079 |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1080 set magic |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1081 setline(1, 'aaa') |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1082 assert_fails('s/.\M../bbb/', 'E486:') |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1083 assert_fails('snomagic/.../bbb/', 'E486:') |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1084 assert_equal('aaa', getline(1)) |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1085 |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1086 bwipe! |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1087 enddef |
a84e7abb0c92
patch 8.2.2182: Vim9: value of 'magic' is still relevant
Bram Moolenaar <Bram@vim.org>
parents:
23254
diff
changeset
|
1088 |
23274
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1089 def Test_gdefault_not_used() |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1090 new |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1091 for cmd in ['set gdefault', 'set nogdefault'] |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1092 exe cmd |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1093 setline(1, 'aaa') |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1094 s/./b/ |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1095 assert_equal('baa', getline(1)) |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1096 endfor |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1097 |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1098 set nogdefault |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1099 bwipe! |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1100 enddef |
10bbff53d3d1
patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Bram Moolenaar <Bram@vim.org>
parents:
23272
diff
changeset
|
1101 |
23374
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1102 def g:SomeComplFunc(findstart: number, base: string): any |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1103 if findstart |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1104 return 0 |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1105 else |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1106 return ['aaa', 'bbb'] |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1107 endif |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1108 enddef |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1109 |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1110 def Test_insert_complete() |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1111 # this was running into an error with the matchparen hack |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1112 new |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1113 set completefunc=SomeComplFunc |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1114 feedkeys("i\<c-x>\<c-u>\<Esc>", 'ntx') |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1115 assert_equal('aaa', getline(1)) |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1116 |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1117 set completefunc= |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1118 bwipe! |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1119 enddef |
1371e21fdc3d
patch 8.2.2230: Vim9: insert completion runs into error
Bram Moolenaar <Bram@vim.org>
parents:
23370
diff
changeset
|
1120 |
23477
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1121 def Test_wincmd() |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1122 split |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1123 var id1 = win_getid() |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1124 if true |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1125 try | wincmd w | catch | endtry |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1126 endif |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1127 assert_notequal(id1, win_getid()) |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1128 close |
24216
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1129 |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1130 split |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1131 var id = win_getid() |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1132 split |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1133 :2wincmd o |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1134 assert_equal(id, win_getid()) |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1135 only |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1136 |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1137 split |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1138 split |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1139 assert_equal(3, winnr('$')) |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1140 :2wincmd c |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1141 assert_equal(2, winnr('$')) |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1142 only |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1143 |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1144 split |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1145 split |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1146 assert_equal(3, winnr('$')) |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1147 :2wincmd q |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1148 assert_equal(2, winnr('$')) |
77cb22562852
patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Bram Moolenaar <Bram@vim.org>
parents:
24124
diff
changeset
|
1149 only |
23477
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1150 enddef |
95db03521b01
patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Bram Moolenaar <Bram@vim.org>
parents:
23428
diff
changeset
|
1151 |
23580
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1152 def Test_windo_missing_endif() |
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1153 var lines =<< trim END |
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1154 windo if 1 |
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1155 END |
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1156 CheckDefExecFailure(lines, 'E171:', 1) |
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1157 enddef |
dc3b7a31c29f
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Bram Moolenaar <Bram@vim.org>
parents:
23541
diff
changeset
|
1158 |
24262
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1159 let s:theList = [1, 2, 3] |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1160 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1161 def Test_lockvar() |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1162 s:theList[1] = 22 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1163 assert_equal([1, 22, 3], s:theList) |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1164 lockvar s:theList |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1165 assert_fails('theList[1] = 77', 'E741:') |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1166 unlockvar s:theList |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1167 s:theList[1] = 44 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1168 assert_equal([1, 44, 3], s:theList) |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1169 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1170 var lines =<< trim END |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1171 vim9script |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1172 var theList = [1, 2, 3] |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1173 def SetList() |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1174 theList[1] = 22 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1175 assert_equal([1, 22, 3], theList) |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1176 lockvar theList |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1177 theList[1] = 77 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1178 enddef |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1179 SetList() |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1180 END |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1181 CheckScriptFailure(lines, 'E1119', 4) |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1182 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1183 lines =<< trim END |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1184 var theList = [1, 2, 3] |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1185 lockvar theList |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1186 END |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1187 CheckDefFailure(lines, 'E1178', 2) |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1188 |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1189 lines =<< trim END |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1190 var theList = [1, 2, 3] |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1191 unlockvar theList |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1192 END |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1193 CheckDefFailure(lines, 'E1178', 2) |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1194 enddef |
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1195 |
24488
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1196 def Test_substitute_expr() |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1197 var to = 'repl' |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1198 new |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1199 setline(1, 'one from two') |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1200 s/from/\=to |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1201 assert_equal('one repl two', getline(1)) |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1202 |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1203 setline(1, 'one from two') |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1204 s/from/\=to .. '_x' |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1205 assert_equal('one repl_x two', getline(1)) |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1206 |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1207 setline(1, 'one from two from three') |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1208 var also = 'also' |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1209 s/from/\=to .. '_' .. also/g#e |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1210 assert_equal('one repl_also two repl_also three', getline(1)) |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1211 |
24498
bfa495227ac6
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Bram Moolenaar <Bram@vim.org>
parents:
24490
diff
changeset
|
1212 setline(1, 'abc abc abc') |
bfa495227ac6
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Bram Moolenaar <Bram@vim.org>
parents:
24490
diff
changeset
|
1213 for choice in [true, false] |
bfa495227ac6
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Bram Moolenaar <Bram@vim.org>
parents:
24490
diff
changeset
|
1214 :1s/abc/\=choice ? 'yes' : 'no'/ |
bfa495227ac6
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Bram Moolenaar <Bram@vim.org>
parents:
24490
diff
changeset
|
1215 endfor |
bfa495227ac6
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Bram Moolenaar <Bram@vim.org>
parents:
24490
diff
changeset
|
1216 assert_equal('yes no abc', getline(1)) |
bfa495227ac6
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Bram Moolenaar <Bram@vim.org>
parents:
24490
diff
changeset
|
1217 |
24541
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1218 bwipe! |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1219 |
24488
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1220 CheckDefFailure(['s/from/\="x")/'], 'E488:') |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1221 CheckDefFailure(['s/from/\="x"/9'], 'E488:') |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1222 |
24541
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1223 # When calling a function the right instruction list needs to be restored. |
24545
fe29b220eece
patch 8.2.2812: Vim9: still crash when using substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24543
diff
changeset
|
1224 g:cond = true |
24541
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1225 var lines =<< trim END |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1226 vim9script |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1227 def Foo() |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1228 Bar([]) |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1229 enddef |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1230 def Bar(l: list<number>) |
24545
fe29b220eece
patch 8.2.2812: Vim9: still crash when using substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24543
diff
changeset
|
1231 if g:cond |
24541
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1232 s/^/\=Rep()/ |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1233 for n in l[:] |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1234 endfor |
24545
fe29b220eece
patch 8.2.2812: Vim9: still crash when using substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24543
diff
changeset
|
1235 endif |
24541
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1236 enddef |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1237 def Rep(): string |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1238 return 'rep' |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1239 enddef |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1240 new |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1241 Foo() |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1242 assert_equal('rep', getline(1)) |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1243 bwipe! |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1244 END |
df90c61c306c
patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24516
diff
changeset
|
1245 CheckScriptSuccess(lines) |
24545
fe29b220eece
patch 8.2.2812: Vim9: still crash when using substitute expression
Bram Moolenaar <Bram@vim.org>
parents:
24543
diff
changeset
|
1246 unlet g:cond |
24816
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1247 |
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1248 # List results in multiple lines |
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1249 new |
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1250 setline(1, 'some text here') |
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1251 s/text/\=['aaa', 'bbb', 'ccc']/ |
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1252 assert_equal(['some aaa', 'bbb', 'ccc', ' here'], getline(1, '$')) |
1bed37e82c2e
patch 8.2.2946: Vim9: substitute expression cannot be a List
Bram Moolenaar <Bram@vim.org>
parents:
24806
diff
changeset
|
1253 bwipe! |
24488
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1254 enddef |
f293bb501b30
patch 8.2.2784: Vim9: cannot use =expr in :substitute
Bram Moolenaar <Bram@vim.org>
parents:
24262
diff
changeset
|
1255 |
24490
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1256 def Test_redir_to_var() |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1257 var result: string |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1258 redir => result |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1259 echo 'something' |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1260 redir END |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1261 assert_equal("\nsomething", result) |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1262 |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1263 redir =>> result |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1264 echo 'more' |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1265 redir END |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1266 assert_equal("\nsomething\nmore", result) |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1267 |
24512
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1268 var d: dict<string> |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1269 redir => d.redir |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1270 echo 'dict' |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1271 redir END |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1272 assert_equal({redir: "\ndict"}, d) |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1273 |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1274 var l = ['a', 'b', 'c'] |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1275 redir => l[1] |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1276 echo 'list' |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1277 redir END |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1278 assert_equal(['a', "\nlist", 'c'], l) |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1279 |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1280 var dl = {l: ['x']} |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1281 redir => dl.l[0] |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1282 echo 'dict-list' |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1283 redir END |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1284 assert_equal({l: ["\ndict-list"]}, dl) |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1285 |
24516
056f954c6fd2
patch 8.2.2798: Vim9: redir to variable with append does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24512
diff
changeset
|
1286 redir =>> d.redir |
056f954c6fd2
patch 8.2.2798: Vim9: redir to variable with append does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24512
diff
changeset
|
1287 echo 'more' |
056f954c6fd2
patch 8.2.2798: Vim9: redir to variable with append does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24512
diff
changeset
|
1288 redir END |
056f954c6fd2
patch 8.2.2798: Vim9: redir to variable with append does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24512
diff
changeset
|
1289 assert_equal({redir: "\ndict\nmore"}, d) |
056f954c6fd2
patch 8.2.2798: Vim9: redir to variable with append does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24512
diff
changeset
|
1290 |
24490
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1291 var lines =<< trim END |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1292 redir => notexist |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1293 END |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1294 CheckDefFailure(lines, 'E1089:') |
24512
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1295 |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1296 lines =<< trim END |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1297 var ls = 'asdf' |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1298 redir => ls[1] |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1299 redir END |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1300 END |
53871095bb65
patch 8.2.2796: Vim9: redir to variable does not accept an index
Bram Moolenaar <Bram@vim.org>
parents:
24498
diff
changeset
|
1301 CheckDefFailure(lines, 'E1141:') |
24490
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1302 enddef |
08050e45bd06
patch 8.2.2785: Vim9: cannot redirect to local variable
Bram Moolenaar <Bram@vim.org>
parents:
24488
diff
changeset
|
1303 |
24614
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1304 def Test_echo_void() |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1305 var lines =<< trim END |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1306 vim9script |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1307 def NoReturn() |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1308 echo 'nothing' |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1309 enddef |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1310 echo NoReturn() |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1311 END |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1312 CheckScriptFailure(lines, 'E1186:', 5) |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1313 |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1314 lines =<< trim END |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1315 vim9script |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1316 def NoReturn() |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1317 echo 'nothing' |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1318 enddef |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1319 def Try() |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1320 echo NoReturn() |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1321 enddef |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1322 defcompile |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1323 END |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1324 CheckScriptFailure(lines, 'E1186:', 1) |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1325 enddef |
07b3d21a8b4b
patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Bram Moolenaar <Bram@vim.org>
parents:
24596
diff
changeset
|
1326 |
24262
d0e86f1b34e7
patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Bram Moolenaar <Bram@vim.org>
parents:
24222
diff
changeset
|
1327 |
20170
0612c64a2b87
patch 8.2.0640: Vim9: expanding does not work
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1328 " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker |