LemonBoy
0f7a3e1de6
patch 8.2.5019: cannot get the first screen column of a character
...
Problem: Cannot get the first screen column of a character.
Solution: Let virtcol() optionally return a list. (closes #10482 ,
closes #7964 )
2022-05-26 12:10:37 +01:00
Yegappan Lakshmanan
1755a91851
patch 8.2.4981: it is not possible to manipulate autocommands
...
Problem: It is not possible to manipulate autocommands.
Solution: Add functions to add, get and set autocommands. (Yegappan
Lakshmanan, closes #10291 )
2022-05-19 10:31:47 +01:00
Bram Moolenaar
7f8a3b11bf
patch 8.2.4946: Vim9: some code not covered by tests
...
Problem: Vim9: some code not covered by tests.
Solution: Add a few more test cases. Remove dead code.
2022-05-12 22:03:01 +01:00
Bram Moolenaar
d0132f4862
patch 8.2.4940: some code is never used
...
Problem: Some code is never used.
Solution: Remove dead code. Add a few more test cases.
2022-05-12 11:05:40 +01:00
Ernie Rael
d8f5f76621
patch 8.2.4932: not easy to filter the output of maplist()
...
Problem: Not easy to filter the output of maplist().
Solution: Add mode_bits to the dictionary. (Ernie Rael, closes #10356 )
2022-05-10 17:50:39 +01:00
Bram Moolenaar
2ac037f54b
patch 8.2.4927: return type of remove() incorrect when using three arguments
...
Problem: Return type of remove() incorrect when using three arguments.
Solution: Use first argument type when there are three arguments.
(closes #10387 )
2022-05-09 14:12:14 +01:00
Bram Moolenaar
ec89223478
patch 8.2.4892: test failures because of changed error messages
...
Problem: Test failures because of changed error messages.
Solution: Adjust the exptected error messages.
2022-05-06 17:53:06 +01:00
Bram Moolenaar
3e79427803
patch 8.2.4879: screendump test may fail when using valgrind
...
Problem: Screendump test may fail when using valgrind.
Solution: Wait longer for the first screendump.
2022-05-06 11:21:19 +01:00
LemonBoy
f3b4895f27
patch 8.2.4870: Vim9: expression in :substitute is not compiled
...
Problem: Vim9: expression in :substitute is not compiled.
Solution: Use an INSTR instruction if possible. (closes #10334 )
2022-05-05 13:53:03 +01:00
Ernie Rael
51d04d16f2
patch 8.2.4861: it is not easy to restore saved mappings
...
Problem: It is not easy to restore saved mappings.
Solution: Make mapset() accept a dict argument. (Ernie Rael, closes #10295 )
2022-05-04 15:40:22 +01:00
Yegappan Lakshmanan
885de449c0
patch 8.2.4809: various things no6 properly tested
...
Problem: Various things no6 properly tested.
Solution: Add various test cases. (Yegappan Lakshmanan, closes #10259 )
2022-04-23 10:51:14 +01:00
Bram Moolenaar
861fcee8de
patch 8.2.4786: test for win_gotoid() in Visual mode fails on Mac
...
Problem: Test for win_gotoid() in Visual mode fails on Mac.
Solution: Skip the test on MacOS.
2022-04-18 19:16:55 +01:00
Bram Moolenaar
3aca0916f0
patch 8.2.4785: Visual mode not stopped if win_gotoid() goes to other buffer
...
Problem: Visual mode not stopped early enough if win_gotoid() goes to
another buffer. (Sergey Vlasov)
Solution: Stop Visual mode before jumping to another buffer. (closes #10217 )
2022-04-18 18:32:19 +01:00
Bram Moolenaar
aa7d0c2335
patch 8.2.4698: Vim9: script variable has no flag that it was set
...
Problem: Vim9: script variable has no flag that it was set.
Solution: Add a flag that it was set, to avoid giving it a value when used.
(closes #10088 )
2022-04-05 21:40:38 +01:00
Yegappan Lakshmanan
2b74b6805b
patch 8.2.4679: cannot have expandcmd() give an error message for mistakes
...
Problem: Cannot have expandcmd() give an error message for mistakes.
Solution: Add an optional argument to give errors. Fix memory leak when
expanding files fails. (Yegappan Lakshmanan, closes #10071 )
2022-04-03 21:30:32 +01:00
Bram Moolenaar
24565cf27b
patch 8.2.4643: Vim9: variable may be locked unintentionally
...
Problem: Vim9: variable may be locked unintentionally.
Solution: Clear "v_lock". (closes #10036 )
2022-03-28 18:16:52 +01:00
Bram Moolenaar
ec15b1cfdc
patch 8.2.4634: Vim9: cannot initialize a variable to null_list
...
Problem: Vim9: cannot initialize a variable to null_list.
Solution: Give negative count to NEWLIST. (closes #10027 )
Also fix inconsistencies in comparing with null values.
2022-03-27 16:29:53 +01:00
Bram Moolenaar
ed0c62e7b1
patch 8.2.4529: Vim9: comparing partial with function fails
...
Problem: Vim9: comparing partial with function fails.
Solution: Support this comparison. Avoid a crash. (closes #9909 )
Add more test cases.
2022-03-08 19:43:55 +00:00
Bram Moolenaar
fa02616718
patch 8.2.4459: Vim9: compiling sort() call fails with unknown arguments
...
Problem: Vim9: compiling sort() call fails with a funcref that has unknown
arguments.
Solution: Do not check the arguments if they are unknown at compile time.
(closes #9835 )
2022-02-23 21:03:32 +00:00
Bram Moolenaar
6e1a38745f
patch 8.2.4458: Vim9: compiling filter() call fails with unknown arguments
...
Problem: Vim9: compiling filter() call fails with funcref that has unknown
arguments.
Solution: Do not check the arguments if they are unknown at compile time.
(closes #9835 )
2022-02-23 19:11:49 +00:00
Bram Moolenaar
e843efcc35
patch 8.2.4449: vim9: function argument of sort() not checked at compile time
...
Problem: vim9: function argument of sort() not checked at compile time.
Solution: Add a compile time check.
2022-02-22 21:54:44 +00:00
Bram Moolenaar
fe73255c92
patch 8.2.4446: Vim9: cannot refer to a global function like a local one
...
Problem: Vim9: cannot refer to a global function like a local one.
Solution: When g:name is not a variable but a function, use a function
reference. (closes #9826 )
2022-02-22 19:39:13 +00:00
Bram Moolenaar
16f6c8ac94
patch 8.2.4441: Vim9: function argument of filter() not checked like map()
...
Problem: Vim9: function argument of filter() not checked like map().
Solution: Also check the function argument of filter().
2022-02-22 15:12:14 +00:00
Bram Moolenaar
c1e6c7bafe
patch 8.2.4426: map() function on string and blob does not check types
...
Problem: map() function on string and blob does not check argument types at
compile time.
Solution: Check string and blob argument types. Support "0z1234->func()".
2022-02-20 18:26:46 +00:00
Bram Moolenaar
eddd4fc4f6
patch 8.2.4425: map() function does not check function arguments
...
Problem: map() function does not check function arguments at compile time.
Solution: Give an error if the arguments of a map() function are wrong.
2022-02-20 15:52:28 +00:00
Bram Moolenaar
e88c6b7a5d
patch 8.2.4390: Vim9: list from declaration with inferred type not set
...
Problem: Vim9: list from declaration with inferred type does not set the
type on the value.
Solution: When inferring the type in a variable declaration also set the
type of the list or dictionary. (closes #9705 ) Do not set the
type when the member is "any".
2022-02-15 15:37:11 +00:00
Bram Moolenaar
a749a42ed2
patch 8.2.4360: Vim9: allowing use of "s:" leads to inconsistencies
...
Problem: Vim9: allowing use of "s:" leads to inconsistencies.
Solution: Disallow using "s:" in Vim9 script at the script level.
2022-02-12 19:52:25 +00:00
Bram Moolenaar
5f4ef5f5e5
patch 8.2.4313: Vim9: cannot change type of list after making a slice
...
Problem: Vim9: cannot change type of list after making a slice.
Solution: Adjust the declared member type. (closes #9696 )
2022-02-06 18:36:53 +00:00
Bram Moolenaar
2626d6a71c
patch 8.2.4310: Vim9: constant list and dict get a declaration type
...
Problem: Vim9: constant list and dict get a declaration type other than
"any".
Solution: A constant list and dict have a declared member type "any".
(closes #9701 )
2022-02-06 15:49:35 +00:00
Bram Moolenaar
00eb99528e
patch 8.2.4304: Vim9: slice() makes a copy but doesn't change the type
...
Problem: Vim9: slice() makes a copy but doesn't change the type.
Solution: Change the declared type like copy(). (closes #9696 )
2022-02-05 19:23:18 +00:00
Bram Moolenaar
82e46e5d31
patch 8.2.4302: Vim9: return type of getline() is too strict
...
Problem: Vim9: return type of getline() is too strict.
Solution: Make the declared type list<any>. Also do this for other
functions returning a list of a specific type.
2022-02-05 18:12:34 +00:00
Bram Moolenaar
e0c2b2ceaa
patch 8.2.4301: Vim9: type error for copy of dict
...
Problem: Vim9: type error for copy of dict.
Solution: Do not use dict<any> but no type. (closes #9696 )
2022-02-05 14:05:51 +00:00
Bram Moolenaar
381692b6f1
patch 8.2.4286: Vim9: strict type checking after copy() and deepcopy()
...
Problem: Vim9: strict type checking after copy() and deepcopy().
Solution: Allow type to change after making a copy. (closes #9644 )
2022-02-02 20:01:27 +00:00
Bram Moolenaar
8133018f50
patch 8.2.4279: Vim9: cannot change item type with map() after range()
...
Problem: Vim9: cannot change item type with map() after range().
Solution: Split the return type in current type and declared type.
(closes #9665 )
2022-02-01 12:11:58 +00:00
Yegappan Lakshmanan
9e0208f51c
patch 8.2.4276: separate test function for the GUI scrollbar
...
Problem: Separate test function for the GUI scrollbar.
Solution: Use test_gui_event(). (Yegappan Lakshmanan, closes #9674 )
2022-01-31 17:40:55 +00:00
Bram Moolenaar
848faddb87
patch 8.2.4260: Vim9: can still use a global function without g:
...
Problem: Vim9: can still use a global function without g: at the script
level.
Solution: Also check for g: at the script level. (issue #9637 )
2022-01-30 15:28:30 +00:00
Yegappan Lakshmanan
06011e1a55
patch 8.2.4259: number of test functions for GUI events is growing
...
Problem: Number of test functions for GUI events is growing.
Solution: Use one function with a dictionary. (Yegappan Lakshmanan,
closes #9660 )
2022-01-30 12:37:29 +00:00
Bram Moolenaar
62aec93bfd
patch 8.2.4257: Vim9: finding global function without g: prefix inconsistent
...
Problem: Vim9: finding global function without g: prefix but not finding
global variable is inconsistent.
Solution: Require using g: for a global function. Change the vim9.vim
script into a Vim9 script with exports. Fix that import in legacy
script does not work.
2022-01-29 21:45:34 +00:00
Bram Moolenaar
35c807df1f
patch 8.2.4231: Vim9: map() gives type error when type was not declared
...
Problem: Vim9: map() gives type error when type was not declared.
Solution: Only check the type when it was declared, like extend() does.
(closes #9635 )
2022-01-27 16:36:29 +00:00
Bram Moolenaar
745b938a48
patch 8.2.4229: possible crash when invoking timer callback fails
...
Problem: Possible crash when invoking timer callback fails.
Solution: Initialize the typval. Give an error for an empty callback.
(closes #9636 )
2022-01-27 13:55:35 +00:00
Bram Moolenaar
1080c48ec8
patch 8.2.4224: Vim9: no error when using a number for map() second argument
...
Problem: Vim9: no error when using a number for map() second argument
Solution: Disallow number to string conversion. (closes #9630 )
2022-01-26 18:26:21 +00:00
Bram Moolenaar
17dd519633
patch 8.2.4141: Vim9 builtin functions test fails
...
Problem: Vim9 builtin functions test fails.
Solution: Add "scriptversion" item to maparg() result.
2022-01-18 21:42:37 +00:00
Bram Moolenaar
10d6f18b2f
patch 8.2.3997: Vim9: not enough testing for extend() and map()
...
Problem: Vim9: not enough testing for extend() and map().
Solution: Add more test cases. Fix uncovered problems. Remove unused type
fields.
2022-01-04 15:54:38 +00:00
Bram Moolenaar
078a46161e
patch 8.2.3996: Vim9: type checking lacks information about declared type
...
Problem: Vim9: type checking for list and dict lacks information about
declared type.
Solution: Add dv_decl_type and lv_decl_type. Refactor the type stack to
store two types in each entry.
2022-01-04 15:17:03 +00:00
Bram Moolenaar
ad8f248585
patch 8.2.3994: Vim9: extend() complains about type when it was not declared
...
Problem: Vim9: extend() complains about the type even when it was not
declared.
Solution: Only check the list or dict type when it was declared.
2022-01-03 16:52:28 +00:00
Bram Moolenaar
114dbda785
patch 8.2.3991: Vim9: error when extending dict<any>
...
Problem: Vim9: error when extending dict<any> with another type that it was
initialized with.
Solution: Also set the type for dict<any> if the initializer has a more
specific type. (closes #9461 )
2022-01-03 12:28:03 +00:00
Dominique Pelle
8bfa0eb863
patch 8.2.3982: some lines of code not covered by tests
...
Problem: Some lines of code not covered by tests.
Solution: Add a few more test cases. (Dominique Pellé, closes #9453 )
2022-01-02 16:16:33 +00:00
Bram Moolenaar
1f4a3457a3
patch 8.2.3974: Vim9: LISTAPPEND instruction does not check for a locked list
...
Problem: Vim9: LISTAPPEND instruction does not check for a locked list.
Solution: Check whether the list is locked. (closes #9452 )
2022-01-01 18:29:21 +00:00
Bram Moolenaar
8b6256f6ec
patch 8.2.3919: Vim9: wrong argument for append() results in two errors
...
Problem: Vim9: wrong argument for append() results in two errors.
Solution: Check did_emsg. Also for setline(). Adjust the help for
appendbufline().
2021-12-28 11:24:49 +00:00
Bram Moolenaar
8dac2acd6a
patch 8.2.3916: no error for passing an invalid line number to append()
...
Problem: No error for passing an invalid line number to append().
Solution: In Vim9 script check for a non-negative number. (closes #9417 )
2021-12-27 20:57:06 +00:00