Age | Commit message (Collapse) | Author |
|
Problem: Accessing beyond allocated memory when using the cmdline window in
Ex mode.
Solution: Use "*" instead of "'<,'>" for Visual mode.
|
|
Problem: Read past the end of the first line with ":0;'{".
Solution: When on line zero check the column is valid for line one.
|
|
Problem: Substitute may overrun destination buffer.
Solution: Disallow switching buffers in a substitute expression.
|
|
Problem: Error message for unknown command may mention the command twice.
(Malcolm Rowe)
Solution: Add the did_append_cmd flag. (closes #10570)
|
|
Problem: Using "'<,'>" in Ex mode may compare unrelated pointers.
Solution: Set eap->cmd to "+" only later.
|
|
Problem: Value of cmod_verbose is a bit complicated to use.
Solution: Use zero for not set, value + 1 when set. (closes #10564)
|
|
Problem: DirChanged autocommand may use freed memory. (Shane-XB Qian)
Solution: Free the memory later. (closes #10555)
|
|
Problem: Error for a command may go over the end of IObuff.
Solution: Truncate the message.
|
|
Problem: Cursor position may be invalid after "0;" range.
Solution: Check the cursor position when it was set by ";" in the range.
|
|
Problem: Error for missing :endif when an exception was thrown. (Dani
Dickstein)
Solution: Do not give an error when aborting. (closes #10490)
|
|
Problem: Vim9: a few lines not covered by tests.
Solution: Delete dead code. Add a few test cases. make "12->func()" work.
|
|
Problem: Vim9: interpolated string seen as range.
Solution: Recognize an interpolated string at the start of a command line.
(closes #10434)
|
|
Problem: Various white space and cosmetic mistakes.
Solution: Change spaces to tabs, improve comments.
|
|
Problem: The mode #defines are not clearly named.
Solution: Prepend MODE_. Renumber them to put the mapped modes first.
|
|
Problem: Buffer overflow with invalid command with composing chars.
Solution: Check that the whole character fits in the buffer.
|
|
Problem: Vim9: redir in skipped block seen as assignment.
Solution: Check for valid assignment.
|
|
Problem: expand("%:p") is not empty when there is no buffer name.
Solution: When ignoring errors still return NULL. (closes #10311)
|
|
Problem: Empty string considered an error for expand() when 'verbose' is
set. (Christian Brabandt)
Solution: Do not give an error for an empty result. (closes #10307)
|
|
Problem: The cursor may be in the in wrong place when using :redraw while
editing the cmdline.
Solution: When editing the command line let :redraw update the command line
too. (closes #10210)
|
|
Problem: Using invalid pointer with "V:" in Ex mode.
Solution: Correctly handle the command being changed to "+".
|
|
Problem: Error from setting an option is silently ignored.
Solution: Handle option value errors better. Fix uses of N_().
|
|
Problem: Startup test fails.
Solution: Avoid an error for verbose expansion. Fix that the "0verbose"
command modifier doesn't work.
|
|
Problem: Cannot use expand() to get the script name.
Solution: Support expand('<script>'). (closes #10121)
|
|
Problem: The ModeChanged autocmd event is inefficient.
Solution: Avoid allocating memory. (closes #10134) Rename
trigger_modechanged() to may_trigger_modechanged().
|
|
Problem: After :redraw the statusline highlight might be used.
Solution: Clear the screen attribute after redrawing the screen.
(closes #10108)
|
|
Problem: Jump list marker disappears.
Solution: Reset reg_executing later. (closes #10111, closes #10100)
|
|
Problem: Vim9: can use :unlockvar for const variable. (Ernie Rael)
Solution: Check whether the variable is a const.
|
|
Problem: "import autoload" does not check the file name.
Solution: Give an error if the file is not readable. (closes #10049)
|
|
Problem: Warning for using uninitialized variable. (Tony Mechelynck)
Solution: Initialize it.
|
|
Problem: Not using Visual range.
Solution: Put the command pointer back to the range.
|
|
Problem: Visual range does not work before command modifiers.
Solution: Move Visual range to after command modifiers.
|
|
Problem: Coverity warns for using uninitialized field.
Solution: Initialize he field to zero.
|
|
Problem: Two letter substitute commands don't work. (Yegappan Lakshmanan)
Solution: Invert condition.
|
|
Problem: Command line completion does not recognize single letter commands.
Solution: Use the condition from find_ex_command().
|
|
Problem: Mapping with escaped bar does not work in :def function. (Sergey
Vlasov)
Solution: Do not remove the backslash. (closes #10002)
|
|
Problem: Sourcing buffer lines is too complicated.
Solution: Simplify the code. Make it possible to source Vim9 script lines.
(Yegappan Lakshmanan, closes #9974)
|
|
Problem: Cannot index the g: dictionary.
Solution: Recognize using "g:[key]". (closes #9969)
|
|
Problem: Vim9: some flow commands can be shortened.
Solution: Also require using the full name for ":return", ":enddef",
":continue", ":export" and ":import".
|
|
Problem: Vim9: shortening commands leads to confusing script.
Solution: In Vim9 script require at least ":cont" for ":continue", "const"
instead of "cons", "break" instead of "brea", "catch" instead of
"cat", "else" instead of "el" "elseif" instead of "elsei" "endfor"
instead of "endfo" "endif" instead of "en" "endtry" instead of
"endt", "finally" instead of "fina", "throw" instead of "th",
"while" instead of "wh".
|
|
Problem: Vim9: there is no point in supporting :Print and :mode.
Solution: Do not recognize :Print and :mode as commands. (closes #9870)
|
|
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()".
|
|
Problem: Still cannot build tiny version.
Solution: Adjust #ifdefs.
|
|
Problem: Vim9: error message not tested, some code not tested.
Solution: Add a couple of test cases. Give an error for a command modifier
without a command.
|
|
Problem: "legacy exe cmd" does not do what one would expect.
Solution: Apply the "legacy" and "vim9script" command modifiers to the
argument of ":execute".
|
|
Problem: No autocommand event triggered before changing directory. (Ronnie
Magatti)
Solution: Add DirChangedPre. (closes #9721)
|
|
Problem: Using a variable for the return value is not needed.
Solution: Return the value directly. (closes #9687)
|
|
Problem: Vim9: an import does not shadow a command modifier.
Solution: Do not accept a command modifier followed by a dot.
|
|
Problem: Theoretical computation overflow.
Solution: Perform multiplication in a wider type. (closes #9657)
|
|
Problem: Some type casts are redundant.
Solution: Remove the type casts. (closes #9643)
|
|
Problem: MS-Windows: Support for MSVC 2003 is not useful.
Solution: Remove the exceptions for MSVC 2003. (Ken Takata, closes #9616)
|