Bram Moolenaar
0522ba0359
patch 8.1.1933: the eval.c file is too big
...
Problem: The eval.c file is too big.
Solution: Move code related to variables to evalvars.c. (Yegappan
Lakshmanan, closes #4868 )
2019-08-27 22:48:30 +02:00
Bram Moolenaar
37f4cbd46f
patch 8.1.1913: not easy to compute the space on the command line
...
Problem: Not easy to compute the space on the command line.
Solution: Add v:echospace. (Daniel Hahler, closes #4732 )
2019-08-23 20:58:45 +02:00
Bram Moolenaar
1058c9d9b5
patch 8.1.1894: not checking for out-of-memory of autoload_name()
...
Problem: Not checking for out-of-memory of autoload_name().
Solution: Check for NULL. (Dominique Pelle, closes #4846 )
2019-08-20 21:58:00 +02:00
Bram Moolenaar
5843f5f37b
patch 8.1.1891: functions used in one file are global
...
Problem: Functions used in one file are global.
Solution: Add "static". (Yegappan Lakshmanan, closes #4840 )
2019-08-20 20:13:45 +02:00
Bram Moolenaar
0a52df50a0
patch 8.1.1887: the +cmdline_compl feature is not in the tiny version
...
Problem: The +cmdline_compl feature is not in the tiny version.
Solution: Graduate the +cmdline_compl feature.
2019-08-18 22:26:31 +02:00
Bram Moolenaar
9cfe8f6e68
patch 8.1.1878: negative float before method not parsed correctly
...
Problem: Negative float before method not parsed correctly.
Solution: Apply "!" and "-" in front of expression before using ->.
2019-08-17 21:04:16 +02:00
Bram Moolenaar
22a0c0c4ec
patch 8.1.1834: cannot use a lambda as a method
...
Problem: Cannot use a lambda as a method.
Solution: Implement ->{lambda}(). (closes #4768 )
2019-08-09 23:25:08 +02:00
Bram Moolenaar
5184132ec0
patch 8.1.1828: not strict enough checking syntax of method invocation
...
Problem: Not strict enough checking syntax of method invocation.
Solution: Check there is no white space inside ->method(.
2019-08-08 21:10:01 +02:00
Bram Moolenaar
761fdf01c6
patch 8.1.1820: using expr->FuncRef() does not work
...
Problem: Using expr->FuncRef() does not work.
Solution: Make FuncRef work as a method.
2019-08-05 23:10:16 +02:00
Bram Moolenaar
fcfe1a9b89
patch 8.1.1816: cannot use a user defined function as a method
...
Problem: Cannot use a user defined function as a method.
Solution: Pass the base as the first argument to the user defined function
after "->". (partly by FUJIWARA Takuya)
2019-08-04 23:04:39 +02:00
Bram Moolenaar
ac92e25a33
patch 8.1.1803: all builtin functions are global
...
Problem: All builtin functions are global.
Solution: Add the method call operator ->. Implemented for a limited number
of functions.
2019-08-03 21:58:38 +02:00
Bram Moolenaar
c6538bcc1c
patch 8.1.1800: function call functions have too many arguments
...
Problem: Function call functions have too many arguments.
Solution: Pass values in a funcexe_T struct.
2019-08-03 18:17:11 +02:00
Bram Moolenaar
8453807911
patch 8.1.1766: code for writing session file is spread out
...
Problem: Code for writing session file is spread out.
Solution: Put it in one file. (Yegappan Lakshmanan, closes #4728 )
2019-07-28 14:15:42 +02:00
Bram Moolenaar
defa067c54
patch 8.1.1727: code for viminfo support is spread out
...
Problem: Code for viminfo support is spread out.
Solution: Move to code to viminfo.c. (Yegappan Lakshmanan, closes #4686 )
2019-07-21 19:25:37 +02:00
Bram Moolenaar
2458200729
patch 8.1.1723: heredoc assignment has no room for new features
...
Problem: Heredoc assignment has no room for new features. (FUJIWARA Takuya)
Solution: Require the marker does not start with a lower case character.
(closes #4705 )
2019-07-21 14:14:26 +02:00
Bram Moolenaar
61343f0c44
patch 8.1.1722: error when scriptversion is 2 a making a dictionary access
...
Problem: Error when scriptversion is 2 a making a dictionary access.
Solution: Parse the subscript even when not evaluating the sub-expression.
(closes #4704 )
2019-07-20 21:11:13 +02:00
Bram Moolenaar
4c6d90458b
patch 8.1.1705: using ~{} for a literal dict is not nice
...
Problem: Using ~{} for a literal dict is not nice.
Solution: Use #{} instead.
2019-07-16 22:04:02 +02:00
Bram Moolenaar
b8be54dcc5
patch 8.1.1692: using *{} for literal dict is not backwards compatible
...
Problem: Using *{} for literal dict is not backwards compatible. (Yasuhiro
Matsumoto)
Solution: Use ~{} instead.
2019-07-14 18:22:59 +02:00
Bram Moolenaar
ecaa70ea29
patch 8.1.1687: the evalfunc.c file is too big
...
Problem: The evalfunc.c file is too big.
Solution: Move testing support to a separate file.
2019-07-14 14:55:39 +02:00
Bram Moolenaar
2898ebb44c
patch 8.1.1686: "*" of "*{" is recognized as multipy operator
...
Problem: "*" of "*{" is recognized as multipy operator. (Yasuhiro Matsumoto)
Solution: Check for the "{".
2019-07-14 13:41:34 +02:00
Bram Moolenaar
d5abb4c877
patch 8.1.1683: dictionary with string keys is longer than needed
...
Problem: Dictionary with string keys is longer than needed.
Solution: Use *{key: val} for literaly keys.
2019-07-13 22:46:10 +02:00
Bram Moolenaar
7780e5c1c5
patch 8.1.1660: assert_fails() does not fail inside try/catch
...
Problem: Assert_fails() does not fail inside try/catch.
Solution: Set trylevel to zero. (Ozaki Kiichi, closes #4639 )
2019-07-10 22:04:48 +02:00
Bram Moolenaar
28fc247f8d
patch 8.1.1639: changing an autoload name into a file name is inefficient
...
Problem: Changing an autoload name into a script file name is inefficient.
Solution: Remember the last replaced #. (Ozaki Kiichi, closes #4618 )
2019-07-05 22:14:16 +02:00
Bram Moolenaar
e96a2498f9
patch 8.1.1588: in :let-heredoc line continuation is recognized
...
Problem: In :let-heredoc line continuation is recognized.
Solution: Do not consume line continuation. (Ozaki Kiichi, closes #4580 )
2019-06-25 04:12:16 +02:00
Bram Moolenaar
e7eb92708e
patch 8.1.1585: :let-heredoc does not trim enough
...
Problem: :let-heredoc does not trim enough.
Solution: Trim indent from the contents based on the indent of the first
line. Use let-heredoc in more tests.
2019-06-24 00:58:07 +02:00
Bram Moolenaar
7be3ab2589
patch 8.1.1583: set_ref_in_list() only sets ref in items
...
Problem: Set_ref_in_list() only sets ref in items.
Solution: Rename to set_ref_in_list_items() to avoid confusion.
2019-06-23 01:46:15 +02:00
Bram Moolenaar
75a1a9415b
patch 8.1.1575: callbacks may be garbage collected
...
Problem: Callbacks may be garbage collected.
Solution: Set reference in callbacks. (Ozaki Kiichi, closes #4564 )
2019-06-20 03:45:36 +02:00
Bram Moolenaar
d7c9687947
patch 8.1.1542: an OptionSet autocommand does not get enough info
...
Problem: An OptionSet autocommand does not get enough info.
Solution: Add v:option_command, v:option_oldlocal and v:option_oldglobal.
(Latrice Wilgus, closes #4118 )
2019-06-15 17:12:48 +02:00
Bram Moolenaar
9937a05543
patch 8.1.1539: not easy to define a variable and lock it
...
Problem: Not easy to define a variable and lock it.
Solution: Add ":const".
2019-06-15 15:45:06 +02:00
Bram Moolenaar
37df9a4401
patch 8.1.1526: no numerical value for the patchlevel
...
Problem: No numerical value for the patchlevel.
Solution: Add v:versionlong.
2019-06-14 14:39:51 +02:00
Bram Moolenaar
6064073841
patch 8.1.1491: when skipping over code a function call may cause trouble
...
Problem: When skipping over code after an exception was thrown expression
evaluation is aborted after a function call. (Ingo Karkat)
Solution: Do not fail if not executing the expression. (closes #4507 )
2019-06-07 23:15:22 +02:00
Bram Moolenaar
c07f67ad0e
patch 8.1.1485: double free when garbage_collect() is used in autocommand
...
Problem: Double free when garbage_collect() is used in autocommand.
Solution: Have garbage collection also set the copyID in funccal_stack.
2019-06-06 19:03:17 +02:00
Bram Moolenaar
75ee544f99
patch 8.1.1484: some tests are slow
...
Problem: Some tests are slow.
Solution: Add timing to the test messages. Fix double free when quitting in
VimLeavePre autocmd.
2019-06-06 18:05:25 +02:00
Bram Moolenaar
3a97bb3f0f
patch 8.1.1437: code to handle callbacks is duplicated
...
Problem: Code to handle callbacks is duplicated.
Solution: Add callback_T and functions to deal with it.
2019-06-01 13:28:35 +02:00
Bram Moolenaar
c799fe206e
patch 8.1.1414: alloc() returning "char_u *" causes a lot of type casts
...
Problem: Alloc() returning "char_u *" causes a lot of type casts.
Solution: Have it return "void *". (Mike Williams) Define ALLOC_ONE() to
check the simple allocations.
2019-05-28 23:08:19 +02:00
Bram Moolenaar
9c27b1c6d1
patch 8.1.1400: using global pointer for tab-local popups is clumsy
...
Problem: Using global pointer for tab-local popups is clumsy.
Solution: Use the pointer in tabpage_T.
2019-05-26 18:48:13 +02:00
Bram Moolenaar
4d784b21d1
patch 8.1.1391: no popup window support
...
Problem: No popup window support.
Solution: Add initial code for popup windows. Add the 'wincolor' option.
2019-05-25 19:51:39 +02:00
Bram Moolenaar
18a4ba29ae
patch 8.1.1386: unessesary type casts for lalloc()
...
Problem: Unessesary type casts for lalloc().
Solution: Remove type casts. Change lalloc(size, TRUE) to alloc(size).
2019-05-24 19:39:03 +02:00
Bram Moolenaar
964b3746b9
patch 8.1.1384: using "int" for alloc() often results in compiler warnings
...
Problem: Using "int" for alloc() often results in compiler warnings.
Solution: Use "size_t" and remove type casts. Remove alloc_check(), Vim
only works with 32 bit ints anyway.
2019-05-24 18:54:09 +02:00
Bram Moolenaar
16e9b85113
patch 8.1.1355: obvious mistakes are accepted as valid expressions
...
Problem: Obvious mistakes are accepted as valid expressions.
Solution: Be more strict about parsing numbers. (Yasuhiro Matsumoto,
closes #3981 )
2019-05-19 19:59:35 +02:00
Bram Moolenaar
f5842c5a53
patch 8.1.1354: getting a list of text lines is clumsy
...
Problem: Getting a list of text lines is clumsy.
Solution: Add the =<< assignment. (Yegappan Lakshmanan, closes #4386 )
2019-05-19 18:41:26 +02:00
Bram Moolenaar
6ed8819822
patch 8.1.1319: computing function length name in many places
...
Problem: Computing function length name in many places.
Solution: compute name length in call_func().
2019-05-11 18:37:44 +02:00
Bram Moolenaar
25190db225
patch 8.1.1261: no error for quickfix commands with negative range
...
Problem: No error for quickfix commands with negative range.
Solution: Add ADDR_UNSIGNED and use it for quickfix commands. Make
assert_fails() show the command if the error doesn't match.
2019-05-04 15:05:28 +02:00
Bram Moolenaar
00aa069db8
patch 8.1.1218: cannot set a directory for a tab page
...
Problem: Cannot set a directory for a tab page.
Solution: Add the tab-local directory. (Yegappan Lakshmanan, closes #4212 )
2019-04-27 20:37:57 +02:00
Bram Moolenaar
ac9fb18020
patch 8.1.1210: support for user commands is spread out
...
Problem: Support for user commands is spread out. No good reason to make
user commands optional.
Solution: Move user command support to usercmd.c. Always enable the
user_commands feature.
2019-04-27 13:04:13 +02:00
Bram Moolenaar
1f3601e92e
patch 8.1.1207: some compilers give warning messages
...
Problem: Some compilers give warning messages.
Solution: Initialize variables, change printf() argument. (Christian
Brabandt, closes #4305 )
2019-04-26 20:33:00 +02:00
Bram Moolenaar
d2e716e6df
patch 8.1.1188: not all Vim variables require the v: prefix
...
Problem: Not all Vim variables require the v: prefix.
Solution: When scriptversion is 3 all Vim variables can only be used with
the v: prefix. (Ken Takata, closes #4274 )
2019-04-20 14:39:52 +02:00
Bram Moolenaar
543c9b1921
patch 8.1.1120: cannot easily get directory entry matches
...
Problem: Cannot easily get directory entry matches.
Solution: Add the readdir() function. (Yasuhiro Matsumoto, closes #2439 )
2019-04-05 22:50:40 +02:00
Bram Moolenaar
558ca4ae55
patch 8.1.1116: cannot enforce a Vim script style
...
Problem: Cannot enforce a Vim script style.
Solution: Add the :scriptversion command. (closes #3857 )
2019-04-04 18:15:38 +02:00
Bram Moolenaar
0f248b006c
patch 8.1.1114: confusing overloaded operator "." for string concatenation
...
Problem: Confusing overloaded operator "." for string concatenation.
Solution: Add ".." for string concatenation. Also "let a ..= b".
2019-04-04 15:36:05 +02:00