Problem: KRL files using "deffct" not recognized.
Solution: Adjust the pattern used for matching. (Patrick Meiser-Knosowski,
closesvim/vim#10200)
93c7a45e86
Problem: A second popup window with terminal causes trouble.
Solution: Disallow opening a second terminal-popup window. (closesvim/vim#6101,
closesvim/vim#6103) Avoid defaulting to an invalid line number.
b5383b174b
This is the only applicable hunk.
xstrnsave is a clone of vim_strnsave that uses char* instead of char_u*.
Its purpose short-term is to help reduce the number of casts and for
long-term to replace vim_strnsave as the need to use char_u is
eliminated.
Problem: Wrong 'statusline' value can cause illegal memory access.
Solution: Properly check the value. (closesvim/vim#10192)
5dc294a7b6
Make two error messages static variables.
Problem: Small pieces of dead code.
Solution: Remove the dead code. (Goc Dundar, closesvim/vim#10190) Rename the
qftf_cb struct member to avoid confusion.
b836658a04
Problem: Supercollider filetype not recognized.
Solution: Match file extentions and check file contents to detect
supercollider. (closesvim/vim#10142)
8cac20ed42
Skip runs of whitespace and do not include `\` characters when
followed by another `\` or whitespace. This matches the behavior
of <f-args> when used with `:command`.
Problem: Illegal memory access if buffer name is very long.
Solution: Make sure not to go over the end of the buffer.
826bfe4bbd
Adjust the test to use :noswapfile, as Nvim fails to create the swap file on Windows due to the file
name's length (E303).
We don't have this behaviour on Linux as we get "[Permission denied]" from readfile(), so there is
no attempt to create the swap file. However, Vim doesn't try to create the swap file on Windows
either for a different reason: MAXPATHL in Vim for Windows is only 1024 (compared to Nvim's 4096 on
the Windows CI), so readfile() gives "Illegal file name" instead, thus not needing :noswapfile for
both cases.
Problem: Illegal memory access with invalid sequence of commands.
Solution: Do not call leave_block() when not in a try block. (closesvim/vim#8966)
Reset did_emsg so that exception is shown as an error.
cce81e9673
Vim9script is N/A, which includes leave_block.
Problem: Test does not fail without the fix for a crash.
Solution: Write the bad code in a file and source it. (Dominique Pellé,
closesvim/vim#8961)
949de97da3
Problem: Still crash with error in :catch and also in :finally.
Solution: Only call finish_exception() once. (closesvim/vim#8954)
f67d3fb736
Exclude CSF_FUNC_DEF change (Vim9script).
4197828dc6
Cherry-pick the changes to existing flags values.
Required for v8.2.3478.
That patch mostly relates to Vim9script, but I'm careful not to mark it N/A in
case the flags have some use outside of Vim9 in the future.
Excludes CSF_FUNC_DEF (flag introduced in v8.2.1870 for Vim9's block scopes).
Problem: :endtry after function call that throws not found.
Solution: Do check for following :endtry if an exception is being thrown.
(closesvim/vim#8889)
1d34189ecb
Nvim obsoleted did_throw; check current_exception is not NULL instead.
Problem: Second error is reported while exception is being thrown.
Solution: Do not check for trailing characters when already aborting.
(closesvim/vim#8842)
36f691f5f1
Problem: Cannot add a digraph with a leading space. It is not easy to list
existing digraphs.
Solution: Add setdigraph(), setdigraphlist(), getdigraph() and
getdigraphlist(). (closesvim/vim#8580)
6106504e9e
Use GA_APPEND_VIA_PTR in registerdigraph().
Use tv_list_append_*() in getdigraphlist_appendpair().
Put the error messages in digraph.c.
E196 is N/A.
Remove mentions about 'encoding' being non-Unicode.
Nvim doesn't support setting encoding=japan, so skip a test.
Problem: Accessing freed memory after WinScrolled autocmd event.
Solution: Check the window pointer is still valid. (closesvim/vim#10156)
Remove the argument from may_trigger_winscrolled().
d58862d18f
Problem: Plugins cannot track text scrolling.
Solution: Add the WinScrolled event. (closesvim/vim#10102)
0937182d49
Skip User event in autocmd.txt, not needed unless #10689 is reverted.
This make Nvim recognize `ESC NUL` as <M-C-Space>, as many terminal
emulators (including libvterm) send <M-C-Space> as `ESC NUL`.
There is already another unambiguous way to encode a `ESC` key supported
by libtermkey: `ESC [ 2 7 u`, which is a `CSI u` sequence.
If one still wants to use `ESC NUL` as `ESC`, they can just map
<M-C-Space> to <Esc>.
Problem: HEEx and Surface templates do not need a separate filetype.
Solution: Use Eelixir for the similar filetypes. (Aaron Tinio, closesvim/vim#10124)
fa76a24109
Problem: The ModeChanged autocmd event is inefficient.
Solution: Avoid allocating memory. (closesvim/vim#10134) Rename
trigger_modechanged() to may_trigger_modechanged().
2bf52dd065
Make v:event readonly for ModeChanged.