patches-after-8.2
包含了从 8.2.0 开始的补丁列表。这包括所有的新特性,但不包括运行时文件的改动
(语法、缩进、帮助等等)。
Patch 8.2.0001
问题: #endif comments do not reflect corresponding #ifdef.
解决方案: Update the comments. (Rene Nyffenegger, closes #5351)
文件: src/ui.c
Patch 8.2.0002
问题: "dj" only deletes first line of closed fold.
解决方案: Adjust last line of operator for linewise motion. (closes #5354)
文件: src/ops.c, src/testdir/test_fold.vim
Patch 8.2.0003
问题: Build file dependencies are incomplete.
解决方案: Fix the dependencies. (Ken Takata, closes #5356)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
src/Makefile
Patch 8.2.0004
问题: Get E685 and E931 if buffer reload is interrupted.
解决方案: Do not abort deleting a dummy buffer. (closes #5361)
文件: src/buffer.c, src/proto/buffer.pro, src/testdir/test_trycatch.vim,
src/ex_cmds.c, src/ex_getln.c, src/misc2.c, src/quickfix.c,
src/window.c, src/vim.h
Patch 8.2.0005
问题: Duplication in version info.
解决方案: Use preprocessor string concatenation. (Ken Takata, closes #5357)
文件: src/version.h
Patch 8.2.0006
问题: Test using long file name may fail. (Vladimir Lomov)
解决方案: Limit the name length. (Christian Brabandt, closes #5358)
文件: src/testdir/test_display.vim
Patch 8.2.0007
问题: Popup menu positioned wrong with folding in two tabs.
解决方案: Update the cursor line height. (closes #5353)
文件: src/move.c, src/proto/move.pro, src/popupmenu.c,
src/testdir/test_ins_complete.vim,
src/testdir/dumps/Test_pum_with_folds_two_tabs.dump
Patch 8.2.0008
问题: Test72 is old style.
解决方案: Convert to new style test. (Yegappan Lakshmanan, closes #5362)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test72.in, src/testdir/test72.ok,
src/testdir/test_undo.vim
Patch 8.2.0009
问题: VMS: terminal version doesn't build.
解决方案: Move MIN definition. Adjust #ifdefs. (Zoltan Arpadffy)
文件: src/bufwrite.c, src/fileio.c, src/ui.c, src/xxd/Make_vms.mms
Patch 8.2.0010
问题: Test64 is old style.
解决方案: Convert to new style test. (Yegappan Lakshmanan, closes #5363)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test64.in, src/testdir/test64.ok,
src/testdir/test95.in, src/testdir/test_regexp_latin.vim
Patch 8.2.0011
问题: Screen updating wrong when opening preview window.
解决方案: Redraw the window when the preview window opens.
文件: src/popupmenu.c, src/testdir/test_ins_complete.vim,
src/testdir/dumps/Test_pum_with_preview_win.dump
Patch 8.2.0012
问题: Some undo functionality is not tested.
解决方案: Add a few more test cases. (Dominique Pellé, closes #5364)
文件: src/testdir/test_undo.vim
Patch 8.2.0013
问题: Not using a typedef for condstack.
解决方案: Add a typedef.
文件: src/structs.h, src/ex_docmd.c, src/ex_eval.c, src/userfunc.c,
src/ex_cmds.h, src/proto/ex_eval.pro
Patch 8.2.0014
问题: Test69 and test95 are old style.
解决方案: Convert to new style tests. (Yegappan Lakshmanan, closes #5365)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test69.in, src/testdir/test69.ok,
src/testdir/test95.in, src/testdir/test95.ok,
src/testdir/test_regexp_utf8.vim, src/testdir/test_textformat.vim
Patch 8.2.0015
问题: Not all modeline variants are tested.
解决方案: Add modeline tests. (Dominique Pellé, closes #5369)
文件: src/testdir/test_modeline.vim
Patch 8.2.0016
问题: Test name used twice, option not restored properly.
解决方案: Rename function, restore option with "&".
文件: src/testdir/test_textformat.vim
Patch 8.2.0017
问题: OS/2 and MS-DOS are still mentioned, even though support was
removed long ago.
解决方案: Update documentation. (Yegappan Lakshmanan, closes #5368)
文件: runtime/doc/autocmd.txt, runtime/doc/change.txt,
runtime/doc/cmdline.txt, runtime/doc/editing.txt,
runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/insert.txt,
runtime/doc/options.txt, runtime/doc/print.txt,
runtime/doc/quickfix.txt, runtime/doc/repeat.txt,
runtime/doc/starting.txt, runtime/doc/usr_01.txt,
runtime/doc/usr_05.txt, runtime/doc/usr_41.txt,
runtime/doc/vi_diff.txt, runtime/gvimrc_example.vim,
runtime/tools/README.txt, runtime/vimrc_example.vim, src/feature.h
Patch 8.2.0018
问题: :join does not add white space where it should. (Zdenek Dohnal)
解决方案: Handle joining multiple lines properly.
文件: src/ops.c, src/testdir/test_join.vim
Patch 8.2.0019
问题: Cannot get number of lines of another buffer.
解决方案: Add "linecount" to getbufinfo(). (Yasuhiro Matsumoto,
closes #5370)
文件: src/evalbuffer.c, src/testdir/test_bufwintabinfo.vim,
runtime/doc/eval.txt
Patch 8.2.0020
问题: Mouse clicks in the command line not tested.
解决方案: Add tests. (Dominique Pellé, closes #5366)
文件: src/testdir/test_termcodes.vim
Patch 8.2.0021
问题: Timer test fails too often on Travis with macOS.
解决方案: Be less strict with the time.
文件: src/testdir/test_timers.vim
Patch 8.2.0022
问题: Click in popup window doesn't close it in the GUI. (Sergey Vlasov)
解决方案: When processing the selection also send a button release event.
(closes #5367)
文件: src/gui.c
Patch 8.2.0023
问题: Command line editing not sufficiently tested.
解决方案: Add more tests. (Dominique Pellé, closes #5374)
文件: src/testdir/Make_all.mak, src/testdir/test_alot.vim,
src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim
Patch 8.2.0024
问题: Filetype Rego not recognized.
解决方案: Add *.rego. (Matt Dunford, closes #5376)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0025
问题: Repeated word in comment.
解决方案: Remove one. (Rene Nyffenegger, closes #5384)
文件: src/structs.h
Patch 8.2.0026
问题: Still some /* */ comments.
解决方案: Convert to // comments.
文件: src/message.c, src/message_test.c, src/misc1.c, src/misc2.c,
src/move.c
Patch 8.2.0027
问题: Still some /* */ comments.
解决方案: Convert to // comments.
文件: src/iid_ole.c, src/indent.c, src/insexpand.c, src/iscygpty.c,
src/version.c
Patch 8.2.0028
问题: Searchpairpos() is not tested.
解决方案: Add tests. Also improve searchpair() testing. (Dominique Pellé,
closes #5388)
文件: src/testdir/test_search.vim
Patch 8.2.0029
问题: MS-Windows: crash with empty job command.
解决方案: Check for NULL result. (Yasuhiro Matsumoto, closes #5390)
文件: src/channel.c, src/testdir/test_channel.vim
Patch 8.2.0030
问题: "gF" does not work on output of "verbose command".
解决方案: Recognize " line " and translations. (closes #5391)
文件: src/globals.h, src/eval.c, src/findfile.c, src/testdir/test_gf.vim
Patch 8.2.0031 (after 8.2.0029)
问题: MS-Windows: test for empty job fails
解决方案: Check for error message, make it also fail on Unix.
文件: src/channel.c, src/testdir/test_channel.vim
Patch 8.2.0032 (after 8.2.0031)
问题: MS-Windows: test for blank job fails
解决方案: Check before escaping.
文件: src/channel.c, src/testdir/test_channel.vim
Patch 8.2.0033
问题: Crash when make_extmatch() runs out of memory.
解决方案: Check for NULL. (Dominique Pellé, closes #5392)
文件: src/regexp_bt.c, src/regexp_nfa.c
Patch 8.2.0034
问题: Missing check for out of memory.
解决方案: Check for NULL after vim_strsave(). (Dominique Pellé,
closes #5393)
文件: src/filepath.c
Patch 8.2.0035
问题: Saving and restoring called_emsg is clumsy.
解决方案: Count the number of error messages.
文件: src/message.c, src/buffer.c, src/channel.c, src/drawscreen.c,
src/ex_cmds2.c, src/gui.c, src/highlight.c, src/main.c,
src/regexp.c, src/search.c, src/testing.c, src/globals.h
Patch 8.2.0036
问题: Not enough test coverage for match functions.
解决方案: Add a few more test cases. (Dominique Pellé, closes #5394)
Add error number.
文件: src/testdir/test_match.vim
Patch 8.2.0037
问题: Missing renamed message.
解决方案: Now really add the error number.
文件: src/highlight.c
Patch 8.2.0038
问题: Spell suggestions insufficiently tested.
解决方案: Add spell suggestion tests. (Dominique Pellé, closes #5398)
文件: src/testdir/test_spell.vim
Patch 8.2.0039
问题: Memory access error when "z=" has no suggestions.
解决方案: Check for negative index.
文件: src/testdir/test_spell.vim, src/spellsuggest.c
Patch 8.2.0040
问题: Timers test is still flaky on Travis for Mac.
解决方案: Run separately instead of as part of test_alot.
文件: src/testdir/Make_all.mak, src/testdir/test_alot.vim
Patch 8.2.0041
问题: Leaking memory when selecting spell suggestion.
解决方案: Free previous value at the right time.
文件: src/spellsuggest.c
Patch 8.2.0042
问题: Clearing funccal values twice.
解决方案: Remove clearing individual fields.
文件: src/userfunc.c
Patch 8.2.0043
问题: Timers test is still flaky on Travis for Mac.
解决方案: Increase maximum expected time.
文件: src/testdir/test_timers.vim
Patch 8.2.0044
问题: Expression type is used inconsistently.
解决方案: Add "ETYPE_IS" and "ETYPE_ISNOT" as separate enum values. Rename
"TYPE_" to "ETYPE_" to avoid confusion.
文件: src/structs.h, src/eval.c, src/proto/eval.pro, src/debugger.c
Patch 8.2.0045 (after 8.2.0044)
问题: Script test fails.
解决方案: For numbers "is" and "isnot" work like "==" and "!=".
文件: src/eval.c
Patch 8.2.0046
问题: Tests for spell suggestions are slow.
解决方案: Use shorter words. Test with latin1 and utf-8 to cover more code.
(Dominique Pellé, closes #5399)
文件: src/testdir/test_spell.vim
Patch 8.2.0047
问题: Cannot skip tests for specific MS-Windows platform.
解决方案: Add windowsversion().
文件: src/os_win32.c, src/globals.h, src/evalfunc.c,
runtime/doc/eval.txt, src/testdir/gen_opt_test.vim,
src/testdir/test_options.vim
Patch 8.2.0048
问题: Another timers test is flaky on Travis for Mac.
解决方案: Increase maximum expected time.
文件: src/testdir/test_timers.vim
Patch 8.2.0049
问题: Command line completion not fully tested.
解决方案: Add more test cases. Make help sorting stable. (Dominique Pellé,
closes #5402)
文件: src/ex_cmds.c, src/testdir/test_cd.vim,
src/testdir/test_cmdline.vim, src/testdir/test_help.vim,
src/testdir/test_menu.vim, src/testdir/test_options.vim,
src/testdir/test_syntax.vim
Patch 8.2.0050
问题: After deleting a file mark it is still in viminfo.
解决方案: When a file mark was deleted more recently than the mark in the
merged viminfo file was updated, do not store the mark. (Pavol
Juhas, closes #5401, closes #1339)
文件: src/mark.c, src/testdir/test_marks.vim,
src/testdir/test_viminfo.vim, src/viminfo.c
Patch 8.2.0051 (after 8.2.0049)
问题: Command line completion test skipped. (Christian Brabandt)
解决方案: Invert condition.
文件: src/testdir/test_cmdline.vim
Patch 8.2.0052
问题: More-prompt not properly tested.
解决方案: Add a test case. (Dominique Pellé, closes #5404)
文件: src/testdir/test_messages.vim
Patch 8.2.0053
问题: windowsversion() does not always return the right value.
解决方案: Add a compatibility section in the manifest. (Ken Takata,
closes #5407)
文件: src/gvim.exe.mnf
Patch 8.2.0054
问题: :diffget and :diffput don't have good completion.
解决方案: Add proper completion. (Dominique Pellé, closes #5409)
文件: runtime/doc/eval.txt, src/buffer.c, src/cmdexpand.c,
src/testdir/test_diffmode.vim, src/usercmd.c, src/vim.h
Patch 8.2.0055
问题: Cannot use ":gui" in vimrc with VIMDLL enabled.
解决方案: Change the logic, check "gui.starting". (Ken Takata, closes #5408)
文件: src/gui.c
Patch 8.2.0056
问题: Execution stack is incomplete and inefficient.
解决方案: Introduce a proper execution stack and use it instead of
sourcing_name/sourcing_lnum. Create a string only when used.
文件: src/structs.h, src/globals.h, src/autocmd.c, src/buffer.c
src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/highlight.c,
src/main.c, src/map.c, src/message.c, src/proto/scriptfile.pro,
src/scriptfile.c, src/option.c, src/profiler.c, src/spellfile.c,
src/term.c, src/testing.c, src/usercmd.c, src/userfunc.c,
src/kword_test.c, src/testdir/test_debugger.vim
Patch 8.2.0057 (after 8.2.0056)
问题: Cannot build with small features.
解决方案: Add #ifdefs.
文件: src/scriptfile.c
Patch 8.2.0058
问题: Running tests changes ~/.viminfo.
解决方案: Make 'viminfo' empty when summarizing tests results. (closes #5414)
文件: src/testdir/summarize.vim
Patch 8.2.0059
问题: Compiler warnings for unused variables in small build. (Tony
Mechelynck)
解决方案: Add #ifdef.
文件: src/scriptfile.c
Patch 8.2.0060
问题: Message test only runs with one encoding. (Dominique Pellé)
解决方案: Run the test with "utf-8" and "latin1". Fix underflow. (related
to #5410)
文件: src/message_test.c, src/message.c
Patch 8.2.0061
问题: The execute stack can grow big and never shrinks.
解决方案: Reduce the size in garbage collect.
文件: src/eval.c
Patch 8.2.0062
问题: Memory test is flaky on FreeBSD.
解决方案: Add a short sleep before getting the first size.
文件: src/testdir/test_memory_usage.vim
Patch 8.2.0063
问题: Wrong size argument to vim_snprintf(). (Dominique Pellé)
解决方案: Reduce the size by the length. (related to #5410)
文件: src/ops.c
Patch 8.2.0064
问题: Diffmode completion doesn't use per-window setting.
解决方案: Check if a window is in diff mode. (Dominique Pellé, closes #5419)
文件: src/buffer.c, src/testdir/test_diffmode.vim
Patch 8.2.0065
问题: Amiga and alikes: autoopen only used on Amiga OS4.
解决方案: Adjust #ifdefs. (Ola Söder, closes #5413)
文件: src/os_amiga.c
Patch 8.2.0066
问题: Some corners of vim_snprintf() are not tested.
解决方案: Add a test in C. (Dominique Pellé, closes #5422)
文件: src/message_test.c
Patch 8.2.0067
问题: ERROR_UNKNOWN clashes on some systems.
解决方案: Rename ERROR_ to FCERR_. (Ola Söder, closes #5415)
文件: src/evalfunc.c, src/userfunc.c, src/vim.h
Patch 8.2.0068
问题: Crash when using Python 3 with "utf32" encoding. (Dominique Pellé)
解决方案: Use "utf-8" whenever enc_utf8 is set. (closes #5423)
文件: src/testdir/test_python3.vim, src/if_py_both.h
Patch 8.2.0069
问题: ETYPE_ is used for two different enums.
解决方案: Rename one to use EXPR_.
文件: src/structs.h, src/eval.c, src/debugger.c
Patch 8.2.0070
问题: Crash when using Python 3 with "debug" encoding. (Dominique Pellé)
解决方案: Use "euc-jp" whenever enc_dbcs is set.
文件: src/testdir/test_python3.vim, src/if_py_both.h
Patch 8.2.0071
问题: Memory test often fails on Cirrus CI.
解决方案: Allow for more tolerance in the upper limit. Remove sleep.
文件: src/testdir/test_memory_usage.vim
Patch 8.2.0072 (after 8.2.0071)
问题: Memory test still fails on Cirrus CI.
解决方案: Allow for a tiny bit more tolerance in the upper limit.
文件: src/testdir/test_memory_usage.vim
Patch 8.2.0073
问题: Initializing globals with COMMA is clumsy.
解决方案: Use INIT2(), INIT3(), etc.
文件: src/vim.h, src/globals.h
Patch 8.2.0074
问题: Python 3 unicode test sometimes fails.
解决方案: Make 'termencoding' empty. Correct number of error message.
文件: src/change.c, runtime/doc/options.txt, runtime/doc/message.txt,
src/testdir/test_python3.vim
Patch 8.2.0075
问题: Python 3 unicode test still sometimes fails.
解决方案: Skip the test when 'termencoding' is not empty.
文件: src/testdir/test_python3.vim
Patch 8.2.0076
问题: Python 3 unicode test fails on MS-Windows.
解决方案: Do not set 'encoding' to "debug" on MS-Windows.
文件: src/testdir/test_python3.vim
Patch 8.2.0077
问题: settagstack() cannot truncate at current index.
解决方案: Add the "t" action. (Yegappan Lakshmanan, closes #5417)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/tag.c,
src/testdir/test_tagjump.vim
Patch 8.2.0078
问题: Expanding <sfile> works differently the second time.
解决方案: Keep the expanded name when redefining a function. (closes #5425)
文件: src/testdir/test_vimscript.vim, src/userfunc.c
Patch 8.2.0079
问题: Python 3 unicode test still fails on MS-Windows.
解决方案: Do not set 'encoding' to "euc-tw" on MS-Windows.
文件: src/testdir/test_python3.vim
Patch 8.2.0080
问题: Globals using INIT4() are not in the tags file.
解决方案: Adjust the tags command.
文件: src/configure.ac, src/auto/configure
Patch 8.2.0081
问题: MS-Windows also need the change to support INIT4().
解决方案: Add the ctags arguments. (Ken Takata)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak
Patch 8.2.0082
问题: When reusing a buffer listeners are not cleared. (Axel Forsman)
解决方案: Clear listeners when reusing a buffer. (closes #5431)
文件: src/testdir/test_listener.vim, src/buffer.c
Patch 8.2.0083
问题: Text properties wrong when tabs and spaces are exchanged.
解决方案: Take text properties into account. (Nobuhiro Takasaki,
closes #5427)
文件: src/edit.c, src/testdir/test_textprop.vim
Patch 8.2.0084
问题: Complete item "user_data" can only be a string.
解决方案: Accept any type of variable. (closes #5412)
文件: src/testdir/test_ins_complete.vim, src/insexpand.c, src/dict.c,
src/proto/dict.pro, src/eval.c, runtime/doc/insert.txt
Patch 8.2.0085
问题: Dead code in builtin functions.
解决方案: Clean up the code.
文件: src/evalvars.c, src/sound.c, src/textprop.c
Patch 8.2.0086 (after 8.2.0084)
问题: Build error for small version. (Tony Mechelynck)
解决方案: Only use "user_data" with the +eval feature. Remove unused
variable.
文件: src/insexpand.c, src/dict.c
Patch 8.2.0087
问题: Crash in command line expansion when out of memory.
解决方案: Check for NULL pointer. Also make ExpandGeneric() static.
(Dominique Pellé, closes #5437)
文件: src/cmdexpand.c, src/proto/cmdexpand.pro
Patch 8.2.0088
问题: Insufficient tests for tags; bug in using extra tag field when
using an ex command to position the cursor.
解决方案: Fix the bug, add more tests. (Yegappan Lakshmanan, closes #5439)
文件: runtime/doc/tagsrch.txt, src/tag.c,
src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim,
src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim
Patch 8.2.0089
问题: Crash when running out of memory in :setfiletype completion.
解决方案: Do not allocate memory. (Dominique Pellé, closes #5438)
文件: src/cmdexpand.c
Patch 8.2.0090
问题: Generated files show up in git status.
解决方案: Ignore a few more files.
文件: .gitignore
Patch 8.2.0091
问题: Compiler warnings for size_t / int types.
解决方案: Change type to size_t. (Mike Williams)
文件: src/scriptfile.c
Patch 8.2.0092
问题: Tags functionality insufficiently tested.
解决方案: Add more tags tests. (Yegappan Lakshmanan, closes #5446)
文件: src/testdir/test_tagjump.vim
Patch 8.2.0093
问题: win_splitmove() can make Vim hang.
解决方案: Check windows exists in the current tab page. (closes #5444)
文件: src/testdir/test_window_cmd.vim, src/evalwindow.c
Patch 8.2.0094
问题: MS-Windows: cannot build with Strawberry Perl 5.30.
解决方案: Define __builtin_expect() as a workaround. (Ken Takata,
closes #5267)
文件: src/if_perl.xs
Patch 8.2.0095
问题: Cannot specify exit code for :cquit.
解决方案: Add optional argument. (Thinca, Yegappan Lakshmanan, closes #5442)
文件: runtime/doc/quickfix.txt, src/ex_cmds.h, src/ex_docmd.c,
src/testdir/test_quickfix.vim
Patch 8.2.0096
问题: Cannot create tiny popup window in last column. (Daniel Steinberg)
解决方案: Remove position limit. (closes #5447)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_20.dump,
src/testdir/dumps/Test_popupwin_21.dump
Patch 8.2.0097
问题: Crash with autocommand and spellfile. (Tim Pope)
解决方案: Do not pop exestack when not pushed. (closes #5450)
文件: src/testdir/test_autocmd.vim, src/spellfile.c
Patch 8.2.0098
问题: Exe stack length can be wrong without being detected.
解决方案: Add a check when ABORT_ON_INTERNAL_ERROR is defined.
文件: src/macros.h, src/autocmd.c, src/buffer.c, src/ex_docmd.c,
src/main.c, src/map.c, src/scriptfile.c, src/spellfile.c,
src/userfunc.c
Patch 8.2.0099
问题: Use of NULL pointer when out of memory.
解决方案: Check for NULL pointer. (Dominique Pellé, closes #5449)
文件: src/cmdexpand.c
Patch 8.2.0100
问题: Macros for Ruby are too complicated.
解决方案: Do not use DYNAMIC_RUBY_VER, use RUBY_VERSION. (Ken Takata,
closes #5452)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
src/configure.ac, src/if_ruby.c
Patch 8.2.0101
问题: Crash when passing null object to ":echomsg".
解决方案: Check for NULL pointer. (Yasuhiro Matsumoto, closes #5460)
文件: src/eval.c, src/testdir/test_messages.vim
Patch 8.2.0102
问题: Messages test fails in small version.
解决方案: Only use test_null_job() when available.
文件: src/testdir/test_messages.vim
Patch 8.2.0103
问题: Using null object with execute() has strange effects.
解决方案: Give an error message for Job and Channel.
文件: src/testdir/test_execute_func.vim, src/globals.h, src/eval.c,
src/evalfunc.c
Patch 8.2.0104
问题: Using channel or job with ":execute" has strange effects.
解决方案: Give an error message for Job and Channel.
文件: src/testdir/test_eval_stuff.vim, src/eval.c
Patch 8.2.0105
问题: Vim license not easy to find on github.
解决方案: Add a separate LICENCE file. (closes #5458)
文件: LICENSE, Filelist
Patch 8.2.0106
问题: Printf formats are not exactly right.
解决方案: Adjust signed/unsigned conversions. (Frazer Clews, closes #5456)
文件: runtime/tools/ccfilter.c, src/libvterm/src/parser.c,
src/libvterm/src/pen.c, src/ui.c
Patch 8.2.0107
问题: Hgignore is out of sync from gitignore.
解决方案: Add lines to hgignore. (Ken Takata)
文件: .hgignore
Patch 8.2.0108
问题: When sign text is changed a manual redraw is needed. (Pontus
Lietzler)
解决方案: Redraw automatically. (closes #5455)
文件: src/testdir/test_signs.vim, src/sign.c,
src/testdir/dumps/Test_sign_cursor_1.dump,
src/testdir/dumps/Test_sign_cursor_2.dump,
src/testdir/dumps/Test_sign_cursor_3.dump,
src/testdir/dumps/Test_sign_cursor_01.dump,
src/testdir/dumps/Test_sign_cursor_02.dump
Patch 8.2.0109
问题: Corrupted text properties when expanding spaces.
解决方案: Reallocate the line. (Nobuhiro Takasaki, closes #5457)
文件: src/edit.c, src/testdir/test_textprop.vim
Patch 8.2.0110
问题: prop_find() is not implemented.
解决方案: Implement prop_find(). (Ryan Hackett, closes #5421, closes #4970)
文件: src/evalfunc.c, src/proto/textprop.pro,
src/testdir/test_textprop.vim, src/textprop.c,
runtime/doc/textprop.txt
Patch 8.2.0111
问题: VAR_SPECIAL is also used for booleans.
解决方案: Add VAR_BOOL for better type checking.
文件: src/structs.h, src/dict.c, src/eval.c, src/evalfunc.c,
src/evalvars.c, src/if_lua.c, src/if_mzsch.c, src/if_py_both.h,
src/if_ruby.c, src/json.c, src/popupmenu.c, src/proto/dict.pro,
src/testing.c, src/vim.h, src/viminfo.c
Patch 8.2.0112
问题: Illegal memory access when using 'cindent'.
解决方案: Check for NUL byte. (Dominique Pellé, closes #5470)
文件: src/cindent.c, src/testdir/test_cindent.vim
Patch 8.2.0113 (after 8.2.0095)
问题: "make cmdidxs" fails.
解决方案: Allow address for ":cquit". Add --not-a-term to avoid a delay.
文件: src/ex_cmds.h, src/Makefile, src/Make_cyg_ming.mak,
src/Make_mvc.mak
Patch 8.2.0114
问题: Info about sourced scripts is scattered.
解决方案: Use scriptitem_T for info about a script, including s: variables.
Drop ga_scripts.
文件: src/structs.h, src/evalvars.c, src/scriptfile.c, src/eval.c
Patch 8.2.0115
问题: Byte2line() does not work correctly with text properties. (Billie
Cleek)
解决方案: Take the bytes of the text properties into account.
(closes #5334)
文件: src/testdir/test_textprop.vim, src/memline.c
Patch 8.2.0116
问题: BufEnter autocmd not triggered on ":tab drop". (Andy Stewart)
解决方案: Decrement autocmd_no_enter for the last file. (closes #1660,
closes #5473)
文件: src/arglist.c, src/testdir/test_tabpage.vim
Patch 8.2.0117
问题: Crash when using gettabwinvar() with invalid arguments. (Yilin
Yang)
解决方案: Use "curtab" if "tp" is NULL. (closes #5475)
文件: src/evalwindow.c, src/testdir/test_getvar.vim
Patch 8.2.0118
问题: Crash when cycling to buffers involving popup window .
解决方案: Do not decrement buffer reference count.
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_infopopup_7.dump
Patch 8.2.0119
问题: Message test fails on some platforms. (Elimar Riesebieter)
解决方案: Add type cast to vim_snprintf() argument. (Dominique Pellé)
文件: src/message_test.c
Patch 8.2.0120
问题: virtcol() does not check arguments to be valid, which may lead to
a crash.
解决方案: Check the column to be valid. Do not decrement MAXCOL.
(closes #5480)
文件: src/evalfunc.c, src/testdir/test_marks.vim
Patch 8.2.0121
问题: filter() and map() on blob don't work.
解决方案: Correct the code. (closes #5483)
文件: src/list.c, src/testdir/test_blob.vim
Patch 8.2.0122
问题: Readme files still mention MS-DOS.
解决方案: Update readme files. (Ken Takata, closes #5486)
文件: README.md, README.txt, READMEdir/README_dos.txt,
READMEdir/README_srcdos.txt, READMEdir/README_w32s.txt,
runtime/doc/os_win32.txt
Patch 8.2.0123
问题: complete_info() does not work when CompleteDone is triggered.
解决方案: Trigger CompleteDone before clearing the info.
文件: src/insexpand.c, runtime/doc/autocmd.txt,
src/testdir/test_ins_complete.vim
Patch 8.2.0124
问题: Compiler warnings for variable types.
解决方案: Change type, add type cast. (Mike Williams)
文件: src/memline.c
Patch 8.2.0125
问题: :mode no longer works for any system.
解决方案: Always give an error message.
文件: src/ex_docmd.c, runtime/doc/quickref.txt, src/os_amiga.c,
src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro,
src/os_unix.c, src/proto/os_unix.pro
Patch 8.2.0126 (after 8.2.0124)
问题: Textprop test fails.
解决方案: Fix sign in computation.
文件: src/memline.c
Patch 8.2.0127
问题: Some buffer commands work in a popup window.
解决方案: Disallow :bnext, :bprev, etc. (Naruhiko Nishino, closes #5494)
文件: src/ex_docmd.c, src/testdir/test_popupwin.vim
Patch 8.2.0128
问题: Cannot list options one per line.
解决方案: Use ":set!" to list one option per line.
文件: src/ex_docmd.c, src/option.c, src/proto/option.pro, src/vim.h,
src/ex_cmds.h, src/optiondefs.h, src/testdir/test_options.vim,
runtime/doc/options.txt
Patch 8.2.0129
问题: MS-Windows installer doesn't use Turkish translations.
解决方案: Enable the Turkish translations and fix a few. (Emir Sarı,
closes #5493)
文件: nsis/gvim.nsi, nsis/lang/turkish.nsi
Patch 8.2.0130
问题: Python3 ranges are not tested.
解决方案: Add test. (Dominique Pellé, closes #5498)
文件: src/testdir/test_python3.vim
Patch 8.2.0131
问题: Command line is not cleared when switching tabs and the command
line height differs.
解决方案: Set the "clear_cmdline" flag when needed. (Naruhiko Nishino,
closes #5495)
文件: src/testdir/dumps/Test_cmdlineclear_tabenter.dump,
src/testdir/test_cmdline.vim, src/window.c
Patch 8.2.0132
问题: Script may be re-used when deleting and creating a new one.
解决方案: When the inode matches, also check the file name.
文件: src/scriptfile.c, src/testdir/test_source.vim
Patch 8.2.0133
问题: Invalid memory access with search command.
解决方案: When :normal runs out of characters in bracketed paste mode break
out of the loop.(closes #5511)
文件: src/testdir/test_search.vim, src/edit.c
Patch 8.2.0134
问题: Some map functionality not covered by tests.
解决方案: Add tests. (Yegappan Lakshmanan, closes #5504)
文件: src/testdir/test_maparg.vim, src/testdir/test_mapping.vim
Patch 8.2.0135 (after 8.2.0133)
问题: Bracketed paste can still cause invalid memory access. (Dominique
Pellé)
解决方案: Check for NULL pointer.
文件: src/edit.c, src/testdir/test_search.vim
Patch 8.2.0136
问题: Stray ch_logfile() call.
解决方案: Remove it. (closes #5503)
文件: src/testdir/test_source.vim
Patch 8.2.0137
问题: Crash when using win_execute() from a new tab.
解决方案: Set the tp_*win pointers. (Ozaki Kiichi, closes #5512)
文件: src/testdir/test_winbuf_close.vim, src/window.c
Patch 8.2.0138
问题: Memory leak when starting a job fails.
解决方案: Free the list of arguments. (Ozaki Kiichi, closes #5510)
文件: src/channel.c, src/testdir/test_channel.vim
Patch 8.2.0139
问题: MS-Windows: default for IME is inconsistent.
解决方案: Also make IME default enabled with MVC. (Ken Takata, closes #5508)
文件: src/Make_mvc.mak
Patch 8.2.0140
问题: CI does not test building doc tags.
解决方案: Add the vimtags/gcc build. Cleanup showing version. (Ozaki Kiichi,
closes #5513)
文件: .travis.yml, Filelist, ci/if_ver-1.vim, ci/if_ver-2.vim,
ci/if_ver-cmd.vim, runtime/doc/Makefile, runtime/doc/doctags.vim,
src/testdir/if_ver-1.vim, src/testdir/if_ver-2.vim
Patch 8.2.0141
问题: No swift filetype detection.
解决方案: Add swift, swiftgyb and sil. (Emir Sarı, closes #5517)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0142
问题: Possible to enter popup window with CTRL-W p. (John Devin)
解决方案: Check entered window is not a popup window. (closes #5515)
文件: src/window.c, src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_previewpopup_9.dump,
src/testdir/dumps/Test_popupwin_previewpopup_10.dump
Patch 8.2.0143
问题: Coverity warning for possible use of NULL pointer.
解决方案: Check argv is not NULL.
文件: src/channel.c
Patch 8.2.0144
问题: Some mapping code is not fully tested.
解决方案: Add more test cases. (Yegappan Lakshmanan, closes #5519)
文件: src/testdir/test_langmap.vim, src/testdir/test_maparg.vim,
src/testdir/test_mapping.vim
Patch 8.2.0145
问题: Using #error for compilation errors should be OK now.
解决方案: Use #error. (Ken Takata, closes #5299)
文件: src/blowfish.c, src/vim.h
Patch 8.2.0146
问题: Wrong indent when 'showbreak' and 'breakindent' are set and
'briopt' includes "sbr".
解决方案: Reset "need_showbreak" where needed. (Ken Takata, closes #5523)
文件: src/drawline.c, src/testdir/test_breakindent.vim
Patch 8.2.0147
问题: Block Visual mode operators not correct when 'linebreak' set.
解决方案: Set w_p_lbr to lbr_saved more often. (Ken Takata, closes #5524)
文件: src/ops.c, src/testdir/test_listlbr.vim
Patch 8.2.0148
问题: Mapping related function in wrong source file.
解决方案: Move the function. Add a few more test cases. (Yegappan
Lakshmanan, closes #5528)
文件: src/map.c, src/proto/term.pro, src/term.c,
src/testdir/test_mapping.vim
Patch 8.2.0149
问题: Maintaining a Vim9 branch separately is more work.
解决方案: Merge the Vim9 script changes.
文件: README.md, README_VIM9.md, runtime/doc/Makefile,
runtime/doc/eval.txt, runtime/doc/options.txt, runtime/doc/tags,
runtime/doc/vim9.txt, runtime/ftplugin/vim.vim,
runtime/indent/vim.vim, runtime/syntax/vim.vim,
src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile, src/blob.c,
src/channel.c, src/dict.c, src/eval.c, src/evalbuffer.c,
src/evalfunc.c, src/evalvars.c, src/ex_cmdidxs.h, src/ex_cmds.h,
src/ex_docmd.c, src/ex_eval.c, src/filepath.c, src/globals.h,
src/gui.c, src/if_lua.c, src/if_py_both.h, src/insexpand.c,
src/json.c, src/list.c, src/macros.h, src/main.c, src/message.c,
src/misc1.c, src/proto.h, src/proto/blob.pro, src/proto/eval.pro,
src/proto/evalfunc.pro, src/proto/evalvars.pro,
src/proto/ex_docmd.pro, src/proto/ex_eval.pro, src/proto/list.pro,
src/proto/message.pro, src/proto/scriptfile.pro,
src/proto/userfunc.pro, src/proto/vim9compile.pro,
src/proto/vim9execute.pro, src/proto/vim9script.pro,
src/scriptfile.c, src/session.c, src/structs.h, src/syntax.c,
src/testdir/Make_all.mak, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim, src/testing.c, src/userfunc.c,
src/vim.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/vim9script.c, src/viminfo.c
Patch 8.2.0150
问题: Cannot define python function when using :execute. (Yasuhiro
Matsumoto)
解决方案: Do not recognize "def" inside "function.
文件: src/testdir/test_vim9_script.vim, src/userfunc.c
Patch 8.2.0151
问题: Detecting a script was already sourced is unreliable.
解决方案: Do not use the inode number.
文件: src/scriptfile.c, src/structs.h, src/testdir/test_vim9_script.vim
Patch 8.2.0152
问题: Restoring ctrl_x_mode is not needed.
解决方案: Remove restoring the old value, it's changed again soon.
文件: src/insexpand.c
Patch 8.2.0153
问题: Warning shows when listing version info.
解决方案: Use "-u NONE". (Ozaki Kiichi, closes #5534)
文件: .travis.yml
Patch 8.2.0154
问题: Reallocating the list of scripts is inefficient.
解决方案: Instead of using a growarray of scriptitem_T, store pointers and
allocate each scriptitem_T separately. Also avoids that the
growarray pointers change when sourcing a new script.
文件: src/globals.h, src/eval.c, src/evalvars.c, src/ex_docmd.c,
src/profiler.c, src/scriptfile.c, src/vim9compile.c,
src/vim9execute.c, src/vim9script.c
Patch 8.2.0155
问题: Warnings from MinGW compiler. (John Marriott) Json test fails when
building without +float feature.
解决方案: Init variables. Fix Json parsing. Skip a few tests that require
the +float feature.
文件: src/vim9script.c, src/vim9compile.c, src/vim9execute.c,
src/if_py_both.h, src/json.c, src/testdir/test_method.vim
Patch 8.2.0156
问题: Various typos in source files and tests.
解决方案: Fix the typos. (Emir Sarı, closes #5532)
文件: Makefile, src/INSTALLvms.txt, src/Make_vms.mms, src/beval.h,
src/buffer.c, src/charset.c, src/evalvars.c, src/ex_cmds.c,
src/ex_docmd.c, src/getchar.c, src/gui.c, src/gui_mac.c,
src/gui_photon.c, src/if_perl.xs,
src/libvterm/t/11state_movecursor.test,
src/libvterm/t/41screen_unicode.test, src/mbyte.c, src/memline.c,
src/normal.c, src/ops.c, src/option.c, src/option.h,
src/os_unix.c, src/os_win32.c, src/quickfix.c, src/register.c,
src/spell.c, src/tag.c, src/term.c,
src/testdir/test_breakindent.vim, src/testdir/test_channel.vim,
src/testdir/test_cindent.vim, src/testdir/test_digraph.vim,
src/testdir/test_edit.vim, src/testdir/test_netbeans.vim,
src/testdir/test_quickfix.vim, src/testdir/test_registers.vim,
src/testdir/test_stat.vim, src/ui.c, src/xxd/xxd.c
Patch 8.2.0157
问题: Vim9 script files not in list of distributed files.
解决方案: Add the entries.
文件: Filelist
Patch 8.2.0158 (after 8.2.0123)
问题: Triggering CompleteDone earlier is not backwards compatible.
(Daniel Hahler)
解决方案: Add CompleteDonePre instead.
文件: src/insexpand.c, runtime/doc/autocmd.txt, src/autocmd.c,
src/vim.h, src/testdir/test_ins_complete.vim
Patch 8.2.0159
问题: Non-materialized range() list causes problems. (Fujiwara Takuya)
解决方案: Materialize the list where needed.
文件: src/testdir/test_functions.vim, src/testdir/test_python3.vim,
src/userfunc.c, src/evalfunc.c, src/highlight.c, src/evalvars.c,
src/popupmenu.c, src/insexpand.c, src/json.c, src/channel.c,
src/eval.c
Patch 8.2.0160 (after 8.2.0159)
问题: Range test fails.
解决方案: Include change in list code. (#5541)
文件: src/list.c
Patch 8.2.0161
问题: Not recognizing .gv file as dot filetype.
解决方案: Add *.gv to dot pattern. (closes #5544)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0162
问题: Balloon test fails in the GUI.
解决方案: Skip test in the GUI.
文件: src/testdir/test_functions.vim
Patch 8.2.0163
问题: Test hangs on MS-Windows console.
解决方案: use feedkeys() instead of test_feedinput(). (Ken Takata)
文件: src/testdir/test_functions.vim, src/testing.c
Patch 8.2.0164
问题: Test_alot takes too long.
解决方案: Run several tests individually.
文件: src/testdir/test_alot.vim, src/testdir/Make_all.mak
Patch 8.2.0165
问题: Coverity warning for using NULL pointer.
解决方案: Add missing "else".
文件: src/vim9compile.c
Patch 8.2.0166
问题: Coverity warning for using uninitialized variable.
解决方案: Check for failure.
文件: src/vim9execute.c
Patch 8.2.0167
问题: Coverity warning for ignoring return value.
解决方案: Check the return value and jump if failed.
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0168
问题: Coverity warning for assigning NULL to an option.
解决方案: Use empty string instead of NULL.
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0169
问题: Coverity warning for dead code.
解决方案: Check if inside try-finally.
文件: src/vim9execute.c
Patch 8.2.0170
问题: Coverity warning for ignoring return value.
解决方案: Check the return value and return if failed.
文件: src/vim9compile.c
Patch 8.2.0171
问题: Coverity warning for using uninitialized buffer.
解决方案: Check the skip flag.
文件: src/userfunc.c
Patch 8.2.0172
问题: Coverity warning for not restoring character.
解决方案: Restore the character also in case of failure.
文件: src/vim9script.c
Patch 8.2.0173
问题: Build fails with old compiler.
解决方案: Do not use anonymous unions. (John Marriott)
文件: src/vim9compile.c, src/evalvars.c, src/list.c, src/structs.h,
src/evalfunc.c, src/channel.c, src/if_mzsch.c, src/if_py_both.h
Patch 8.2.0174
问题: Various commands not completely tested.
解决方案: Add more test cases. (Yegappan Lakshmanan, closes #5551)
文件: src/testdir/test_excmd.vim, src/testdir/test_fnameescape.vim,
src/testdir/test_ga.vim, src/testdir/test_global.vim,
src/testdir/test_move.vim, src/testdir/test_options.vim,
src/testdir/test_packadd.vim, src/testdir/test_sort.vim,
src/testdir/test_substitute.vim, src/testdir/test_textformat.vim,
src/testdir/test_writefile.vim
Patch 8.2.0175
问题: Crash when removing list element in map().
解决方案: Lock the list. (closes #2652)
文件: src/testdir/test_filter_map.vim, src/list.c
Patch 8.2.0176
问题: Generating os headers does not work for Swedish.
解决方案: Set the locale to C. (Christian Brabandt, closes #5258)
文件: src/osdef.sh
Patch 8.2.0177
问题: Memory leak in get_tags().
解决方案: Free matches when finding a pseudo-tag line. (Dominique Pellé,
closes #5553)
文件: src/tag.c
Patch 8.2.0178
问题: With VTP the screen may not be restored properly.
解决方案: Add another set of saved RGB values. (Nobuhiro Takasaki,
closes #5548)
文件: src/os_win32.c
Patch 8.2.0179
问题: Still a few places where range() does not work.
解决方案: Fix using range() causing problems.
文件: src/terminal.c, src/testdir/test_functions.vim,
src/testdir/test_popupwin.vim, src/popupwin.c, src/tag.c,
src/testdir/dumps/Test_popupwin_20.dump,
src/testdir/dumps/Test_popupwin_21.dump,
src/testdir/dumps/Test_popup_settext_07.dump, src/globals.h
Patch 8.2.0180
问题: Test for wrapmargin fails if terminal is not 80 columns.
解决方案: Vertical split the window. (Ken Takata, closes #5554)
文件: src/testdir/test_textformat.vim
Patch 8.2.0181
问题: Problems parsing :term arguments.
解决方案: Improve parsing, fix memory leak, add tests. (Ozaki Kiichi,
closes #5536)
文件: src/channel.c, src/proto/channel.pro, src/structs.h,
src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.0182
问题: Min() and max() materialize a range() list.
解决方案: Compute the result without materializing the list. (#5541)
文件: src/evalfunc.c
Patch 8.2.0183
问题: Tests fail when the float feature is disabled.
解决方案: Skip tests that don't work without float support.
文件: src/testdir/shared.vim, src/testdir/test_blob.vim,
src/testdir/test_channel.vim, src/testdir/test_cscope.vim,
src/testdir/test_execute_func.vim, src/testdir/test_expr.vim,
src/testdir/test_functions.vim, src/testdir/test_lambda.vim,
src/testdir/test_listdict.vim, src/testdir/test_lua.vim,
src/testdir/test_options.vim, src/testdir/test_partial.vim,
src/testdir/test_ruby.vim, src/testdir/test_sort.vim,
src/testdir/test_timers.vim, src/testdir/test_true_false.vim,
src/testdir/test_user_func.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vimscript.vim, src/testdir/test_regexp_latin.vim,
src/testdir/test_glob2regpat.vim
Patch 8.2.0184
问题: Blob test fails.
解决方案: Check for different error when float feature is missing.
文件: src/testdir/test_blob.vim
Patch 8.2.0185
问题: Vim9 script: cannot use "if has()" to skip lines.
解决方案: Evaluate constant expression at runtime.
文件: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.0186
问题: A couple of tests may fail when features are missing.
解决方案: Check for features. (Dominique Pellé, closes #5561)
文件: src/testdir/test_functions.vim, src/testdir/test_highlight.vim
Patch 8.2.0187
问题: Redundant code.
解决方案: Remove unused assignments. (Dominique Pellé, closes #5557)
文件: src/vim9compile.c
Patch 8.2.0188
问题: Check commands don't work well with Vim9 script.
解决方案: Improve constant expression handling.
文件: src/vim9compile.c, src/testdir/check.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.0189
问题: cd() with NULL argument crashes.
解决方案: Check for NULL. (Ken Takata, closes #5558)
文件: src/testdir/test_cd.vim, src/ex_docmd.c
Patch 8.2.0190
问题: Kotlin files are not recognized.
解决方案: Detect Kotlin files. (Alkeryn, closes #5560)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0191
问题: Cannot put a terminal in a popup window.
解决方案: Allow opening a terminal in a popup window. It will always have
keyboard focus until closed.
文件: src/popupwin.c, src/proto/popupwin.pro, src/terminal.c,
src/proto/terminal.pro, src/macros.h, src/mouse.c,
src/highlight.c, src/drawline.c, src/optionstr.c, src/window.c,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_1.dump,
src/testdir/dumps/Test_terminal_popup_2.dump,
src/testdir/dumps/Test_terminal_popup_3.dump
Patch 8.2.0192 (after 8.2.0191)
问题: Build failure without +terminal feature.
解决方案: Add #ifdefs.
文件: src/popupwin.c
Patch 8.2.0193 (after 8.2.0191)
问题: Still build failure without +terminal feature.
解决方案: Add more #ifdefs.
文件: src/macros.h
Patch 8.2.0194 (after 8.2.0193)
问题: Some commands can cause problems in terminal popup.
解决方案: Disallow more commands.
文件: src/macros.h, src/popupwin.c, src/proto/popupwin.pro,
src/arglist.c, src/ex_docmd.c, src/window.c,
src/testdir/test_terminal.vim
Patch 8.2.0195
问题: Some tests fail when run in the GUI.
解决方案: Make sure the window width is enough. In the GUI run terminal Vim
in the terminal, if possible.
文件: src/testdir/test_highlight.vim, src/testdir/check.vim,
src/testdir/test_terminal.vim
Patch 8.2.0196
问题: Blocking commands for a finished job in a popup window.
解决方案: Do not block commands if the job has finished. Adjust test.
文件: src/popupwin.c, src/testdir/test_popupwin.vim, src/window.c,
src/terminal.c, src/proto/terminal.pro
Patch 8.2.0197
问题: Some Ex commands not sufficiently tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5565)
文件: src/testdir/test_global.vim, src/testdir/test_help.vim,
src/testdir/test_help_tagjump.vim, src/testdir/test_options.vim,
src/testdir/test_substitute.vim, src/testdir/test_textformat.vim,
src/testdir/test_writefile.vim
Patch 8.2.0198
问题: No tests for y/n prompt.
解决方案: Add tests. (Dominique Pellé, closes #5564)
文件: src/testdir/test_messages.vim
Patch 8.2.0199
问题: Vim9 script commands not sufficiently tested.
解决方案: Add more tests. Fix script-local function use.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim,
src/userfunc.c
Patch 8.2.0200
问题: Vim9 script commands not sufficiently tested.
解决方案: Add more tests. Fix storing global variable. Make script
variables work.
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/evalvars.c,
src/proto/evalvars.pro, src/testdir/test_vim9_script.vim,
src/misc1.c, src/proto/misc1.pro
Patch 8.2.0201
问题: Cannot assign to an imported variable.
解决方案: Make it work.
文件: src/evalvars.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.0202
问题: When 'lazyredraw' is set the window title may not be updated.
解决方案: Set "do_redraw" before entering the main loop. (Jason Franklin)
文件: src/main.c
Patch 8.2.0203
问题: :helptags and some other functionality not tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5567)
文件: src/testdir/test_compiler.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_excmd.vim, src/testdir/test_filechanged.vim,
src/testdir/test_help.vim, src/testdir/test_help_tagjump.vim,
src/testdir/test_timers.vim, src/testdir/test_window_cmd.vim
Patch 8.2.0204
问题: Crash when using winnr('j') in a popup window.
解决方案: Do not search for neighbors in a popup window. (closes #5568)
文件: src/window.c, src/testdir/test_popupwin.vim, src/evalwindow.c
Patch 8.2.0205
问题: Error code E899 used twice.
解决方案: Use E863 for the terminal in popup error.
文件: src/popupwin.c
Patch 8.2.0206
问题: Calling Vim9 function using default argument fails.
解决方案: Give an appropriate error. (closes #5572)
文件: src/testdir/test_vim9_script.vim, src/vim9compile.c,
src/vim9execute.c
Patch 8.2.0207
问题: Crash when missing member type on list argument.
解决方案: Check for invalid type. (closes #5572)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.0208
问题: Fnamemodify() does not apply ":~" when followed by ":.".
解决方案: Don't let a failing ":." cause the ":~" to be skipped. (Yasuhiro
Matsumoto, closes #5577)
文件: runtime/doc/cmdline.txt, src/filepath.c,
src/testdir/test_fnamemodify.vim
Patch 8.2.0209
问题: Function a bit far away from where it's used.
解决方案: Move function close to where it's used. (Ken Takata, closes #5569)
文件: src/fileio.c, src/filepath.c
Patch 8.2.0210
问题: Coverity complains about uninitialized field.
解决方案: Initialize the field.
文件: src/vim9compile.c
Patch 8.2.0211
问题: Test for ANSI colors fails without an "ls" command.
解决方案: Use "dir". (Ken Takata, closes #5582)
文件: src/testdir/test_functions.vim
Patch 8.2.0212
问题: Missing search/substitute pattern hardly tested.
解决方案: Add test_clear_search_pat() and tests. (Yegappan Lakshmanan,
closes #5579)
文件: runtime/doc/eval.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro,
src/proto/search.pro, src/proto/testing.pro, src/regexp.c,
src/search.c, src/testdir/test_quickfix.vim,
src/testdir/test_search.vim, src/testdir/test_sort.vim,
src/testdir/test_substitute.vim, src/testing.c
Patch 8.2.0213
问题: Configure does not recognize gcc 10.0 and later.
解决方案: Adjust the pattern matching the version number. (Sergei
Trofimovich, closes #5580)
文件: src/configure.ac, src/auto/configure
Patch 8.2.0214
问题: A popup window with a terminal can be made hidden.
解决方案: Disallow hiding a terminal popup.
文件: src/testdir/test_terminal.vim, src/popupwin.c,
src/testdir/dumps/Test_terminal_popup_4.dump
Patch 8.2.0215 (after 8.2.0208)
问题: Wrong file name shortening. (Ingo Karkat)
解决方案: Better check for path separator. (Yasuhiro Matsumoto,
closes #5583, closes #5584)
文件: src/filepath.c, src/testdir/test_fnamemodify.vim
Patch 8.2.0216
问题: Several Vim9 instructions are not tested.
解决方案: Add more tests. Fix :disassemble output. Make catch with pattern
work.
文件: src/testdir/test_vim9_script.vim, src/vim9execute.c,
src/vim9compile.c
Patch 8.2.0217 (after 8.2.0214)
问题: Terminal test fails on Mac.
解决方案: Add a short wait.
文件: src/testdir/test_terminal.vim
Patch 8.2.0218
问题: Several Vim9 instructions are not tested.
解决方案: Add more tests.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0219 (after 8.2.0217)
问题: Terminal test still fails on Mac.
解决方案: Skip part of the test on Mac.
文件: src/testdir/test_terminal.vim
Patch 8.2.0220
问题: Terminal test did pass on Mac.
解决方案: Remove the skip again.
文件: src/testdir/test_terminal.vim
Patch 8.2.0221
问题: No test for Vim9 += and ..=.
解决方案: Add tests.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0222
问题: Vim9: optional function arguments don't work yet.
解决方案: Implement optional function arguments.
文件: src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
src/structs.h, src/testdir/test_vim9_script.vim
Patch 8.2.0223
问题: Some instructions not yet tested.
解决方案: Disassemble more instructions. Move tests to a new file. Compile
call to s:function().
文件: src/testdir/test_vim9_script.vim, src/testdir/Make_all.mak,
src/testdir/test_vim9_disassemble.vim, src/vim9compile.c,
src/userfunc.c, src/proto/userfunc.pro, src/vim.h
Patch 8.2.0224
问题: compiling :elseif not tested yet.
解决方案: Add test for :elseif. Fix generating jumps.
文件: src/testdir/test_vim9_script.vim, src/vim9compile.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0225
问题: compiling lambda not tested yet.
解决方案: Add test for lambda and funcref. Drop unused instruction arg.
文件: src/testdir/test_vim9_disassemble.vim, src/vim9.h,
src/vim9execute.c
Patch 8.2.0226
问题: Compiling for loop not tested.
解决方案: Add a test. Make variable initialization work for more types.
文件: src/testdir/test_vim9_disassemble.vim, src/vim9compile.c
Patch 8.2.0227
问题: Compiling a few instructions not tested.
解决方案: Add more test cases.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.0228
问题: Configure does not recognize gcc version on BSD.
解决方案: Do not use "\+" in the pattern matching the version number. (Ozaki
Kiichi, closes #5590)
文件: src/configure.ac, src/auto/configure
Patch 8.2.0229
问题: Compare instructions not tested.
解决方案: Add test cases. Fix disassemble with line continuation.
文件: src/testdir/test_vim9_disassemble.vim, src/vim9execute.c,
src/vim9compile.c
Patch 8.2.0230
问题: Terminal popup test is flaky.
解决方案: Increase wait time a bit.
文件: src/testdir/test_terminal.vim
Patch 8.2.0231
问题: Silent system command may clear the screen.
解决方案: Do not clear the screen in t_te.
文件: src/term.c
Patch 8.2.0232
问题: The :compiler command causes a crash. (Daniel Steinberg)
解决方案: Do not use the script index if it isn't set.
文件: src/ex_docmd.c, src/testdir/test_compiler.vim
Patch 8.2.0233
问题: Crash when using garbagecollect() in between rand().
解决方案: Redesign the rand() and srand() implementation. (Yasuhiro
Matsumoto, closes #5587, closes #5588)
文件: src/evalfunc.c, src/testdir/test_random.vim,
runtime/doc/testing.txt, runtime/doc/eval.txt
Patch 8.2.0234
问题: Message test fails on SunOS.
解决方案: Adjust expectation for printf "%p". (Ozaki Kiichi, closes #5595)
文件: src/message_test.c
Patch 8.2.0235
问题: Draw error when an empty group is removed from 'statusline'.
解决方案: Do not use highlighting from a removed group.
文件: src/buffer.c, src/testdir/test_statusline.vim,
src/testdir/dumps/Test_statusline_1.dump
Patch 8.2.0236
问题: MS-Windows uninstall doesn't delete vimtutor.bat.
解决方案: Change directory before deletion. (Ken Takata, closes #5603)
文件: src/uninstall.c
Patch 8.2.0237
问题: Crash when setting 'wincolor' on finished terminal window.
(Bakudankun)
解决方案: Check that the vterm is not NULL. (Yasuhiro Matsumoto, closes
#5607, closes #5610)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.0238
问题: MS-Windows: job_stop() results in exit value zero.
解决方案: Call TerminateJobObject() with -1 instead of 0. (Yasuhiro
Matsumoto, closes #5150, closes #5614)
文件: src/os_win32.c, src/testdir/test_channel.vim
Patch 8.2.0239
问题: MS-Windows: 'env' job option does not override existing
environment variables. (Tim Pope)
解决方案: Set the environment variables later. (Yasuhiro Matsumoto,
closes #5485, closes #5608)
文件: src/os_win32.c, src/testdir/test_channel.vim
Patch 8.2.0240
问题: Using memory after it was freed. (Dominique Pellé)
解决方案: Do not mix conversion buffer with other buffer.
文件: src/viminfo.c, src/vim.h
Patch 8.2.0241
问题: Crash when setting 'buftype' to "quickfix".
解决方案: Check that error list is not NULL. (closes #5613)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.0242
问题: Preview popup window test fails with long directory name. (Jakub
Kądziołka)
解决方案: Use "silent cd". (closes #5615)
文件: src/testdir/test_popupwin.vim
Patch 8.2.0243
问题: Insufficient code coverage for ex_docmd.c functions.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5618)
文件: src/testdir/Make_all.mak, src/testdir/test_arglist.vim,
src/testdir/test_buffer.vim, src/testdir/test_cd.vim,
src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_excmd.vim, src/testdir/test_mapping.vim,
src/testdir/test_quickfix.vim, src/testdir/test_search.vim,
src/testdir/test_sort.vim, src/testdir/test_source.vim,
src/testdir/test_substitute.vim, src/testdir/test_undo.vim,
src/testdir/test_vimscript.vim, src/testdir/test_window_cmd.vim,
src/testdir/test_writefile.vim
Patch 8.2.0244
问题: Compiler warning in Lua interface.
解决方案: Add type cast. (Ken Takata, closes #5621)
文件: src/if_lua.c
Patch 8.2.0245
问题: MSVC: error message if the auto directory already exists.
解决方案: Add "if not exists". (Ken Takata, closes #5620)
文件: src/Make_mvc.mak
Patch 8.2.0246
问题: MSVC: deprecation warnings with Ruby.
解决方案: Move _CRT_SECURE_NO_DEPRECATE to build file. (Ken Takata,
closes #5622)
文件: src/Make_mvc.mak, src/if_ruby.c, src/os_win32.h, src/vim.h,
src/vimio.h
Patch 8.2.0247
问题: Misleading comment in NSIS installer script.
解决方案: Negate the meaning of the comment. (Ken Takata, closes #5627)
文件: nsis/gvim.nsi
Patch 8.2.0248
问题: MS-Windows: dealing with deprecation is too complicated.
解决方案: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build
file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken
Takata, closes #5626)
文件: src/Make_mvc.mak, src/dosinst.h, src/vim.h, src/vimio.h,
src/winclip.c, Filelist
Patch 8.2.0249
问题: MS-Windows: various warnings.
解决方案: Set the charset to utf-8. Add _WIN32_WINNT and _USING_V110_SDK71_.
(Ken Takata, closes #5625)
文件: src/GvimExt/Makefile, src/Make_mvc.mak
Patch 8.2.0250
问题: test_clear_search_pat() is unused.
解决方案: Remove the function. (Yegappan Lakshmanan, closes #5624)
文件: runtime/doc/eval.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro,
src/proto/search.pro, src/proto/testing.pro, src/regexp.c,
src/search.c, src/testdir/test_writefile.vim, src/testing.c
Patch 8.2.0251
问题: A couple of function return types can be more specific.
解决方案: Use a better return type. (Ken Takata, closes #5629)
文件: src/evalfunc.c, src/globals.h
Patch 8.2.0252
问题: Windows compiler warns for using size_t.
解决方案: Change to int. (Mike Williams)
文件: src/vim9compile.c
Patch 8.2.0253
问题: Crash when using :disassemble without argument. (Dhiraj Mishra)
解决方案: Check for missing argument. (Dominique Pellé, closes #5635,
closes #5637)
文件: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim,
src/ex_cmds.h
Patch 8.2.0254
问题: Compiler warning for checking size_t to be negative.
解决方案: Only check for zero. (Zoltan Arpadffy)
文件: src/vim9compile.c
Patch 8.2.0255
问题: VMS: missing files in build.
解决方案: Add the files. (Zoltan Arpadffy)
文件: src/Make_vms.mms
Patch 8.2.0256
问题: Time and timer related code is spread out.
解决方案: Move time and timer related code to a new file. (Yegappan
Lakshmanan, closes #5604)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/main.c,
src/memline.c, src/misc1.c, src/misc2.c, src/proto.h,
src/proto/ex_cmds.pro, src/proto/ex_cmds2.pro, src/proto/main.pro,
src/proto/memline.pro, src/proto/misc1.pro, src/proto/misc2.pro,
src/proto/time.pro, src/time.c
Patch 8.2.0257
问题: Cannot recognize a terminal in a popup window.
解决方案: Add the win_gettype() function.
文件: runtime/doc/eval.txt, src/evalfunc.c, src/evalwindow.c,
src/proto/evalwindow.pro, src/testdir/test_cmdline.vim,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_1.dump
Patch 8.2.0258
问题: ModifyOtherKeys cannot be temporarily disabled.
解决方案: Add echoraw() with an example for modifyOtherKeys.
文件: runtime/doc/eval.txt, src/evalfunc.c,
src/testdir/test_functions.vim,
src/testdir/dumps/Test_functions_echoraw.dump
Patch 8.2.0259
问题: Terminal in popup test sometimes fails.
解决方案: Clear the command line.
文件: src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_1.dump
Patch 8.2.0260
问题: Several lines of code are duplicated.
解决方案: Move duplicated code to a function. (Yegappan Lakshmanan,
closes #5330)
文件: src/option.c, src/os_unix.c, src/os_win32.c, src/proto/term.pro,
src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c,
src/term.c
Patch 8.2.0261
问题: Some code not covered by tests.
解决方案: Add test cases. (Yegappan Lakshmanan, closes #5645)
文件: src/testdir/test_buffer.vim, src/testdir/test_cmdline.vim,
src/testdir/test_exists.vim, src/testdir/test_filechanged.vim,
src/testdir/test_fileformat.vim, src/testdir/test_mapping.vim,
src/testdir/test_marks.vim, src/testdir/test_normal.vim,
src/testdir/test_plus_arg_edit.vim, src/testdir/test_quickfix.vim,
src/testdir/test_tabpage.vim, src/testdir/test_visual.vim,
src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim
Patch 8.2.0262 (after 8.2.0261)
问题: Fileformat test fails on MS-Windows.
解决方案: Set fileformat of buffer.
文件: src/testdir/test_fileformat.vim
Patch 8.2.0263
问题: A few new Vim9 messages are not localized.
解决方案: Add the gettext wrapper. (Dominique Pellé, closes #5647)
文件: src/vim9compile.c, src/vim9execute.c
Patch 8.2.0264 (after 8.2.0262)
问题: Fileformat test still fails on MS-Windows.
解决方案: Set fileformat of buffer in the right place.
文件: src/testdir/test_fileformat.vim
Patch 8.2.0265
问题: "eval" after "if 0" doesn't check for following command.
解决方案: Add "eval" to list of commands that check for a following command.
(closes #5640)
文件: src/ex_docmd.c, src/testdir/test_expr.vim
Patch 8.2.0266
问题: Terminal in popup test sometimes fails on Mac.
解决方案: Add a short delay.
文件: src/testdir/test_terminal.vim
Patch 8.2.0267
问题: No check for a following command when calling a function fails.
解决方案: Also check for a following command when inside a try block.
(closes #5642)
文件: src/userfunc.c, src/testdir/test_user_func.vim
Patch 8.2.0268 (after 8.2.0267)
问题: Trycatch test fails.
解决方案: When calling function fails only check for following command, do
not give another error.
文件: src/userfunc.c
Patch 8.2.0269
问题: Vim9: operator after list index does not work. (Yasuhiro
Matsumoto)
解决方案: After indexing a list change the type to the list member type.
(closes #5651)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0270
问题: Some code not covered by tests.
解决方案: Add test cases. (Yegappan Lakshmanan, closes #5649)
文件: src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim,
src/testdir/test_edit.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_excmd.vim, src/testdir/test_expand.vim,
src/testdir/test_filetype.vim, src/testdir/test_findfile.vim,
src/testdir/test_join.vim, src/testdir/test_move.vim,
src/testdir/test_normal.vim, src/testdir/test_registers.vim,
src/testdir/test_source.vim, src/testdir/test_tabpage.vim,
src/testdir/test_tagjump.vim, src/testdir/test_vimscript.vim,
src/testdir/test_visual.vim, src/testdir/test_window_cmd.vim,
src/testdir/test_writefile.vim
Patch 8.2.0271
问题: The "num64" feature is available everywhere and building without
it causes problems.
解决方案: Graduate the "num64" feature. (James McCoy, closes #5650)
文件: src/evalfunc.c, src/feature.h, src/message.c, src/structs.h,
src/testdir/test_expr.vim, src/testdir/test_largefile.vim,
src/testdir/test_sort.vim, src/testdir/test_vimscript.vim,
src/version.c
Patch 8.2.0272
问题: ":helptags ALL" gives error for directories without write
permission. (Matěj Cepl)
解决方案: Ignore errors for ":helptags ALL". (Ken Takata, closes #5026,
closes #5652)
文件: src/ex_cmds.c, src/testdir/test_help.vim
Patch 8.2.0273
问题: MS-Windows uninstall may delete wrong batch file.
解决方案: Add specific marker in the generated batch file. (Ken Takata,
closes #5654)
文件: src/Make_mvc.mak, src/dosinst.c, src/dosinst.h, src/uninstall.c
Patch 8.2.0274
问题: Hang with combination of feedkeys(), Ex mode and :global.
(Yegappan Lakshmanan)
解决方案: Add the pending_exmode_active flag.
文件: src/ex_docmd.c, src/globals.h, src/getchar.c,
src/testdir/test_ex_mode.vim
Patch 8.2.0275
问题: Some Ex code not covered by tests.
解决方案: Add test cases. (Yegappan Lakshmanan, closes #5659)
文件: src/testdir/test_arglist.vim, src/testdir/test_autocmd.vim,
src/testdir/test_excmd.vim, src/testdir/test_quickfix.vim,
src/testdir/test_search.vim, src/testdir/test_swap.vim,
src/testdir/test_window_cmd.vim
Patch 8.2.0276
问题: Vim9: not allowing space before ")" in function call is too
restrictive. (Ben Jackson)
解决方案: Skip space before the ")". Adjust other space checks.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0277
问题: Vim9: not all instructions covered by tests.
解决方案: Add more test cases.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.0278
问题: Channel test is flaky on Mac.
解决方案: Reset variable before sending message.
文件: src/testdir/test_channel.vim
Patch 8.2.0279
问题: Vim9: no test for deleted :def function.
解决方案: Add a test. Clear uf_cleared flag when redefining a function.
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.0280
问题: Vim9: throw in :def function not caught higher up.
解决方案: Set "need_rethrow".
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.0281
问题: Two placed signs in the same line are not combined. E.g. in the
terminal debugger a breakpoint and the PC cannot be both be
displayed.
解决方案: Combine the sign column and line highlight attributes.
文件: src/sign.c, src/testdir/test_signs.vim,
src/testdir/dumps/Test_sign_cursor_3.dump,
src/testdir/dumps/Test_sign_cursor_4.dump
Patch 8.2.0282
问题: Vim9: setting number option not tested.
解决方案: Add more tests. Fix assigning to global variable.
文件: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
src/vim9execute.c
Patch 8.2.0283
问题: Vim9: failing to load script var not tested.
解决方案: Add more tests. Fix using s: in old script.
文件: src/testdir/test_vim9_expr.vim, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0284
问题: Vim9: assignment test fails.
解决方案: Avoid duplicating "s:".
文件: src/vim9compile.c
Patch 8.2.0285
问题: Unused error message. Cannot create s:var.
解决方案: Remove the error message. Make assignment to s:var work.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0286
问题: Cannot use popup_close() for a terminal popup.
解决方案: Allow using popup_close(). (closes #5666)
文件: src/popupwin.c, runtime/doc/popup.txt,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_5.dump,
src/testdir/dumps/Test_terminal_popup_6.dump
Patch 8.2.0287
问题: Vim9: return in try block not tested; catch with pattern not
tested.
解决方案: Add tests. Make it work.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.0288
问题: Vim9: some float and blob operators not tested.
解决方案: Add float and blob tests. Fix addition.
文件: src/testdir/test_vim9_expr.vim, src/vim9compile.c
Patch 8.2.0289
问题: Vim9: :echo did not clear the rest of the line.
解决方案: Call msg_clr_eos(). (Ken Takata, closes #5668)
文件: src/vim9execute.c
Patch 8.2.0290
问题: Running individual test differs from all tests.
解决方案: Pass on environment variables. (Yee Cheng Chin, closes #5672)
文件: src/testdir/Makefile, src/testdir/README.txt
Patch 8.2.0291
问题: Vim9: assigning [] to list<string> doesn't work.
解决方案: Use void for empty list and dict. (Ken Takata, closes #5669)
文件: src/vim9compile.c, src/globals.h, src/testdir/test_vim9_script.vim
Patch 8.2.0292
问题: Vim9: CHECKNR and CHECKTYPE instructions not tested.
解决方案: Add tests.
文件: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
Patch 8.2.0293
问题: Various Ex commands not sufficiently tested.
解决方案: Add more test cases. (Yegappan Lakshmanan, closes #5673)
文件: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim,
src/testdir/test_ex_mode.vim, src/testdir/test_excmd.vim,
src/testdir/test_expand.vim, src/testdir/test_filetype.vim,
src/testdir/test_filter_cmd.vim, src/testdir/test_global.vim,
src/testdir/test_normal.vim, src/testdir/test_plus_arg_edit.vim,
src/testdir/test_quickfix.vim, src/testdir/test_trycatch.vim,
src/testdir/test_vimscript.vim
Patch 8.2.0294
问题: Cannot use Ex command that is also a function name.
解决方案: Recognize an Ex command by a colon prefix.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
runtime/doc/vim9.txt
Patch 8.2.0295
问题: Highlighting for :s wrong when using different separator.
解决方案: Use separate argument for search direction and separator. (Rob
Pilling, closes #5665)
文件: src/ex_docmd.c, src/ex_getln.c, src/gui.c, src/normal.c,
src/proto/search.pro, src/quickfix.c, src/search.c, src/spell.c,
src/tag.c, src/testdir/dumps/Test_incsearch_substitute_15.dump,
src/testdir/test_search.vim
Patch 8.2.0296
问题: Mixing up "long long" and __int64 may cause problems. (John
Marriott)
解决方案: Pass varnumber_T to vim_snprintf(). Add v:numbersize.
文件: src/message.c, src/eval.c, src/fileio.c, src/json.c, src/ops.c,
src/vim.h, src/structs.h, src/evalvars.c, runtime/doc/eval.txt,
runtime/doc/various.txt, src/testdir/test_eval_stuff.vim
Patch 8.2.0297
问题: Compiler warnings for the Ruby interface.
解决方案: Undefine a few macros, fix initialization. (Ozaki Kiichi,
closes #5677)
文件: src/if_ruby.c
Patch 8.2.0298
问题: Vim9 script: cannot start command with a string constant.
解决方案: Recognize expression starting with '('.
文件: src/ex_docmd.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim, runtime/doc/vim9.txt
Patch 8.2.0299
问题: Vim9: ISN_STORE with argument not tested. Some cases in tv2bool()
not tested.
解决方案: Add tests. Add test_unknown() and test_void().
文件: src/testing.c, src/proto/testing.pro, src/evalfunc.c,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, runtime/doc/eval.txt,
runtime/doc/testing.txt
Patch 8.2.0300
问题: Vim9: expression test fails without channel support.
解决方案: Add has('channel') check.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.0301
问题: Insufficient testing for exception handling and the "attention"
prompt.
解决方案: Add test cases. (Yegappan Lakshmanan, closes #5681)
文件: src/testdir/test_swap.vim, src/testdir/test_trycatch.vim
Patch 8.2.0302
问题: Setting 'term' may cause error in TermChanged autocommand.
解决方案: Use aucmd_prepbuf() to switch to the buffer where the autocommand
is to be executed. (closes #5682)
文件: src/term.c, src/testdir/test_autocmd.vim
Patch 8.2.0303
问题: TermChanged test fails in the GUI.
解决方案: Skip the test when running the GUI.
文件: src/testdir/test_autocmd.vim
Patch 8.2.0304
问题: Terminal test if failing on some systems.
解决方案: Wait for the job to finish. (James McCoy)
文件: src/testdir/test_terminal.vim
Patch 8.2.0305
问题: Relativenumber test fails on some systems. (James McCoy)
解决方案: Clear the command line.
文件: src/testdir/test_number.vim,
src/testdir/dumps/Test_relnr_colors_2.dump,
src/testdir/dumps/Test_relnr_colors_3.dump
Patch 8.2.0306
问题: Vim9: :substitute(pat(repl does not work in Vim9 script.
解决方案: Remember starting with a colon. (closes #5676)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.0307
问题: Python 3 vim.eval not well tested.
解决方案: Add a test. (Dominique Pellé, closes #5680)
文件: src/testdir/test_python3.vim
Patch 8.2.0308
问题: 'showbreak' does not work for a very long line. (John Little)
解决方案: Check whether 'briopt' contains "sbr". (Ken Takata, closes #5523,
closes #5684)
文件: src/drawline.c, src/testdir/test_breakindent.vim
Patch 8.2.0309
问题: Window-local values have confusing name.
解决方案: Rename w_p_bri* to w_briopt_*.
文件: src/structs.h, src/indent.c, src/drawline.c
Patch 8.2.0310
问题: Autocmd test fails on a slow system.
解决方案: Adjust the expectations. (James McCoy, closes #5685)
文件: src/testdir/test_autocmd.vim
Patch 8.2.0311
问题: Vim9: insufficient script tests.
解决方案: Add tests. Free imports when re-using a script.
文件: src/testdir/test_vim9_script.vim, src/scriptfile.c
Patch 8.2.0312
问题: Vim9: insufficient script tests.
解决方案: Add more tests. Make "import * as Name" work.
文件: src/testdir/test_vim9_script.vim, src/vim9script.c,
src/proto/vim9script.pro, src/vim9compile.c
Patch 8.2.0313
问题: Vim9: insufficient script tests.
解决方案: Add tests. Make import of alphanumeric name work.
文件: src/testdir/test_vim9_script.vim, src/vim9script.c
Patch 8.2.0314
问题: Short name not set for terminal buffer.
解决方案: Set the short name. (closes #5687)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.0315
问题: Build failure on HP-UX system.
解决方案: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch
statement. (John Marriott)
文件: src/structs.h, src/json.c
Patch 8.2.0316
问题: ex_getln.c code has insufficient test coverage.
解决方案: Add more tests. Fix a problem. (Yegappan Lakshmanan, closes #5693)
文件: src/cmdhist.c, src/testdir/test_cmdline.vim,
src/testdir/test_functions.vim, src/testdir/test_history.vim,
src/testdir/test_menu.vim
Patch 8.2.0317
问题: MSVC: _CRT_SECURE_NO_DEPRECATE not defined on DEBUG build.
解决方案: Move where CFLAGS is updated. (Ken Takata, closes #5692)
文件: src/Make_mvc.mak
Patch 8.2.0318
问题: Vim9: types not sufficiently tested.
解决方案: Add tests with more types.
文件: src/globals.h, src/vim9compile.c,
src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.0319
问题: File missing in distribution, comments outdated.
解决方案: Correct path of README file. Update comments.
文件: Filelist, src/evalvars.c, src/register.c, src/if_python3.c
Patch 8.2.0320
问题: No Haiku support.
解决方案: Add support for Haiku. (Emir Sarı, closes #5605)
文件: Filelist, runtime/doc/Makefile, runtime/doc/eval.txt,
runtime/doc/gui.txt, runtime/doc/help.txt,
runtime/doc/options.txt, runtime/doc/os_haiku.txt,
runtime/doc/starting.txt, runtime/doc/tags,
runtime/gvimrc_example.vim, runtime/vimrc_example.vim,
src/INSTALL, src/Makefile, src/auto/configure, src/configure.ac,
src/evalfunc.c, src/feature.h, src/fileio.c, src/globals.h,
src/gui.c, src/gui.h, src/gui_haiku.cc, src/gui_haiku.h,
src/mbyte.c, src/menu.c, src/misc1.c, src/mouse.c, src/option.h,
src/os_haiku.h, src/os_haiku.rdef, src/os_unix.c, src/os_unix.h,
src/osdef1.h.in, src/proto.h, src/proto/gui_haiku.pro, src/pty.c,
src/screen.c, src/structs.h, src/term.c, src/version.c, src/vim.h
Patch 8.2.0321
问题: Vim9: ":execute" does not work yet.
解决方案: Add ISN_EXECUTE. (closes #5699) Also make :echo work with more
than one argument.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0322
问题: Vim9: error checks not tested.
解决方案: Add more test cases. Avoid error for function loaded later.
文件: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.0323
问题: Vim9: calling a function that is defined later is slow.
解决方案: Once the function is found update the instruction so it can be
called directly.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0324
问题: Text property not updated correctly when inserting/deleting.
解决方案: Use the right column when deleting. Make zero-width text
properties respect start_incl and end_incl. (Axel Forsman,
closes #5696, closes #5679)
文件: src/change.c, src/textprop.c, src/testdir/test_listener.vim,
src/testdir/test_textprop.vim
Patch 8.2.0325
问题: Ex_getln.c code not covered by tests.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #5702)
文件: src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_functions.vim, src/testdir/test_history.vim,
src/testdir/test_options.vim
Patch 8.2.0326
问题: Compiler warning for using uninitialized variable. (Yegappan
Lakshmanan)
解决方案: Do not jump to failed but return.
文件: src/vim9execute.c
Patch 8.2.0327
问题: Crash when opening and closing two popup terminal windows.
解决方案: Check that prevwin is valid. (closes #5707)
文件: src/popupwin.c, src/testdir/test_terminal.vim
Patch 8.2.0328
问题: No redraw when leaving terminal-normal mode in a terminal popup
window.
解决方案: Redraw the popup window. (closes #5708)
文件: src/macros.h, src/vim.h, src/terminal.c, src/drawscreen.c,
src/move.c, src/popupwin.c, src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_7.dump,
src/testdir/dumps/Test_terminal_popup_8.dump
Patch 8.2.0329
问题: Popup filter converts 0x80 bytes.
解决方案: Keep 0x80 bytes as-is. (Ozaki Kiichi, closes #5706)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.0330
问题: Build error with popup window but without terminal.
解决方案: Add #ifdef.
文件: src/popupwin.c
Patch 8.2.0331
问题: Internal error when using test_void() and test_unknown().
(Dominique Pellé)
解决方案: Give a normal error.
文件: src/evalfunc.c, src/testdir/test_functions.vim,
src/testdir/test_vimscript.vim
Patch 8.2.0332
问题: Some code in ex_getln.c not covered by tests.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #5710)
文件: src/testdir/test_arabic.vim, src/testdir/test_cmdline.vim
Patch 8.2.0333
问题: Terminal in popup test is flaky.
解决方案: Make sure redraw is done before opening the popup.
文件: src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_1.dump
Patch 8.2.0334
问题: Abort called when using test_void(). (Dominique Pellé)
解决方案: Only give an error, don't abort.
文件: src/message.c, src/proto/message.pro, src/evalfunc.c,
src/eval.c, src/json.c, src/testdir/test_functions.vim
Patch 8.2.0335
问题: No completion for :disassemble.
解决方案: Make completion work. Also complete script-local functions if the
name starts with "s:".
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim,
runtime/doc/vim9.txt
Patch 8.2.0336
问题: Vim9: insufficient test coverage for compiling.
解决方案: Add more tests.
文件: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
src/vim9.h, src/vim9compile.c, src/vim9execute.c
Patch 8.2.0337
问题: Build fails on a few systems.
解决方案: Use vim_snprintf() instead of snprintf().
文件: src/cmdexpand.c
Patch 8.2.0338
问题: Build failure without the channel feature.
解决方案: Add #ifdef
文件: src/vim9compile.c
Patch 8.2.0339
问题: Vim9: function return type may depend on arguments.
解决方案: Instead of a fixed return type use a function to figure out the
return type.
文件: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
src/evalbuffer.c, src/proto/evalbuffer.pro,
src/testdir/test_vim9_script.vim
Patch 8.2.0340
问题: Vim9: function and partial types not tested.
解决方案: Support more for partial, add tests.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0341
问题: Using ":for" in Vim9 script gives an error.
解决方案: Pass the LET_NO_COMMAND flag. (closes #5715)
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.0342
问题: Some code in ex_getln.c not covered by tests.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5717)
文件: src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_history.vim, src/testdir/test_iminsert.vim
Patch 8.2.0343
问题: Vim9: using wrong instruction, limited test coverage.
解决方案: Use ISN_PUSHJOB. Add a few more tests.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0344
问题: ":def" not skipped properly.
解决方案: Add CMD_def to list of commands the require evaluation even when
not being executed.
文件: src/ex_docmd.c
Patch 8.2.0345
问题: Compiler warning when building without the float feature.
解决方案: Add #ifdef. (John Marriott)
文件: src/evalfunc.c
Patch 8.2.0346
问题: Vim9: finding common list type not tested.
解决方案: Add more tests. Fix listing function. Fix overwriting type.
文件: src/vim9compile.c, src/userfunc.c,
src/testdir/test_vim9_script.vim, src/testdir/runtest.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0347
问题: Various code not covered by tests.
解决方案: Add more test coverage. (Yegappan Lakshmanan, closes #5720)
文件: src/testdir/gen_opt_test.vim, src/testdir/test86.in,
src/testdir/test_cmdline.vim, src/testdir/test_digraph.vim,
src/testdir/test_ex_mode.vim, src/testdir/test_history.vim
Patch 8.2.0348
问题: Vim9: not all code tested.
解决方案: Add a few more tests. fix using "b:" in literal dictionary.
文件: src/testdir/test_vim9_expr.vim, src/vim9compile.c,
src/proto/vim9compile.pro, src/testdir/test_vim9_script.vim
Patch 8.2.0349
问题: Vim9: constant expression not well tested.
解决方案: Add tests for "if" with constant expression.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0350
问题: Vim9: expression tests don't use recognized constants.
解决方案: Recognize "true" and "false" as constants. Make skipping work for
assignment and expression evaluation.
文件: src/vim9compile.c
Patch 8.2.0351
问题: Terminal in popup test is still a bit flaky.
解决方案: Clear and redraw before opening the popup.
文件: src/testdir/test_terminal.vim
Patch 8.2.0352
问题: FreeBSD: test for sourcing utf-8 is skipped.
解决方案: Run the matchadd_conceal test separately to avoid that setting
'term' to "ansi" causes problems for other tests. (Ozaki Kiichi,
closes #5721)
文件: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.vim,
src/testdir/test_source_utf8.vim
Patch 8.2.0353
问题: Vim9: while loop not tested.
解决方案: Add test with "while", "break" and "continue"
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0354
问题: Python 3.9 does not define _Py_DEC_REFTOTAL. (Zdenek Dohnal)
解决方案: Remove it, it was only for debugging.
文件: src/if_python3.c
Patch 8.2.0355
问题: Vim9: str_val is confusing, it's a number
解决方案: Rename to stnr_val.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c
Patch 8.2.0356
问题: MS-Windows: feedkeys() with VIMDLL cannot handle CSI correctly.
解决方案: Modify mch_inchar() to encode CSI bytes. (Ozaki Kiichi, Ken
Takata, closes #5726)
文件: src/getchar.c, src/os_win32.c, src/testdir/test_popupwin.vim
Patch 8.2.0357
问题: Cannot delete a text property matching both id and type. (Axel
Forsman)
解决方案: Add the "both" argument.
文件: src/textprop.c, runtime/doc/textprop.txt,
src/testdir/test_textprop.vim
Patch 8.2.0358
问题: Insufficient testing for indent.c.
解决方案: Add indent tests. (Yegappan Lakshmanan, closes #5736)
文件: src/testdir/Make_all.mak, src/testdir/test_ex_mode.vim,
src/testdir/test_expand_func.vim, src/testdir/test_indent.vim,
src/testdir/test_lispwords.vim, src/testdir/test_smartindent.vim,
src/testdir/test_vartabs.vim
Patch 8.2.0359
问题: popup_atcursor() may hang. (Yasuhiro Matsumoto)
解决方案: Take the decoration into account. (closes #5728)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.0360
问题: Yaml files are only recognized by the file extension.
解决方案: Check for a line starting with "%YAML". (Jason Franklin)
文件: runtime/scripts.vim, src/testdir/test_filetype.vim
Patch 8.2.0361
问题: Internal error when using "0" for a callback.
解决方案: Give a normal error. (closes #5743)
文件: src/evalvars.c, src/testdir/test_timers.vim
Patch 8.2.0362
问题: MS-Windows: channel test fails if grep is not available.
解决方案: Use another command. (Ken Takata, closes #5739)
文件: src/testdir/test_channel.vim
Patch 8.2.0363
问题: Some Normal mode commands not tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5746)
文件: src/testdir/test_cindent.vim, src/testdir/test_cmdline.vim,
src/testdir/test_edit.vim, src/testdir/test_indent.vim,
src/testdir/test_normal.vim, src/testdir/test_prompt_buffer.vim,
src/testdir/test_virtualedit.vim, src/testdir/test_visual.vim
Patch 8.2.0364
问题: Printf test failing on Haiku.
解决方案: Make a difference between int and short. (Dominique Pellé,
closes #5749)
文件: src/message.c
Patch 8.2.0365
问题: Tag kind can't be a multibyte character. (Marcin Szamotulski)
解决方案: Recognize multibyte character. (closes #5724)
文件: src/tag.c, src/testdir/test_taglist.vim
Patch 8.2.0366
问题: Hardcopy command not tested enough.
解决方案: Add tests for printing. (Dominique Pellé, closes #5748)
文件: src/testdir/test_hardcopy.vim
Patch 8.2.0367
问题: Can use :pedit in a popup window.
解决方案: Disallow it.
文件: src/ex_docmd.c, src/testdir/test_popupwin.vim
Patch 8.2.0368
问题: Vim9: import that redefines local variable does not fail.
解决方案: Check for already defined symbols.
文件: src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c,
src/proto/vim9compile.pro, src/testdir/test_vim9_script.vim
Patch 8.2.0369
问题: Various Normal mode commands not fully tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5751)
文件: src/testdir/test_arglist.vim, src/testdir/test_changelist.vim,
src/testdir/test_charsearch.vim, src/testdir/test_cmdline.vim,
src/testdir/test_edit.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_excmd.vim, src/testdir/test_gf.vim,
src/testdir/test_iminsert.vim, src/testdir/test_increment.vim,
src/testdir/test_marks.vim, src/testdir/test_normal.vim,
src/testdir/test_prompt_buffer.vim, src/testdir/test_put.vim,
src/testdir/test_registers.vim, src/testdir/test_tagjump.vim,
src/testdir/test_visual.vim
Patch 8.2.0370
问题: The typebuf_was_filled flag is sometimes not reset, which may
cause a hang.
解决方案: Make sure typebuf_was_filled is reset when the typeahead buffer is
empty.
文件: src/edit.c, src/getchar.c,
Patch 8.2.0371
问题: Crash with combination of terminal popup and autocmd.
解决方案: Disallow closing a popup that is the current window. Add a check
that the current buffer is valid. (closes #5754)
文件: src/macros.h, src/buffer.c, src/popupwin.c, src/terminal.c,
src/testdir/test_terminal.vim
Patch 8.2.0372
问题: Prop_find() may not find text property at start of the line.
解决方案: Adjust the loop to find properties. (Axel Forsman, closes #5761,
closes #5663)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.0373
问题: Type of term_sendkeys() is unknown.
解决方案: Just return zero. (closes #5762)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.0374
问题: Using wrong printf directive for jump location.
解决方案: Change "%lld" to "%d". (James McCoy, closes #5773)
文件: src/vim9execute.c
Patch 8.2.0375
问题: Coverity warning for not using return value.
解决方案: Move error message to separate function.
文件: src/popupwin.c
Patch 8.2.0376
问题: Nasty callback test fails on some systems.
解决方案: Increase the sleep time.
文件: src/testdir/test_terminal.vim
Patch 8.2.0377
问题: No CI test for a big-endian system.
解决方案: Test with s390x. (James McCoy, closes #5772)
文件: .travis.yml
Patch 8.2.0378
问题: prop_find() does not find all props.
解决方案: Check being in the start line. (Axel Forsman, closes #5776)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.0379
问题: Gcc warns for ambiguous else.
解决方案: Add braces. (Dominique Pellé, closes #5778)
文件: src/textprop.c
Patch 8.2.0380
问题: Tiny popup when creating a terminal popup without minwidth.
解决方案: Use a default minimum size of 5 lines of 20 characters.
文件: src/popupwin.c, src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_m1.dump
Patch 8.2.0381
问题: Using freed memory with :lvimgrep and autocommand. (extracted from
POC by Dominique Pellé)
解决方案: Avoid deleting a dummy buffer used in a window. (closes #5777)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.0382
问题: Some tests fail when run under valgrind.
解决方案: Increase timeouts.
文件: src/testdir/test_autocmd.vim, src/testdir/test_debugger.vim,
src/testdir/test_channel.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_popup_1.dump,
src/testdir/dumps/Test_terminal_popup_2.dump,
src/testdir/dumps/Test_terminal_popup_3.dump,
src/testdir/dumps/Test_terminal_popup_5.dump,
src/testdir/dumps/Test_terminal_popup_6.dump,
src/testdir/dumps/Test_terminal_popup_7.dump,
src/testdir/dumps/Test_terminal_popup_8.dump,
src/testdir/dumps/Test_terminal_popup_m1.dump
Patch 8.2.0383
问题: Wrong feature check causes test not to be run.
解决方案: Use CheckFunction instead of CheckFeature. (Ozaki Kiichi,
closes #5781)
文件: src/testdir/test_channel.vim
Patch 8.2.0384
问题: Travis CI has warnings.
解决方案: Avoid warnings, clean up the config. (Ozaki Kiichi, closes #5779)
文件: .travis.yml
Patch 8.2.0385
问题: Menu functionality insufficiently tested.
解决方案: Add tests. Add menu_info(). (Yegappan Lakshmanan, closes #5760)
文件: runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/usr_41.txt,
src/evalfunc.c, src/menu.c, src/proto/menu.pro,
src/testdir/test_menu.vim, src/testdir/test_popup.vim,
src/testdir/test_termcodes.vim
Patch 8.2.0386 (after 8.2.0385)
问题: Part from unfinished patch got included.
解决方案: Undo that part.
文件: src/evalfunc.c
Patch 8.2.0387
问题: Error for possible NULL argument to qsort().
解决方案: Don't call qsort() when there is nothing to sort. (Dominique
Pellé, closes #5780)
文件: src/spellsuggest.c
Patch 8.2.0388
问题: Printmbcharset option not tested.
解决方案: Add a test. Enable PostScript for AppVeyor build. (Dominique
Pellé, closes #5783)
文件: appveyor.yml, src/testdir/test_hardcopy.vim
Patch 8.2.0389
问题: Delayed redraw when shifting text from Insert mode.
解决方案: Use msg_attr_keep() instead of msg(). (closes #5782)
文件: src/ops.c
Patch 8.2.0390
问题: Terminal postponed scrollback test is flaky.
解决方案: Add delay in between sending keys. Rename dump files.
文件: src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_01.dump,
src/testdir/dumps/Test_terminal_02.dump,
src/testdir/dumps/Test_terminal_03.dump,
src/testdir/dumps/Test_terminal_scrollback_1.dump,
src/testdir/dumps/Test_terminal_scrollback_2.dump,
src/testdir/dumps/Test_terminal_scrollback_3.dump
Patch 8.2.0391 (after 8.2.0377)
问题: CI test coverage dropped.
解决方案: Set $DISPLAY also for non-GUI builds. (James McCoy, closes #5788)
文件: .travis.yml
Patch 8.2.0392
问题: Coverity warns for using array index out of range.
解决方案: Add extra "if" to avoid warning.
文件: src/menu.c
Patch 8.2.0393
问题: Coverity warns for not using return value.
解决方案: Add (void).
文件: src/popupmenu.c
Patch 8.2.0394
问题: Coverity complains about using NULL pointer.
解决方案: Use empty string when option value is NULL.
文件: src/optionstr.c
Patch 8.2.0395
问题: Build fails with FEAT_EVAL but without FEAT_MENU.
解决方案: Add #ifdef. (John Marriott)
文件: src/evalfunc.c
Patch 8.2.0396
问题: Cmdexpand.c insufficiently tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5789)
文件: src/testdir/test_cmdline.vim, src/testdir/test_taglist.vim,
src/testdir/test_terminal.vim, src/testdir/test_usercommands.vim
Patch 8.2.0397
问题: Delayed screen update when using undo from Insert mode.
解决方案: Update w_topline and cursor shape before sleeping. (closes #5790)
文件: src/normal.c
Patch 8.2.0398
问题: Profile test fails when two functions take same time.
解决方案: Add a short sleep in once function. (closes #5797)
文件: src/testdir/test_profile.vim
Patch 8.2.0399
问题: Various memory leaks.
解决方案: Avoid the leaks. (Ozaki Kiichi, closes #5803)
文件: src/ex_docmd.c, src/ex_getln.c, src/menu.c, src/message.c,
src/scriptfile.c, src/userfunc.c
Patch 8.2.0400
问题: Not all tests using a terminal are in the list of flaky tests.
解决方案: Introduce the test_is_flaky flag.
文件: src/testdir/runtest.vim, src/testdir/term_util.vim,
src/testdir/screendump.vim, src/testdir/test_autocmd.vim
Patch 8.2.0401
问题: Not enough test coverage for evalvars.c.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5804)
文件: src/testdir/test_cmdline.vim, src/testdir/test_const.vim,
src/testdir/test_diffmode.vim, src/testdir/test_excmd.vim,
src/testdir/test_functions.vim, src/testdir/test_let.vim,
src/testdir/test_listdict.vim, src/testdir/test_spell.vim,
src/testdir/test_unlet.vim, src/testdir/test_user_func.vim,
src/testdir/test_vimscript.vim
Patch 8.2.0402 (after 8.2.0401)
问题: Setting local instead of global flag.
解决方案: Prepend "g:" to "test_is_flaky".
文件: src/testdir/term_util.vim, src/testdir/screendump.vim,
src/testdir/test_autocmd.vim
Patch 8.2.0403
问题: When 'buftype' is "nofile" there is no overwrite check.
解决方案: Also check for existing file when 'buftype' is set.
(closes #5807)
文件: src/ex_cmds.c, src/testdir/test_options.vim
Patch 8.2.0404
问题: Writefile() error does not give a hint.
解决方案: Add remark about first argument.
文件: src/filepath.c, src/testdir/test_writefile.vim
Patch 8.2.0405
问题: MSVC: build fails with some combination of features.
解决方案: Enable CHANNEL if TERMINAL is enabled. (Mike Williams)
文件: src/Make_mvc.mak
Patch 8.2.0406
问题: FileReadCmd event not well tested.
解决方案: Add a test.
文件: src/testdir/test_autocmd.vim
Patch 8.2.0407
问题: No early check if :find and :sfind have an argument.
解决方案: Add EX_NEEDARG.
文件: src/ex_cmds.h, src/testdir/test_findfile.vim,
src/testdir/test_find_complete.vim
Patch 8.2.0408
问题: Delete() commented out for testing.
解决方案: Undo commenting-out.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.0409
问题: Search test leaves file behind.
解决方案: Delete the file. Also use Check commands.
文件: src/testdir/test_search.vim
Patch 8.2.0410
问题: Channel test fails too often on slow Mac.
解决方案: Increase waiting time to 10 seconds.
文件: src/testdir/test_channel.vim
Patch 8.2.0411
问题: Mac: breakcheck is using a value from the stone ages.
解决方案: Delete BREAKCHECK_SKIP from the Mac header file. (Ben Jackson)
文件: src/os_mac.h
Patch 8.2.0412
问题: MS-Windows: cannot use vimtutor from the start menu.
解决方案: Better check for writable directory. Use the right path for the
executable. (Wu Yongwei, closes #5774, closes #5756)
文件: vimtutor.bat
Patch 8.2.0413
问题: Buffer menu does not handle special buffers properly.
解决方案: Keep a dictionary with buffer names to reliably keep track of
entries.
Also trigger BufFilePre and BufFilePost for command-line and
terminal buffers when the name changes.
文件: src/testdir/test_alot.vim, src/testdir/Make_all.mak,
runtime/menu.vim, src/ex_getln.c, src/terminal.c,
src/testdir/test_menu.vim
Patch 8.2.0414
问题: Channel connect_waittime() test is flaky.
解决方案: Set the test_is_flaky flag. Use test_is_flaky for more tests.
文件: src/testdir/test_channel.vim, src/testdir/test_terminal.vim,
src/testdir/runtest.vim
Patch 8.2.0415
问题: Bsdl filetype is not detected.
解决方案: Add an entry in the filetype list. (Daniel Kho, closes #5810)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0416
问题: Test leaves file behind.
解决方案: Delete the file.
文件: src/testdir/test_indent.vim
Patch 8.2.0417
问题: Travis CI config can be improved.
解决方案: Remove COVERAGE variable. Add load-snd-dummy script. add "-i NONE"
to avoid messages about viminfo. (Ozaki Kiichi, closes #5813)
文件: .travis.yml, ci/load-snd-dummy.sh
Patch 8.2.0418
问题: Code in eval.c not sufficiently covered by tests.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5815)
文件: src/testdir/test_blob.vim, src/testdir/test_channel.vim,
src/testdir/test_cmdline.vim, src/testdir/test_eval_stuff.vim,
src/testdir/test_expr.vim, src/testdir/test_functions.vim,
src/testdir/test_job_fails.vim, src/testdir/test_lambda.vim,
src/testdir/test_let.vim, src/testdir/test_listdict.vim,
src/testdir/test_marks.vim, src/testdir/test_method.vim,
src/testdir/test_normal.vim, src/testdir/test_unlet.vim,
src/testdir/test_usercommands.vim, src/testdir/test_vimscript.vim,
src/testdir/test_window_cmd.vim
Patch 8.2.0419
问题: Various memory leaks in Vim9 script code.
解决方案: Fix the leaks. (Ozaki Kiichi, closes #5814)
文件: src/proto/vim9compile.pro, src/scriptfile.c, src/structs.h,
src/testdir/test_vim9_script.vim, src/vim9.h, src/vim9compile.c,
src/vim9execute.c, src/vim9script.c
Patch 8.2.0420
问题: Vim9: cannot interrupt a loop with CTRL-C.
解决方案: Check for CTRL-C once in a while. Doesn't fully work yet.
文件: src/misc1.c, src/proto/misc1.pro,
src/testdir/test_vim9_script.vim
Patch 8.2.0421
问题: Interrupting with CTRL-C does not always work.
解决方案: Recognize CTRL-C while modifyOtherKeys is set.
文件: src/ui.c, src/testdir/test_vim9_script.vim, src/evalfunc.c
Patch 8.2.0422
问题: Crash when passing popup window to win_splitmove(). (john Devin)
解决方案: Disallow moving a popup window. (closes #5816)
文件: src/testdir/test_popupwin.vim, src/evalwindow.c
Patch 8.2.0423
问题: In some environments a few tests are expected to fail.
解决方案: Add $TEST_MAY_FAIL to list tests that should not cause make to
fail.
文件: src/testdir/runtest.vim
Patch 8.2.0424
问题: Checking for wrong return value. (Tom)
解决方案: Invert the check and fix the test.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.0425
问题: Code for modeless selection not sufficiently tested.
解决方案: Add tests. Move mouse code functionality to a common script file.
(Yegappan Lakshmanan, closes #5821)
文件: src/testdir/Make_all.mak, src/testdir/gen_opt_test.vim,
src/testdir/mouse.vim, src/testdir/test_edit.vim,
src/testdir/test_global.vim, src/testdir/test_modeless.vim,
src/testdir/test_normal.vim, src/testdir/test_selectmode.vim,
src/testdir/test_termcodes.vim, src/testdir/test_visual.vim,
src/ui.c
Patch 8.2.0426
问题: Some errors were not tested for.
解决方案: Add tests. (Dominique Pellé, closes #5824)
文件: src/testdir/test_buffer.vim, src/testdir/test_options.vim,
src/testdir/test_tcl.vim, src/testdir/test_terminal.vim,
src/testdir/test_window_cmd.vim
Patch 8.2.0427
问题: It is not possible to check for a typo in a feature name.
解决方案: Add an extra argument to has().
文件: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/check.vim,
src/testdir/test_functions.vim
Patch 8.2.0428
问题: Buffer name may leak.
解决方案: Free the buffer name before overwriting it.
文件: src/terminal.c
Patch 8.2.0429
问题: No warning when test checks for option that never exists.
解决方案: In tests check that the option can exist.
文件: src/testdir/check.vim
Patch 8.2.0430
问题: Window creation failure not properly tested.
解决方案: Improve the test. (Yegappan Lakshmanan, closes #5826)
文件: src/testdir/test_cmdline.vim, src/testdir/test_window_cmd.vim
Patch 8.2.0431
问题: Some compilers don't support using \e for Esc. (Yegappan
Lakshmanan)
解决方案: use \033 instead.
文件: src/ui.c
Patch 8.2.0432
问题: A few tests fail in a huge terminal.
解决方案: Make the tests pass. (Dominique Pellé, closes #5829)
文件: src/testdir/test_autocmd.vim, src/testdir/test_options.vim,
src/testdir/test_termcodes.vim, src/testdir/test_terminal.vim,
src/testdir/test_window_cmd.vim
Patch 8.2.0433
问题: INT signal not properly tested.
解决方案: Add a test. Also clean up some unnecessary lines. (Dominique
Pellé, closes #5828)
文件: src/testdir/test_display.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_excmd.vim, src/testdir/test_messages.vim,
src/testdir/test_signals.vim
Patch 8.2.0434
问题: MS-Windows with VTP: Normal color not working.
解决方案: After changing the Normal color update the VTP console color.
(Nobuhiro Takasaki, closes #5836)
文件: src/highlight.c
Patch 8.2.0435
问题: Channel contents might be freed twice.
解决方案: Call either channel_free_channel() or channel_free(), not both.
(Nobuhiro Takasaki, closes #5835)
文件: src/channel.c
Patch 8.2.0436
问题: No warnings for incorrect printf arguments.
解决方案: Fix attribute in declaration. Fix uncovered mistakes. (Dominique
Pellé, closes #5834)
文件: src/proto.h, src/eval.c, src/ops.c, src/spellfile.c,
src/vim9compile.c, src/vim9execute.c, src/viminfo.c, src/gui.c
Patch 8.2.0437
问题: MS-Windows installer contains old stuff.
解决方案: Rely on Windows NT. (Ken Takata, closes #5832)
文件: src/dosinst.c
Patch 8.2.0438
问题: Terminal noblock test is very flaky on BSD.
解决方案: Change WaitFor() to WaitForAssert() to be able to see why it
failed. Add a short wait in between sending keys.
文件: src/testdir/test_terminal.vim
Patch 8.2.0439
问题: :disassemble has minor flaws.
解决方案: Format the code. Use (int) instead of (char) for %c.
(also by James McCoy, closes #5831)
文件: src/vim9execute.c
Patch 8.2.0440
问题: Terminal noblock test is still very flaky on BSD.
解决方案: Increase the waiting time.
文件: src/testdir/test_terminal.vim
Patch 8.2.0441
问题: Terminal noblock test is still failing on BSD.
解决方案: Reduce the amount of text.
文件: src/testdir/test_terminal.vim
Patch 8.2.0442
问题: Channel contents might be used after being freed.
解决方案: Reset the job channel before freeing the channel.
文件: src/channel.c
Patch 8.2.0443
问题: Clipboard code is spread out.
解决方案: Move clipboard code to its own file. (Yegappan Lakshmanan,
closes #5827)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/clipboard.c, src/ops.c, src/proto.h, src/proto/clipboard.pro,
src/proto/ops.pro, src/proto/register.pro, src/proto/ui.pro,
src/register.c, src/ui.c
Patch 8.2.0444
问题: Swap file test fails on some systems.
解决方案: Preserve the swap file. Send NL terminated keys.
文件: src/testdir/test_swap.vim
Patch 8.2.0445
问题: Png and xpm files not in MS-Windows zip file.
解决方案: Move files to shared between Unix and Windows target.
文件: Filelist
Patch 8.2.0446
问题: Listener with undo of deleting all lines not tested.
解决方案: Add a test.
文件: src/testdir/test_listener.vim
Patch 8.2.0447
问题: Terminal scroll tests fails on some systems.
解决方案: Remove the fixed 100msec wait for Win32. Add a loop to wait until
scrolling has finished. (James McCoy, closes #5842)
文件: src/testdir/test_terminal.vim
Patch 8.2.0448
问题: Various functions not properly tested.
解决方案: Add more tests, especially for failures. (Yegappan Lakshmanan,
closes #5843)
文件: runtime/doc/eval.txt, src/testdir/test_blob.vim,
src/testdir/test_breakindent.vim, src/testdir/test_charsearch.vim,
src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim,
src/testdir/test_exists.vim, src/testdir/test_expand_func.vim,
src/testdir/test_expr.vim, src/testdir/test_file_perm.vim,
src/testdir/test_functions.vim, src/testdir/test_gui.vim,
src/testdir/test_listdict.vim, src/testdir/test_marks.vim,
src/testdir/test_partial.vim, src/testdir/test_registers.vim,
src/testdir/test_search.vim, src/testdir/test_spell.vim,
src/testdir/test_substitute.vim, src/testdir/test_syn_attr.vim,
src/testdir/test_syntax.vim, src/testdir/test_taglist.vim,
src/testdir/test_utf8.vim, src/testdir/test_vartabs.vim,
src/testdir/test_window_cmd.vim
Patch 8.2.0449
问题: Vim9: crash if return type is invalid. (Yegappan Lakshmanan)
解决方案: Always return some type, not NULL.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0450
问题: Not enough testing for restricted mode and function calls.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5847)
文件: src/testdir/test_method.vim, src/testdir/test_restricted.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0451
问题: Win32: double-width character displayed incorrectly.
解决方案: First move the cursor to the first column. (Nobuhiro Takasaki,
closes #5848)
文件: src/os_win32.c
Patch 8.2.0452
问题: channel_parse_messages() fails when called recursively.
解决方案: Return for a recursive call. (closes #5835)
文件: src/channel.c
Patch 8.2.0453
问题: Trailing space in job_start() command causes empty argument.
解决方案: Ignore trailing space. (closes #5851)
文件: src/misc2.c, src/testdir/test_channel.vim
Patch 8.2.0454
问题: Some tests fail when the system is slow.
解决方案: Make the run number global, use in the test to increase the
waiting time. (closes #5841)
文件: src/testdir/runtest.vim, src/testdir/test_functions.vim
Patch 8.2.0455
问题: Cannot set the highlight group for a specific terminal.
解决方案: Add the "highlight" option to term_start(). (closes #5818)
文件: src/terminal.c, src/structs.h, src/channel.c,
src/testdir/test_terminal.vim, runtime/doc/terminal.txt,
src/testdir/dumps/Test_terminal_popup_Terminal.dump,
src/testdir/dumps/Test_terminal_popup_MyTermCol.dump
Patch 8.2.0456
问题: Test_confirm_cmd is flaky.
解决方案: Add a term_wait() call. (closes #5854)
文件: src/testdir/test_excmd.vim
Patch 8.2.0457
问题: Test_quotestar() often fails when run under valgrind.
解决方案: Wait longer for the GUI to start.
文件: src/testdir/test_quotestar.vim
Patch 8.2.0458
问题: Missing feature check in test function.
解决方案: Add check commands.
文件: src/testdir/test_excmd.vim
Patch 8.2.0459
问题: Cannot check if a function name is correct.
解决方案: Add "?funcname" to exists().
文件: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_exists.vim,
src/testdir/check.vim
Patch 8.2.0460 (after 8.2.0459)
问题: Build failure because of wrong feature name.
解决方案: Correct feature name.
文件: src/evalfunc.c
Patch 8.2.0461
问题: Confirm test fails on amd64 system. (Alimar Riesebieter)
解决方案: Add an extra WaitForAssert(). (Dominique Pellé)
文件: src/testdir/test_excmd.vim
Patch 8.2.0462
问题: Previewwindow test fails on some systems. (James McCoy)
解决方案: Wait a bit after sending the "o". (closes #5849)
文件: src/testdir/test_popup.vim,
src/testdir/dumps/Test_popup_and_previewwindow_01.dump
Patch 8.2.0463
问题: Build error without float and channel feature. (John Marriott)
解决方案: Define return types always.
文件: src/globals.h, src/evalfunc.c
Patch 8.2.0464
问题: Typos and other small problems.
解决方案: Fix the typos. Add missing files to the distribution.
文件: Filelist, src/buffer.c, src/drawline.c, src/gui_gtk_x11.c,
src/os_unixx.h, src/proto/popupwin.pro
Patch 8.2.0465
问题: Vim9: dead code and wrong return type.
解决方案: Remove dead code. Fix return type. Add more tests.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0466 (after 8.2.0452)
问题: Not parsing messages recursively breaks the govim plugin.
解决方案: When called recursively do handle messages but do not close
channels.
文件: src/channel.c
Patch 8.2.0467
问题: Vim9: some errors are not tested
解决方案: Add more tests. Fix that Vim9 script flag is not reset.
文件: src/vim9compile.c, src/scriptfile.c, src/dict.c,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
Patch 8.2.0468
问题: GUI: pixel dust with some fonts and characters.
解决方案: Always redraw the character before the cursor. (Nir Lichtman,
closes #5549, closes #5856)
文件: src/gui.c, src/proto/gui.pro, src/screen.c
Patch 8.2.0469
问题: Vim9: no error for missing ] after list.
解决方案: Add error message. Add more tests.
文件: src/globals.h, src/list.c, src/userfunc.c,
src/testdir/test_vim9_expr.vim, src/testdir/test_lambda.vim
Patch 8.2.0470
问题: Test_confirm_cmd_cancel() can fail on a slow system.
解决方案: Use WaitForAssert(). (Ozaki Kiichi, closes #5861)
文件: src/testdir/test_excmd.vim
Patch 8.2.0471
问题: Missing change to compile_list().
解决方案: Add error message.
文件: src/vim9compile.c
Patch 8.2.0472
问题: Terminal highlight name is set twice, leaking memory.
解决方案: Delete one.
文件: src/terminal.c
Patch 8.2.0473
问题: Variables declared in an outer scope.
解决方案: Declare variables only in the scope where they are used.
文件: src/evalvars.c
Patch 8.2.0474 (after 8.2.0403)
问题: Cannot use :write when using a plugin with BufWriteCmd.
解决方案: Reset BF_NOTEDITED after BufWriteCmd. (closes #5807)
文件: src/fileio.c, src/testdir/test_autocmd.vim
Patch 8.2.0475
问题: Channel out_cb test still fails sometimes on Mac.
解决方案: Use an even longer timeout.
文件: src/testdir/test_channel.vim
Patch 8.2.0476
问题: Terminal nasty callback test fails sometimes.
解决方案: use term_wait() instead of a sleep. (Yee Cheng Chin, closes #5865)
文件: src/testdir/test_terminal.vim
Patch 8.2.0477
问题: Vim9: error messages not tested.
解决方案: Add more tests.
文件: src/testdir/test_vim9_expr.vim, src/vim9execute.c
Patch 8.2.0478
问题: New buffers are not added to the Buffers menu.
解决方案: Turn number into string. (Yee Cheng Chin, closes #5864)
文件: runtime/menu.vim, src/testdir/test_menu.vim
Patch 8.2.0479
问题: Unloading shared libraries on exit has no purpose.
解决方案: Do not unload shared libraries on exit.
文件: src/if_lua.c, src/if_perl.xs, src/if_python.c, src/if_python3.c,
src/if_ruby.c, src/if_tcl.c
Patch 8.2.0480
问题: Vim9: some code is not tested.
解决方案: Add more tests.
文件: src/testdir/test_vim9_expr.vim, src/vim9compile.c
Patch 8.2.0481
问题: Travis is still using trusty.
解决方案: Adjust config to use bionic. (Ozaki Kiichi, closes #5868)
文件: .travis.yml, src/testdir/lsan-suppress.txt
Patch 8.2.0482
问题: Channel and sandbox code not sufficiently tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5855)
文件: src/option.h, src/testdir/test_channel.vim,
src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim,
src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
src/testdir/test_normal.vim, src/testdir/test_prompt_buffer.vim,
src/testdir/test_restricted.vim, src/testdir/test_smartindent.vim,
src/testdir/test_substitute.vim, src/testdir/test_terminal.vim,
src/testdir/test_textformat.vim, src/testdir/test_visual.vim
Patch 8.2.0483
问题: Vim9: "let x = x + 1" does not give an error.
解决方案: Hide the variable when compiling the expression.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0484
问题: Vim9: some error messages not tested.
解决方案: Add more tests.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.0485 (after 8.2.0483)
问题: Vim9 script test fails.
解决方案: Stricter condition for adding new local variable.
文件: Stricter condition for adding new local variable.
Patch 8.2.0486
问题: Vim9: some code and error messages not tested.
解决方案: Add more tests.
文件: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0487
问题: Vim9: compiling not sufficiently tested.
解决方案: Add more tests. Fix bug with PCALL.
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0488
问题: Vim9: Compiling can break when using a lambda inside :def.
解决方案: Do not keep a pointer to the dfunc_T for longer time.
文件: src/vim9compile.c, src/vim9.h
Patch 8.2.0489
问题: Vim9: memory leaks.
解决方案: Free memory in the right place. Add hints for using asan.
文件: src/vim9compile.c, src/testdir/lsan-suppress.txt, src/Makefile
Patch 8.2.0490
问题: Win32: VTP doesn't respect 'restorescreen'.
解决方案: Use escape codes to switch to alternate screen. (Nobuhiro
Takasaki, closes #5872)
文件: src/os_win32.c
Patch 8.2.0491
问题: Cannot recognize a <script> mapping using maparg().
解决方案: Add the "script" key. (closes #5873)
文件: src/map.c, runtime/doc/eval.txt, src/testdir/test_maparg.vim
Patch 8.2.0492
问题: Vim9: some error messages not tested.
解决方案: Add more tests. Remove dead code. Fix uncovered bugs.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
Patch 8.2.0493
问题: Vim9: some error messages not tested.
解决方案: Add more tests. Fix uncovered bugs.
文件: src/vim9compile.c, src/vim9execute.c, src/testing.c, src/eval.c,
src/proto/testing.pro, src/evalfunc.c, runtime/doc/eval.txt,
runtime/doc/testing.txt, src/testdir/test_vim9_script.vim
Patch 8.2.0494
问题: Vim9: asan error.
解决方案: Only get the type when there is one.
文件: src/vim9compile.c
Patch 8.2.0495
问题: Vim9: some code not tested.
解决方案: Add more tests. Support more const expressions.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0496
问题: Vim9: disassemble test fails.
解决方案: Separate test cases with recognized constant expressions.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.0497
问题: Too verbose output from the asan build in Travis.
解决方案: Filter out suppression messages. (Ozaki Kiichi, closes #5874)
文件: .travis.yml
Patch 8.2.0498
问题: Coverity complains about uninitialized field.
解决方案: Initialize the whole typval_T.
文件: src/vim9compile.c
Patch 8.2.0499
问题: Calling a lambda is slower than evaluating a string.
解决方案: Make calling a lambda faster. (Ken Takata, closes #5727)
文件: src/userfunc.c
Patch 8.2.0500
问题: Using the same loop in many places.
解决方案: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
文件: src/arglist.c, src/autocmd.c, src/buffer.c, src/change.c,
src/channel.c, src/cmdexpand.c, src/diff.c, src/eval.c,
src/evalbuffer.c, src/evalfunc.c, src/evalvars.c,
src/evalwindow.c, src/ex_cmds2.c, src/filepath.c, src/globals.h,
src/gui.c, src/if_py_both.h, src/if_ruby.c, src/insexpand.c,
src/list.c, src/misc2.c, src/netbeans.c, src/popupwin.c,
src/quickfix.c, src/screen.c, src/sign.c, src/spell.c,
src/spellfile.c, src/spellsuggest.c, src/tag.c, src/terminal.c,
src/userfunc.c, src/window.c
Patch 8.2.0501
问题: Vim9: script test fails when channel feature is missing.
解决方案: Add a has() condition.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0502
问题: Vim9: some code is not tested.
解决方案: Add more tests. Fix uncovered problems.
文件: src/vim9compile.c, src/regexp.c, src/proto/regexp.pro,
src/cmdexpand.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c,
src/ex_getln.c, src/highlight.c, src/search.c, src/syntax.c,
src/tag.c, src/userfunc.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0503
问题: Vim9: some code is not tested.
解决方案: Add tests. Fix uncovered problems.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0504
问题: Vim9: leaking scope memory when compilation fails.
解决方案: Cleanup the scope list.
文件: src/vim9compile.c
Patch 8.2.0505
问题: term_gettty() not sufficiently tested.
解决方案: Add more asserts. (Dominique Pellé, closes #5877)
文件: src/testdir/test_terminal.vim
Patch 8.2.0506
问题: Coverity complains about ignoring return value.
解决方案: Add (void).
文件: src/userfunc.c
Patch 8.2.0507 (after 8.2.0472)
问题: Getbufvar() may get the wrong dictionary. (David le Blanc)
解决方案: Check for empty name. (closes #5878)
文件: src/evalvars.c, src/testdir/test_functions.vim
Patch 8.2.0508
问题: Vim9: func and partial types not done yet
解决方案: Fill in details about func declaration, drop a separate partial
declaration.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/globals.h,
src/structs.h, src/evalfunc.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0509
问题: various code is not properly tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5871)
文件: src/main.c, src/testdir/check.vim, src/testdir/shared.vim,
src/testdir/term_util.vim, src/testdir/test_clientserver.vim,
src/testdir/test_ex_mode.vim, src/testdir/test_expand.vim,
src/testdir/test_functions.vim, src/testdir/test_options.vim,
src/testdir/test_startup.vim, src/testdir/test_textformat.vim,
src/testdir/test_trycatch.vim, src/testdir/test_viminfo.vim
Patch 8.2.0510
问题: Coverity complains about using uninitialized variable.
解决方案: Assign a value to "scol". Move code inside NULL check.
文件: src/beval.c, src/popupwin.c
Patch 8.2.0511
问题: Cscope code not fully tested.
解决方案: Add more test cases. (Dominique Pellé, closes #5886)
文件: src/testdir/test_cscope.vim
Patch 8.2.0512
问题: Vim9: no optional arguments in func type.
解决方案: Check for question mark after type. Find function reference
without function().
文件: src/vim9compile.c, src/vim9execute.c, src/structs.h,
src/globals.h, src/vim.h, src/vim9.h, src/userfunc.c,
src/testdir/Make_all.mak, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0513
问题: Reading past allocated memory when using varargs.
解决方案: Fix copying function argument types.
文件: src/vim9compile.c
Patch 8.2.0514
问题: Several global functions are used in only one file.
解决方案: Make the functions static. (Yegappan Lakshmanan, closes #5884)
文件: src/drawscreen.c, src/evalvars.c, src/getchar.c, src/list.c,
src/proto/drawscreen.pro, src/proto/evalvars.pro,
src/proto/getchar.pro, src/proto/list.pro, src/proto/version.pro,
src/version.c
Patch 8.2.0515
问题: Some compilers cannot add to "void *".
解决方案: Cast to "char *".
文件: src/vim9compile.c
Patch 8.2.0516
问题: Client-server code is spread out.
解决方案: Move client-server code to a new file. (Yegappan Lakshmanan,
closes #5885)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/clientserver.c, src/evalfunc.c, src/main.c, src/proto.h,
src/proto/clientserver.pro, src/proto/main.pro
Patch 8.2.0517
问题: Vim9: cannot separate "func" and "func(): void".
解决方案: Use VAR_ANY for "any" and VAR_UNKNOWN for "no type".
文件: src/structs.h, src/globals.h, src/eval.c, src/evalfunc.c,
src/evalvars.c, src/testing.c, src/vim9compile.c,
src/vim9execute.c, src/viminfo.c, src/if_py_both.h, src/json.c,
src/testdir/test_vim9_func.vim
Patch 8.2.0518
问题: A terminal falls back to setting $TERM to "xterm".
解决方案: Use "xterm-color" if more than 16 colors are supported and
"xterm-256color" if at least 256 colors are supported.
(closes #5887)
文件: src/os_unix.c
Patch 8.2.0519
问题: Vim9: return type not properly checked.
解决方案: Check type properly, also at runtime.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0520
问题: Tests are not listed in sorted order.
解决方案: Move test_ex_mode. (Doug Richardson, closes #5889)
文件: src/testdir/Make_all.mak
Patch 8.2.0521
问题: Crash when reading a blob fails.
解决方案: Avoid keeping a pointer to a freed blob object. (Dominique Pellé,
closes #5890) Adjust error messages.
文件: src/filepath.c, src/testdir/test_blob.vim
Patch 8.2.0522
问题: Several errors are not tested for.
解决方案: Add tests. (Yegappan Lakshmanan, closes #5892)
文件: src/testdir/test_autocmd.vim, src/testdir/test_clientserver.vim,
src/testdir/test_digraph.vim, src/testdir/test_expand.vim,
src/testdir/test_expr.vim, src/testdir/test_functions.vim,
src/testdir/test_gui.vim, src/testdir/test_highlight.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_lambda.vim,
src/testdir/test_listdict.vim, src/testdir/test_normal.vim,
src/testdir/test_options.vim, src/testdir/test_preview.vim,
src/testdir/test_user_func.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim,
src/testdir/test_vimscript.vim, src/testdir/test_window_cmd.vim
Patch 8.2.0523
问题: Loops are repeated.
解决方案: Use FOR_ALL_ macros. (Yegappan Lakshmanan, closes #5882)
文件: src/buffer.c, src/drawscreen.c, src/evalfunc.c, src/evalwindow.c,
src/globals.h, src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c,
src/gui_w32.c, src/list.c, src/menu.c, src/popupmenu.c,
src/popupwin.c, src/quickfix.c, src/syntax.c, src/time.c,
src/userfunc.c, src/vim9compile.c
Patch 8.2.0524
问题: Win32: searching for file matches is slow.
解决方案: Instead of making another round to find any short filename, check
for the short name right away. Avoid using an ordinary file like a
directory. (Nir Lichtman, closes #5883)
文件: src/filepath.c
Patch 8.2.0525 (after 8.2.0524)
问题: Win32: typo in assignment and misplaced paren.
解决方案: Fix the syntax.
文件: src/filepath.c
Patch 8.2.0526
问题: Gcc 9 complains about empty statement.
解决方案: Add {}. (Dominique Pellé, closes #5894)
文件: src/evalfunc.c
Patch 8.2.0527
问题: Vim9: function types insufficiently tested.
解决方案: Add more tests. Fix white space check. Add "test_vim9" target.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim, src/Makefile,
src/testdir/Makefile, src/testdir/Make_all.mak
Patch 8.2.0528
问题: Vim9: function arguments insufficiently tested.
解决方案: Check types. Add more tests. Fix function with varargs only.
文件: src/vim9compile.c, src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.0529
问题: Vim9: function argument with default not checked.
解决方案: Check type of argument with default value.
文件: src/vim9compile.c, src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.0530
问题: Test crashes on s390. (James McCoy)
解决方案: Explicitly define an 8 big signed type. (closes #5897)
文件: src/structs.h
Patch 8.2.0531
问题: Various errors not tested.
解决方案: Add tests. (Yegappan Lakshmanan, closes #5895)
文件: src/testdir/test_search.vim, src/testdir/test_source.vim,
src/testdir/test_syntax.vim, src/testdir/test_user_func.vim,
src/testdir/test_vimscript.vim
Patch 8.2.0532
问题: Cannot use simplify() as a method.
解决方案: Add FEARG_1. (closes #5896)
文件: runtime/doc/eval.txt, src/evalfunc.c,
src/testdir/test_functions.vim
Patch 8.2.0533
问题: Tests using term_wait() can still be flaky.
解决方案: Increase the wait time when rerunning a test. (James McCoy,
closes #5899) Halve the initial times to make tests run faster
when there is no rerun.
文件: src/testdir/term_util.vim, src/testdir/test_arglist.vim,
src/testdir/test_autocmd.vim, src/testdir/test_balloon.vim,
src/testdir/test_bufline.vim, src/testdir/test_channel.vim,
src/testdir/test_cmdline.vim, src/testdir/test_conceal.vim,
src/testdir/test_cursorline.vim, src/testdir/test_debugger.vim,
src/testdir/test_diffmode.vim, src/testdir/test_display.vim,
src/testdir/test_functions.vim, src/testdir/test_highlight.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_mapping.vim,
src/testdir/test_match.vim, src/testdir/test_matchadd_conceal.vim,
src/testdir/test_messages.vim, src/testdir/test_number.vim,
src/testdir/test_popup.vim, src/testdir/test_popupwin.vim,
src/testdir/test_profile.vim, src/testdir/test_search.vim,
src/testdir/test_search_stat.vim, src/testdir/test_startup.vim,
src/testdir/test_startup_utf8.vim,
src/testdir/test_statusline.vim, src/testdir/test_suspend.vim,
src/testdir/test_swap.vim, src/testdir/test_tagjump.vim,
src/testdir/test_terminal.vim, src/testdir/test_terminal_fail.vim,
src/testdir/test_timers.vim, src/testdir/test_vimscript.vim
Patch 8.2.0534
问题: Client-server test fails under valgrind.
解决方案: Use WaitForAssert().
文件: src/testdir/test_clientserver.vim
Patch 8.2.0535
问题: Regexp patterns not fully tested.
解决方案: Add more regexp tests and others. (Yegappan Lakshmanan,
closes #5901)
文件: src/testdir/test_marks.vim, src/testdir/test_options.vim,
src/testdir/test_regexp_latin.vim, src/testdir/test_search.vim
Patch 8.2.0536
问题: Vim9: some compilation code not tested.
解决方案: Add more test cases.
文件: src/evalvars.c, src/proto/evalvars.pro, src/vim9compile.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.0537
问题: Vim9: no check for sandbox when setting v:var.
解决方案: Check for sandbox.
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.0538
问题: Vim9: VAR_PARTIAL is not used during compilation.
解决方案: Remove VAR_PARTIAL.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c
Patch 8.2.0539
问题: Comparing two NULL list fails.
解决方案: Change the order of comparing two lists.
文件: src/list.c, src/testdir/test_assert.vim
Patch 8.2.0540
问题: Regexp and other code not tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5904)
文件: src/testdir/test_backspace_opt.vim, src/testdir/test_expr.vim,
src/testdir/test_increment.vim, src/testdir/test_normal.vim,
src/testdir/test_options.vim, src/testdir/test_regexp_latin.vim,
src/testdir/test_search.vim, src/testdir/test_substitute.vim,
src/testdir/test_terminal.vim, src/testdir/test_virtualedit.vim
Patch 8.2.0541
问题: Travis CI does not give compiler warnings.
解决方案: Add flags for warnings. Fix uncovered problems. (Ozaki Kiichi,
closes #5898)
文件: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed,
ci/config.mk.sed, src/if_perl.xs, src/if_ruby.c,
src/libvterm/t/harness.c
Patch 8.2.0542
问题: No test for E386.
解决方案: Add a test. (Dominique Pellé, closes #5911)
文件: src/testdir/test_search.vim
Patch 8.2.0543
问题: Vim9: function with varargs does not work properly.
解决方案: Improve function type spec and add tests. Fix bugs.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9execute.c,
src/structs.h, src/testdir/test_vim9_func.vim
Patch 8.2.0544
问题: Memory leak in search test.
解决方案: Free msgbuf. (Dominique Pellé, closes #5912)
文件: src/search.c
Patch 8.2.0545
问题: Unused arguments ignored in non-standard way.
解决方案: Add UNUSED instead of (void).
文件: src/libvterm/t/harness.c
Patch 8.2.0546
问题: Vim9: varargs implementation is inefficient.
解决方案: Create list without moving the arguments.
文件: src/vim9compile.c, src/vim9execute.c
Patch 8.2.0547
问题: Win32: restoring screen not always done right.
解决方案: Use a more appropriate method. (Nobuhiro Takasaki, closes #5909)
文件: src/os_win32.c
Patch 8.2.0548
问题: Vim9: not all possible func type errors tested.
解决方案: Add more tests.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0549
问题: User systemd files not recognized.
解决方案: Add filetype patterns. (Kevin Locke, closes #5914)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0550
问题: Some changes in the libvterm upstream code.
解决方案: Include some changes.
文件: src/libvterm/t/harness.c
Patch 8.2.0551
问题: Not all code for options is tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5913)
文件: src/testdir/test_options.vim, src/testdir/test_python3.vim,
src/testdir/test_undo.vim, src/testdir/test_vimscript.vim
Patch 8.2.0552
问题: Vim9: some errors not covered by tests.
解决方案: Add more tests. Check Funcref argument types.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0553 (after 8.2.0550)
问题: Error for unused argument.
解决方案: Add UNUSED.
文件: src/libvterm/t/harness.c
Patch 8.2.0554
问题: The GUI doesn't set t_Co.
解决方案: In the GUI set t_Co to 256 * 256 * 256. (closes #5903)
文件: src/term.c, src/proto/term.pro, src/gui.c,
src/testdir/test_gui.vim
Patch 8.2.0555
问题: Vim9: line continuation is not always needed.
解决方案: Recognize continuation lines automatically in list and dict.
文件: runtime/doc/vim9.txt, src/vim9compile.c,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
Patch 8.2.0556
问题: Vim9: memory leak when finding common type.
解决方案: Store allocated memory in type growarray.
文件: src/vim9compile.c
Patch 8.2.0557
问题: No IPv6 support for channels.
解决方案: Add IPv6 support. (Ozaki Kiichi, closes #5893)
文件: .travis.yml, runtime/doc/channel.txt, runtime/doc/various.txt,
src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
src/channel.c, src/config.h.in, src/configure.ac, src/evalfunc.c,
src/proto/channel.pro, src/testdir/check.vim,
src/testdir/runtest.vim, src/testdir/test_cdo.vim,
src/testdir/test_channel.py, src/testdir/test_channel.vim,
src/testdir/test_channel_6.py, src/testdir/test_escaped_glob.vim,
src/testdir/test_getcwd.vim, src/testdir/test_hide.vim
Patch 8.2.0558
问题: Vim9: dict code not covered by tests.
解决方案: Remove dead code, adjust test case.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0559
问题: Clearing a struct is verbose.
解决方案: Define and use CLEAR_FIELD() and CLEAR_POINTER().
文件: src/vim.h, src/blowfish.c, src/channel.c, src/charset.c,
src/clipboard.c, src/diff.c, src/eval.c, src/evalfunc.c,
src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, src/findfile.c,
src/gui_gtk_f.c, src/gui_mac.c, src/gui_motif.c, src/gui_w32.c,
src/gui_x11.c, src/hardcopy.c, src/hashtab.c, src/highlight.c,
src/if_mzsch.c, src/insexpand.c, src/kword_test.c, src/list.c,
src/main.c, src/map.c, src/memfile.c, src/message_test.c,
src/misc1.c, src/netbeans.c, src/normal.c, src/ops.c,
src/option.c, src/os_mswin.c, src/os_win32.c, src/popupmenu.c,
src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c,
src/search.c, src/sign.c, src/spell.c, src/spellfile.c,
src/spellsuggest.c, src/syntax.c, src/tag.c, src/terminal.c,
src/time.c, src/undo.c, src/userfunc.c, src/vim9compile.c,
src/vim9execute.c, src/if_py_both.h
Patch 8.2.0560
问题: Compiler warning in tiny build.
解决方案: Move declaration inside #ifdef. (Dominique Pellé, closes #5915)
文件: src/ex_docmd.c
Patch 8.2.0561
问题: Vim9: cannot split function call in multiple lines.
解决方案: Find more arguments in following lines.
文件: runtime/doc/vim9.txt, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0562
问题: Vim9: cannot split an expression into multiple lines.
解决方案: Continue in next line after an operator.
文件: runtime/doc/vim9.txt, src/macros.h, src/vim9compile.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.0563
问题: Vim9: cannot split a function line.
解决方案: Continue in next line so long as the function isn't done.
文件: runtime/doc/vim9.txt, src/userfunc.c, src/proto/userfunc.pro,
src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0564
问题: Vim9: calling a def function from non-vim9 may fail.
解决方案: Convert varargs to a list.
文件: src/testdir/test_vim9_func.vim, src/vim9execute.c
Patch 8.2.0565
问题: Vim9: tests contain superfluous line continuation.
解决方案: Remove line continuation no longer needed. Skip empty lines.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0566
问题: Vim9: variable can be used uninitialized.
解决方案: Jump to after where variable is used.
文件: src/vim9execute.c
Patch 8.2.0567
问题: Vim9: cannot put comments halfway expressions.
解决方案: Support # comments in many places.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/userfunc.c,
src/ex_docmd.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0568
问题: The man filetype plugin overwrites the unnamed register.
解决方案: Use the black hole register. (Jason Franklin)
文件: runtime/ftplugin/man.vim, src/testdir/test_man.vim
Patch 8.2.0569
问题: Build failure with tiny version.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.0570
问题: Vim9: no error when omitting type from argument.
解决方案: Enforce specifying argument types.
文件: src/userfunc.c, src/ex_eval.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0571
问题: Double free when passing invalid argument to job_start().
解决方案: Clear the argument when freed. (Masato Nishihata, closes #5926)
文件: src/misc2.c, src/testdir/test_channel.vim
Patch 8.2.0572 (after 8.2.0571)
问题: Using two lines for free and reset.
解决方案: Use VIM_CLEAR() instead. (Yegappan Lakshmanan)
文件: src/misc2.c
Patch 8.2.0573
问题: using :version twice leaks memory
解决方案: Only initialize variables once. (Dominique Pellé, closes #5917)
文件: src/testdir/Make_all.mak, src/testdir/test_alot.vim,
src/testdir/test_version.vim, src/version.c, src/globals.h
Patch 8.2.0574
问题: Ipv6 feature not shown in :version output.
解决方案: Add ipv6 in :version output. (Ozaki Kiichi, closes #5924)
文件: runtime/doc/eval.txt, src/version.c
Patch 8.2.0575
问题: :digraph! not tested.
解决方案: Add a test. (Dominique Pellé, closes #5925)
文件: src/testdir/test_digraph.vim
Patch 8.2.0576
问题: Some errors are not covered by tests.
解决方案: Add a few more tests. (Dominique Pellé, closes #5920)
文件: src/testdir/test_buffer.vim, src/testdir/test_digraph.vim,
src/testdir/test_expr.vim, src/testdir/test_messages.vim
Patch 8.2.0577
问题: Not all modifiers supported for :options.
解决方案: Use all cmdmod.split flags. (closes #4401)
文件: src/usercmd.c, src/proto/usercmd.pro, src/scriptfile.c,
src/testdir/test_options.vim, src/testdir/test_usercommands.vim
Patch 8.2.0578
问题: Heredoc for interfaces does not support "trim".
解决方案: Update the script heredoc support to be same as the :let command.
(Yegappan Lakshmanan, closes #5916)
文件: runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt,
runtime/doc/if_perl.txt, runtime/doc/if_pyth.txt,
runtime/doc/if_ruby.txt, runtime/doc/if_tcl.txt, src/evalvars.c,
src/ex_getln.c, src/proto/evalvars.pro, src/testdir/test86.in,
src/testdir/test87.in, src/testdir/test_lua.vim,
src/testdir/test_perl.vim, src/testdir/test_python2.vim,
src/testdir/test_python3.vim, src/testdir/test_pyx2.vim,
src/testdir/test_pyx3.vim, src/testdir/test_ruby.vim,
src/testdir/test_tcl.vim, src/userfunc.c, src/vim9compile.c
Patch 8.2.0579
问题: Coverity warns for unused value.
解决方案: Change order and use "else if".
文件: src/os_unix.c
Patch 8.2.0580
问题: Window size wrong if 'ea' is off and 'splitright' is on and
splitting then closing a window.
解决方案: Put abandoned window space in the right place. (Mark Waggoner)
文件: src/testdir/test_winbuf_close.vim, src/window.c
Patch 8.2.0581 (after 8.2.0547)
问题: Win32 console: the cursor position is always top-left.
解决方案: Revert the patch for restoring screen.
文件: src/os_win32.c
Patch 8.2.0582
问题: Color ramp test does not show text colors.
解决方案: Add a row of 16 text colors and 16 bold text colors.
文件: src/testdir/color_ramp.vim
Patch 8.2.0583
问题: Vim9: # comment not recognized in :def function.
解决方案: Recognize and skip # comment.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0584
问题: Viminfo file uses obsolete function file_readable().
解决方案: Use filereadable(). (closes #5934)
文件: src/session.c
Patch 8.2.0585
问题: Vim9: # comment not recognized after :vim9script.
解决方案: Check script type. Make comment after ":echo" work. And in
several other places.
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/eval.c,
src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0586
问题: Vim9: # comment not sufficiently tested
解决方案: Check for preceding white space.
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.0587
问题: Compiler warning for unused variable.
解决方案: Add UNUSED.
文件: src/ex_docmd.c
Patch 8.2.0588
问题: Putty does not use "sgr" 'ttymouse' by default.
解决方案: Make "sgr" the default for Putty. (Christian Brabandt,
closes #5942)
文件: src/term.c
Patch 8.2.0589
问题: .bsd file type not recognized.
解决方案: Recognize .bsd as BSDL. (Daniel Kho, closes #5945)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0590
问题: No 'backspace' value allows ignoring the insertion point.
解决方案: Add the "nostop" and 3 values. (Christian Brabandt, closes #5940)
文件: runtime/doc/options.txt, src/edit.c, src/option.c, src/option.h,
src/optionstr.c, src/testdir/gen_opt_test.vim,
src/testdir/test_backspace_opt.vim
Patch 8.2.0591
问题: MS-Windows: should always support IPv6
解决方案: Add build flag. (Ozaki Kiichi, closes #5944)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak
Patch 8.2.0592
问题: MS-Windows with VTP: cursor is not made invisible.
解决方案: Output the code to make the cursor visible or invisible. (Nobuhiro
Takasaki, closes #5941)
文件: src/os_win32.c
Patch 8.2.0593
问题: Finding a user command is not optimal.
解决方案: Start further down in the list of commands.
文件: src/ex_cmds.h, src/ex_docmd.c
Patch 8.2.0594
问题: MS-Windows: cannot build with WINVER set to 0x0501.
解决方案: Only use inet_ntop() when available. (Ozaki Kiichi, closes #5946)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
src/channel.c, src/config.h.in, src/configure.ac
Patch 8.2.0595
问题: Vim9: not all commands using ends_excmd() tested.
解决方案: Find # comment after regular commands. Add more tests. Report
error for where it was caused.
文件: src/ex_docmd.c, src/vim9compile.c, src/vim9execute.c, src/usercmd.c,
src/evalfunc.c, src/userfunc.c, src/proto/userfunc.pro,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0596
问题: Crash in test49.
解决方案: Check the right pointer.
文件: src/userfunc.c, src/testdir/test_eval.ok
Patch 8.2.0597
问题: Test_eval is old style.
解决方案: Change some tests to a new style test.
文件: src/testdir/test_eval.in, src/testdir/test_eval.ok,
src/testdir/test_eval_stuff.vim
Patch 8.2.0598
问题: Test_eval_stuff fails in normal terminal.
解决方案: Close the new window.
文件: src/testdir/test_eval_stuff.vim
Patch 8.2.0599
问题: Netbeans interface insufficiently tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5921)
文件: runtime/doc/netbeans.txt, src/netbeans.c, src/os_win32.c,
src/testdir/runtest.vim, src/testdir/test_netbeans.py,
src/testdir/test_netbeans.vim
Patch 8.2.0600
问题: Vim9: cannot read or write w:, t: and b: variables.
解决方案: Implement load and store for w:, t: and b: variables.
(closes #5950)
文件: src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
src/vim9.h, src/vim9compile.c, src/vim9execute.c
Patch 8.2.0601
问题: Vim9: :unlet is not compiled.
解决方案: Implement :unlet instruction and check for errors.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9.h,
src/vim9execute.c, src/evalvars.c, src/proto/evalvars.pro,
src/eval.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0602
问题: :unlet $VAR does not work properly.
解决方案: Make ":lockvar $VAR" fail. Check the "skip" flag.
文件: src/evalvars.c, src/globals.h, src/testdir/test_vimscript.vim
Patch 8.2.0603
问题: Configure does not detect moonjit.
解决方案: Add check for moonjit. (Shlomi Fish, closes #5947)
文件: src/configure.ac, src/auto/configure
Patch 8.2.0604
问题: :startinsert in a terminal window used later.
解决方案: Ignore :startinsert in a terminal window. (closes #5952)
文件: src/ex_docmd.c, src/testdir/test_terminal.vim
Patch 8.2.0605
问题: Vim9: cannot unlet an environment variable.
解决方案: Implement unlet for $VAR.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0606
问题: Several syntax HL errors not checked.
解决方案: Add tests. (Yegappan Lakshmanan, closes #5954)
文件: src/testdir/test_syntax.vim
Patch 8.2.0607
问题: Gcc warns for using uninitialized variable. (John Marriott)
解决方案: Set name_end also for environment variables.
文件: src/evalvars.c
Patch 8.2.0608
问题: Warning from clang when building message test.
解决方案: Use a void pointer. (Dominique Pellé, closes #5958)
文件: src/message_test.c
Patch 8.2.0609
问题: Configure does not detect moonjit correctly.
解决方案: Double the brackets. (Ozaki Kiichi)
文件: src/configure.ac, src/auto/configure
Patch 8.2.0610
问题: Some tests are still old style.
解决方案: Convert to new style tests. (Yegappan Lakshmanan, closes #5957)
文件: src/testdir/test_blob.vim, src/testdir/test_cursor_func.vim,
src/testdir/test_eval.in, src/testdir/test_eval.ok,
src/testdir/test_eval_func.vim, src/testdir/test_eval_stuff.vim,
src/testdir/test_expr.vim, src/testdir/test_filter_map.vim,
src/testdir/test_functions.vim, src/testdir/test_listdict.vim,
src/testdir/test_sort.vim, src/testdir/test_syntax.vim,
src/testdir/test_utf8.vim, src/testdir/test_vimscript.vim
Patch 8.2.0611
问题: Vim9: no check for space before #comment.
解决方案: Add space checks.
文件: src/eval.c, src/evalvars.c, src/ex_docmd.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0612
问题: Vim9: no check for space before #comment.
解决方案: Add space checks.
文件: src/ex_eval.c, src/ex_cmds.c, src/regexp.c, src/proto/regexp.pro,
src/gui.c, src/highlight.c, src/testdir/test_vim9_script.vim,
src/testdir/test_sort.vim
Patch 8.2.0613
问题: Vim9: no check for space before #comment.
解决方案: Add space checks.
文件: src/highlight.c, src/menu.c, src/syntax.c,
src/testdir/test_vim9_script.vim,
runtime/lang/menu_de_de.latin1.vim
Patch 8.2.0614
问题: Get ml_get error when deleting a line in 'completefunc'. (Yegappan
Lakshmanan)
解决方案: Lock the text while evaluating 'completefunc'.
文件: src/insexpand.c, src/globals.h, src/edit.c, src/ex_getln.c,
src/undo.c, src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
src/testdir/test_gf.vim, src/testdir/test_popup.vim,
src/testdir/test_ex_mode.vim, runtime/doc/insert.txt
Patch 8.2.0615
问题: Regexp benchmark test is old style.
解决方案: Make it a new style test. Fix using a NULL list. Add more tests.
(Yegappan Lakshmanan, closes #5963)
文件: src/evalbuffer.c, src/testdir/Make_dos.mak,
src/testdir/Make_ming.mak, src/testdir/Makefile,
src/testdir/bench_re_freeze.in, src/testdir/bench_re_freeze.vim,
src/testdir/test_autocmd.vim, src/testdir/test_bench_regexp.vim,
src/testdir/test_blob.vim, src/testdir/test_bufline.vim,
src/testdir/test_channel.vim, src/testdir/test_cmdline.vim,
src/testdir/test_functions.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_popupwin.vim, src/testdir/test_prompt_buffer.vim,
src/testdir/test_tagjump.vim, src/testdir/test_window_cmd.vim
Patch 8.2.0616
问题: Build error when disabling the diff feature.
解决方案: Move parenthesis outside of #ifdef. (Tom Ryder)
文件: src/drawline.c
Patch 8.2.0617
问题: New error check triggers in Swedish menu.
解决方案: Insert backslash. (Mats Tegner, closes #5966)
文件: runtime/lang/menu_sv_se.latin1.vim
Patch 8.2.0618
问题: Echoing a null list results in no output. (Yegappan Lakshmanan)
解决方案: Return "[]" instead of NULL in echo_string_core().
文件: src/eval.c, src/testdir/test_messages.vim
Patch 8.2.0619
问题: Null dict is not handled like an empty dict.
解决方案: Fix the code and add tests. (Yegappan Lakshmanan, closes #5968)
文件: src/dict.c, src/eval.c, src/testdir/test_blob.vim,
src/testdir/test_expr.vim, src/testdir/test_filter_map.vim,
src/testdir/test_let.vim, src/testdir/test_listdict.vim,
src/testdir/test_search.vim, src/testdir/test_unlet.vim,
src/testdir/test_usercommands.vim, src/testdir/test_vimscript.vim
Patch 8.2.0620
问题: Error in menu translations.
解决方案: Insert a backslash before a space.
文件: runtime/lang/menu_it_it.latin1.vim,
runtime/lang/menu_chinese_gb.936.vim
Patch 8.2.0621
问题: After running tests asan files may remain.
解决方案: Clean up asan files with "make testclean".
文件: src/testdir/Makefile, src/Makefile
Patch 8.2.0622
问题: Haiku: GUI does not compile.
解决方案: Various fixes. (Emir Sarı, closes #5961)
文件: Filelist, README.md, READMEdir/README_haiku.txt,
runtime/doc/os_haiku.txt, src/Makefile, src/beval.h,
src/gui_haiku.cc, src/proto/gui_haiku.pro
Patch 8.2.0623
问题: Typo in test comment. (Christ van Willegen)
解决方案: Avoid mixing up a data structure with a body part.
文件: src/testdir/test_listdict.vim
Patch 8.2.0624
问题: Vim9: no check for space before #comment.
解决方案: Add space checks. Fix :throw with double quoted string.
文件: src/usercmd.c, src/userfunc.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0625
问题: Vim9: confusing error when calling unknown function.
解决方案: Give error while compiling.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.0626
问题: Vim9: wrong syntax of function in Vim9 script.
解决方案: Give error for missing space. Implement :echomsg and :echoerr.
(closes #5670)
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/userfunc.c,
src/eval.c, src/globals.h, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0627
问题: Vim9: error message does not work. (Yegappan Lakshmanan)
解决方案: Swap lines.
文件: src/userfunc.c
Patch 8.2.0628
问题: Error in menu translations.
解决方案: Insert a backslash before a space in one more file. (Shun Bai,
Emir Sarı)
文件: runtime/lang/menu_zh_cn.utf-8.vim,
runtime/lang/menu_ca_es.latin1.vim,
runtime/lang/menu_cs_cz.iso_8859-2.vim,
runtime/lang/menu_cs_cz.utf-8.vim,
runtime/lang/menu_czech_czech_republic.1250.vim,
runtime/lang/menu_czech_czech_republic.ascii.vim,
runtime/lang/menu_da.utf-8.vim,
runtime/lang/menu_fi_fi.latin1.vim,
runtime/lang/menu_hu_hu.iso_8859-2.vim,
runtime/lang/menu_hu_hu.utf-8.vim,
runtime/lang/menu_is_is.latin1.vim,
runtime/lang/menu_no_no.latin1.vim, runtime/lang/menu_pt_br.vim,
runtime/lang/menu_pt_pt.vim,
runtime/lang/menu_sk_sk.iso_8859-2.vim,
runtime/lang/menu_sl_si.latin2.vim,
runtime/lang/menu_slovak_slovak_republic.1250.vim,
runtime/lang/menu_tr_tr.cp1254.vim,
runtime/lang/menu_tr_tr.iso_8859-9.vim,
runtime/lang/menu_tr_tr.utf-8.vim, runtime/lang/menu_vi_vn.vim
Patch 8.2.0629
问题: Setting a boolean option to v:false does not work.
解决方案: Do not use the string representation of the value. (Christian
Brabandt, closes #5974)
文件: src/evalvars.c, src/testdir/test_options.vim
Patch 8.2.0630
问题: "make tags" does not cover Haiku GUI file.
解决方案: Add *.cc files.
文件: src/Make_all.mak
Patch 8.2.0631
问题: Haiku file formatted with wrong tabstop.
解决方案: Use normal tabstop. Fix white space.
文件: src/gui_haiku.cc
Patch 8.2.0632
问题: Crash when using Haiku.
解决方案: Lock the screen. (closes #5975, closes #5973)
文件: src/screen.c
Patch 8.2.0633
问题: Crash when using null partial in filter().
解决方案: Fix crash. Add more tests. (Yegappan Lakshmanan, closes #5976)
文件: src/eval.c, src/testdir/test_blob.vim,
src/testdir/test_channel.vim, src/testdir/test_eval_stuff.vim,
src/testdir/test_execute_func.vim, src/testdir/test_expr.vim,
src/testdir/test_filter_map.vim, src/testdir/test_fold.vim,
src/testdir/test_functions.vim, src/testdir/test_let.vim,
src/testdir/test_listdict.vim, src/testdir/test_partial.vim,
src/testdir/test_usercommands.vim
Patch 8.2.0634
问题: Crash with null partial and blob.
解决方案: Check for NULL pointer. Add more tests. (Yegappan Lakshmanan,
closes #5984)
文件: src/eval.c, src/list.c, src/testdir/test_blob.vim,
src/testdir/test_bufwintabinfo.vim, src/testdir/test_cd.vim,
src/testdir/test_channel.vim, src/testdir/test_cursor_func.vim,
src/testdir/test_eval_stuff.vim, src/testdir/test_expr.vim,
src/testdir/test_filter_map.vim, src/testdir/test_fnamemodify.vim,
src/testdir/test_functions.vim, src/testdir/test_getvar.vim,
src/testdir/test_listdict.vim, src/testdir/test_messages.vim,
src/testdir/test_partial.vim, src/testdir/test_quickfix.vim,
src/testdir/test_tabpage.vim, src/testdir/test_vimscript.vim,
src/testdir/test_window_cmd.vim, src/testdir/test_window_id.vim,
src/testdir/test_writefile.vim
Patch 8.2.0635
问题: When using 256 colors DarkYellow does not show expected color.
解决方案: Use color 3 instead of 130. (Romain Lafourcade, closes #5985)
文件: src/highlight.c
Patch 8.2.0636
问题: :messages does not show the maintainer when $LANG is unset.
解决方案: Call get_mess_lang() if available. (closes #5978)
文件: src/message.c
Patch 8.2.0637
问题: Incsearch highlighting does not work for ":sort!".
解决方案: Skip over the exclamation point. (closes #5983)
文件: src/ex_getln.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_incsearch_sort_02.dump
Patch 8.2.0638
问题: MS-Windows: messages test fails.
解决方案: Clear environment variables.
文件: src/testdir/test_messages.vim
Patch 8.2.0639
问题: MS-Windows: messages test still fails.
解决方案: Filter out the maintainer message.
文件: src/testdir/test_messages.vim
Patch 8.2.0640
问题: Vim9: expanding =expr does not work.
解决方案: Find wildcards in not compiled commands. Reorganize test files.
文件: Filelist, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/vim9.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
src/testdir/Make_all.mak
Patch 8.2.0641
问题: Vim9: =expr not expanded in :hardcopy and "syntax include".
解决方案: Add the EX_EXPAND flag. Expend "syntax include".
文件: src/ex_cmds.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.0642
问题: Vim9: using invalid index.
解决方案: Check index for being valid. Fix memory leak.
文件: src/vim9compile.c, src/clientserver.c
Patch 8.2.0643 (after 8.2.0635)
问题: Terminal uses brown instead of dark yellow. (Romain Lafourcade)
解决方案: Use color index 3 instead of 130. (closes #5993)
文件: src/terminal.c
Patch 8.2.0644
问题: Insufficient testing for invalid function arguments.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5988)
文件: runtime/doc/eval.txt, src/testdir/test_bufline.vim,
src/testdir/test_channel.vim, src/testdir/test_clientserver.vim,
src/testdir/test_expr.vim, src/testdir/test_functions.vim,
src/testdir/test_listener.vim, src/testdir/test_match.vim,
src/testdir/test_menu.vim, src/testdir/test_quickfix.vim,
src/testdir/test_registers.vim, src/testdir/test_reltime.vim,
src/testdir/test_terminal.vim, src/testdir/test_textprop.vim,
src/testdir/test_window_cmd.vim, src/testdir/test_window_id.vim,
src/testdir/test_writefile.vim
Patch 8.2.0645
问题: MS-Windows terminal: CTRL-C does not get to child job.
解决方案: Remove CREATE_NEW_PROCESS_GROUP from CreateProcessW(). (Nobuhiro
Takasaki, closes #5987)
文件: src/terminal.c
Patch 8.2.0646
问题: t_Co uses the value of $COLORS in the GUI. (Masato Nishihata)
解决方案: Ignore $COLORS for the GUI. (closes #5992)
文件: src/os_unix.c, src/term.c
Patch 8.2.0647
问题: MS-Windows: repeat count for events was not used.
解决方案: Check the repeat count. (Nobuhiro Takasaki, closes #5989)
文件: src/os_win32.c
Patch 8.2.0648
问题: Semicolon search does not work in first line.
解决方案: Allow the cursor to be in line zero. (Christian Brabandt,
closes #5996)
文件: src/ex_docmd.c, src/testdir/test_cmdline.vim
Patch 8.2.0649
问题: Undo problem when an InsertLeave autocommand resets undo. (Kutsan
Kaplan)
解决方案: Do not create a new undo block when leaving Insert mode.
文件: src/edit.c, src/testdir/test_edit.vim
Patch 8.2.0650
问题: Vim9: script function can be deleted.
解决方案: Disallow deleting script function. Delete functions when sourcing
a script again.
文件: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
src/vim9compile.c, src/vim9execute.c, src/vim9script.c,
src/scriptfile.c, src/testing.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.0651
问题: Old style benchmark test still in list of distributed files.
解决方案: Remove the files from the list.
文件: Filelist
Patch 8.2.0652 (after 8.2.0650)
问题: Compiler warning for char conversion.
解决方案: Use unsigned char buffer.
文件: src/userfunc.c
Patch 8.2.0653 (after 8.2.0650)
问题: using uninitialized pointer.
解决方案: Move assignment up. (John Marriott)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.0654
问题: Building with Python fails.
解决方案: Add missing argument.
文件: src/if_py_both.h
Patch 8.2.0655
问题: Search code not sufficiently tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #5999)
文件: src/testdir/test_charsearch.vim, src/testdir/test_gn.vim,
src/testdir/test_goto.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_normal.vim, src/testdir/test_search.vim,
src/testdir/test_textformat.vim, src/testdir/test_textobjects.vim,
src/testdir/test_visual.vim
Patch 8.2.0656
问题: MS-Windows: redrawing right screen edge may not be needed.
解决方案: Check the build version. (Nobuhiro Takasaki, closes #6002)
文件: src/drawscreen.c, src/os_win32.c, src/proto/os_win32.pro
Patch 8.2.0657
问题: Vim9: no check if called variable is a FuncRef.
解决方案: Add a type check.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.0658 (after 8.2.0646)
问题: HP-UX build fails when setenv() is not defined.
解决方案: Change "colors" to "t_colors". (John Marriott)
文件: src/os_unix.c
Patch 8.2.0659
问题: Vim9: no test for equal func type.
解决方案: Add a test. Improve type check.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0660
问题: The search.c file is a bit big.
解决方案: Split off the text object code to a separate file. (Yegappan
Lakshmanan, closes #6007)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/proto.h, src/proto/search.pro, src/proto/textobject.pro,
src/search.c, src/textobject.c
Patch 8.2.0661
问题: Eval test is still old style.
解决方案: Change into new style tests. (Yegappan Lakshmanan, closes #6009)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test_eval.in, src/testdir/test_eval.ok,
src/testdir/test_eval_stuff.vim
Patch 8.2.0662
问题: Cannot use input() in a channel callback.
解决方案: Reset vgetc_busy. (closes #6010)
文件: src/globals.h, src/ex_getln.c, src/evalfunc.c,
src/testdir/test_channel.vim
Patch 8.2.0663
问题: Not all systemd temp files are recognized.
解决方案: Add two more patterns. (Jamie Macdonald, closes #6003)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0664
问题: Included undesired changes in Makefile.
解决方案: Revert the changes.
文件: src/Makefile
Patch 8.2.0665
问题: Wrongly assuming Python executable is called "python".
解决方案: Use detected python command. (Ken Takata, closes #6016)
Also use CheckFunction if possible.
文件: src/testdir/test_terminal.vim, src/testdir/check.vim
Patch 8.2.0666
问题: Ruby test fails on MS-Windows.
解决方案: Remove the "maintainer" line. (Ken Takata, closes #6015)
文件: src/testdir/shared.vim, src/testdir/test_messages.vim,
src/testdir/test_ruby.vim
Patch 8.2.0667
问题: Cannot install Haiku version from source.
解决方案: Update Makefile and rdef file. (Emir Sarı, closes #6013)
文件: Filelist, READMEdir/README_haiku.txt, runtime/doc/os_haiku.txt,
src/Makefile, src/os_haiku.rdef.in, src/os_haiku.rdef
Patch 8.2.0668
问题: Compiler warning for int/size_t usage.
解决方案: Change "int" to "size_t". (Mike Williams)
文件: src/vim9execute.c
Patch 8.2.0669
问题: MS-Windows: display in VTP is a bit slow.
解决方案: Optimize the code. (Nobuhiro Takasaki, closes #6014)
文件: src/os_win32.c, src/screen.c
Patch 8.2.0670
问题: Cannot change window when evaluating 'completefunc'.
解决方案: Make a difference between not changing text or buffers and also
not changing window.
文件: src/ex_getln.c, src/beval.c, src/change.c, src/edit.c, src/eval.c,
src/ex_docmd.c, src/insexpand.c, src/globals.h, src/indent.c,
src/map.c, src/window.c, src/proto/ex_getln.pro, src/register.c,
src/undo.c, src/testdir/test_edit.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_popup.vim
Patch 8.2.0671
问题: Haiku: compiler warnings.
解决方案: Avoid the warnings. Drop display_errors() copy. (Emir Sarı,
closes #6018)
文件: .gitignore, src/gui.c, src/gui_haiku.cc
Patch 8.2.0672
问题: Heredoc in scripts does not accept lower case marker.
解决方案: Allow lower case only in non-Vim scripts. (Ken Takata,
closes #6019)
文件: src/evalvars.c, src/testdir/test_lua.vim,
src/testdir/test_perl.vim, src/testdir/test_python2.vim,
src/testdir/test_python3.vim, src/testdir/test_pyx2.vim,
src/testdir/test_pyx3.vim, src/testdir/test_ruby.vim
Patch 8.2.0673
问题: Cannot build Haiku in shadow directory.
解决方案: Add symlink. (Ozaki Kiichi, closes #6023)
文件: src/Makefile
Patch 8.2.0674
问题: Some source files are too big.
解决方案: Move text formatting functions to a new file. (Yegappan
Lakshmanan, closes #6021)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/edit.c, src/getchar.c, src/ops.c, src/option.c, src/proto.h,
src/proto/edit.pro, src/proto/getchar.pro, src/proto/ops.pro,
src/proto/option.pro, src/proto/textformat.pro, src/textformat.c
Patch 8.2.0675
问题: Vim9: no support for closures.
解决方案: Do not re-use stack entries.
文件: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/evalvars.c, src/proto/evalvars.pro
Patch 8.2.0676
问题: Pattern in list of distributed files does not match.
解决方案: Drop "testdir/test_[a-z]*.ok". Add CI sed files.
文件: Filelist
Patch 8.2.0677
问题: Vim9: no support for closures.
解决方案: Find variables in the outer function scope, so long as the scope
exists.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
src/vim9execute.c, src/structs.h, src/vim9.h,
src/testdir/test_vim9_func.vim
Patch 8.2.0678
问题: Rare crash for popup menu.
解决方案: Check for NULL pointer. (Nobuhiro Takasaki, closes #6027)
文件: src/popupmenu.c
Patch 8.2.0679
问题: Vim9: incomplete support for closures.
解决方案: At the end of a function copy arguments and local variables if
they are still used by a referenced closure.
文件: src/structs.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.0680
问题: PTYGROUP and PTYMODE are unused.
解决方案: Remove from autoconf. (closes #6024)
文件: src/configure.ac, src/auto/configure, src/config.h.in
Patch 8.2.0681
问题: Pattern for 'hlsearch' highlighting may leak. (Dominique Pellé)
解决方案: Call end_search_hl() to make sure the previous pattern is freed.
(closes #6028)
文件: src/screen.c
Patch 8.2.0682
问题: Vim9: parsing function argument type can get stuck.
解决方案: Bail out when not making progress.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0683
问题: Vim9: parsing type does not always work.
解决方案: Handle func type without return value. Test more closures.
Fix type check offset. Fix garbage collection.
文件: src/vim9compile.c, src/vim9execute.c, src/proto/vim9execute.pro,
src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.0684
问题: Vim9: memory leak when using lambda.
解决方案: Move the funccal context to the partial. Free the function when
exiting.
文件: src/vim9.h, src/structs.h, src/vim9execute.c, src/userfunc.c,
src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.0685 (after 8.2.0684)
问题: Build failure.
解决方案: Include missing changes.
文件: src/vim9compile.c
Patch 8.2.0686
问题: Formatoptions not sufficiently tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #6031)
文件: src/testdir/test_normal.vim, src/testdir/test_textformat.vim
Patch 8.2.0687
问题: Some tests do not work on FreeBSD.
解决方案: Enable modeline. Use WaitFor() in more cases. (Ozaki Kiichi,
closes #6036)
文件: src/testdir/test_quickfix.vim, src/testdir/test_terminal.vim
Patch 8.2.0688
问题: Output clobbered if setting 'verbose' to see shell commands.
解决方案: Only output "Searching for" when 'verbose' is 11 or higher.
文件: src/scriptfile.c, runtime/doc/options.txt
Patch 8.2.0689
问题: When using getaddrinfo() the error message is unclear.
解决方案: Use gai_strerror() to get the message. (Ozaki Kiichi,
closes #6034)
文件: src/channel.c
Patch 8.2.0690
问题: Line number of option set by modeline is wrong.
解决方案: Do not double the line number. (Ozaki Kiichi, closes #6035)
文件: src/option.c, src/testdir/test_modeline.vim
Patch 8.2.0691
问题: Startup test fails.
解决方案: Adjust expected output from -V2 argument.
文件: src/testdir/test_startup.vim
Patch 8.2.0692
问题: Startup test fails on MS-Windows.
解决方案: Allow for any path.
文件: src/testdir/test_startup.vim
Patch 8.2.0693
问题: Closure using argument not tested.
解决方案: Add a test, make it work.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0694
问题: Haiku: channel and terminal do not work.
解决方案: Close files when the job has finished. (Ozaki Kiichi,
closes #6039)
文件: src/channel.c, src/getchar.c, src/gui_haiku.cc, src/misc1.c
Patch 8.2.0695
问题: Vim9: cannot define a function inside a function.
解决方案: Initial support for :def inside :def.
文件: src/userfunc.c, src/proto/userfunc.pro, src/vim9compile.c,
src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.0696
问题: Vim9: nested function does not work properly
解决方案: Create a function reference. Check argument count.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.0697
问题: Vim9: memory leak when using nested function.
解决方案: Unreference function when deleting instructions. Adjust reference
count for local variables.
文件: src/vim9compile.c, src/vim9execute.c
Patch 8.2.0698
问题: Insert mode completion not fully tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #6041)
文件: src/testdir/test_edit.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_textformat.vim
Patch 8.2.0699
问题: Vim9: not all errors tested.
解决方案: Add test for deleted function. Bail out on first error.
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_expr.vim, src/testdir/vim9.vim
Patch 8.2.0700
问题: Vim9: converting error message to exception not tested.
解决方案: Test exception from error. Do not continue after :echoerr.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.0701
问题: Vim9 test fails without job feature.
解决方案: Add feature check.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0702
问题: Running channel tests may leave running process behind.
解决方案: Make Python client exit when running into EOF. (Kurtis Rader,
part of #6046)
文件: src/testdir/test_channel_pipe.py
Patch 8.2.0703
问题: Vim9: closure cannot store value in outer context.
解决方案: Make storing value in outer context work. Make :disassemble
accept a function reference.
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/eval.c,
src/structs.h, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.0704
问题: Vim9: memory leak in disassemble test.
解决方案: Decrement refcount when creating funccal.
文件: src/vim9execute.c
Patch 8.2.0705
问题: Indent tests don't run on CI for FreeBSD.
解决方案: Set modeline. (Ozaki Kiichi, closes #6048)
文件: .cirrus.yml, runtime/indent/testdir/runtest.vim
Patch 8.2.0706
问题: Vim9: using assert_fails() causes function to finish.
解决方案: Check did_emsg instead of called_emsg.
文件: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0707
问题: Vim9 function test fails.
解决方案: Adjust expected error code.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.0708
问题: Vim9: constant expressions are not simplified.
解决方案: Simplify string concatenation.
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.0709
问题: MS-Windows: compiler warning for int vs size_t.
解决方案: Add type cast. (Mike Williams)
文件: src/channel.c
Patch 8.2.0710
问题: Netbeans test sometimes fails.
解决方案: Mark any test using an external command as flaky.
文件: src/testdir/shared.vim
Patch 8.2.0711
问题: With a long running Vim the temp directory might be cleared on
some systems.
解决方案: Lock the temp directory. (closes #6044)
文件: src/config.h.in, src/configure.ac, src/auto/configure,
src/fileio.c, src/globals.h, src/os_unix.h
Patch 8.2.0712
问题: Various code not fully tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #6049)
文件: src/testdir/test_functions.vim, src/testdir/test_options.vim,
src/testdir/test_system.vim, src/testdir/test_termcodes.vim
Patch 8.2.0713
问题: The pam_environment file is not recognized.
解决方案: Add a filetype pattern for pamenv. (closes #6051)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0714
问题: Vim9: handling constant expression does not scale.
解决方案: Use another solution, passing typval_T.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0715
问题: Vim9: leaking memory.
解决方案: Free strings after concatenating them.
文件: src/vim9compile.c
Patch 8.2.0716
问题: Vim9: another memory leak.
解决方案: Clear typval when failing.
文件: src/vim9compile.c
Patch 8.2.0717
问题: Vim9: postponed constant expressions does not scale.
解决方案: Add a structure to pass around postponed constants.
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.0718
问题: Gcc warning for returning pointer to local variable. (John
Marriott)
解决方案: Return another pointer.
文件: src/evalvars.c
Patch 8.2.0719
问题: Vim9: more expressions can be evaluated at compile time
解决方案: Recognize has('name').
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.0720
问题: Occasional exit when encountering an X error. (Manfred Lotz)
解决方案: On an X error do not exit, do preserve files.
文件: src/os_unix.c
Patch 8.2.0721
问题: Vim9: leaking memory when skipping.
解决方案: Disable skipping in generate_ppconst().
文件: src/vim9compile.c
Patch 8.2.0722
问题: Vim9: not handling constant expression for elseif.
解决方案: Use postponed constants. Delete the code for evaluating a
constant expression.
文件: src/vim9compile.c
Patch 8.2.0723
问题: Vim9: nested constant expression not evaluated compile time.
解决方案: Use compile_expr1() for parenthesis.
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.0724
问题: Vim9: appending to buffer/window/tab variable not tested
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0725
问题: Vim9: cannot call a function declared later in Vim9 script.
解决方案: Make two passes through the script file.
文件: src/scriptfile.c, src/proto/scriptfile.pro, src/vim9script.c,
src/vim9compile.c, src/vim9execute.c, src/proto/vim9compile.pro,
src/userfunc.c, src/proto/userfunc.pro, src/evalvars.c,
src/proto/evalvars.pro, src/vim.h,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0726
问题: Vim9: leaking memory when calling not compiled :def function.
解决方案: Check if function is compiled earlier.
文件: src/vim9execute.c
Patch 8.2.0727
问题: MS-Windows: new gcc compiler does not support scanf format.
解决方案: Use "%ll" instead of "%I". (Ken Takata)
文件: src/vim.h
Patch 8.2.0728
问题: Messages about a deadly signal are not left aligned.
解决方案: Output a CR before the NL. (Dominique Pellé, #6055)
文件: src/misc1.c, src/os_unix.c
Patch 8.2.0729
问题: Vim9: When reloading a script variables are not cleared.
解决方案: When sourcing a script again clear all script-local variables.
文件: src/dict.c, src/proto/dict.pro, src/scriptfile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0730
问题: Vim9: Assignment to dict member does not work.
解决方案: Parse dict assignment. Implement getting dict member.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/globals.h,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.0731
问题: Vim9: parsing declarations continues after :finish.
解决方案: Bail out when encountering :finish.
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.0732
问题: Vim9: storing value in dict messes up stack.
解决方案: Correct item count of stack.
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.0733
问题: Vim9: assigning to dict or list argument does not work.
解决方案: Recognize an argument as assignment target.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.0734
问题: Vim9: leaking memory when using :finish.
解决方案: Do not check for next line in third pass.
文件: src/scriptfile.c
Patch 8.2.0735
问题: Vim9: using uninitialized memory.
解决方案: Clear the arg_lvar field.
文件: src/vim9compile.c
Patch 8.2.0736
问题: Some files not recognized as pamenv.
解决方案: Add pam_inv.conf. (closes #6065)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0737
问题: When shell doesn't support CTRL-Z Vim still handles it.
解决方案: Ignore the STOP signal if it was ignored on startup.
(Kurtis Rader, closes #5990, closes #6058)
文件: src/os_unix.c
Patch 8.2.0738
问题: Mouse handling in a terminal window not well tested.
解决方案: Add tests. (Yegappan Lakshmanan, closes #6052)
文件: src/testdir/term_util.vim, src/testdir/test_gui.vim,
src/testdir/test_modeless.vim, src/testdir/test_terminal.vim
Patch 8.2.0739
问题: Incomplete profiling when exiting because of a deadly signal.
解决方案: Call __gcov_flush() if available.
文件: src/os_unix.c, src/Makefile, .travis.yml
Patch 8.2.0740
问题: Minor message mistakes.
解决方案: Change vim to Vim and other fixes.
文件: src/if_py_both.h, src/if_tcl.c, src/main.c
Patch 8.2.0741
问题: Python tests fail because of changed message.
解决方案: Adjust the expected messages (Dominique Pellé, closes #6066)
文件: src/testdir/test86.ok, src/testdir/test87.ok
Patch 8.2.0742
问题: Handling of a TERM signal not tested.
解决方案: Add a test for SIGTERM. (Dominique Pellé, closes #6055)
文件: src/testdir/test_signals.vim
Patch 8.2.0743
问题: Can move to another buffer from a terminal in popup window.
解决方案: Do not allow "gf" or editing a file. (closes #6072)
文件: src/normal.c, src/ex_cmds.c, src/testdir/test_popupwin.vim
Patch 8.2.0744
问题: The name vim is not capitalized in a message.
解决方案: Use "Vim" instead of "vim".
文件: src/main.c
Patch 8.2.0745
问题: Crash on exit when not all popups are closed.
解决方案: Close popups when freeing all memory. Disable checking for popup
when editing a file for now.
文件: src/misc2.c, src/ex_cmds.c
Patch 8.2.0746
问题: popup_clear() hangs when a popup can't be closed.
解决方案: Bail out when a popup can't be closed.
文件: src/popupwin.c, src/proto/popupwin.pro
Patch 8.2.0747
问题: Cannot forcefully close all popups.
解决方案: Add the "force" argument to popup_clear(). Use it after running a
test. Put back the check for a popup when editing a file.
文件: runtime/doc/popup.txt, src/evalfunc.c, src/popupwin.c,
src/proto/popupwin.pro, src/tag.c, src/window.c, src/misc2.c,
src/ex_cmds.c, src/channel.c, src/testdir/runtest.vim,
src/testdir/test_terminal.vim
Patch 8.2.0748
问题: Cannot get a list of all popups.
解决方案: Add popup_list(). Use it in the test runner.
文件: runtime/doc/eval.txt, runtime/doc/popup.txt, src/popupwin.c,
src/proto/popupwin.pro, src/evalfunc.c,
src/testdir/test_popupwin.vim, src/testdir/runtest.vim
Patch 8.2.0749
问题: TERM signal test fails on FreeBSD.
解决方案: Do not check the messages, the may appear anywhere. (Dominique
Pellé, closes #6075)
文件: src/testdir/test_signals.vim
Patch 8.2.0750
问题: Netbeans test is a bit flaky.
解决方案: Allow for standard sign to be defined. Use WaitForAssert().
文件: src/testdir/test_netbeans.vim
Patch 8.2.0751
问题: Vim9: performance can be improved.
解决方案: Don't call break. Inline check for list materialize. Make an
inline version of ga_grow().
文件: src/macros.h, src/evalfunc.c, src/misc2.c,
src/proto/misc2.pro, src/channel.c, src/eval.c, src/evalbuffer.c,
src/evalvars.c, src/filepath.c, src/highlight.c, src/insexpand.c,
src/json.c, src/list.c, src/popupmenu.c, src/popupwin.c,
src/userfunc.c, src/if_py_both.h
Patch 8.2.0752
问题: Terminal in popup window test is a bit flaky.
解决方案: Wait for shell job status to be "run". Mark as flaky test.
文件: src/testdir/test_popupwin.vim
Patch 8.2.0753
问题: Vim9: expressions are evaluated in the discovery phase.
解决方案: Bail out if an expression is not a constant. Require a type for
declared constants.
文件: src/vim.h, src/evalvars.c, src/eval.c, src/ex_eval.c,
src/evalfunc.c, src/userfunc.c, src/dict.c, src/list.c,
src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.0754
问题: Vim9: No test for forward declaration.
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0755
问题: Vim9: No error when variable initializer is not a constant.
解决方案: Return FAIL when trying to get a variable value. Do not execute a
script when an error is detected in the first or second phase.
文件: src/eval.c, src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.0756 (after 8.2.0249)
问题: MS-Windows: still a compiler warning.
解决方案: Move flag to another place in the Makefile. (Ken Takata,
closes #6083)
文件: src/Make_mvc.mak
Patch 8.2.0757
问题: Vim9: no test for MEMBER instruction.
解决方案: Add a test. Make matches stricter.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.0758
问题: Vim9: no test for STORELIST and STOREDICT.
解决方案: Add a test. Make matches stricter.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.0759 (after 8.2.0751)
问题: Vim9: missing changes for performance improvements
解决方案: Use GA_GROW(). Don't call breakcheck so often.
文件: src/vim9execute.c
Patch 8.2.0760
问题: Vim9: dict member errors not tested.
解决方案: Delete unreachable error. Add tests.
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.0761
问题: Vim9: instructions not tested
解决方案: Use a variable instead of a constant.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.0762
问题: Buffer is not considered modified after setting crypt key.
解决方案: Set the modified flag. (Christian Brabandt, closes #6082)
文件: src/optionstr.c, src/testdir/test_crypt.vim
Patch 8.2.0763
问题: GUI test fails without the terminal feature.
解决方案: Check the terminal feature is supported. (Ken Takata,
closes #6084)
文件: src/testdir/test_gui.vim
Patch 8.2.0764
问题: Vim9: assigning to option not fully tested.
解决方案: Add more test cases. Allow using any type for assignment.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0765
问题: In the GUI can't use all the modifiers. (Andri Möll)
解决方案: Do not apply Alt/Meta early, do it later like with the terminal.
Avoid the Motif test from crashing.
文件: src/gui_gtk_x11.c, src/gui_x11.c, src/gui_mac.c, src/gui_w32.c,
src/gui_motif.c
Patch 8.2.0766
问题: Display error when using 'number' and 'breakindent'.
解决方案: Adjust extra spaces in the first row. (Ken Takata, closes #6089,
closes #5986)
文件: src/drawline.c, src/testdir/test_breakindent.vim
Patch 8.2.0767
问题: ModifyOtherKeys active when using a shell command in autocmd.
解决方案: Output T_CTE when going to cooked mode. (closes 5617)
文件: src/term.c
Patch 8.2.0768
问题: Vim9: memory leak in script test.
解决方案: Clear typval before giving an error message.
文件: src/vim9execute.c
Patch 8.2.0769
问题: VimLeavePre not triggered when Vim is terminated.
解决方案: Unblock autocommands.
文件: src/main.c, src/testdir/test_signals.vim
Patch 8.2.0770
问题: Cannot map CTRL-B when using the GUI.
解决方案: Reset the CTRL modifier when used. (closes #6092)
文件: src/gui_gtk_x11.c
Patch 8.2.0771
问题: Vim9: cannot call a compiled closure from not compiled code.
解决方案: Pass funcexe to call_user_func().
文件: src/userfunc.c, src/vim9execute.c, src/proto/vim9execute.pro,
src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.0772
问题: Vim9: some variable initializations not tested.
解决方案: Add a few more tests
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0773
问题: Switching to raw mode every time ":" is used.
解决方案: When executing a shell set cur_tmode to TMODE_UNKNOWN, so that the
next time TMODE_RAW is used it is set, but not every time.
文件: src/term.h, src/os_unix.c, src/term.c, src/os_amiga.c,
src/os_win32.c
Patch 8.2.0774
问题: t_TI and t_TE are output when using 'visualbell'. (Dominique
Pellé)
解决方案: Do not change the terminal mode for a short sleep. Do not output
t_TI and t_TE when switching to/from TMODE_SLEEP. Make tmode an
enum.
文件: src/os_unix.c, src/proto/os_unix.pro, src/os_amiga.c,
src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro,
src/os_vms.c, src/proto/os_vms.pro, src/os_win32.c,
src/proto/os_win32.pro, src/term.c, src/term.h, src/globals.h
Patch 8.2.0775
问题: Not easy to call a Vim function from Lua.
解决方案: Add vim.call() and vim.fn(). (Prabir Shrestha, closes #6063)
文件: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.0776
问题: Libvterm code lags behind the upstream version.
解决方案: Include revision 719.
文件: Filelist, src/libvterm/README, src/libvterm/Makefile,
src/libvterm/find-wide-chars.pl, src/libvterm/src/fullwidth.inc,
src/libvterm/src/unicode.c
Patch 8.2.0777 (after 8.2.0776)
问题: Terminal test fails.
解决方案: Adjust character position for double-wide characters.
文件: src/testdir/test_terminal.vim
Patch 8.2.0778
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 720 - 723.
文件: src/libvterm/t/10state_putglyph.test, src/libvterm/Makefile,
src/libvterm/t/run-test.pl, src/libvterm/src/state.c,
src/libvterm/t/92lp1805050.test
Patch 8.2.0779
问题: Tmode_T not used everywhere.
解决方案: Also use tmode_T for settmode().
文件: src/term.c, src/proto/term.pro
Patch 8.2.0780
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 724 - 726.
文件: Filelist, src/libvterm/t/40screen_ascii.test,
src/libvterm/t/60screen_ascii.test,
src/libvterm/t/41screen_unicode.test,
src/libvterm/t/61screen_unicode.test,
src/libvterm/t/42screen_damage.test,
src/libvterm/t/62screen_damage.test,
src/libvterm/t/43screen_resize.test,
src/libvterm/t/63screen_resize.test,
src/libvterm/t/44screen_pen.test,
src/libvterm/t/64screen_pen.test,
src/libvterm/t/45screen_protect.test,
src/libvterm/t/65screen_protect.test,
src/libvterm/t/46screen_extent.test,
src/libvterm/t/66screen_extent.test,
src/libvterm/t/47screen_dbl_wh.test,
src/libvterm/t/67screen_dbl_wh.test,
src/libvterm/t/48screen_termprops.test,
src/libvterm/t/68screen_termprops.test, src/libvterm/t/30pen.test,
src/libvterm/t/30state_pen.test, src/libvterm/t/92lp1805050.test,
src/libvterm/t/31state_rep.test, src/libvterm/doc/seqs.txt
Patch 8.2.0781 (after 8.2.0775)
问题: Compiler warning for not using value in Lua.
解决方案: Add "(void)".
文件: src/if_lua.c
Patch 8.2.0782
问题: Cannot build with Lua on MS-Windows.
解决方案: Add DLL symbol for luaL_Loadstring. (Ken Takata)
文件: src/if_lua.c
Patch 8.2.0783
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 728 - 729.
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile,
src/libvterm/src/keyboard.c, src/libvterm/t/25state_input.test,
src/libvterm/t/harness.c, src/libvterm/src/vterm.c,
src/libvterm/src/vterm_internal.h,
src/libvterm/t/26state_query.test
Patch 8.2.0784
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 730 - 733.
文件: src/libvterm/src/vterm.c, src/libvterm/src/state.c,
src/libvterm/include/vterm.h, src/libvterm/src/vterm_internal.h,
src/libvterm/t/harness.c
Patch 8.2.0785
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 734 - 740.
文件: src/libvterm/include/vterm.h, src/libvterm/src/pen.c,
src/libvterm/src/vterm.c, src/libvterm/doc/seqs.txt,
src/libvterm/t/30state_pen.test, src/libvterm/t/run-test.pl,
src/libvterm/Makefile, src/libvterm/CONTRIBUTING
Patch 8.2.0786
问题: Channel test is flaky on FreeBSD.
解决方案: Set the socket TCP_NODELAY option. Adjust expected line count in
netbeans test. (Ozaki Kiichi, closes #6097)
文件: src/testdir/test_channel.py, src/testdir/test_netbeans.vim
Patch 8.2.0787
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 741 - 742.
文件: Filelist, src/libvterm/src/screen.c
Patch 8.2.0788
问题: Memory leak in libvterm.
解决方案: free tmpbuffer.
文件: src/libvterm/src/vterm.c
Patch 8.2.0789
问题: Vim9: expression testing lost coverage using constants.
解决方案: Use a few variables instead of constants.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.0790
问题: Vim9: list index not well tested.
解决方案: Add a few more tests.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0791
问题: A second popup window with terminal causes trouble.
解决方案: Disallow opening a second terminal-popup window. (closes #6101,
closes #6103) Avoid defaulting to an invalid line number.
文件: runtime/doc/popup.txt, src/popupwin.c, src/ex_docmd.c,
src/testdir/test_popupwin.vim, src/testdir/test_terminal.vim
Patch 8.2.0792
问题: Build failure with small features.
解决方案: Add #ifdef.
文件: src/popupwin.c
Patch 8.2.0793
问题: MS-Windows: cannot build GUI with small features. (Michael Soyka)
解决方案: Add #ifdef around use of windowsVersion. (Ken Takata)
文件: src/os_win32.c
Patch 8.2.0794
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 743 - 747.
文件: src/libvterm/src/state.c, src/libvterm/src/screen.c,
src/libvterm/src/vterm_internal.h, src/libvterm/include/vterm.h,
src/libvterm/t/67screen_dbl_wh.test, src/libvterm/t/run-test.pl
Patch 8.2.0795
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 748 - 754.
文件: src/libvterm/include/vterm.h, src/libvterm/src/screen.c,
src/libvterm/src/state.c, src/libvterm/t/32state_flow.test,
src/libvterm/t/60screen_ascii.test,
src/libvterm/t/62screen_damage.test,
src/libvterm/t/63screen_resize.test, src/libvterm/t/harness.c,
src/libvterm/t/run-test.pl
Patch 8.2.0796
问题: MS-Windows: compiler can't handle C99 construct in libvterm.
解决方案: Change to C90 construct.
文件: src/libvterm/src/state.c
Patch 8.2.0797
问题: MS-Windows: compiler still can't handle C99 construct.
解决方案: Change to C90 construct. (Dominique Pellé, closes #6106)
文件: src/libvterm/src/state.c
Patch 8.2.0798
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 755 - 758.
文件: src/libvterm/t/run-test.pl, src/libvterm/src/screen.c,
src/libvterm/t/harness.c, src/libvterm/include/vterm.h,
src/libvterm/src/parser.c, src/libvterm/src/state.c,
src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
src/libvterm/t/02parser.test,
src/libvterm/t/18state_termprops.test,
src/libvterm/t/29state_fallback.test,
src/libvterm/t/68screen_termprops.test, src/terminal.c
Patch 8.2.0799
问题: Build fails if snprintf is not available.
解决方案: Use vim_snprintf().
文件: src/libvterm/src/state.c
Patch 8.2.0800
问题: Errors from failing test are unclear.
解决方案: Include text where parsing failed.
文件: src/json.c, src/testdir/test_json.vim
Patch 8.2.0801
问题: Terminal test fails on Mac.
解决方案: Concatenate OSC pieces.
文件: src/terminal.c
Patch 8.2.0802
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 759 - 762.
文件: src/terminal.c, src/libvterm/doc/seqs.txt,
src/libvterm/include/vterm.h, src/libvterm/src/pen.c,
src/libvterm/src/screen.c, src/libvterm/src/state.c,
src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
src/libvterm/t/harness.c, src/libvterm/t/12state_scroll.test
Patch 8.2.0803
问题: Libvterm code lags behind the upstream version.
解决方案: Include revisions 764 - 767
文件: src/Makefile, src/libvterm/src/parser.c,
src/libvterm/src/vterm_internal.h, src/libvterm/t/02parser.test,
src/libvterm/t/run-test.pl, src/libvterm/find-wide-chars.pl,
src/libvterm/src/fullwidth.inc
Patch 8.2.0804
问题: Libvterm code lags behind the upstream version.
解决方案: Include revision 727, but add the index instead of switching
between RGB and indexed.
文件: src/terminal.c, src/term.c, src/libvterm/include/vterm.h,
src/libvterm/src/pen.c, src/libvterm/src/screen.c,
src/libvterm/src/vterm_internal.h,
src/libvterm/t/30state_pen.test,
src/libvterm/t/harness.c, src/libvterm/src/state.c,
src/libvterm/t/26state_query.test,
src/libvterm/t/64screen_pen.test
Patch 8.2.0805
问题: Terminal key codes test fails on some systems.
解决方案: Skip keypad 3 and 9. (Yegappan Lakshmanan, closes #6070)
文件: src/testdir/test_terminal.vim
Patch 8.2.0806
问题: using "func!" after vim9script gives confusing error.
解决方案: Give E477. (closes #6107)
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.0807
问题: Cannot easily restore a mapping.
解决方案: Add mapset().
文件: runtime/doc/eval.txt, src/map.c, src/proto/map.pro, src/evalfunc.c
src/testdir/test_maparg.vim
Patch 8.2.0808
问题: Not enough testing for the terminal window.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6069) Fix memory
leak.
文件: src/testdir/test_gui.vim, src/testdir/test_terminal.vim,
src/terminal.c
Patch 8.2.0809
问题: Build failure with small features. (Tony Mechelynck)
解决方案: Move "expr" inside #ifdef.
文件: src/map.c
Patch 8.2.0810
问题: Error when appending "tagfile" to 'wildoptions'.
解决方案: use flags P_ONECOMMA and P_NODUP. (Dmitri Vereshchagin,
closes #6105)
文件: src/optiondefs.h, src/testdir/test_options.vim
Patch 8.2.0811
问题: Terminal keycode test is flaky.
解决方案: Use WaitForAssert()
文件: src/testdir/test_terminal.vim
Patch 8.2.0812
问题: mapset() does not properly handle <> notation.
解决方案: Convert <> codes. (closes #6116)
文件: src/map.c, src/testdir/test_maparg.vim
Patch 8.2.0813
问题: libvterm code is slightly different from upstream.
解决方案: Use upstream text to avoid future merge problems. Mainly comment
style changes.
文件: src/libvterm/include/vterm.h, src/libvterm/src/rect.h,
src/libvterm/src/utf8.h, src/libvterm/src/vterm_internal.h,
src/libvterm/src/encoding.c, src/libvterm/src/keyboard.c,
src/libvterm/src/mouse.c, src/libvterm/src/parser.c,
src/libvterm/src/pen.c, src/libvterm/src/screen.c,
src/libvterm/src/state.c, src/libvterm/src/unicode.c,
src/libvterm/src/vterm.c
Patch 8.2.0814
问题: Clang warning for implicit conversion.
解决方案: Add type cast. (Dominique Pellé, closes #6124)
文件: src/evalfunc.c
Patch 8.2.0815
问题: maparg() does not provide enough information for mapset().
解决方案: Add "lhsraw" and "lhsrawalt" items. Drop "simplified"
文件: src/map.c, runtime/doc/eval.txt, src/testdir/test_maparg.vim
Patch 8.2.0816
问题: Terminal test fails when compiled with Athena.
解决方案: Do give an error when the GUI is not running. (hint by Dominique
Pellé, closes #5928, closes #6132)
文件: src/globals.h, src/gui.c, src/term.c, src/channel.c,
src/testdir/test_terminal.vim
Patch 8.2.0817
问题: Not enough memory allocated when converting string with special
character.
解决方案: Reserve space for modifier code. (closes #6130)
文件: src/eval.c, src/testdir/test_functions.vim
Patch 8.2.0818
问题: Vim9: using a discovery phase doesn't work well.
解决方案: Remove the discovery phase, instead compile a function only when
it is used. Add :defcompile to compile def functions earlier.
文件: runtime/doc/vim9.txt, src/vim9script.c, src/structs.h,
src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
src/evalvars.c, src/proto/evalvars.pro, src/vim9compile.c,
src/proto/vim9compile.pro, src/vim9execute.c, src/ex_cmds.h,
src/ex_docmd.c, src/ex_cmdidxs.h, src/vim.h, src/testdir/vim9.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.0819
问题: Compiler warning for unused variable.
解决方案: Remove the variable.
文件: src/evalvars.c
Patch 8.2.0820
问题: Vim9: function type isn't set until compiled.
解决方案: Set function type early.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
src/testdir/test_vim9_func.vim
Patch 8.2.0821
问题: Vim9: memory leak in expr test.
解决方案: Do not decrement the length of the list of functions if the
current function is not at the end.
文件: src/vim9compile.c
Patch 8.2.0822
问题: Vim9: code left over from discovery phase.
解决方案: Remove the dead code.
文件: src/scriptfile.c, src/proto/scriptfile.pro, src/ex_cmds.h,
src/evalvars.c, src/proto/evalvars.pro, src/ex_docmd.c
Patch 8.2.0823
问题: Vim9: script reload test is disabled.
解决方案: Compile a function in the context of the script where it was
defined. Set execution stack for compiled function. Add a test
that an error is reported for the right file/function.
文件: src/vim9compile.c, src/vim9execute.c, src/scriptfile.c,
src/proto/scriptfile.pro, src/userfunc.c, src/globals.h,
src/structs.h, src/ex_docmd.c, src/ex_eval.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0824 (after 8.2.0817)
问题: Still not enough memory allocated when converting string with
special character.
解决方案: Reserve space for expanding K_SPECIAL. (closes #6130)
文件: src/eval.c, src/testdir/test_functions.vim
Patch 8.2.0825
问题: def_function() may return pointer that was freed.
解决方案: Set "fp" to NULL after freeing it.
文件: src/userfunc.c
Patch 8.2.0826
问题: Vim9: crash in :defcompile.
解决方案: Restart the loop after a call to compile_def_function() caused the
hash table to resize.
文件: src/userfunc.c
Patch 8.2.0827
问题: Vim9: crash in :defcompile.
解决方案: Fix off-by-one error.
文件: src/userfunc.c
Patch 8.2.0828
问题: Travis: regexp pattern doesn't work everywhere.
解决方案: Use [:blank:] instead of \b. (Ozaki Kiichi, closes #6146)
文件: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed,
ci/config.mk.sed, src/if_ruby.c
Patch 8.2.0829
问题: filter() may give misleading error message.
解决方案: Also mention Blob as an allowed argument.
文件: src/list.c, src/testdir/test_filter_map.vim
Patch 8.2.0830
问题: Motif: can't map "!". (Ben Jackson)
解决方案: Remove the shift modifier if it's already included in the key.
(closes #6147)
文件: src/gui_x11.c
Patch 8.2.0831
问题: Compiler warnings for integer sizes.
解决方案: Add type casts. (Mike Williams)
文件: src/libvterm/src/pen.c, src/terminal.c
Patch 8.2.0832
问题: Compiler warning for uninitialized variable. (Tony Mechelynck)
解决方案: Add initial value.
文件: src/map.c
Patch 8.2.0833
问题: Mapping <C-bslash> doesn't work in the GUI.
解决方案: Reset seenModifyOtherKeys when starting the GUI. (closes #6150)
文件: src/gui.c
Patch 8.2.0834
问题: :drop command in terminal popup causes problems.
解决方案: Check for using a popup window. (closes #6151)
文件: src/ex_cmds.c, src/testdir/test_popupwin.vim
Patch 8.2.0835
问题: Motif: mapping <C-bslash> still doesn't work.
解决方案: Accept CSI for K_SPECIAL. Do not apply CTRL to the character
early. (closes #6150)
文件: src/getchar.c, src/gui_x11.c
Patch 8.2.0836
问题: Not all :cdo output is visible.
解决方案: Reset 'shortmess' temporarily. (Yegappan Lakshmanan, closes #6155)
文件: src/ex_cmds2.c, src/testdir/test_cdo.vim
Patch 8.2.0837
问题: Compiler warning for value set but not used.
解决方案: Move variable inside #ifdef.
文件: src/channel.c
Patch 8.2.0838
问题: MS-Windows: compiler warning for uninitialized variables.
解决方案: Initialize variables.
文件: src/screen.c
Patch 8.2.0839
问题: Dropping modifier when putting a character back in typeahead.
解决方案: Add modifier to ins_char_typebuf(). (closes #6158)
文件: src/getchar.c, src/proto/getchar.pro, src/message.c, src/normal.c,
src/terminal.c, src/globals.h, src/testdir/test_messages.vim
Patch 8.2.0840
问题: Search match count wrong when only match is in fold.
解决方案: Update search stats when in a closed fold. (Christian Brabandt,
closes #6160, closes #6152)
文件: src/search.c, src/testdir/dumps/Test_searchstat_3.dump,
src/testdir/test_search_stat.vim
Patch 8.2.0841
问题: 'verbose' value 16 causes duplicate output.
解决方案: Combine levels 15 and 16 into one message. (Christian Brabandt,
closes #6153)
文件: runtime/doc/options.txt, src/ex_docmd.c
Patch 8.2.0842 (after 8.2.0837)
问题: MS-Windows: channel tests fail.
解决方案: Adjust #ifdefs. (closes #6162)
文件: src/channel.c
Patch 8.2.0843
问题: Filetype elm not detected.
解决方案: Recognize *.elm files. (closes #6157)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0844
问题: Text properties crossing lines not handled correctly.
解决方案: When saving for undo include an extra line when needed and do not
adjust properties when undoing. (Axel Forsman, closes #5875)
文件: src/memline.c, src/proto/memline.pro, src/undo.c, src/structs.h
Patch 8.2.0845
问题: Text properties crossing lines not handled correctly.
解决方案: When joining lines merge text properties if possible.
(Axel Forsman, closes #5839, closes #5683)
文件: src/testdir/test_textprop.vim, src/memline.c, src/ops.c,
src/proto/textprop.pro, src/textprop.c,
src/testdir/dumps/Test_textprop_01.dump
Patch 8.2.0846
问题: Build failure with small features.
解决方案: Add #ifdef.
文件: src/undo.c
Patch 8.2.0847
问题: Typval related code is spread out.
解决方案: Move code to new typval.c file. (Yegappan Lakshmanan, closes #6093)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/eval.c, src/evalfunc.c, src/globals.h, src/proto.h,
src/proto/eval.pro, src/proto/evalfunc.pro, src/proto/typval.pro,
src/typval.c
Patch 8.2.0848
问题: MS-Windows: the Windows terminal code has some flaws.
解决方案: Do not redraw the right edge of the screen. Remove the background
color trick. Flush the screen output buffer often. (Nobuhiro
Takasaki, #5546)
文件: src/os_win32.c, src/proto/os_win32.pro, src/term.c
Patch 8.2.0849
问题: BeOS code is not maintained and probably unused.
解决方案: Remove the BeOS code. (Emir Sarı, closes #5817)
文件: Filelist, src/Makefile, src/configure.ac, src/auto/configure,
src/evalfunc.c, src/normal.c, src/os_beos.c, src/os_beos.h,
src/os_beos.rsrc, src/os_unix.c, src/proto.h,
src/proto/os_beos.pro, src/pty.c, src/screen.c, src/term.c,
src/testdir/test_functions.vim, src/ui.c, src/vim.h
Patch 8.2.0850
问题: MS-Windows: exepath() works differently from cmd.exe.
解决方案: Make exepath() work better on MS-Windows. (closes #6115)
文件: runtime/doc/eval.txt, src/os_win32.c,
src/testdir/test_functions.vim
Patch 8.2.0851 (after 8.2.0833)
问题: Can't distinguish <M-a> from accented "a" in the GUI.
解决方案: Use another way to make mapping <C-bslash> work. (closes #6163)
文件: src/gui.c, src/gui_gtk_x11.c, src/getchar.c
Patch 8.2.0852
问题: Cannot map CTRL-S on some systems.
解决方案: Do not use CTRL-S for flow control.
文件: src/os_unix.c
Patch 8.2.0853
问题: ml_delete() often called with FALSE argument.
解决方案: Use ml_delete_flags(x, ML_DEL_MESSAGE) when argument is TRUE.
文件: src/buffer.c, src/change.c, src/diff.c, src/evalbuffer.c,
src/ex_cmds.c, src/ex_docmd.c, src/fileio.c, src/if_lua.c,
src/if_mzsch.c, src/if_ruby.c, src/if_tcl.c, src/normal.c,
src/popupmenu.c, src/popupwin.c, src/quickfix.c, src/spell.c,
src/terminal.c, src/if_perl.xs, src/if_py_both.h, src/memline.c,
src/proto/memline.pro
Patch 8.2.0854
问题: Xxd cannot show offset as a decimal number.
解决方案: Add the "-d" flag. (Aapo Rantalainen, closes #5616)
文件: src/testdir/test_xxd.vim, src/xxd/xxd.c
Patch 8.2.0855
问题: GUI tests fail because the test doesn't use a modifier.
解决方案: Add "\{xxx}" to be able to encode a modifier.
文件: runtime/doc/eval.txt, src/typval.c, src/misc2.c, src/vim.h,
src/proto/misc2.pro, src/gui_mac.c, src/option.c, src/highlight.c,
src/term.c, src/testdir/test_backspace_opt.vim,
src/testdir/test_mapping.vim, src/testdir/test_messages.vim
Patch 8.2.0856 (after 8.2.0852)
问题: CTRL-S stops output.
解决方案: Invert the IXON flag. (closes #6166)
文件: src/os_unix.c
Patch 8.2.0857
问题: GTK cell height can be a pixel too much.
解决方案: Subtract 3 instead of 1 when rounding. (closes #6168)
文件: src/gui_gtk_x11.c
Patch 8.2.0858
问题: Not easy to require Lua modules.
解决方案: Improve use of Lua path. (Prabir Shrestha, closes #6098)
文件: Filelist, src/if_lua.c, src/optionstr.c, src/proto/if_lua.pro,
src/testdir/test_lua.vim,
src/testdir/testluaplugin/lua/testluaplugin/hello.lua,
src/testdir/testluaplugin/lua/testluaplugin/init.lua
Patch 8.2.0859
问题: No Turkish translation of the manual.
解决方案: Add Turkish translations. (Emir Sarı, closes #5641)
文件: Filelist, runtime/doc/Makefile, runtime/doc/evim-tr.1,
runtime/doc/evim-tr.UTF-8.1, runtime/doc/vim-tr.1,
runtime/doc/vim-tr.UTF-8.1, runtime/doc/vimdiff-tr.1,
runtime/doc/vimdiff-tr.UTF-8.1, runtime/doc/vimtutor-tr.1,
runtime/doc/vimtutor-tr.UTF-8.1, src/Makefile
Patch 8.2.0860
问题: Cannot use CTRL-A and CTRL-X on unsigned numbers.
解决方案: Add "unsigned" to 'nrformats'. (Naruhiko Nishino, closes #6144)
文件: runtime/doc/options.txt, src/ops.c, src/optionstr.c,
src/testdir/test_increment.vim
Patch 8.2.0861
问题: Cannot easily get all the current marks.
解决方案: Add getmarklist(). (Yegappan Lakshmanan, closes #6032)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/mark.c, src/proto/mark.pro, src/testdir/test_marks.vim
Patch 8.2.0862
问题: ":term ++curwin" makes the current buffer hidden. (Harm te
Hennepe)
解决方案: Do not hide the current buffer. (closes #6170)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.0863
问题: Cannot set a separate color for underline/undercurl.
解决方案: Add the t_AU and t_8u termcap codes. (Timur Celik, closes #6011)
文件: runtime/doc/syntax.txt, runtime/doc/term.txt, src/globals.h,
src/highlight.c, src/optiondefs.h, src/proto/term.pro,
src/screen.c, src/structs.h, src/term.c, src/term.h,
src/testdir/test_options.vim
Patch 8.2.0864
问题: Pragmas are indented all the way to the left.
解决方案: Add an option to indent pragmas like normal code. (Max Rumpf,
closes #5468)
文件: runtime/doc/indent.txt, src/cindent.c, src/structs.h,
src/testdir/test_cindent.vim
Patch 8.2.0865
问题: Syntax foldlevel is taken from the start of the line.
解决方案: Add ":syn foldlevel" to be able to use the minimal foldlevel in
the line. (Brad King, closes #6087)
文件: runtime/doc/syntax.txt, src/structs.h, src/syntax.c,
src/testdir/test_syntax.vim
Patch 8.2.0866
问题: Not enough tests for buffer writing.
解决方案: Add more tests. Use CheckRunVimInTerminal in more places.
(Yegappan Lakshmanan, closes #6167)
文件: src/testdir/test_arglist.vim, src/testdir/test_match.vim,
src/testdir/test_messages.vim, src/testdir/test_netbeans.py,
src/testdir/test_netbeans.vim, src/testdir/test_search.vim,
src/testdir/test_signals.vim, src/testdir/test_signs.vim,
src/testdir/test_startup.vim, src/testdir/test_startup_utf8.vim,
src/testdir/test_syntax.vim, src/testdir/test_tabpage.vim,
src/testdir/test_timers.vim, src/testdir/test_vimscript.vim,
src/testdir/test_writefile.vim
Patch 8.2.0867
问题: Using \{xxx} for encoding a modifier is not nice.
解决方案: Use \<*xxx> instead, since it's the same as \<xxx> but producing a
different code.
文件: runtime/doc/eval.txt, src/typval.c, src/misc2.c, src/vim.h,
src/testdir/test_backspace_opt.vim, src/testdir/test_mapping.vim,
src/testdir/test_messages.vim
Patch 8.2.0868
问题: trim() always trims both ends.
解决方案: Add an argument to only trim the beginning or end. (Yegappan
Lakshmanan, closes #6126)
文件: runtime/doc/eval.txt, src/evalfunc.c,
src/testdir/test_functions.vim
Patch 8.2.0869
问题: It is not possible to customize the quickfix window contents.
解决方案: Add 'quickfixtextfunc'. (Yegappan Lakshmanan, closes #5465)
文件: runtime/doc/eval.txt, runtime/doc/options.txt,
runtime/doc/quickfix.txt, src/option.h, src/optiondefs.h,
src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.0870
问题: MS-Windows: Control keys don't work in the GUI.
解决方案: Don't set seenModifyOtherKeys for now. (Yasuhiro Matsumoto,
closes #6175)
文件: src/gui.c
Patch 8.2.0871
问题: Cannot use getmarklist() as a method.
解决方案: Make getmarklist() work as a method. Add one to the column
number to match getpos(). (Yegappan Lakshmanan, closes #6176)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/mark.c,
src/testdir/test_marks.vim
Patch 8.2.0872
问题: XIM code is mixed with multibyte code.
解决方案: Move the XIM code to a separate file. (Yegappan Lakshmanan,
closes #6177)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/gui_xim.c,
src/mbyte.c, src/proto.h, src/proto/gui_xim.pro,
src/proto/mbyte.pro
Patch 8.2.0873
问题: A .jl file can be sawfish (lisp) or Julia.
解决方案: Do not recognize *.jl as lisp, since it might be Julia.
(closes #6178)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0874
问题: Signals test is a bit flaky.
解决方案: Flush the XautoOut file. Delete files that may be left behind
from a failure. (Dominique Pellé, closes #6179)
文件: src/testdir/test_signals.vim
Patch 8.2.0875
问题: Getting attributes for directory entries is slow.
解决方案: Add readdirex(). (Ken Takata, closes #5619)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/fileio.c, src/filepath.c, src/proto/fileio.pro,
src/proto/filepath.pro, src/testdir/test_functions.vim
Patch 8.2.0876
问题: :pwd does not give a hint about the scope of the directory
解决方案: Make ":verbose pwd" show the scope. (Takuya Fujiwara, closes #5469)
文件: runtime/doc/editing.txt, src/ex_docmd.c, src/testdir/test_cd.vim
Patch 8.2.0877
问题: Cannot get the search statistics.
解决方案: Add the searchcount() function. (Fujiwara Takuya, closes #4446)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/macros.h,
src/proto/search.pro, src/search.c,
src/testdir/test_search_stat.vim
Patch 8.2.0878
问题: No reduce() function.
解决方案: Add a reduce() function. (closes #5481)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/globals.h, src/list.c,
src/proto/list.pro, src/testdir/test_listdict.vim
Patch 8.2.0879
问题: Compiler warning for unused function argument.
解决方案: Add UNUSED.
文件: src/search.c
Patch 8.2.0880 (after 8.2.0877)
问题: Leaking memory when using searchcount().
解决方案: Free the last used search pattern.
文件: src/search.c
Patch 8.2.0881
问题: Compiler warning for argument type.
解决方案: Add type cast. (Mike Williams)
文件: src/ops.c
Patch 8.2.0882
问题: Leaking memory when using reduce().
解决方案: Free the intermediate value.
文件: src/list.c
Patch 8.2.0883
问题: Memory leak in test 49.
解决方案: Free "sfile" from the exception.
文件: src/ex_docmd.c
Patch 8.2.0884
问题: Searchcount() test fails on slower systems.
解决方案: Set a longer timeout.
文件: src/search.c, src/testdir/test_search_stat.vim
Patch 8.2.0885
问题: "make shadow" does not link new lua test dir.
解决方案: Also link testdir/testluaplugin. (Elimar Riesebieter)
文件: src/Makefile
Patch 8.2.0886
问题: Cannot use octal numbers in scriptversion 4.
解决方案: Add the "0o" notation. (Ken Takata, closes #5304)
文件: runtime/doc/eval.txt, src/charset.c, src/evalfunc.c,
src/testdir/test_eval_stuff.vim, src/testdir/test_functions.vim,
src/vim.h
Patch 8.2.0887
问题: Searchcount().exact_match is 1 right after a match.
解决方案: Use LT_POS() instead of LTOREQ_POS(). (closes #6189)
文件: src/search.c, src/testdir/test_search_stat.vim
Patch 8.2.0888
问题: Readdirex() returns size -2 for a directory.
解决方案: Add missing "else". (Ken Takata, closes #6185)
文件: src/fileio.c, src/testdir/test_functions.vim
Patch 8.2.0889
问题: Using old style comments.
解决方案: Use // comments. (Yegappan Lakshmanan, closes #6190)
文件: src/gui_xim.c
Patch 8.2.0890
问题: No color in terminal window when 'termguicolors' is set.
解决方案: Clear the underline color. (closes #6186)
文件: src/highlight.c
Patch 8.2.0891
问题: Clang warns for invalid conversion.
解决方案: Use zero instead of INVALCOLOR.
文件: src/highlight.c
Patch 8.2.0892
问题: Ubsan warns for undefined behavior.
解决方案: Use unsigned instead of signed variable. (Dominique Pellé,
closes #6193)
文件: src/regexp_nfa.c
Patch 8.2.0893
问题: Assert_equalfile() does not take a third argument.
解决方案: Implement the third argument. (Gary Johnson)
文件: runtime/doc/eval.txt, runtime/doc/testing.txt, src/evalfunc.c,
src/testdir/test_assert.vim, src/testing.c
Patch 8.2.0894
问题: :mkspell can take very long if the word count is high.
解决方案: Use long to avoid negative numbers. Increase the limits by 20% if
the compression did not have effect.
文件: src/spellfile.c
Patch 8.2.0895
问题: :mkspell output does not mention the tree type.
解决方案: Back out increasing the limits, it has no effect. Mention the
tree being compressed. Only give a message once per second.
文件: src/spellfile.c
Patch 8.2.0896
问题: Crash when calling searchcount() with a string.
解决方案: Check the argument is a dict. (closes #6192)
文件: src/search.c, src/testdir/test_search_stat.vim
Patch 8.2.0897
问题: List of functions in patched version is outdated.
解决方案: Update the function lists only.
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt
Patch 8.2.0898
问题: Missing help for a function goes unnoticed.
解决方案: Add a test. (Gary Johnson)
文件: src/testdir/test_function_lists.vim, src/testdir/Make_all.mak
Patch 8.2.0899
问题: Assert_equalfile() does not give a hint about the difference.
解决方案: Display the last seen text.
文件: src/testing.c, src/testdir/test_assert.vim
Patch 8.2.0900
问题: Function list test fails on MS-Windows.
解决方案: Make sure the fileformat is "unix"
文件: src/testdir/test_function_lists.vim
Patch 8.2.0901
问题: Formatting CJK text isn't optimal.
解决方案: Properly break CJK lines. (closes #3875)
文件: runtime/doc/change.txt, src/mbyte.c, src/ops.c, src/option.h,
src/proto/mbyte.pro, src/testdir/Make_all.mak, src/textformat.c,
src/testdir/test_cjk_linebreak.vim
Patch 8.2.0902
问题: Using searchcount() in 'statusline' causes an error.
解决方案: Avoid saving/restoring the search pattern recursively.
(closes #6194)
文件: src/search.c, src/testdir/test_search_stat.vim,
src/testdir/dumps/Test_searchstat_4.dump
Patch 8.2.0903
问题: comparing WINVER does not work correctly.
解决方案: Use arithmetic expansion. (Ozaki Kiichi, closes #6197)
文件: src/Make_cyg_ming.mak
Patch 8.2.0904
问题: Assuming modifyOtherKeys for rhs of mapping.
解决方案: Ignore seenModifyOtherKeys for mapped characters. (closes #6200)
文件: src/getchar.c, src/testdir/test_gui.vim
Patch 8.2.0905
问题: Test coverage could be better.
解决方案: Add a couple of tests. (Dominique Pellé, closes #6202)
文件: src/testdir/test_cmdline.vim, src/testdir/test_ga.vim
Patch 8.2.0906
问题: When setting 'termguicolors' SpellBad is no longer red.
解决方案: Only use the RGB guisp color for cterm when using the "underline"
or "undercurl" attributes to avoid the background color to be
cleared. Also make t_8u empty when the termresponse indicates a
real xterm. (closes #6207)
文件: src/highlight.c, src/term.c
Patch 8.2.0907
问题: When using :global clipboard isn't set correctly.
解决方案: Set "clip_unnamed_saved" instead of "clip_unnamed". (Christian
Brabandt, closes #6203, closes #6198)
文件: src/clipboard.c, src/testdir/test_global.vim
Patch 8.2.0908
问题: Crash when changing the function table while listing it.
解决方案: Bail out when the function table changes. (closes #6209)
文件: src/userfunc.c, src/testdir/test_timers.vim
Patch 8.2.0909
问题: Cannot go back to the previous local directory.
解决方案: Add "tcd -" and "lcd -". (Yegappan Lakshmanan, closes #4362)
文件: runtime/doc/editing.txt, src/filepath.c, src/ex_docmd.c,
src/structs.h, src/testdir/test_cd.vim, src/window.c
Patch 8.2.0910
问题: Vim is not reproducibly buildable.
解决方案: Use the $SOURCE_DATE_EPOCH environment variable in configure.
(James McCoy, closes #513) Give a warning about using it.
文件: src/config.h.in, src/config.mk.in, src/configure.ac,
src/auto/configure, src/version.c, src/Makefile
Patch 8.2.0911
问题: Crash when opening a buffer for the cmdline window fails. (Chris
Barber)
解决方案: Check do_ecmd() succeeds. Reset got_int if "q" was used at the
more prompt. (closes #6211)
文件: src/ex_getln.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_cmdwin_interrupted.dump
Patch 8.2.0912
问题: A few test cases for CJK formatting are disabled.
解决方案: Fix the tests and enable them. (closes #6212)
文件: src/testdir/test_cjk_linebreak.vim
Patch 8.2.0913
问题: Code for resetting v:register is duplicated.
解决方案: Add reset_reg_var().
文件: src/evalvars.c, src/proto/evalvars.pro, src/main.c, src/normal.c
Patch 8.2.0914
问题: MS-Windows: cannot specify a "modified by" text.
解决方案: Add MODIFIED_BY in the MSVC build file. (Chen Lei, closes #1275)
文件: src/Make_mvc.mak
Patch 8.2.0915
问题: Search() cannot skip over matches like searchpair() can.
解决方案: Add an optional "skip" argument. (Christian Brabandt, closes #861)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_syntax.vim,
src/structs.h, src/evalvars.c, src/proto/evalvars.pro
Patch 8.2.0916
问题: Mapping with partly modifyOtherKeys code does not work.
解决方案: If there is no mapping with a separate modifier include the
modifier in the key and then try mapping again. (closes #6200)
文件: src/getchar.c, src/proto/getchar.pro, src/edit.c, src/term.c,
src/proto/term.pro, src/testdir/test_termcodes.vim
Patch 8.2.0917
问题: Quickfix entries do not support a "note" type.
解决方案: Add support for "note". (partly by Yegappan Lakshmanan,
closes #5527, closes #6216)
文件: runtime/doc/quickfix.txt, src/quickfix.c,
src/testdir/test_quickfix.vim
Patch 8.2.0918
问题: Duplicate code for evaluating expression argument.
解决方案: Merge the code and make the use more flexible.
文件: src/evalfunc.c, src/eval.c, src/proto/eval.pro, src/evalvars.c,
src/proto/evalvars.pro, src/structs.h
Patch 8.2.0919
问题: Merging modifier for modifyOtherKeys is done twice.
解决方案: Remove the merging done in vgetc().
文件: src/getchar.c, src/ex_getln.c
Patch 8.2.0920
问题: Writing viminfo fails with a circular reference.
解决方案: Use copyID to detect the cycle. (closes #6217)
文件: src/testdir/test_viminfo.vim, src/viminfo.c
Patch 8.2.0921
问题: CTRL-W T in cmdline window causes trouble.
解决方案: Disallow CTRL-W T in the cmdline window. Add more tests.
(Naruhiko Nishino, closes #6219)
文件: src/testdir/test_cmdline.vim, src/window.c
Patch 8.2.0922
问题: Search test fails.
解决方案: Remove failure tests for calls that no longer fail.
文件: src/testdir/test_search.vim
Patch 8.2.0923
问题: Cmdline test is slow.
解决方案: Use WaitForAssert().
文件: src/testdir/test_cmdline.vim
Patch 8.2.0924
问题: Cannot save and restore a register properly.
解决方案: Add getreginfo() and make setreg() accept a dictionary. (Andy
Massimino, closes #3370)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/proto/register.pro, src/register.c,
src/testdir/test_eval_stuff.vim, src/testdir/test_registers.vim
Patch 8.2.0925
问题: Getcompletion() does not return command line arguments.
解决方案: Add the "cmdline" option. (Shougo, closes #1140)
文件: runtime/doc/eval.txt, src/cmdexpand.c,
src/testdir/test_cmdline.vim
Patch 8.2.0926
问题: Cmdline test fails on Appveyor.
解决方案: Add CR to the commands. (Naruhiko Nishino, closes #6220)
文件: src/testdir/test_cmdline.vim
Patch 8.2.0927
问题: Some sshconfig and ssdhconfig files are not recognized.
解决方案: Add filetype patterns.
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0928
问题: Many type casts are used for vim_strnsave().
解决方案: Make the length argument size_t instead of int. (Ken Takata,
closes #5633) Remove some type casts.
文件: src/misc2.c, src/proto/misc2.pro, src/autocmd.c, src/channel.c,
src/cmdexpand.c, src/dict.c, src/diff.c, src/digraph.c,
src/eval.c, src/evalfunc.c, src/highlight.c, src/syntax.c
Patch 8.2.0929
问题: v:register is not cleared after an operator was executed.
解决方案: Clear v:register after finishing an operator (Andy Massimino,
closes #5305)
文件: src/normal.c, src/testdir/test_registers.vim
Patch 8.2.0930
问题: Script filetype detection trips over env -S argument.
解决方案: Remove "-S" and "--ignore-environment". (closes #5013)
Add tests.
文件: runtime/scripts.vim, src/testdir/test_filetype.vim
Patch 8.2.0931
问题: Some remarks about BeOS remain.
解决方案: Remove BeOS remarks from the help and other files. (Emir Sarı,
closes #6221)
文件: READMEdir/README_extra.txt, runtime/doc/options.txt,
runtime/doc/os_beos.txt, runtime/doc/os_vms.txt,
runtime/doc/vi_diff.txt, src/INSTALL
Patch 8.2.0932
问题: Misspelling spelllang.
解决方案: Add an "l". (Dominique Pellé)
文件: src/optionstr.c, src/proto/spell.pro, src/spell.c
Patch 8.2.0933
问题: 'quickfixtextfunc' does not get window ID of location list.
解决方案: Add "winid" to the dict argument. (Yegappan Lakshmanan,
closes #6222)
文件: runtime/doc/quickfix.txt, src/quickfix.c,
src/testdir/test_quickfix.vim
Patch 8.2.0934
问题: Running lhelpgrep twice in a help window doesn't jump to the help
topic.
解决方案: Check whether any window with the location list is present.
(Yegappan Lakshmanan, closes #6215)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.0935
问题: Flattening a list with existing code is slow.
解决方案: Add flatten(). (Mopp, closes #3676)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/list.c, src/proto/list.pro, src/testdir/Make_all.mak,
src/testdir/test_flatten.vim
Patch 8.2.0936
问题: Some terminals misinterpret the code for getting cursor style.
解决方案: Send a sequence to the terminal and check the result. (IWAMOTO
Kouichi, closes #2126) Merged with current code.
文件: src/main.c, src/term.c, src/proto/term.pro,
src/testdir/term_util.vim, src/testdir/test_quickfix.vim,
src/testdir/test_terminal.vim, src/testdir/test_startup_utf8.vim,
src/testdir/dumps/Test_balloon_eval_term_01.dump,
src/testdir/dumps/Test_balloon_eval_term_01a.dump,
src/testdir/dumps/Test_balloon_eval_term_02.dump,
src/testdir/dumps/Test_terminal_all_ansi_colors.dump
Patch 8.2.0937
问题: Asan failure in the flatten() test.
解决方案: Free the flattened list.
文件: src/list.c
Patch 8.2.0938
问题: NFA regexp uses tolower() to compare ignore-case. (Thayne McCombs)
解决方案: Use utf_fold() when possible. (ref. neovim #12456)
文件: src/macros.h, src/diff.c, src/regexp_nfa.c,
src/testdir/test_regexp_utf8.vim
Patch 8.2.0939
问题: checking for term escape sequences is long and confusing
解决方案: Refactor code into separate functions.
文件: src/term.c
Patch 8.2.0940 (after 8.2.0939)
问题: Build failure with tiny features.
解决方案: Add #ifdef. Add UNUSED. A bit more cleaning up.
文件: src/term.c
Patch 8.2.0941
问题: Detecting terminal properties is unstructured.
解决方案: Add a table with terminal properties. Set properties when a
terminal is detected.
文件: src/term.c
Patch 8.2.0942
问题: Expanding to local dir after homedir keeps "~/".
解决方案: Adjust modify_fname(). (Christian Brabandt, closes #6205,
closes #5979)
文件: src/filepath.c, src/testdir/test_fnamemodify.vim
Patch 8.2.0943
问题: Displaying ^M or ^J depends on current buffer.
解决方案: Pass the displayed buffer to transchar(). (closes #6225)
文件: src/drawline.c, src/charset.c, src/proto/charset.pro,
src/ex_cmds.c, src/gui_beval.c, src/message.c,
src/testdir/test_display.vim,
src/testdir/dumps/Test_display_unprintable_01.dump,
src/testdir/dumps/Test_display_unprintable_02.dump
Patch 8.2.0944
问题: Xxd test leaves file behind.
解决方案: Delete the file "XXDfile". (Christian Brabandt, closes #6228)
文件: src/testdir/test_xxd.vim
Patch 8.2.0945
问题: Cannot use "z=" when 'spell' is off.
解决方案: Make "z=" work even when 'spell' is off. (Christian Brabandt,
Gary Johnson, closes #6227)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/spell.c,
src/spellsuggest.c, src/testdir/test_spell.vim, src/globals.h
Patch 8.2.0946
问题: Cannot use "q" to cancel a number prompt.
解决方案: Recognize "q" instead of ignoring it.
文件: src/misc1.c, src/testdir/test_functions.vim
Patch 8.2.0947
问题: Readdirex() doesn't handle broken link properly.
解决方案: Small fixes to readdirex(). (Christian Brabandt, closes #6226,
closes #6213)
文件: src/fileio.c, src/testdir/test_functions.vim
Patch 8.2.0948
问题: Spell test fails.
解决方案: Adjust expected text of the prompt.
文件: src/testdir/test_spell.vim
Patch 8.2.0949
问题: Strptime() does not use DST.
解决方案: Set the tm_isdst field to -1. (Tomáš Janoušek, closes #6230)
文件: src/time.c, src/testdir/test_functions.vim
Patch 8.2.0950
问题: Tagjump test fails.
解决方案: Adjust expected text of the prompt.
文件: src/testdir/test_tagjump.vim
Patch 8.2.0951
问题: Search stat test has leftover from debugging.
解决方案: Remove line that writes a file. (Christian Brabandt, closes #6224)
文件: src/testdir/test_search_stat.vim
Patch 8.2.0952
问题: No simple way to interrupt Vim.
解决方案: Add the SigUSR1 autocommand, triggered by SIGUSR1. (Jacob Hayes,
closes #1718)
文件: runtime/doc/autocmd.txt, src/vim.h, src/autocmd.c, src/getchar.c,
src/globals.h, src/os_unix.c, src/testdir/test_autocmd.vim
Patch 8.2.0953
问题: Spell checking doesn't work for CamelCased words.
解决方案: Add the "camel" value in the new option 'spelloptions'.
(closes #1235)
文件: runtime/doc/options.txt, runtime/doc/spell.txt, src/optiondefs.h,
src/option.h, src/option.c, src/buffer.c, src/optionstr.c,
src/testdir/gen_opt_test.vim, src/testdir/test_spell.vim
Patch 8.2.0954
问题: Not all desktop files are recognized.
解决方案: Add the *.directory pattern. (Eisuke Kawashima, closes #3317)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0955 (after 8.2.0953)
问题: Build fails.
解决方案: Add missing struct change.
文件: src/structs.h
Patch 8.2.0956 (after 8.2.0953)
问题: Spell test fails.
解决方案: Add missing change the spell checking.
文件: src/spell.c
Patch 8.2.0957
问题: Compiler warning for uninitialized variable. (Tony Mechelynck)
解决方案: Initialize one variable.
文件: src/spell.c
Patch 8.2.0958
问题: Not sufficient testing for buffer writing.
解决方案: Add a few tests. (Yegappan Lakshmanan, closes #6238)
文件: src/testdir/test_backup.vim, src/testdir/test_writefile.vim
Patch 8.2.0959
问题: Using 'quickfixtextfunc' is a bit slow.
解决方案: Process a list of entries. (Yegappan Lakshmanan, closes #6234)
文件: runtime/doc/quickfix.txt, src/quickfix.c,
src/testdir/test_quickfix.vim
Patch 8.2.0960
问题: Cannot use :import in legacy Vim script.
解决方案: Support :import in any Vim script.
文件: src/vim9script.c, src/evalvars.c, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.0961
问题: MS-Windows: no completion for locales.
解决方案: Use the directories in $VIMRUNTIME/lang to complete locales.
(Christian Brabandt, closes 36248)
文件: src/cmdexpand.c, src/ex_cmds2.c, src/testdir/test_cmdline.vim
Patch 8.2.0962
问题: Terminal test sometimes hangs on Travis.
解决方案: Do show output for this test temporarily.
文件: src/testdir/Makefile
Patch 8.2.0963
问题: Number increment/decrement does not work with 'virtualedit'.
解决方案: Handle coladd changing. (Christian Brabandt, closes #6240,
closes #923)
文件: runtime/doc/options.txt, runtime/doc/various.txt, src/ops.c,
src/testdir/test_increment.vim
Patch 8.2.0964
问题: TextYankPost does not provide info about Visual selection.
解决方案: Add the 'visual' key in v:event. (closes #6249)
文件: runtime/doc/autocmd.txt, src/register.c,
src/testdir/test_autocmd.vim
Patch 8.2.0965
问题: Has_funcundefined() is not used.
解决方案: Delete the function. (Dominique Pellé, closes #6242)
文件: src/autocmd.c, src/proto/autocmd.pro
Patch 8.2.0966
问题: 'shortmess' flag "n" not used in two places.
解决方案: Make use of the "n" flag consistent. (Nick Jensen, closes #6245,
closes #6244)
文件: src/bufwrite.c, src/proto/bufwrite.pro, src/buffer.c,
src/fileio.c, src/testdir/dumps/Test_popup_textprop_corn_5.dump,
src/testdir/dumps/Test_start_with_tabs.dump
Patch 8.2.0967
问题: Unnecessary type casts for vim_strnsave().
解决方案: Remove the type casts.
文件: src/evalvars.c, src/ex_cmds.c, src/ex_eval.c, src/fileio.c,
src/filepath.c, src/findfile.c, src/highlight.c, src/if_ruby.c,
src/insexpand.c, src/json.c, src/mark.c, src/memline.c,
src/menu.c, src/misc1.c, src/ops.c, src/os_win32.c, src/regexp.c,
src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/search.c,
src/sign.c, src/syntax.c, src/term.c, src/terminal.c, src/undo.c,
src/usercmd.c, src/userfunc.c, src/vim9compile.c, src/if_perl.xs
Patch 8.2.0968
问题: No proper testing of the 'cpoptions' flags.
解决方案: Add tests. (Yegappan Lakshmanan, closes #6251)
文件: src/testdir/Make_all.mak, src/testdir/test_cpoptions.vim,
src/testdir/test_edit.vim, src/testdir/test_normal.vim
Patch 8.2.0969
问题: Assert_equal() output for dicts is hard to figure out.
解决方案: Only show the different items.
文件: src/testing.c, src/testdir/test_assert.vim
Patch 8.2.0970
问题: Terminal properties are not available in Vim script.
解决方案: Add the terminalprops() function.
文件: src/term.c, src/proto/term.pro, src/evalfunc.c, src/main.c,
src/testing.c, src/globals.h, src/testdir/test_termcodes.vim,
runtime/doc/usr_41.txt, runtime/doc/eval.txt,
runtime/doc/testing.txt
Patch 8.2.0971
问题: Build with tiny features fails.
解决方案: Add #ifdef.
文件: src/term.c
Patch 8.2.0972
问题: Vim9 script variable declarations need a type.
解决方案: Make "let var: type" declare a script-local variable.
文件: src/evalvars.c, src/vim9script.c, src/proto/vim9script.pro,
src/globals.h, src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.0973
问题: Vim9: type is not checked when assigning to a script variable.
解决方案: Check the type.
文件: src/evalvars.c, src/vim9script.c, src/proto/vim9script.pro,
src/vim9compile.c, src/proto/vim9compile.pro,
src/testdir/test_vim9_script.vim
Patch 8.2.0974
问题: Vim9: memory leak when script var has wrong type.
解决方案: Free the variable name.
文件: src/vim9script.vim
Patch 8.2.0975
问题: Vim9: script variable does not accept optional s: prefix.
解决方案: Adjust the accepted syntax.
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.0976
问题: Some 'cpoptions' not tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6253)
文件: src/testdir/test_cd.vim, src/testdir/test_charsearch.vim,
src/testdir/test_cpoptions.vim, src/testdir/test_normal.vim
Patch 8.2.0977
问题: t_8u is made empty for the wrong terminals. (Dominique Pelle)
解决方案: Invert the check for TPR_YES. (closes #6254)
文件: src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.0978
问题: Leaking memory in termcodes test.
解决方案: Set t_8u with set_option_value().
文件: src/term.c
Patch 8.2.0979
问题: A couple of screendump tests fail.
解决方案: Do not redraw when clearing t_8u.
文件: src/term.c
Patch 8.2.0980
问题: Raku file extension not recognized. (Steven Penny)
解决方案: Recognize .raku and .rakumod. (closes #6255)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0981
问题: Vim9: cannot compile "[var, var] = list".
解决方案: Implement list assignment.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/evalvars.c,
src/proto/evalvars.pro, src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.0982
问题: Insufficient testing for reading/writing files.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6257)
Add "ui_delay" to test_override() and use it for the CTRL-O test.
文件: src/testing.c, src/globals.h, src/ui.c, runtime/doc/testing.txt,
src/testdir/test_autocmd.vim, src/testdir/test_edit.vim,
src/testdir/test_filechanged.vim, src/testdir/test_writefile.vim
Patch 8.2.0983
问题: SConstruct file type not recognized.
解决方案: Use python for SConstruct files. (Roland Hieber)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.0984
问题: Not using previous window when closing a shell popup window.
解决方案: Use "prevwin" if it was set. (closes #6267)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.0985
问题: Simplify() does not remove slashes from "///path".
解决方案: Reduce > 2 slashes to one. (closes #6263)
文件: src/findfile.c, src/testdir/test_functions.vim
Patch 8.2.0986 (after 8.2.0985)
问题: MS-Windows: functions test fails.
解决方案: Only simplify ///path on Unix.
文件: src/testdir/test_functions.vim
Patch 8.2.0987
问题: Vim9: cannot assign to [var; var].
解决方案: Assign rest of items to a list.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/list.c,
src/proto/list.pro, src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.0988
问题: Getting directory contents is always case sorted.
解决方案: Add sort options and v:collate. (Christian Brabandt, closes #6229)
文件: runtime/doc/eval.txt, runtime/doc/mlang.txt, src/auto/configure,
src/cmdexpand.c, src/config.h.in, src/configure.ac,
src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/fileio.c,
src/filepath.c, src/globals.h, src/proto/fileio.pro,
src/testdir/test_cmdline.vim, src/testdir/test_functions.vim,
src/vim.h
Patch 8.2.0989
问题: Crash after resizing a terminal window. (August Masquelier)
解决方案: Add check for valid row in libvterm. (closes #6273)
文件: src/libvterm/src/state.c, src/libvterm/src/screen.c
Patch 8.2.0990 (after 8.2.0988)
问题: Using duplicate error number.
解决方案: Use an unused error number. Add a test for it.
文件: src/globals.h, src/testdir/test_functions.vim
Patch 8.2.0991
问题: Cannot get window type for autocmd and preview window.
解决方案: Add types to win_gettype(). (Yegappan Lakshmanan, closes #6277)
文件: runtime/doc/eval.txt, src/evalwindow.c,
src/testdir/test_autocmd.vim, src/testdir/test_preview.vim
Patch 8.2.0992
问题: Vim9: crash when using :import in the Vim command.
解决方案: Give an error when using :import outside of a script.
(closes #6271)
文件: src/vim9script.c, src/testdir/test_vim9_script.vim,
src/testdir/term_util.vim
Patch 8.2.0993
问题: Vim9 script test fails with normal features.
解决方案: Use :func instead of :def for now.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0994
问题: Vim9: missing function causes compilation error.
解决方案: Call test function indirectly.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.0995
问题: Insufficient testing for the readdir() sort option.
解决方案: Add a few more tests. (Christian Brabandt, closes #6278)
文件: src/testdir/test_functions.vim
Patch 8.2.0996
问题: Using "aucmdwin" in win_gettype() is not ideal.
解决方案: Rename to "autocmd".
文件: runtime/doc/eval.txt, src/evalwindow.c,
src/testdir/test_autocmd.vim
Patch 8.2.0997
问题: Cannot execute a register containing line continuation.
解决方案: Concatenate lines where needed. (Yegappan Lakshmanan,
closes #6272)
文件: runtime/doc/repeat.txt, src/register.c,
src/testdir/test_registers.vim
Patch 8.2.0998
问题: Not all tag code is tested.
解决方案: Add a few more test cases. (Yegappan Lakshmanan, closes #6284)
文件: src/testdir/test_tagjump.vim
Patch 8.2.0999
问题: Moving to next sentence gets stuck on quote.
解决方案: When moving to the next sentence doesn't result in moving, advance
a character and try again. (closes #6291)
文件: src/textobject.c, src/testdir/test_textobjects.vim
Patch 8.2.1000
问题: Get error when leaving Ex mode with :visual and a CmdLineEnter
autocommand was used.
解决方案: Reset ex_pressedreturn. (closes #6293)
文件: src/ex_docmd.c, src/testdir/test_ex_mode.vim
Patch 8.2.1001
问题: Vim9: crash with nested "if" and assignment.
解决方案: Skip more of the assignment. Do not set ctx_skip when code is
reachable.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1002
问题: Test may fail when run directly.
解决方案: Check if g:run_nr exists. (Christian Brabandt, closes #6285)
文件: src/testdir/term_util.vim
Patch 8.2.1003
问题: Vim9: return type of sort() is too generic.
解决方案: Get type from the first argument. (closes #6292)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1004
问题: Line numbers below filler lines not always updated.
解决方案: Don't break out of the win_line() loop too early. (Christian
Brabandt, closes #6294, closes #6138)
文件: src/drawline.c, src/testdir/dumps/Test_diff_rnu_01.dump,
src/testdir/dumps/Test_diff_rnu_02.dump,
src/testdir/dumps/Test_diff_rnu_03.dump,
src/testdir/test_diffmode.vim
Patch 8.2.1005
问题: Vim9: using TRUE/FALSE/MAYBE for ctx_skip is confusing.
解决方案: Use an enum value.
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.1006
问题: Vim9: require unnecessary return statement.
解决方案: Improve the use of the had_return flag. (closes #6270)
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1007
问题: Completion doesn't work after ":r ++arg !".
解决方案: Skip over "++arg". (Christian Brabandt, closes #6275,
closes #6258)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.1008
问题: Vim9: no test for disassembling newly added instructions.
解决方案: Add a function and check disassembly.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.1009
问题: Vim9: some failures not checked for.
解决方案: Add test cases. Remove unused code.
文件: src/testdir/test_vim9_script.vim, src/vim9execute.c
Patch 8.2.1010
问题: Build failure in libvterm with debug enabled. (John Little)
解决方案: Use "->" instead of ".".
文件: src/libvterm/src/state.c
Patch 8.2.1011
问题: Vim9: some code not tested.
解决方案: Add a few more test cases. Reorder checks for clearer error.
Remove unreachable code.
文件: src/evalvars.c, src/vim9script.c, src/vim9execute.c,
src/proto/vim9script.pro, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1012
问题: Vim9: cannot declare single character script variables.
解决方案: Don't see "b:", "s:", etc. as namespace. Fix item size of
sn_var_vals.
文件: src/vim9script.c, src/scriptfile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1013
问题: Channel tests can be a bit flaky.
解决方案: Set the g:test_is_flaky flag in SetUp().
文件: src/testdir/test_channel.vim
Patch 8.2.1014
问题: Using "name" for a string result is confusing.
解决方案: Rename to "end".
文件: src/typval.c
Patch 8.2.1015
问题: Popup filter gets key with modifier prepended when using
modifyOtherKeys.
解决方案: Remove the shift modifier when it is included in the key, also
when the Alt or Meta modifier is used.
文件: src/term.c, src/misc2.c, src/testdir/test_popupwin.vim
Patch 8.2.1016
问题: Vim9: test fails when channel feature is missing.
解决方案: Process an :if command when skipping
文件: src/vim9compile.c
Patch 8.2.1017
问题: Appveyor output doesn't show MinGW console features.
解决方案: List the features of the console build.
文件: ci/appveyor.bat
Patch 8.2.1018
问题: Typo in enum value. (James McCoy)
解决方案: Fix the typo.
文件: src/vim9compile.c
Patch 8.2.1019
问题: Mapping <M-S-a> does not work in the GUI.
解决方案: Move the logic to remove the shift modifier to
may_remove_shift_modifier() and also use it in the GUI.
文件: src/gui_gtk_x11.c, src/misc2.c, src/proto/misc2.pro, src/term.c
Patch 8.2.1020
问题: Popupwin test fails in the GUI.
解决方案: Send GUI byte sequence for <C-S-a>.
文件: src/testdir/test_popupwin.vim
Patch 8.2.1021
问题: Ruby interface not tested enough.
解决方案: Add a couple more tests. (Dominique Pellé, closes #6301)
文件: src/testdir/test_ruby.vim
Patch 8.2.1022
问题: Various parts of code not covered by tests.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6300)
文件: src/testdir/test_blob.vim, src/testdir/test_cpoptions.vim,
src/testdir/test_digraph.vim, src/testdir/test_edit.vim,
src/testdir/test_iminsert.vim, src/testdir/test_paste.vim,
src/testdir/test_prompt_buffer.vim,
src/testdir/test_selectmode.vim, src/testdir/test_tabpage.vim,
src/testdir/test_tagjump.vim, src/testdir/test_textformat.vim,
src/testdir/test_viminfo.vim, src/testdir/test_virtualedit.vim,
src/testdir/test_visual.vim
Patch 8.2.1023
问题: Vim9: redefining a function uses a new index every time.
解决方案: When redefining a function clear the contents and re-use the
index.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
src/structs.h, src/eval.c, src/evalvars.c, src/vim9execute.c
Patch 8.2.1024
问题: Vim9: no error for using "let g:var = val".
解决方案: Add an error.
文件: src/evalvars.c, src/globals.h, src/structs.h, src/vim9compile.c,
src/scriptfile.c, src/userfunc.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1025
问题: Tabpage menu and tabline not sufficiently tested.
解决方案: Add tests. (Yegappan Lakshmanan, closes #6307)
文件: src/testdir/test_digraph.vim, src/testdir/test_tabpage.vim
Patch 8.2.1026
问题: Vim9: cannot break the line after "->".
解决方案: Check for a continuation line after "->", "[" and ".". Ignore
trailing white space.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1027
问题: GUI: multibyte characters do not work in a terminal.
解决方案: Do not assume a key is one byte. (closes #6304)
文件: src/gui_gtk_x11.c, src/gui_x11.c
Patch 8.2.1028
问题: Vim9: no error for declaring buffer, window, etc. variable.
解决方案: Give an error. Unify the error messages.
文件: src/evalvars.c, src/globals.h, src/vim9compile.c,
src/proto/vim9compile.pro, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1029
问题: Vim9: cannot chain function calls with -> at line start.
解决方案: Peek ahead for a following line starting with "->". (closes #6306)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1030
问题: Reducing size of a terminal window may cause a crash.
解决方案: Make sure the row and column don't become negative. (closes #6273)
文件: src/libvterm/src/state.c, src/libvterm/src/screen.c
Patch 8.2.1031
问题: Build failure with Perl5.32.
解决方案: Define a few more functions. (Felix Yan, closes #6310)
文件: src/if_perl.xs
Patch 8.2.1032
问题: Error message for declaring a variable cannot be translated.
解决方案: Enclose in _(). Make environment variable a separate message.
文件: src/globals.h, src/vim9compile.c
Patch 8.2.1033
问题: Not easy to read the test time in the test output.
解决方案: Align the times. Make slow tests bold.
文件: src/testdir/runtest.vim
Patch 8.2.1034
问题: Compiler warning for uninitialized variables.
解决方案: Add initializations. (John Marriott)
文件: src/vim9compile.c
Patch 8.2.1035
问题: setreg() does not always clear the register.
解决方案: Clear the register if the dict argument is empty. (Andy Massimino,
closes #3370)
文件: src/evalfunc.c, src/testdir/test_registers.vim
Patch 8.2.1036
问题: Popupwin test fails sometimes.
解决方案: Use WaitForAssert() instead of a sleep.
文件: src/testdir/test_popupwin.vim
Patch 8.2.1037
问题: Vim9: crash when using line continuation inside :def.
解决方案: Check for no more lines available.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1038
问题: Popupwin test fails.
解决方案: Fix WaitForAssert() argument.
文件: src/testdir/test_popupwin.vim
Patch 8.2.1039
问题: Cannot put NUL byte on clipboard.
解决方案: Use the text length. (Christian Brabandt, closes #6312,
closes #6149)
文件: src/winclip.c, src/testdir/test_registers.vim
Patch 8.2.1040
问题: Not enough testing for movement commands.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6313)
文件: src/testdir/test_cursor_func.vim, src/testdir/test_functions.vim,
src/testdir/test_gf.vim, src/testdir/test_normal.vim,
src/testdir/test_options.vim, src/testdir/test_quickfix.vim
Patch 8.2.1041
问题: Test summary is missing executed count.
解决方案: Adjust pattern used for counting.
文件: src/testdir/summarize.vim
Patch 8.2.1042
问题: Vim9: cannot put an operator on the next line.
解决方案: Require a colon before a range to see if that causes problems.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/ex_docmd.c,
src/globals.h, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1043
问题: %a item in 'statusline' not tested.
解决方案: Add a test. (Dominique Pellé, closes #6318)
文件: src/testdir/test_statusline.vim
Patch 8.2.1044
问题: Not all systemd file types are recognized.
解决方案: Match several more files. (Guido Cella, closes #6319)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1045
问题: Vim9: line break before operator does not work.
解决方案: Peek the next line for an operator.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1046
问题: Insufficient tests for src/buffer.c.
解决方案: Add more tests. Move comments related tests to a separate file.
(Yegappan Lakshmanan, closes #6325)
文件: src/testdir/Make_all.mak, src/testdir/test_buffer.vim,
src/testdir/test_cmdline.vim, src/testdir/test_comments.vim,
src/testdir/test_normal.vim, src/testdir/test_textformat.vim
Patch 8.2.1047
问题: Vim9: script cannot use line continuation like in a :def function.
解决方案: Pass the getline function pointer to the eval() functions. Use it
for addition and multiplication operators.
文件: src/vim.h, src/structs.h, src/globals.h, src/ex_eval.c,
src/eval.c, src/proto/eval.pro, src/dict.c, src/evalfunc.c,
src/evalvars.c, src/list.c, src/userfunc.c, src/scriptfile.c,
src/proto/scriptfile.pro, src/testdir/test_vim9_expr.vim
Patch 8.2.1048 (after 8.2.1047)
问题: Build failure without the eval feature.
解决方案: Add dummy typedef.
文件: src/structs.h
Patch 8.2.1049 (after 8.2.1047)
问题: Vim9: leaking memory when using continuation line.
解决方案: Keep a pointer to the continuation line in evalarg_T. Centralize
checking for a next command.
文件: src/structs.h, src/eval.c, src/proto/eval.pro, src/beval.c,
src/buffer.c, src/clientserver.c, src/evalvars.c, src/ex_docmd.c,
src/ex_eval.c, src/filepath.c, src/findfile.c, src/fold.c,
src/globals.h, src/if_ole.cpp, src/if_perl.xs, src/if_tcl.c,
src/map.c, src/quickfix.c, src/regexp.c, src/register.c,
src/screen.c, src/userfunc.c
Patch 8.2.1050 (after 8.2.1049)
问题: Missing change in struct.
解决方案: Add missing change.
文件: src/ex_cmds.h
Patch 8.2.1051
问题: Crash when changing a list while using reduce() on it.
解决方案: Lock the list. (closes #6330)
文件: src/list.c, src/testdir/test_listdict.vim
Patch 8.2.1052
问题: Build failure with older compilers.
解决方案: Move declaration to start of block.
文件: src/eval.c
Patch 8.2.1053
问题: Insufficient testing for 'statusline' and 'tabline'.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6333)
文件: src/testdir/test_autocmd.vim, src/testdir/test_statusline.vim,
src/testdir/test_tabline.vim
Patch 8.2.1054
问题: Not so easy to pass a lua function to Vim.
解决方案: Convert a Lua function and closure to a Vim funcref. (Prabir
Shrestha, closes #6246)
文件: runtime/doc/if_lua.txt, src/if_lua.c, src/proto/userfunc.pro,
src/structs.h, src/testdir/test_lua.vim, src/userfunc.c
Patch 8.2.1055
问题: No filetype set for pacman config files.
解决方案: Recognize pacman.conf and *.hook. (Guido Cella, closes #6335)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1056
问题: Wrong display when mixing match conceal and syntax conceal.
解决方案: Adjust how conceal flags are used. (closes #6327, closes #6303)
文件: src/drawline.c, src/highlight.c,
src/testdir/test_matchadd_conceal.vim
Patch 8.2.1057 (after 8.2.1054)
问题: Cannot build with dynamic Lua.
解决方案: Add dll variables.
文件: src/if_lua.c
Patch 8.2.1058
问题: Multiline conceal causes display errors.
解决方案: Do not allow conceal cross over EOL. (closes #6326, closes #4854,
closes #6302)
文件: src/drawline.c, src/testdir/test_conceal.vim,
src/testdir/test_diffmode.vim
Patch 8.2.1059
问题: Crash when using :tabonly in an autocommand. (Yegappan Lakshmanan)
解决方案: Do not allow the autocommand window to be closed.
文件: src/ex_docmd.c, src/window.c, src/globals.h,
src/testdir/test_autocmd.vim
Patch 8.2.1060
问题: Not all elinks files are recognized.
解决方案: Just check for "elinks.conf". (Guido Cella, closes #6337)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1061
问题: Insufficient testing for src/window.c.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6345)
文件: src/testdir/test_excmd.vim, src/testdir/test_gf.vim,
src/testdir/test_options.vim, src/testdir/test_popupwin.vim,
src/testdir/test_quickfix.vim, src/testdir/test_tabpage.vim,
src/testdir/test_tagjump.vim, src/testdir/test_window_cmd.vim,
src/window.c
Patch 8.2.1062
问题: Vim9: no line break allowed inside "cond ? val1 : val2".
解决方案: Check for operator after line break.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1063
问题: Vim9: no line break allowed before || or &&.
解决方案: Check for operator after line break.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1064
问题: Vim9: no line break allowed before comparators.
解决方案: Check for comparator after line break.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1065
问题: Vim9: no line break allowed inside a list.
解决方案: Handle line break inside a list in Vim9 script.
文件: src/eval.c, src/proto/eval.pro, src/list.c, src/proto/list.pro,
src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_arglist.vim
Patch 8.2.1066
问题: Lua arrays are zero based.
解决方案: Make Lua arrays one based. (Prabir Shrestha, closes #6347)
Note: this is not backwards compatible.
文件: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.1067
问题: Expression "!expr->func()" does not work.
解决方案: Apply plus and minus earlier. (closes #6348)
文件: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
src/testdir/test_expr.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.1068
问题: Vim9: no line break allowed inside a dict.
解决方案: Handle line break inside a dict in Vim9 script.
文件: src/eval.c, src/dict.c, src/proto/dict.pro,
src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1069
问题: Vim9: fail to check for white space in list.
解决方案: Add check for white space.
文件: src/list.c
Patch 8.2.1070
问题: Vim9: leaking memory when lacking white space in dict.
解决方案: Clear the typval.
文件: src/dict.c
Patch 8.2.1071
问题: Vim9: no line break allowed inside a lambda.
解决方案: Handle line break inside a lambda in Vim9 script.
文件: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
src/proto/userfunc.pro, src/popupwin.c, src/vim9compile.c,
src/ex_eval.c, src/globals.h, src/structs.h,
src/testdir/test_vim9_expr.vim
Patch 8.2.1072
问题: Missing libvterm test.
解决方案: Sync with libvterm revision 768.
文件: src/libvterm/src/state.c, src/libvterm/t/63screen_resize.test
Patch 8.2.1073
问题: Vim9: no line break allowed in () expression.
解决方案: Skip a line break.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1074
问题: Vim9: no line break allowed after some operators.
解决方案: Skip a line break after the operator. Add
eval_may_get_next_line() to simplify checking for a line break.
文件: src/eval.c, src/proto/eval.pro, src/dict.c, src/list.c,
src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1075
问题: Vim9: no line break allowed in :echo expression.
解决方案: Skip linebreak.
文件: src/eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1076
问题: Vim9: no line break allowed in :if expression.
解决方案: Skip linebreak.
文件: src/eval.c, src/proto/eval.pro, src/evalvars.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.1077
问题: No enough test coverage for highlighting.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6351)
文件: runtime/doc/syntax.txt, src/testdir/test_cmdline.vim,
src/testdir/test_highlight.vim, src/testdir/test_match.vim
Patch 8.2.1078
问题: Highlight and match functionality together in one file.
解决方案: Move match functionality to a separate file. (Yegappan Lakshmanan,
closes #6352)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/highlight.c, src/match.c, src/proto.h,
src/proto/highlight.pro, src/proto/match.pro
Patch 8.2.1079
问题: Vim9: no line break allowed in a while loop.
解决方案: Update stored loop lines when finding line breaks.
文件: src/structs.h, src/globals.h, src/eval.c, src/evalvars.c,
src/ex_docmd.c, src/proto/ex_docmd.pro,
src/testdir/test_vim9_cmd.vim
Patch 8.2.1080
问题: Vim9: no line break allowed in a for loop.
解决方案: Skip line breaks in for command.
文件: src/eval.c, src/ex_eval.c, src/proto/eval.pro, src/userfunc.c,
src/structs.h, src/globals.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.1081
问题: Lua: cannot use table.insert() and table.remove().
解决方案: Add the list functions. (Prabir Shrestha, closes #6353)
文件: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.1082
问题: Coverity complains about ignoring dict_add() return value.
解决方案: Add (void).
文件: src/evalfunc.c
Patch 8.2.1083
问题: Crash when using reduce() on a NULL list.
解决方案: Only access the list when not NULL.
文件: src/list.c, src/testdir/test_listdict.vim
Patch 8.2.1084
问题: Lua: registering function has useless code.
解决方案: Remove clearing grow arrays.
文件: src/userfunc.c
Patch 8.2.1085
问题: Coverity complains about ignoring dict_add() return value.
解决方案: Add (void).
文件: src/register.c
Patch 8.2.1086
问题: Possibly using freed memory when text properties used when
changing indent of a line.
解决方案: Compute the offset before calling ml_replace().
文件: src/indent.c
Patch 8.2.1087
问题: Possible memory leak when file expansion fails.
解决方案: Clear the grow array when returning FAIL. Use an error message
instead of an empty string.
文件: src/filepath.c
Patch 8.2.1088
问题: A very long translation might cause a buffer overflow.
解决方案: Truncate the message if needed.
文件: src/fileio.c
Patch 8.2.1089
问题: Coverity warns for pointer computation.
解决方案: Avoid computing a pointer to invalid memory.
文件: src/spellfile.c
Patch 8.2.1090
问题: May use NULL pointer when skipping over name.
解决方案: Always set ll_name_end.
文件: src/eval.c
Patch 8.2.1091
问题: No check if opening a pty works.
解决方案: Check for invalid file descriptor.
文件: src/os_unix.c
Patch 8.2.1092
问题: Not checking if saving for undo succeeds.
解决方案: Bail out if u_savesub() returns FAIL.
文件: src/textprop.c
Patch 8.2.1093
问题: Python: double free when adding item to dict fails.
解决方案: Remove vim_free() call.
文件: src/if_py_both.h
Patch 8.2.1094
问题: Dead code in libvterm.
解决方案: Remove condition that is always true.
文件: src/libvterm/src/pen.c
Patch 8.2.1095
问题: May use pointer after freeing it when text properties are used.
解决方案: Update redo buffer before calling ml_replace().
文件: src/spellsuggest.c
Patch 8.2.1096
问题: Vim9: return type of getqflist() is wrong.
解决方案: Let the return type depend on the arguments. Also for
getloclist(). (closes #6357)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1097
问题: Highlight code not sufficiently tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #6359)
文件: src/testdir/test_filter_cmd.vim, src/testdir/test_highlight.vim
Patch 8.2.1098
问题: Vim9: cannot use line break in :throw argument.
解决方案: Check for line break.
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.1099
问题: Vim9: cannot use line break in :cexpr argument.
解决方案: Check for line break.
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.1100
问题: Vim9: cannot use line break in :execute, :echomsg and :echoerr
argument.
解决方案: Check for line break.
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.1101
问题: No error when using wrong arguments for setqflist() or
setloclist().
解决方案: Check for the error.
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1102
问题: Coverity gets confused by an unnecessary NULL check.
解决方案: Remove the check for NULL.
文件: src/quickfix.c
Patch 8.2.1103
问题: Coverity reports an unnecessary NULL check.
解决方案: Remove the check for NULL.
文件: src/eval.c
Patch 8.2.1104
问题: Coverity warns for possible NULL pointer use.
解决方案: Check "pbyts" is not NULL.
文件: src/spellsuggest.c
Patch 8.2.1105
问题: Insufficient test coverage for Lua.
解决方案: Add tests. (Yegappan Lakshmanan, closes #6368) Fix uncovered
memory leak. Avoid unnecessary copy/free.
文件: src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.1106
问题: Crash when trying to use s: variable in typed command.
解决方案: Don't use the script index when not set. (Ken Takata,
closes #6366)
文件: src/vim9compile.c, src/testdir/test_vimscript.vim
Patch 8.2.1107
问题: 'imactivatefunc' and 'imstatusfunc' are not used in the GUI.
解决方案: Adjust the #ifdefs. (closes #6367)
文件: runtime/doc/options.txt, src/gui_xim.c,
src/testdir/test_iminsert.vim
Patch 8.2.1108
问题: Mouse left-right scroll is not supported in terminal window.
解决方案: Implement mouse codes 6 and 7. (Trygve Aaberge, closes #6363)
文件: src/libvterm/src/mouse.c, src/mouse.c, src/terminal.c,
src/testdir/mouse.vim, src/testdir/test_termcodes.vim
Patch 8.2.1109 (after 8.2.1106)
问题: Still crashing when using s:variable.
解决方案: Remove assignment. (Ken Takata)
文件: src/vim9compile.c
Patch 8.2.1110
问题: Vim9: line continuation does not work in function arguments.
解决方案: Pass "evalarg" to get_func_tv(). Fix seeing double quoted string
as comment.
文件: src/userfunc.c, src/proto/userfunc.pro, src/eval.c, src/ex_eval.c,
src/list.c, src/dict.c, src/proto/eval.pro,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
Patch 8.2.1111
问题: Inconsistent naming of get_list_tv() and eval_dict().
解决方案: Rename get_list_tv() to eval_list(). Similarly for eval_number(),
eval_string(), eval_lit_string() and a few others.
文件: src/eval.c, src/list.c, src/proto/list.pro, src/vim9compile.c,
src/typval.c, src/proto/typval.pro, src/vim9script.c,
src/evalfunc.c, src/evalvars.c, src/proto/evalvars.pro,
src/vim9execute.c
Patch 8.2.1112
问题: Vim9: no line continuation allowed in method call.
解决方案: Handle line continuation in expression before method call.
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1113
问题: No test for verbose output of :call.
解决方案: Add a test.
文件: src/testdir/test_user_func.vim
Patch 8.2.1114
问题: Terminal test sometimes times out.
解决方案: Split the test in two parts.
文件: src/testdir/Makefile, src/testdir/Make_all.mak,
src/testdir/term_util.vim, src/testdir/test_terminal.vim,
src/testdir/test_terminal2.vim
Patch 8.2.1115
问题: Iminsert test fails when compiled with VIMDLL.
解决方案: Change condition. (Ken Takata, closes #6376)
文件: src/testdir/test_iminsert.vim
Patch 8.2.1116
问题: Vim9: parsing command checks for list twice.
解决方案: Adjust how a command is parsed.
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1117
问题: Coverity warns for using uninitialized field.
解决方案: Initialize v_lock.
文件: src/if_lua.c
Patch 8.2.1118
问题: Condition can never be true, dead code.
解决方案: Remove the dead code.
文件: src/move.c
Patch 8.2.1119
问题: Configure fails with Xcode 12 beta.
解决方案: use "return" instead of "exit()". (Nico Weber, closes #6381)
文件: src/configure.ac, src/auto/configure
Patch 8.2.1120
问题: Python code not tested properly.
解决方案: Add more tests and convert old-style test into new-style test.
(Yegappan Lakshmanan, closes #6370)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test86.in, src/testdir/test86.ok,
src/testdir/test_python2.vim
Patch 8.2.1121
问题: Command completion not working after ++arg.
解决方案: Move skipping up. (Christian Brabandt, closes #6382)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.1122
问题: Vim9: line continuation in dict member not recognized.
解决方案: Check for line continuation.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1123
问题: Python 3 test is old style.
解决方案: Turn into new style test. (Yegappan Lakshmanan, closes #6385)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test87.in, src/testdir/test87.ok,
src/testdir/test_python2.vim, src/testdir/test_python3.vim
Patch 8.2.1124
问题: Vim9: no line break allowed in :import command.
解决方案: Skip over line breaks.
文件: src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1125
问题: Vim9: double quote can be a string or a comment.
解决方案: Only support comments starting with # to avoid confusion.
文件: src/eval.c, src/proto/eval.pro, src/dict.c, src/list.c,
src/vim9script.c
Patch 8.2.1126
问题: Vim9: using :copen causes an error.
解决方案: Add flag LET_NO_COMMAND in set_var().
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.1127
问题: Vim9: getting a dict member may not work.
解决方案: Clear the dict only after copying the item. (closes #6390)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1128
问题: The write message mentions characters, but it's actually bytes.
解决方案: Change "C" to "B" and "characters" to "bytes".
文件: runtime/doc/options.txt, src/fileio.c,
src/testdir/test_cscope.vim, src/testdir/test_netbeans.vim,
src/testdir/dumps/Test_diff_syntax_1.dump,
src/testdir/dumps/Test_long_file_name_1.dump,
src/testdir/dumps/Test_display_unprintable_01.dump,
src/testdir/dumps/Test_tselect_1.dump
Patch 8.2.1129
问题: Vim9: bar not recognized after not compiled command.
解决方案: Check for bar for commands where this is possible. (closes #6391)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1130
问题: Vim9: bar not recognized after function call
解决方案: Skip whitespace. (closes #6391)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1131
问题: Vim9: error message for returning a value in a function that does
not return anything is not clear.
解决方案: Add a specific message.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1132
问题: Vim9: return type of repeat() is not specific enough.
解决方案: Return the type of the first argument. (closes #6395)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1133
问题: Vim9: return type of add() is not specific enough.
解决方案: Return the type of the first argument. (closes #6395)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1134
问题: Vim9: getting a list member may not work.
解决方案: Clear the list only after copying the item. (closes #6393)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1135
问题: Vim9: getting a dict member may not work.
解决方案: Clear the dict only after copying the item.
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1136
问题: Vim9: return type of argv() is always any.
解决方案: Use list<string> if there is no argument.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1137
问题: Vim9: modifiers not cleared after compiling function.
解决方案: Clear command modifiers. (closes #6396)
文件: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/testdir/test_vim9_func.vim,
src/testdir/dumps/Test_vim9_silent_echo.dump
Patch 8.2.1138
问题: Vim9: return type of copy() and deepcopy() is any.
解决方案: Use type of the argument.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1139 (after 8.2.1137)
问题: Vim9: test for silent echo fails in some environments.
解决方案: Use :function instead of :def.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1140
问题: Vim9: return type of extend() is any.
解决方案: Use type of the argument.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1141
问题: Vim9: return type of filter() is any.
解决方案: Use type of the argument.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1142
问题: Vim9: return type of insert() is any.
解决方案: Use type of the first argument.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1143
问题: Vim9: return type of remove() is any.
解决方案: Use the member type of the first argument, if known.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1144
问题: Vim9: return type of reverse() is any.
解决方案: Use the type of the first argument.
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1145
问题: Vim9: "for" only accepts a list at compile time.
解决方案: Also accept a list at runtime.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1146
问题: Not enough testing for Python.
解决方案: Add more tests. Fix uncovered problems. (Yegappan Lakshmanan,
closes #6392)
文件: src/if_py_both.h, src/if_python3.c, src/testdir/shared.vim,
src/testdir/test_python2.vim, src/testdir/test_python3.vim
Patch 8.2.1147
问题: :confirm may happen in cooked mode. (Jason Franklin)
解决方案: Switch to raw mode before prompting. (Brandon Pfeifer)
文件: src/message.c, src/testdir/test_excmd.vim
Patch 8.2.1148
问题: Warning for using int instead of size_t.
解决方案: Change "len" argument to size_t. (Mike Williams)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9script.c
Patch 8.2.1149
问题: Vim9: :eval command not handled properly.
解决方案: Compile the :eval command. (closes #6408)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1150
问题: ml_get error when using Python. (Yegappan Lakshmanan)
解决方案: Check the line number is not out of range. Call "Check" with
"fromObj" instead of "from".
文件: src/if_py_both.h, src/testdir/test_python2.vim,
src/testdir/test_python3.vim
Patch 8.2.1151
问题: Insufficient test coverage for Python.
解决方案: Add more test cases. (Yegappan Lakshmanan, closes #6415)
文件: src/testdir/test_python2.vim, src/testdir/test_python3.vim
Patch 8.2.1152
问题: Vim9: function reference is missing script prefix.
解决方案: Use the actual function name instead of the name searched for in
the script context. (closes #6412)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1153
问题: Vim9: script test fails on some systems.
解决方案: Return proper value from Compare().
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1154
问题: Vim9: crash when using imported function.
解决方案: Check for a function type. Set the script context when calling a
function. (closes #6412)
文件: src/evalvars.c, src/scriptfile.c, src/proto/scriptfile.pro,
src/vim9execute.c, src/structs.h, src/testdir/test_vim9_script.vim
Patch 8.2.1155
问题: Vim9: cannot handle line break inside lambda.
解决方案: Pass the compilation context through. (closes #6407, closes #6409)
文件: src/structs.h, src/vim9compile.c, src/proto/vim9compile.pro,
src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.1156
问题: Vim9: No error for invalid command in compiled function.
解决方案: Handle CMD_SIZE.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1157
问题: Vim9: dict.name is not recognized as an expression.
解决方案: Recognize ".name". (closes #6418)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1158 (after 8.2.1155)
问题: Build error.
解决方案: Add missing change to globals.
文件: src/globals.h
Patch 8.2.1159
问题: Vim9: no error for missing space after a comma.
解决方案: Check for white space.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1160
问题: Vim9: memory leak in allocated types.
解决方案: Free the type pointers.
文件: src/vim9script.c, src/userfunc.c, src/vim9compile.c,
src/proto/vim9compile.pro
Patch 8.2.1161
问题: Vim9: using freed memory.
解决方案: Put pointer back in evalarg instead of freeing it.
文件: src/userfunc.c, src/vim9compile.c, src/eval.c, src/proto/eval.pro,
src/structs.h
Patch 8.2.1162
问题: Crash when using a lambda.
解决方案: Check for evalarg to be NULL.
文件: src/userfunc.c
Patch 8.2.1163 (after 8.2.1161)
问题: Build error.
解决方案: Add missing change to globals.
文件: src/globals.h
Patch 8.2.1164
问题: Text cleared by checking terminal properties not redrawn. (Alexey
Radkov)
解决方案: Mark the screen characters as invalid. (closes #6422)
文件: src/screen.c, src/proto/screen.pro, src/term.c
Patch 8.2.1165
问题: Insufficient testing for the Tcl interface.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #6423)
文件: src/testdir/test_tcl.vim
Patch 8.2.1166
问题: Once mouse move events are enabled getchar() returns them.
解决方案: Ignore K_MOUSEMOVE in getchar(). (closes #6424)
文件: runtime/doc/eval.txt, src/getchar.c
Patch 8.2.1167
问题: Vim9: builtin function method call only supports first argument.
解决方案: Shift arguments when needed. (closes #6305, closes #6419)
文件: src/evalfunc.c, src/vim9compile.c, src/vim9execute.c,
src/vim9.h, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1168
问题: Wrong method argument for appendbufline().
解决方案: Use FEARG_3.
文件: src/evalfunc.c
Patch 8.2.1169
问题: Write NUL past allocated space using corrupted spell file.
(Markus Vervier)
解决方案: Init "c" every time.
文件: src/spellfile.c
Patch 8.2.1170
问题: Cursor off by one with block paste while 'virtualedit' is "all".
解决方案: Adjust condition. (Hugo Gualandi, closes #6430)
文件: src/register.c, src/testdir/test_registers.vim
Patch 8.2.1171
问题: Possible crash when out of memory.
解决方案: Check for NULL pointer. (Dominique Pellé, closes #6432)
文件: src/syntax.c
Patch 8.2.1172
问题: Error messages when doing "make clean" in the runtime/doc or
src/tee directories.
解决方案: Use "rm -f".
文件: runtime/doc/Makefile, src/tee/Makefile
Patch 8.2.1173
问题: Tee doesn't build on some systems.
解决方案: Include header files. (Dominique Pelle, closes #6431)
文件: src/tee/tee.c
Patch 8.2.1174
问题: No test for the "recording @x" message.
解决方案: Add a test. (Dominique Pellé, closes #6427)
文件: src/testdir/test_registers.vim
Patch 8.2.1175
问题: Vim9: Cannot split a line before ".member".
解决方案: Check for ".member" after line break.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1176
问题: Vim9: not enough type checking in Vim9 script.
解决方案: Use same type checking as in a :def function.
文件: src/vim9compile.c, src/proto/vim9compile.pro,
src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1177
问题: Terminal2 test sometimes hangs in the GUI.
解决方案: Move some tests to other files to further locate the problem.
Set the GUI to a fixed screen size.
文件: src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim,
src/testdir/test_terminal3.vim, src/testdir/Make_all.mak,
src/testdir/runtest.vim
Patch 8.2.1178
问题: Vim9: filter function recognized as command modifier, leading to a
crash.
解决方案: Clear cmdmod after freeing items. Do not recognize a command
modifier followed by non-white space. (closes #6434)
文件: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1179
问题: Test_termwinscroll() sometimes hangs in the GUI.
解决方案: Skip the test in the GUI.
文件: src/testdir/test_terminal2.vim
Patch 8.2.1180
问题: Build failure in small version.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.1181
问题: Json code not fully tested.
解决方案: Add more test coverage. (Dominique Pellé, closes #6433)
文件: src/testdir/test_json.vim
Patch 8.2.1182
问题: Vim9: no check for whitespace after comma in lambda.
解决方案: Give error if white space is missing.
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1183
问题: assert_fails() checks the last error message.
解决方案: Check the first error, it is more relevant. Fix all the tests
that rely on the old behavior.
文件: runtime/doc/testing.txt, src/message.c, src/globals.h,
src/testing.c, src/testdir/test_autocmd.vim,
src/testdir/test_buffer.vim, src/testdir/test_cd.vim,
src/testdir/test_channel.vim, src/testdir/test_clientserver.vim,
src/testdir/test_cmdline.vim, src/testdir/test_cpoptions.vim,
src/testdir/test_cscope.vim, src/if_cscope.c,
src/testdir/test_excmd.vim, src/evalvars.c,
src/testdir/test_expr.vim, src/testdir/test_functions.vim,
src/testdir/test_json.vim, src/testdir/test_let.vim,
src/testdir/test_listdict.vim, src/testdir/test_listener.vim,
src/testdir/test_match.vim, src/testdir/test_menu.vim,
src/testdir/test_method.vim, src/testdir/test_normal.vim,
src/testdir/test_popup.vim, src/testdir/test_python2.vim,
src/testdir/test_python3.vim, src/testdir/test_quickfix.vim,
src/testdir/test_random.vim, src/testdir/test_search.vim,
src/testdir/test_signs.vim, src/testdir/test_spell.vim,
src/testdir/test_substitute.vim, src/testdir/test_syntax.vim,
src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim,
src/testdir/test_terminal.vim, src/testdir/test_textprop.vim,
src/testdir/test_trycatch.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim, src/vim9compile.c,
src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim,
src/testdir/test_winbuf_close.vim,
src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim,
src/testdir/test_regexp_latin.vim, src/testdir/test_utf8.vim,
src/testdir/test_global.vim, src/testdir/test_tagfunc.vim
Patch 8.2.1184 (after 8.2.1183)
问题: Some tests fail.
解决方案: Adjust tests for different assert_fails() behavior. Remove unused
variable.
文件: src/testdir/test_assert.vim, src/testdir/test_eval_stuff.vim,
src/evalvars.c
Patch 8.2.1185 (after 8.2.1183)
问题: Some other tests fail.
解决方案: Adjust tests for different assert_fails() behavior.
文件: src/testdir/test_lua.vim, src/testdir/test_tcl.vim
Patch 8.2.1186
问题: With SGR mouse codes balloon doesn't show up after click.
解决方案: Add the MOUSE_RELEASE bits to mouse_code.
文件: src/mouse.c
Patch 8.2.1187
问题: Terminal2 test sometimes hangs in the GUI on Travis.
解决方案: Disable Test_zz2_terminal_guioptions_bang() for now.
文件: src/testdir/test_terminal2.vim
Patch 8.2.1188
问题: Memory leak with invalid json input.
解决方案: Free all keys at the end. (Dominique Pellé, closes #6443,
closes #6442)
文件: src/json.c, src/testdir/test_json.vim
Patch 8.2.1189
问题: Vim9: line continuation in lambda doesn't always work.
解决方案: Do not use a local evalarg unless there isn't one. (closes #6439)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1190
问题: Vim9: checking for Vim9 syntax is spread out.
解决方案: Use in_vim9script().
文件: src/vim9script.c, src/dict.c, src/eval.c, src/evalvars.c,
src/ex_docmd.c, src/list.c, src/scriptfile.c, src/userfunc.c
Patch 8.2.1191
问题: Vim9: crash when function calls itself.
解决方案: Add status UF_COMPILING. (closes #6441)
文件: src/structs.h, src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1192
问题: Lua test fails with older Lua version.
解决方案: Adjust expected error messages. (closes #6444)
文件: src/testdir/test_lua.vim
Patch 8.2.1193
问题: Terminal window not redrawn when dragging a popup window over it.
解决方案: Redraw terminal window. (fixes #6438)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_term_01.dump,
src/testdir/dumps/Test_popupwin_term_02.dump
Patch 8.2.1194
问题: Test failure because shell prompt differs.
解决方案: Set the shell prompt.
文件: src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_term_01.dump,
src/testdir/dumps/Test_popupwin_term_02.dump
Patch 8.2.1195
问题: Clientserver test fails on MS-Windows.
解决方案: Expect a different error message.
文件: src/testdir/test_clientserver.vim
Patch 8.2.1196
问题: Build failure with normal features.
解决方案: Add #ifdef.
文件: src/popupwin.c
Patch 8.2.1197
问题: Clientserver test still fails on MS-Windows.
解决方案: Expect a different error message.
文件: src/testdir/test_clientserver.vim
Patch 8.2.1198
问题: Terminal2 test sometimes hangs in the GUI on Travis.
解决方案: Move test function to terminal3 to see if the problem moves too.
文件: src/testdir/test_terminal2.vim, src/testdir/test_terminal3.vim
Patch 8.2.1199
问题: Not all assert functions are fully tested.
解决方案: Test more assert functions.
文件: src/testing.c, src/testdir/test_assert.vim
Patch 8.2.1200
问题: Vim9: cannot disassemble a lambda function.
解决方案: Recognize "<lambda>123" as a function name.
文件: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.1201
问题: Vim9: crash when passing number as dict key.
解决方案: Check key type to be string. (closes #6449)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1202
问题: Vim9: crash when calling a closure from a builtin function.
解决方案: Use the current execution context. (closes #6441)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1203
问题: Unused assignments in expression evaluation.
解决方案: Move declarations and assignments to inner blocks where possible.
文件: src/eval.c
Patch 8.2.1204
问题: Vim9: true and false not recognized in Vim9 script.
解决方案: Recognize true and false.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1205
问题: Vim9: && and || work differently when not compiled.
解决方案: Keep the value.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1206
问题: Vim9: crash in expr test when run in the GUI.
解决方案: Temporarily comment out two test lines.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.1207
问题: Vim9: crash in expr test when run in the GUI.
解决方案: Break out of loop over hashtab also when function got removed and
added.
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1208
问题: Build failure.
解决方案: Add missing change.
文件: src/structs.h
Patch 8.2.1209
问题: Vim9: test failure.
解决方案: Add missing changes to hashtab.
文件: src/hashtab.c
Patch 8.2.1210
问题: Using ht_used when looping through a hashtab is less reliable.
解决方案: Use ht_changed in a few more places.
文件: src/userfunc.c, src/if_py_both.h
Patch 8.2.1211 (after 8.2.1118)
问题: Removed more than dead code.
解决方案: Put back the decrement.
文件: src/move.c, src/testdir/test_diffmode.vim
Patch 8.2.1212
问题: Cannot build with Lua 5.4.
解决方案: Use luaL_typeerror instead defining it. (closes #6454)
文件: src/if_lua.c
Patch 8.2.1213
问题: Mouse codes not tested sufficiently.
解决方案: Add more tests for mouse codes. (closes #6436)
文件: src/testdir/test_termcodes.vim
Patch 8.2.1214
问题: MS-Windows: default _vimrc not correct in silent install mode.
解决方案: Add the LoadDefaultVimrc macro. (Ken Takata, closes #6451)
文件: nsis/gvim.nsi
Patch 8.2.1215
问题: Atari MiNT support is outdated.
解决方案: Nobody responded this code is still useful, so let's delete it.
文件: Filelist, src/os_mint.h, src/vim.h, src/Make_mint.mak,
src/digraph.c, src/fileio.c, src/memfile.c, src/os_unix.c,
src/term.c, READMEdir/README_extra.txt, runtime/doc/os_mint.txt,
src/INSTALL
Patch 8.2.1216
问题: Startup test fails.
解决方案: Adjust expected values for deleted lines.
文件: src/testdir/test_startup.vim
Patch 8.2.1217
问题: Startup test depends on random source file.
解决方案: Write a test file to find quickfix errors in.
文件: src/testdir/test_startup.vim
Patch 8.2.1218
问题: Vim9: cannot use 'text'->func().
解决方案: Recognize string at start of command.
文件: src/vim9compile.c, src/ex_docmd.c, src/testdir/test_vim9_func.vim
Patch 8.2.1219
问题: Symlink not followed if dirname ends in //.
解决方案: Resolve symlink earlier. (Tomáš Janoušek, closes #6454)
文件: src/memline.c, src/testdir/test_swap.vim
Patch 8.2.1220
问题: memory access error when dragging a popup window over a buffer
with folding.
解决方案: Avoid going over the end of the cache. (closes #6438)
文件: src/mouse.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_term_01.dump,
src/testdir/dumps/Test_popupwin_term_02.dump,
src/testdir/dumps/Test_popupwin_term_03.dump,
src/testdir/dumps/Test_popupwin_term_04.dump
Patch 8.2.1221
问题: Memory leak when updating popup window.
解决方案: Clear search highlighting.
文件: src/popupwin.c
Patch 8.2.1222
问题: When using valgrind a Vim command started by a test uses the same
log file name which gets overwritten.
解决方案: Fix regexp to rename the log file.
文件: src/testdir/shared.vim
Patch 8.2.1223
问题: Vim9: invalid type error for function default value.
解决方案: Use right argument index. (closes #6458)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1224
问题: Vim9: arguments from partial are not used.
解决方案: Put the partial arguments on the stack. (closes #6460)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1225
问题: Linker errors when building with dynamic Python 3.9.
解决方案: Add #defined items. (closes #6461)
文件: src/if_python3.c
Patch 8.2.1226
问题: MS-Windows: windows positioning wrong when the taskbar is placed
at the top or left of the screen.
解决方案: Use GetWindowRect and MoveWindow APIs. (Yukihiro Nakadaira,
Ken Takata, closes #6455)
文件: src/gui_w32.c
Patch 8.2.1227
问题: Vim9: allowing both quoted and # comments is confusing.
解决方案: Only support # comments in Vim9 script.
文件: runtime/doc/vim9.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1228
问题: Scrollbars not flush against the window edges when maximised.
解决方案: Add padding. (Ken Takata, closes #5602, closes #6466)
文件: src/gui.c, src/gui_athena.c, src/gui_gtk.c, src/gui_haiku.cc,
src/gui_mac.c, src/gui_motif.c, src/gui_photon.c, src/gui_w32.c,
src/proto/gui_athena.pro, src/proto/gui_gtk.pro,
src/proto/gui_haiku.pro, src/proto/gui_mac.pro,
src/proto/gui_motif.pro, src/proto/gui_photon.pro,
src/proto/gui_w32.pro
Patch 8.2.1229
问题: Build error without the eval feature.
解决方案: Declare starts_with_colon. Make function local.
文件: src/ex_docmd.c, src/proto/ex_docmd.pro
Patch 8.2.1230
问题: Vim9: list index error not caught by try/catch.
解决方案: Do not bail out if an error is inside try/catch. (closes #6462)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1231
问题: MS-Windows: GUI code can be cleaned up.
解决方案: Do a bit of cleaning up. (Ken Takata, closes #6465)
文件: src/gui_w32.c, src/proto/gui_w32.pro
Patch 8.2.1232
问题: MS-Windows GUI: Snap cancelled by split command.
解决方案: Do not cancel Snap when splitting a window. (Ken Takata,
closes #6467)
文件: src/gui_w32.c
Patch 8.2.1233
问题: Vim9: various errors not caught by try/catch.
解决方案: Do not bail out if an error is inside try/catch.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1234
问题: Lua build problem with old compiler.
解决方案: Move declarations to start of the block. (Taro Muraoka,
closes #6477)
文件: src/if_lua.c
Patch 8.2.1235
问题: Not all mouse codes covered by tests.
解决方案: Add more tests for the mouse. (Yegappan Lakshmanan, closes #6472)
文件: src/testdir/mouse.vim, src/testdir/test_termcodes.vim
Patch 8.2.1236
问题: Vim9: a few errors not caught by try/catch.
解决方案: Do not bail out if an error is inside try/catch. Fix that a not
matching catch doesn't jump to :endtry.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1237
问题: Changing 'completepopup' after opening a popup has no effect. (Jay
Sitter)
解决方案: Close the popup when the options are changed. (closes #6471)
文件: runtime/doc/options.txt, src/popupwin.c, src/proto/popupwin.pro,
src/optionstr.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_infopopup_8.dump
Patch 8.2.1238
问题: Vim9: a few remaining errors not caught by try/catch.
解决方案: Do not bail out if an error is inside try/catch.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1239
问题: "maxwidth" in 'completepopup' not obeyed. (Jay Sitter)
解决方案: Add separate field for value from option. (closes #6470)
文件: src/structs.h, src/popupwin.c, src/popupmenu.c,
src/testdir/dumps/Test_popupwin_infopopup_9.dump
Patch 8.2.1240
问题: GUI tests sometimes fail because of translations.
解决方案: Reload the menus without translation. (Taro Muraoka, closes #6486)
文件: src/testdir/runtest.vim
Patch 8.2.1241
问题: Cannot use getbufinfo() as a method.
解决方案: Support using getbufinfo() as a method. (closes #6458)
文件: runtime/doc/eval.txt, src/evalfunc.c,
src/testdir/test_bufwintabinfo.vim
Patch 8.2.1242
问题: Vim9: no error if calling a function with wrong argument type.
解决方案: Check types of arguments. (closes #6469)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.1243
问题: Vim9: cannot have a comment or empty line halfway a list at script
level.
解决方案: Skip more than one line if needed.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/eval.c,
src/scriptfile.c
Patch 8.2.1244
问题: Vim9: in lambda index assumes a list.
解决方案: Use the value type to decide about list or dict. (closes #6479)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1245
问题: Build failure in tiny version.
解决方案: Add #ifdef.
文件: src/scriptfile.c
Patch 8.2.1246
问题: Vim9: comment after assignment doesn't work.
解决方案: Skip over white space. (closes #6481)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1247
问题: Vim9: cannot index a character in a string.
解决方案: Add ISN_STRINDEX instruction. (closes #6478)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1248
问题: Netbeans test is flaky in the GUI.
解决方案: Filter out geometry messages. (Taro Muraoka, closes #6487)
文件: src/testdir/test_netbeans.vim
Patch 8.2.1249
问题: Vim9: disassemble test fails.
解决方案: Change INDEX to LISTINDEX. Add test for STRINDEX.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.1250
问题: Vim9: cannot use the g:, b:, t: and w: namespaces.
解决方案: Add instructions to push a dict for the namespaces. (closes #6480)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1251
问题: Vim9: warning for pointer usage, test failure undetected.
解决方案: Fix pointer indirection. Give error when executing function
failed for any reason. Fix instruction names.
文件: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro
Patch 8.2.1252
问题: ":marks" may show '< and '> mixed up.
解决方案: Show the mark position as where '< and '> would jump.
文件: src/mark.c, src/testdir/test_marks.vim
Patch 8.2.1253
问题: CTRL-K in Insert mode gets <CursorHold> inserted. (Roland
Puntaier)
解决方案: Do not reset did_cursorhold, restore it. (closes #6447)
文件: src/normal.c
Patch 8.2.1254
问题: MS-Windows: regexp test may fail if 'iskeyword' set wrongly.
解决方案: Override the 'iskeyword' value. (Taro Muraoka, closes #6502)
文件: src/testdir/test_regexp_utf8.vim
Patch 8.2.1255
问题: Cannot use a lambda with quickfix functions.
解决方案: Add support for lambda. (Yegappan Lakshmanan, closes #6499)
文件: runtime/doc/eval.txt, runtime/doc/options.txt,
runtime/doc/quickfix.txt, src/channel.c, src/evalvars.c,
src/optionstr.c, src/proto/evalvars.pro, src/proto/quickfix.pro,
src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1256
问题: Vim9: type wrong after getting dict item in lambda.
解决方案: Set the type to "any" after enforcing dict type. (closes #6491)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1257
问题: Vim9: list unpack doesn't work at the script level.
解决方案: Detect unpack assignment better. (closes #6494)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1258 (after 8.2.1253)
问题: CursorHold does not work well.a (Shane-XB-Qian)
解决方案: Only restore did_cursorhold when using :normal.
文件: src/normal.c
Patch 8.2.1259
问题: Empty group in 'tabline' may cause using an invalid pointer.
解决方案: Set the group start position. (closes #6505)
文件: src/buffer.c, src/testdir/test_tabline.vim
Patch 8.2.1260
问题: There is no good test for CursorHold.
解决方案: Add a test. Remove duplicated test. (Yegappan Lakshmanan,
closes #6503)
文件: src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim,
src/testdir/test_normal.vim
Patch 8.2.1261
问题: Vim9: common type of function not tested.
解决方案: Add a test. Fix uncovered problems.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1262
问题: src/ex_cmds.c file is too big.
解决方案: Move help related code to src/help.c. (Yegappan Lakshmanan,
closes #6506)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/cmdexpand.c, src/ex_cmds.c, src/help.c, src/proto.h,
src/proto/ex_cmds.pro, src/proto/help.pro
Patch 8.2.1263
问题: Vim9: comparators use 'ignorecase' in Vim9 script.
解决方案: Ignore 'ignorecase'. Use true and false instead of 1 and 0.
(closes #6497)
文件: src/eval.c, src/typval.c, src/vim9execute.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1264
问题: Terminal getwinpos() test is a bit flaky.
解决方案: Call getwinpos() a bit later.
文件: src/testdir/test_terminal3.vim
Patch 8.2.1265
问题: Crash with EXITFREE when split() fails.
解决方案: Restore 'cpoptions'.
文件: src/evalfunc.c
Patch 8.2.1266 (after 8.2.1262)
问题: Makefile preference were accidentally included.
解决方案: Revert the Makefile changes.
文件: src/Makefile
Patch 8.2.1267
问题: MS-Windows: tests may fail due to $PROMPT value.
解决方案: Set $PROMPT for testing. (Taro Muraoka, closes #6510)
文件: src/testdir/runtest/vim
Patch 8.2.1268
问题: Vim9: no error for using double quote comment after :func or :def.
解决方案: Only accept double quote when not in Vim9 script and not after
:def. (closes #6483)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.1269
问题: Language and locale code spread out.
解决方案: Move relevant code to src/locale.c. (Yegappan Lakshmanan,
closes #6509)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/ex_cmds2.c, src/locale.c, src/main.c, src/proto.h,
src/proto/ex_cmds2.pro, src/proto/locale.pro
Patch 8.2.1270
问题: Vim9: not skipping over function type declaration with only a
return type.
解决方案: Skip over the return type. (issue #6507)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1271
问题: Vim9: Error for Funcref function argument type.
解决方案: Find the actual function type if possible. (issue #6507)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1272
问题: Vim9: type not checked if declaration also assigns value.
解决方案: Check the type. (issue #6507)
文件: src/eval.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/vim9script.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1273
问题: MS-Windows: terminal test may leave file behind.
解决方案: Wait a moment for process to end before deleting the file.
(Taro Muraoka, closes #6513)
文件: src/testdir/test_terminal.vim
Patch 8.2.1274
问题: Vim9: no error for missing white space in assignment at script
level.
解决方案: Check for white space. (closes #6495)
文件: src/eval.c, src/evalvars.c, src/testdir/test_vim9_script.vim,
src/testdir/test_let.vim
Patch 8.2.1275
问题: Vim9: compiler warning for buffer size.
解决方案: Change the offset from 10 to 15. (Dominique Pellé, closes #6518)
文件: src/vim9script.c
Patch 8.2.1276
问题: MS-Windows: system test may fail if more.exe is installed.
解决方案: Explicitly use more.com. (Taro Muraoka, Ken Takata, closes #6517)
文件: src/testdir/test_system.vim
Patch 8.2.1277
问题: Tests on Travis do not run with EXITFREE.
解决方案: Add EXITFREE to all builds to uncover any mistakes.
文件: .travis.yml
Patch 8.2.1278
问题: Vim9: line break after "->" only allowed in :def function.
解决方案: Only allow line break after "->". (closes #6492)
文件: src/vim9compile.c, src/globals.h, src/testdir/test_vim9_expr.vim
Patch 8.2.1279
问题: Some tests on Travis have EXITFREE duplicated.
解决方案: Remove EXITFREE from shadowopt. Add "shadow" to job name.
文件: .travis.yml
Patch 8.2.1280
问题: Ex command error cannot contain an argument.
解决方案: Add ex_errmsg() and translate earlier. Use e_trailing_arg where
possible.
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/buffer.c,
src/ex_eval.c, src/match.c, src/testdir/test_tabpage.vim
Patch 8.2.1281
问题: The "trailing characters" error can be hard to understand.
解决方案: Add the trailing characters to the message.
文件: src/cmdhist.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c, src/json.c,
src/menu.c, src/quickfix.c, src/sign.c, src/userfunc.c
Patch 8.2.1282
问题: Vim9: crash when using CheckScriptFailure() in
Test_vim9script_call_fail_decl().
解决方案: Do not decrement the def_functions len unless the function was
newly added.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1283
问题: Vim9: error for misplaced -> lacks argument.
解决方案: Use the pointer before it was advanced.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1284
问题: Vim9: skipping over type includes following white space, leading
to an error for missing white space.
解决方案: Do not skip over white space after the type.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1285
问题: Vim9: argument types are not checked on assignment.
解决方案: Check function argument types. (issue #6507)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1286
问题: Vim9: No error when using a type on a window variable
解决方案: Recognize the syntax and give an error. (closes #6521)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1287
问题: Vim9: crash when using an imported function.
解决方案: Add the function type to the imported entry. (closes #6522)
文件: src/vim9script.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1288
问题: Vim9: cannot use mark in range.
解决方案: Use the flag that a colon was seen. (closes #6528)
文件: src/ex_docmd.c, src/testdir/test_vim9_func.vim
Patch 8.2.1289
问题: Crash when using a custom completion function.
解决方案: Initialize all of the expand_T. (closes #6532)
文件: src/cmdexpand.c
Patch 8.2.1290
问题: Vim9: cannot replace a global function.
解决方案: Allow for "!" on a global function. (closes #6524) Also fix that
:delfunc on a :def function only made it empty.
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.1291
问题: Vim9: type of varargs items is not checked.
解决方案: Check the list item types. (closes #6523)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1292
问题: AIDL filetype not recognized.
解决方案: Add filetype detection. (Dominique Pellé, closes #6533)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1293
问题: Vim9: :execute mixes up () expression and function call.
解决方案: Do not skip white space when looking for the "(". (closes #6531)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1294
问题: Vim9: error when using vim9script in TextYankPost.
解决方案: Use EX_LOCKOK instead of the EX_CMDWIN flag for command that can
be used when text is locked. (closes #6529)
文件: src/ex_cmds.h, src/ex_docmd.c
Patch 8.2.1295
问题: Tests 44 and 99 are old style.
解决方案: Convert to new style tests. (Yegappan Lakshmanan, closes #6536)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
src/testdir/test44.in, src/testdir/test44.ok,
src/testdir/test99.in, src/testdir/test99.ok,
src/testdir/test_regexp_utf8.vim
Patch 8.2.1296
问题: Some part of using 'smartcase' was not tested.
解决方案: Add more tests. (Dominique Pellé, closes #6538)
文件: src/testdir/test_search.vim
Patch 8.2.1297
问题: When a test fails it's often not easy to see what the call stack
is.
解决方案: Add more entries from the call stack in the exception message.
文件: runtime/doc/cmdline.txt, src/scriptfile.c,
src/proto/scriptfile.pro, src/debugger.c, src/ex_docmd.c,
src/ex_eval.c, src/message.c, src/testing.c,
src/testdir/test_expand_func.vim
Patch 8.2.1298
问题: Compiler warning for unused argument in small version.
解决方案: Add UNUSED.
文件: src/scriptfile.c
Patch 8.2.1299
问题: Compiler warning for using size_t for int and void pointer.
解决方案: Add type casts.
文件: src/scriptfile.c
Patch 8.2.1300
问题: Vim9: optional argument type not parsed properly.
解决方案: Skip over the "?". (issue #6507)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/evalvars.c,
src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1301
问题: Vim9: varargs argument type not parsed properly.
解决方案: Skip over the "...". (issue #6507)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1302
问题: Vim9: varargs arg after optional arg does not work
解决方案: Check for the "..." first. (issue #6507)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1303
问题: Calling popup_setoptions() resets 'signcolumn'.
解决方案: Only set 'signcolumn' when creating the popup. (closes #6542)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.1304
问题: Debug backtrace isn't tested much.
解决方案: Add more specific tests. (Ben Jackson, closes #6540)
文件: src/testdir/runtest.vim, src/testdir/test_debugger.vim
Patch 8.2.1305
问题: Some tests are still old style.
解决方案: Convert tests 52 and 70 to new style. (Yegappan Lakshmanan,
closes #6544) Fix error in FinishTesting().
文件: src/testdir/runtest.vim, src/Makefile, src/testdir/Make_all.mak,
src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms,
src/testdir/test52.in, src/testdir/test52.ok,
src/testdir/test70.in, src/testdir/test70.ok,
src/testdir/test_mzscheme.vim, src/testdir/test_writefile.vim
Patch 8.2.1306
问题: Checking for first character of dict key is inconsistent.
解决方案: Add eval_isdictc(). (closes #6546)
文件: src/eval.c, src/proto/eval.pro, src/vim9compile.c,
src/testdir/test_listdict.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_let.vim
Patch 8.2.1307
问题: popup window width does not include number, fold of sign column
width.
解决方案: Take number, fold and sign column with into account.
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_sign_2.dump
Patch 8.2.1308
问题: Vim9: accidentally using "x" causes Vim to exit.
解决方案: Disallow using ":x" or "xit" in Vim9 script. (closes #6399)
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9script.c,
src/proto/vim9script.pro, src/ex_docmd.c, src/ex_cmds.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1309
问题: Build failure with tiny version.
解决方案: Add #ifdef.
文件: src/ex_cmds.c, src/ex_docmd.c
Patch 8.2.1310
问题: Configure with Xcode 12 fails to check for tgetent.
解决方案: Declare tgetent(). (Ozaki Kiichi, closes #6558)
文件: src/configure.ac, src/auto/configure
Patch 8.2.1311
问题: Test failures with legacy Vim script.
解决方案: Actually check for Vim9 script.
文件: src/vim9script.c
Patch 8.2.1312
问题: MS-Windows: terminal test may fail if dir.exe exists.
解决方案: Use dir.com. (Ken Takata, closes #6557)
文件: src/testdir/test_terminal3.vim
Patch 8.2.1313
问题: Vim9 script: cannot assign to environment variable.
解决方案: Recognize environment variable assignment. (closes #6548)
Also options and registers.
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1314
问题: Vim9: rule for comment after :function is confusing.
解决方案: Allow double quoted comment after :function in vim9script.
(closes #6556)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.1315
问题: MS-Windows: test log contains escape sequences.
解决方案: Do not use t_md and t_me but ANSI escape sequences. (Ken Takata,
closes #6559)
文件: src/testdir/runtest.vim
Patch 8.2.1316
问题: Test 42 is still old style.
解决方案: Turn it into a new style test. (Yegappan Lakshmanan, closes #6561)
文件: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_dos.mak,
src/testdir/Make_ming.mak, src/testdir/Make_vms.mms,
src/testdir/test42.in, src/testdir/test42.ok,
src/testdir/test_writefile.vim
Patch 8.2.1317
问题: MS-Windows tests on AppVeyor are slow.
解决方案: Use GitHub Actions. (Ken Takata, closes #6569)
文件: Filelist, .github/workflows/ci-windows.yaml, appveyor.yml,
ci/appveyor.bat
Patch 8.2.1318
问题: No status badge for Github CI.
解决方案: Add a badge.
文件: README.md
Patch 8.2.1319
问题: Status badge for Github CI has wrong link.
解决方案: Rename and use the right link
文件: README.md, .github/workflows/ci-windows.yaml
Patch 8.2.1320
问题: Vim9: cannot declare some single letter variables.
解决方案: Do not recognize a colon for a namespace for single letter
variables. (closes #6547)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1321
问题: GitHub CI also runs on tag push.
解决方案: Skip CI on push. (Ken Takata, closes #6571)
文件: .github/workflows/ci-windows.yaml
Patch 8.2.1322
问题: Vim9: method on double quoted string doesn't work.
解决方案: Recognize double quoted string. (closes #6562)
文件: src/ex_docmd.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1323
问题: Vim9: invalid operators only rejected in :def function.
解决方案: Also reject them at script level. (closes #6564)
文件: src/eval.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/testdir/test_vim9_expr.vim
Patch 8.2.1324
问题: Vim9: line break after "=" does not work.
解决方案: Also allow for NUL after "=". (closes #6549)
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.1325
问题: Vim9: using Vim9 script for autoload not tested.
解决方案: Add a test. Update help.
文件: runtime/doc/vim9.txt, src/testdir/test_autoload.vim,
src/testdir/sautest/autoload/auto9.vim
Patch 8.2.1326
问题: Vim9: skipping over white space after list.
解决方案: Do not skip white space, a following [] would be misinterpreted.
(closes #6552) Fix a few side effects.
文件: src/list.c, src/dict.c, src/eval.c, src/userfunc.c,
src/testdir/test_functions.vim, src/testdir/test_gn.vim,
src/testdir/test_popupwin.vim, src/testdir/test_tabpage.vim,
src/testdir/test_textprop.vim, src/testdir/test_textobjects.vim
Patch 8.2.1327
问题: Mac: configure can't find Tcl libraries.
解决方案: Adjust configure check. (closes #6575)
文件: src/configure.ac, src/auto/configure
Patch 8.2.1328
问题: No space allowed before comma in list.
解决方案: Legacy Vim script allows it. (closes #6577)
文件: src/dict.c, src/list.c, src/testdir/test_listdict.vim
Patch 8.2.1329
问题: Vim9: cannot define global function inside :def function.
解决方案: Assign to global variable instead of local. (closes #6584)
文件: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
src/vim9.h, src/vim9execute.c, src/structs.h,
src/misc2.c, src/proto/misc2.pro, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1330
问题: Github workflow takes longer than needed.
解决方案: Do two test runs in parallel instead of sequentially. (Ken Takata,
closes #6579)
文件: .github/workflows/ci-windows.yaml
Patch 8.2.1331
问题: Vim9: :echo with two lists doesn't work.
解决方案: Do not skip white space before []. (closes #6552)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1332
问题: Vim9: memory leak when using nested global function.
解决方案: Delete the function when deleting the instruction. Disable test
that still causes a leak.
文件: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.1333
问题: Vim9: memory leak when using nested global function.
解决方案: Swap from and to when copying the lines.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1334
问题: Github workflow timeout needs tuning
解决方案: Use a 10 minute timeout. Fail when timing out. (Ken Takata,
closes #6590)
文件: .github/workflows/ci-windows.yaml
Patch 8.2.1335
问题: CTRL-C in the GUI doesn't interrupt. (Sergey Vlasov)
解决方案: Recognize "C" with CTRL modifier as CTRL-C. (issue #6565)
文件: src/gui.c, src/proto/gui.pro, src/gui_gtk_x11.c, src/gui_x11.c,
src/gui_photon.c
Patch 8.2.1336 (after 8.2.1335)
问题: Build failure on non-Unix systems.
解决方案: Add #ifdef.
文件: src/gui.c
Patch 8.2.1337
问题: Vim9: cannot use empty key in dict assignment.
解决方案: Allow empty key. (closes #6591)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1338
问题: Vim9: assigning to script-local variable doesn't check type.
解决方案: Use the type. (issue #6591)
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1339
问题: Vim9: assigning to global dict variable doesn't work.
解决方案: Guess variable type based in index type. (issue #6591)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1340
问题: Some tests fail on Cirrus CI and/or with FreeBSD.
解决方案: Make 'backupskip' empty. Do not run tests as root. Check for
directory when using viminfo. (Ozaki Kiichi, closes #6596)
文件: .cirrus.yml, src/testdir/test_backup.vim,
src/testdir/test_edit.vim, src/testdir/test_viminfo.vim,
src/testdir/test_writefile.vim, src/viminfo.c
Patch 8.2.1341
问题: Build failures.
解决方案: Add missing error message.
文件: src/globals.h
Patch 8.2.1342
问题: Vim9: accidentally using "x" gives a confusing error.
解决方案: Disallow using ":t" in Vim9 script. (issue #6399)
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9script.c,
src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1343
问题: Vim9: cannot find global function when using g: when local
function with the same name exists.
解决方案: Find global function when using g:.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1344
问题: Vim9: No test for trying to redefine global function.
解决方案: Add a test.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1345
问题: Redraw error when using visual block and scroll.
解决方案: Add check for w_topline. (closes #6597)
文件: src/drawscreen.c, src/testdir/test_display.vim,
src/testdir/dumps/Test_display_visual_block_scroll.dump
Patch 8.2.1346
问题: Small build fails.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.1347
问题: Cannot easily get the script ID.
解决方案: Support expand('<SID>').
文件: runtime/doc/map.txt, src/ex_docmd.c,
src/testdir/test_expand_func.vim
Patch 8.2.1348
问题: Build failure without the eval feature.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.1349
问题: Vim9: can define a function with the name of an import.
解决方案: Disallow using an existing name. (closes #6585)
文件: src/userfunc.c, src/vim9compile.c, src/globals.h,
src/testdir/test_vim9_script.vim
Patch 8.2.1350
问题: Vim9: no test for error message when redefining function.
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1351
问题: Vim9: no proper error if using namespace for nested function.
解决方案: Specifically check for a namespace. (closes #6582)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1352
问题: Vim9: no error for shadowing a script-local function by a nested
function.
解决方案: Check for script-local function. (closes #6586)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1353
问题: Crash when drawing double-wide character in terminal window.
(Masato Nishihata)
解决方案: Check getcell() returning NULL. (issue #6141)
文件: src/libvterm/src/screen.c, src/testdir/test_terminal.vim
Patch 8.2.1354
问题: Test 59 is old style.
解决方案: Convert into a new style test. (Yegappan Lakshmanan, closes #6604)
文件: runtime/doc/eval.txt, src/Makefile, src/testdir/Make_all.mak,
src/testdir/Make_vms.mms, src/testdir/test59.in,
src/testdir/test59.ok, src/testdir/test_spell_utf8.vim
Patch 8.2.1355
问题: Vim9: no error using :let for options and registers.
解决方案: Give an error. (closes #6568)
文件: src/evalvars.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1356
问题: Vim9: cannot get the percent register.
解决方案: Check for readable registers instead of writable. (closes #6566)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1357
问题: Vim9: cannot assign to / register.
解决方案: Adjust check for assignment. (issue #6566)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1358
问题: Vim9: test fails with +dnd is not available.
解决方案: Add condition.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1359
问题: Vim9: cannot assign to / register in Vim9 script.
解决方案: Adjust check for assignment in Vim9 script. (closes #6567)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1360
问题: Stray error for white space after expression.
解决方案: Ignore trailing white space. (closes #6608)
文件: src/eval.c, src/testdir/test_filter_map.vim
Patch 8.2.1361
问题: Error for white space after expression in assignment.
解决方案: Skip over white space. (closes #6617)
文件: src/eval.c, src/testdir/test_expr.vim
Patch 8.2.1362
问题: Last entry of ":set term=xxx" overwritten by error message when
'cmdheight' is two or more. (Tony Mechelynck)
解决方案: Output extra line breaks.
文件: src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.1363
问题: Test trying to run terminal when it is not supported.
解决方案: Check if Vim can be run in a terminal.
文件: src/testdir/test_termcodes.vim
Patch 8.2.1364
问题: Invalid memory access when searching for raw string.
解决方案: Check for delimiter match before following quote. (closes #6578)
文件: src/search.c
Patch 8.2.1365
问题: Vim9: no error for missing white space around operator.
解决方案: Check for white space. (closes #6618)
文件: src/eval.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/evalvars.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1366
问题: Test 49 is old style.
解决方案: Convert several tests to new style. (Yegappan Lakshmanan,
closes #6629)
文件: src/testdir/script_util.vim, src/testdir/test49.ok,
src/testdir/test49.vim, src/testdir/test_vimscript.vim
Patch 8.2.1367
问题: Vim9: no error for missing white space around operator.
解决方案: Check for white space around *, / and %.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1368
问题: Vim9: no error for missing white space around operator.
解决方案: Check for white space around <, !=, etc.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1369
问题: MS-Windows: autocommand test sometimes fails.
解决方案: Do not rely on the cat command.
文件: src/testdir/test_autocmd.vim
Patch 8.2.1370
问题: MS-Windows: warning for using fstat() with stat_T.
解决方案: use _fstat64() if available. (Naruhiko Nishino, closes #6625)
文件: src/macros.h
Patch 8.2.1371
问题: Vim9: no error for missing white space around operator.
解决方案: Check for white space around && and ||.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1372
问题: Vim9: no error for missing white space around operator.
解决方案: Check for white space around ? and :.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1373
问题: Vim9: no error for assigning to non-existing script var.
解决方案: Check that in Vim9 script the variable was defined. (closes #6630)
文件: src/vim9compile.c, src/userfunc.c, src/structs.h,
src/testdir/test_vim9_script.vim
Patch 8.2.1374
问题: Vim9: error for assigning empty list to script variable.
解决方案: Use t_unknown for empty list member. (closes #6595)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1375
问题: Vim9: method name with digit not accepted.
解决方案: Use eval_isnamec() instead of eval_isnamec1(). (closes #6613)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1376
问题: Vim9: expression mapping causes error for using :import.
解决方案: Add EX_LOCK_OK to :import and :export. (closes #6606)
文件: src/ex_cmds.h, src/testdir/test_vim9_script.vim
Patch 8.2.1377
问题: Triggering the ATTENTION prompt causes typeahead to be messed up.
解决方案: Increment tb_change_cnt. (closes #6541)
文件: src/getchar.c
Patch 8.2.1378
问题: Cannot put space between function name and paren.
解决方案: Allow this for backwards compatibility.
文件: src/eval.c, src/testdir/test_expr.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1379
问题: Curly braces expression ending in " }" does not work.
解决方案: Skip over white space when checking for "}". (closes #6634)
文件: src/dict.c, src/testdir/test_eval_stuff.vim
Patch 8.2.1380
问题: Vim9: return type of getreg() is always a string.
解决方案: Use list of strings when there are three arguments. (closes #6633)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1381
问题: MS-Windows: crash with Python 3.5 when stdin is redirected.
解决方案: Reconnect stdin. (Yasuhiro Matsumoto, Ken Takata, closes #6641)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/if_python3.c
Patch 8.2.1382
问题: Vim9: using :import in filetype plugin gives an error.
解决方案: Allow commands with the EX_LOCK_OK flag. (closes #6636)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1383
问题: Test 49 is old style.
解决方案: Convert test cases to new style. (Yegappan Lakshmanan,
closes #6638)
文件: src/testdir/test49.ok, src/testdir/test49.vim,
src/testdir/test_vimscript.vim
Patch 8.2.1384
问题: No ATTENTION prompt for :vimgrep first match file.
解决方案: When there is an existing swap file do not keep the dummy buffer.
(closes #6649)
文件: src/quickfix.c, src/testdir/runtest.vim,
src/testdir/test_quickfix.vim
Patch 8.2.1385
问题: No testing on ARM.
解决方案: Add a test on Travis for ARM. (Ozaki Kiichi, closes #6615)
文件: .travis.yml
Patch 8.2.1386
问题: Backslash not removed after space in option with space in
'isfname'.
解决方案: Do remove backslash before space, also when it is in 'isfname'.
(Yasuhiro Matsumoto, closes #6651)
文件: src/option.c, src/testdir/test_options.vim
Patch 8.2.1387
问题: Vim9: cannot assign to single letter variable with type.
解决方案: Exclude the colon from the variable name. (closes #6647)
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.1388
问题: Vim9: += only works for numbers.
解决方案: Use += as concatenate for a list. (closes #6646)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1389
问题: File missing from the distribution.
解决方案: Add script_util.vim to the list of distributes files.
文件: Filelist
Patch 8.2.1390
问题: Vim9: type error after storing an option value.
解决方案: Drop the type after a STOREOPT instruction. (closes #6632)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1391
问题: Vim9: no error for shadowing a script function.
解决方案: Check for already defined items. (closes #6652)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1392
问题: Vim9: error line number incorrect after skipping over comment
lines.
解决方案: Insert empty lines for skipped lines.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1393
问题: Insufficient testing for script debugging.
解决方案: Add more tests. (Ben Jackson)
文件: src/testdir/test_debugger.vim
Patch 8.2.1394
问题: Vim9: compiling a function interferes with command modifiers.
解决方案: Save and restore command modifiers. (closes #6658)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1395
问题: Vim9: no error if declaring a funcref with a lower case letter.
解决方案: Check the name after the type is inferred. Fix confusing name.
文件: src/vim9compile.c, src/dict.c, src/eval.c, src/evalvars.c,
src/proto/evalvars.pro, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1396
问题: Vim9: no error for unexpectedly returning a value.
解决方案: Only set the return type for lambda's. Make using function type
in a function reference work.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1397
问题: Vim9: return type of maparg() not adjusted for fourth argument.
解决方案: Check if fourth argument is present. (closes #6645)
文件: src/evalfunc.c, src/testdir/test_maparg.vim
Patch 8.2.1398
问题: Autoload script sourced twice if sourced directly.
解决方案: Do not source an autoload script again. (issue #6644)
文件: src/scriptfile.c, src/testdir/sautest/autoload/sourced.vim
Patch 8.2.1399
问题: Vim9: may find imported item in wrong script.
解决方案: When looking up script-local function use the embedded script ID.
(issue #6644)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1400
问题: Vim9: test does not delete written files.
解决方案: Correct file names.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1401
问题: Cannot jump to the last used tabpage.
解决方案: Add g<Tab> and tabpagnr('#'). (Yegappan Lakshmanan, closes #6661,
neovim #11626)
文件: runtime/doc/eval.txt, runtime/doc/index.txt,
runtime/doc/tabpage.txt, src/evalwindow.c, src/globals.h,
src/normal.c, src/proto/window.pro, src/testdir/test_tabpage.vim,
src/window.c
Patch 8.2.1402
问题: s390x tests always fail.
解决方案: Temporarily disable s390x tests.
文件: .travis.yml
Patch 8.2.1403
问题: Vim9: Vim highlighting fails in cmdline window if it uses Vim9
commands.
解决方案: Allow using :vim9script, :import and :export while in the cmdline
window. (closes #6656)
文件: src/ex_cmds.h, src/testdir/test_vim9_script.vim
Patch 8.2.1404
问题: Vim9: script test fails in the GUI.
解决方案: Use another key to map. Improve cleanup.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1405
问题: Vim9: vim9compile.c is getting too big.
解决方案: Split off type code to vim9type.c.
文件: Filelist, src/vim9compile.c, src/proto/vim9compile.pro,
src/vim9type.c, src/proto/vim9type.pro, src/proto.h,
src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile
Patch 8.2.1406
问题: Popupwindow lacks scrollbar if no "maxheight" is used.
解决方案: Compute the max height depending on the position. (closes #6664)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_toohigh_1.dump,
src/testdir/dumps/Test_popupwin_toohigh_2.dump
Patch 8.2.1407
问题: Vim9: type of list and dict only depends on first item.
解决方案: Use all items to decide about the type.
文件: src/vim9compile.c, src/vim9type.c, src/proto/vim9type.pro,
src/testdir/test_vim9_expr.vim, runtime/doc/vim9.txt
Patch 8.2.1408
问题: Vim9: type casting not supported.
解决方案: Introduce type casting.
文件: runtime/doc/vim9.txt, src/vim9compile.c,
src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1409
问题: Npmrc and php.ini filetypes not recognized.
解决方案: Add filetype detection. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1410
问题: Adding compiler plugin requires test change.
解决方案: Include compiler plugin and adjust test.
文件: src/testdir/test_compiler.vim, runtime/compiler/xo.vim
Patch 8.2.1411
问题: when splitting a window localdir is copied but prevdir is not.
解决方案: Also copy prevdir. (closes #6667)
文件: src/window.c, src/testdir/test_cd.vim
Patch 8.2.1412
问题: Vim: not operator does not result in boolean.
解决方案: Make type depend on operator. (issue 6678) Fix using "false" and
"true" in Vim9 script.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1413 (after 8.2.1401)
问题: Previous tab page not usable from an Ex command.
解决方案: Add the "#" argument for :tabnext et al. (Yegappan Lakshmanan,
closes #6677)
文件: runtime/doc/tabpage.txt, src/ex_docmd.c, src/window.c,
src/testdir/test_tabpage.vim
Patch 8.2.1414
问题: Popupwindow missing last couple of lines when cursor is in the
first line.
解决方案: Compute the max height also when top aligned. (closes #6664)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_toohigh_3.dump,
src/testdir/dumps/Test_popupwin_nospace.dump
Patch 8.2.1415
问题: Closing a popup window with CTRL-C interrupts 'statusline' if it
calls a function.
解决方案: Reset got_int while redrawing. (closes #6675)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_ctrl_c.dump
Patch 8.2.1416
问题: Vim9: boolean evaluation does not work as intended.
解决方案: Use tv2bool() in Vim9 script. (closes #6681)
文件: src/eval.c, src/testdir/test_vim9_expr.vim, src/testdir/vim9.vim
Patch 8.2.1417
问题: Test 49 is old style.
解决方案: Convert more parts to new style test. (Yegappan Lakshmanan,
closes #6682)
文件: src/testdir/test49.ok, src/testdir/test49.vim,
src/testdir/test_vimscript.vim
Patch 8.2.1418
问题: Vim9: invalid error for missing white space after function.
解决方案: Do not skip over white space. (closes #6679)
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1419
问题: Vim9: not operator applied too early.
解决方案: Implement the "numeric_only" argument. (closes #6680)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1420
问题: Test 49 is old style.
解决方案: Convert remaining parts to new style. Remove obsolete items.
(Yegappan Lakshmanan, closes #6683)
文件: Filelist, runtime/doc/testing.txt, src/Make_mvc.mak, src/Makefile,
src/testdir/Make_all.mak, src/testdir/Make_amiga.mak,
src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
src/testdir/Make_vms.mms, src/testdir/Makefile,
src/testdir/README.txt, src/testdir/test49.in,
src/testdir/test49.ok, src/testdir/test49.vim,
src/testdir/test_quickfix.vim, src/testdir/test_vimscript.vim
Patch 8.2.1421
问题: Vim9: handling "+" and "-" before number differs from Vim script.
解决方案: Use the same sequence of commands.
文件: src/vim9compile.c
Patch 8.2.1422
问题: The Mac GUI implementation is outdated and probably doesn't even
work.
解决方案: Remove the Mac GUI code. The MacVim project provides the
supported Vim GUI version.
文件: Filelist, src/gui_mac.c, src/proto/gui_mac.pro, src/proto.h,
src/Makefile, src/configure.ac, src/auto/configure,
src/evalfunc.c, src/fileio.c, src/gui.c, src/if_mzsch.c,
src/main.c, src/misc2.c, src/mouse.c, src/os_mac_conv.c,
src/os_unix.c, src/feature.h, src/globals.h, src/gui.h,
src/option.h, src/optiondefs.h, src/os_mac.h, src/structs.h,
src/vim.h, src/INSTALLmac.txt
Patch 8.2.1423
问题: Vim9: find global function when looking for script-local.
解决方案: Don't strip prefix if name starts with "s:". (closes #6688)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1424 (after 8.2.1422)
问题: Mac build fails.
解决方案: Adjust configure to not fall back to Athena. Adjust some other
files.
文件: src/configure.ac, src/auto/configure, src/os_macosx.m,
src/version.c
Patch 8.2.1425
问题: Vim9: cannot use call() without :call.
解决方案: Do not skip over "call(". (closes #6689)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1426
问题: Vim9: cannot call autoload function in :def function.
解决方案: Load the autoload script. (closes #6690)
文件: src/vim9execute.c, src/vim9compile.c, src/scriptfile.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1427
问题: Vim9: cannot use a range with marks in :def function.
解决方案: Parse range after colon. (closes #6686)
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.1428
问题: Vim9: :def function does not abort on nested function error.
解决方案: Check whether an error message was given. (closes #6691)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1429
问题: Vim9: no error for missing white after : in dict.
解决方案: Check for white space. (closes #6671) Also check that there is no
white before the :.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1430
问题: Vim9: error for missing comma instead of extra white space.
解决方案: Check if comma can be found after white space. (closes #6668)
Also check for extra white space in literal dict. (closes #6670)
文件: src/list.c, src/dict.c, src/vim9compile.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1431
问题: Vim9: no error for white space before comma in dict.
解决方案: Check for extra white space. (closes #6674)
文件: src/vim9compile.c, src/dict.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1432
问题: Various inconsistencies in test files.
解决方案: Add modelines where they were missing. Use Check commands instead
of silently skipping over tests. Adjust indents and comments.
(Ken Takata, closes #6695)
文件: src/testdir/test_arglist.vim, src/testdir/test_assert.vim,
src/testdir/test_autochdir.vim, src/testdir/test_autocmd.vim,
src/testdir/test_autoload.vim, src/testdir/test_balloon.vim,
src/testdir/test_balloon_gui.vim, src/testdir/test_behave.vim,
src/testdir/test_blockedit.vim, src/testdir/test_breakindent.vim,
src/testdir/test_bufline.vim, src/testdir/test_bufwintabinfo.vim,
src/testdir/test_cd.vim, src/testdir/test_changedtick.vim,
src/testdir/test_changelist.vim, src/testdir/test_channel.vim,
src/testdir/test_checkpath.vim, src/testdir/test_cindent.vim,
src/testdir/test_cjk_linebreak.vim,
src/testdir/test_clientserver.vim,
src/testdir/test_close_count.vim, src/testdir/test_cmdline.vim,
src/testdir/test_command_count.vim,
src/testdir/test_comparators.vim, src/testdir/test_compiler.vim,
src/testdir/test_crypt.vim, src/testdir/test_cursorline.vim,
src/testdir/test_curswant.vim, src/testdir/test_debugger.vim,
src/testdir/test_delete.vim, src/testdir/test_diffmode.vim,
src/testdir/test_digraph.vim, src/testdir/test_display.vim,
src/testdir/test_edit.vim, src/testdir/test_environ.vim,
src/testdir/test_erasebackword.vim,
src/testdir/test_escaped_glob.vim, src/testdir/test_ex_equal.vim,
src/testdir/test_ex_undo.vim, src/testdir/test_ex_z.vim,
src/testdir/test_exec_while_if.vim, src/testdir/test_exists.vim,
src/testdir/test_exists_autocmd.vim, src/testdir/test_exit.vim,
src/testdir/test_expand_dllpath.vim,
src/testdir/test_expr_utf8.vim, src/testdir/test_feedkeys.vim,
src/testdir/test_file_size.vim, src/testdir/test_fileformat.vim,
src/testdir/test_filter_cmd.vim,
src/testdir/test_find_complete.vim, src/testdir/test_findfile.vim,
src/testdir/test_fixeol.vim, src/testdir/test_flatten.vim,
src/testdir/test_fnameescape.vim, src/testdir/test_fold.vim,
src/testdir/test_functions.vim, src/testdir/test_ga.vim,
src/testdir/test_getcwd.vim, src/testdir/test_getvar.vim,
src/testdir/test_glob2regpat.vim, src/testdir/test_global.vim,
src/testdir/test_gui.vim, src/testdir/test_gui_init.vim,
src/testdir/test_highlight.vim, src/testdir/test_hlsearch.vim,
src/testdir/test_iminsert.vim,
src/testdir/test_increment_dbcs.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_interrupt.vim,
src/testdir/test_job_fails.vim, src/testdir/test_join.vim,
src/testdir/test_json.vim, src/testdir/test_jumplist.vim,
src/testdir/test_jumps.vim, src/testdir/test_lambda.vim,
src/testdir/test_langmap.vim, src/testdir/test_largefile.vim,
src/testdir/test_lineending.vim, src/testdir/test_listchars.vim,
src/testdir/test_listener.vim, src/testdir/test_listlbr.vim,
src/testdir/test_listlbr_utf8.vim,
src/testdir/test_makeencoding.vim, src/testdir/test_man.vim,
src/testdir/test_mapping.vim, src/testdir/test_marks.vim,
src/testdir/test_matchadd_conceal.vim,
src/testdir/test_matchadd_conceal_utf8.vim,
src/testdir/test_memory_usage.vim, src/testdir/test_menu.vim,
src/testdir/test_messages.vim, src/testdir/test_mksession.vim,
src/testdir/test_modeline.vim,
src/testdir/test_nested_function.vim, src/testdir/test_number.vim,
src/testdir/test_options.vim, src/testdir/test_packadd.vim,
src/testdir/test_partial.vim, src/testdir/test_paste.vim,
src/testdir/test_plus_arg_edit.vim, src/testdir/test_preview.vim,
src/testdir/test_profile.vim, src/testdir/test_prompt_buffer.vim,
src/testdir/test_quickfix.vim, src/testdir/test_quotestar.vim,
src/testdir/test_random.vim, src/testdir/test_recover.vim,
src/testdir/test_regex_char_classes.vim,
src/testdir/test_regexp_latin.vim, src/testdir/test_registers.vim,
src/testdir/test_rename.vim, src/testdir/test_retab.vim,
src/testdir/test_scriptnames.vim, src/testdir/test_scroll_opt.vim,
src/testdir/test_scrollbind.vim, src/testdir/test_search_stat.vim,
src/testdir/test_searchpos.vim, src/testdir/test_set.vim,
src/testdir/test_sha256.vim, src/testdir/test_shift.vim,
src/testdir/test_shortpathname.vim, src/testdir/test_signs.vim,
src/testdir/test_sort.vim, src/testdir/test_sound.vim,
src/testdir/test_source_utf8.vim, src/testdir/test_spellfile.vim,
src/testdir/test_startup.vim, src/testdir/test_startup_utf8.vim,
src/testdir/test_stat.vim, src/testdir/test_suspend.vim,
src/testdir/test_swap.vim, src/testdir/test_syntax.vim,
src/testdir/test_tab.vim, src/testdir/test_tabline.vim,
src/testdir/test_tagcase.vim, src/testdir/test_tagjump.vim,
src/testdir/test_taglist.vim, src/testdir/test_termcodes.vim,
src/testdir/test_termencoding.vim, src/testdir/test_terminal.vim,
src/testdir/test_terminal2.vim, src/testdir/test_terminal3.vim,
src/testdir/test_terminal_fail.vim,
src/testdir/test_true_false.vim,
src/testdir/test_utf8_comparisons.vim,
src/testdir/test_vartabs.vim, src/testdir/test_version.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_winbar.vim,
src/testdir/test_winbuf_close.vim,
src/testdir/test_window_cmd.vim, src/testdir/test_window_id.vim,
src/testdir/test_windows_home.vim, src/testdir/test_wnext.vim,
src/testdir/test_wordcount.vim, src/testdir/test_writefile.vim,
src/testdir/test_xxd.vim
Patch 8.2.1433
问题: Vim9: cannot mingle comments in multi-line lambda.
解决方案: Skip over NULL lines. (closes #6694)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1434
问题: Vim9: crash when lambda uses outer function argument.
解决方案: Set the flag that the outer context is used.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1435
问题: Vim9: always converting to string for ".." leads to mistakes.
解决方案: Only automatically convert simple types.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9.h,
src/vim9execute.c, src/proto/vim9execute.pro, src/eval.c,
src/evalfunc.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1436
问题: Function implementing :substitute has unexpected name.
解决方案: Rename from do_sub() to ex_substitute().
文件: src/ex_cmds.c, src/proto/ex_cmds.pro, src/ex_docmd.c,
src/ex_cmds.h
Patch 8.2.1437
问题: Vim9: 'statusline' is evaluated using Vim9 script syntax.
解决方案: Always use legacy script syntax.
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.1438
问题: Missing tests for interrupting script execution from debugger.
解决方案: Add tests. (Yegappan Lakshmanan, closes #6697)
文件: src/testdir/test_debugger.vim
Patch 8.2.1439
问题: Tiny and small builds have no test coverage.
解决方案: Restore tests that do not depend on the +eval feature.
(Ken Takata, closes #6696)
文件: .travis.yml, Filelist, Makefile, runtime/doc/testing.txt,
src/Make_mvc.mak, src/Makefile, src/testdir/Make_all.mak,
src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
src/testdir/Make_ming.mak, src/testdir/Make_vms.mms,
src/testdir/Makefile, src/testdir/runtest.vim,
src/testdir/test1.in, src/testdir/test1.ok, src/testdir/test20.in,
src/testdir/test20.ok, src/testdir/test21.in,
src/testdir/test21.ok, src/testdir/test22.in,
src/testdir/test22.ok, src/testdir/test23.in,
src/testdir/test23.ok, src/testdir/test24.in,
src/testdir/test24.ok, src/testdir/test25.in,
src/testdir/test25.ok, src/testdir/test26.in,
src/testdir/test26.ok, src/testdir/test27.in,
src/testdir/test27.ok, src/testdir/test_options.vim
Patch 8.2.1440
问题: Debugger code insufficiently tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #6700)
文件: src/testdir/test_debugger.vim, src/testdir/test_vimscript.vim
Patch 8.2.1441
问题: Running tests in tiny version gives error for summarize.vim.
解决方案: Set 'cpoptions' to allow for line continuation. Restore
redirecting test output to /dev/null.
文件: src/testdir/summarize.vim, src/testdir/Makefile
Patch 8.2.1442
问题: Outdated references to the Mac Carbon GUI.
解决方案: Remove or update references. (Yee Cheng Chin, closes #6703)
文件: READMEdir/README_extra.txt, src/Makefile, src/configure.ac,
src/auto/configure, src/gui_haiku.cc, src/os_macosx.m,
src/testdir/test_iminsert.vim, src/vim.h
Patch 8.2.1443
问题: Vim9: crash when interrupting a nested :def function.
解决方案: Push a dummy return value onto the stack. (closes #6701)
文件: src/vim9execute.c
Patch 8.2.1444
问题: Error messages are spread out and names can be confusing.
解决方案: Start moving error messages to a separate file and use clear
names.
文件: Filelist, src/vim.h, src/globals.h, src/errors.h, src/Makefile,
src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
src/dict.c, src/evalvars.c, src/ex_docmd.c, src/list.c,
src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
src/vim9script.c, src/vim9type.c
Patch 8.2.1445
问题: Vim9: function expanded name is cleared when sourcing a script
again.
解决方案: Only clear the expanded name when deleting the function.
(closes #6707)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.1446
问题: Vim9: line number in error message is not correct.
解决方案: Set SOURCING_LNUM before calling emsg(). (closes #6708)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1447
问题: Vim9: return type of keys() is list<any>.
解决方案: Should be list<string>. (closes #6711)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1448
问题: Test 77a for VMS depends on small.vim which does not exist.
解决方案: Use the 'silent while 0" trick. (issue #6696)
文件: src/testdir/test77a.in
Patch 8.2.1449
问题: Some test makefiles delete files that are not generated.
解决方案: Remove the deletion commands.
文件: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms
Patch 8.2.1450
问题: Vim9: no check that script-local items don't become global.
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1451
问题: Vim9: list type at script level only uses first item.
解决方案: Use all members, like in a compiled function. (closes #6712)
Also for dictionary.
文件: src/vim9type.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1452
问题: Vim9: dead code in to_name_end().
解决方案: Remove check for lambda and dict, it won't be used.
文件: src/vim9compile.c
Patch 8.2.1453
问题: Vim9: failure to compile lambda not tested.
解决方案: Add a test case.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.1454
问题: Vim9: failure invoking lambda with wrong arguments.
解决方案: Handle invalid arguments. Add a test.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1455
问题: Vim9: crash when using typecast before constant.
解决方案: Generate constant before checking type. Add tets.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1456
问题: MS-Windows: test files are not deleted.
解决方案: use "del" instead of $(DEL).
文件: src/testdir/Make_dos.mak
Patch 8.2.1457
问题: Vim9: the output of :disassemble cannot be interrupted.
解决方案: Check got_int. (closes #6715)
文件: src/vim9execute.c
Patch 8.2.1458
问题: .gawk files not recognized.
解决方案: Recognize .gawk files. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1459
问题: Vim9: declaring a script variable at the script level does not
infer the type.
解决方案: Get the type from the value. (closes #6716)
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.1460
问题: Error messages are spread out.
解决方案: Move more messages into errors.h.
文件: src/errors.h, src/globals.h, src/vim9compile.c, src/vim9execute.c,
src/vim9script.c, src/vim9type.c, src/scriptfile.c, src/ex_cmds.c,
src/ex_docmd.c, src/match.c, src/eval.c, src/evalvars.c,
src/userfunc.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.1461
问题: Vim9: string indexes are counted in bytes.
解决方案: Use character indexes. (closes #6574)
文件: runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
src/vim9execute.c, src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1462
问题: Vim9: string slice not supported yet.
解决方案: Add support for string slicing.
文件: src/errors.h, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/eval.c, src/proto/eval.pro, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1463
问题: Vim9: list slice not supported yet.
解决方案: Add support for list slicing.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/eval.c,
src/list.c, src/proto/list.pro, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1464
问题: Vim9: build warning for unused variable.
解决方案: Delete the variable declaration.
文件: src/vim9execute.c
Patch 8.2.1465
问题: Vim9: subscript not handled properly.
解决方案: Adjust error message. Remove dead code. Disallow string to
number conversion in scripts.
文件: src/errors.h, src/vim9compile.c, src/vim9execute.c, src/eval.c,
src/typval.c, src/list.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1466
问题: Vim9: cannot index or slice a variable with type "any".
解决方案: Add runtime index and slice.
文件: src/eval.c, src/proto/eval.pro, src/vim9compile.c,
src/vim9execute.c, src/vim9.h, src/errors.h, src/list.c,
src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1467
问题: Vim9: :echomsg doesn't like a dict argument.
解决方案: Convert arguments like in legacy script. (closes #6717)
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1468
问题: Vim9: invalid error for missing white space.
解决方案: Don't skip over white space after index. (closes #6718)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1469
问题: Vim9: cannot assign string to string option.
解决方案: Change checks for option value. (closes #6720)
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.1470
问题: Errors in spell file not tested.
解决方案: Add test for spell file errors. (Yegappan Lakshmanan,
closes #6721)
文件: src/testdir/test_spellfile.vim
Patch 8.2.1471
问题: :const only locks the variable, not the value.
解决方案: Lock the value as ":lockvar 1 var" would do. (closes #6719)
文件: src/evalvars.c, src/testdir/test_const.vim
Patch 8.2.1472
问题: ":argdel" does not work like ":.argdel" as documented. (Alexey
Demin)
解决方案: Make ":argdel" work like ":.argdel". (closes #6727)
Also fix giving the error "0 more files to edit".
文件: src/arglist.c, src/ex_docmd.c, src/testdir/test_arglist.vim
Patch 8.2.1473
问题: Items in a list given to :const can still be modified.
解决方案: Work like ":lockvar! name" but don't lock referenced items.
Make locking a blob work.
文件: runtime/doc/eval.txt, src/evalvars.c, src/eval.c,
src/testdir/test_const.vim
Patch 8.2.1474
问题: /usr/lib/udef/rules.d not recognized as udevrules.
解决方案: Adjust match pattern. (Haochen Tong, closes 36722)
文件: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
Patch 8.2.1475
问题: Vim9: can't use v:true for option flags.
解决方案: Add tv_get_bool_chk(). (closes #6725)
文件: src/typval.c, src/proto/typval.pro, src/channel.c
Patch 8.2.1476 (after 8.2.1474)
问题: Filetype test fails on MS-Windows.
解决方案: Remove "^" from pattern.
文件: runtime/autoload/dist/ft.vim
Patch 8.2.1477
问题: Vim9: error when using bufnr('%').
解决方案: Don't give an error for using a string argument. (closes #6723)
文件: src/evalbuffer.c, src/testdir/test_vim9_func.vim
Patch 8.2.1478
问题: Vim9: cannot use "true" for some popup options.
解决方案: Add dict_get_bool(). (closes #6725)
文件: src/dict.c, src/proto/dict.pro, src/popupwin.c
Patch 8.2.1479
问题: Vim9: error for list index uses wrong line number.
解决方案: Set source line number. (closes #6724) Add a way to assert the
line number of the error with assert_fails().
文件: runtime/doc/testing.txt, src/vim9execute.c, src/testing.c,
src/evalfunc.c, src/message.c, src/globals.h, src/testdir/vim9.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1480
问题: Vim9: skip expression in search() gives error.
解决方案: use tv_get_bool() eval_expr_to_bool(). (closes #6729)
文件: src/eval.c, src/typval.c, src/proto/typval.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.1481
问题: Vim9: line number reported with error may be wrong.
解决方案: Check line number in tests.
文件: src/testdir/test_vim9_expr.vim, src/testdir/vim9.vim,
src/vim9execute.c
Patch 8.2.1482
问题: Vim9: crash when using a nested lambda.
解决方案: Do not clear the growarray when not evaluating. Correct pointer
when getting the next line. (closes #6731)
文件: src/eval.c, src/scriptfile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1483
问题: Vim9: error for using special as number when returning "false"
from a popup filter.
解决方案: Use tv_get_bool(). (closes #6733)
文件: src/popupwin.c
Patch 8.2.1484
问题: Flaky failure in assert_fails().
解决方案: Only used fourth argument if there is a third argument.
文件: src/testing.c
Patch 8.2.1485
问题: Vim9: readdirex() expression doesn't accept bool.
解决方案: Accept both -1 and bool. (closes #6737)
文件: src/filepath.c, src/testdir/test_vim9_func.vim
Patch 8.2.1486
问题: Vim9: readdir() expression doesn't accept bool.
解决方案: Merge with code for readdirex(). (closes #6737)
文件: src/filepath.c, src/testdir/test_vim9_func.vim
Patch 8.2.1487
问题: Travis: installing snd-dummy is not always useful.
解决方案: Only install snd-dummy on amd64. (Ozaki Kiichi, closes #6738)
文件: .travis.yml, ci/load-snd-dummy.sh
Patch 8.2.1488
问题: Text does not scroll when inserting above first line.
解决方案: Adjust off-by-one error. (Ken Takata, closes #6739)
文件: src/drawscreen.c, src/testdir/test_display.vim,
src/testdir/dumps/Test_display_scroll_at_topline.dump
Patch 8.2.1489
问题: Vim9: error when setting an option with setbufvar().
解决方案: Do not get a number from a string value. (closes #6740)
文件: src/evalvars.c, src/testdir/test_vim9_func.vim
Patch 8.2.1490
问题: Vim9: using /= with float and number doesn't work.
解决方案: Better support assignment with operator. (closes #6742)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1491
问题: Vim9: crash when compiling heredoc lines start with comment.
解决方案: Skip over NULL pointers. Do not remove comment and empty lines
when fetching function lines. (closes #6743)
文件: src/vim9compile.c, src/scriptfile.c, src/proto/scriptfile.pro,
src/structs.h, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/ex_cmds.h, src/autocmd.c, src/proto/autocmd.pro,
src/ex_getln.c, src/proto/ex_getln.pro, src/userfunc.c,
src/proto/userfunc.pro, src/evalfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1492
问题: Build failures.
解决方案: Move typedef out of #ifdef. Adjust argument types. Discover
America.
文件: src/structs.h, src/ex_docmd.c
Patch 8.2.1493
问题: Not enough test coverage for the spell file handling.
解决方案: Add spell file tests. (Yegappan Lakshmanan, closes #6728)
文件: src/spellfile.c, src/testdir/test_spellfile.vim
Patch 8.2.1494
问题: Missing change to calling eval_getline().
解决方案: Change last argument.
文件: src/eval.c
Patch 8.2.1495
问题: "make clean" may delete too many files.
解决方案: Do not delete $APPDIR. (closes #6751)
文件: src/Makefile
Patch 8.2.1496
问题: Vim9: cannot use " #" in a mapping.
解决方案: Do not remove a comment with the EX_NOTRLCOM flag. (closes #6746)
文件: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1497
问题: CursorHold test is flaky. (Jakub Kądziołka)
解决方案: Use WaitForAssert() (closes #6754)
文件: src/testdir/test_autocmd.vim
Patch 8.2.1498
问题: On slow systems tests can be flaky.
解决方案: Use TermWait() instead of term-wait(). (Yegappan Lakshmanan,
closes #6756)
文件: src/testdir/test_digraph.vim, src/testdir/test_display.vim,
src/testdir/test_popupwin.vim, src/testdir/test_termcodes.vim,
src/testdir/test_terminal.vim, src/testdir/test_terminal3.vim,
src/testdir/test_writefile.vim
Patch 8.2.1499
问题: Vim9: error when using "$" with col().
解决方案: Reorder getting the column value. (closes #6744)
文件: src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.1500
问题: Vim9: error when using address without a command.
解决方案: Execute the range itself. (closes #6747)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1501
问题: Vim9: concatenating to constant reverses order.
解决方案: Generate constant before option, register and environment
variable. (closes #6757)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1502
问题: Vim9: can use += with a :let command at script level.
解决方案: Give an error.
文件: src/evalvars.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1503
问题: Vim9: error for an autocmd defined in a :def function in legacy
Vim script.
解决方案: Don't check the variable type. (closes #6758)
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.1504
问题: Vim9: white space checks are only done for a :def function.
解决方案: Also do checks at the script level. Adjust the name of a few
error messages.
文件: src/userfunc.c, src/errors.h, src/dict.c, src/list.c,
src/vim9compile.c, src/vim9script.c, src/vim9type.c,
src/evalvars.c, src/testdir/test_vim9_expr.vim,
src/testdir/vim9.vim
Patch 8.2.1505
问题: Not all file read and writecode is tested.
解决方案: Add a few tests. (Dominique Pellé, closes #6764)
文件: src/testdir/test_eval_stuff.vim, src/testdir/test_fnamemodify.vim,
src/testdir/test_functions.vim
Patch 8.2.1506
问题: Vim9: no error when using a number other than 0 or 1 as bool.
解决方案: Check the number is 0 or 1.
文件: src/errors.h, src/typval.c, src/testdir/test_vim9_func.vim
Patch 8.2.1507
问题: Using malloc() directly.
解决方案: Use ALLOC_ONE(). Remove superfluous typecast. (Hussam al-Homsi,
closes #6768)
文件: src/eval.c, src/memline.c, src/vimrun.c
Patch 8.2.1508
问题: Not all debugger commands covered by tests.
解决方案: Add tests for going up/down in the stack. (Ben Jackson,
closes #6765)
文件: src/testdir/test_debugger.vim
Patch 8.2.1509
问题: Vertical separator is cleared when dragging a popup window using a
multi-byte character for the border.
解决方案: Only clear the character before the window if it is using a
multi-byte character. (closes #6766)
文件: src/screen.c
Patch 8.2.1510
问题: Using "var" in a :def function may refer to a legacy Vim script
variable.
解决方案: Require using "s:" to refer to a legacy Vim script variable.
(closes #6771)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1511
问题: Putting a string in Visual block mode ignores multi-byte
characters.
解决方案: Adjust the column for Visual block mode. (closes #6767)
文件: src/register.c, src/testdir/test_visual.vim
Patch 8.2.1512
问题: Failure after ternary expression fails.
解决方案: Restore eval_flags. (Yasuhiro Matsumoto, closes #6776)
文件: src/eval.c, src/testdir/test_vimscript.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1513
问题: Cannot interrupt shell used for filename expansion. (Dominique
Pellé)
解决方案: Do set tmode in mch_delay(). (closes #6770)
文件: src/vim.h, src/os_unix.c, src/proto/os_unix.pro, src/term.c,
src/channel.c, src/if_cscope.c, src/os_amiga.c, src/ui.c,
src/proto/os_amiga.pro, src/os_win32.c, src/proto/os_win32.pro
Patch 8.2.1514
问题: Multibyte vertical separator is cleared when dragging a popup
window using a multi-byte character for the border.
解决方案: Only clear the character before the window if it is double width.
(closes #6766)
文件: src/screen.c
Patch 8.2.1515
问题: Vim9: can create s:var in legacy script but cannot unlet.
解决方案: Allow :unlet for legacy script var.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1516
问题: Vim9: error for :exe has wrong line number.
解决方案: Set line number before calling do_cmdline_cmd(). (closes #6774)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1517
问题: Cannot easily get the character under the cursor.
解决方案: Add the {chars} argument to strpart().
文件: runtime/doc/eval.txt, src/evalfunc.c,
src/testdir/test_functions.vim
Patch 8.2.1518
问题: Vim9: cannot assign to local option.
解决方案: Skip over "&l:" and "&g:". (closes #6749)
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/testdir/vim9.vim,
src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1519
问题: Vim9: Ex command default range is not set.
解决方案: When range is not given use default. (closes #6779)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.1520
问题: Vim9: CTRL-] used in :def function does not work.
解决方案: Omit count or prepend colon. (closes #6769)
文件: src/normal.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1521
问题: Reading past end of buffer when reading spellfile. (Yegappan
Lakshmanan)
解决方案: Store the byte length and check for it.
文件: src/spellfile.c, src/spell.h
Patch 8.2.1522
问题: Not enough test coverage for the spell file handling.
解决方案: Add spell file tests. (Yegappan Lakshmanan, closes #6763)
文件: src/testdir/test_spellfile.vim
Patch 8.2.1523
问题: Still not enough test coverage for the spell file handling.
解决方案: Add spell file tests. (Yegappan Lakshmanan, closes #6790)
文件: src/testdir/test_spellfile.vim
Patch 8.2.1524
问题: No longer get an error for string concatenation with float.
(Tsuyoshi Cho)
解决方案: Only convert float for Vim9 script. (closes #6787)
文件: src/eval.c, src/testdir/test_eval_stuff.vim
Patch 8.2.1525
问题: Messages from tests were not always displayed.
解决方案: Always show messages, the timing is always useful. (Ken Takata,
closes #6792)
文件: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
src/testdir/Makefile
Patch 8.2.1526
问题: Line in testdir Makefile got commented out. (Christian Brabandt)
解决方案: Revert.
文件: src/testdir/Makefile
Patch 8.2.1527
问题: Vim9: cannot use a function name as a function reference at script
level.
解决方案: Check if a name is a function name. (closes #6789)
文件: src/evalvars.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1528
问题: Vim9: :endif not found after "if false".
解决方案: When skipping still check for a following command. (closes #6797)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1529
问题: Vim9: :elseif may be compiled when not needed.
解决方案: Do evaluate the :elseif expression.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1530
问题: Vim9: test fails on MS-Windows.
解决方案: Skip Ex command inside "if false".
文件: src/vim9compile.c
Patch 8.2.1531
问题: Vim9: test still fails on MS-Windows.
解决方案: When skipping expect function to be NULL.
文件: src/vim9compile.c
Patch 8.2.1532
问题: Compiler warning for conversion of size_t to long.
解决方案: Add type cast.
文件: src/eval.c
Patch 8.2.1533
问题: Vim9: error when passing getreginfo() result to setreg().
解决方案: Use dict_get_bool() for "isunnamed". (closes #6784)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1534
问题: Vim9: type error for argument type is not at call position.
解决方案: Set the context and stack after checking the arguments.
(issue #6785)
文件: src/userfunc.c, src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1535
问题: It is not possible to specify cell widths of characters.
解决方案: Add setcellwidths().
文件: runtime/doc/eval.txt, runtime/doc/options.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/mbyte.c,
src/proto/mbyte.pro, src/errors.h, src/testdir/test_utf8.vim
Patch 8.2.1536
问题: Cannot get the class of a character; emoji widths are wrong in
some environments.
解决方案: Add charclass(). Update some emoji widths. Add script to check
emoji widths.
文件: Filelist, runtime/doc/eval.txt, runtime/doc/usr_41.txt,
src/evalfunc.c, src/mbyte.c, src/proto/mbyte.pro,
src/testdir/emoji_list.vim, src/testdir/test_functions.vim
Patch 8.2.1537
问题: Memory access error when using setcellwidths().
解决方案: Use array and pointers correctly.
文件: src/mbyte.c, src/errors.h, src/testdir/test_utf8.vim
Patch 8.2.1538
问题: Python: iteration over vim objects fails to keep reference.
解决方案: Keep a reference for the object. (Paul Ollis, closes #6803,
closes #6806)
文件: src/if_py_both.h, src/testdir/test_python3.vim
Patch 8.2.1539
问题: Using invalid script ID causes a crash.
解决方案: Check the script ID to be valid. (closes #6804)
文件: src/globals.h, src/evalvars.c, src/profiler.c, src/scriptfile.c,
src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1540
问题: The user cannot try out emoji character widths.
解决方案: Move the emoji script to the runtime/tools directory.
文件: Filelist, src/testdir/emoji_list.vim, runtime/tools/emoji_list.vim
Patch 8.2.1541
问题: Vim9: cannot find function reference for s:Func.
解决方案: Recognize <SNR> prefix. (closes #6805)
文件: src/userfunc.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1542
问题: Vim9: test with invalid SID does not work in the GUI.
解决方案: Skip the test in the GUI.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1543
问题: Vim9: test with invalid SID is skipped in the GUI.
解决方案: Read the CTRL-C that feedkeys() put in typeahead.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1544
问题: Cannot translate messages in a Vim script.
解决方案: Add gettext(). Try it out for a few messages in the options
window.
文件: Filelist, src/po/Makefile, src/po/README.txt, runtime/optwin.vim,
src/evalfunc.c, src/po/tojavascript.vim, src/po/fixfilenames.vim,
runtime/doc/eval.txt, runtime/doc/usr_41.txt
Patch 8.2.1545
问题: ch_logfile() is unclear about closing when forking.
解决方案: Adjust the log messages.
文件: src/channel.c, src/os_unix.c
Patch 8.2.1546
问题: Build rule for Vim.app is unused.
解决方案: Delete the related build rules.
文件: src/Makefile
Patch 8.2.1547
问题: Various comment problems.
解决方案: Update comments.
文件: src/arglist.c, src/map.c, src/mbyte.c, src/tag.c, src/undo.c,
src/testdir/README.txt, src/testdir/test_put.vim,
src/libvterm/README
Patch 8.2.1548
问题: Cannot move position of "%%" in message translations. (Emir Sarı)
解决方案: Improve the check script.
文件: src/po/check.vim
Patch 8.2.1549
问题: The "r" command fails for keys with modifiers if 'esckeys' is off
and modifyOtherKeys is used. (Lauri Tirkkonen)
解决方案: Temporarily disable bracketed paste and modifyOtherKeys if
'esckeys' is off. (closes #6809)
文件: src/normal.c
Patch 8.2.1550
问题: Vim9: bufname('%') gives an error.
解决方案: Only give an error for wrong argument type. (closes #6807)
文件: src/evalbuffer.c, src/testdir/test_vim9_func.vim
Patch 8.2.1551
问题: Vim9: error for argument type does not mention the number.
解决方案: Pass the argument number to where the error is given.
文件: src/vim9type.c, src/proto/vim9type.pro, src/vim9compile.c,
src/vim9execute.c, src/vim9script.c, src/eval.c,
src/testdir/test_vim9_func.vim
Patch 8.2.1552
问题: Warnings from asan with clang-11. (James McCoy)
解决方案: Avoid using a NULL pointer. (issue #6811)
文件: src/fold.c
Patch 8.2.1553 (after 8.2.1552)
问题: Crash in edit test.
解决方案: Avoid using invalid pointer.
文件: src/fold.c
Patch 8.2.1554
问题: Crash in normal test.
解决方案: Skip adjusting marks if there are no folds.
文件: src/fold.c
Patch 8.2.1555
问题: Not all tests are executed on Github Actions.
解决方案: Copy "src" to "src2" earlier. Recognize "src2" in a couple more
places. Add two tests to the list of flaky tests. (Ken Takata,
closes #6798)
文件: .github/workflows/ci-windows.yaml, src/testdir/runtest.vim,
src/testdir/test_python2.vim, src/testdir/test_python3.vim
Patch 8.2.1556
问题: Cursorline highlighting always overrules sign highlighting.
解决方案: Combine the highlighting, use the priority to decide how.
(closes #6812)
文件: runtime/doc/sign.txt, src/structs.h, src/drawline.c,
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim,
src/testdir/test_signs.vim,
src/testdir/dumps/Test_sign_cursor_5.dump,
src/testdir/dumps/Test_sign_cursor_6.dump
Patch 8.2.1557
问题: Crash in :vimgrep when started as "vim -n". (Raul Segura)
解决方案: Check mfp pointer. (Yegappan Lakshmanan, closes #6827)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1558
问题: Signs test fails.
解决方案: Add missing change to sign.c.
文件: src/sign.c
Patch 8.2.1559
问题: s390x tests work again.
解决方案: re-enable s390x tests. (James McCoy, closes #6829)
文件: .travis.yml
Patch 8.2.1560
问题: Using NULL pointers in some code. (James McCoy)
解决方案: Avoid adding to a NULL pointer. Use byte as unsigned.
文件: src/fold.c, src/eval.c, src/spellsuggest.c, src/spellfile.c,
src/vim9compile.c
Patch 8.2.1561
问题: Using NULL pointers in fold code.
解决方案: Avoid using a NULL pointer. (Dominique Pellé, closes #6831,
closes #6831)
文件: src/fold.c
Patch 8.2.1562
问题: Vim9: error when using "%" where a buffer is expected.
解决方案: Add tv_get_buf_from_arg(). (closes #6814)
文件: src/typval.c, src/proto/typval.pro, src/evalbuffer.c,
src/testdir/test_vim9_func.vim
Patch 8.2.1563
问题: Vim9: error when using '%" with setbufvar() or getbufvar().
解决方案: Use tv_get_buf_from_arg(). (closes #6816)
文件: src/evalvars.c, src/testdir/test_vim9_func.vim
Patch 8.2.1564
问题: A few remaining errors from ubsan.
解决方案: Avoid the warnings. (Dominique Pellé, closes #6837)
文件: src/spellfile.c, src/spellsuggest.c, src/viminfo.c
Patch 8.2.1565
问题: Spellfile test sometimes fails.
解决方案: Check running into the end of the file.
文件: src/spellfile.c
Patch 8.2.1566
问题: Not all Bazel files are recognized.
解决方案: Add *.bazel and *.BUILD. (closes #6836)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1567
问题: No example to use ubsan with clang.
解决方案: Add example commands. (Dominique Pellé, issue #6811)
文件: src/Makefile
Patch 8.2.1568
问题: prop_find() skips properties in the same line if "skipstart" is
used.
解决方案: Use "continue" instead of "break". (closes #6840)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.1569
问题: Vim9: fixes for functions not tested; failure in getchangelist().
解决方案: Add tests. (closes #6813, closes #6815, closes #6817)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1570
问题: Configure check for dirfd() does not work on HPUX. (Michael Osipov)
解决方案: Use AC_TRY_LINK instead of AC_TRY_COMPILE. (closes #6838)
文件: src/configure.ac, src/auto/configure, src/fileio.c, src/globals.h
Patch 8.2.1571
问题: Vim9: count() third argument cannot be "true".
解决方案: Use tv_get_bool_chk(). (closes #6818)
文件: src/typval.c, src/list.c, src/testdir/test_vim9_func.vim
Patch 8.2.1572
问题: Vim9: expand() does not take "true" as argument.
解决方案: Use tv_get_bool_chk(). (closes #6819)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1573
问题: Vim9: getreg() does not take "true" as argument.
解决方案: Use tv_get_bool_chk(). (closes #6820)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1574
问题: Vim9: glob() does not take "true" as argument.
解决方案: Use tv_get_bool_chk(). (closes #6821)
文件: src/filepath.c, src/testdir/test_vim9_func.vim
Patch 8.2.1575
问题: Vim9: globpath() does not take "true" as argument.
解决方案: Use tv_get_bool_chk(). (closes #6821)
文件: src/filepath.c, src/testdir/test_vim9_func.vim
Patch 8.2.1576
问题: Vim9: index() does not take "true" as argument.
解决方案: Use tv_get_bool_chk(). (closes #6823)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1577
问题: Vim9: hasmapto(), mapcheck() and maparg() do not take "true" as
argument.
解决方案: Use tv_get_bool(). (closes #6822, closes #6824)
文件: src/evalfunc.c, src/map.c, src/testdir/test_vim9_func.vim
Patch 8.2.1578
问题: Vim9: popup_clear() does not take "true" as argument.
解决方案: Use tv_get_bool(). (closes #6826)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.1579
问题: Reports from asan are not optimal.
解决方案: Use clang with ubsan. (James McCoy, closes #6811)
文件: .travis.yml
Patch 8.2.1580
问题: Wildmenu does not work properly.
解决方案: Do not call may_do_incsearch_highlighting() if completion is in
progress.
文件: src/ex_getln.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_1.dump,
src/testdir/dumps/Test_wildmenu_2.dump,
src/testdir/dumps/Test_wildmenu_3.dump,
src/testdir/dumps/Test_wildmenu_4.dump
Patch 8.2.1581
问题: Using line() for global popup window doesn't work.
解决方案: Set tabpage to "curtab". (closes #6847)
文件: src/evalwindow.c, src/testdir/test_popupwin.vim
Patch 8.2.1582
问题: The channel log does not show typed text.
解决方案: Add raw typed text to the log file.
文件: src/ui.c, src/os_win32.c
Patch 8.2.1583
问题: MS-Windows: cannot easily measure code coverage.
解决方案: Add the COVERAGE option. (Ken Takata, closes #6842)
文件: src/Make_cyg_ming.mak
Patch 8.2.1584
问题: Vim9: cannot use "true" for "skipstart" in prop_find().
解决方案: Use dict_get_bool() instead of tv_get_number(). (closes #6852)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.1585
问题: Messages in errors.h not translated, xgettext on MS-Windows not
fully supported.
解决方案: Add errors.h to list of input files. Update MS-Windows makefiles
to improve message translations. (Ken Takata, closes #6858)
文件: src/po/Make_cyg.mak, src/po/Make_ming.mak, src/po/Make_mvc.mak,
src/po/Makefile, src/po/README.txt, src/po/fixfilenames.vim
Patch 8.2.1586
问题: :resize command not fully tested.
解决方案: Add a couple of tests. (Dominique Pellé, closes #6857)
文件: src/testdir/test_window_cmd.vim
Patch 8.2.1587
问题: Loop for handling keys for the command line is too long.
解决方案: Move wild menu handling to separate functions. (Yegappan
Lakshmanan, closes #6856)
文件: src/cmdexpand.c, src/proto/cmdexpand.pro, src/ex_getln.c
Patch 8.2.1588
问题: Cannot read back the prompt of a prompt buffer.
解决方案: Add prompt_getprompt(). (Ben Jackson, closes #6851)
文件: runtime/doc/channel.txt, runtime/doc/eval.txt,
runtime/doc/usr_41.txt, src/channel.c, src/edit.c, src/evalfunc.c,
src/proto/channel.pro, src/proto/edit.pro,
src/testdir/test_prompt_buffer.vim
Patch 8.2.1589
问题: Term_start() options for size are overruled by 'termwinsize'.
(Sergey Vlasov)
解决方案: Set 'termwinsize' to the specified size.
文件: src/terminal.c, src/testdir/test_terminal2.vim,
src/testdir/term_util.vim
Patch 8.2.1590
问题: Vim9: bufnr() doesn't take "true" argument.
解决方案: use tv_get_bool_chk(). (closes #6863)
文件: src/evalbuffer.c, src/testdir/test_vim9_func.vim
Patch 8.2.1591
问题: Using winheight('.') in tests works but is wrong.
解决方案: Use winheight(0). (issue #6863)
文件: src/testdir/test_functions.vim, src/testdir/test_quickfix.vim
Patch 8.2.1592
问题: Vim9: passing "true" to char2nr() fails.
解决方案: Use tv_get_bool_chk(). (closes #6865)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1593
问题: Tests do not check the error number properly.
解决方案: Add a colon after the error number. (closes #6869)
文件: src/testdir/test_assert.vim, src/testdir/test_autocmd.vim,
src/testdir/test_backspace_opt.vim, src/testdir/test_channel.vim,
src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim,
src/testdir/test_const.vim, src/testdir/test_cscope.vim,
src/testdir/test_eval_stuff.vim, src/testdir/test_functions.vim,
src/testdir/test_global.vim, src/testdir/test_gui.vim,
src/testdir/test_hlsearch.vim, src/testdir/test_lambda.vim,
src/testdir/test_let.vim, src/testdir/test_listdict.vim,
src/testdir/test_move.vim, src/testdir/test_normal.vim,
src/testdir/test_popupwin.vim, src/testdir/test_put.vim,
src/testdir/test_quickfix.vim, src/testdir/test_rename.vim,
src/testdir/test_search.vim, src/testdir/test_signs.vim,
src/testdir/test_substitute.vim, src/testdir/test_syntax.vim,
src/testdir/test_tagfunc.vim, src/testdir/test_tagjump.vim,
src/testdir/test_taglist.vim, src/testdir/test_terminal.vim,
src/testdir/test_terminal2.vim, src/testdir/test_textprop.vim,
src/testdir/test_timers.vim, src/testdir/test_true_false.vim,
src/testdir/test_user_func.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_vimscript.vim,
src/testdir/test_winbar.vim, src/testdir/test_winbuf_close.vim,
src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim
Patch 8.2.1594
问题: Pull requests on github do not notify a maintainer.
解决方案: Add a CODEOWNERS file with a few initial entries.
文件: Filelist, .github/CODEOWNERS
Patch 8.2.1595
问题: Cannot easily see what Vim sends to the terminal.
解决方案: Write output to the channel log if it contains terminal control
sequences. Avoid warnings for tputs() argument.
文件: src/term.c, src/globals.h, src/edit.c, src/normal.c,
src/optionstr.c
Patch 8.2.1596
问题: Using win_screenpos('.') in tests works but is wrong.
解决方案: Use win_screenpos(0).
文件: src/testdir/test_terminal3.vim
Patch 8.2.1597
问题: The channel source file is too big.
解决方案: Move job related code to a new source file.
文件: Filelist, src/Makefile, src/Make_mvc.mak, src/Make_cyg_ming.mak,
src/channel.c, src/proto/channel.pro, src/job.c,
src/proto/job.pro, src/proto.h, src/edit.c, src/proto/edit.pro,
src/globals.h, src/configure.ac, src/auto/configure
Patch 8.2.1598
问题: Starting a hidden terminal resizes the current window.
解决方案: Do not resize the current window for a hidden terminal.
(closes #6872)
文件: src/terminal.c, src/testdir/test_terminal2.vim
Patch 8.2.1599
问题: Missing line end when skipping a long line with :cgetfile.
解决方案: Fix off-by-one error. (closes #6870)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1600
问题: Vim9: cannot use "true" with deepcopy().
解决方案: Use tv_get_bool_chk(). (closes #6867)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim,
src/testdir/test_listdict.vim
Patch 8.2.1601
问题: Vim9: cannot use "true" with garbagecollect().
解决方案: Use tv_get_bool(). (closes #6871)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1602
问题: Vim9: cannot use "true" with getbufinfo().
解决方案: Use dict_get_bool(). (closes #6873)
文件: src/evalbuffer.c, src/testdir/test_vim9_func.vim
Patch 8.2.1603
问题: Vim9: cannot use "true" with getchar().
解决方案: use tv_get_bool_chk(). (closes #6874)
文件: src/getchar.c, src/testdir/test_vim9_func.vim
Patch 8.2.1604
问题: Vim9: cannot use "true" with getcompletion().
解决方案: use tv_get_bool_chk(). (closes #6875)
文件: src/cmdexpand.c, src/testdir/test_vim9_func.vim
Patch 8.2.1605
问题: Default maintainer on github is wrong.
解决方案: Use Bram's account.
文件: .github/CODEOWNERS
Patch 8.2.1606
问题: Vim9: cannot use "true" with has().
解决方案: Use tv_get_bool(). (closes #6876)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1607
问题: Vim9: getchar() test fails on MS-Windows.
解决方案: First consume any available input.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1608
问题: Vim9: getchar() test fails with GUI.
解决方案: Avoid that getchar(0) gets stuck on K_IGNORE.
文件: src/getchar.c
Patch 8.2.1609
问题: Vim9: test fails when build without +channel.
解决方案: Add check for +channel. (closes #6879)
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.1610
问题: Vim9: cannot pass "true" to list2str() and str2list().
解决方案: Use tv_get_bool_chk(). (closes #6877)
文件: src/evalfunc.c, src/list.c, src/testdir/test_vim9_func.vim
Patch 8.2.1611
问题: Vim9: cannot pass "true" to nr2char().
解决方案: use tv_get_bool_chk(). (closes #6878)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1612
问题: Vim9: cannot pass "true" to prop_remove().
解决方案: Use dict_get_bool(). (closes #6853)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.1613
问题: Vim9: cannot pass "true" to prop_type_add().
解决方案: Use tv_get_bool(). (closes #6850)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.1614
问题: Vim9: cannot pass "true" to searchcount().
解决方案: Use tv_get_bool_chk(). (closes #6854)
文件: src/search.c, src/testdir/test_vim9_func.vim
Patch 8.2.1615
问题: Vim9: cannot pass "true" to searchdecl().
解决方案: use tv_get_bool_chk(). (closes #6881)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1616
问题: Vim9: cannot pass "true" to synID().
解决方案: Use tv_get_bool_chk(). (closes #6860)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1617
问题: Vim9: cannot pass "true" to win_splitmove().
解决方案: Use dict_get_bool(). (closes #6862) Alphabetize test functions.
文件: src/evalwindow.c, src/testdir/test_vim9_func.vim
Patch 8.2.1618
问题: Vim9: cannot pass "true" to setloclist().
解决方案: Use dict_get_bool(). (closes #6882)
文件: src/quickfix.c, src/testdir/test_vim9_func.vim
Patch 8.2.1619
问题: Vim9: cannot pass "true" to spellsuggest().
解决方案: Use tv_get_bool_chk(). (closes #6883)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1620
问题: searchcount() test fails.
解决方案: Restore default flag value.
文件: src/search.c
Patch 8.2.1621
问题: Crash when using submatch(0, 1) in substitute().
解决方案: Increment reference count. (closes #6887)
文件: src/regexp.c, src/testdir/test_substitute.vim
Patch 8.2.1622
问题: Loop to handle keys for the command line is too long.
解决方案: Move code to functions. (Yegappan Lakshmanan, closes #6880)
文件: src/ex_getln.c
Patch 8.2.1623
问题: Vim9: using :call where it is not needed.
解决方案: Remove :call. (closes #6892)
文件: src/testdir/test_maparg.vim, src/testdir/test_textprop.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1624
问题: Vim9: cannot pass "true" to split(), str2nr() and strchars().
解决方案: Use tv_get_bool_chk(). (closes #6884, closes #6885, closes #6886)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1625
问题: Compiler warning for use of fptr_T.
解决方案: Make the type less strict.
文件: src/regexp.c
Patch 8.2.1626
问题: Test for strchars() fails with different error number.
解决方案: Adjust the error number.
文件: src/testdir/test_utf8.vim
Patch 8.2.1627
问题: Vim9: cannot pass "true" to submatch(), term_gettty() and
term_start()
解决方案: Use tv_get_bool_chk(). (closes #6888, closes #6890, closes #6889)
文件: src/evalfunc.c, src/terminal.c, src/job.c,
src/testdir/test_vim9_func.vim
Patch 8.2.1628
问题: Vim9: cannot pass "true" to timer_paused().
解决方案: Use tv_get_bool(). (closes #6891)
文件: src/time.c, src/testdir/test_vim9_func.vim
Patch 8.2.1629
问题: Test fails without terminal feature.
解决方案: Check for terminal feature.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1630
问题: Terminal test fails.
解决方案: Correct argument to term_start(). Correct error number.
文件: src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim
Patch 8.2.1631
问题: test_fails() does not check the context of the line number.
解决方案: Use another argument to specify the context of the line number.
文件: runtime/doc/testing.txt, runtime/doc/eval.txt,
src/testdir/test_vim9_func.vim, src/testing.c, src/globals.h,
src/evalfunc.c, src/message.c
Patch 8.2.1632
问题: Not checking the context of test_fails().
解决方案: Add the line number and context arguments. Give error if
assert_fails() argument types are wrong.
文件: src/testing.c, src/errors.h, src/testdir/test_assert.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.1633
问题: Some error messages are internal but do not use iemsg().
解决方案: Use iemsg(). (Dominique Pellé, closes #6894)
文件: src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c
Patch 8.2.1634
问题: Loop to handle keys for the command line is too long.
解决方案: Move a few more parts to separate functions. (Yegappan Lakshmanan,
closes #6895)
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.1635
问题: No digraph for 0x2022 BULLET.
解决方案: Use "oo". (Hans Ginzel, closes #6904)
文件: src/digraph.c, runtime/doc/digraph.txt
Patch 8.2.1636
问题: Get stuck if a popup filter causes an error.
解决方案: Check whether the function can be called and does not cause an
error. (closes #6902)
文件: src/structs.h, src/popupwin.c, src/testdir/test_popupwin.vim
src/testdir/dumps/Test_popupwin_wrong_name.dump,
src/testdir/dumps/Test_popupwin_three_errors_1.dump,
src/testdir/dumps/Test_popupwin_three_errors_2.dump
Patch 8.2.1637
问题: Vim9: :put ={expr} does not work inside :def function.
解决方案: Add ISN_PUT. (closes #6397)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/register.c,
src/proto/register.pro, src/edit.c, src/ex_docmd.c, src/mouse.c,
src/normal.c, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1638
问题: Leaking memory when popup filter function can't be called.
解决方案: Don't return too soon.
文件: src/popupwin.c
Patch 8.2.1639
问题: Options window cannot be translated.
解决方案: Get the translation for "local to" texts once and use them in many
places. Fix that 'whichwrap' is not a local option. (issue #6800)
文件: runtime/optwin.vim
Patch 8.2.1640
问题: Amiga: missing header for getgrgid().
解决方案: Add the grp.h header. (Ola Söder, closes #6906)
文件: src/os_amiga.h
Patch 8.2.1641
问题: Vim9: cannot use 0 or 1 where a bool is expected.
解决方案: Allow using 0 and 1 for a bool type. (closes #6903)
文件: src/vim9compile.c, src/vim9type.c, src/proto/vim9type.pro,
src/structs.h, src/testdir/test_vim9_script.vim
Patch 8.2.1642
问题: Options test fails.
解决方案: Correct call to OptionG().
文件: runtime/optwin.vim
Patch 8.2.1643
问题: Vim9: :defcompile compiles dead functions.
解决方案: Skip over dead functions.
文件: src/userfunc.c
Patch 8.2.1644
问题: Vim9: cannot assign 1 and 0 to bool at script level.
解决方案: Add the TTFLAG_BOOL_OK flag to the type. Fix name of test
function.
文件: src/vim9type.c, src/testdir/test_vim9_script.vim,
src/testdir/vim9.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.1645
问题: GTK3: icons become broken images when resized.
解决方案: Use gtk_image_new_from_icon_name(). (closes #6916)
Fix compiler warnings.
文件: src/gui_gtk_x11.c
Patch 8.2.1646
问题: Amiga: Unnecessary #include.
解决方案: Remove the #include. (Ola Söder, closes #6908)
文件: src/version.c
Patch 8.2.1647
问题: Vim9: result of expression with && and || cannot be assigned to a
bool variable.
解决方案: Add the TTFLAG_BOOL_OK flag and convert the value if needed.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1648
问题: Amiga: no common build file for Amiga (-like) systems.
解决方案: Turn Make_morph.mak into Make_ami.mak. (Ola Söder, closes #6805)
文件: Filelist, src/Make_ami.mak, src/Make_morph.mak, src/INSTALLami.txt
Patch 8.2.1649
问题: GTK3: using old file chooser.
解决方案: Use native file chooser on GTK 3.20 and above. (Yogeshwar
Velingker, closes #6909)
文件: src/gui_gtk.c
Patch 8.2.1650
问题: Vim9: result of && and || expression cannot be assigned to a bool
at the script level.
解决方案: Add the VAR_BOOL_OK flag. Convert to bool when needed.
文件: src/structs.h, src/vim9type.c, src/proto/vim9type.pro,
src/vim9script.c, src/evalvars.c, src/eval.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1651
问题: Spellfile code not completely tested.
解决方案: Add a few more test cases. (Yegappan Lakshmanan, closes #6918)
文件: src/testdir/test_spellfile.vim
Patch 8.2.1652
问题: Cannot translate lines in the options window.
解决方案: Use the AddOption() function to split descriptions where indicated
by a line break. (issue #6800)
文件: runtime/optwin.vim
Patch 8.2.1653
问题: Expand('<stack>') does not include the final line number.
解决方案: Add the line number. (closes #6927)
文件: src/vim.h, src/scriptfile.c, src/proto/scriptfile.pro,
src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/message.c,
src/testing.c, src/testdir/test_expand_func.vim
Patch 8.2.1654
问题: When job writes to hidden buffer current window has display
errors. (Johnny McArthur)
解决方案: Use aucmd_prepbuf() instead of switch_to_win_for_buf().
(closes #6925)
文件: src/channel.c
Patch 8.2.1655
问题: Cannot build with Strawberry Perl 5.32.0.
解决方案: Use Perl_sv_2pvbyte_flags. (closes #6921)
文件: src/if_perl.xs
Patch 8.2.1656
问题: Vim9: callstack wrong if :def function calls :def function.
解决方案: Set the line number before calling. (closes #6914)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1657
问题: Vim9: no proper error for nested ":def!".
解决方案: Check for "!". (closes #6920)
文件: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1658
问题: Expand('<stack>') has trailing "..".
解决方案: Remove the "..". (closes #6927)
文件: src/scriptfile.c, src/testdir/test_expand_func.vim
Patch 8.2.1659
问题: Spellfile code not completely tested.
解决方案: Add a few more test cases. (Yegappan Lakshmanan, closes #6929)
文件: src/testdir/test_spell.vim, src/testdir/test_spellfile.vim
Patch 8.2.1660
问题: Assert functions require passing expected result as the first
argument, which isn't obvious.
解决方案: Use a method, as in "runtest()->assert_equal(expected)".
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1661
问题: Cannot connect to 127.0.0.1 for host with only IPv6 addresses.
解决方案: pass AI_V4MAPPED flag to getaddrinfo. (Filipe Brandenburger,
closes #6931)
文件: src/channel.c
Patch 8.2.1662
问题: :mksession does not restore shared terminal buffer properly.
解决方案: Keep a hashtab with terminal buffers. (Rob Pilling, closes #6930)
文件: src/hashtab.c, src/proto/terminal.pro, src/session.c,
src/terminal.c, src/testdir/test_mksession.vim
Patch 8.2.1663
问题: Options window entries cannot be translated.
解决方案: Use AddOption() for all explanations. (closes #6800)
文件: runtime/optwin.vim
Patch 8.2.1664
问题: Memory leak when using :mkview with a terminal buffer.
解决方案: Don't use a hastab for :mkview. (Rob Pilling, closes #6935)
文件: src/session.c, src/terminal.c, src/testdir/test_mksession.vim
Patch 8.2.1665
问题: Cannot do fuzzy string matching.
解决方案: Add matchfuzzy(). (Yegappan Lakshmanan, closes #6932)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/proto/search.pro, src/search.c, src/testdir/test_functions.vim
Patch 8.2.1666
问题: The initial value of 'backupskip' can have duplicate items.
解决方案: Remove duplicates, like when it is set later. (Tom Ryder,
closes #6940)
文件: src/option.c, src/testdir/test_options.vim
Patch 8.2.1667
问题: Local function name cannot shadow a global function name.
解决方案: Ignore global functions when checking a script-local or scoped
function name. (closes #6926)
文件: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.1668
问题: Vim9: not accepting 0 or 1 as bool when type is any.
解决方案: Convert the type with the CHECKTYPE instruction. (closes #6913)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1669
问题: Vim9: memory leak when storing a value fails.
解决方案: Free the value when not storing it.
文件: src/evalvars.c
Patch 8.2.1670
问题: A couple of gcc compiler warnings.
解决方案: Initialize local variables. (Dominique Pellé, closes #6944)
文件: src/memline.c, src/option.c
Patch 8.2.1671
问题: Vim9: stray error for missing white space.
解决方案: Do not skip over white space after member. (closes #6917)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1672
问题: v_lock is used when it is not initialized. (Yegappan Lakshmanan)
解决方案: Initialize the typval in eval1().
文件: src/eval.c
Patch 8.2.1673
问题: complete_info() selected index has an invalid value. (Ben Jackson)
解决方案: Set the index when there is only one match. (closes #6945)
Add test for complete_info().
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.1674
问题: Vim9: internal error when using variable that was not set.
解决方案: Give a meaningful error. (closes #6937)
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.1675
问题: MinGW: testdir makefile deletes non-existing file.
解决方案: Use another way to delete the output file if it already exists.
(Michael Soyka)
文件: src/testdir/Make_ming.mak
Patch 8.2.1676
问题: Compiler warnings for function typecast.
解决方案: Add an intermediate cast to "void *".
文件: src/os_unix.c
Patch 8.2.1677
问题: Memory access errors when calling setloclist() in an autocommand.
解决方案: Give an error if the list was changed unexpectedly. (closes #6946)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1678
问题: Crash when using ":set" after ":ownsyntax". (Dhiraj Mishra)
解决方案: Make sure 'spelloptions' is not NULL. (closes #6950)
文件: src/syntax.c, src/testdir/test_syntax.vim
Patch 8.2.1679
问题: Vim9: ":*" is not recognized as a range.
解决方案: Move recognizing "*" into skip_range(). (closes #6938)
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/cmdexpand.c,
src/ex_getln.c, src/userfunc.c, src/vim9compile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.1680
问题: Vim9: line number for compare error is wrong.
解决方案: Set SOURCING_LNUM. (closes #6936)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1681
问题: Vim9: unnecessary :call commands in tests.
解决方案: Remove the commands. (issue #6936)
文件: src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.1682
问题: Vim9: const works in an unexpected way.
解决方案: ":const" only disallows changing the variable, not the value.
Make "list[0] = 9" work at the script level.
文件: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.1683
问题: Vim9: assignment test fails.
解决方案: Include changes to find Ex command.
文件: src/ex_docmd.c
Patch 8.2.1684
问题: "gF" does not use line number after file in Visual mode.
解决方案: Look for ":123" after the Visual area. (closes #6952)
文件: src/findfile.c, src/testdir/test_gf.vim
Patch 8.2.1685
问题: Vim9: cannot declare a constant value.
解决方案: Introduce ":const!".
文件: runtime/doc/vim9.txt, src/ex_cmds.h, src/vim9compile.c,
src/vim9.h, src/vim9execute.c, src/evalvars.c,
src/proto/evalvars.pro, src/errors.h, src/vim.h, src/eval.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1686
问题: Vim9: "const!" not sufficiently tested.
解决方案: Add a few more test cases. Fix type checking.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1687
问题: Vim9: out of bounds error.
解决方案: Check that cmdidx is not negative.
文件: src/vim9compile.c
Patch 8.2.1688
问题: Increment/decrement removes text property.
解决方案: Insert the new number before deleting the old one. (closes #6962)
文件: src/ops.c, src/testdir/test_textprop.vim
Patch 8.2.1689
问题: 'colorcolumn' doesn't show in indent.
解决方案: Also draw the column when draw_state is WL_BRI or WL_SBR.
(Alexey Demin, closes #6948, closes #6619)
文件: src/drawline.c, src/testdir/dumps/Test_colorcolumn_2.dump,
src/testdir/dumps/Test_colorcolumn_3.dump,
src/testdir/test_highlight.vim
Patch 8.2.1690
问题: Text properties not adjusted for "I" in Visual block mode.
解决方案: Call inserted_bytes(). (closes #6961)
文件: src/ops.c, src/change.c, src/proto/change.pro,
src/testdir/test_textprop.vim
Patch 8.2.1691
问题: Vim9: list<any> is not accepted where list<number> is expected.
解决方案: Add functions to allocate and free a type_T, use it in
ISN_CHECKTYPE. (closes #6959)
文件: src/vim9.h, src/globals.h, src/vim9compile.c, src/vim9execute.c,
src/vim9type.c, src/proto/vim9type.pro, src/errors.h,
src/evalfunc.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1692
问题: Build fails because TTFLAG_STATIC is missing.
解决方案: Include missing change.
文件: src/structs.h
Patch 8.2.1693
问题: "hi def" does not work for cleared highlight.
解决方案: Check the "sg_cleared" flag. (Maxim Kim, closes #6956,
closes #4405)
文件: src/highlight.c, src/testdir/test_highlight.vim
Patch 8.2.1694
问题: Compiler warning for loss if data.
解决方案: Add typecast.
文件: src/ops.c
Patch 8.2.1695
问题: Vim9: crash when using varargs type "any".
解决方案: Check if uf_va_type is &t_any. (closes #6957)
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.1696
问题: Unused (duplicate) macros.
解决方案: Remove the macros.
文件: src/spell.c
Patch 8.2.1697
问题: Inconsistent capitalization of error messages.
解决方案: Always start with a capital.
文件: src/errors.h, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim,
src/testdir/test_assert.vim
Patch 8.2.1698
问题: Cannot lock a variable in legacy Vim script like in Vim9.
解决方案: Make ":lockvar 0" work.
文件: runtime/doc/eval.txt, src/evalvars.c, src/proto/evalvars.pro,
src/dict.c, src/eval.c, src/list.c, src/typval.c, src/userfunc.c,
src/testdir/test_const.vim, src/testdir/test_listdict.vim
Patch 8.2.1699
问题: Build failure due to missing error message.
解决方案: Add error message.
文件: src/errors.h
Patch 8.2.1700
问题: Vim9: try/catch causes wrong value to be returned.
解决方案: Reset tcd_return. (closes #6964)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1701
问题: Vim9: sort("i") does not work.
解决方案: Don't try getting a number for a string argument. (closes #6958)
文件: src/list.c, src/testdir/test_vim9_func.vim
Patch 8.2.1702
问题: Crash when using undo after deleting folded lines.
解决方案: Check for NULL pointer. (closes #6968)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.1703
问题: ":highlight clear" does not restore default link.
解决方案: Remember the default link and restore it. (Antony Scriven,
closes #6970, closes #4405)
文件: runtime/doc/syntax.txt, src/highlight.c,
src/testdir/test_highlight.vim
Patch 8.2.1704
问题: Vim9: crash in for loop when autoload script has an error.
解决方案: Reset suppress_errthrow. Check for NULL list. (closes #6967)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.1705
问题: "verbose hi Name" reports incorrect info after ":hi clear".
解决方案: Store the script context. (Antony Scriven, closes #6975)
文件: src/highlight.c, src/testdir/test_highlight.vim
Patch 8.2.1706
问题: Vim9: crash after running into the "Multiple closures" error.
解决方案: When a function fails still update any closures. (closes #6973)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1707
问题: Small inconsistency in highlight test.
解决方案: Use one argument for :execute. (Antony Scriven, #6975)
文件: src/testdir/test_highlight.vim
Patch 8.2.1708
问题: Vim9: error message for function has unprintable characters.
解决方案: use printable_func_name(). (closes #6965)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1709
问题: Vim9: memory leak when using multiple closures.
解决方案: Free the partial.
文件: src/vim9execute.c
Patch 8.2.1710
问题: Vim9: list of list type can be wrong.
解决方案: Use VAR_UNKNOWN for empty list. Recognize VAR_UNKNOWN when
looking for a common type. (closes #6979)
文件: src/vim9type.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1711
问题: Vim9: leaking memory when using partial.
解决方案: Do delete the function even when it was compiled.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
src/vim9execute.c
Patch 8.2.1712
问题: Vim9: leaking memory when calling a lambda.
解决方案: Decrement function reference from ISN_DCALL.
文件: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro
Patch 8.2.1713
问题: Motif GUI: crash when setting menu colors. (Andrzej Bylicki)
解决方案: Add {} to make "n" incremented correctly. (closes #6989,
closes #5948)
文件: src/gui_motif.c
Patch 8.2.1714
问题: Text properties corrupted with substitute command. (Filipe
Brandenburger)
解决方案: Get the changed line again after using u_savesub(). (closes #6984)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.1715
问题: Motif GUI: commented out code missed {}.
解决方案: Add {} and reenable the code. (similar to #6989)
文件: src/gui_motif.c
Patch 8.2.1716
问题: Options window has duplicate translations.
解决方案: Make one entry for "global or local to buffer". Fix wrong text.
(closes #6983)
文件: runtime/optwin.vim
Patch 8.2.1717
问题: MS-Windows installer doesn't have Russian translations.
解决方案: Add Russian translations. (closes #6985)
文件: nsis/gvim.nsi, nsis/lang/russian.nsi
Patch 8.2.1718
问题: Vim9: :def function disallows "firstline" and "lastline" argument
names for no good reason.
解决方案: Don't check the arguments for a :def function. (closes #6986)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1719
问题: Vim9: no error if comma is missing in between arguments.
解决方案: Give an error message.
文件: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1720
问题: Vim9: memory leak with heredoc that isn't executed. (Dominique
Pellé)
解决方案: Don't clear the list items. (closes #6991)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1721
问题: MS-Windows installer doesn't work.
解决方案: Write "Russian" in ASCII. (closes #6995, see #6985).
文件: nsis/lang/russian.nsi
Patch 8.2.1722
问题: Vim9: cannot assign a lambda to a variable of type function.
解决方案: Allow for assigning a partial to a variable of type function.
(Naruhiko Nishino, closes #6996)
文件: src/vim9type.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1723
问题: Vim9: Variable argument name cannot start with underscore.
解决方案: Use eval_isnamec1(). (closes #6988)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1724
问题: Vim9: assignment tests spread out.
解决方案: Create new test file for assignment tests.
文件: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim,
src/testdir/Make_all.mak
Patch 8.2.1725
问题: Not all Pascal files are recognized.
解决方案: Add filetype patterns. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1726
问题: Fuzzy matching only works on strings.
解决方案: Support passing a dict. Add matchfuzzypos() to also get the match
positions. (Yegappan Lakshmanan, closes #6947)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/proto/search.pro, src/search.c, src/testdir/Make_all.mak,
src/testdir/test_functions.vim, src/testdir/test_matchfuzzy.vim
Patch 8.2.1727
问题: A popup created with "cursorline" will ignore "firstline".
解决方案: When both "cursorline" and "firstline" are present put the cursor
on "firstline". (closes #7000) Add the "winid" argument to
getcurpos().
文件: runtime/doc/eval.txt, src/evalfunc.c, src/popupwin.c,
src/evalwindow.c, src/testdir/test_popupwin.vim,
src/testdir/test_functions.vim
Patch 8.2.1728
问题: Compiler warning for using uninitialized variable. (John Marriott)
解决方案: Initialize "neighbor".
文件: src/search.c
Patch 8.2.1729
问题: Endless loop when ":normal" feeds popup window filter.
解决方案: Add the ex_normal_busy_done flag.
文件: src/globals.h, src/getchar.c, src/evalfunc.c, src/ex_docmd.c,
src/menu.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_normal_cmd.dump
Patch 8.2.1730
问题: Vim9: cannot use member of unknown type.
解决方案: When type is unknown use "any". (closes #6997)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1731
问题: Vim9: cannot use += to append to empty NULL list.
解决方案: Copy the list instead of extending it. (closes #6998)
文件: src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1732
问题: Stuck when win_execute() for a popup causes an error.
解决方案: Disable the filter callback on error. (issue #6999)
文件: src/popupwin.c, src/testdir/term_util.vim,
src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_win_execute.dump
Patch 8.2.1733
问题: Vim9: memory leaks when using nested function.
解决方案: Free function when compilation fails.
文件: src/vim9compile.c
Patch 8.2.1734
问题: Vim9: cannot use a funcref for a closure twice.
解决方案: Instead of putting the funcref on the stack use a growarray on the
execution context.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1735
问题: Github actions appear to timeout too soon.
解决方案: use "timeout" instead of "ping".
文件: .github/workflows/ci-windows.yaml
Patch 8.2.1736
问题: Failure to compile a pattern not tested much.
解决方案: Add tests where a pattern fails to compile. (Yegappan Lakshmanan,
closes #7004)
文件: src/testdir/gen_opt_test.vim, src/testdir/test_arglist.vim,
src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim,
src/testdir/test_checkpath.vim, src/testdir/test_cmdline.vim,
src/testdir/test_debugger.vim, src/testdir/test_functions.vim,
src/testdir/test_history.vim, src/testdir/test_listdict.vim,
src/testdir/test_options.vim, src/testdir/test_search_stat.vim,
src/testdir/test_sort.vim, src/testdir/test_substitute.vim,
src/testdir/test_syntax.vim, src/testdir/test_tagjump.vim,
src/testdir/test_user_func.vim
Patch 8.2.1737
问题: Cursor line highlight in popup window is not always updated.
解决方案: Check if the cursor has moved. (closes #7010)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
src/testdir/dumps/Test_popupwin_win_execute_cursorline.dump
Patch 8.2.1738
问题: Mac: str2float() recognizes comma instead of decimal point.
解决方案: Set LC_NUMERIC to "C". (closes #7003)
文件: src/os_mac_conv.c
Patch 8.2.1739
问题: Vim9: crash when compiling a manually defined function. (Antony
Scriven)
解决方案: Check that the script ID is positive. (closes #7012)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.1740
问题: Test fails without the terminal feature.
解决方案: Skip test if the terminal feature is not available.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1741
问题: pathshorten() only supports using one character.
解决方案: Add an argument to control the length. (closes #7006)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/filepath.c,
src/proto/filepath.pro, src/testdir/test_functions.vim
Patch 8.2.1742
问题: Test still fails without the terminal feature.
解决方案: Put check for terminal feature in separate function.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.1743
问题: Cannot build without the eval feature.
解决方案: Move shorten_dir outside of #ifdef.
文件: src/filepath.c
Patch 8.2.1744
问题: Vim9: using ":const!" is weird.
解决方案: Use "var" - "final" - "const" like Dart. "let" still works for
now.
文件: runtime/doc/vim9.txt, src/ex_cmds.h, src/errors.h, src/evalvars.c,
src/proto/evalvars.pro, src/cmdexpand.c, src/eval.c,
src/ex_docmd.c, src/vim9compile.c, src/vim9execute.c,
src/vim9script.c, src/vim.h, src/ex_cmdidxs.h,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_script.vim
Patch 8.2.1745
问题: Tiny version doesn't build.
解决方案: Add dummy ex_var() function.
文件: src/ex_docmd.c
Patch 8.2.1746
问题: Vim9: Cannot use "fina" for "finally". (Naruhiko Nishino)
解决方案: Specifically check for "fina". (closes #7020)
文件: src/ex_docmd.c, src/testdir/test_trycatch.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1747
问题: Result of expand() unexpectedly depends on 'completeslash'.
解决方案: Temporarily reset 'completeslash'. (Yasuhiro Matsumoto,
closes #7021)
文件: src/evalfunc.c, src/testdir/test_ins_complete.vim
Patch 8.2.1748
问题: Closing split window in other tab may cause a crash.
解决方案: Set tp_curwin properly. (Rob Pilling, closes #7018)
文件: src/window.c, src/testdir/test_winbuf_close.vim
Patch 8.2.1749
问题: Vim9: crash when closure fails in nested function.
解决方案: Handle function returns before dereferencing remaining closures.
(closes #7008)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1750
问题: Setting firstline with popup_setoptions() fails if cursorline is
set.
解决方案: Use apply_options(). Update the popup before applying "zz".
(closes #7010)
文件: src/popupwin.c, src/proto/popupwin.pro, src/move.c,
src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_win_execute_cursorline.dump,
src/testdir/dumps/Test_popupwin_set_firstline_1.dump,
src/testdir/dumps/Test_popupwin_set_firstline_2.dump
Patch 8.2.1751
问题: Using 2 where bool is expected may throw an error.
解决方案: Make this backwards compatible.
文件: src/typval.c, src/evalfunc.c, src/testdir/test_search.vim,
src/testdir/test_terminal2.vim
Patch 8.2.1752
问题: GTK GUI: cannot map alt-? with <A-?>. (Ingo Karkat)
解决方案: Adjust the characters for which the shift modifier is removed.
(closes #7016) Make Motif and Win32 use the same function as GTK.
文件: src/misc2.c, src/gui_x11.c, src/gui_w32.c,
src/testdir/test_termcodes.vim
Patch 8.2.1753
问题: Vim9: crash when using import at script level.
解决方案: Give a "not implemented yet" error. (closes #7026)
文件: src/evalvars.c
Patch 8.2.1754
问题: Completion with spell checking not tested.
解决方案: Add a test case. (Dominique Pellé, closes #7024)
文件: src/testdir/test_spell.vim
Patch 8.2.1755
问题: Vim9: crash when using invalid heredoc marker. (Dhiraj Mishra)
解决方案: Check for NULL list. (closes #7027) Fix comment character.
文件: src/vim9compile.c, src/evalvars.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.1756
问题: Vim9: :let will soon be disallowed.
解决方案: Add v:disallow_let temporarily. Fix tests.
文件: src/vim.h, src/errors.h, src/evalvars.c, src/vim9compile.c,
src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.1757
问题: Mac: default locale is lacking the encoding.
解决方案: Add ".UTF-8 to the locale. (Yee Cheng Chin, closes #7022)
文件: src/os_mac_conv.c, src/testdir/test_environ.vim
Patch 8.2.1758
问题: Vim9: type of unmaterialized list is wrong.
解决方案: Use list<number>.
文件: src/vim9type.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1759
问题: Vim9: Some tests are still using :let.
解决方案: Change more declarations to use :var.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.1760
问题: Vim9: crash when end marker is missing. (Dhiraj Mishra)
解决方案: Check for end of function lines. (closes #7031)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1761
问题: Vim9: Some tests are still using :let.
解决方案: Change more declarations to use :var.
文件: src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1762
问题: When a timer uses :stopinsert Insert mode completion isn't
stopped. (Stanley Chan)
解决方案: Call ins_compl_prep(ESC).
文件: src/edit.c, src/testdir/test_ins_complete.vim,
src/testdir/dumps/Test_pum_stopped_by_timer.dump
Patch 8.2.1763
问题: Vim9: cannot use "true" for popup window scrollbar option.
解决方案: use dict_get_bool(). (closes #7029)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.1764
问题: Vim9: no error when assigning to script var with wrong type.
解决方案: Fix off-by-one error. (closes #7028)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1765
问题: Vim9: some tests use "var var".
解决方案: Use "var name". (closes #7032)
文件: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.1766
问题: Vim9: Some tests are still using :let.
解决方案: Change the last few declarations to use :var.
文件: src/testdir/runtest.vim, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_maparg.vim,
src/testdir/test_popupwin.vim, src/testdir/test_textprop.vim
Patch 8.2.1767
问题: Vim9: test fails with python support.
解决方案: Use "let" in legacy function.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1768
问题: Cannot use the help menu from a terminal window.
解决方案: Add ":tlnoremenu" commands. (Yee Cheng Chin, closes #7023)
文件: runtime/menu.vim, src/testdir/test_gui.vim
Patch 8.2.1769
问题: A popup filter interferes with using :normal to move the cursor in
a popup.
解决方案: Do not invoke the filter when ex_normal_busy is set.
文件: runtime/doc/popup.txt, src/getchar.c, src/evalfunc.c,
src/ex_docmd.c, src/menu.c, src/globals.h,
src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_normal_cmd.dump
Patch 8.2.1770
问题: Invalid memory use when using SpellFileMissing autocmd.
解决方案: Add test case. (Dominique Pellé, closes #7036) Fix using a window
that was closed.
文件: src/spell.c, src/testdir/test_spell.vim
Patch 8.2.1771
问题: synIDattr() cannot get the value of ctermul.
解决方案: Add the "ul" value for "what". (closes #7037)
文件: runtime/doc/eval.txt, src/highlight.c, src/evalfunc.c,
src/testdir/test_highlight.vim
Patch 8.2.1772
问题: Cannot use CTRL-W<Down> to move out of a terminal window.
解决方案: Use special_to_buf() instead of mb_char2bytes(). (closes #7045)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.1773
问题: Crash when calling mapset() with a list as first argument.
解决方案: Check for NULL. (closes #7040)
文件: src/map.c, src/testdir/test_maparg.vim
Patch 8.2.1774
问题: GTK: hang when forced to exit.
解决方案: Do not clean up "mainwin" when really_exiting is set.
(Zdenek Dohnal, closes #7042)
文件: src/gui_gtk_x11.c
Patch 8.2.1775
问题: MS-Windows: adding a long quickfix list is slow.
解决方案: Shorten the buffer name only for the first entry. (Yegappan
Lakshmanan, closes #7039, closes #7033)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1776
问题: Filetype.vim may be loaded twice.
解决方案: Do "syntax on" after "filetype on". (Adam Stankiewicz,
closes #7049)
文件: runtime/defaults.vim
Patch 8.2.1777
问题: Vim9: some assignment tests in the wrong file.
解决方案: Move assignment tests to test_vim9_assign.
文件: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_script.vim
Patch 8.2.1778
问题: Vim9: returning from a partial call clears outer context, causing
a crash.
解决方案: Put the outer context in the stack frame. (closes #7044)
文件: src/vim9execute.c, src/vim9.h, src/testdir/test_vim9_func.vim
Patch 8.2.1779
问题: Some debian changelog files are not recognized.
解决方案: Add */debian/changelog. (Jason Franklin)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1780
问题: Statusline not updated when splitting windows.
解决方案: Call status_redraw_all(). (Jason Franklin, closes #5496)
文件: src/window.c, src/testdir/test_statusline.vim
Patch 8.2.1781
问题: Writing to prompt buffer interferes with insert mode.
解决方案: Use win_enter() instead of just setting "curwin". (Ben Jackson,
closes #7035)
文件: src/autocmd.c, src/testdir/test_prompt_buffer.vim
Patch 8.2.1782
问题: Vim9: cannot pass boolean to mapset().
解决方案: Use get_tv_bool(). (closes #7041)
文件: src/map.c, src/testdir/test_vim9_func.vim
Patch 8.2.1783 (after 8.2.1781)
问题: Try-catch test fails.
解决方案: Don't call win_enter(), only call entering_window().
文件: src/autocmd.c, src/window.c, src/proto/window.pro,
src/testdir/runtest.vim
Patch 8.2.1784
问题: commits are not scanned for security problems
解决方案: Enable Github code scanning. (Christian Brabandt, closes #7057)
文件: .github/workflows/codeql-analysis.yml
Patch 8.2.1785
问题: Compiler warning for strcpy() out of bounds. (Christian Brabandt)
解决方案: use memmove() instead.
文件: src/dict.c
Patch 8.2.1786
问题: Various Normal mode commands not fully tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #7059)
文件: src/testdir/test_normal.vim, src/testdir/test_regexp_utf8.vim,
src/testdir/test_registers.vim, src/testdir/test_spellfile.vim,
src/testdir/test_tagjump.vim, src/testdir/test_visual.vim
Patch 8.2.1787
问题: Crash with 'incsearch' and very long line.
解决方案: Check whether regprog becomes NULL. (closes #7063)
文件: src/search.c, src/testdir/test_search.vim
Patch 8.2.1788
问题: Vim9: still allows :let for declarations.
解决方案: Make the default for v:disallow_let one. It can still be set to
zero to allow for using :let.
文件: src/evalvars.c, src/testdir/runtest.vim
Patch 8.2.1789
问题: Vim9: crash with invalid list constant. (Dhiraj Mishra)
解决方案: Return FAIL when compiling the list fails. (closes #7066)
文件: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_expr.vim
Patch 8.2.1790
问题: MS-Windows with Python: crash when executed from Vifm.
解决方案: Use NUL instead of CONIN. (Ken Takata, closes #7061, closes #7053)
文件: src/if_python3.c
Patch 8.2.1791
问题: Vim9: debugger test fails.
解决方案: Use "var" instead of "let".
文件: src/testdir/test_debugger.vim
Patch 8.2.1792
问题: Configure does not recognize Racket 6.1+.
解决方案: Add a check for "rktio". (closes #7062)
文件: src/configure.ac, src/auto/configure
Patch 8.2.1793
问题: Not consistently giving the "is a directory" warning.
解决方案: Adjust check for illegal file name and directory. (Yasuhiro
Matsumoto, closes #7067)
文件: src/fileio.c, src/testdir/test_edit.vim
Patch 8.2.1794
问题: No falsy Coalescing operator.
解决方案: Add the "??" operator. Fix mistake with function argument count.
文件: runtime/doc/eval.txt, src/eval.c, src/vim9compile.c,
src/vim9type.c, src/testdir/test_expr.vim,
src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1795
问题: Vim9: operators && and || have a confusing result.
解决方案: Make the result a boolean.
文件: runtime/doc/vim9.txt, src/eval.c, src/vim9compile.c,
src/vim9execute.c, src/vim9type.c, src/structs.h, src/vim9.h,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1796
问题: Vim9: invalid memory access with weird function name. (Dhiraj
Mishra)
解决方案: Check the name is valid. Add a test.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1797
问题: Vim9: some parts of the code not tested.
解决方案: Add a few tests.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1798
问题: Vim9: ternary operator condition is too permissive.
解决方案: Use tv_get_bool_chk().
文件: runtime/doc/vim9.txt, src/eval.c, src/vim9compile.c,
src/vim9execute.c, src/testdir/vim9.vim,
src/testdir/test_expr.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_script.vim
Patch 8.2.1799
问题: Some Normal mode commands not fully tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #7073)
文件: src/testdir/test_gf.vim, src/testdir/test_goto.vim,
src/testdir/test_normal.vim, src/testdir/test_registers.vim,
src/testdir/test_startup.vim, src/testdir/test_tabpage.vim,
src/testdir/test_visual.vim
Patch 8.2.1800
问题: Vim9: memory leak if "if" condition is invalid.
解决方案: Free ppconst earlier.
文件: src/vim9compile.c
Patch 8.2.1801
问题: Undo file not found when using ":args" or ":next".
解决方案: Handle like editing another file. (closes #7072)
文件: src/ex_cmds.c, src/testdir/test_undo.vim
Patch 8.2.1802
问题: Vim9: crash with unterminated dict. (Dhiraj Mishra)
解决方案: Return empty string instead of NULL. (closes #7084)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1803
问题: A few failures are not tested.
解决方案: Test a few failures. (Dominique Pellé, closes #7075)
文件: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim,
src/testdir/test_json.vim, src/testdir/test_listdict.vim
Patch 8.2.1804
问题: resolve('/') returns an empty string.
解决方案: Don't remove single slash. (closes #7074)
文件: src/filepath.c, src/testdir/test_functions.vim
Patch 8.2.1805
问题: Unix: terminal mode changed when using ":shell".
解决方案: Avoid calling settmode() when not needed. (issue #7079)
文件: src/os_unix.c
Patch 8.2.1806
问题: MS-Windows with Python: Vim freezes after import command.
解决方案: Use either "NUL" or "CONIN$" when reopening stdin. (Yasuhiro
Matsumoto, closes #7083)
文件: src/if_python3.c
Patch 8.2.1807
问题: Can use :help in a terminal popup window.
解决方案: Give an error. (closes #7088)
文件: src/help.c, src/testdir/test_popupwin.vim
Patch 8.2.1808
问题: No test coverage for ":spelldump!".
解决方案: Add a test. (Dominique Pellé, closes #7089)
文件: src/testdir/test_spell.vim
Patch 8.2.1809
问题: Mapping some keys with Ctrl does not work properly.
解决方案: For terminal, GTK and Motif handle "@", "^" and "_" codes.
文件: src/misc2.c, src/proto/misc2.pro, src/term.c, src/gui_gtk_x11.c,
src/gui_x11.c, src/testdir/test_termcodes.vim
Patch 8.2.1810
问题: Some code in normal.c not covered by tests.
解决方案: Add normal mode tests. (Yegappan Lakshmanan, closes #7086)
文件: src/testdir/test_charsearch.vim, src/testdir/test_normal.vim
Patch 8.2.1811
问题: Mapping Ctrl-key does not work for '{', '}' and '|'.
解决方案: Remove the shift modifier. (closes #6457)
文件: runtime/doc/map.txt, src/misc2.c, src/testdir/test_termcodes.vim
Patch 8.2.1812
问题: Vim9: nested closure throws an internal error.
解决方案: Do not skip a local variable with a partial. (closes #7065)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1813
问题: Vim9: can assign wrong type to script dict. (Christian J. Robinson)
解决方案: Check the type if known.
文件: src/structs.h, src/eval.c, src/vim9script.c,
src/proto/vim9script.pro, src/proto/evalvars.pro,
src/testdir/test_vim9_script.vim
Patch 8.2.1814 (after 8.2.1813)
问题: Missing change to remove "static".
解决方案: Add the change.
文件: src/evalvars.c
Patch 8.2.1815
问题: Vim9: memory leak when using function reference.
解决方案: Temporarily disable the test.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.1816
问题: Vim9: another memory leak when using function reference.
解决方案: Temporarily disable the tests.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1817
问题: Vim9: wrong instruction when reusing a local variable spot.
解决方案: Clear a newly allocated local variable. (closes #7080)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1818
问题: SE Linux: deprecation warning for security_context_t.
解决方案: Use "char *" instead. (James McCoy, closes #7093)
文件: src/os_unix.c
Patch 8.2.1819
问题: Vim9: Memory leak when using a closure.
解决方案: Compute the minimal refcount in the funcstack. Reenable disabled
tests.
文件: src/vim9execute.c, src/proto/vim9execute.pro, src/structs.h,
src/eval.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1820
问题: Vim9: crash when error happens in timer callback.
解决方案: Check that current_exception is not NULL. (closes #7100)
文件: src/ex_docmd.c
Patch 8.2.1821
问题: Vim9: concatenating to a NULL list doesn't work.
解决方案: Handle a NULL list like an empty list. (closes #7064)
文件: src/list.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1822 (after 8.2.1821)
问题: List test doesn't fail.
解决方案: Adjust the test for NULL list handling.
文件: src/testdir/test_listdict.vim
Patch 8.2.1823
问题: "gN" does not select the matched string.
解决方案: Move the cursor to the start of the match.
文件: src/search.c, src/testdir/test_gn.vim
Patch 8.2.1824
问题: Vim9: variables at the script level escape their scope.
解决方案: When leaving a scope remove variables declared in it.
文件: src/structs.h, src/ex_eval.c, src/evalvars.c,
src/proto/evalvars.pro, src/testdir/test_vim9_script.vim
Patch 8.2.1825
问题: Vim9: accessing freed memory.
解决方案: Clear sv_name when the variable is deleted.
文件: src/ex_eval.c
Patch 8.2.1826
问题: Vim9: cannot use a {} block at script level.
解决方案: Recognize a {} block.
文件: src/ex_docmd.c, src/ex_cmds.h, src/ex_cmdidxs.h, src/ex_eval.c,
src/structs.h, src/proto/ex_eval.pro, src/errors.h,
src/testdir/test_vim9_script.vim
Patch 8.2.1827
问题: Filetype detection does not test enough file names.
解决方案: Test more file names. (Adam Stankiewicz, closes #7099)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1828
问题: Build failure without the +eval feature.
解决方案: Add dummies for ex_block and ex_endblock.
文件: src/ex_docmd.c
Patch 8.2.1829
问题: Warnings when executing Github actions.
解决方案: Use another method to set environment variables. (Ken Takata,
closes #7107)
文件: .github/workflows/ci-windows.yaml
Patch 8.2.1830
问题: MS-Windows: Python3 issue with stdin.
解决方案: Check if stdin is readable. (Ken Takata, closes #7106)
文件: src/if_python3.c
Patch 8.2.1831
问题: File missing from distribution.
解决方案: Add the github code analyses file.
文件: Filelist
Patch 8.2.1832
问题: readdirex() error is displayed as a message. (Yegappan Lakshmanan)
解决方案: Use semsg() instead of smsg().
文件: src/fileio.c, src/testdir/test_functions.vim
Patch 8.2.1833
问题: When reading from stdin dup() is called twice.
解决方案: Remove the dup() in main.c. (Ken Takata, closes #7110)
文件: src/main.c
Patch 8.2.1834
问题: PyEval_InitThreads() is deprecated in Python 3.9.
解决方案: Do not call PyEval_InitThreads in Python 3.9 and later. (Ken
Takata, closes #7113) Avoid warnings for functions.
文件: src/if_python3.c, src/if_py_both.h
Patch 8.2.1835
问题: ":help ??" finds the "!!" tag.
解决方案: Do not translate "?" into ".". (Naruhiko Nishino, closes #7114,
closes #7115)
文件: src/help.c, src/testdir/test_help_tagjump.vim
Patch 8.2.1836
问题: Autocmd test fails on pacifist systems.
解决方案: Check that /bin/kill exists. (James McCoy, closes #7117)
Tune the timing, make the autocmd test run faster.
文件: src/testdir/test_autocmd.vim
Patch 8.2.1837
问题: Using "gn" after "gN" does not work.
解决方案: Extend the other end of the Visual area. (closes #7109)
文件: src/search.c, src/testdir/test_gn.vim
Patch 8.2.1838
问题: Vim9: cannot insert a comment line in an expression.
解决方案: Skip comment lines at the script level. (closes #7111)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1839
问题: Vim9: memory leaks reported in assign test.
解决方案: Move the failing job_start() call to separate test files, it
causes false leak reports.
文件: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_fails.vim,
src/testdir/Make_all.mak
Patch 8.2.1840
问题: Vim9: error message is not clear about compilation error.
解决方案: Say "compiling" instead of "processing".
文件: src/vim9compile.c, src/message.c, src/globals.h,
src/testdir/test_vim9_func.vim
Patch 8.2.1841
问题: Vim9: test for compilation error fails in normal build.
解决方案: Invoke CheckRunVimInTerminal in a separate function.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.1842
问题: Crash when USE_FNAME_CASE is defined and using :browse.
解决方案: Don't use read-only memory for ".". (Yegappan Lakshmanan,
closes #7123)
文件: src/ex_cmds.c, src/ex_docmd.c, src/testdir/test_edit.vim
Patch 8.2.1843
问题: Netbeans: with huge buffer number memory allocation may fail.
解决方案: Check for size overflow.
文件: src/netbeans.c
Patch 8.2.1844
问题: Using "q" at the more prompt doesn't stop a long message.
解决方案: Check for "got_int". (closes #7122)
文件: src/message.c, src/testdir/test_messages.vim,
src/testdir/dumps/Test_quit_long_message.dump
Patch 8.2.1845
问题: Vim9: function defined in a block can't use variables defined in
that block.
解决方案: First step: Make a second hashtab that holds all script variables,
also block-local ones, with more information.
文件: src/structs.h, src/evalvars.c, src/ex_eval.c, src/vim9script.c,
src/proto/vim9script.pro, src/scriptfile.c
Patch 8.2.1846
问题: Vim9: variables declared in a local block are not found in
when a function is compiled.
解决方案: Look for script variables in sn_all_vars.
文件: src/structs.h, src/vim9compile.c, src/proto/vim9compile.pro,
src/userfunc.c, src/proto/userfunc.pro, src/ex_eval.c,
src/vim9script.c, src/proto/vim9script.pro, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1847
问题: Vim9: using negative value for unsigned type.
解决方案: Use zero instead of -1.
文件: src/vim9compile.c
Patch 8.2.1848
问题: Crash when passing a NULL string or list to popup_settext().
解决方案: Check for NULL pointers. (closes #7132)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.1849
问题: Vim9: garbage collection frees block-local variables.
解决方案: Mark all script variables as used.
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.1850
问题: "vat" does not select tags correctly over line break.
解决方案: Adjust the search pattern. (Aufar Gilbran, closes #7136)
文件: src/textobject.c, src/testdir/test_textobjects.vim
Patch 8.2.1851
问题: Vim9: "!" followed by space incorrectly used.
解决方案: Skip over trailing spaces. (closes #7131)
文件: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1852
问题: map() returning zero for NULL list is unexpected.
解决方案: Return the empty list. (closes #7133)
文件: src/list.c, src/testdir/test_filter_map.vim,
src/testdir/test_blob.vim
Patch 8.2.1853
问题: "to_f" is recognized at "topleft" modifier.
解决方案: Do not recognize modifier when "_" follows. (closes #7019)
文件: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1854
问题: Vim9: crash when throwing exception for NULL string. (Dhiraj
Mishra)
解决方案: Handle NULL string like empty string. (closes #7139)
文件: src/vim9execute.c, src/errors.h, src/testdir/test_vim9_script.vim
Patch 8.2.1855
问题: Vim9: get error message when nothing is wrong.
解决方案: Check called_emsg instead of did_emsg. (closes #7143)
文件: src/vim9compile.c, src/vim9execute.c, src/errors.h
Patch 8.2.1856
问题: "2resize" uses size of current window. (Daniel Steinberg)
解决方案: Use size of resized window. (Yasuhiro Matsumoto, closes #7152)
文件: src/ex_docmd.c, src/testdir/test_window_cmd.vim
Patch 8.2.1857
问题: Vim9: using job_status() on an unused var gives an error.
解决方案: Return "fail". (closes #7158)
文件: src/job.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1858
问题: Vim9: filter functions return number instead of bool.
解决方案: Return v:true instead of one. (closes #7144)
文件: src/popupwin.c, src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.1859
问题: Vim9: crash in unpack assignment.
解决方案: Make sure an error message is turned into an exception.
(closes #7159)
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.1860
问题: Vim9: memory leak when throwing empty string.
解决方案: Free the empty string.
文件: src/vim9execute.c
Patch 8.2.1861
问题: Vim9: no specific error when parsing lambda fails.
解决方案: Also give syntax errors when not evaluating. (closes #7154)
文件: src/dict.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1862
问题: vim9: memory leak when compiling lambda fails.
解决方案: Call clear_evalarg().
文件: src/vim9compile.c
Patch 8.2.1863
问题: Json code not sufficiently tested.
解决方案: Add more test cases. (Dominique Pellé, closes #7166)
文件: src/testdir/test_json.vim
Patch 8.2.1864
问题: Vim9: no error for wrong list type.
解决方案: Add flag to indicate a constant. (closes #7160)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.1865
问题: Vim9: add() does not check type of argument.
解决方案: Inline the add() call. (closes #7160)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/errors.h,
src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1866
问题: Vim9: appending to pushed blob gives wrong result.
解决方案: Set ga_maxlen when copying a blob.
文件: src/blob.c, src/testdir/test_vim9_func.vim
Patch 8.2.1867
问题: Vim9: argument to add() not checked for blob.
解决方案: Add the BLOBAPPEND instruction.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/errors.h,
src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1868
问题: Vim9: no error for missing space after comma in dict.
解决方案: Check for white space. (closes #6672)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1869
问题: Vim9: memory leak when using add().
解决方案: Free the added item.
文件: src/vim9execute.c
Patch 8.2.1870
问题: Vim9: no need to keep all script variables.
解决方案: Only keep script variables when a function was defined that could
use them. Fix freeing static string on exit.
文件: src/vim9script.c, src/proto/vim9script.pro, src/structs.h,
src/ex_eval.c, src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.1871
问题: Using %v in 'errorformat' may fail before %Z.
解决方案: Set qf_viscol only when qf_col is set. (closes #7169)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1872
问题: Matchfuzzy() does not prefer sequential matches.
解决方案: Give sequential matches a higher bonus. (Christian Brabandt,
closes #7140)
文件: src/search.c, src/testdir/test_matchfuzzy.vim
Patch 8.2.1873
问题: Vim9: missing white space when using <f-args>.
解决方案: Add spaces. (Christian J. Robinson)
文件: src/usercmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1874
问题: Can't do something just before leaving Insert mode.
解决方案: Add the InsertLeavePre autocommand event. (closes #7177)
文件: runtime/doc/autocmd.txt, src/edit.c, src/vim.h,
src/autocmd.c, src/testdir/test_edit.vim
Patch 8.2.1875
问题: Warning when building GTK gui.
解决方案: Add missing function parameter.
文件: src/gui_gtk_f.c
Patch 8.2.1876
问题: Vim9: argument types for builtin functions are not checked at
compile time.
解决方案: Add an argument type checking mechanism. Implement type checks for
one function.
文件: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/Make_all.mak
Patch 8.2.1877 (after 8.2.1876)
问题: Test for function list fails.
解决方案: Move "obsolete" comments one line up.
文件: src/evalfunc.c
Patch 8.2.1878
问题: GTK: error for redefining function. (Tony Mechelynck)
解决方案: Remove "gtk_" prefix from local functions and prepend "gui_" to
global functions.
文件: src/gui_gtk_f.c, src/gui_gtk_f.h, src/gui_gtk.c, src/gui_gtk_x11.c
Patch 8.2.1879
问题: Vim9: argument types of insert() not checked when compiling.
解决方案: Add argument type checks for insert().
文件: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.1880
问题: Vim9: Asan complains about adding zero to NULL.
解决方案: Check for argument count first.
文件: src/vim9compile.c
Patch 8.2.1881
问题: Cannot build with GTK3.
解决方案: Adjust form functions.
文件: src/gui_gtk_f.c
Patch 8.2.1882
问题: Vim9: v:disallow_let is no longer needed.
解决方案: Remove v:disallow_let.
文件: src/evalvars.c, src/vim.h, src/vim9compile.c
Patch 8.2.1883
问题: Compiler warnings when using Python.
解决方案: Adjust PyCFunction to also have the second argument. Use "int"
return type for some functions. Insert "(void *)" to get rid of
the remaining warnings.
文件: src/if_py_both.h, src/if_python.c, src/if_python3.c
Patch 8.2.1884
问题: Compiler warning for uninitialized variable. (John Marriott)
解决方案: Initialize with NULL.
文件: src/vim9compile.c, src/evalfunc.c
Patch 8.2.1885
问题: Filetype tests unnecessarily creates swap files.
解决方案: Disable 'swapfile'. (Ken Takata, closes #7183)
文件: src/testdir/test_filetype.vim
Patch 8.2.1886
问题: Using ":silent!" in a popup filter has unexpected effect.
解决方案: Use did_emsg instead of called_emsg. (closes #7178)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.1887
问题: Github actions not optimally configured.
解决方案: Run CI on any pushed branches. Set fail-fast. (Ozaki Kiichi,
closes #7184)
文件: .github/workflows/ci-windows.yaml
Patch 8.2.1888
问题: Vim9: Getbufline(-1, 1, '$') gives an error.
解决方案: Return an empty list. (closes #7180)
文件: src/evalbuffer.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.1889
问题: Vim9: erroneous error for missing white space after {}.
解决方案: Don't skip over white space after {}. (issue #7167)
文件: src/dict.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1890
问题: Vim9: strange error for subtracting from a list.
解决方案: Check getting a number, not a string. (closes #7167)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1891
问题: Vim9: skipping over expression doesn't handle line breaks.
解决方案: Pass evalarg to skip_expr(). (closes #7157)
文件: src/vim9compile.c, src/eval.c, src/proto/eval.pro, src/ex_docmd.c,
src/misc1.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1892
问题: Valgrind warns for using uninitialized access in tests.
解决方案: Fix condition for breaking out of loop. (Dominique Pellé,
closes #7187)
文件: src/terminal.c
Patch 8.2.1893
问题: Fuzzy matching does not support multiple words.
解决方案: Add support for matching white space separated words. (Yegappan
Lakshmanan, closes #7163)
文件: runtime/doc/eval.txt, src/search.c,
src/testdir/test_matchfuzzy.vim
Patch 8.2.1894
问题: Vim9: command modifiers are not supported.
解决方案: Support "silent" and "silent!".
文件: src/structs.h, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/evalvars.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_cmd.vim
Patch 8.2.1895 (after 8.2.1894)
问题: Vim9: silent command modifier test fails.
解决方案: Add missing changes.
文件: src/ex_docmd.c
Patch 8.2.1896
问题: Valgrind warns for using uninitialized memory.
解决方案: NUL terminate the SmcOpenConnection() error message. (Dominique
Pellé, closes #7194)
文件: src/os_unix.c
Patch 8.2.1897
问题: Command modifiers are saved and set inconsistently.
解决方案: Separate parsing and applying command modifiers. Save values in
cmdmod_T.
文件: src/structs.h, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/ex_cmds.h, src/vim9compile.c
Patch 8.2.1898
问题: Command modifier parsing always uses global cmdmod.
解决方案: Pass in cmdmod_T to use. Rename struct fields consistently.
文件: src/structs.h, src/arglist.c, src/buffer.c, src/bufwrite.c,
src/diff.c, src/change.c, src/cmdhist.c, src/edit.c,
src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c,
src/fileio.c, src/filepath.c, src/gui.c, src/gui_gtk_x11.c,
src/help.c, src/if_cscope.c, src/indent.c, src/mark.c,
src/memline.c, src/message.c, src/option.c, src/ops.c,
src/os_unix.c, src/quickfix.c, src/register.c, src/scriptfile.c,
src/search.c, src/session.c, src/tag.c, src/terminal.c,
src/textformat.c, src/usercmd.c, src/vim9compile.c, src/window.c,
src/proto/ex_docmd.pro
Patch 8.2.1899
问题: Crash in out-of-memory situation.
解决方案: Bail out if shell_name is NULL. (Dominique Pellé, closes #7196)
文件: src/ex_cmds.c
Patch 8.2.1900
问题: Vim9: command modifiers do not work.
解决方案: Make most command modifiers work.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/usercmd.c, src/proto/usercmd.pro, src/scriptfile.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1901
问题: Variable completion does not work in command line window.
解决方案: Use the "prevwin". (closes #7198)
文件: src/evalvars.c, src/testdir/test_ins_complete.vim
Patch 8.2.1902
问题: Default option values are changed when using :badd for an existing
buffer.
解决方案: When calling buflist_new() pass a zero line number. (closes #7195)
文件: src/ex_cmds.c, src/testdir/test_buffer.vim
Patch 8.2.1903 (after 8.2.1902)
问题: Buffer test fails with normal features.
解决方案: Use 'numberwidth' instead of 'conceallevel' in the test.
文件: src/testdir/test_buffer.vim
Patch 8.2.1904
问题: Still using default option values after using ":badd +1".
解决方案: Find a window where options were set. Don't set the window when
using ":badd".
文件: src/buffer.c, src/ex_cmds.c, src/vim.h,
src/testdir/test_buffer.vim
Patch 8.2.1905
问题: The wininfo list may contain stale entries.
解决方案: When closing a window remove any other entry where the window
pointer is NULL.
文件: src/buffer.c, src/proto/buffer.pro, src/window.c
Patch 8.2.1906
问题: Warning for signed/unsigned.
解决方案: Use size_t instead of int. (Mike Williams)
文件: src/proto/usercmd.pro, src/usercmd.c, src/vim9execute.c
Patch 8.2.1907
问题: Complete_info().selected may be wrong.
解决方案: Update cp_number if it was never set. (issue #6945)
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.1908
问题: Lua is initialized even when not used.
解决方案: Put lua_init() after check for "eap->skip". (Christian Brabandt,
closes #7191). Avoid compiler warnings.
文件: src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.1909
问题: Number of status line items is limited to 80.
解决方案: Dynamically allocate the arrays. (Rom Grk, closes #7181)
文件: runtime/doc/options.txt, src/buffer.c, src/optionstr.c,
src/proto/buffer.pro, src/screen.c, src/structs.h,
src/testdir/test_options.vim, src/testdir/test_statusline.vim,
src/vim.h
Patch 8.2.1910
问题: Reading past the end of the command line.
解决方案: Check for NUL. (closes #7204)
文件: src/ex_docmd.c, src/testdir/test_edit.vim
Patch 8.2.1911
问题: Tiny build fails.
解决方案: Add #ifdef.
文件: src/insexpand.c
Patch 8.2.1912
问题: With Python 3.9 some tests fail.
解决方案: Take into account the different error message. (James McCoy,
closes #7210)
文件: src/testdir/test_python3.vim
Patch 8.2.1913
问题: GTK GUI: rounding for the cell height is too strict.
解决方案: Round up above 15/16 of a pixel. (closes #7203)
文件: src/gui_gtk_x11.c
Patch 8.2.1914
问题: Vim9: cannot put line break in expression for '=' register.
解决方案: Pass fgetline to set_expr_line(). (closes #7209)
文件: src/register.c, src/proto/register.pro, src/ex_docmd.c,
src/eval.c, src/proto/eval.pro, src/misc2.c,
src/testdir/test_vim9_script.vim
Patch 8.2.1915
问题: Vim9: error for wrong number of arguments is not useful.
解决方案: Mention whatever we have for the name. (closes #7208)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.1916
问题: Vim9: function call is aborted even when "silent!" is used.
解决方案: Use did_emsg instead of called_emsg. (closes #7213)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1917
问题: No test for improved Man command.
解决方案: Test that shell arguments are properly escaped.
文件: src/testdir/test_man.vim
Patch 8.2.1918
问题: Vim9: E1100 mentions :let.
解决方案: Mention "var". (closes #7207)
文件: src/vim9script.c, src/errors.h
Patch 8.2.1919
问题: Assert_fails() setting emsg_silent changes normal execution.
解决方案: Use a separate flag in_assert_fails.
文件: src/testing.c, src/globals.h, src/buffer.c, src/change.c,
src/fileio.c, src/insexpand.c, src/message.c, src/misc1.c,
src/normal.c, src/screen.c, src/term.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim, src/testdir/gen_opt_test.vim,
src/testdir/test_autocmd.vim, src/testdir/test_mapping.vim,
src/testdir/test_popup.vim, src/testdir/test_terminal.vim
Patch 8.2.1920
问题: Listlbr test fails when run after another test.
解决方案: Add test separately to list of test targets.
文件: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.vim
Patch 8.2.1921
问题: Fuzzy matching does not recognize path separators.
解决方案: Add a bonus for slash and backslash. (Yegappan Lakshmanan,
closes #7225)
文件: src/search.c, src/testdir/test_matchfuzzy.vim
Patch 8.2.1922
问题: Win32: scrolling doesn't work properly when part of window is
off-screen.
解决方案: Fall back to GDI scrolling if part of the window is off-screen.
Handle multi-monitor setup better. (Ken Takata, closes #7219)
文件: src/gui_w32.c
Patch 8.2.1923
问题: Vim9: "filter" command modifier doesn't work.
解决方案: Check for space on char before argument. (closes #7216,
closes #7222)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1924
问题: Vim9: crash when indexing dict with NULL key.
解决方案: Use empty string instead of NULL. (closes #7229) Make error
message more useful for empty string.
文件: src/vim9execute.c, src/globals.h, src/testdir/test_vim9_expr.vim
Patch 8.2.1925 (after 8.2.1924)
问题: List/dict test fails.
解决方案: Correct expected exception.
File: src/testdir/test_listdict.vim
Patch 8.2.1926
问题: Cannot use a space in 'spellfile'. (Filipe Brandenburger)
解决方案: Permit using a space. (closes #7230)
文件: src/spell.c, src/testdir/gen_opt_test.vim
Patch 8.2.1927
问题: Vim9: get unknown error with an error in a timer function.
解决方案: Use did_emsg instead of called_emsg. (closes #7231)
文件: src/vim9compile.c, src/vim9execute.c
Patch 8.2.1928
问题: Vim9: "silent!" not effective when list index is wrong.
解决方案: Ignore list index failure when emsg_silent is set. (closes #7232)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.1929
问题: MS-Windows: problem loading Perl 5.32.
解决方案: Define NO_THREAD_SAFE_LOCALE. (Ken Takata, closes #7234)
文件: src/if_perl.xs
Patch 8.2.1930
问题: Wrong input if removing shift results in special key code.
解决方案: Handle special key codes. (closes #7189)
文件: src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.1931
问题: Vim9: arguments of extend() not checked at compile time.
解决方案: Add argument type checking for extend().
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.1932
问题: Compiler warnings when building with Athena GUI.
解决方案: Fix function signatures.
文件: src/gui_at_fs.c
Patch 8.2.1933
问题: Cannot sort using locale ordering.
解决方案: Add a flag for :sort and sort() to use the locale. (Dominique
Pellé, closes #7237)
文件: runtime/doc/change.txt, runtime/doc/eval.txt, src/ex_cmds.c,
src/list.c, src/testdir/test_sort.vim
Patch 8.2.1934
问题: Vim9: command modifiers in :def function not tested.
解决方案: Add tests. Fix using modifier before filter command.
文件: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1935 (after 8.2.1933)
问题: Sort test fails on Mac.
解决方案: Disable the sort test with locale on Mac.
文件: src/testdir/test_sort.vim
Patch 8.2.1936
问题: Session sets the local 'scrolloff' value to the global value.
解决方案: Do not let restoring the global option value change the local
value.
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.1937
问题: Vim9: test for confirm modifier fails in some situations.
解决方案: Add a short wait. Handle failure better.
文件: src/testdir/term_util.vim, src/testdir/test_vim9_cmd.vim
Patch 8.2.1938
问题: Wiping out a terminal buffer makes some tests fail.
解决方案: Do not wipe out the terminal buffer unless wanted.
文件: src/testdir/term_util.vim, src/testdir/test_terminal.vim,
src/testdir/test_terminal3.vim
Patch 8.2.1939
问题: Invalid memory access in Ex mode with global command.
解决方案: Make sure the cursor is on a valid line. (closes #7238)
文件: src/move.c, src/testdir/test_ex_mode.vim
Patch 8.2.1940
问题: Vim9: browse modifier test fails on Mac.
解决方案: Only test when the +browse feature is available.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.1941
问题: Ex mode test fails on MS-Windows with GUI.
解决方案: Skip the test when using gvim.
文件: src/testdir/test_ex_mode.vim
Patch 8.2.1942
问题: Insufficient test coverage for the Netbeans interface.
解决方案: Add more tests. Fix an uncovered bug. (Yegappan Lakshmanan,
closes #7240)
文件: runtime/doc/netbeans.txt, src/mouse.c,
src/testdir/test_netbeans.py, src/testdir/test_netbeans.vim,
src/testdir/test_quickfix.vim
Patch 8.2.1943
问题: Vim9: wrong error message when colon is missing.
解决方案: Check for a missing colon. (issue #7239)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1944
问题: Netbeans test is flaky.
解决方案: Add a short delay. (Yegappan Lakshmanan, closes #7246)
文件: src/testdir/test_netbeans.vim
Patch 8.2.1945
问题: Crash when passing NULL function to reduce().
解决方案: Check for NULL pointer and give an error. (Dominique Pellé,
closes #7243)
文件: src/list.c, src/errors.h, src/testdir/test_listdict.vim
Patch 8.2.1946
问题: sort() with NULL string not tested.
解决方案: Add a test. use v:collate. (Dominique Pellé, closes #7247)
文件: src/testdir/test_sort.vim
Patch 8.2.1947
问题: Crash when using "zj" without folds. (Sean Dewar)
解决方案: Check for at least one fold. (closes #7245)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.1948
问题: GUI: crash when handling message while closing a window. (Srinath
Avadhanula)
解决方案: Don't handle message while closing a window. (closes #7250)
文件: src/window.c, src/globals.h, src/getchar.c
Patch 8.2.1949
问题: Vim9: using extend() on null dict is silently ignored.
解决方案: Give an error message. Initialize a dict variable with an empty
dictionary. (closes #7251)
文件: src/errors.h, src/list.c, src/evalvars.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.1950
问题: Vim9: crash when compiling function fails when getting type.
解决方案: Handle NULL type. (closes #7253)
文件: src/vim9type.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1951 (after 8.2.1949)
问题: Test for list and dict fails.
解决方案: Adjust for using an empty list/dict for a null one.
文件: src/testdir/test_listdict.vim, src/testdir/test_python2.vim,
src/testdir/test_python3.vim
Patch 8.2.1952
问题: Vim9: crash when using a NULL dict key.
解决方案: Use a NULL dict key like an empty string. (closes #7249)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.1953
问题: Vim9: extra "unknown" error after other error.
解决方案: Restore did_emsg count after EXEC instruction. (closes #7254)
Improve error message from assert_fails()
文件: src/vim9execute.c, src/testing.c,
src/testdir/test_vim9_script.vim, src/testdir/test_assert.vim
Patch 8.2.1954
问题: Vim9: not all command modifiers are tested.
解决方案: Add tests for "keep" modifiers. Fix that marks are lost even
though ":lockmarks" is used.
文件: src/ex_cmds.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.1955
问题: Vim9: not all command modifiers are tested.
解决方案: Add tests for remaining modifiers.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.1956
问题: Vim9: cannot specify argument types for lambda.
解决方案: Allow adding argument types. Check arguments when calling a
function reference.
文件: src/userfunc.c, src/proto/userfunc.pro, src/vim9compile.c,
src/eval.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.1957
问题: Diff and cursorcolumn highlighting don't mix.
解决方案: Fix condition for what attribute to use. (Christian Brabandt,
closes #7258, closes #7260)
文件: src/drawline.c, src/testdir/dumps/Test_diff_cuc_01.dump,
src/testdir/dumps/Test_diff_cuc_02.dump,
src/testdir/dumps/Test_diff_cuc_03.dump,
src/testdir/dumps/Test_diff_cuc_04.dump,
src/testdir/test_diffmode.vim
Patch 8.2.1958 (after 8.2.1956)
问题: Build failure with timers.
解决方案: Add missing change.
文件: src/popupwin.c
Patch 8.2.1959
问题: Crash when terminal buffer name is made empty. (Dhiraj Mishra)
解决方案: Fall back to "[No Name]". (closes #7262)
文件: src/buffer.c, src/proto/buffer.pro, src/terminal.c,
src/testdir/test_terminal.vim
Patch 8.2.1960
问题: Warning for uninitialized variable.
解决方案: Initialize the variable.
文件: src/evalfunc.c
Patch 8.2.1961
问题: Various comments can be improved.
解决方案: Various comment adjustments.
文件: src/dict.c, src/structs.h, src/time.c, src/testdir/shared.vim,
src/testdir/test_netbeans.vim, src/gui_motif.c
Patch 8.2.1962
问题: Netbeans may access freed memory.
解决方案: Check the buffer pointer is still valid. Add a test. (Yegappan
Lakshmanan, closes #7248)
文件: src/netbeans.c, src/testdir/test_netbeans.vim
Patch 8.2.1963
问题: Crash when using a popup window with "latin1" encoding.
解决方案: Don't use ScreenLinesUC when enc_utf8 is false. (closes #7241)
文件: src/screen.c, src/terminal.c, src/testdir/test_popupwin.vim
Patch 8.2.1964
问题: Not all ConTeXt files are recognized.
解决方案: Add two patterns. (closes #7263)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.1965
问题: Vim9: tests fail without the channel feature.
解决方案: Check if the channel feature is present. (Dominique Pellé,
closes #7270)
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.1966
问题: Popup becomes current window after closing a terminal window.
解决方案: When restoring the window after executing autocommands, check that
the window ID is still the same. (Naruhiko Nishino,
closes #7272)
文件: src/autocmd.c, src/window.c, src/proto/window.pro, src/structs.h,
src/testdir/test_popupwin.vim
Patch 8.2.1967
问题: The session file does not restore the alternate file.
解决方案: Add ":balt". Works like ":badd" and also sets the buffer as the
alternate file. Use it in the session file. (closes #7269,
closes #6714)
文件: runtime/doc/windows.txt, src/ex_cmds.h, src/ex_cmdidxs.h,
src/ex_docmd.c, src/vim.h, src/ex_cmds.c, src/session.c,
src/testdir/test_buffer.vim
Patch 8.2.1968
问题: Vim9: has() assumes a feature does not change dynamically.
解决方案: Check whether a feature may change dynamically. (closes #7265)
文件: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.1969
问题: Vim9: map() may change the list or dict item type.
解决方案: Add mapnew().
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/list.c, src/proto/list.pro, src/testdir/test_filter_map.vim
Patch 8.2.1970
问题: It is easy to make mistakes when cleaning up swap files after the
system crashed.
解决方案: Warn for the process still running after recovery. Do not
automatically delete a swap file created on another system.
(David Fries, closes #7273)
文件: src/memline.c, src/testdir/test_swap.vim
Patch 8.2.1971
问题: Memory leak when map() fails.
解决方案: Clear the typval.
文件: src/list.c
Patch 8.2.1972
问题: Crash when recreating nested fold.
解决方案: Check for empty growarray. (closes #7278)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.1973
问题: Finding a patch number can be a bit slow.
解决方案: Use binary search. (closes #7279)
文件: src/version.c
Patch 8.2.1974
问题: Vim9: test for has('gui_running') fails with VIMDLL.
解决方案: Adjust the #ifdef. (Ken Takata, closes #7276)
文件: src/evalfunc.c
Patch 8.2.1975
问题: Win32: memory leak when encoding conversion fails.
解决方案: Free the allocated memory. (Ken Takata, closes #7277)
文件: src/os_win32.c
Patch 8.2.1976
问题: Cannot backspace in prompt buffer after using cursor-left. (Maxim
Kim)
解决方案: Ignore "arrow_used" in a prompt buffer. (closes #7281)
文件: src/edit.c, src/testdir/test_prompt_buffer.vim
Patch 8.2.1977
问题: Vim9: error for using a string in a condition is confusing.
解决方案: Give a more specific error. Also adjust the compile time type
checking for || and &&.
文件: src/vim9compile.c, src/vim9execute.c, src/proto/vim9execute.pro,
src/typval.c, src/errors.h, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.1978
问题: Making a mapping work in all modes is complicated.
解决方案: Add the <Cmd> special key. (Yegappan Lakshmanan, closes #7282,
closes 4784, based on patch by Bjorn Linse)
文件: runtime/doc/autocmd.txt, runtime/doc/eval.txt,
runtime/doc/map.txt, src/edit.c, src/errors.h, src/ex_docmd.c,
src/ex_getln.c, src/getchar.c, src/insexpand.c, src/keymap.h,
src/map.c, src/misc2.c, src/normal.c, src/ops.c,
src/proto/getchar.pro, src/screen.c, src/terminal.c,
src/testdir/test_mapping.vim
Patch 8.2.1979
问题: "term_opencmd" option of term_start() is truncated. (Sergey
Vlasov)
解决方案: Allocate the buffer to hold the command. (closes #7284)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.1980
问题: Vim9: some tests are not done at the script level.
解决方案: Use CheckDefAndScriptSuccess() in more places. Fix uncovered
problems.
文件: src/eval.c, src/list.c, src/scriptfile.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.1981
问题: MinGW: parallel compilation might fail.
解决方案: Add dependencies on $(OUTDIR). (Masamichi Abe, closes #7287)
文件: src/Make_cyg_ming.mak
Patch 8.2.1982
问题: Quickfix window not updated when adding invalid entries.
解决方案: Update the quickfix buffer properly. (Yegappan Lakshmanan, closes
#7291, closes #7271)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.1983
问题: ml_get error when using <Cmd> to open a terminal.
解决方案: If the window changed reset the incsearch state. (closes #7289)
文件: src/ex_getln.c, src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_from_cmd.dump
Patch 8.2.1984
问题: Cannot use :vimgrep in omni completion, causing C completion to
fail.
解决方案: Add the EX_LOCK_OK flag to :vimgrep. (closes #7292)
文件: src/ex_cmds.h, src/testdir/test_quickfix.vim
Patch 8.2.1985
问题: Crash when closing terminal popup with <Cmd> mapping.
解决方案: Check b_term is not NULL. (closes #7294)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.1986
问题: Expression test is flaky on Appveyor.
解决方案: Temporarily disable the test in MS-Windows.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.1987
问题: MS-Windows: Win32.mak is no longer needed.
解决方案: Do not include Win32.mak. (Jason McHugh, closes #7290)
文件: src/Make_mvc.mak, src/INSTALLpc.txt
Patch 8.2.1988
问题: Still in Insert mode when opening terminal popup with a <Cmd>
mapping in Insert mode.
解决方案: Exit Insert mode. (closes #7295)
文件: src/edit.c, src/testdir/test_terminal.vim
Patch 8.2.1989
问题: Info popup triggers WinEnter and WinLeave autocommands.
解决方案: Suppress autocommands for the info popup. (closes #7296)
文件: src/popupmenu.c, src/testdir/test_popupwin.vim
Patch 8.2.1990
问题: Cursor position wrong in terminal popup with finished job.
解决方案: Only add the top and left offset when not done already.
(closes #7298)
文件: src/popupwin.c, src/structs.h, src/drawline.c, src/move.c,
src/terminal.c, src/testdir/dumps/Test_terminal_popup_m1.dump
Patch 8.2.1991
问题: Coverity warns for not using the ga_grow() return value.
解决方案: Bail out if ga_grow() fails. (Yegappan Lakshmanan, closes #7303)
文件: src/getchar.c
Patch 8.2.1992
问题: Build fails with small features.
解决方案: Add #ifdef.
文件: src/move.c
Patch 8.2.1993
问题: Occasional failure of the netbeans test.
解决方案: Add "silent!". (Yegappan Lakshmanan, closes #7304)
文件: src/testdir/test_netbeans.vim
Patch 8.2.1994 (after 8.2.1981)
问题: MS-Windows: MinGW always does a full build.
解决方案: Only check if $OUTDIR exists. (Masamichi Abe, closes #7311)
文件: src/Make_cyg_ming.mak
Patch 8.2.1995
问题: The popup menu can cause too much redrawing.
解决方案: Reduce the length of the displayed text. (Yasuhiro Matsumoto,
closes #7306)
文件: src/popupmenu.c
Patch 8.2.1996
问题: Vim9: invalid error for argument of extend().
解决方案: Check if the type could match. (closes #7299)
文件: src/evalfunc.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/vim9type.c, src/proto/vim9type.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.1997
问题: Window changes when using bufload() while in a terminal popup.
解决方案: When searching for a window by ID also find a popup window.
(closes #7307)
文件: src/window.c, src/testdir/test_terminal.vim
Patch 8.2.1998
问题: Terminal Cmd test sometimes fails to close popup.
解决方案: Add "term_finish" option.
文件: src/testdir/test_terminal.vim
Patch 8.2.1999
问题: Terminal popup test sometimes fails.
解决方案: Wait for the popup to close.
文件: src/testdir/test_terminal.vim
Patch 8.2.2000
问题: Vim9: dict.key assignment not implemented yet.
解决方案: Implement dict.key assignment. (closes #7312)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2001
问题: Vim9: :def function does not apply 'maxfuncdepth'.
解决方案: Use 'maxfuncdepth'. (issue #7313)
文件: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.2002
问题: Vim9: lambda argument shadowed by function name.
解决方案: Let function name be shadowed by lambda argument. (closes #7313)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2003
问题: Build error with +conceal but without +popupwin.
解决方案: Add #ifdef. (Tom Ryder, closes #7316)
文件: src/drawline.c
Patch 8.2.2004 (after 8.2.2002)
问题: Compiler warning for uninitialized variable.
解决方案: Initialize "ufunc". (John Marriott)
文件: src/vim9compile.c
Patch 8.2.2005
问题: Redoing a mapping with <Cmd> doesn't work properly.
解决方案: Fill the redo buffer. Use "<SNR>" instead of a key code.
(closes #7282)
文件: src/ops.c, src/getchar.c, src/testdir/test_mapping.vim
Patch 8.2.2006
问题: .pbtxt files are not recognized.
解决方案: Recognize .pbtxt as protobuf text buffers. (closes #7326)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2007
问题: Test for insert mode in popup is not reliable.
解决方案: Wait for the popup to disappear. (Ozaki Kiichi, closes #7321)
文件: src/testdir/test_terminal.vim
Patch 8.2.2008
问题: MS-Windows GUI: handling channel messages lags.
解决方案: Reduce the wait time from 100 to 10 msec. (closes #7097)
文件: src/gui_w32.c
Patch 8.2.2009
问题: MS-Windows: setting $LANG in gvimext only causes problems.
解决方案: Do not set $LANG. (Ken Takata, closes #7325)
文件: src/GvimExt/gvimext.cpp
Patch 8.2.2010
问题: Vim9: compiling fails for unreachable return statement.
解决方案: Fix it. (closes #7319)
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.2011
问题: "syn sync" reports a very large number.
解决方案: Use "at the first line".
文件: src/syntax.c, src/testdir/test_syntax.vim
Patch 8.2.2012
问题: Vim9: confusing error message when using bool wrongly.
解决方案: Mention "Bool" instead of "Special". (closes #7323)
文件: src/typval.c, src/errors.h, src/testdir/test_vim9_expr.vim
Patch 8.2.2013
问题: Vim9: not skipping white space after unary minus.
解决方案: Skip whitespace. (closes #7324)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2014
问题: Using CTRL-O in a prompt buffer moves cursor to start of the line.
解决方案: Do not move the cursor when restarting edit. (closes #7330)
文件: src/job.c, src/testdir/test_prompt_buffer.vim
Patch 8.2.2015
问题: Vim9: literal dict #{} is not like any other language.
解决方案: Support the JavaScript syntax.
文件: runtime/doc/vim9.txt, src/vim9compile.c,
src/proto/vim9compile.pro, src/errors.h,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.2016
问题: Swap file test is a little flaky.
解决方案: Don't set a byte to a fixed value, increment it.
文件: src/testdir/test_swap.vim
Patch 8.2.2017 (after 8.2.2015)
问题: Missing part of the dict change.
解决方案: Also change the script level dict.
文件: src/dict.c
Patch 8.2.2018
问题: Vim9: script variable not found from lambda.
解决方案: In a lambda also check the script hashtab for a variable without a
scope. (closes #7329)
文件: src/evalvars.c, src/testdir/test_vim9_func.vim
Patch 8.2.2019 (after 8.2.2016)
问题: Swap file test fails on MS-Windows.
解决方案: Add four to the process ID. (Ken Takata, closes #7333)
文件: src/testdir/test_swap.vim
Patch 8.2.2020
问题: Some compilers do not like the "namespace" argument.
解决方案: Rename to "use_namespace". (closes #7332)
文件: src/vim9compile.c, src/proto/vim9compile.pro
Patch 8.2.2021
问题: Vim9: get E1099 when autocommand resets did_emsg.
解决方案: Add did_emsg_cumul. (closes #7336)
文件: src/globals.h, src/ex_docmd.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2022
问题: Vim9: star command recognized erroneously.
解决方案: Give an error for missing colon. (issue #7335)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2023
问题: Vim: memory leak when :execute fails.
解决方案: Clear the growarray.
文件: src/vim9execute.c
Patch 8.2.2024
问题: Flicker when redrawing a popup with a title and border.
解决方案: Do not redraw the border where the title is displayed. (Naruhiko
Nishino, closes #7334)
文件: src/popupwin.c
Patch 8.2.2025
问题: Amiga: Not all colors are used on OS4.
解决方案: Adjust the #ifdef to include __amigaos4__. (Ola Söder,
closes #7328)
文件: src/term.c
Patch 8.2.2026
问题: Coverity warns for possibly using not NUL terminated string.
解决方案: Put a NUL in b0_hname just in case.
文件: src/memline.c
Patch 8.2.2027
问题: Coverity warns for uninitialized field.
解决方案: Set "v_lock".
文件: src/list.c
Patch 8.2.2028
问题: Coverity warns for using an uninitialized variable.
解决方案: Initialize to NULL.
文件: src/eval.c
Patch 8.2.2029
问题: Coverity warns for not checking return value.
解决方案: Check that u_save_cursor() returns OK.
文件: src/ops.c
Patch 8.2.2030
问题: Some tests fail on Mac.
解决方案: Avoid Mac test failures. Add additional test for wildmenu.
(Yegappan Lakshmanan, closes #7341)
文件: src/testdir/runtest.vim, src/testdir/test_cmdline.vim,
src/testdir/test_options.vim, src/testdir/test_popupwin.vim
Patch 8.2.2031
问题: Some tests fail when run under valgrind.
解决方案: Avoid timing problems.
文件: src/testdir/test_vim9_func.vim, src/testdir/test_channel.vim,
src/testdir/test_clientserver.vim, src/testdir/test_debugger.vim,
src/testdir/test_quotestar.vim
Patch 8.2.2032
问题: Cabalconfig and cabalproject filetypes not recognized.
解决方案: Detect more cabal files. (Marcin Szamotulski, closes #7339)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2033
问题: Vim9: :def without argument gives compilation error.
解决方案: Add the DEF instruction. (closes #7344)
文件: src/ex_docmd.c, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/userfunc.c, src/proto/userfunc.pro,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2034
问题: Vim9: list unpack in for statement not compiled yet.
解决方案: Compile list unpack. (closes #7345)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/errors.h,
src/eval.c, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2035
问题: MS-Windows: some tests may fail.
解决方案: Avoid test failures. (Yegappan Lakshmanan, closes #7346)
文件: src/testdir/test_channel.vim, src/testdir/test_ex_mode.vim,
src/testdir/test_functions.vim
Patch 8.2.2036
问题: Current buffer is messed up if creating a new buffer for the
quickfix window fails.
解决方案: Check that creating the buffer succeeds. (closes #7352)
文件: src/quickfix.c, src/testdir/test_quickfix.vim,
src/testdir/dumps/Test_quickfix_window_fails.dump
Patch 8.2.2037
问题: Compiler test depends on list of compiler plugins.
解决方案: Compare with the actual list of compiler plugins.
文件: src/testdir/test_compiler.vim
Patch 8.2.2038
问题: Compiler test fails on MS-Windows.
解决方案: Sort the found compiler plugin names.
文件: src/testdir/test_compiler.vim
Patch 8.2.2039
问题: Viminfo is not written when creating a new file.
解决方案: Set "b_marks_read" in the new buffer. (Christian Brabandt,
closes #7350)
文件: src/bufwrite.c, src/testdir/test_viminfo.vim
Patch 8.2.2040
问题: Terminal buffer disappears even when 'bufhidden' is "hide".
(Sergey Vlasov)
解决方案: Check 'bufhidden' when a terminal buffer becomes hidden.
(closes #7358)
文件: src/buffer.c, src/testdir/test_terminal.vim
Patch 8.2.2041
问题: Haskell filetype not optimally recognized.
解决方案: Recognize all *.hsc files as Haskell. (Marcin Szamotulski,
closes #7354)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2042
问题: Build failure with +profile but without +reltime.
解决方案: Adjust #ifdef. (Christian Brabandt, closes #7361)
文件: src/syntax.c
Patch 8.2.2043
问题: GTK3: white border around text stands out.
解决方案: Use current theme color. (closes #7357, issue #349)
文件: src/gui_gtk_x11.c
Patch 8.2.2044
问题: MS-Windows: swap file test sometimes fails.
解决方案: Use a more reliable way to change the process ID. When "timeout"
fails use "ping" to wait up to ten minutes. (Ken Takata,
closes #7365)
文件: .github/workflows/ci-windows.yaml, src/testdir/test_swap.vim
Patch 8.2.2045
问题: Highlighting a character too much with incsearch.
解决方案: Check "search_match_endcol". (Christian Brabandt, closes #7360)
文件: src/drawline.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_incsearch_newline1.dump,
src/testdir/dumps/Test_incsearch_newline2.dump,
src/testdir/dumps/Test_incsearch_newline3.dump,
src/testdir/dumps/Test_incsearch_newline4.dump,
src/testdir/dumps/Test_incsearch_newline5.dump
Patch 8.2.2046
问题: Some test failures don't give a clear error.
解决方案: Use assert_match() and assert_fails() instead of assert_true().
(Ken Takata, closes #7368)
文件: src/testdir/test_autocmd.vim, src/testdir/test_backspace_opt.vim
Patch 8.2.2047
问题: Amiga: FEAT_ARP defined when it should not.
解决方案: Adjust #ifdef. (Ola Söder, closes #7370)
文件: src/feature.h
Patch 8.2.2048
问题: Amiga: obsolete code.
解决方案: Remove the unused lines. (Ola Söder, closes #7373)
文件: src/gui.c
Patch 8.2.2049
问题: Amiga: obsolete function.
解决方案: Remove the function. (Ola Söder, closes #7374)
文件: src/memfile.c
Patch 8.2.2050
问题: Search test contains unneeded sleeps.
解决方案: Rename the function, remove sleeps. (Christian Brabandt,
closes #7369)
文件: src/testdir/test_search.vim
Patch 8.2.2051
问题: Vim9: crash when aborting a user function call.
解决方案: Do not use the return value when aborting. (closes #7372)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2052
问题: Vim9: "edit +4 fname" gives an error. (Naruhiko Nishino)
解决方案: Allow using a range in the +cmd argument. (closes #7364)
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/vim.h, src/ex_cmds.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2053
问题: Vim9: lambda doesn't accept argument types.
解决方案: Optionally accept argument types at the script level.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2054
问题: Amiga: FEAT_ARP defined when it should not.
解决方案: Adjust "||" to "&&" in #ifdef. (Ola Söder, closes #7375)
文件: src/feature.h
Patch 8.2.2055
问题: MS-Windows: two Vim instances may use the same temp file.
解决方案: Use the process ID for the temp name. (Ken Takata, closes #7378)
文件: src/fileio.c
Patch 8.2.2056
问题: Configure fails when building with the
"implicit-function-declaration" error enabled, specifically on Mac.
解决方案: Declear the functions like in the source code. (suggestion by
Clemens Lang, closes #7380)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2057
问题: Getting the selection may trigger TextYankPost autocmd.
解决方案: Only trigger the autocommand when yanking in Vim, not for getting
the selection. (closes #7367)
文件: src/clipboard.c, src/normal.c, src/register.c,
src/testdir/test_autocmd.vim
Patch 8.2.2058
问题: Using mkview/loadview changes the jumplist.
解决方案: Use ":keepjumps". Don't let ":badd" or ":balt" change the
jumplist. (closes #7371)
文件: src/session.c, src/ex_docmd.c, src/testdir/test_mksession.vim
Patch 8.2.2059
问题: Amiga: can't find plugins.
解决方案: Do not use "**" in the pattern. (Ola Söder, closes #7384)
文件: src/main.c
Patch 8.2.2060
问题: Check for features implemented with "if".
解决方案: Use the Check commands. (Ken Takata, closes #7383)
文件: src/testdir/test_autocmd.vim, src/testdir/test_compiler.vim,
src/testdir/test_delete.vim, src/testdir/test_diffmode.vim,
src/testdir/test_expr.vim, src/testdir/test_fold.vim
Patch 8.2.2061
问题: Vim9: E1030 error when using empty string for term_sendkeys().
解决方案: Don't check for an invalid type unless the terminal can't be
found. (closes #7382)
文件: src/terminal.c, src/testdir/test_termcodes.vim
Patch 8.2.2062
问题: <Cmd> does not handle CTRL-V.
解决方案: Call get_literal() after encountering CTRL-V. (closes #7387)
文件: src/getchar.c, src/testdir/test_mapping.vim
Patch 8.2.2063
问题: Vim9: only one level of indexing supported.
解决方案: Handle more than one index in an assignment.
文件: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_assign.vim
Patch 8.2.2064
问题: terminal: cursor is on while redrawing, causing flicker.
解决方案: Switch the cursor off while redrawing. Always add the top and
left offset to the cursor position when not done already.
(closes #5943)
文件: src/terminal.c, src/popupwin.c
Patch 8.2.2065
问题: Using map() and filter() on a range() is inefficient.
解决方案: Do not materialize the range. (closes #7388)
文件: src/list.c, src/testdir/test_functions.vim
Patch 8.2.2066
问题: Vim9: assignment with += doesn't work.
解决方案: Do not see the "+" as an addition operator.
文件: src/eval.c, src/ex_docmd.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2067 (after 8.2.2064)
问题: Cursor position in popup terminal is wrong.
解决方案: Don't check the flags.
文件: src/terminal.c, src/testdir/test_popupwin.vim
Patch 8.2.2068
问题: Transparent syntax item uses start/end of containing region.
解决方案: Do not change the startpos and endpos of a transparent region to
that of its containing region. (Adrian Ghizaru, closes #7349,
closes #7391)
文件: src/syntax.c, src/testdir/test_syntax.vim
Patch 8.2.2069
问题: The quickfix window is not updated after setqflist().
解决方案: Update the quickfix buffer. (Yegappan Lakshmanan, closes #7390,
closes #7385)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.2070
问题: Can't get the exit value in VimLeave or VimLeavePre autocommands.
解决方案: Add v:exiting like in Neovim. (Yegappan Lakshmanan, closes #7395)
文件: runtime/doc/autocmd.txt, runtime/doc/eval.txt, src/evalvars.c,
src/main.c, src/testdir/test_exit.vim, src/vim.h
Patch 8.2.2071
问题: Vim9: list assign doesn't accept an empty remainder list.
解决方案: Recognize list assignment with ";".
文件: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2072
问题: Vim9: list assign not well tested.
解决方案: Test with different destinations. Fix white space error.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2073
问题: Vim9: for with unpack only works for local variables.
解决方案: Recognize different destinations.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2074
问题: Vim9: using :normal from Vim9 script can't handle range.
解决方案: Execute a :normal command in legacy script context. (closes #7401)
文件: src/structs.h, src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.2075
问题: Error for const argument to mapnew().
解决方案: Don't give an error. (closes #7400)
文件: src/list.c, src/testdir/test_filter_map.vim
Patch 8.2.2076
问题: MS-Windows console: sometimes drops typed characters.
解决方案: Do not wait longer than 10 msec for input. (issue #7164)
文件: src/os_win32.c
Patch 8.2.2077
问题: Build failure with small features.
解决方案: Add #ifdef.
文件: src/structs.h, src/ex_docmd.c
Patch 8.2.2078
问题: Illegal memory access when using :print on invalid text. (Dhiraj
Mishra)
解决方案: Check for more composing characters than supported. (closes #7399)
文件: src/message.c, src/testdir/test_utf8.vim
Patch 8.2.2079
问题: Vim9: cannot put a linebreak before or after "in" of ":for".
解决方案: Skip over linebreak.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2080
问题: Vim9: no proper error message for using s:var in for loop.
解决方案: Give a specific error.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2081
问题: Vim9: cannot handle a linebreak after "=" in assignment.
解决方案: Skip over linebreak. (closes #7407)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.2082
问题: Vim9: can still use the deprecated #{} dict syntax.
解决方案: Remove support for #{} in Vim9 script. (closes #7406, closes #7405)
文件: src/dict.c, src/proto/dict.pro, src/eval.c, src/vim9compile.c,
src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_popupwin.vim,
src/testdir/test_textprop.vim
Patch 8.2.2083
问题: Vim9: crash when using ":silent!" and getting member fails.
解决方案: Jump to on_fatal_error. (closes #7412)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2084
问题: CTRL-V U doesn't work to enter a Unicode character when
modifyOtherKeys is effective. (Ken Takata)
解决方案: Add a flag to get_literal() for the shift key. (closes #7413)
文件: src/edit.c, src/proto/edit.pro, src/ex_getln.c, src/getchar.c,
src/normal.c, src/testdir/test_termcodes.vim
Patch 8.2.2085
问题: Qt translation file is recognized as typescript.
解决方案: Check the first line for "<?xml". (closes #7418)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2086
问题: Libvterm tests are only run on Linux.
解决方案: Use static libraries. (Ozaki Kiichi, closes #7419)
文件: .travis.yml, src/Makefile, src/libvterm/Makefile,
src/libvterm/t/run-test.pl
Patch 8.2.2087
问题: Vim9: memory leak when statement is truncated.
解决方案: Increment the number of local variables.
文件: src/vim9compile.c
Patch 8.2.2088
问题: Vim9: script test sometimes fails.
解决方案: Unlet variables.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2089
问题: Libvterm test fails to build on Mac.
解决方案: Adjust configure to remove a space between -L and the path that
follows.
文件: src/configure.ac, src/auto/configure
Patch 8.2.2090
问题: Vim9: dict does not accept a key in quotes.
解决方案: Recognize a key in single or double quotes.
文件: runtime/doc/vim9.txt, src/dict.c, src/proto/dict.pro,
src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2091
问题: MS-Windows: build warnings.
解决方案: Add a #pragma to suppress the deprecation warning. (Ken Takata)
Avoid using a non-ASCII character. (closes #7421)
文件: src/message.c, src/os_win32.c
Patch 8.2.2092
问题: Vim9: unpredictable errors for script tests.
解决方案: Use a different script file name for each run.
文件: src/testdir/vim9.vim, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_quickfix.vim,
src/testdir/test_vim9_assign.vim
Patch 8.2.2093
问题: Vim9: script test sometimes fails.
解决方案: Do not find a script variable by its typval if the name was
cleared.
文件: src/vim9script.c
Patch 8.2.2094
问题: When an expression fails getting the next command may be wrong.
解决方案: Do not check for a next command after :eval fails. (closes #7415)
文件: src/eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2095
问题: Vim9: crash when failed dict member is followed by concatenation.
解决方案: Remove the dict from the stack. (closes #7416)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2096
问题: Vim9: command modifiers not restored after assignment.
解决方案: Jump to nextline instead of using continue.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2097
问题: Vim9: using :silent! when calling a function prevents aborting
that function.
解决方案: Add emsg_silent_def and did_emsg_def.
文件: src/globals.h, src/message.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2098
问题: Vim9: function argument of sort() and map() not tested.
解决方案: Add a couple of tests.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.2099
问题: Vim9: some checks are not tested.
解决方案: Add a few more tests. Give better error messages.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.2100
问题: Insufficient testing for function range and dict.
解决方案: Add a few tests. (Dominique Pellé, closes #7428)
文件: src/testdir/test_functions.vim, src/testdir/test_lambda.vim,
src/testdir/test_signals.vim, src/testdir/test_user_func.vim
Patch 8.2.2101
问题: Vim9: memory leak when literal dict has an error and when an
expression is not complete.
解决方案: Clear the typval and the growarray.
文件: src/dict.c, src/vim9compile.c
Patch 8.2.2102
问题: Vim9: not all error messages tested.
解决方案: Add a few test cases.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.2103
问题: Vim9: unreachable code.
解决方案: Remove the code to prepend s: to the variable name
文件: src/vim9compile.c
Patch 8.2.2104
问题: Build problem with Ruby 2.7.
解决方案: Adjust function declarations. (Ozaki Kiichi, closes #7430)
文件: src/configure.ac, src/auto/configure, src/if_ruby.c
Patch 8.2.2105
问题: Sound test is a bit flaky.
解决方案: Use WaitForAssert(). (Dominique Pellé, closes #7429)
文件: src/testdir/test_sound.vim
Patch 8.2.2106
问题: TOML files are not recognized.
解决方案: Match *.toml. (issue #7432)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2107
问题: Vim9: some errors not tested.
解决方案: Add tests. Fix getting the right error.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.2108
问题: Vim9: no test to check for :let error.
解决方案: Add a test. Rename tests from _let_ to _var_.
文件: src/testdir/test_vim9_assign.vim
Patch 8.2.2109
问题: "vim -" does not work well when modifyOtherKeys is enabled and a
shell command is executed on startup.
解决方案: Only change modifyOtherKeys when executing a shell command in raw
mode.
文件: src/os_unix.c
Patch 8.2.2110
问题: Cannot use ":shell" when reading from stdin. (Gary Johnson)
解决方案: Revert patch 8.2.1833.
文件: src/main.c
Patch 8.2.2111
问题: GTK: Menu background is the same color as the main window.
解决方案: Fix white space around the text in another way. (closes #7437,
closes #7427)
文件: src/gui_gtk_x11.c
Patch 8.2.2112
问题: Running tests may leave some files behind.
解决方案: Delete the right files. Fix a few typos. (Dominique Pellé,
closes #7436)
文件: src/testdir/test_filetype.vim, src/testdir/test_messages.vim,
src/testdir/test_mksession.vim
Patch 8.2.2113
问题: MS-Windows GUI: crash after using ":set guifont=" four times.
解决方案: Check for NULL pointer. (Ken Takata, closes #7434)
文件: src/gui_dwrite.cpp, src/testdir/test_gui.vim
Patch 8.2.2114
问题: Vim9: unreachable code in assignment.
解决方案: Remove impossible condition and code.
文件: src/vim9compile.c
Patch 8.2.2115
问题: Vim9: some errors not tested for; dead code.
解决方案: Add a test. Remove dead code.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2116
问题: MS-Windows GUI: test for 'guifont' is incomplete.
解决方案: Set 'renderoptions'. (Christian Brabandt)
文件: src/testdir/test_gui.vim
Patch 8.2.2117
问题: Some functions use any value as a string.
解决方案: Check that the value is a non-empty string.
文件: src/typval.c, src/proto/typval.pro, src/mbyte.c, src/filepath.c,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.2118
问题: Dead code in the job support. (Dominique Pellé)
解决方案: Define USE_ARGV before checking for it.
文件: src/job.c
Patch 8.2.2119
问题: GTK3: status line background color is wrong.
解决方案: Don't change the code for earlier GTK3 versions. (closes #7444)
文件: src/gui_gtk_x11.c
Patch 8.2.2120
问题: Not all Perl functionality is tested.
解决方案: Add a few more test cases. (Dominique Pellé, closes #7440)
文件: src/testdir/test_perl.vim
Patch 8.2.2121
问题: Internal error when using \ze before \zs in a pattern.
解决方案: Check the end is never before the start. (closes #7442)
文件: src/regexp_bt.c, src/regexp_nfa.c,
src/testdir/test_regexp_latin.vim
Patch 8.2.2122
问题: Vim9: crash when sourcing vim9script early.
解决方案: Use set_option_value() instead of setting p_cpo directly.
(closes #7441)
文件: src/scriptfile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2123
问题: After using a complete popup the buffer is listed. (Boris
Staletic)
解决方案: Make the buffer unlisted.
文件: src/popupmenu.c, src/testdir/test_popupwin.vim
Patch 8.2.2124
问题: Vim9: a range cannot be computed at runtime.
解决方案: Add the ISN_RANGE instruction.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2125 (after 8.2.2122)
问题: Vim9: leaking memory.
解决方案: Free the saved 'cpo' value.
文件: src/scriptfile.c
Patch 8.2.2126
问题: Ruby: missing function prototype.
解决方案: Add the prototype.
文件: src/if_ruby.c
Patch 8.2.2127
问题: Vim9: executing user command defined in Vim9 script not tested.
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2128
问题: There is no way to do something on CTRL-Z.
解决方案: Add VimSuspend and VimResume autocommand events. (closes #7450)
文件: runtime/doc/autocmd.txt, src/autocmd.c, src/ex_docmd.c,
src/normal.c, src/testdir/test_suspend.vim, src/vim.h
Patch 8.2.2129
问题: MS-Windows: Checking if a file name is absolute is slow.
解决方案: Do not use mch_FullName(). (closes #7033)
文件: src/os_mswin.c
Patch 8.2.2130
问题: Insert mode completion messages end up in message history.
解决方案: Set msg_hist_off. (closes #7452)
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.2131
问题: Vim9: crash when lambda uses same var as assignment.
解决方案: Do not let lookup_local change lv_from_outer, make a copy.
(closes #7461)
文件: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/evalvars.c, src/proto/evalvars.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.2132
问题: Padding not drawn properly for popup window with title.
解决方案: Draw the padding below the title. (closes #7460)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_longtitle_3.dump,
src/testdir/dumps/Test_popupwin_longtitle_4.dump
Patch 8.2.2133
问题: Vim9: checking for a non-empty string is too strict.
解决方案: Check for any string. (closes #7447)
文件: src/typval.c, src/proto/typval.pro, src/errors.h, src/filepath.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2134
问题: Vim9: get E1099 when autocmd triggered in builtin function.
解决方案: Check that did_emsg increased instead of checking that it changed.
(closes #7448)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2135
问题: Vim9: #{ still seen as start of dict in some places.
解决方案: Remove check for { after #. (closes #7456)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.2136
问题: Vim9: Using uninitialized variable.
解决方案: Initialize "len" to zero. Clean up fnamemodify().
文件: src/filepath.c
Patch 8.2.2137
问题: Vim9: :echo and :execute give error for empty argument.
解决方案: Ignore an empty argument. (closes #7468)
文件: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2138
问题: Vim9: "exit_cb" causes Vim to exit.
解决方案: Require white space after a command in Vim9 script. (closes #7467)
Also fix that Vim9 style heredoc was not always recognized.
文件: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_let.vim
Patch 8.2.2139
问题: Vim9: unreachable code in assignment.
解决方案: Don't check "new_local" when "has_index" is set. Add test for
wrong type of list index.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2140
问题: Build failure with tiny features.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.2141
问题: A user command with try/catch may not catch an expression error.
解决方案: When an expression fails check for following "|". (closes #7469)
文件: src/eval.c, src/testdir/test_trycatch.vim,
src/testdir/test_vimscript.vim
Patch 8.2.2142
问题: Memory leak when heredoc is not terminated.
解决方案: Free heredoc_trimmed.
文件: src/userfunc.c
Patch 8.2.2143
问题: Vim9: dead code in compiling :unlet.
解决方案: Don't check for "!" a second time.
文件: src/vim9compile.c
Patch 8.2.2144
问题: Vim9: some corner cases not tested.
解决方案: Add a few tests.
文件: src/testdir/test_vim9_script.vim, src/testdir/test_vim9_cmd.vim
Patch 8.2.2145
问题: Vim9: concatenating lists does not adjust type of result.
解决方案: When list member types differ use "any" member type.
(closes #7473)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2146
问题: Vim9: automatic conversion of number to string for dict key.
解决方案: Do not convert number to string. (closes #7474)
文件: src/dict.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2147
问题: Quickfix window title not updated in all tab pages.
解决方案: Update the quickfix window title in all tab pages. (Yegappan
Lakshmanan, closes #7481, closes #7466)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.2148
问题: Vim9: crash when user command doesn't match.
解决方案: Adjust command index. (closes #7479)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2149
问题: Popupwin test for latin1 sometimes fails.
解决方案: Wait for the script to finish.
文件: src/testdir/test_popupwin.vim
Patch 8.2.2150
问题: Github actions CI isn't used for all available platforms.
解决方案: Update the github workflows. (Ozaki Kiichi, closes #7433)
文件: .coveralls.yml, .github/workflows/ci-windows.yaml,
.github/workflows/ci.yml, .travis.yml, README.md,
ci/build-snd-dummy.sh, ci/setup-xvfb.sh
Patch 8.2.2151
问题: $dir not expanded when configure checks for moonjit.
解决方案: Use double quotes instead of single quotes. (closes #7478)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2152
问题: screenpos() does not include the WinBar offset.
解决方案: Use W_WINROW() instead of directly using w_window. (closes #7487)
文件: src/move.c, src/testdir/test_cursor_func.vim
Patch 8.2.2153
问题: Popupwin test for latin1 still fails sometimes.
解决方案: Wait for the "cat" command to finish.
文件: src/testdir/test_popupwin.vim
Patch 8.2.2154
问题: Popupwin test for terminal buffer fails sometimes.
解决方案: Wait for the prompt to appear.
文件: src/testdir/test_popupwin.vim
Patch 8.2.2155
问题: Warning from Github actions for code analysis.
解决方案: Remove the "git checkout HEAD^2" block.
文件: .github/workflows/codeql-analysis.yml
Patch 8.2.2156
问题: Github actions run on pushing a tag.
解决方案: Don't run CI on tag push. Omit coveralls on pull-request.
(Ozaki Kiichi, closes #7489)
文件: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml
Patch 8.2.2157
问题: Vim9: can delete a Vim9 script variable from a function.
解决方案: Check the variable is defined in Vim9 script. (closes #7483)
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2158
问题: CI on cirrus times out, coveralls doesn't always run.
解决方案: Set timeout to 20 minutes. Adjust condition. (closes #7493)
文件: .cirrus.yml, .github/workflows/ci.yml
Patch 8.2.2159
问题: Vim9: when declaring a list it is not allocated yet, causing a
following extend() to fail.
解决方案: When fetching a variable value for a list or dict that is null
allocate the list or dict, so it can be used. (closes #7491)
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2160
问题: Various typos.
解决方案: Fix spelling mistakes. (closes #7494)
文件: src/bufwrite.c, src/cindent.c, src/cmdexpand.c, src/eval.c,
src/ex_cmds.c, src/feature.h, src/getchar.c, src/gui_haiku.cc,
src/gui_xmdlg.c, src/help.c, src/if_ole.cpp, src/insexpand.c,
src/list.c, src/map.c, src/memline.c, src/normal.c,
src/os_win32.c, src/search.c, src/term.c,
src/testdir/test_arglist.vim, src/testdir/test_autocmd.vim,
src/testdir/test_debugger.vim, src/testdir/test_increment.vim,
src/testdir/test_menu.vim, src/testdir/test_netbeans.vim,
src/testdir/test_popupwin.vim, src/testdir/test_python2.vim,
src/testdir/test_python3.vim, src/testdir/test_sort.vim,
src/testdir/test_terminal2.vim, src/testdir/test_terminal3.vim,
src/testdir/test_vartabs.vim, src/testdir/test_vimscript.vim,
src/textprop.c, src/userfunc.c, src/vim9.h, src/vim9compile.c,
src/vim9execute.c
Patch 8.2.2161
问题: Arguments -T and -x not tested yet.
解决方案: Add a test. (Dominique Pellé, closes #7490)
文件: src/testdir/test_startup.vim
Patch 8.2.2162
问题: Vim9: Cannot load or store autoload variables.
解决方案: Add ISN_LOADAUTO and ISN_STOREAUTO. (closes #7485)
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/dict.c,
src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2163
问题: Crash when discarded exception is the current exception.
解决方案: Compare the exception with current_exception. (closes #7499)
文件: src/ex_eval.c
Patch 8.2.2164
问题: Vim9: autoload function doesn't work in script that starts with
an upper case letter.
解决方案: Check for the autoload character. (closes #7502)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.2165
问题: Vim9: assignment to dict member does not work.
解决方案: Fix recognizing dict member. (closes #7484)
文件: src/ex_docmd.c, src/eval.c, src/evalvars.c, src/vim.h
Patch 8.2.2166
问题: Auto format doesn't work when deleting text.
解决方案: Make "x" trigger auto format. (closes #7504)
文件: src/ops.c, src/testdir/test_textformat.vim
Patch 8.2.2167
问题: Vim9: assign test fails. (Elimar Riesebieter)
解决方案: Adjust the test for dict assignment.
文件: src/testdir/test_vim9_assign.vim
Patch 8.2.2168
问题: Vim9: error for assigning to dict of dict.
解决方案: Remember the destination type. (closes #7506)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2169
问题: Vim9: test leaves file behind.
解决方案: Rename script files. (Dominique Pellé, closes #7511)
Use try/finally.
文件: src/testdir/test_vim9_script.vim, src/testdir/vim9.vim
Patch 8.2.2170
问题: Vim9: a global function defined in a :def function fails if it
uses the context.
解决方案: Create a partial to store the closure context. (see #7410)
文件: src/userfunc.c, src/proto/userfunc.pro, src/vim9execute.c,
src/structs.h, src/testdir/test_vim9_func.vim
Patch 8.2.2171
问题: Valgrind warning for using uninitialized value.
解决方案: Do not use "startp" or "endp" unless there is a match.
文件: src/regexp_nfa.c
Patch 8.2.2172
问题: Vim9: number of arguments is not always checked. (Yegappan
Lakshmanan)
解决方案: Check number of arguments when calling function by name.
文件: src/userfunc.c, src/proto/userfunc.pro, src/vim9execute.c,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.2173
问题: Vim9: get internal error when assigning to undefined variable.
解决方案: Add error message. (closes #7475)
文件: src/vim9compile.c, src/vim9execute.c, src/errors.h,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2174
问题: Mac version doesn't specify the CPU architecture.
解决方案: Add "arm64" or "x86_64". (Yee Cheng Chin, closes #7519)
文件: src/version.c
Patch 8.2.2175
问题: Github actions: clang-11 handling suboptimal.
解决方案: Separate step of installing clang-11. Get ubuntu release name
dynamically. (Ozaki Kiichi, closes #7514)
文件: .github/workflows/ci.yml
Patch 8.2.2176
问题: Crash with a sequence of fold commands.
解决方案: Bail out when there are no folds at all. Add a test (Dominique
Pellé) (closes #7515)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.2177
问题: Pattern "^" does not match if the first character in the line is
combining. (Rene Kita)
解决方案: Do accept a match at the start of the line. (closes #6963)
文件: src/regexp_nfa.c, src/testdir/test_regexp_utf8.vim
Patch 8.2.2178
问题: Python 3: non-utf8 character cannot be handled.
解决方案: Change the string decode. (Björn Linse, closes #1053)
文件: src/if_py_both.h, src/if_python.c, src/if_python3.c,
src/testdir/test_python3.vim, src/testdir/test_python2.vim
Patch 8.2.2179
问题: Vim9: crash when indexing a dict with a number.
解决方案: Add ISN_STOREINDEX. (closes #7513)
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
src/errors.h, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2180
问题: Vim9: test for error after error is flaky.
解决方案: Wait for job to finish instead of a fixed delay.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2181
问题: Valgrind warnings for using uninitialized value.
解决方案: Do not use "start" or "end" unless there is a match.
文件: src/regexp_nfa.c, src/regexp_bt.c
Patch 8.2.2182
问题: Vim9: value of 'magic' is still relevant.
解决方案: Always behave like 'magic' is on in Vim9 script (closes #7509)
文件: src/option.c, src/proto/option.pro, src/arglist.c, src/buffer.c,
src/cmdexpand.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
src/insexpand.c, src/normal.c, src/search.c, src/tag.c,
src/structs.h, src/globals.h, src/ex_cmds.h,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2183
问题: Vim9: value of 'edcompatible' and 'gdefault' are used.
解决方案: Ignore these deprecated options in Vim9 script. (closes #7508)
文件: src/ex_cmds.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2184
问题: Vim9: no error when using "2" for a line number.
解决方案: Give an error message if the line number is invalid. (closes #7492)
文件: src/typval.c, src/evalfunc.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_cursor_func.vim
Patch 8.2.2185
问题: BufUnload is not triggered for the quickfix dummy buffer.
解决方案: Do trigger BufUnload. (Pontus Leitzler, closes #7518, closes #7517)
Fix white space around "=".
文件: src/quickfix.c, src/testdir/test_autocmd.vim
Patch 8.2.2186
问题: Vim9: error when using 'opfunc'.
解决方案: Do not expect a return value from 'opfunc'. (closes #7510)
文件: src/eval.c, src/proto/eval.pro, src/ops.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2187
问题: Python 3 test fails sometimes. (Christian Brabandt)
解决方案: Accept two SystemError messages.
文件: src/testdir/test_python3.vim
Patch 8.2.2188
问题: Vim9: crash when calling global function from :def function.
解决方案: Set the outer context. Define the partial for the context on the
original function. Use a refcount to keep track of which ufunc is
using a dfunc. (closes #7525)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9execute.c,
src/proto/vim9execute.pro, src/userfunc.c, src/proto/userfunc.pro,
src/structs.h, src/vim9.h, src/testdir/test_vim9_func.vim
Patch 8.2.2189
问题: Cannot repeat a command that uses the small delete register.
解决方案: Store the register name instead of the contents. (Christian
Brabandt, closes #7527)
文件: src/ops.c, src/register.c, src/testdir/test_registers.vim
Patch 8.2.2190
问题: Vim9: crash when compiled with EXITFREE.
解决方案: Check that df_ufunc is not NULL.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2191
问题: Vim9: using wrong name with lambda in nested function.
解决方案: Copy the lambda name earlier. (closes #7525)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2192
问题: Codecov on github actions fails.
解决方案: Revert to codecov script. (Ozaki Kiichi, closes #7529)
文件: Filelist, .github/workflows/ci.yml
Patch 8.2.2193
问题: Vim9: can change constant in :def function.
解决方案: Check if a variable is locked. (issue #7526)
文件: src/evalvars.c, src/proto/evalvars.pro, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2194
问题: Vim9: cannot use :const or :final at the script level.
解决方案: Support using :const and :final. (closes #7526)
文件: src/vim.h, src/evalvars.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2195
问题: Failing tests for :const.
解决方案: Add missing check for ASSIGN_FINAL.
文件: src/eval.c, src/evalvars.c, src/testdir/test_vim9_func.vim
Patch 8.2.2196
问题: :version output has extra spaces in compile and link command.
解决方案: Adjust QUOTESED. (closes #7505)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2197
问题: Assert arguments order reversed.
解决方案: Swap the arguments. (Christian Brabandt, closes #7531)
文件: src/testdir/test_registers.vim
Patch 8.2.2198
问题: ml_get error when resizing window and using text property.
解决方案: Validate botline of the right window. (closes #7528)
文件: src/move.c, src/proto/move.pro, src/textprop.c,
src/testdir/test_textprop.vim
Patch 8.2.2199
问题: First write after setting 'eol' does not have NL added. (Tomáš
Janoušek)
解决方案: Only use b_no_eol_lnum when doing a binary write. (closes #7535)
文件: src/bufwrite.c, src/testdir/test_writefile.vim
Patch 8.2.2200
问题: Vim9: lambda without white space around -> is confusing.
解决方案: Require white space in a :def function. (issue #7503)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2201
问题: Write file test fails on MS-Windows.
解决方案: Force edit after setting 'fileformat'.
文件: src/testdir/test_writefile.vim
Patch 8.2.2202
问题: Write file test still fails on MS-Windows.
解决方案: Set fileformat with the :edit command
文件: src/testdir/test_writefile.vim
Patch 8.2.2203
问题: Moodle gift files are not recognized.
解决方案: Add a filetype pattern. (Delim Temizer)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2204
问题: Vim9: using -> both for method and lambda is confusing.
解决方案: Use => for lambda in :def function.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/userfunc.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.2205
问题: Vim9: memory leak when parsing lambda fails.
解决方案: Clear growarrays.
文件: src/userfunc.c
Patch 8.2.2206
问题: :exe command line completion only works for first argument.
解决方案: Skip over text if more is following. (closes #7546)
文件: src/eval.c, src/testdir/test_cmdline.vim
Patch 8.2.2207
问题: Illegal memory access if popup menu items are changed while the
menu is visible. (Tomáš Janoušek)
解决方案: Make a copy of the text. (closes #7537)
文件: src/popupmenu.c, src/testdir/test_popup.vim,
src/testdir/dumps/Test_popup_command_04.dump,
src/testdir/dumps/Test_popup_command_05.dump
Patch 8.2.2208
问题: Vim9: after reloading a script variable index may be invalid.
解决方案: When the sequence number doesn't match give an error for using a
script-local variable from a compiled function. (closes #7547)
文件: src/vim9.h, src/structs.h, src/errors.h, src/vim9compile.c,
src/vim9execute.c, src/scriptfile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2209
问题: Vim9: return type of => lambda not parsed.
解决方案: Parse and use the return type.
文件: src/vim9compile.c, src/userfunc.c, src/vim9type.c,
src/proto/vim9type.pro, src/vim9script.c, src/eval.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.2210
问题: Vim9: allocating a type to set TTFLAG_BOOL_OK.
解决方案: Add t_number_bool.
文件: src/globals.h, src/vim9type.c, src/vim9compile.c
Patch 8.2.2211
问题: MS-Windows: can't load Python dll if not in the path.
解决方案: Use the InstallPath registry entry. (Kelvin Lee, closes #7540)
文件: src/if_python3.c
Patch 8.2.2212
问题: Vim9: lambda with => does not work at the script level.
解决方案: Make it work.
文件: src/eval.c, src/vim9type.c, src/userfunc.c,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.2213
问题: Checking white space around -> is not backwards compatible.
解决方案: Only check white space around =>.
文件: src/userfunc.c
Patch 8.2.2214
问题: ":e#" does not give a warning for missing white space.
解决方案: Adjust the check for white space. (closes #7545)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.2215
问题: Vim9: =expr not recognized in global command.
解决方案: Skip over pattern. (issue #7541)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2216
问题: Vim9: range with missing colon can be hard to spot.
解决方案: Include the start of the range in the error. (closes #7543)
文件: src/errors.h, src/ex_docmd.c, src/vim9compile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2217
问题: Vim9: command modifiers not restored in catch block.
解决方案: Restore command modifiers. (closes #7542)
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2218
问题: Vim9: failure if passing more arguments to a lambda than expected.
解决方案: Only put expected arguments on the stack. (closes #7548)
文件: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2219
问题: Vim9: method call with expression not supported.
解决方案: Implement expr->(expr)().
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2220
问题: Vim9: memory leak when parsing nested parenthesis.
解决方案: Clear newargs.
文件: src/userfunc.c
Patch 8.2.2221
问题: If <Down> is mapped on the command line 'wildchar' is inserted.
解决方案: Set KeyTyped when using 'wildchar'. (closes #7552)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.2222
问题: Vim9: cannot keep script variables when reloading.
解决方案: Add the "noclear" argument to :vim9script.
文件: runtime/doc/vim9.txt, src/structs.h, src/scriptfile.c,
src/vim9script.c, src/ex_cmds.h, src/ex_docmd.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2223
问题: Vim9: Reloading marks a :def function as deleted.
解决方案: Clear the function contents but keep the index.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2224
问题: Vim9: crash if script reloaded with different variable type.
解决方案: Check the type when accessing the variable.
文件: src/vim9execute.c, src/vim9compile.c, src/vim9.h, src/vim9type.c,
src/proto/vim9type.pro, src/errors.h, src/evalvars.c,
src/vim9script.c, src/proto/vim9script.pro,
src/testdir/test_vim9_script.vim
Patch 8.2.2225
问题: Vim9: error when using :import in legacy script twice.
解决方案: Make it possible to redefine an import when reloading.
文件: src/vim9script.c, src/proto/vim9script.pro, src/structs.h,
src/evalvars.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2226
问题: Vim9: script test fails.
解决方案: Add missing change.
文件: src/scriptfile.c
Patch 8.2.2227
问题: Vim9: recognizing lambda is too complicated.
解决方案: Call compile_lambda() and check for NOTDONE.
文件: src/vim9compile.c, src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2228
问题: Vim9: cannot use ":e #" because # starts a comment.
解决方案: Support using %% instead of #.
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2229
问题: build failure without the +eval feature.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.2230
问题: Vim9: insert completion runs into error.
解决方案: Insert colon before range. (closes #7556)
文件: src/insexpand.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2231
问题: When "--remote file" is used "file" is not reloaded.
解决方案: When a :drop command is used for a file that is already displayed
in a window and it has not been changed, check if it needs to be
reloaded. (closes #7560)
文件: src/ex_cmds.c, src/testdir/test_clientserver.vim
Patch 8.2.2232
问题: Compiler error for falling through into next case.
解决方案: Move FALLTHROUGH below the #endif
文件: src/ex_docmd.c
Patch 8.2.2233
问题: Cannot convert a byte index into a character index.
解决方案: Add charidx(). (Yegappan Lakshmanan, closes #7561)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/testdir/test_functions.vim
Patch 8.2.2234
问题: Command line wildmenu test often fails with Unix GUI.
解决方案: Skip the test where it is expected to fail.
文件: src/testdir/test_cmdline.vim
Patch 8.2.2235
问题: Build failure with some Ruby versions.
解决方案: Adjust the code for Ruby 3.0. (Ozaki Kiichi, closes #7564)
文件: ci/config.mk.clang.sed, src/if_ruby.c
Patch 8.2.2236
问题: 'scroll' option can change when setting the statusline or tabline
but the option context is not updated.
解决方案: Update the script context when the scroll option is changed as a
side effect. (Christian Brabandt, closes #7533)
文件: runtime/doc/options.txt, src/scriptfile.c,
src/testdir/test_options.vim, src/vim.h, src/window.c
Patch 8.2.2237
问题: CI on Mac fails in sed command.
解决方案: Set LC_ALL to "C". (Ozaki Kiichi, closes #7565)
文件: .github/workflows/ci.yml
Patch 8.2.2238
问题: Vim9: cannot load a Vim9 script without the +eval feature.
解决方案: Support Vim9 script syntax without the +eval feature.
文件: src/ex_docmd.c, src/vim9script.c, src/globals.h, src/main.c,
src/autocmd.c, src/buffer.c, src/structs.h, src/menu.c,
src/scriptfile.c, src/usercmd.c, src/proto.h, src/errors.h
Patch 8.2.2239
问题: Vim9: concatenating lines with backslash is inconvenient.
解决方案: Support concatenating lines starting with '|', useful for
:autocmd, :command, etc. (closes #6702)
文件: runtime/doc/vim9.txt, src/scriptfile.c, src/vim9script.c,
src/proto/vim9script.pro, src/vim9compile.c,
src/proto/vim9compile.pro, src/userfunc.c, src/structs.h,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2240
问题: Clientserver test fails if full path is used.
解决方案: Ignore the path preceding the file name.
文件: src/testdir/test_clientserver.vim
Patch 8.2.2241
问题: Build with Ruby and clang may fail.
解决方案: Adjust configure and sed script. (Ozaki Kiichi, closes #7566)
文件: ci/config.mk.clang.sed, src/auto/configure, src/configure.ac
Patch 8.2.2242
问题: Vim9: line continuation with bar does not work at script level.
解决方案: Check for Vim9 script.
文件: src/structs.h, src/ex_docmd.c, src/userfunc.c, src/scriptfile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2243
问题: Crash when popup mask contains zeroes.
解决方案: Check boundaries properly. (closes #7569)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.2244
问题: Crash when making the window width of the not-current window
negative.
解决方案: Make sure the window width is not negative. (closes #7568)
文件: src/window.c, src/testdir/test_window_cmd.vim
Patch 8.2.2245
问题: Vim9: return value of winrestcmd() cannot be executed.
解决方案: Put colons before each range. (closes #7571)
文件: src/evalwindow.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2246
问题: Cursor keys not recognized at the hit-Enter prompt after executing
an external command.
解决方案: Change the codes for the extra cursor keys. (closes #7562)
Tune the delays to avoid test flakiness.
文件: runtime/doc/term.txt, src/term.c, src/testdir/test_terminal3.vim
Patch 8.2.2247
问题: VMS: various smaller problems.
解决方案: Fix VMS building and other problems. (Zoltan Arpadffy)
文件: src/term.c, src/gui_gtk_vms.h, src/os_vms_conf.h, src/gui_x11.c,
src/Make_vms.mms, src/macros.h, src/gui.h, src/os_unix.h
Patch 8.2.2248
问题: ASAN error on exit with GUI.
解决方案: Check the window still has lines. (Christian Brabandt,
closes #7573)
文件: src/term.c
Patch 8.2.2249
问题: Termcodes test is flaky when used over ssh with X forwarding.
解决方案: Set 'mousetime' to a larger value. (Dominique Pellé, closes #7576,
closes #7563)
文件: src/testdir/test_termcodes.vim
Patch 8.2.2250
问题: Vim9: sublist is ambiguous.
解决方案: Require white space around the colon. (closes #7409)
文件: src/vim9compile.c, src/eval.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2251
问题: Test failures in legacy script.
解决方案: Check for Vim9 script.
文件: src/eval.c
Patch 8.2.2252
问题: Vim9: crash when using lambda without return type in dict.
解决方案: Without a return type use t_unknown. (closes #7587)
文件: src/vim9type.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2253
问题: Vim9: expr test fails.
解决方案: Add missing assignment.
文件: src/userfunc.c
Patch 8.2.2254
问题: Vim9: bool option type is number.
解决方案: Have get_option_value() return a different value for bool and
number options. (closes #7583)
文件: src/option.h, src/option.c, src/proto/option.pro, src/evalvars.c,
src/if_mzsch.c, src/if_ruby.c, src/spell.c, src/typval.c,
src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2255 (after 8.2.2254)
问题: Tcl test fails.
解决方案: Change option handling.
文件: src/if_tcl.c
Patch 8.2.2256
问题: Vim9: cannot use function( after line break in :def function.
解决方案: Check for "(" after "function". (closes #7581)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2257
问题: Vim9: using -> for lambda is ambiguous.
解决方案: Stop supporting ->, must use =>.
文件: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2258
问题: Not all OCaml related files are detected.
解决方案: Update OCaml file type detection. (Markus Mottl, closes #7590)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2259
问题: Test_Executable() fails when using chroot.
解决方案: Ignore the difference between "sbin" and "bin".
文件: src/testdir/test_functions.vim
Patch 8.2.2260
问题: Window resize test fails in very wide terminal.
解决方案: Resize using the 'columns' option. (Vladimir Lomov, closes #7592)
文件: src/testdir/test_window_cmd.vim
Patch 8.2.2261
问题: Vim9: boolean option gets string type.
解决方案: Check for VAR_BOOL. (closes #7588)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2262
问题: Vim9: converting bool to string prefixes v:.
解决方案: Do not use the v: prefix.
文件: src/evalvars.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2263
问题: Vim9: compilation error with try-catch in skipped block.
解决方案: Do not bail out when generate_instr() returns NULL. (closes #7584)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2264
问题: Vim9: no error for mismatched :endfunc or :enddef.
解决方案: Check for the mismatch. (issue #7582)
文件: src/errors.h, src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2265
问题: Error message for missing endfunc/enddef is last line.
解决方案: Report the line where the function starts. (closes #7582)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2266
问题: Vim9: it can be hard to see where white space is missing.
解决方案: Mention the text where the error was seen. (closes #7580)
文件: src/errors.h, src/eval.c, src/evalvars.c, src/userfunc.c,
src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2267
问题: Vim9: cannot use unlet for a dict member.
解决方案: Pass GLV_NO_DECL to get_lval(). (closes #7585)
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2268
问题: Vim9: list unpack seen as declaration.
解决方案: Check for "var". (closes #7594)
文件: src/vim9compile.c, src/evalvars.c, src/eval.c, src/vim.h,
src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2269
问题: Not all :hardcopy code covered by tests.
解决方案: Test more combinations. (Dominique Pellé, closes #7595)
文件: src/testdir/test_hardcopy.vim
Patch 8.2.2270
问题: Warning for size_t to int conversion. (Randall W. Morris)
解决方案: Add a type cast.
文件: src/vim9execute.c
Patch 8.2.2271
问题: ml_get error when changing hidden buffer in Python.
解决方案: Block updating folds. (closes #7598)
文件: src/evalbuffer.c, src/testdir/test_python3.vim
Patch 8.2.2272
问题: Vim9: extend() can violate the type of a variable.
解决方案: Add the type to the dictionary or list and check items against it.
(closes #7593)
文件: src/structs.h, src/evalvars.c, src/dict.c, src/list.c,
src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c,
src/vim9execute.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2273
问题: Build failure.
解决方案: Add missing changes to header file.
文件: src/vim9.h
Patch 8.2.2274
问题: badge for Travis is outdated.
解决方案: Update badge for move from travis-ci.org to travis-ci.com.
文件: README.md
Patch 8.2.2275
问题: CTRL-C not recognized in Mintty.
解决方案: Recognize the modifyOtherKeys code ending in "u". (Christian
Brabandt, closes #7575)
文件: src/ui.c
Patch 8.2.2276
问题: List of distributed files is outdated.
解决方案: Update the file list. Minor comment updates.
文件: Filelist, src/clipboard.c, src/fileio.c, src/option.c,
src/screen.c, src/testdir/test_signals.vim,
src/testdir/Make_vms.mms
Patch 8.2.2277
问题: Missing backslash.
解决方案: Add backslash.
文件: Filelist
Patch 8.2.2278
问题: Falling back to old regexp engine can some patterns.
解决方案: Do not fall back once [[:lower:]] or [[:upper:]] is used.
(Christian Brabandt, closes #7572)
文件: src/regexp.c, src/regexp_nfa.c, src/testdir/test_regexp_utf8.vim
Patch 8.2.2279
问题: Vim9: memory leak with catch in skipped block.
解决方案: Free the pattern if not used.
文件: src/vim9compile.c
Patch 8.2.2280
问题: Fuzzy matching doesn't give access to the scores.
解决方案: Return the scores with a third list. (Yegappan Lakshmanan,
closes #7596)
文件: runtime/doc/eval.txt, src/search.c,
src/testdir/test_matchfuzzy.vim
Patch 8.2.2281
问题: Vim9: compiled "wincmd" cannot be followed by bar.
解决方案: Check for bar after "wincmd". (closes #7599)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2282
问题: Length check mismatch with argument of strncmp(). (Christian
Brabandt)
解决方案: Adjust length check.
文件: src/ui.c
Patch 8.2.2283
问题: Vim9: crash when lambda has fewer arguments than expected.
解决方案: Don't check arguments when already failed. (closes #7606)
文件: src/vim9type.c, src/testdir/test_vim9_func.vim
Patch 8.2.2284
问题: Vim9: cannot set an option to a boolean value.
解决方案: Check for VAR_BOOL. (closes #7603)
文件: src/evalvars.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2285
问题: Vim9: cannot set an option to a false.
解决方案: For VAR_BOOL use string "0". (closes #7603)
文件: src/evalvars.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2286
问题: Sort test fails when locale is Canadian English. (Neil H Watson)
解决方案: Expect a different sort order. (closes #7609)
文件: src/testdir/test_sort.vim
Patch 8.2.2287
问题: Sort test fails when locale is French Canadian.
解决方案: Expect a different sort order. (Dominique Pellé, closes #7609)
文件: src/testdir/test_sort.vim
Patch 8.2.2288
问题: Vim9: line break and comment not always skipped.
解决方案: Skip over white space and then line break more consistently.
(closes #7610)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2289
问题: Vim9: 'cpo' can become empty.
解决方案: Use empty_option instead of an empty string. Update quickfix
buffer after restoring 'cpo'. (closes #7608)
文件: src/evalfunc.c, src/syntax.c, src/eval.c, src/quickfix.c,
src/evalbuffer.c, src/ex_eval.c, src/gui_motif.c, src/map.c,
src/testdir/test_quickfix.vim
Patch 8.2.2290
问题: Vim9: unlet of global variable cannot be compiled.
解决方案: Skip over variables that might be defined later. Give an error if
a subscript is found. (closes #7585)
文件: src/eval.c, src/vim9compile.c, src/vim.h,
src/testdir/test_vim9_assign.vim
Patch 8.2.2291
问题: Vim9: cannot use "null" for v:null.
解决方案: Support "null" like "true" and "false". (closes #7495)
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/evalvars.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.2292
问题: Vim: expr test fails.
解决方案: Add missing part of "null" support.
文件: src/eval.c
Patch 8.2.2293
问题: Build failure with Motif. (Tony Mechelynck)
解决方案: Use empty_option instead of empty_options.
文件: src/gui_motif.c
Patch 8.2.2294
问题: VMS: a few remaining problems.
解决方案: Add VMS specific changes. Add Lua support. (Zoltan Arpadffy)
文件: src/fileio.c, src/os_vms_conf.h, src/Make_vms.mms, src/macros.h,
src/os_vms.c, src/vim9execute.c, src/gui_xmebw.c, src/os_unix.h
Patch 8.2.2295
问题: Incsearch does not detect empty pattern properly.
解决方案: Return magic state when skipping over a pattern. (Christian
Brabandt, closes #7612, closes #6420)
文件: src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/globals.h,
src/option.c, src/tag.c, src/proto/regexp.pro, src/regexp.c,
src/search.c, src/structs.h, src/vim9compile.c,
src/testdir/dumps/Test_incsearch_sub_01.dump,
src/testdir/dumps/Test_incsearch_sub_02.dump,
src/testdir/test_search.vim
Patch 8.2.2296
问题: Cannot use CTRL-N and CTRL-P in a popup menu.
解决方案: Use CTRL-N like <Down> and CTRL-P like <Up>. (closes #7614)
文件: runtime/doc/popup.txt, src/popupwin.c,
src/testdir/test_popupwin.vim
Patch 8.2.2297
问题: Vim9: cannot set 'number' to a boolean value.
解决方案: Use tv_get_bool(). (closes #7615)
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2298
问题: Vim9: comment right after "(" of function not recognized.
解决方案: Do not skip over white space before calling get_function_args().
(closes #7613)
文件: src/userfunc.c, src/proto/userfunc.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.2299
问题: Vim9: invalid memory access making error message flaky.
解决方案: Do not check cmd_argt for CMD_USER. (issue #7467)
文件: src/ex_docmd.c, src/vim9execute.c, src/errors.h,
src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2300
问题: Vim9: wrong order on type stack when using dict.
解决方案: Generate constants before a dict. (closes #7619)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2301
问题: Vim9: cannot unlet a dict or list item.
解决方案: Add ISN_UNLETINDEX. Refactor assignment code to use for unlet.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.2302
问题: Vim9: using an option value may use uninitialized memory.
解决方案: Clear v_lock. (closes #7620)
文件: src/typval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2303
问题: Vim9: backtick expansion doesn't work for :foldopen.
解决方案: Do recognize backtick expansion. (closes #7621)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2304
问题: Vim9: no test for unletting an imported variable.
解决方案: Add a test. Fix line number in error.
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2305
问题: Vim9: "++var" and "--var" are silently accepted.
解决方案: Give an error message.
文件: src/vim9compile.c, src/eval.c, src/proto/eval.pro,
src/testdir/test_vim9_expr.vim
Patch 8.2.2306
问题: Vim9: when using function reference type is not checked.
解决方案: When using a function reference lookup the type and check the
argument types. (issue #7629)
文件: src/userfunc.c, src/proto/userfunc.pro, src/eval.c, src/structs.h,
src/vim9type.c, src/proto/vim9type.pro, src/vim9compile.c,
src/vim9execute.c, src/evalvars.c, src/evalfunc.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2307
问题: A shell command in the vimrc causes terminal output.
解决方案: Do not call starttermcap() after a shell command if the termcap
wasn't active before.
文件: src/ex_cmds.c
Patch 8.2.2308
问题: Vim9: no error when assigning lambda to funcref without return
value.
解决方案: Default return value to "any". (closes #7629)
文件: src/userfunc.c, src/vim9compile.c,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_func.vim
Patch 8.2.2309
问题: 0o777 not recognized as octal.
解决方案: Use vim_isodigit(). (Ken Takata, closes #7633, closes #7631)
文件: src/charset.c, src/testdir/test_eval_stuff.vim
Patch 8.2.2310
问题: Vim9: winsaveview() return type is too generic.
解决方案: use dict<number> instead of dict<any>. (closes #7626)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2311
问题: Vim9: cannot assign to a variable that shadows a command modifier.
解决方案: Check for assignment after possible command modifier.
(closes #7632)
文件: src/vim9compile.c, src/ex_docmd.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.2312
问题: Build failure with Ruby 3.0 and 32 bits.
解决方案: Add #ifdef. (closes #7638)
文件: src/if_ruby.c
Patch 8.2.2313
问题: Vim9: using uninitialized field when parsing range. ":silent!" not
respected when parsing range fails.
解决方案: Initialize ea.skip. On pattern failure handle it like an error.
(closes #7636)
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2314
问题: Vim9: returning zero takes two instructions.
解决方案: Add ISN_RETURN_ZERO.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2315
问题: Vim9: "enddef" as dict key misinterpreted as function end.
解决方案: Check for following colon. (closes #7640)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2316
问题: Vim9: cannot list a lambda function.
解决方案: Support the <lambda>9 notation, like :disassemble. (closes #7634)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2317
问题: Vim9: command modifier before list unpack doesn't work.
解决方案: Only recognize "[" directly after the name. (closes #7641)
文件: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2318
问题: Vim9: string and list index work differently.
解决方案: Make string index work like list index. (closes #7643)
文件: src/eval.c, src/proto/eval.pro, src/vim9execute.c, src/list.c,
src/proto/vim9execute.pro, src/testdir/test_vim9_expr.vim
Patch 8.2.2319
问题: "exptype_T" can be read as "expected type".
解决方案: Rename to "exprtype_T", expression type.
文件: src/eval.c, src/typval.c, src/proto/typval.pro, src/vim9compile.c,
src/proto/vim9compile.pro, src/vim9execute.c, src/structs.h,
src/vim9.h
Patch 8.2.2320
问题: Vim9: no error for comparing bool with string.
解决方案: Check for wrong types when comparing. (closes #7639)
文件: src/typval.c, src/errors.h, src/testdir/test_vim9_expr.vim
Patch 8.2.2321
问题: Vim9: cannot nest closures.
解决方案: Add the nesting level to ISN_LOADOUTER and ISN_STOREOUTER.
(closes #7150, closes #7635)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/structs.h,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2322
问题: Vim9: closure nested limiting to one level.
解决方案: Add outer_T. Also make STOREOUTER work.
文件: src/vim9execute.c, src/vim9.h, src/structs.h,
src/testdir/test_vim9_func.vim
Patch 8.2.2323
问题: Vim9: error when inferring type from empty dict/list.
解决方案: When the member is t_unknown use t_any. (closes #7009)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2324
问题: Not easy to get mark en cursor position by character count.
解决方案: Add functions that use character index. (Yegappan Lakshmanan,
closes #7648)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/eval.c,
src/evalfunc.c, src/proto/eval.pro, src/tag.c,
src/testdir/test_cursor_func.vim, src/typval.c
Patch 8.2.2325
问题: Vim9: crash if map() changes the item type.
解决方案: Check that the item type is still OK. (closes #7652)
Fix problem with mapnew() on range list.
文件: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
src/list.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
Patch 8.2.2326
问题: Build error with +eval feature but without +spell.
解决方案: Adjust #ifdef. (John Marriott)
文件: src/mbyte.c
Patch 8.2.2327
问题: Debugging code included.
解决方案: Remove the debugging code.
文件: src/vim9execute.c
Patch 8.2.2328
问题: Some test files may not be deleted.
解决方案: Add a delete() call, correct name. (Dominique Pellé, closes #7654)
文件: src/testdir/test_clientserver.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2329
问题: Not all ways Vim can be started are tested.
解决方案: Add a test for different program names. (Dominique Pellé,
closes #7651)
文件: src/testdir/test_startup.vim
Patch 8.2.2330
问题: Vim9: crash when using :trow in a not executed block.
解决方案: Don't generate the instruction when skipping. (closes #7659)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2331
问题: Vim9: wrong error when modifying dict declared with :final.
解决方案: Do not check for writable variable when an index follows.
(closes #7657)
文件: src/vim9compile.c, src/structs.h, src/vim9script.c,
src/proto/vim9script.pro, src/evalvars.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.2332
问题: Vim9: missing :endif not reported when using :windo.
解决方案: Pass a getline function to do_cmdline(). (closes #7650)
文件: src/vim9execute.c, src/structs.h, src/scriptfile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2333
问题: Vim9: warning for uninitialized variable. (Tony Mechelynck)
解决方案: Initialize "res".
文件: src/vim9execute.c
Patch 8.2.2334
问题: Pascal-like filetypes not always detected.
解决方案: Improved Puppet, InstantFPC and Pascal detection. (Doug Kearns,
closes #7662)
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
runtime/scripts.vim, src/testdir/test_filetype.vim
Patch 8.2.2335
问题: Vim9: "silent return" does not restore command modifiers.
解决方案: Restore command modifiers before returning. (closes #7649)
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.2336
问题: Vim9: it is not possible to extend a dictionary with different
item types.
解决方案: Add extendnew(). (closes #7666)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/list.c, src/proto/list.pro, src/testdir/test_listdict.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2337
问题: Configure test for GTK only says "no". (Harm te Hennepe)
解决方案: Hint that a -def package is needed. (closes #5229)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2338
问题: Vim9: no error if using job_info() result wrongly.
解决方案: Adjust return type on number of arguments. (closes #7667)
文件: src/evalfunc.c, src/globals.h, src/testdir/test_vim9_builtin.vim
Patch 8.2.2339
问题: Cannot get the type of a value as a string.
解决方案: Add typename().
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/vim9type.c, src/proto/vim9type.pro,
src/testdir/test_vimscript.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.2340
问题: win_execute() unexpectedly returns number zero when failing.
解决方案: Return an empty string. (closes #7665)
文件: src/evalwindow.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_execute_func.vim
Patch 8.2.2341
问题: Expression command line completion shows variables but not
functions after "g:". (Gary Johnson)
解决方案: Prefix "g:" when needed to a global function.
文件: src/evalfunc.c, src/evalvars.c, src/proto/evalvars.pro,
src/testdir/test_cmdline.vim
Patch 8.2.2342
问题: "char" functions return the wrong column in Insert mode when the
cursor is beyond the end of the line.
解决方案: Compute the column correctly. (Yegappan Lakshmanan, closes #7669)
文件: src/eval.c, src/evalfunc.c, src/testdir/test_cursor_func.vim
Patch 8.2.2343
问题: Vim9: return type of readfile() is any.
解决方案: Add readblob() so that readfile() can be expected to always
return a list of strings. (closes #7671)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/filepath.c, src/proto/filepath.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2344
问题: Using inclusive index for slice is not always desired.
解决方案: Add the slice() method, which has an exclusive index. (closes
#7408)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/eval.c, src/proto/eval.pro, src/vim9execute.c,
src/proto/vim9execute.pro, src/list.c, src/proto/list.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2345
问题: No focus events in a terminal.
解决方案: Add the t_fd and t_fe termcap entries and implement detecting
focus events. (Hayaki Saito, Magnus Groß, closes #7673,
closes #609, closes #5526)
文件: runtime/doc/term.txt, src/optiondefs.h, src/term.c, src/term.h
Patch 8.2.2346
问题: Codecov reports every little coverage drop.
解决方案: Tolerate a 0.05% drop. Hide the appveyor config file. (Ozaki
Kiichi, closes #7678)
文件: .appveyor.yml, appveyor.yml, .codecov.yml
Patch 8.2.2347
问题: Build failure without GUI.
解决方案: Add #ifdef.
文件: src/term.c
Patch 8.2.2348 (after 8.2.2345)
问题: No check for modified files after focus gained. (Mathias Stearn)
解决方案: Call ui_focus_change().
文件: src/term.c, src/ui.c
Patch 8.2.2349
问题: Vim9: cannot handle line break after parenthesis at line end.
解决方案: Skip over line break. (closes #7677)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2350
问题: Using "void" for no reason.
解决方案: Use "char *".
文件: src/ex_docmd.c
Patch 8.2.2351
问题: Vim9: error message for "throw" in function that was called with
"silent!".
解决方案: Do not throw the exception when not caught or displayed.
(closes #7672)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.2352
问题: If the focus lost/gained escape sequence is received twice it is
not ignored. (Christ van Willegen)
解决方案: Adjust the logic to ignore the escape code.
文件: src/term.c
Patch 8.2.2353
问题: Sparql files are not detected.
解决方案: Add the sparql filetype. (closes #7679)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2354
问题: Crash with a weird combination of autocommands.
解决方案: Increment b_nwindows when needed. (closes #7674)
文件: src/ex_cmds.c, src/buffer.c, src/proto/buffer.pro,
src/testdir/test_autocmd.vim
Patch 8.2.2355
问题: Stray test failure on Appveyor.
解决方案: Finish insert command.
文件: src/testdir/test_autocmd.vim
Patch 8.2.2356
问题: Vim9: ":put =expr" does not handle a list properly.
解决方案: Use the same logic as eval_to_string_eap(). (closes #7684)
文件: src/vim9execute.c, src/eval.c, src/proto/eval.pro,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2357
问题: Vim9: crash when parsing function return type fails.
解决方案: Bail out and set return type to "unknown". (closes #7685)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2358
问题: Wrong #ifdef for use_xterm_like_mouse().
解决方案: Use FEAT_MOUSE_XTERM.
文件: src/term.c
Patch 8.2.2359
问题: Strange test failure with MS-Windows.
解决方案: Skip the system() call for now.
文件: src/testdir/test_autocmd.vim
Patch 8.2.2360
问题: Test leaves file behind.
解决方案: Delete the right file. (Dominique Pellé, closes #7689)
文件: src/testdir/test_filetype.vim
Patch 8.2.2361
问题: Vim9: no highlight for "s///gc" when using 'opfunc'.
解决方案: Reset 'lazyredraw' temporarily. (closes #7687)
文件: src/ex_cmds.c
Patch 8.2.2362
问题: Vim9: check of builtin function argument type is incomplete.
解决方案: Use need_type() instead of check_arg_type().
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/evalfunc.c,
src/proto/evalfunc.pro, src/vim9type.c, src/proto/vim9type.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2363
问题: curpos() does not accept a string argument as before.
solution: Make a string argument work again. (Yegappan Lakshmanan,
closes #7690)
文件: src/evalfunc.c, src/testdir/test_cursor_func.vim
Patch 8.2.2364
问题: Vim9: line break in lambda accesses freed memory.
解决方案: Make a copy of the return type. (closes #7664)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2365
问题: Vim9: no check for map() changing item type at script level.
解决方案: Check the new value type.
文件: src/list.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_assign.vim
Patch 8.2.2366
问题: When using ":sleep" the cursor is always displayed.
解决方案: Do not display the cursor when using ":sleep!". (Jeremy Lerner,
closes #7688)
文件: runtime/doc/index.txt, runtime/doc/various.txt, src/ex_cmds.h,
src/ex_docmd.c, src/normal.c, src/proto/ex_docmd.pro, src/term.c,
src/testdir/Make_all.mak, src/testdir/test_sleep.vim
Patch 8.2.2367
问题: Test failures on some less often used systems.
解决方案: Adjust printf formats and types. (James McCoy, closes #7691)
文件: src/errors.h, src/evalfunc.c, src/list.c, src/vim9execute.c
Patch 8.2.2368
问题: Insufficient tests for setting options.
解决方案: Add a few tests. (Dominique Pellé, closes #7695)
文件: src/testdir/test_options.vim
Patch 8.2.2369
问题: Vim9: functions return true/false but can't be used as bool.
解决方案: Add ret_number_bool(). (closes #7693)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2370
问题: Vim9: command fails in catch block.
解决方案: Reset force_abort and need_rethrow. (closes #7692)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.2371
问题: Vim9: crash when using types in :for with unpack.
解决方案: Check for skip_var_list() failing. Pass include_type to
skip_var_one(). Skip type when compiling. (closes #7694)
文件: src/vim9compile.c, src/evalvars.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2372 (after 8.2.2371)
问题: Confusing error message for wrong :let command.
解决方案: Only check for type in Vim9 script.
文件: src/evalvars.c
Patch 8.2.2373
问题: Vim9: list assignment only accepts a number index.
解决方案: Accept "any" and do a runtime type check. (closes #7694)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2374
问题: Accessing uninitialized memory in test_undo.
解决方案: Do not look in typebuf.tb_buf if it is empty. (Dominique Pellé,
closes #7697)
文件: src/edit.c
Patch 8.2.2375
问题: Test for RGB color skipped in the terminal.
解决方案: Run the GUI if possible.
文件: src/testdir/test_highlight.vim
Patch 8.2.2376
问题: Vim9: crash when dividing by zero in compiled code using
constants.
解决方案: Call num_divide() and num_modulus(). (closes #7704)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2377
问题: Vim9: crash when using a range after another expression.
解决方案: Set the variable type to number. Fix using :put with a range and
the "=" register. (closes #7706)
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2378
问题: Vim9: no error message for dividing by zero.
解决方案: Give an error message. (issue #7704)
文件: src/errors.h, src/eval.c, src/vim9execute.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.2379
问题: Finding spell suggestions twice if 'spellsuggest' contains number.
解决方案: Only do internal suggestions once. (closes #7713)
文件: src/spellsuggest.c
Patch 8.2.2380
问题: Vim9: occasional crash when using try/catch and a timer.
解决方案: Save and restore "need_rethrow" when invoking a timer callback.
(closes #7708)
文件: src/time.c
Patch 8.2.2381
问题: Vim9: divide by zero does not abort expression execution.
解决方案: Use a "failed" flag. (issue #7704)
文件: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/vim9compile.c,
src/testdir/vim9.vim, src/testdir/test_vim9_assign.vim
Patch 8.2.2382 (after 8.2.2381)
问题: Build failure.
解决方案: Add missing changes.
文件: src/vim9execute.c
Patch 8.2.2383
问题: Focus escape sequences are not named in ":set termcap" output.
解决方案: Add the names to the list. (closes #7718)
文件: src/misc2.c
Patch 8.2.2384
问题: Turtle filetype not recognized.
解决方案: Add a rule to detect turtle files. (closes #7722)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2385
问题: "gj" and "gk" do not work correctly when inside a fold.
解决方案: Move check for folding. (closes #7724, closes #4095)
文件: src/normal.c, src/testdir/test_fold.vim
Patch 8.2.2386
问题: Vim9: crash when using ":silent! put".
解决方案: When ignoring an error for ":silent!" rewind the stack and skip
ahead to restoring the cmdmod. (closes #7717)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2387
问题: Runtime type check does not mention argument index.
解决方案: Add ct_arg_idx. (closes #7720)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2388
问题: No easy way to get the maximum or minimum number value.
解决方案: Add v:numbermax and v:numbermin.
文件: src/evalvars.c, src/vim.h, src/testdir/test_eval_stuff.vim,
runtime/doc/eval.txt
Patch 8.2.2389
问题: Test failure on a few systems.
解决方案: Avoid that "char" value is negative.
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h
Patch 8.2.2390
问题: Vim9: using positive offset is unexpected.
解决方案: Use int8_T instead of char. (James McCoy)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c
Patch 8.2.2391
问题: Memory leak when creating a global function with closure.
解决方案: Create a separate partial for every instantiated function.
文件: src/userfunc.c, src/vim9execute.c
Patch 8.2.2392
问题: Fennel filetype not recognized.
解决方案: Detect with pattern and hashbang. (Chinmay Dalal, closes #7729)
文件: runtime/filetype.vim, runtime/scripts.vim,
src/testdir/test_filetype.vim
Patch 8.2.2393
问题: Vim9: error message when script line starts with "[{".
解决方案: Do not give an error for checking for end of list.
文件: src/dict.c, src/testdir/test_vim9_script.vim
Patch 8.2.2394
问题: Vim9: min() and max() return type is "any".
解决方案: Use return type "number". (closes #7728)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2395
问题: Vim9: error for wrong type may report wrong line number.
解决方案: Save and restore the line number when evaluating the expression.
(closes #7727)
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2396
问题: Vim9: no white space allowed before "->".
解决方案: Allow for white space. (closes #7725)
文件: src/ex_docmd.c, src/eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2397
问题: Vim9: "%%" not seen as alternate file name for commands with a
buffer name argument.
解决方案: Recognize "%%" like "#". (closes #7732)
文件: src/buffer.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2398 (after 8.2.2396)
问题: Method test fails.
解决方案: Adjust test for allowed white space.
文件: src/testdir/test_method.vim
Patch 8.2.2399 (after 8.2.2385)
问题: Fold test fails in wide terminal.
解决方案: Adjust the test. (Dominique Pelle, closes #7731, closes #7739)
文件: src/testdir/test_fold.vim
Patch 8.2.2400
问题: Vim9: compiled functions are not profiled.
解决方案: Add initial changes to profile compiled functions. Fix that a
script-local function was hard to debug.
文件: runtime/doc/repeat.txt, src/vim9.h, src/vim9compile.c,
src/vim9execute.c, src/userfunc.c, src/proto/vim9compile.pro,
src/structs.h, src/vim9type.c, src/debugger.c, src/ex_cmds.h,
src/ex_docmd.c, src/profiler.c, src/proto/profiler.pro,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_profile.vim
Patch 8.2.2401
问题: Build fails without +profiling feature.
解决方案: Add #ifdefs.
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/structs.h,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2402
问题: Some filetypes not detected.
解决方案: Detect Ruby Signature and Puppet related files. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2403
问题: Vim9: profiling if/elseif/endif not correct.
解决方案: Add profile instructions. Fix that "elseif" was wrong.
文件: src/vim9compile.c, src/testdir/test_profile.vim,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2404
问题: Vim9: profiling try/catch not correct.
解决方案: Add profile instructions. Fix that "entry" did not rethrow an
exception.
文件: src/vim9compile.c, src/vim9execute.c, src/testdir/test_profile.vim
Patch 8.2.2405
问题: Vim9: no need to allow white space before "(" for :def.
解决方案: Give an error for stray white space. (issue #7734)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2406
问题: Vim9: profiled :def function leaks memory.
解决方案: Delete the profiled instructions.
文件: src/vim9compile.c
Patch 8.2.2407
问题: Old jumplist code is never used.
解决方案: Delete the dead code. (Yegappan Lakshmanan, closes #7740)
文件: src/mark.c
Patch 8.2.2408
问题: MinGW: "--preprocessor" flag no longer supported.
解决方案: Remove the flag, use the defaults. (Christopher Wellons,
closes #7741)
文件: src/GvimExt/Make_ming.mak, src/Make_cyg_ming.mak
Patch 8.2.2409
问题: Vim9: profiling only works for one function.
解决方案: Select the right instructions when calling and returning.
(closes #7743)
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
src/testdir/test_profile.vim
Patch 8.2.2410
问题: Build failure without the +profiling feature.
解决方案: Add dummy argument to macro.
文件: src/vim9.h
Patch 8.2.2411
问题: Profile test fails on MS-Windows.
解决方案: Do the profiling in a separate Vim command.
文件: src/testdir/test_profile.vim
Patch 8.2.2412
问题: Not all fields in "cstack" are initialized which might cause a
crash.
解决方案: Use CLEAR_FIELD().
文件: src/ex_docmd.c
Patch 8.2.2413
问题: Crash when using :all while using a cmdline window. (Zdenek Dohnal)
解决方案: Disallow :all from the cmdline window.
文件: src/arglist.c, src/ex_getln.c, src/testdir/test_arglist.vim
Patch 8.2.2414
问题: Using freed memory when closing the cmdline window.
解决方案: Check the window is still valid.
文件: src/ex_getln.c
Patch 8.2.2415
问题: No way to check for the cmdwin feature, cmdline_hist is now always
enabled.
解决方案: Add has('cmdwin') support. Skip arglist test on Windows
temporarily.
文件: runtime/doc/cmdline.txt, src/evalfunc.c,
src/testdir/test_autocmd.vim, src/testdir/test_arglist.vim,
src/testdir/test_cmdline.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_normal.vim, src/testdir/test_tabpage.vim,
src/testdir/test_termcodes.vim, src/testdir/test_window_cmd.vim
Patch 8.2.2416
问题: May get stuck in command line window state.
解决方案: Reset "cmdwin_type" when editing buffer fails. Make arglist test
pass on MS-Windows.
文件: src/ex_getln.c, src/testdir/test_arglist.vim
Patch 8.2.2417
问题: Condition stack values may be used when not set.
解决方案: Clear cs_script_var_len and cs_block_id just in case they get used
later. (issue #7733)
文件: src/ex_eval.c
Patch 8.2.2418
问题: Color not changed if ModeMsg highlight is set in InsertEnter
autocmd event. (Paul Swanson)
解决方案: Call highlight_changed() after triggering InsertEnter.
(closes #7751)
文件: src/edit.c
Patch 8.2.2419
问题: Autocmd test was failing on MS-Windows with GUI.
解决方案: Remove stray feedkeys().
文件: src/testdir/test_autocmd.vim
Patch 8.2.2420
问题: Too many problems with using all autocommand events.
解决方案: Disallow defining an autocommand for all events.
文件: src/autocmd.c, src/errors.h, src/testdir/test_autocmd.vim,
src/testdir/test_quickfix.vim, src/testdir/test_window_cmd.vim
Patch 8.2.2421
问题: Double free when using autocommand with "argdel". (Houyunsong)
解决方案: Add the arglist_locked flag.
文件: src/arglist.c, src/testdir/test_autocmd.vim
Patch 8.2.2422
问题: Crash when deleting with line number out of range. (Houyunsong)
解决方案: Avoid using a negative line number.
文件: src/normal.c, src/testdir/test_ex_mode.vim
Patch 8.2.2423 (after 8.2.2422)
问题: Missing error message.
解决方案: Add the error message.
文件: src/errors.h
Patch 8.2.2424
问题: Some tests are known to cause an error with ASAN.
解决方案: Add CheckNotAsan.
文件: src/testdir/check.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_memory_usage.vim, src/testdir/test_ex_mode.vim
Patch 8.2.2425
问题: Cursor on invalid line with range and :substitute.
解决方案: Do not move the cursor when skipping commands. (closes #3434)
文件: src/ex_cmds.c, src/testdir/test_eval_stuff.vim
Patch 8.2.2426
问题: Allowing 'completefunc' to switch windows causes trouble.
解决方案: use "textwinlock" instead of "textlock".
文件: src/insexpand.c, src/testdir/test_ins_complete.vim,
src/testdir/test_popup.vim
Patch 8.2.2427
问题: Can still switch windows for 'completefunc'.
解决方案: Also disallow switching windows for other completions.
文件: src/insexpand.c, src/testdir/test_ins_complete.vim,
src/testdir/test_popup.vim
Patch 8.2.2428
问题: FocusGained does not work when 'ttymouse' is empty.
解决方案: Don't use the short mouse code if there is a longer matching code.
(closes #7755) Add a test.
文件: src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.2429
问题: :goto does not work correctly with text properties. (Sam McCall)
解决方案: Add a test. (Andrew Radev) Also use the text property size when
computing the remaining offset. (closes #5930)
文件: src/memline.c, src/testdir/test_textprop.vim
Patch 8.2.2430
问题: :vimgrep expands wildcards twice.
解决方案: Do not expand wildcards a second time.
文件: src/quickfix.c, src/arglist.c, src/testdir/test_quickfix.vim
Patch 8.2.2431
问题: Warning for -fno-strength-reduce with Clang 11.
解决方案: Adjust check for clang version number.
文件: src/configure.ac, src/auto/configure
Patch 8.2.2432
问题: Libvterm tests are executed even when libtool doesn't work.
解决方案: Only run libvterm tests if /usr/bin/gcc exists.
文件: src/Makefile
Patch 8.2.2433
问题: Opening cmdline window gives error in BufLeave autocommand.
解决方案: Reset cmdwin_type when triggering the autocommand.
文件: src/ex_cmds.c, src/testdir/test_cmdline.vim
Patch 8.2.2434
问题: Vim9: no error when compiling str2nr() with a number.
解决方案: Add argument type checks. (closes #7759)
文件: src/evalfunc.c, src/typval.c, src/proto/typval.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2435
问题: setline() gives an error for some types.
解决方案: Allow any type, convert each item to a string.
文件: runtime/doc/eval.txt, src/evalbuffer.c, src/typval.c,
src/proto/typval.pro, src/debugger.c, src/vim9execute.c,
src/testdir/test_bufline.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.2436
问题: Vim9 script test is a bit flaky.
解决方案: Wait longer for exit callback.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2437
问题: Deprecation warnings with default configuration.
解决方案: Add -Wno-deprecated-declarations.
文件: src/configure.ac, src/auto/configure
Patch 8.2.2438
问题: Out of bounds compiler warning.
解决方案: Increase the size of uf_name.
文件: src/structs.h
Patch 8.2.2439
问题: Not easy to figure out what packages to get when installing Vim on
a new Ubuntu system.
解决方案: Mention explicit commands that are easy to follow.
文件: src/INSTALL
Patch 8.2.2440
问题: Documentation based on patches is outdated.
解决方案: Add changes to documentation in a patch.
文件: runtime/doc/arabic.txt, runtime/doc/autocmd.txt,
runtime/doc/change.txt, runtime/doc/channel.txt,
runtime/doc/cmdline.txt, runtime/doc/debugger.txt,
runtime/doc/develop.txt, runtime/doc/digraph.txt,
runtime/doc/editing.txt, runtime/doc/eval.txt,
runtime/doc/filetype.txt, runtime/doc/ft_sql.txt,
runtime/doc/gui.txt, runtime/doc/gui_w32.txt,
runtime/doc/gui_x11.txt, runtime/doc/hangulin.txt,
runtime/doc/helphelp.txt, runtime/doc/help.txt,
runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt,
runtime/doc/if_tcl.txt, runtime/doc/indent.txt,
runtime/doc/index.txt, runtime/doc/insert.txt,
runtime/doc/intro.txt, runtime/doc/map.txt, runtime/doc/mbyte.txt,
runtime/doc/message.txt, runtime/doc/mlang.txt,
runtime/doc/motion.txt, runtime/doc/netbeans.txt,
runtime/doc/options.txt, runtime/doc/os_dos.txt,
runtime/doc/os_haiku.txt, runtime/doc/os_unix.txt,
runtime/doc/os_vms.txt, runtime/doc/os_win32.txt,
runtime/doc/pattern.txt, runtime/doc/pi_getscript.txt,
runtime/doc/pi_logipat.txt, runtime/doc/pi_netrw.txt,
runtime/doc/pi_tar.txt, runtime/doc/pi_vimball.txt,
runtime/doc/pi_zip.txt, runtime/doc/popup.txt,
runtime/doc/print.txt, runtime/doc/quickfix.txt,
runtime/doc/quickref.txt, runtime/doc/recover.txt,
runtime/doc/remote.txt, runtime/doc/repeat.txt,
runtime/doc/rileft.txt, runtime/doc/sign.txt,
runtime/doc/spell.txt, runtime/doc/starting.txt,
runtime/doc/syntax.txt, runtime/doc/tabpage.txt,
runtime/doc/tagsrch.txt, runtime/doc/terminal.txt,
runtime/doc/term.txt, runtime/doc/testing.txt,
runtime/doc/textprop.txt, runtime/doc/tips.txt,
runtime/doc/todo.txt, runtime/doc/uganda.txt,
runtime/doc/undo.txt, runtime/doc/usr_02.txt,
runtime/doc/usr_03.txt, runtime/doc/usr_04.txt,
runtime/doc/usr_05.txt, runtime/doc/usr_07.txt,
runtime/doc/usr_08.txt, runtime/doc/usr_10.txt,
runtime/doc/usr_11.txt, runtime/doc/usr_20.txt,
runtime/doc/usr_22.txt, runtime/doc/usr_23.txt,
runtime/doc/usr_24.txt, runtime/doc/usr_27.txt,
runtime/doc/usr_30.txt, runtime/doc/usr_31.txt,
runtime/doc/usr_40.txt, runtime/doc/usr_41.txt,
runtime/doc/usr_42.txt, runtime/doc/usr_44.txt,
runtime/doc/usr_45.txt, runtime/doc/usr_46.txt,
runtime/doc/usr_90.txt, runtime/doc/usr_toc.txt,
runtime/doc/various.txt, runtime/doc/version5.txt,
runtime/doc/version6.txt, runtime/doc/version7.txt,
runtime/doc/version8.txt, runtime/doc/vi_diff.txt,
runtime/doc/vim9.txt, runtime/doc/visual.txt,
runtime/doc/windows.txt
Patch 8.2.2441
问题: Vim9: extend() does not give an error for a type mismatch.
解决方案: Check the type of the second argument. (closes #7760)
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2442
问题: Automatic GUI selection does not check for GTK 3.
解决方案: Make SKIP_GTK3 empty for automatic GUI support. Set SKIP_GTK3 to
YES when checking for GTK2.
文件: src/configure.ac, src/auto/configure
Patch 8.2.2443
问题: Vim9: no compile time error for wrong str2float argument.
解决方案: Check argument type. (closes #7759)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2444
问题: Vim9: compile error with combination of operator and list.
解决方案: Generate constants before parsing a list or dict. (closes #7757)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2445
问题: Vim9: no proper error for lambda missing return type.
解决方案: Check for this error. (closes #7758)
文件: src/errors.h, src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2446
问题: Setting 'term' empty has different error if compiled with GUI.
解决方案: Insert "else". (closes #7766)
文件: src/optionstr.c, src/testdir/test_options.vim
Patch 8.2.2447
问题: 'foldlevel' not applied to folds restored from session.
解决方案: Set 'foldlevel' after creating the folds. (closes #7767)
文件: src/fold.c, src/testdir/test_mksession.vim
Patch 8.2.2448
问题: Compilation error with Ruby 3.0.
解决方案: Adjust #ifdefs and declaration. (Ken Takata, closes #7761)
文件: src/if_ruby.c
Patch 8.2.2449
问题: Vim9: flatten() always changes the list type.
解决方案: Disallow using flatten() and add flattennew().
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/list.c, src/proto/list.pro, src/errors.h, src/vim9compile.c,
src/testdir/test_flatten.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.2450
问题: MS-Windows: ADS was not preserved if 'backupcopy' is "yes".
解决方案: Copy ADS before truncating the file. (Ken Takata, closes #7762)
文件: src/bufwrite.c
Patch 8.2.2451
问题: MS-Windows: Extended Attributes not preserved.
解决方案: Preserve Extended Attributes when writing a file. (Ken Takata,
closes #7765)
文件: src/os_win32.c
Patch 8.2.2452
问题: No completion for the 'filetype' option.
解决方案: Add filetype completion. (Martin Tournoij, closes #7747)
文件: src/option.c, src/optiondefs.h, src/testdir/test_options.vim
Patch 8.2.2453
问题: Vim9: a variable name with "->" in the next line doesn't work.
解决方案: Recognize a variable name by itself. (closes #7770)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2454
问题: Leading space can not be made visible.
解决方案: Add "lead:" to 'listchars'. (closes #7772)
文件: runtime/doc/options.txt, src/drawline.c, src/globals.h,
src/message.c, src/screen.c, src/testdir/test_listchars.vim
Patch 8.2.2455
问题: Vim9: key type that can be used for literal dict and indexing is
inconsistent.
解决方案: Allow using number and bool as key for a literal dict. (#7771)
文件: runtime/doc/vim9.txt, src/dict.c, src/eval.c, src/vim9compile.c,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2456
问题: Coverity warning for strcpy() into fixed size array.
解决方案: Add a type cast to hopefully silence the bogus warning.
文件: src/userfunc.c
Patch 8.2.2457
问题: Coverity warns for memory leak.
解决方案: Free memory when out of memory.
文件: src/if_cscope.c
Patch 8.2.2458
问题: Coverity warns for :retab using freed memory.
解决方案: Use the updated line pointer when moving text properties.
文件: src/indent.c
Patch 8.2.2459
问题: Coverity reports dead code.
解决方案: Remove the dead code.
文件: src/eval.c
Patch 8.2.2460
问题: Coverity warns for unused value.
解决方案: Do not reset the return value to OK.
文件: src/vim9compile.c
Patch 8.2.2461
问题: Coverity warns for unchecked return value.
解决方案: Add "(void)" to avoid the warning.
文件: src/vim9execute.c
Patch 8.2.2462
问题: Coverity warns for not checking for fseek() error.
解决方案: Give an error message if fseek() fails.
文件: src/spellfile.c
Patch 8.2.2463
问题: Using :arglocal in an autocommand may use freed memory.
(houyunsong)
解决方案: Check if the arglist is locked.
文件: src/arglist.c, src/testdir/test_autocmd.vim
Patch 8.2.2464
问题: Using freed memory if window closed in autocommand. (houyunsong)
解决方案: Check the window still exists.
文件: src/ex_cmds.c, src/testdir/test_autocmd.vim
Patch 8.2.2465
问题: Using freed memory in :psearch. (houyunsong)
解决方案: Check the current window is still valid. Fix flaky test.
文件: src/search.c, src/testdir/test_autocmd.vim
Patch 8.2.2466
问题: Max() and min() can give many error messages.
解决方案: Bail out at the first error. (closes #1039, closes #7778)
文件: src/evalfunc.c, src/testdir/test_functions.vim
Patch 8.2.2467
问题: Script generated by :mkview changes alternate file.
解决方案: Only write :balt in the session file. (Harish Rajagopal,
closes #7779)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.2468
问题: Not easy to get the full command name from a shortened one.
解决方案: Add fullcommand(). (Martin Tournoij, closes #7777)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/ex_docmd.c, src/proto/evalfunc.pro,
src/testdir/test_cmdline.vim
Patch 8.2.2469
问题: Confusing error if :winsize has a wrong argument.
解决方案: Quote the argument in the error. (closes #2523)
文件: src/ex_docmd.c, src/testdir/test_excmd.vim
Patch 8.2.2470
问题: Popup_getoptions() does not get textprop from other tab.
解决方案: use win_valid_any_tab(). (closes #7786)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.2471
问题: Popup_setoptions() does not set textprop in other tab.
解决方案: use win_valid_any_tab(). (closes #7788)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.2472
问题: Crash when using command line window in an autocommand.
(houyunsong)
解决方案: Save and restore au_new_curbuf.
文件: src/ex_cmds.c, src/testdir/test_autocmd.vim
Patch 8.2.2473
问题: Crash when leaving command line window triggers autocommand.
(houyunsong)
解决方案: Make sure not to close the current window or buffer.
文件: src/ex_getln.c, src/testdir/test_autocmd.vim
Patch 8.2.2474
问题: Using freed memory when window is closed by autocommand.
(houyunsong)
解决方案: Check the window pointer is still valid.
文件: src/quickfix.c, src/testdir/test_autocmd.vim
Patch 8.2.2475
问题: Autocommand tests hangs on MS-Windows.
解决方案: Skip one test.
文件: src/testdir/test_autocmd.vim
Patch 8.2.2476
问题: Using freed memory when using an autocommand to split a window
while a buffer is being closed.
解决方案: Disallow splitting when the buffer has b_locked_split set.
文件: src/buffer.c, src/window.c, src/errors.h, src/structs.h,
src/popupwin.c, src/testdir/test_autocmd.vim
Patch 8.2.2477
问题: Autocommand tests hang on MS-Windows.
解决方案: Skip a couple of tests. Fix file name.
文件: src/testdir/test_autocmd.vim
Patch 8.2.2478
问题: MS-Windows: backup files for plugins are loaded.
解决方案: Do not use the alternate file name for files ending in "~".
文件: src/filepath.c
Patch 8.2.2479
问题: set/getbufline test fails without the job feature.
解决方案: Check whether the job feature is supported. (Dominique Pellé,
closes #7790)
文件: src/testdir/test_bufline.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.2480
问题: Vim9: some errors for white space do not show context.
解决方案: Include the text at the error.
文件: src/errors.h, src/dict.c, src/list.c, src/userfunc.c,
src/vim9compile.c, src/vim9script.c, src/vim9type.c
Patch 8.2.2481
问题: Vim9: confusing error when variable arguments have a default
value.
解决方案: Give a specific error message. (closes #7793)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2482
问题: Build error.
解决方案: Add new error message.
文件: src/errors.h
Patch 8.2.2483
问题: Vim9: type error for malformed expression.
解决方案: Check for end of command before checking type. (closes #7795)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2484
问题: Vim9: Cannot use a comment starting with #{ after an expression.
解决方案: Remove the check for "{" since #{ dictionaries are not supported.
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.2485
问题: When sourcing a script again the script version isn't reset.
解决方案: Set sn_version to one when sourcing a script again. Clear
sn_save_cpo properly. (closes #7608)
文件: src/scriptfile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2486
问题: Vim9: some errors for white space do not show context.
解决方案: Include the text at the error.
文件: src/errors.h, src/dict.c, src/list.c, src/userfunc.c,
src/vim9compile.c, src/vim9type.c
Patch 8.2.2487
问题: Terminal shows garbage after double-wide character with a
combining character. (Kyoichiro Yamada)
解决方案: Libvterm: do not add the width of the combining character to the
glyph width. (closes #7801)
文件: src/libvterm/src/state.c, src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_combining.dump
Patch 8.2.2488
问题: json_encode() gives generic argument error.
解决方案: Mention the type that can't be encoded. (issue #7802)
文件: src/json.c, src/errors.h, src/testdir/test_json.vim
Patch 8.2.2489
问题: current buffer is wrong after deletebufline() fails to delete a
line in another buffer.
解决方案: Restore the current buffer.
文件: src/evalbuffer.c, src/testdir/test_bufline.vim
Patch 8.2.2490
问题: 'wrap' option is always reset when starting diff mode.
解决方案: Add the "followwrap" item in 'diffopt'. (Rick Howe, closes #7797)
文件: runtime/doc/diff.txt, runtime/doc/options.txt, src/diff.c,
src/testdir/test_diffmode.vim
Patch 8.2.2491
问题: Popup window for text property may show in first screen line.
解决方案: If the text position is invisible do not show the popup window.
(closes #7807)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popup_prop_not_visible_01.dump,
src/testdir/dumps/Test_popup_prop_not_visible_02.dump,
src/testdir/dumps/Test_popup_prop_not_visible_03.dump
Patch 8.2.2492
问题: Command line buffer name cannot be translated.
解决方案: Add _(). (Gabriel Dupras, closes #7812)
文件: src/ex_getln.c
Patch 8.2.2493
问题: Text property for text left of window shows up.
解决方案: Check if the text property ends before the current column.
(closes #7806)
文件: src/drawline.c, src/testdir/test_textprop.vim,
src/testdir/dumps/Test_textprop_nowrap_01.dump,
src/testdir/dumps/Test_textprop_nowrap_02.dump
Patch 8.2.2494
问题: ":rviminfo!" clears most of oldfiles.
解决方案: Add VIF_ONLY_CURBUF to read_viminfo(). (closes #1781)
文件: src/viminfo.c, src/vim.h
Patch 8.2.2495
问题: Text jumps up and down when moving the cursor in a small window
with wrapping text and 'scrolloff' set.
解决方案: Adjust the computation of w_skipcol. (partly by Ghjuvan Lacambre,
closes #7813)
文件: src/move.c, src/testdir/test_breakindent.vim
Patch 8.2.2496 (after 8.2.2495)
问题: Insufficient testing for text jumping fix.
解决方案: Add another test case.
文件: src/testdir/test_breakindent.vim
Patch 8.2.2497
问题: No error when using more than one character for a register name.
解决方案: In Vim9 script check for a single character string. (closes #7814)
Fix that VAR_BOOL and VAR_SPECIAL are not considered equal.
文件: src/errors.h, src/evalfunc.c, src/typval.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2498
问题: No test for what 8.2.2494 fixes.
解决方案: Add a simple change to test the fix. (closes #7818)
文件: src/testdir/test_viminfo.vim
Patch 8.2.2499
问题: "vim -g --version" does not redirect output.
解决方案: Reset gui.starting when showing version info. (closes #7815)
文件: src/main.c, src/testdir/test_version.vim
Patch 8.2.2500 (after 8.2.2499)
问题: Build fails without the GUI feature.
解决方案: Add #ifdef.
文件: src/main.c
Patch 8.2.2501
问题: Not always clear where an error is reported.
解决方案: Add the where_T structure and pass it around. (closes #7796)
文件: src/structs.h, src/vim9type.c, src/proto/vim9type.pro,
src/errors.h, src/evalvars.c, src/proto/evalvars.pro, src/eval.c,
src/proto/eval.pro, src/vim9execute.c, src/vim9script.c,
src/proto/vim9script.pro, src/dict.c, src/list.c,
src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2502
问题: A few github actions are failing.
解决方案: Install setuptools-rust. (closes #7823)
文件: .github/workflows/ci.yml
Patch 8.2.2503
问题: Vim9: a caught error may leave something on the stack.
解决方案: Drop items from the stack if needed. (closes #7826)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.2504
问题: Vim9: crash when using an argument from a closure.
解决方案: Check if gen_load_outer is NULL. (closes #7821)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2505
问题: Vim9: crash after defining function with invalid return type.
解决方案: Clear function growarrays. Fix memory leak.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2506
问题: Vim9: :continue does not work correctly in a :try block
解决方案: Add the TRYCLEANUP instruction. (closes #7827)
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2507
问题: Github build may fail if Ubuntu 20.04 is used. Installing rust is
not needed.
解决方案: Specify ubuntu-18.04 instead of latest. Update "pip" instead of
installing rust. (Ozaki Kiichi, closes #7820)
文件: .github/workflows/ci.yml
Patch 8.2.2508
问题: Cannot change the character displayed in non existing lines.
解决方案: Add the "eob" item to 'fillchars'. (closes #7832, closes #3820)
文件: runtime/doc/options.txt, runtime/doc/todo.txt,
runtime/doc/windows.txt, src/drawscreen.c, src/globals.h,
src/optiondefs.h, src/screen.c, src/testdir/test_display.vim
Patch 8.2.2509
问题: Tests fail on s390 build.
解决方案: Initialize trycmd_T.
文件: src/vim9execute.c
Patch 8.2.2510
问题: Internal error when popup with mask is zero height or width.
解决方案: Bail out if width or height is zero. (closes #7831)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.2511
问题: Vim9: cannot use Vim9 script syntax in some places.
解决方案: Add the :vim9cmd command modifier. Incompatible: Makes ":vim9"
mean ":vim9cmd" instead of ":vim9script".
文件: runtime/doc/vim9.txt, runtime/doc/repeat.txt, src/ex_docmd.c,
src/ex_cmds.h, src/structs.h, src/ex_cmdidxs.h, src/errors.h,
src/testdir/test_vim9_cmd.vim, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_1.dump,
src/testdir/dumps/Test_wildmenu_2.dump,
src/testdir/dumps/Test_wildmenu_3.dump,
src/testdir/dumps/Test_wildmenu_4.dump,
src/testdir/test_quickfix.vim
Patch 8.2.2512
问题: Vim9: compiling error test sometimes fails.
解决方案: use WaitForAssert() instead of sleeping for a bit. (Dominique
Pellé, closes #7837)
文件: src/testdir/term_util.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2513 (after 8.2.2511)
问题: Vim9: missing part of :vim9cmd change.
解决方案: Use command modifier in in_vim9script().
文件: src/vim9script.c
Patch 8.2.2514 (after 8.2.2511)
问题: Vim9: build error in tiny version.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.2515
问题: Memory access error when truncating an empty message.
解决方案: Check for an empty string. (Dominique Pellé, closes #7841)
文件: src/message.c, src/message_test.c
Patch 8.2.2516
问题: Test failure on s390. (analyses by James McCoy)
解决方案: Only set the try_finally label when not skipping.
文件: src/vim9compile.c
Patch 8.2.2517
问题: Vim9: fix for s390 not tested on other systems.
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2518
问题: 'listchars' should be window-local.
解决方案: Make 'listchars' global-local. (Yegappan Lakshmanan, Marco Hinz,
closes #5206, closes #7850)
文件: runtime/doc/options.txt, src/buffer.c, src/charset.c,
src/drawline.c, src/drawscreen.c, src/evalfunc.c, src/globals.h,
src/indent.c, src/message.c, src/misc1.c, src/option.c,
src/option.h, src/optiondefs.h, src/optionstr.c,
src/proto/screen.pro, src/screen.c, src/structs.h,
src/testdir/test_listchars.vim, src/testdir/test_listlbr.vim
Patch 8.2.2519
问题: Vim9: no reason to keep strange Vi behavior.
解决方案: ":3" and ":3|" both go to line 3. ":|" does not print the line.
(closes #7840)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.2520
问题: Missing tests for 'listchars'.
解决方案: Add a few more checks. (Yegappan Lakshmanan, closes #7854)
文件: src/testdir/test_listchars.vim
Patch 8.2.2521
问题: Some compilers can't handle pointer initialization. (John
Marriott)
解决方案: Use a local struct and assign it afterwards.
文件: src/screen.c
Patch 8.2.2522
问题: Beancount filetype not recognized.
解决方案: Add a detection rule. (Brian Ryall, closes #7859)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2523
问题: Svelte filetype not recognized.
解决方案: Add a detection rule. (Brian Ryall, closes #7858)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2524
问题: Cannot change the characters displayed in the foldcolumn.
解决方案: Add fields to 'fillchars'. (Yegappan Lakshmanan, Matthieu Coudron,
closes #7860)
文件: runtime/doc/options.txt, src/globals.h, src/mouse.c, src/screen.c,
src/testdir/test_display.vim
Patch 8.2.2525
问题: Vim9: only local variables checked for a name.
解决方案: Also check arguments and script variables. (closes #7838)
文件: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2526 (after 8.2.2525)
问题: Build failure.
解决方案: Change lookup_scriptvar() arguments.
文件: src/evalvars.c, src/proto/evalvars.pro
Patch 8.2.2527
问题: Vim9: lambda return type is not determined at script level.
解决方案: Compile the lambda to get the return type. (closes #7843)
文件: src/eval.c, src/vim.h, src/vim9.h,
src/testdir/test_vim9_assign.vim
Patch 8.2.2528
问题: Vim9: crash when compiling lambda fails.
解决方案: Bail out after compilation fails. (closes #7862)
文件: src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2529
问题: Vim9: Not possible to use legacy and Vim9 script in one file.
解决方案: Vim9: allow for "if false" before :vim9script. (closes #7851)
文件: runtime/doc/vim9.txt, src/ex_docmd.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2530
问题: Vim9: not enough testing for profiling.
解决方案: Add a test with nested functions and a lambda. Fix profiling
for calling a compiled function.
文件: src/profiler.c, src/proto/profiler.pro, src/userfunc.c,
src/vim9execute.c, src/testdir/test_profile.vim
Patch 8.2.2531
问题: Vim9: the :k command is obscure.
解决方案: Disallow using :k, can use :mark instead. (closes #7874)
文件: runtime/doc/vim9.txt, src/ex_docmd.c, src/vim9script.c,
src/vim9compile.c, src/ex_cmds.h, src/testdir/test_vim9_script.vim
Patch 8.2.2532
问题: Vim9: confusing error if :k is used with a range.
解决方案: Give an error about the range. (issue #7874)
文件: src/vim9script.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2533
问题: Vim9: cannot use a range with :unlet.
解决方案: Implement ISN_UNLETRANGE.
文件: src/errors.h, src/eval.c, src/evalvars.c, src/list.c,
src/proto/evalvars.pro, src/proto/list.pro, src/vim9.h,
src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.2534
问题: Missing test coverage.
解决方案: Improve test coverage for completion with different encodings,
mapset(), and term function failures. (Dominique Pellé,
closes #7877)
文件: src/testdir/test_edit.vim, src/testdir/test_maparg.vim,
src/testdir/test_terminal3.vim
Patch 8.2.2535
问题: MS-Windows: cannot run all vim9 tests.
解决方案: Make test_vim9 target work.
文件: src/Make_mvc.mak
Patch 8.2.2536
问题: Coverity complains about unchecked return value.
解决方案: Add (void).
文件: src/userfunc.c
Patch 8.2.2537
问题: Vim9: crash when map() fails.
解决方案: Clear typval before using it. (closes #7884)
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2538
问题: Crash when using Python list iterator.
解决方案: Increment the list reference count. (closes #7886)
文件: src/if_py_both.h, src/testdir/test_python3.vim
Patch 8.2.2539
问题: Vim9: return from finally block causes a hang.
解决方案: Store both the finally and endtry indexes. (closes #7885)
文件: src/vim9execute.c, src/vim9compile.c, src/vim9.h,
src/testdir/test_vim9_script.vim,
Patch 8.2.2540
问题: Vim9: no error for using script var name for argument.
解决方案: Check for this error. (closes #7868)
文件: src/userfunc.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.2541
问题: Popup_create() does not allow boolean for "cursorline".
解决方案: Use dict_get_bool(). (issue #7869)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.2542
问题: Highlight of char beyond line end is not correct. (Chuan Wei Foo)
解决方案: Fix counting NUL as one cell. Draw one more character if the EOL
is part of the match. (closes #7883)
文件: src/match.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_1.dump,
src/testdir/dumps/Test_hlsearch_2.dump
Patch 8.2.2543
问题: Vim9: a return inside try/catch does not restore exception state
properly.
解决方案: When there is no ":finally" jump to ":endtry". (closes #7882)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.2544
问题: Vim9: error for argument when checking for lambda.
解决方案: Respect the skip flag. (closes #7887)
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2545
问题: Errors and crash when terminal window is zero height. (Leonid V.
Fedorenchik)
解决方案: Do not resize when width or height is zero. (closes #7890)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.2546
问题: Typo in mouse key name.
解决方案: Fix the typo. (issue #4725)
文件: src/misc2.c
Patch 8.2.2547
问题: "%" command not accurate for big files.
解决方案: Make it more accurate for files up to 21M lines. (Dominique Pellé,
closes #7889)
文件: src/normal.c
Patch 8.2.2548
问题: May get stuck in the cmdline window using :normal.
解决方案: Have nv_esc() return K_IGNORE.
文件: src/normal.c
Patch 8.2.2549
问题: Crash after using "g:" in a for loop.
解决方案: Increment the reference count. (closes #7892)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2550
问题: Signal stack size is wrong with latest glibc 2.34.
解决方案: Use sysconf(_SC_SIGSTKSZ) if available. (Zdenek Dohnal, closes
#7895)
文件: src/config.h.in, src/configure.ac, src/os_unix.c,
src/auto/configure
Patch 8.2.2551
问题: MS-Windows: colors test file is not installed.
解决方案: Also copy runtime/colors/tools. (Ken Takata, closes #7902)
文件: nsis/gvim.nsi
Patch 8.2.2552
问题: Vim9: no reason to consider "{{{{{{{{" a command.
解决方案: Just use "{". (issue #7904)
文件: src/ex_cmds.h
Patch 8.2.2553
问题: Vim9: Cannot put "|" after "{".
解决方案: Add the EX_TRLBAR flag. (issue #7904)
文件: src/ex_cmds.h, src/ex_eval.c
Patch 8.2.2554
问题: Vim9: exporting a final is not tested.
解决方案: Add a test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2555
问题: Vim9: missing test for 8.2.2553.
解决方案: Add a simple test.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2556
问题: Vim9: :import with "as" not fully supported.
解决方案: Implement "as" for more cases.
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.2557
问题: Compiler warning for shadowed variable.
解决方案: Declare "p" only once.
文件: src/vim9script.c
Patch 8.2.2558
问题: No error if a lambda argument shadows a variable.
解决方案: Check that the argument name shadows a local, argument or script
variable. (closes #7898)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
src/vim9script.c, src/errors.h, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
Patch 8.2.2559
问题: MS-Windows: guifont test fails on Windows XP.
解决方案: Check windowsversion().
文件: src/testdir/test_gui.vim
Patch 8.2.2560
问题: Setting 'winminheigt' does not take tabline into account.
解决方案: Subtract the tabline from the available height. (closes #7899)
文件: src/window.c, src/testdir/test_options.vim
Patch 8.2.2561
问题: Not all textprop code is covered by tests.
解决方案: Add a few more test cases. (Dominique Pellé, closes #7908)
文件: src/testdir/test_textprop.vim
Patch 8.2.2562
问题: GUI: star register changed when 'clipboard' is "unnamedplus". (Ingo
Karkat)
解决方案: Do not change the star register when 'clipboard' contains
"unnamedplus" and not "unnamed". (closes #1516)
文件: src/register.c
Patch 8.2.2563
问题: Cannot use multibyte characters for folding in 'fillchars'.
解决方案: Port pull request 11568 to Vim. (Yegappan Lakshmanan,
closes #7924)
文件: src/drawline.c, src/drawscreen.c, src/macros.h,
src/proto/screen.pro, src/screen.c, src/testdir/test_fold.vim,
src/testdir/test_profile.vim
Patch 8.2.2564
问题: Focus events end Insert mode if 'esckeys' is not set.
解决方案: Do not enable focus events when 'esckeys' is off. (closes #7926)
文件: src/term.c
Patch 8.2.2565
问题: Vim9: "..=" not always recognized.
解决方案: Do not consider "..=" to be string concatenation. (closes #7905)
文件: src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2566
问题: Vim9: Function name is not recognized.
解决方案: Change lookup_scriptvar() to also find function names.
(closes #7770)
文件: src/vim9script.c, src/evalvars.c, src/proto/evalvars.pro,
src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2567
问题: Vim9: no error if variable is defined for existing function.
解决方案: Check if name isn't already in use. (closes #7897)
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.2568
问题: Second time a preview popup is opened highlight is not set.
(Gabriel Dupras)
解决方案: Apply 'previewpopup' after getting the file. (closes #7928)
文件: src/tag.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_previewpopup_2.dump,
src/testdir/dumps/Test_popupwin_previewpopup_3.dump,
src/testdir/dumps/Test_popupwin_previewpopup_4.dump,
src/testdir/dumps/Test_popupwin_previewpopup_5.dump
Patch 8.2.2569
问题: 'fillchars' "stl" and "stlnc" items must be single byte.
解决方案: Accept multi-byte characters. (Christian Wellenbrock, Yegappan
Lakshmanan, closes #7927)
文件: runtime/doc/options.txt, src/buffer.c, src/macros.h, src/screen.c,
src/testdir/test_fold.vim, src/testdir/test_statusline.vim
Patch 8.2.2570
问题: Tests fail when run as root.
解决方案: Add a comment mentioning the expected failure. (issue #7919)
文件: src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
src/testdir/test_help.vim, src/testdir/test_writefile.vim
Patch 8.2.2571
问题: Test may leave file behind.
解决方案: Delete the temporary file. Don't profile in the running Vim
instance.
文件: src/testdir/test_quickfix.vim, src/testdir/test_profile.vim
Patch 8.2.2572
问题: Vim9: crash when getting the types for a legacy function.
解决方案: Initialize the type list growarray. (closes #7929)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2573
问题: Vim9: using invalid pointer for error message.
解决方案: Use the right pointer. (closes #7921)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2574
问题: Vim9: crash when calling partial with wrong function.
解决方案: Check argument types of called function. (closes #7912)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2575
问题: Vim9: a function name with "->" in the next line doesn't work.
解决方案: Recognize a function name by itself. (closes #7770)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2576
问题: Vim9: defining a :func function checks for white space after a
comma in the arguments.
解决方案: Only check for white space in a :def function. (closes #7930)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2577
问题: Compiler warning for type conversion.
解决方案: Add a typecast. (Mike Williams)
文件: src/drawline.c
Patch 8.2.2578
问题: Lua cannot handle a passed in lambda.
解决方案: Handle VAR_PARTIAL. (Prabir Shrestha, closes #7937, closes #7936)
文件: src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.2579
问题: Vim9: crash in garbagecollect after for loop.
解决方案: Do not set a reference in script item when the name was cleared.
(closes #7935)
文件: src/evalvars.c
Patch 8.2.2580
问题: Vim9: checking vararg type is wrong when function is auto-loaded.
解决方案: Use the member type. (closes #7933)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.2581
问题: Vim9: sourcing Vim9 script triggers a redraw.
解决方案: Do not let setting/restoring 'cpoptions' cause a redraw.
(closes #7920)
文件: src/vim.h, src/option.c, src/optionstr.c, src/scriptfile.c,
src/vim9script.c, src/testdir/test_vim9_script.vim,
src/testdir/dumps/Test_vim9_no_redraw.dump
Patch 8.2.2582 (after 8.2.2581)
问题: Vim9: screendump test fails on MS-Windows.
解决方案: Use :function instead of :def.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2583
问题: Vim9: cannot compare result of getenv() with null.
解决方案: Make the return type of getenv() "any". (closes #7943)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2584
问题: Vim9: type error for assigning the result of list concatenation to
a list.
解决方案: Do not consider concatenation result in a constant. (closes #7942)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2585
问题: Vim9: illegal memory access.
解决方案: Check byte right after "null", not one more.
文件: src/vim9compile.c
Patch 8.2.2586
问题: Process id may be invalid.
解决方案: Use sysinfo.uptime to check for recent reboot. (suggested by Hugo
van der Sanden, closes #7947)
文件: src/configure.ac, src/auto/configure, src/config.h.in,
src/memline.c, src/testing.c, src/globals.h,
src/testdir/test_recover.vim
Patch 8.2.2587 (after 8.2.2586)
问题: Recover test fails on FreeBSD.
解决方案: Check for Linux.
文件: src/testdir/check.vim, src/testdir/test_recover.vim
Patch 8.2.2588 (after 8.2.2586)
问题: Build failure with tiny features.
解决方案: Add #ifdef. Run recover test separately.
文件: src/memline.c, src/testdir/Make_all.mak, src/testdir/test_alot.vim
Patch 8.2.2589 (after 8.2.2586)
问题: Recover test hangs in the GUI.
解决方案: Add g:skipped_reason to skip a _nocatch_ test.
文件: src/testdir/runtest.vim, src/testdir/test_recover.vim
Patch 8.2.2590
问题: Vim9: default argument value may cause internal error.
解决方案: Hide later function arguments when compiling the expression.
(closes #7948)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2591
问题: Poke files are not recognized.
解决方案: Add a filetype entry. (Matt Ihlenfield)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2592
问题: Code coverage could be improved.
解决方案: Add a few more tests. (Dominique Pellé, closes #7957)
文件: src/testdir/test_fileformat.vim, src/testdir/test_normal.vim,
src/testdir/test_sleep.vim, src/testdir/test_textformat.vim,
src/testdir/test_viminfo.vim
Patch 8.2.2593
问题: List of distributed files is incomplete.
解决方案: Add a file and rename another.
文件: Filelist
Patch 8.2.2594
问题: Alternate buffer added to session file even when it's hidden.
解决方案: Check the 'buflisted' option. (closes #7951)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.2595
问题: Setting 'winminheight' may cause 'lines' to change.
解决方案: Also take minimal height of other tabpages into account. (#7899)
文件: src/window.c, src/testdir/test_options.vim
Patch 8.2.2596
问题: :doautocmd may confuse scripts listening to WinEnter.
解决方案: Do the current buffer last. (closes #7958)
文件: src/autocmd.c, src/testdir/test_autocmd.vim
Patch 8.2.2597
问题: Vim9: "import * as" does not work at script level.
解决方案: Implement using an imported namespace.
文件: src/vim.h, src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
src/vim9execute.c, src/errors.h, src/vim9script.c,
src/proto/vim9script.pro, src/testdir/test_vim9_script.vim
Patch 8.2.2598
问题: Vim9: :open does not need to be supported.
解决方案: Do not support :open in Vim9 script.
文件: src/ex_docmd.c, src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.2599 (after 8.2.2597)
问题: Build failure.
解决方案: Add missing change.
文件: src/vim9compile.c
Patch 8.2.2600
问题: Vim9: crash when putting an unknown type in a dictionary.
(Yegappan Lakshmanan)
解决方案: Handle a NULL type pointer.
文件: src/vim9type.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2601
问题: Memory usage test often fails on FreeBSD.
解决方案: Increase multiplier for upper limit.
文件: src/testdir/test_memory_usage.vim
Patch 8.2.2602
问题: Vim9: continue doesn't work if :while is very first command.
(Yegappan Lakshmanan)
解决方案: Add one to the continue instruction index.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.2603
问题: Vim9: no effect if user command is also a function.
解决方案: Check for paren following. (closes #7960)
文件: src/evalvars.c, src/proto/evalvars.pro, src/ex_docmd.c,
src/proto/ex_docmd.pro, src/vim9compile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2604
问题: GUI-specific command line arguments not tested.
解决方案: Add tests for several arguments. (Dominique Pellé, closes #7962)
文件: src/testdir/test_startup.vim
Patch 8.2.2605
问题: Vim9: string index and slice does not include composing chars.
解决方案: Include composing characters. (issue #6563)
文件: runtime/doc/vim9.txt, src/vim9execute.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.2606
问题: strchars() defaults to counting composing characters.
解决方案: Add strcharlen() which ignores composing characters.
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/testdir/test_utf8.vim
Patch 8.2.2607
问题: strcharpart() cannot include composing characters.
解决方案: Add the {skipcc} argument.
文件: runtime/doc/eval.txt, src/evalfunc.c,
src/testdir/test_expr_utf8.vim
Patch 8.2.2608
问题: Character input not fully tested.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #7963)
文件: src/testdir/test_functions.vim, src/testdir/test_messages.vim,
src/testdir/test_paste.vim, src/testdir/test_registers.vim,
src/testdir/test_undo.vim
Patch 8.2.2609
问题: Test disabled on MS-Windows even though it should work.
解决方案: Restore the condition for skipping the test. (Ken Takata,
closes #7970)
文件: src/testdir/test_startup.vim
Patch 8.2.2610
问题: Mouse click test fails when using remote connection.
解决方案: Use a larger 'mousetime'. (Dominique Pellé, closes #7968)
文件: src/testdir/test_selectmode.vim
Patch 8.2.2611
问题: Conditions for startup tests are not exactly right.
解决方案: Check for type of GUI instead of MS-Windows. (Ozaki Kiichi,
closes #7976)
文件: src/main.c, src/testdir/check.vim, src/testdir/test_startup.vim
Patch 8.2.2612
问题: col('.') may get outdated column value.
解决方案: Add a note to the help how to make this work and add a test for
it. (closes #7971)
文件: runtime/doc/map.txt, src/testdir/test_mapping.vim
Patch 8.2.2613 (after 8.2.2612)
问题: New test throws exception.
解决方案: Adjust the function cleanup.
文件: src/testdir/test_mapping.vim
Patch 8.2.2614
问题: Vim9: function is deleted while executing.
解决方案: increment the call count, when more than zero do not delete the
function but mark it as dead. (closes #7977)
文件: src/vim9execute.c, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2615 (after 8.2.2614)
问题: Test is sourcing the wrong file.
解决方案: Correct the file name.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2616
问题: Vim9: if 'cpo' is changed in Vim9 script it may be restored.
解决方案: Apply the changes to 'cpo' to the restored value.
文件: runtime/doc/vim9.txt, src/scriptfile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2617
问题: Vim9: script variable in a block scope not found by a nested
function.
解决方案: Copy the block scope IDs before compiling the function.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2618
问题: Vim9: cannot use a normal list name to store function refs.
解决方案: Allow a lower case name if it is indexed.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2619
问题: Vim9: no test for return type of lambda.
解决方案: Add a test.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.2620
问题: Vim9: Using #{ for a dictionary gives strange errors.
解决方案: Give an error when using #{ for a comment after a command.
文件: src/vim9compile.c, src/vim9script.c, src/proto/vim9script.pro,
src/errors.h, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2621
问题: typval2type() cannot handle recursive structures.
解决方案: Use copyID. (closes #7979)
文件: src/list.c, src/vim9script.c, src/vim9type.c,
src/proto/vim9type.pro, src/testdir/test_vimscript.vim
Patch 8.2.2622
问题: GTK: error when starting up and -geometry is given. (Dominique
Pellé)
解决方案: Use another function to get the monitor if the window has not been
created yet. (closes #7978)
文件: src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro, src/gui_beval.c,
src/gui_xim.c
Patch 8.2.2623
问题: Some tests fail when run as root.
解决方案: Use CheckNotRoot.
文件: src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
src/testdir/test_help.vim, src/testdir/test_writefile.vim
Patch 8.2.2624
问题: Atom files not recognized.
解决方案: Recognize .atom as XML. (Kivin Locke, closes #7986)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2625
问题: Rss files not recognized.
解决方案: Recognize .rss as XML. (Kivin Locke, closes #7987)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2626
问题: GTK3: error when starting up and -geometry is given. (Dominique
Pellé)
解决方案: Use another function to get the monitor if the window has not been
created yet. (closes #7978)
文件: src/gui_gtk_x11.c
Patch 8.2.2627
问题: No need to check for BSD after checking for not root.
解决方案: Remove CheckNotBSD. (Ozaki Kiichi, closes #7989)
文件: src/testdir/test_excmd.vim, src/testdir/test_help.vim,
src/testdir/check.vim
Patch 8.2.2628
问题: Vim9: #{ can still be used at the script level.
解决方案: Give an error for #{ like in a :def function.
文件: src/eval.c, src/ex_docmd.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2629
问题: Vim9: error for #{{ is not desired.
解决方案: Adjust the checks. (closes #7990)
文件: src/errors.h, src/vim9script.c, src/ex_docmd.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.2630
问题: Hard to see where a test gets stuck.
解决方案: Print the executed test function. (Dominique Pellé, closes #7975)
文件: src/testdir/Makefile
Patch 8.2.2631
问题: Commands from winrestcmd() do not always work properly. (Leonid V.
Fedorenchik)
解决方案: Repeat the size commands twice. (closes #7988)
文件: src/evalwindow.c, src/testdir/test_window_cmd.vim
Patch 8.2.2632
问题: Not all command line arguments are tested.
解决方案: Add tests for -D and -serverlist. (Dominique Pellé, closes #7992)
文件: src/testdir/test_clientserver.vim, src/testdir/test_startup.vim
Patch 8.2.2633
问题: Multi-byte 'fillchars' for folding do not show properly.
解决方案: Handle multi-byte characters correctly. (Yegappan Lakshmanan,
closes #7983, closes #7955)
文件: src/screen.c, src/testdir/test_fold.vim
Patch 8.2.2634
问题: 'tagfunc' does not indicate using a pattern.
解决方案: Add the "r" flag. (Andy Massimino, closes #7982)
文件: runtime/doc/tagsrch.txt, src/tag.c, src/testdir/test_tagfunc.vim
Patch 8.2.2635
问题: Vim9: cannot define an inline function.
解决方案: Make an inline function mostly work.
文件: src/userfunc.c, src/errors.h, src/vim9compile.c, src/misc2.c,
src/proto/vim9compile.pro, src/testdir/test_vim9_expr.vim
Patch 8.2.2636 (after 8.2.2635)
问题: Memory leak when compiling inline function.
解决方案: Free the prefetched line.
文件: src/userfunc.c, src/vim9compile.c, src/structs.h, src/globals.h,
src/eval.c
Patch 8.2.2637
问题: prop_remove() causes a redraw even when nothing changed.
解决方案: Only redraw if a property was removed. (Dominique Pellé)
文件: src/textprop.c
Patch 8.2.2638
问题: Cannot write a message to the terminal from the GUI.
解决方案: Add :echoconsole and use it in the test runner. (issue #7975)
文件: runtime/doc/eval.txt, runtime/doc/index.txt, src/ex_cmds.h,
src/ex_cmdidxs.h, src/eval.c, src/ui.c, src/proto/ui.pro,
src/term.c, src/testdir/runtest.vim
Patch 8.2.2639 (after 8.2.2638)
问题: Build failure when fsync() is not available.
解决方案: Add #ifdef.
文件: src/ui.c
Patch 8.2.2640
问题: screenstring() returns non-existing composing characters.
解决方案: Only use composing characters if there is a base character.
文件: src/evalfunc.c, src/testdir/test_listchars.vim
Patch 8.2.2641
问题: Display test fails because of lacking redraw.
解决方案: Add a redraw command.
文件: src/testdir/test_display.vim
Patch 8.2.2642
问题: Vim9: no clear error for wrong inline function.
解决方案: Check for something following the "{".
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2643
问题: Various code not covered by tests.
解决方案: Add a few more test. (Yegappan Lakshmanan, closes #7995)
文件: src/testdir/test_edit.vim, src/testdir/test_functions.vim,
src/testdir/test_mapping.vim, src/testdir/test_termcodes.vim,
src/testdir/test_undo.vim
Patch 8.2.2644
问题: prop_clear() causes a screen update even when nothing changed.
解决方案: Only redraw when a property was cleared. (Dominique Pellé)
文件: src/textprop.c
Patch 8.2.2645
问题: Using inline function is not properly tested.
解决方案: Add test cases, esp. for errors. Minor code improvements.
文件: src/userfunc.c, src/errors.h, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2646
问题: Vim9: error for not using string doesn't mention argument.
解决方案: Add argument number.
文件: src/filepath.c, src/typval.c, src/proto/typval.pro, src/errors.h,
src/mbyte.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2647
问题: Terminal test sometimes hangs.
解决方案: Wait for the shell to display a prompt.
文件: src/testdir/test_terminal.vim
Patch 8.2.2648
问题: Terminal resize test sometimes hangs.
解决方案: Wait for the shell to display a prompt and other output.
文件: src/testdir/test_terminal2.vim
Patch 8.2.2649
问题: Vim9: some wincmd arguments cause a white space error.
解决方案: Insert a space before the count. (closes #8001)
文件: src/window.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2650
问题: Vim9: command modifiers not handled in nested function.
解决方案: Keep function-local info in a structure and save it on the stack.
文件: src/vim9execute.c, src/vim9.h, src/testdir/test_vim9_func.vim
Patch 8.2.2651
问题: Vim9: restoring command modifiers happens after jump.
解决方案: Move the restore instruction to before the jump. (closes #8006)
Also handle for and while.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2652
问题: Vim9: can use command modifier without an effect.
解决方案: Give an error for a misplaced command modifier. Fix error message
number.
文件: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/ex_eval.c, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2653
问题: Build failure.
解决方案: Add missing changes.
文件: src/errors.h
Patch 8.2.2654
问题: Vim9: getting a character from a string can be slow.
解决方案: Avoid a function call to get the character byte size. (#8000)
文件: src/vim9execute.vim
Patch 8.2.2655
问题: The -w command line argument doesn't work.
解决方案: Don't set 'window' when set with the -w argument. (closes #8011)
文件: src/term.c, src/testdir/test_startup.vim
Patch 8.2.2656
问题: Some command line arguments and regexp errors not tested.
解决方案: Add a few test cases. (Dominique Pellé, closes #8013)
文件: src/testdir/test_regexp_latin.vim, src/testdir/test_startup.vim
Patch 8.2.2657
问题: Vim9: error message for declaring variable in for loop.
解决方案: Clear variables when entering block again. (closes #8012)
文件: src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.2658
问题: :for cannot loop over a string.
解决方案: Accept a string argument and iterate over its characters.
文件: runtime/doc/eval.txt, src/eval.c, src/vim9compile.c,
src/vim9execute.c, src/errors.h, src/testdir/test_vimscript.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2659 (after 8.2.2658)
问题: Eval test fails because for loop on string works.
解决方案: Check looping over function reference fails.
文件: src/testdir/test_eval_stuff.vim
Patch 8.2.2660
问题: Vim9: no error for declaration with trailing text.
解决方案: Give an error. (closes #8014)
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2661
问题: Leaking memory when looping over a string.
解决方案: Free the memory.
文件: src/eval.c
Patch 8.2.2662
问题: There is no way to avoid some escape sequences.
解决方案: Suppress escape sequences when the --not-a-term argument is used.
(Gary Johnson)
文件: src/main.c, src/os_unix.c, src/testdir/test_startup.vim
Patch 8.2.2663
问题: Vim9: leaking memory when inline function has an error.
解决方案: Free the partially allocated function.
文件: src/userfunc.c
Patch 8.2.2664
问题: Vim9: not enough function arguments checked for string.
解决方案: Check in balloon functions. Refactor function arguments.
文件: src/typval.c, src/proto/typval.pro, src/filepath.c,
src/evalfunc.c, src/mbyte.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2665 (after 8.2.2664)
问题: Test failures.
解决方案: Check more specific feature. Add missing change.
文件: src/testdir/test_vim9_builtin.vim, src/evalbuffer.c
Patch 8.2.2666
问题: Vim9: not enough function arguments checked for string.
解决方案: Check in ch_logfile(), char2nr() and others.
文件: src/channel.c, src/evalfunc.c, src/filepath.c, src/eval.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2667
问题: prop_find() cannot find item matching both id and type.
解决方案: Add the "both" argument. (Naohiro Ono, closes #8019)
文件: runtime/doc/textprop.txt, src/testdir/test_textprop.vim,
src/textprop.c
Patch 8.2.2668
问题: Vim9: omitting "call" for "confirm()" does not give an error.
解决方案: Do not recognize a modifier followed by "(".
文件: src/ex_docmd.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2669
问题: Command line completion does not work after "vim9".
解决方案: Include the "9". (Naohiro Ono, closes #8025)
文件: src/cmdexpand.c, src/ex_docmd.c, src/testdir/test_cmdline.vim
Patch 8.2.2670
问题: Vim9: error for append(0, text).
解决方案: Check for negative number. (closes #8022)
文件: src/typval.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2671 (after 8.2.2670)
问题: Error for line number in legacy script.
解决方案: Check for number type.
文件: src/typval.c
Patch 8.2.2672
问题: Vim9: cannot use :lockvar and :unlockvar in compiled script.
解决方案: Implement locking support.
文件: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.2673
问题: Vim9: script-local funcref can have lower case name.
解决方案: Require an upper case name.
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2674
问题: Motif: cancelling the font dialog resets the font.
解决方案: When no font is selected to not change the font. (closes #7825,
closes #8035) Fix compiler warnings.
文件: src/gui_x11.c, src/gui_motif.c
Patch 8.2.2675
问题: Directory change in a terminal window shell is not followed.
解决方案: Add the 'autoshelldir' option. (closes #6290)
文件: runtime/doc/options.txt, runtime/doc/quickref.txt,
runtime/optwin.vim, src/charset.c, src/feature.h, src/option.h,
src/optiondefs.h, src/terminal.c, src/testdir/check.vim,
src/testdir/test_terminal3.vim
Patch 8.2.2676
问题: Missing error message.
解决方案: Add new error message.
文件: src/errors.h
Patch 8.2.2677
问题: Vim9: cannot use only some of the default arguments.
解决方案: Use v:none to use default argument value. Remove
uf_def_arg_idx[], use JUMP_IF_ARG_SET. (closes #6504)
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9execute.c,
src/userfunc.c, src/structs.h, src/vim9.h,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2678
问题: Test for 'autoshelldir' does not reset the option.
解决方案: Reset the option after testing.
文件: src/testdir/test_terminal3.vim
Patch 8.2.2679
问题: Winbar drawn over status line for non-current window with winbar
if frame is zero height. (Leonid V. Fedorenchik)
解决方案: Do not draw the window if the frame height is zero. (closes #8037)
文件: src/drawscreen.c, src/testdir/test_winbar.vim,
src/testdir/dumps/Test_winbar_not_visible.dump
Patch 8.2.2680
问题: Vim9: problem defining a script variable from legacy function.
解决方案: Check if the script is Vim9, not the current syntax.
(closes #8032)
文件: src/vim9script.c, src/proto/vim9script.pro, src/evalvars.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2681
问题: Vim9: test fails for redeclaring script variable.
解决方案: It's OK to assign to an existing script variable in legacy.
文件: src/evalvars.c
Patch 8.2.2682
问题: Vim9: cannot find Name.Func from "import * as Name". (Alexander
Goussas)
解决方案: When no variable found try finding a function. (closes #8045)
Check that the function was exported.
文件: src/vim9compile.c, src/vim9script.c,
src/testdir/test_vim9_script.vim
Patch 8.2.2683
问题: Build failure without the +eval feature.
解决方案: Add #ifdef.
文件: src/vim9script.c
Patch 8.2.2684
问题: Not enough folding code is tested.
解决方案: Add more test cases. (Yegappan Lakshmanan, closes #8046)
文件: src/testdir/test_fold.vim, src/testdir/test_mksession.vim,
src/testdir/test_source.vim
Patch 8.2.2685 (after 8.2.2152)
问题: Custom statusline not drawn correctly with WinBar.
解决方案: Also adjust the column for the custom status line. (Yee Cheng
Chin, closes #8047)
文件: src/drawscreen.c, src/proto/drawscreen.pro, src/screen.c,
src/testdir/dumps/Test_winbar_not_visible_custom_statusline.dump,
src/testdir/test_winbar.vim
Patch 8.2.2686
问题: Status line is not updated when going to cmdline mode.
解决方案: Redraw status lines if 'statusline' is set and going to status
line mode. (based on patch from Justin M. Keyes et al.,
closes #8044)
文件: src/ex_getln.c, src/testdir/test_statusline.vim,
src/testdir/dumps/Test_statusline_mode_1.dump,
src/testdir/dumps/Test_statusline_mode_2.dump
Patch 8.2.2687
问题: Vim9: cannot use "const" for global variable in :def function.
解决方案: Do allow using :const for a global variable. (closes #8030)
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.2688
问题: Vim9: crash when using s: for script variable.
解决方案: Pass the end pointer. (closes #8045)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2689
问题: Tiny build fails.
解决方案: Add #ifdef around use of p_stl.
文件: src/ex_getln.c
Patch 8.2.2690
问题: PowerShell files are not recognized.
解决方案: Recognize several PowerShell extension. (Heath Stewart,
closes #8051)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2691
问题: Autoconf may mess up compiler flags.
解决方案: Handle removing FORTIFY_SOURCE a bit better. (Vladimir Lomov,
closes #8049)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2692
问题: Vim9: locked script variable can be changed.
解决方案: Check for locked value. (closes #8031)
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2693
问题: Vim9: locked script variable can be changed.
解决方案: Check legacy script variable for being locked. (issue #8031)
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2694
问题: When 'matchpairs' is empty every character beeps. (Marco Hinz)
解决方案: Bail out when no character in 'matchpairs' was found.
(closes #8053) Add assert_nobeep().
文件: runtime/doc/testing.txt, runtime/doc/eval.txt, src/search.c,
src/testing.c, src/proto/testing.pro, src/evalfunc.c,
src/testdir/test_textformat.vim
Patch 8.2.2695
问题: Cursor position reset with nested autocommands.
解决方案: Only check and reset line numbers for not nested autocommands.
(closes #5820)
文件: src/autocmd.c, src/testdir/test_terminal.vim
Patch 8.2.2696
问题: Lua test fails with Lua 5.4.3 and later.
解决方案: Check for different error messages. (Yegappan Lakshmanan,
closes #8050)
文件: src/testdir/test_lua.vim
Patch 8.2.2697
问题: Function list test fails.
解决方案: Add missing function. (Yegappan Lakshmanan)
文件: runtime/doc/usr_41.txt
Patch 8.2.2698 (after 8.2.2696)
问题: Lua test fails on MS-Windows.
解决方案: Fall back to old method if "lua -v" doesn't work.
文件: src/testdir/test_lua.vim
Patch 8.2.2699
问题: Lua test fails.
解决方案: Fix condition. (Yegappan Lakshmanan, closes #8060)
文件: src/testdir/test_lua.vim
Patch 8.2.2700
问题: Nested autocmd test fails sometimes.
解决方案: Wait for the job to finish.
文件: src/testdir/test_terminal.vim
Patch 8.2.2701
问题: Order of removing FORTIFY_SOURCE is wrong.
解决方案: Use the more specific pattern first.
文件: src/configure.ac, src/auto/configure
Patch 8.2.2702
问题: Compiler completion test fails when more scripts are added.
解决方案: Add a more generic pattern.
文件: src/testdir/test_compiler.vim
Patch 8.2.2703
问题: Vim9: memory leak when failing on locked variable.
解决方案: Free the memory.
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2704
问题: Adding a lot of completions can be a bit slow.
解决方案: Use fast_breakcheck() instead of ui_breakcheck() when adding a
list of completions. (Ben Jackson, closes #8061)
文件: src/insexpand.c
Patch 8.2.2705
问题: Vim9: misleading reported line number for wrong type.
解决方案: Remember and use the line number at the start. (closes #8059)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2706
问题: Vim9: wrong line number reported for boolean operator.
解决方案: Use the line number before skipping over line break.
(closes #8058)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2707 (after 8.2.2704)
问题: Adding a lot of completions can still be a bit slow.
解决方案: Add the check for CP_FAST. (Ben Jackson)
文件: src/insexpand.c
Patch 8.2.2708
问题: Test sometimes fails waiting for shell in terminal.
解决方案: Use WaitForAssert() so we can see the actual job status. Use
Run_shell_in_terminal().
文件: src/testdir/term_util.vim, src/testdir/test_mksession.vim
Patch 8.2.2709
问题: The GTK GUI has a gap next to the scrollbar.
解决方案: Calculate the scrollbar padding for GTK. (closes #8027)
文件: src/gui_gtk.c
Patch 8.2.2710
问题: Vim9: not all tests cover script and :def function.
解决方案: Run tests in both if possible. Fix differences.
文件: src/eval.c, src/vim9compile.c, src/vim9execute.c,
src/testdir/vim9.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.2711
问题: "gj" in a closed fold does not move out of the fold. (Marco Hinz)
解决方案: Add a check for being in a closed fold. (closes #8062)
文件: src/normal.c, src/testdir/test_fold.vim
Patch 8.2.2712
问题: Memory leak when adding to a blob fails.
解决方案: Clear the second typval before returning.
文件: src/eval.c
Patch 8.2.2713
问题: Folding code not sufficiently tested.
解决方案: Add a few more test cases. (Yegappan Lakshmanan, closes #8064)
文件: src/testdir/test_fold.vim
Patch 8.2.2714
问题: Filetype pattern ending in star is too far up.
解决方案: Move down to where patterns ending in star belong. (closes #8065)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2715
问题: Vim9: tests fail without the channel feature. (Dominique Pellé)
解决方案: Check for the channel feature. (closes #8063)
文件: src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.2716
问题: The equivalent class regexp is missing some characters.
解决方案: Update the list of equivalent characters. (Dominique Pellé,
closes #8029)
文件: src/regexp_bt.c, src/regexp_nfa.c,
src/testdir/test_regexp_utf8.vim
Patch 8.2.2717
问题: GTK menu items don't show a tooltip.
解决方案: Add a callback to show the tooltip. (Leonid V. Fedorenchik,
closes #8067, closes #7810)
文件: src/gui_gtk.c
Patch 8.2.2718
问题: Vim9: no explicit test for using a global function without the g:
prefix.
解决方案: Add a test case.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.2719
问题: Vim9: appending to dict item doesn't work in a :def function.
解决方案: Implement assignment with operator on indexed item.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2720
问题: GTK menu tooltip moves the cursor.
解决方案: Position the cursor after displaying the tooltip. Do not show the
tooltip when editing the command line.
文件: src/gui_gtk.c
Patch 8.2.2721
问题: Vim9: cannot have a linebreak inside a lambda.
解决方案: Compile the expression before the arguments.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2722
问题: Vim9: crash when using LHS with double index.
解决方案: Handle lhs_dest which is "dest_expr". (closes #8068)
Fix confusing error message for missing dict item.
文件: src/vim9compile.c, src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2723 (after 8.2.2722)
问题: Assignment test fails.
解决方案: Adjust error number.
文件: src/testdir/test_let.vim
Patch 8.2.2724 (after 8.2.2722)
问题: Vim9: concatenating to list in dict not tested.
解决方案: Add a test. (issue #8068)
文件: src/testdir/test_vim9_assign.vim
Patch 8.2.2725
问题: Vim9: message about compiling is wrong when using try/catch.
解决方案: Store the compiling flag with the message. (closes #8071)
文件: src/ex_docmd.c, src/ex_eval.c, src/structs.h,
src/testdir/test_vim9_func.vim
Patch 8.2.2726
问题: Confusing error message with white space before comma in the
arguments of a function declaration.
解决方案: Give a specific error message. (closes #2235)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2727 (after 8.2.2726)
问题: Function test fails.
解决方案: Adjust expected error number.
文件: src/testdir/test_user_func.vim
Patch 8.2.2728
问题: Special key names don't work if 'isident' is cleared.
解决方案: Add vim_isNormalIDc() and use it for special key names.
(closes #2389)
文件: src/charset.c, src/proto/charset.pro, src/misc2.c,
src/testdir/test_mapping.vim
Patch 8.2.2729
问题: Vim9: wrong error message for referring to legacy script variable.
解决方案: Do allow referring to a variable in legacy script without "s:" if
it exists at compile time. (closes #8076)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2730
问题: Coverity complains about not restoring character.
解决方案: Also restore the character in case of an error.
文件: src/vim9compile.c
Patch 8.2.2731
问题: Mac: SF symbols are not displayed properly.
解决方案: Add custom range to list of double-width characters. (Yee Cheng
Chin, closes #8077)
文件: src/mbyte.c
Patch 8.2.2732
问题: Prompt for s///c in Ex mode can be wrong.
解决方案: Position the cursor before showing the prompt. (closes #8073)
文件: src/ex_cmds.c, src/testdir/test_ex_mode.vim
Patch 8.2.2733
问题: Detecting Lua version is not reliable.
解决方案: Add "vim.lua_version". (Ozaki Kiichi, closes #8080)
文件: runtime/doc/if_lua.txt, ci/if_ver-1.vim, src/if_lua.c,
src/testdir/test_lua.vim
Patch 8.2.2734
问题: Vim9: cannot use legacy script-local var from :def function.
解决方案: Do not insist on using "s:" prefix. (closes #8076)
文件: src/vim9compile.c, src/proto/vim9compile.pro,
src/testdir/test_vim9_expr.vim
Patch 8.2.2735
问题: Vim9: function reference found with prefix, not without.
解决方案: Also find function reference without prefix.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2736
问题: Vim9: for loop over string is a bit slow.
解决方案: Avoid using strlen().
文件: src/vim9execute.c
Patch 8.2.2737
问题: Status line not updated when local 'statusline' option set.
解决方案: Check the 'statusline' option of each window.
文件: src/ex_getln.c, src/testdir/test_statusline.vim,
src/testdir/dumps/Test_statusline_mode_1.dump,
src/testdir/dumps/Test_statusline_mode_2.dump
Patch 8.2.2738
问题: Extending a list with itself can give wrong result.
解决方案: Remember the item before where the insertion happens and skip to
after the already inserted items. (closes #1112)
文件: src/list.c, src/testdir/test_listdict.vim
Patch 8.2.2739
问题: Vim9: a lambda accepts too many arguments at the script level.
解决方案: Do not set uf_varargs in Vim9 script.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2740
问题: Vim9: lambda with varargs doesn't work.
解决方案: Make "...name" work. Require type to be a list.
文件: src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
src/errors.h, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2741
问题: Vim9: Partial call does not check right arguments.
解决方案: Adjust the offset for whether the partial is before or after the
arguments. (closes #8091)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2742
问题: Vim9: when compiling a function fails it is cleared.
解决方案: Keep the function lines, prevent execution with a different
status. (closes #8093)
文件: src/vim9compile.c, src/structs.h, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2743
问题: Vim9: function state stuck when compiling with ":silent!".
解决方案: Check for uf_def_status to be UF_COMPILING.
文件: src/vim9compile.c, src/message.c, src/globals.h,
src/testdir/test_vim9_func.vim
Patch 8.2.2744
问题: Vim9: no way to explicitly ignore an argument.
解决方案: Use the underscore as the name for an ignored argument.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/eval.c,
src/evalvars.c, src/errors.h, src/testdir/test_vim9_func.vim
Patch 8.2.2745 (after 8.2.2744)
问题: Vim9: missing part of the argument change.
解决方案: Add missing changes.
文件: src/userfunc.c
Patch 8.2.2746 (after 8.2.2745)
问题: Check for duplicate arguments does not work.
解决方案: Correct condition.
文件: src/userfunc.c
Patch 8.2.2747
问题: Vim9: not always an error for too many function arguments.
解决方案: Check for getting too many arguments.
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2748
问题: Vim9: memory leak when calling :def function fails.
解决方案: Jump to failed_early instead of returning.
文件: src/vim9execute.c
Patch 8.2.2749
问题: Vim9: test for error can be a bit flaky.
解决方案: Increase the wait time a bit.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.2750
问题: Vim9: error for using underscore in nested function.
解决方案: Do not consider "_" already defined. (closes #8096)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2751
问题: Coverity warns for using NULL pointer.
解决方案: Check for NULL in calling function.
文件: src/userfunc.c
Patch 8.2.2752
problem: coverity reports unreachable code.
解决方案: Remove check for positive index.
文件: src/typval.c
Patch 8.2.2753
问题: Vim9: cannot ignore an item in assignment unpack.
解决方案: Allow using an underscore.
文件: runtime/doc/vim9.txt, src/vim.h, src/evalvars.c, src/eval.c,
src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2754
问题: :sleep! does not always hide the cursor.
解决方案: Add the cursor_is_asleep flag. (Jeremy Lerner, closes #8097,
closes #7998)
文件: src/drawscreen.c, src/ex_docmd.c, src/gui.c, src/proto/term.pro,
src/term.c
Patch 8.2.2755
问题: Vim9: no error for using a number in a condition.
解决方案: Also use ISN_COND2BOOL if the type is t_number_bool.
(closes #7644)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2756
问题: Vim9: blob index and slice not implemented yet.
解决方案: Implement blob index and slice.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/eval.c,
src/blob.c, src/proto/blob.pro, src/testdir/test_vim9_expr.vim
Patch 8.2.2757
问题: Vim9: blob tests for legacy and Vim9 script are separate.
解决方案: Add CheckLegacyAndVim9Success(). Make blob index assign work.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/errors.h,
src/blob.c, src/proto/blob.pro, src/eval.c, src/ex_docmd.c,
src/testdir/vim9.vim, src/testdir/test_blob.vim
Patch 8.2.2758
问题: Vim9: wrong line number for autoload function with wrong name.
解决方案: Set and restore SOURCING_LNUM. (closes #8100)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2759
问题: Vim9: for loop infers type of loop variable.
解决方案: Do not get the member type. (closes #8102)
文件: src/vim9type.c, src/proto/vim9type.pro, src/list.c,
src/vim9script.c, src/proto/vim9script.pro, src/vim.h,
src/testdir/test_vim9_script.vim
Patch 8.2.2760
问题: Vim9: no error for changing a for loop variable.
解决方案: Make the loop variable read-only. (issue #8102)
文件: src/eval.c, src/evalvars.c, src/vim9compile.c, src/vim.h,
src/testdir/test_vim9_script.vim
Patch 8.2.2761
问题: Using "syn include" does not work properly.
解决方案: Don't add current_syn_inc_tag to topgrp. (Jaehwang Jerry Jung,
closes #8104)
文件: src/syntax.c, src/testdir/test_syntax.vim
Patch 8.2.2762
问题: Vim9: function line truncated when compiling.
解决方案: Copy the line before processing it. (closes #8101)
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.2763
问题: Vim9: cannot use type in for loop unpack at script level.
解决方案: Advance over the type name.
文件: src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.2764
问题: Memory leak when default function argument is allocated.
解决方案: Free the expression result.
文件: src/userfunc.c, src/testdir/test_functions.vim
Patch 8.2.2765
问题: Vim9: not all blob operations work.
解决方案: Run more tests also with Vim9 script and :def functions. Fix what
doesn't work.
文件: src/eval.c, src/blob.c, src/proto/blob.pro, src/vim9execute.c,
src/errors.h, src/testdir/vim9.vim, src/testdir/test_blob.vim
Patch 8.2.2766 (after 8.2.2765)
问题: Test failure.
解决方案: Add change to Vim9 compilation error message.
文件: src/vim9compile.c
Patch 8.2.2767 (after 8.2.2765)
问题: Compiler warning for unused argument.
解决方案: Remove the argument.
文件: src/blob.c, src/proto/blob.pro, src/vim9execute.c, src/eval.c
Patch 8.2.2768
问题: Vim9: memory leak with blob range error.
解决方案: Jump to end instead of returning.
文件: src/vim9compile.c
Patch 8.2.2769
问题: Modula-3 config files are not recognized.
解决方案: Add filetype patterns. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2770
问题: Vim9: type of loop variable is not used.
解决方案: Parse and check the variable type. (closes #8107)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2771
问题: Vim9: assignment not recognized if declaration was skipped.
解决方案: Also recognized an assignment if the variable does not exist.
(closes #8108)
文件: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2772
问题: Problems when restoring 'runtimepath' from a session file.
解决方案: Add the "skiprtp" item in 'sessionoptions'.
文件: runtime/doc/options.txt, src/session.c, src/optionstr.c,
src/option.h, src/vim.h, src/option.c,
src/testdir/test_mksession.vim
Patch 8.2.2773
问题: PSL filetype not recognized.
解决方案: Add a filetype pattern. (Daniel Kho, closes #8117)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2774
问题: Vim9: cannot import an existing name even when using "as".
解决方案: Do not check for an existing name when using "as". (closes #8113)
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.2775
问题: Vim9: wrong line number used for some commands.
解决方案: For :exe, :echo and the like use the line number of the start of
the command. When calling a function set the line number in the
script context.
文件: src/vim9compile.c, src/vim9execute.c, src/structs.h,
src/testdir/test_vim9_script.vim
Patch 8.2.2776
问题: :mksession uses current value of 'splitbelow' and 'splitright'
even though "options" is not in 'sessionoptions'. (Maxim Kim)
解决方案: Save and restore the values, instead of setting to the current
value. (closes #8119)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.2777
问题: Vim9: blob operations not tested in all ways.
解决方案: Run tests with CheckLegacyAndVim9Success(). Make blob assign with
index work.
文件: src/vim9compile.c, src/vim9execute.c, src/errors.h, src/blob.c,
src/proto/blob.pro, src/testdir/test_blob.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2778
问题: Problem restoring 'packpath' in session.
解决方案: Let "skiprtp" also apply to 'packpath'.
文件: runtime/doc/options.txt, src/option.c,
src/testdir/test_mksession.vim
Patch 8.2.2779
问题: Memory access error in remove() for blob.
解决方案: Adjust length for memmove().
文件: src/blob.c
Patch 8.2.2780
问题: Vim9: for loop over blob doesn't work.
解决方案: Make it work.
文件: src/vim9compile.c, src/vim9execute.c, src/testdir/test_blob.vim
Patch 8.2.2781
问题: Add() silently skips when adding to null list or blob.
解决方案: Give an error in Vim9 script. Allocate blob when it is NULL like
with list and dict.
文件: src/list.c, src/evalvars.c, src/vim9execute.c,
src/testdir/test_blob.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.2782
问题: Vim9: blob operations not fully tested.
解决方案: Make more blob tests run in Vim9 script. Fix filter(). Make
insert() give an error for a null blob, like add().
文件: src/list.c, src/testdir/test_blob.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2783
问题: Duplicate code for setting byte in blob, blob test may fail.
解决方案: Call blob_set_append(). Test sort failure with "N".
文件: src/eval.c, src/testdir/test_blob.vim
Patch 8.2.2784
问题: Vim9: cannot use \=expr in :substitute.
解决方案: Compile the expression into instructions and execute them when
invoked.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/proto/vim9execute.pro, src/regexp.c, src/ex_cmds.c,
src/proto/ex_cmds.pro, src/globals.h,
src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2785
问题: Vim9: cannot redirect to local variable.
解决方案: Compile :redir when redirecting to a variable.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/errors.h,
src/evalvars.c, src/proto/evalvars.pro,
src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2786
问题: Vim9: memory leak when using :s with expression.
解决方案: Clean up the instruction list.
文件: src/vim9compile.c
Patch 8.2.2787
问题: MS-Windows: crash when using :echoconsole.
解决方案: Do not write a NUL when it's already there.
文件: src/os_win32.c
Patch 8.2.2788
问题: Raku is now the only name what once was called perl6.
解决方案: Adjust the filetype detection. (closes #8120)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2789
问题: Vim9: using \=expr in :substitute does not handle jumps.
解决方案: Start with instruction count zero. (closes #8128)
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2790 (after 8.2.2788)
问题: filetype test fails
解决方案: Also update the scripts detection
文件: runtime/scripts.vim
Patch 8.2.2791
问题: Vim9: memory leak when using \=expr in :substitute.
解决方案: Do not allocate a new instruction list.
文件: src/vim9compile.c
Patch 8.2.2792
问题: Vim9: :disas shows instructions for default args but no text.
解决方案: Show the expression test above the default argument instructions.
(closes #8129)
文件: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.2793
问题: MS-Windows: string literals are writable with MSVC.
解决方案: Add the /GF compiler flag. Make mch_write() safer. (Ken Takata,
closes #8133)
文件: src/Make_mvc.mak, src/os_win32.c
Patch 8.2.2794
问题: Linux users don't know how to get ncurses.
解决方案: Add the name of the package. (closes #8132)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2795
问题: Coverity warns for not using return value.
解决方案: Check the return value of compiling the substitute expression.
文件: src/vim9compile.c
Patch 8.2.2796
问题: Vim9: redir to variable does not accept an index.
解决方案: Make the index work.
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2797
问题: Search highlight disappears in the Visual area.
解决方案: Combine the search attributes. (closes #8134)
文件: src/drawline.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_visual_1.dump
Patch 8.2.2798
问题: Vim9: redir to variable with append does not accept an index.
解决方案: Make the appending work.
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2799
问题: Vim9: type casts don't fully work at the script level.
解决方案: Implement the missing piece.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2800
问题: After a timer displays text a hit-enter prompt is given.
解决方案: Reset msg_didany and need_wait_return. (closes #8136)
文件: src/drawscreen.c, src/testdir/test_timers.vim
Patch 8.2.2801
问题: Free Pascal makefile not recognized.
解决方案: Add the fpcmake filetype. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2802
问题: Vim9: illegal memory access.
解决方案: Check for comment before checking for white space. (closes #8142)
文件: src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.2803
问题: Flicker when the popup menu has an info popup.
解决方案: Avoid drawing over the popup when it's going to be redrawn in the
same position. (closes #8131) Also avoid redrawing the scrollbar.
文件: src/popupmenu.c, src/proto/popupmenu.pro, src/drawscreen.c,
src/globals.h
Patch 8.2.2804
问题: Setting buffer local mapping with mapset() changes global mapping.
解决方案: Only set the local mapping. (closes #8143)
文件: src/map.c, src/testdir/test_maparg.vim
Patch 8.2.2805
问题: Vim9: cannot use legacy syntax in Vim9 script.
解决方案: Add the :legacy command.
文件: src/ex_cmds.h, runtime/doc/vim9.txt, runtime/doc/index.txt
src/ex_cmdidxs.h, src/ex_docmd.c, src/structs.h, src/vim9script.c,
src/vim9compile.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_assign.vim
Patch 8.2.2806
问题: Vim9: using "++nr" as a command might not work.
解决方案: Do not recognize "++" and "--" in a following line as addition or
subtraction.
文件: src/vim9compile.c, src/ex_docmd.c, src/ex_cmds.h, src/ex_cmdidxs.h,
src/vim9script.c, src/proto/vim9script.pro, src/eval.c,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.2807
问题: Build fails with tiny features.
解决方案: Use a dummy function for ex_incdec().
文件: src/ex_docmd.c
Patch 8.2.2808
问题: Vim9: increment and decrement not sufficiently tested.
解决方案: Add assertions.
文件: src/testdir/test_vim9_assign.vim
Patch 8.2.2809
问题: Vim9: :def function compilation fails when using :legacy.
解决方案: Reset CMOD_LEGACY when compiling a function. (closes #8137)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2810
问题: Vim9: crash when calling a function in a substitute expression.
解决方案: Set the instructions back to the substitute expression
instructions. (closes #8148)
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2811
问题: Vim9: error for missing white space doesn't say where it is
missing
解决方案: Mention the command. (closes #8149)
文件: src/ex_docmd.c, src/errors.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.2812
问题: Vim9: still crash when using substitute expression.
解决方案: Put the instruction list in the stack frame. (closes #8154)
文件: src/vim9execute.c, src/vim9.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.2813
问题: Cannot grep using fuzzy matching.
解决方案: Add the "f" flag to :vimgrep. (Yegappan Lakshmanan, closes #8152)
文件: runtime/doc/quickfix.txt, src/ex_cmds.c, src/proto/search.pro,
src/quickfix.c, src/search.c, src/vim.h,
src/testdir/test_quickfix.vim
Patch 8.2.2814 (after 8.2.2812)
问题: Vim9: unused variable. (John Marriott)
解决方案: Adjust #ifdef.
文件: src/vim9execute.c
Patch 8.2.2815
问题: Status line flickers when redrawing popup menu info.
解决方案: Do not redraw the status line when the focus is in the popup
window. (issue #8144)
文件: src/popupmenu.c
Patch 8.2.2816
问题: Vim9: comment below expression in lambda causes problems.
解决方案: Use a single space for empty and comment lines. (closes #8156)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2817
问题: Vim9: script sourcing continues after an error.
解决方案: Make an error in any command in "vim9script" abort sourcing.
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2818
问题: No jump added to jumplist when opening terminal in current window.
解决方案: Call setpcmark(). (closes #8158)
文件: src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.2819
问题: Finishing an abbreviation with a multi-byte char may not work.
解决方案: Escape K_SPECIAL in the typed character. (closes #8160)
文件: src/map.c, src/testdir/test_mapping.vim
Patch 8.2.2820
问题: Session file may divide by zero.
解决方案: Avoid writing divide by zero. (closes #8162)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.2821
问题: MS-Windows: unnecessarily loading libraries when registering OLE.
解决方案: Skip loading libraries when invoked with "-register".
文件: src/main.c, src/globals.h, src/os_win32.c
Patch 8.2.2822 (after 8.2.2821)
问题: MS-Windows: unnecessarily loading libraries when unregistering OLE.
解决方案: Also skip loading libraries when invoked with "-unregister". Run
Vim for README.txt with user privileges.
文件: src/main.c, nsis/gvim.nsi, nsis/README.txt
Patch 8.2.2823
问题: MS-Windows: launching Vim from installer doesn't open README.
解决方案: Adjust the quotes.
文件: nsis/gvim.nsi
Patch 8.2.2824
问题: MS-Windows: build failure with MSVC.
解决方案: Adjust the list of distributed files. Add hint about python.
Adjust path for reading runtime files.
文件: Filelist, src/testdir/shared.vim,
src/testdir/test_function_lists.vim
Patch 8.2.2825
问题: Code in checkreadonly() not fully tested.
解决方案: Add more tests. (Dominique Pellé, closes #8169)
文件: src/testdir/test_excmd.vim
Patch 8.2.2826
问题: Compiler warnings for int to size_t conversion. (Randall W.
Morris)
解决方案: Add type casts.
文件: src/map.c, src/quickfix.c
Patch 8.2.2827
问题: Test file was not deleted.
解决方案: Uncomment the delete() call. (Dominique Pellé, closes #8172)
文件: src/testdir/test_mksession.vim
Patch 8.2.2828
问题: Coverity complains about not checking the rename() return value.
解决方案: Add "(void)", can't do anything in case of a failure.
文件: src/fileio.c
Patch 8.2.2829
问题: Some comments are not correct or clear.
解决方案: Adjust the comments. Add test for cursor position.
文件: src/regexp_bt.c, src/regexp_nfa.c,
src/testdir/test_exec_while_if.vim,
src/testdir/test_substitute.vim
Patch 8.2.2830
问题: Terminal colors are not updated when 'background' is set.
解决方案: Call term_update_colors() for all terminals. (Marcin Szamotulski,
closes #8171, closes #8150)
文件: src/terminal.c, src/proto/terminal.pro, src/optionstr.c
Patch 8.2.2831
问题: Vim9: expandcmd() not tested.
解决方案: Add a test.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.2832
问题: Operator cancelled by moving mouse when using popup. (Sergey
Vlasov)
解决方案: Do not trigger an operator for a mouse move events. (closes #8176)
文件: src/normal.c
Patch 8.2.2833
问题: Two key command cancelled by moving mouse when using popup.
(Sergey Vlasov)
解决方案: Ignore K_MOUSEMOVE in plain_vgetc().
文件: src/getchar.c
Patch 8.2.2834
问题: Vim9: :cexpr does not work with local variables.
解决方案: Compile :cexpr.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/quickfix.c,
src/proto/quickfix.pro, src/testdir/test_quickfix.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2835 (after 8.2.2834)
问题: Vim9: leaking memory in :cexpr.
解决方案: Also free the command line copy.
文件: src/vim9compile.c
Patch 8.2.2836 (after 8.2.2834)
问题: Build failure without the +quickfix feature. (John Marriott)
解决方案: Add #ifdef.
文件: src/vim9compile.c, src/vim9execute.c, src/tag.c
Patch 8.2.2837
问题: Various code lines not covered by tests.
解决方案: Add test cases. (Dominique Pellé, closes #8178)
文件: src/testdir/test_excmd.vim, src/testdir/test_functions.vim,
src/testdir/test_options.vim, src/testdir/test_startup.vim,
src/testdir/test_syntax.vim, src/testdir/test_vim9_cmd.vim
Patch 8.2.2838
问题: File extension .wrap not recognized.
解决方案: Use dosini filetype for .wrap files. (Liam Beguin, closes #8177)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2839
问题: Default redirection missing "ash" and "dash".
解决方案: Recognize "ash" and "dash". (Natanael Copa, closes #8180)
文件: runtime/doc/options.txt, src/option.c
Patch 8.2.2840
问题: Vim9: member operation not fully tested.
解决方案: Add a few tests.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2841
问题: MS-Windows: cursor in wrong position when 'lazyredraw' and
'statusline' are set.
解决方案: Call compute_cmdrow(). (closes #8170, closes #8184)
文件: src/os_win32.c
Patch 8.2.2842
问题: Vim9: skip argument to searchpair() is not compiled.
解决方案: Add VAR_INSTR.
文件: src/structs.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/proto/vim9execute.pro, src/eval.c, src/evalfunc.c, src/vim.h,
src/evalvars.c, src/typval.c, src/vim9type.c, src/testing.c,
src/viminfo.c, src/if_py_both.h, src/json.c,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2843 (after 8.2.2842)
问题: Vim9: skip argument to searchpairpos() is not compiled.
解决方案: Handle like searchpair(). Also for search() and searchpos().
文件: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2844
问题: Vim9: memory leak when using searchpair().
解决方案: Free the v_instr field.
文件: src/typval.c
Patch 8.2.2845
问题: MS-Windows: warning for signed/unsigned comparison.
解决方案: Add type cast.
文件: src/terminal.c
Patch 8.2.2846
问题: Vim9: "echo Func()" does not give an error for a function without
a return value.
解决方案: Give an error. Be more specific about why a value is invalid.
文件: src/globals.h, src/errors.h, src/eval.c, src/evalfunc.c,
src/typval.c, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.2847
问题: Perl not tested sufficiently.
解决方案: Add test. Also test W17. (Dominique Pellé, closes #8193)
文件: src/testdir/test_arabic.vim, src/testdir/test_perl.vim
Patch 8.2.2848
问题: Crash when calling partial.
解决方案: Check for NULL pointer. (Dominique Pellé, closes #8202)
文件: src/eval.c, src/evalfunc.c, src/testdir/test_functions.vim,
src/testdir/test_listdict.vim
Patch 8.2.2849
问题: Bufwrite not sufficiently tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8192)
文件: src/testdir/test_startup.vim, src/testdir/test_writefile.vim
Patch 8.2.2850
问题: Recalling commands from history is not tested.
解决方案: Add tests. (closes #8194)
文件: src/testdir/test_cmdline.vim
Patch 8.2.2851
问题: Using <Cmd> mapping on the command line triggers CmdlineChanged.
(Naohiro Ono)
解决方案: Jump to cmdline_not_changed if the command line didn't change.
(closes #8208)
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.2852
问题: Configure can add --as-needed a second time.
解决方案: Only add --as-needed if not already there. (Natanael Copa,
closes #8189, closes #8181)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2853 (after 8.2.2851)
问题: Window is not updated after using <Cmd> mapping.
解决方案: So jump to cmdline_changed but skip autocommand.
文件: src/ex_getln.c
Patch 8.2.2854
问题: Custom statusline cannot contain % items.
解决方案: Add "%{% expr %}". (closes #8190)
文件: runtime/doc/options.txt, src/buffer.c, src/optionstr.c,
src/testdir/test_statusline.vim
Patch 8.2.2855
问题: White space after "->" does not give E274.
解决方案: Do not skip white space in legacy script. (closes #8212)
文件: src/eval.c, src/testdir/test_method.vim
Patch 8.2.2856
问题: Get readonly error for device that can't be written to.
解决方案: Check for being able to write first. (closes #8205)
文件: src/ex_cmds.c, src/testdir/test_writefile.vim
Patch 8.2.2857
问题: Vim9: exception in ISN_INSTR caught at wrong level.
解决方案: Set the starting trylevel in exec_instructions(). (closes #8214)
文件: src/vim9compile.c, src/vim9execute.c, src/globals.h,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2858 (after 8.2.2857)
问题: Test fails because of changed error message.
解决方案: Adjust the expected error message.
文件: src/testdir/test_ex_mode.vim
Patch 8.2.2859 (after 8.2.2857)
问题: Tcl test fails because of changed error message.
解决方案: Adjust the expected error message.
文件: src/testdir/test_tcl.vim
Patch 8.2.2860
问题: Adding a text property causes the whole window to be redrawn.
解决方案: Use changed_lines_buf() to only redraw the affected lines.
文件: src/change.c, src/proto/change.pro, src/textprop.c
Patch 8.2.2861
问题: Vim9: "legacy return" is not recognized as a return statement.
解决方案: Specifically check for a return command. (closes #8213)
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_expr.vim
Patch 8.2.2862
问题: Removing a text property causes the whole window to be redrawn.
解决方案: Use changed_lines_buf() to only redraw the affected lines.
文件: src/textprop.c
Patch 8.2.2863 (after 8.2.2862)
问题: Removing a text property does not redraw optimally.
解决方案: Only redraw the lines that mithg actually have been changed.
文件: src/textprop.c
Patch 8.2.2864
问题: Vim9: crash when using inline function.
解决方案: Check for NULL pointer. Make using inline function work inside
lambda. (closes #8217)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.2865 (after 8.2.2864)
问题: Skipping over function body fails.
解决方案: Do not define the function when skipping.
文件: src/userfunc.c
Patch 8.2.2866
问题: Vim9: memory leak when using inline function.
解决方案: Remember what strings to free.
文件: src/userfunc.c, src/structs.h, src/eval.c
Patch 8.2.2867 (after 8.2.2866)
问题: Build failure.
解决方案: Add missing part of the change.
文件: src/globals.h
Patch 8.2.2868
问题: Vim9: When executing a compiled expression the trylevel at start
is changed but not restored. (closes #8214)
解决方案: Restore the trylevel at start.
文件: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2869
问题: Using unified diff is not tested.
解决方案: Test all cases also with unified diff. (issue #8197)
文件: src/testdir/test_diffmode.vim
Patch 8.2.2870
问题: CmdlineChange event triggered twice for CTRL-R.
解决方案: Return CMDLINE_NOT_CHANGED from cmdline_insert_reg().
(closes #8219)
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.2871
问题: Unnecessary VIM_ISDIGIT() calls, badly indented code.
解决方案: Call skipdigits() on the next character. Improve indenting.
(Dominique Pellé, closes #8227)
文件: src/charset.c, src/evalfunc.c, src/ex_docmd.c, src/json.c,
src/ops.c, src/tag.c, src/vim9compile.c
Patch 8.2.2872
问题: Python tests fail without the channel feature.
解决方案: Add a feature check. (Dominique Pellé, closes #8226)
文件: src/testdir/test_python2.vim, src/testdir/test_python3.vim
Patch 8.2.2873
问题: Not enough tests for writing buffers.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8229)
文件: src/testdir/test_buffer.vim, src/testdir/test_cmdline.vim,
src/testdir/test_functions.vim, src/testdir/test_writefile.vim
Patch 8.2.2874
问题: MS-Windows: screen redraws too often.
解决方案: Do not redraw when peeking for a character. (closes #8230,
closes #8211)
文件: src/os_win32.c
Patch 8.2.2875
问题: Cancelling inputlist() after a digit does not return zero.
解决方案: Always return zero when cancelling. (closes #8231)
文件: src/misc1.c, src/testdir/test_functions.vim
Patch 8.2.2876
问题: Configure cannot detect Python 3.10.
解决方案: Use sys.version_info. (closes #8233)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2877
问题: Insufficient tests for popup menu rightleft.
解决方案: Add tests. (Yegappan Lakshmanan, closes #8235)
文件: src/testdir/test_popup.vim,
src/testdir/dumps/Test_pum_rightleft_01.dump,
src/testdir/dumps/Test_pum_rightleft_02.dump,
src/testdir/dumps/Test_pum_scrollbar_01.dump,
src/testdir/dumps/Test_pum_scrollbar_02.dump
Patch 8.2.2878
问题: Vim9: for loop list unpack only allows for one "_".
解决方案: Drop the value when the variable is "_". (closes #8232)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2879
问题: File extension .hsig not recognized.
解决方案: Use Haskell filetype for .hsig files. (Marcin Szamotulski,
closes #8236)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2880
问题: Unified diff fails if actually used.
解决方案: Invoke :diffupdate in the test. Fix the check for working external
diff. (Ghjuvan Lacambre, Christian Brabandt, closes #8197)
文件: src/diff.c, src/testdir/test_diffmode.vim
Patch 8.2.2881
问题: Various pieces of code not covered by tests.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8245)
文件: src/testdir/test_const.vim, src/testdir/test_functions.vim,
src/testdir/test_python2.vim, src/testdir/test_python3.vim,
src/testdir/test_user_func.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.2882
问题: Vim9: memory leak when lambda has an error.
解决方案: Free the list of argument types on failure.
文件: src/userfunc.c
Patch 8.2.2883
问题: MS-Windows manifest file name is misleading.
解决方案: Rename the file. (closes #8241)
文件: .gitignore, .hgignore, Filelist, Makefile, src/Make_cyg_ming.mak,
src/Make_mvc.mak, src/gvim.exe.mnf, src/vim.manifest, src/vim.rc
Patch 8.2.2884
问题: Not enough cscope code is covered by tests.
解决方案: Add a few test cases. (Dominique Pellé, closes #8246)
文件: src/testdir/test_cscope.vim
Patch 8.2.2885
问题: searching for \%'> does not match linewise end of line. (Tim Chase)
解决方案: Match end of line if column is MAXCOL. (closes #8238)
文件: src/regexp_nfa.c, src/regexp_bt.c, src/testdir/test_search.vim
Patch 8.2.2886
问题: Various pieces of code not covered by tests.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8255)
文件: src/testdir/test_expr.vim, src/testdir/test_functions.vim,
src/testdir/test_listdict.vim, src/testdir/test_registers.vim,
src/testdir/test_user_func.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
Patch 8.2.2887
问题: Crash when passing null string to fullcommand().
解决方案: Check for NULL pointer. (closes #8256)
文件: src/ex_docmd.c, src/testdir/test_cmdline.vim
Patch 8.2.2888
问题: Vim9: "k" command recognized in Vim9 script.
解决方案: Do not recognize "k" or "s" and "d" with flags.
文件: src/ex_docmd.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.2889
问题: Typo and verbose comment in Makefiles.
解决方案: Fix typo. Use @#. (Ken Takata, closes #8252)
文件: Makefile, src/testdir/Makefile
Patch 8.2.2890
问题: Text property duplicated when data block splits.
解决方案: Do not continue text prop from previous line. (closes #8261)
文件: src/memline.c, src/structs.h, src/testdir/test_textprop.vim
Patch 8.2.2891
问题: Cannot build with Perl 5.34.
解决方案: Add Perl_SvTRUE_common(). (Ozaki Kiichi, closes #8266,
closes #8250)
文件: src/if_perl.xs
Patch 8.2.2892
问题: Error message contains random characters.
解决方案: Pass the right pointer to error_white_both(). (closes #8272,
closes #8263)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2893
问题: Multi-byte text in popup title shows up wrong.
解决方案: Use the character width instead of the byte length. (Ralf Schandl,
closes #8267, closes #8264)
文件: src/popupwin.c, src/message_test.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_multibytetitle.dump
Patch 8.2.2894
问题: MS-Windows: using enc_locale() for strftime() might not work.
解决方案: Use wcsftime(). (Ken Takata, closes #8271)
文件: src/time.c
Patch 8.2.2895
问题: Vim9: random characters appear in some error messages.
解决方案: Pass the correct pointer. (closes #8277)
文件: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2896
问题: Spellfile functionality not fully tested.
解决方案: Add tests for CHECKCOMPOUNDPATTERN and COMMON. (Dominique Pellé,
closes #8270)
文件: src/testdir/test_spellfile.vim
Patch 8.2.2897
问题: Vim9: can use reserved words at the script level.
解决方案: Check variable names for reserved words. (closes #8253)
文件: src/vim9compile.c, src/vim9script.c, src/proto/vim9script.pro,
src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2898
问题: QuitPre and ExitPre not triggered when GUI window is closed.
解决方案: Call before_quit_autocmds(). (closes #8242)
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/gui.c
Patch 8.2.2899
问题: Appveyor script does not detect nmake failure.
解决方案: Explicitly check for executable. (Ken Takata, closes #8281)
文件: ci/appveyor.bat
Patch 8.2.2900
问题: QuitPre is triggered before :wq writes the file, which is
different from other commands.
解决方案: Trigger QuitPre after writing the file. (closes #8279)
文件: src/ex_docmd.c, src/testdir/test_writefile.vim
Patch 8.2.2901
问题: Some operators not fully tested.
解决方案: Add a few test cases. (Yegappan Lakshmanan, closes #8282)
文件: src/testdir/test_cpoptions.vim, src/testdir/test_increment.vim,
src/testdir/test_normal.vim, src/testdir/test_virtualedit.vim,
src/testdir/test_visual.vim
Patch 8.2.2902
问题: Spellfile functionality not fully tested.
解决方案: Add tests for CIRCUMFIX, NOBREAK and others. (Dominique Pellé,
closes #8283)
文件: src/testdir/test_spellfile.vim
Patch 8.2.2903
问题: Cursor position wrong on wrapped line with 'signcolumn'.
解决方案: Don't add space for showbreak twice. (Christian Brabandt,
closes #8262)
文件: src/drawline.c, src/testdir/test_display.vim
Patch 8.2.2904
问题: "g$" causes scroll if half a double width char is visible.
解决方案: Advance to the last fully visible character. (closes #8254)
文件: src/normal.c, src/testdir/test_normal.vim
Patch 8.2.2905
问题: No error when defaults.vim cannot be loaded.
解决方案: Add an error message. (Christian Brabandt, closes #8248)
文件: runtime/doc/starting.txt, src/errors.h, src/main.c,
src/testdir/test_startup.vim
Patch 8.2.2906 (after 8.2.2905)
问题: ASAN reports errors for test_startup for unknown reasons.
解决方案: Temporarily disable the new test.
文件: src/testdir/test_startup.vim
Patch 8.2.2907
问题: Memory leak when running out of memory.
解决方案: Free the allocated memory. (Dominique Pellé, closes #8284)
文件: src/term.c
Patch 8.2.2908
问题: Crash when using a terminal popup window from the cmdline window.
解决方案: Instead of checking cmdwin_type call cmdwin_is_active().
(closes #8286)
文件: src/terminal.c, src/errors.h, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_cmdwin_no_terminal.dump
Patch 8.2.2909
问题: Build error with non-Unix system.
解决方案: Always include limits.h.
文件: src/vim.h
Patch 8.2.2910
问题: Test for cmdline window and terminal fails on MS-Windows.
解决方案: Skip the test on MS-Windows.
文件: src/testdir/test_cmdline.vim
Patch 8.2.2911
问题: Pattern "\%V" does not match all of block selection. (Rick Howe)
解决方案: Use the value of vi_curswant. (closes #8285)
文件: src/regexp.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_block_visual_match.dump
Patch 8.2.2912
问题: MS-Windows: most users expect using Unicode.
解决方案: Default 'encoding' to utf-8 on MS-Windows. (Ken Takata,
closes #3907)
文件: runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h,
src/testdir/test_writefile.vim
Patch 8.2.2913
问题: MS-Windows conpty supports using mouse events.
解决方案: When enabling the mouse enable mouse input and disable quick edit
mode. (Wez Furlong, closes #8280)
文件: src/os_win32.c
Patch 8.2.2914
问题: Cannot paste a block without adding padding.
解决方案: Add "zp" and "zP" which paste without adding padding. (Christian
Brabandt, closes #8289)
文件: runtime/doc/change.txt, runtime/doc/index.txt, src/normal.c,
src/register.c, src/vim.h, src/testdir/test_normal.vim,
src/testdir/test_visual.vim
Patch 8.2.2915
问题: MS-Windows: when using "default" for encoding utf-8 is used.
解决方案: Use the system encoding. (Ken Takata, closes #8300)
文件: src/mbyte.c, runtime/doc/options.txt
Patch 8.2.2916
问题: Operators are not fully tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8290)
文件: src/ops.c, src/testdir/test_netbeans.vim,
src/testdir/test_normal.vim, src/testdir/test_visual.vim
Patch 8.2.2917
问题: Spellfile functionality not fully tested.
解决方案: Add tests for SFX with removal of characters, spelling
suggestions with NOBREAK and others. (Dominique Pellé,
closes #8293)
文件: src/testdir/test_spellfile.vim
Patch 8.2.2918
问题: Builtin function can be shadowed by global variable.
解决方案: Check for builtin function before variable. (Yasuhiro Matsumoto,
closes #8302)
文件: src/eval.c, src/testdir/test_functions.vim
Patch 8.2.2919
问题: Using ":!command" does not work if the command uses posix_spawn().
解决方案: Do not call ioctl() with TIOCSCTTY. (Felipe Contreras)
文件: src/os_unix.c
Patch 8.2.2920
问题: Still a way to shadow a builtin function. (Yasuhiro Matsumoto)
解决方案: Check the key when using extend(). (issue #8302)
文件: src/eval.c, src/dict.c, src/proto/dict.pro,
src/testdir/test_functions.vim
Patch 8.2.2921
问题: E704 for script local variable is not backwards compatible.
(Yasuhiro Matsumoto)
解决方案: Only give the error in Vim9 script. Also check for function-local
variable.
文件: src/dict.c, src/testdir/test_functions.vim
Patch 8.2.2922
问题: Computing array length is done in various ways.
解决方案: Use ARRAY_LENGTH everywhere. (Ken Takata, closes #8305)
文件: src/arabic.c, src/blowfish.c, src/cindent.c, src/cmdexpand.c,
src/cmdhist.c, src/dosinst.c, src/eval.c, src/evalfunc.c,
src/ex_docmd.c, src/fileio.c, src/gui_athena.c, src/gui_gtk_x11.c,
src/gui_haiku.cc, src/gui_photon.c, src/gui_w32.c,
src/gui_xmebw.c, src/hardcopy.c, src/help.c, src/highlight.c,
src/if_mzsch.c, src/macros.h, src/main.c, src/map.c, src/mbyte.c,
src/memline.c, src/menu.c, src/misc2.c, src/normal.c, src/ops.c,
src/option.c, src/optiondefs.h, src/os_win32.c, src/popupwin.c,
src/quickfix.c, src/regexp.c, src/screen.c, src/search.c,
src/syntax.c, src/term.c, src/terminal.c, src/time.c,
src/usercmd.c, src/version.c
Patch 8.2.2923
问题: EBCDIC build is broken.
解决方案: Move sortFunctions() to evalfunc.c. (Ken Takata, closes #8306)
文件: src/eval.c, src/evalfunc.c, src/proto/evalfunc.pro
Patch 8.2.2924
问题: Superfluous extern declaration.
解决方案: Delete the declaration. (Ken Takata, closes #8307)
文件: src/main.c
Patch 8.2.2925
问题: Vim9: line continuation comment uses legacy syntax.
解决方案: Check for #\ instead of "\. (closes #8295)
文件: src/scriptfile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2926
问题: Vim9: no good error for using :legacy in a :def function.
解决方案: Give an explicit error where :legacy is not working.
(closes #8309)
文件: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_func.vim
Patch 8.2.2927
问题: Test commented out because it fails with ASAN.
解决方案: Only skip the test when running with ASAN.
文件: src/testdir/test_startup.vim
Patch 8.2.2928
问题: The evalfunc.c file is too big.
解决方案: Move float related functionality to a separate file. (Yegappan
Lakshmanan, closes #8287)
文件: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/eval.c, src/evalfunc.c, src/float.c, src/proto.h,
src/proto/eval.pro, src/proto/float.pro
Patch 8.2.2929
问题: Accidentally enable tcl by default.
解决方案: Revert change to Makefile
文件: src/Makefile
Patch 8.2.2930
问题: When a popup is visible a mouse move my restart Visual mode.
解决方案: Reset held_button when ending Visual mode. (closes #8318)
文件: src/mouse.c, src/proto/mouse.pro, src/normal.c
Patch 8.2.2931
问题: Vim9: line continuation comment still uses legacy syntax in one
place.
解决方案: Check for #\ instead of "\ earlier. (closes #8316)
文件: src/scriptfile.c, src/testdir/test_vim9_script.vim
Patch 8.2.2932 (after 8.2.2930)
问题: Select mode test fails.
解决方案: Do not always reset the held mouse button.
文件: src/mouse.c, src/normal.c, src/proto/normal.pro
Patch 8.2.2933
问题: When 'clipboard' is "unnamed" zp and zP do not work correctly.
解决方案: Pass -1 to str_to_reg() and fix computing the character width
instead of using the byte length. (Christian Brabandt,
closes #8301, closes #8317)
文件: src/clipboard.c, src/mbyte.c, src/register.c
Patch 8.2.2934 (after 8.2.2933)
问题: ASAN error when using text from the clipboard.
解决方案: Get width of each character.
文件: src/register.c
Patch 8.2.2935 (after 8.2.2934)
问题: Calculating register width is not always needed. (Christian
Brabandt)
解决方案: Only calculate the width when the type is MBLOCK.
文件: src/register.c
Patch 8.2.2936
问题: Vim9: converting number to bool uses wrong stack offset. (Salman
Halim)
解决方案: Include the offset in the 2BOOL command.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2937
问题: Popup test fails if rightleft feature not enabled.
解决方案: Check that the rightleft feature is available. (Dominique Pellé,
closes #8321)
文件: src/testdir/test_popup.vim
Patch 8.2.2938
问题: After using motion force from feedkeys() it may not be reset.
解决方案: Clear motion_force in clearop(). (closes #8323)
文件: src/normal.c, src/testdir/test_visual.vim
Patch 8.2.2939
问题: GTK: righthand scrollbar does not show with split window.
解决方案: Adjust padding when two scrollbars are used. (Matt Wozniski,
closes #8324)
文件: src/gui_gtk.c
Patch 8.2.2940
问题: MS-Windows: cannot see the size of the text area when resizing the
gvim window.
解决方案: Show a tooltip with the text size. (Ken Takata, closes #8326)
文件: src/gui_w32.c
Patch 8.2.2941
问题: Vim9: using =expr does not handle a list of strings.
解决方案: Convert a list to a string and escape each item. (closes #8310)
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2942
问题: Vim9: internal error when calling function with too few arguments
解决方案: Check for argument count to be too few. (closes #8325)
文件: src/errors.h, src/vim9execute.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.2943
问题: Vim9: check for argument count ignores default values.
解决方案: Take default argument values into account.
文件: src/vim9execute.c
Patch 8.2.2944
问题: Vim9: no error when using job or channel as a string.
解决方案: Be more strict about conversion to string. (closes #8312)
文件: src/typval.c, src/job.c, src/proto/job.pro, src/channel.c,
src/proto/channel.pro, src/eval.c, src/vim9execute.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.2945
问题: Some buffer related code is not tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8320)
文件: src/termlib.c, src/testdir/test_excmd.vim,
src/testdir/test_recover.vim, src/testdir/test_swap.vim,
src/testdir/test_visual.vim
Patch 8.2.2946
问题: Vim9: substitute expression cannot be a List in a :def function.
解决方案: Use typval2string(). (closes #8330)
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.2947
问题: Build failure without the channel feature.
解决方案: Add back #ifdef. (John Marriott)
文件: src/eval.c
Patch 8.2.2948
问题: Substitute() accepts a number but not a float expression.
解决方案: Also accept a float. (closes #8331)
文件: src/typval.c, src/testdir/test_substitute.vim
Patch 8.2.2949 (after 8.2.2948)
问题: Tests failing because there is no error for float to string
conversion.
解决方案: Change the check for failure to check for correct result. Make
some conversions strict in Vim9 script.
文件: src/evalfunc.c, src/float.c, src/findfile.c, src/json.c,
src/filepath.c, src/testdir/test_eval_stuff.vim,
src/testdir/test_execute_func.vim,
src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
src/testdir/test_listdict.vim, src/testdir/test_glob2regpat.vim
Patch 8.2.2950
问题: Sound code not fully tested.
解决方案: Add more sound tests. (Dominique Pellé, closes #8332)
文件: src/testdir/test_sound.vim
Patch 8.2.2951
问题: Vim9: cannot use heredoc in :def function for :python, :lua, etc.
解决方案: Concatenate the heredoc lines and pass them in the ISN_EXEC_SPLIT
instruction.
文件: src/userfunc.c, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2952
问题: Recover test fails on big endian systems.
解决方案: Disable the failing test on big endian systems. (Yegappan
Lakshmanan, closes #8335)
文件: src/testdir/test_recover.vim, src/testdir/test_swap.vim
Patch 8.2.2953 (after 8.2.2951)
问题: Vim9: leaking memory when using heredoc script.
解决方案: Free the first line.
文件: src/vim9execute.c
Patch 8.2.2954
问题: Short file name extension for Scala not recognized.
解决方案: Recognize *.sc. (closes #8337)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2955
问题: Vim9: using filter in compiled command does not work.
解决方案: Generate EXEC including the command modifier.
文件: src/vim9compile.c, src/ex_docmd.c, src/ex_cmds.c,
src/proto/ex_cmds.pro, src/testdir/test_vim9_cmd.vim
Patch 8.2.2956
问题: Vim9: need to plan for future additions.
解决方案: Reserve commands for future use: :type, :class, :enum.
文件: src/ex_cmds.h, src/ex_cmdidxs.h
Patch 8.2.2957
问题: Using getchar() in Vim9 script is problematic.
解决方案: Add getcharstr(). (closes #8343)
文件: runtime/doc/eval.txt, src/evalfunc.c, src/getchar.c,
src/proto/getchar.pro, src/testdir/test_functions.vim
Patch 8.2.2958 (after 8.2.2957)
问题: Function list test fails.
解决方案: Add newly added function to the list. Fix typo.
文件: runtime/doc/usr_41.txt, src/testdir/test_function_lists.vim
Patch 8.2.2959
问题: sound_playfile() is not tested on MS-Windows.
解决方案: Make it work and enable the test. (Dominique Pellé, closes #8338)
文件: src/sound.c, src/testdir/test_sound.vim
Patch 8.2.2960
问题: Swap file recovery not sufficiently tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8339)
文件: src/testdir/test_recover.vim
Patch 8.2.2961
问题: Keys typed during a :normal command are discarded.
解决方案: Concatenate saved typeahead and typed keys. (closes #8340)
文件: src/getchar.c, src/proto/getchar.pro, src/ex_docmd.c,
src/evalfunc.c, src/debugger.c, src/ui.c, src/proto/ui.pro
Patch 8.2.2962
问题: MS-Windows command line arguments have wrong encoding.
解决方案: Always use utf-8 in get_cmd_argsW(). (Ken Takata, closes #8347)
文件: src/os_win32.c
Patch 8.2.2963
问题: GUI: mouse move may start Visual mode with a popup visible.
解决方案: Add special code for mouse move. (closes #8318)
文件: src/vim.h, src/gui.c, src/keymap.h, src/term.c
Patch 8.2.2964
问题: Vim9: hang when using space after ->. (Naohiro Ono)
解决方案: Skip over white space to find the function name. (closes #8341)
文件: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.2965
问题: Vim9: crash when calling function that failed to compile.
解决方案: Fail when trying to call the function. (closes #8344)
文件: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.2966
问题: ml_get errors after recovering a file. (Yegappan Lakshmanan)
解决方案: Fix the cursor position after deleting lines.
文件: src/memline.c
Patch 8.2.2967
问题: Vim9: crash when using two levels of partials.
解决方案: Add outer_ref_T and use it in the execution context.
文件: src/structs.h, src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.2968 (after 8.2.2967)
问题: Vim9: memory leak
解决方案: Unreference pt_outer of partial.
文件: src/eval.c
Patch 8.2.2969
问题: Subtracting from number option fails when result is zero. (Ingo
Karkat)
解决方案: Reset the string value when using the numeric value.
(closes #8351)
文件: src/evalvars.c, src/testdir/test_vimscript.vim
Patch 8.2.2970
问题: Python configure check uses deprecated command.
解决方案: Use sysconfig instead of distutils if possible. (Zdenek Dohnal,
closes #8354)
文件: src/configure.ac, src/auto/configure
Patch 8.2.2971
问题: Cannot yank a block without trailing spaces.
解决方案: Add the "zy" command. (Christian Brabandt, closes #8292)
文件: runtime/doc/change.txt, runtime/doc/index.txt, src/normal.c,
src/ops.c, src/register.c, src/structs.h,
src/testdir/test_visual.vim
Patch 8.2.2972
问题: "%bd" tries to delete popup window buffers, which fails. (Ralf
Schandl)
解决方案: Do not try to delete a popup window buffer. (closes #8349)
文件: src/buffer.c, src/vim.h, src/testdir/test_popupwin.vim
Patch 8.2.2973
问题: Fix for recovery and diff mode not tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8352)
文件: src/testdir/test_diffmode.vim, src/testdir/test_prompt_buffer.vim,
src/testdir/test_recover.vim
Patch 8.2.2974
问题: Greek spell checking uses wrong case folding.
解决方案: Fold capital sigma depending on whether it is at the end of a
word or not. (closes #299)
文件: src/spell.c, src/proto/spell.pro, src/spellfile.c,
src/spellsuggest.c
Patch 8.2.2975
问题: Vim9: can only use an autoload function name as a string.
解决方案: Load the autoload script when encountered. (closes #8124)
文件: src/vim9compile.c, src/evalvars.c, src/scriptfile.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2976 (after 8.2.2975)
问题: Build failure without the +eval feature.
解决方案: Add #ifdefs.
文件: src/scriptfile.c
Patch 8.2.2977
问题: Crash when using a null function reference. (Naohiro Ono)
解决方案: Check for an invalid function name. (closes #8367)
文件: src/eval.c, src/errors.h, src/testdir/test_functions.vim
Patch 8.2.2978 (after 8.2.2977)
问题: Warning for uninitialized variable.
解决方案: Set return value to FAIL.
文件: src/eval.c
Patch 8.2.2979
问题: Not all options code is covered by tests.
解决方案: Add more tests for options. (Yegappan Lakshmanan, closes #8369)
文件: src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
src/testdir/test_help.vim, src/testdir/test_mksession.vim,
src/testdir/test_options.vim, src/testdir/test_vartabs.vim,
src/testdir/test_window_cmd.vim
Patch 8.2.2980
问题: Popup window test is a bit flaky.
解决方案: Add a redraw command.
文件: src/testdir/test_popupwin.vim
Patch 8.2.2981
问题: Recovery test is not run on big-endian systems.
解决方案: Make it work on big-endian systems. (James McCoy, closes #8368)
文件: src/testdir/test_recover.vim
Patch 8.2.2982
问题: Vim9: future commands are not reserved yet.
解决方案: Add commands to be implemented later. Make "this" a reserved
name.
文件: runtime/doc/vim9.txt, src/ex_cmds.h, src/ex_cmdidxs.h,
src/vim9script.c, src/testdir/test_vim9_assign.vim
Patch 8.2.2983
问题: Vim9: an inline function requires specifying the return type.
解决方案: Make the return type optional.
文件: src/eval.c, src/vim9compile.c, src/userfunc.c,
src/testdir/test_vim9_func.vim
Patch 8.2.2984 (after 8.2.2983)
问题: Vim9: Test fails because of missing return statement.
解决方案: When type is unknown set type to void.
文件: src/vim9compile.c
Patch 8.2.2985
问题: Vim9: a compiled function cannot be debugged.
解决方案: Add initial debugging support.
文件: src/vim9.h, src/vim9compile.c, src/proto/vim9compile.pro,
src/vim.h, src/eval.c, src/vim9execute.c, src/userfunc.c,
src/vim9type.c, src/testdir/test_debugger.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.2986
问题: Build failure without the profile feature.
解决方案: Add #ifdef.
文件: src/vim9compile.c
Patch 8.2.2987
问题: Build failure with normal features.
解决方案: Remove #define.
文件: src/vim9execute.c
Patch 8.2.2988
问题: Vim9: debugger test fails.
解决方案: Get the debugger instructions when needed.
文件: src/vim.h, src/vim9.h
Patch 8.2.2989
问题: Vim9: memory leak when debugging a :def function.
解决方案: Free the debug instructions.
文件: src/vim9compile.c
Patch 8.2.2990
问题: Jupyter Notebook files are not recognized.
解决方案: Recognize *.ipynb. (closes #8375)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.2991
问题: Vim9: no completion for :vim9 and :legacy.
解决方案: Expand argument as a command. (closes #8377)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.2992
问题: Vim9: completion for :disassemble is incomplete.
解决方案: Recognize the "debug" and "profile" arguments.
文件: src/cmdexpand.c, src/vim9execute.c, src/proto/vim9execute.pro,
src/vim.h, src/testdir/test_cmdline.vim
Patch 8.2.2993
问题: 'fileencodings' default value should depend on 'encoding'. (Gary
Johnson)
解决方案: When 'encoding' is "utf-8" use a different default value for
'fileencodings'.
文件: src/mbyte.c, src/option.c, src/proto/option.pro,
src/testdir/test_options.vim
Patch 8.2.2994
问题: Various code is not fully tested.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8378)
文件: src/testdir/test_excmd.vim, src/testdir/test_mapping.vim,
src/testdir/test_modeline.vim, src/testdir/test_options.vim,
src/testdir/test_paste.vim, src/vim9compile.c
Patch 8.2.2995
问题: Linker errors with dynamic Python 3.10.
解决方案: Add a couple of library entries. (Zdenek Dohnal, closes #8381,
closes #8356)
文件: src/if_python3.c
Patch 8.2.2996
问题: Vim9: when debugging cannot inspect local variables.
解决方案: Make local variables available when debugging.
文件: src/vim9execute.c, src/proto/vim9execute.pro, src/vim9compile.c,
src/vim9.h, src/debugger.c, src/testdir/test_debugger.vim
Patch 8.2.2997 (after 8.2 2996)
问题: Vim9: disassemble test fails.
解决方案: Adjust expected output.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.2998 (after 8.2 2996)
问题: Vim9: disassemble test fails.
解决方案: Add missing call to lookup_debug_var().
文件: src/evalvars.c
Patch 8.2.2999
问题: Balloon sometimes does not hide with GTK 3.
解决方案: Also listen to GDK_LEAVE_NOTIFY. (Johannes Stezenbach)
文件: src/gui_beval.c
Patch 8.2.3000
问题: Vim9: warning for uninitialized variable.
解决方案: Add initialization. (John Marriott)
文件: src/vim9compile.c
Patch 8.2.3001
问题: Vim9: memory leak when compilation fails.
解决方案: Free the list of variable names.
文件: src/vim9compile.c
Patch 8.2.3002
问题: Vim doesn't abort on a fatal Tcl error.
解决方案: Change emsg() to iemsg(). (Dominique Pellé, closes #8383)
文件: src/if_tcl.c
Patch 8.2.3003
问题: Vim9: closure compiled with wrong compile type.
解决方案: Use COMPILE_TYPE() when calling a function. (closes #8384)
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.3004
问题: Vim9: error for missing colon given while skipping.
解决方案: Do not give the error when skipping. (closes #8385)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.3005
问题: Vim9: using a void value does not give a proper error message.
解决方案: Give a clear error message. (closes #8387)
文件: src/typval.c, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3006
问题: Crash when echoing a value very early. (Naruhiko Nishino)
解决方案: Do not use a NUL to truncate the message, make a copy.
(closes #8388)
文件: src/message.c, src/testdir/test_startup.vim
Patch 8.2.3007 (after 8.2.3005)
问题: Vim9: test for void value fails.
解决方案: Adjust expected error. Do not make a copy of void.
文件: src/typval.c, src/testdir/test_functions.vim
Patch 8.2.3008 (after 8.2.3006)
问题: Startup test may hang.
解决方案: Add quit command in the script.
文件: src/testdir/test_startup.vim
Patch 8.2.3009 (after 8.2.3006)
问题: Startup test may hang.
解决方案: Do not run the test in the GUI.
文件: src/testdir/test_startup.vim
Patch 8.2.3010
问题: Not enough testing for viminfo code.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #8390)
文件: src/register.c, src/testdir/test_fileformat.vim,
src/testdir/test_smartindent.vim, src/testdir/test_viminfo.vim
Patch 8.2.3011
问题: Vim9: cannot get argument values during debugging.
解决方案: Lookup names in the list of arguments. Put debug instruction
halfway for command.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_debugger.vim
Patch 8.2.3012
问题: When 'rightleft' is set the line number is sometimes drawn
reversed.
解决方案: Adjust how space is handled. (Christian Brabandt, closes #8389,
closes #8391)
文件: src/drawline.c, src/testdir/test_number.vim
Patch 8.2.3013
问题: Vim: when debugging only the first line of a command using line
continuation is displayed.
解决方案: Find the next command and concatenate lines until that one.
(closes #8392)
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.3014
问题: Coverity warns for freeing static string.
解决方案: Do not assign static string to pointer. (Dominique Pellé,
closes #8397)
文件: src/vim9execute.c
Patch 8.2.3015
问题: Vim9: Assigning to @# requires a string. (Naohiro Ono)
解决方案: Accent a number or a string. (closes #8396)
文件: src/vim9compile.c, src/vim9execute.c, src/globals.h,
src/testdir/test_vim9_assign.vim
Patch 8.2.3016
问题: Confusing error when expression is followed by comma.
解决方案: Give a different error for trailing text. (closes #8395)
文件: src/eval.c, src/testdir/test_let.vim,
src/testdir/test_eval_stuff.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim,
src/testdir/test_vimscript.vim
Patch 8.2.3017
问题: Vim9: debugger shows too many lines.
解决方案: Truncate at a comment, "enddef", etc. (closes #8392)
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.3018
问题: Formatting using quickfixtextfunc is lost when updating location
lists for different buffers. (Yorick Peterse)
解决方案: Use the right window for the location list. (Yegappan Lakshmanan,
closes #8400, closes #8403)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.3019
问题: Location list only has the start position.
解决方案: Make it possible to add an end position. (thinca, closes #8393)
文件: runtime/doc/eval.txt, src/quickfix.c,
src/testdir/dumps/Test_quickfix_cwindow_1.dump,
src/testdir/dumps/Test_quickfix_cwindow_2.dump,
src/testdir/test_quickfix.vim, src/testdir/test_tagjump.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.3020
问题: Unreachable code.
解决方案: Remove the code. (closes #8406)
文件: src/ex_docmd.c
Patch 8.2.3021
问题: Spaces allowed between option name and "!", "?", etc.
解决方案: Disallow spaces in Vim9 script, it was not documented.
(closes #8408)
文件: src/option.c, src/testdir/test_vim9_script.vim
Patch 8.2.3022
问题: Available encryption methods are not strong enough.
解决方案: Add initial support for xchacha20. (Christian Brabandt,
closes #8394)
文件: .github/workflows/ci.yml, runtime/doc/eval.txt,
runtime/doc/options.txt, runtime/doc/various.txt,
src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
src/auto/configure, src/blowfish.c, src/bufwrite.c,
src/config.h.in, src/configure.ac, src/crypt.c, src/crypt_zip.c,
src/errors.h, src/evalfunc.c, src/feature.h, src/fileio.c,
src/memline.c, src/option.c, src/optionstr.c,
src/proto/blowfish.pro, src/proto/crypt.pro,
src/proto/crypt_zip.pro, src/structs.h,
src/testdir/samples/crypt_sodium_invalid.txt,
src/testdir/test_crypt.vim, src/undo.c, src/version.c
Patch 8.2.3023
问题: Vim9: arguments for execute() not checked at compile time.
解决方案: Add a function to check the argument types.
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3024 (after 8.2.3023)
问题: execute() function test fails.
解决方案: Adjust test for different error.
文件: src/testdir/test_execute_func.vim
Patch 8.2.3025
问题: Not enough tests for quickfix end_col and end_lnum.
解决方案: Add a few more test cases. (Shane-XB-Qian, closes #8409)
文件: src/testdir/test_quickfix.vim
Patch 8.2.3026
问题: Vim9: cannot set breakpoint in compiled function.
解决方案: Check for breakpoint when calling a function.
文件: src/vim9execute.c, src/structs.h, src/vim.h, src/vim9.h,
src/debugger.c, src/testdir/test_debugger.vim
Patch 8.2.3027
问题: Vim9: breakpoint in compiled function not always checked.
解决方案: Check for breakpoint when calling compiled function from compiled
function.
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.3028
问题: GUI mouse events not tested.
解决方案: Add test_gui_mouse_event(). Add mouse tests. Also add a few
viminfo tests. (Yegappan Lakshmanan, closes #8407)
文件: runtime/doc/eval.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/testing.pro,
src/testdir/test_gui.vim, src/testdir/test_viminfo.vim,
src/testing.c
Patch 8.2.3029
问题: Vim9: crash when using operator and list unpack assignment.
(Naohiro Ono)
解决方案: Get variable value before operation. (closes #8416)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/ex_docmd.c,
src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3030
问题: Coverity reports a memory leak.
解决方案: Fix the leak and a few typos. (Dominique Pellé, closes #8418)
文件: src/crypt.c, src/errors.h
Patch 8.2.3031
问题: No error if a function name starts with an underscore. (Naohiro
Ono)
解决方案: In Vim9 script disallow a function name starting with an
underscore, as is mentioned in the help. (closes #8414)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3032
问题: Build problems with MSVC, other crypt issues with libsodium.
解决方案: Adjust MSVC makefile. Disable swap file only when 'key' is set.
Adjust error message used when key is wrong. Fix Coverity issues.
(Christian Brabandt, closes #8420, closes #8411)
文件: src/Make_mvc.mak, src/crypt.c, src/errors.h, src/fileio.c,
src/memline.c, src/proto/crypt.pro
Patch 8.2.3033
问题: No error when using alpha delimiter with :global.
解决方案: Check the delimiter like with :substitute. (closes #8415)
文件: src/ex_cmds.c, src/testdir/test_global.vim
Patch 8.2.3034
问题: Installing packages on github CI sometimes fails.
解决方案: Update package information first. (Christian Brabandt,
closes #8432)
文件: .github/workflows/ci.yml
Patch 8.2.3035
问题: Vim9: crash when calling :def function with partial and return
type is not set.
解决方案: When the return type is not set handle like the return type is
unknown. (closes #8422)
文件: src/vim9type.c, src/testdir/test_vim9_func.vim
Patch 8.2.3036
问题: Vim9: builtin function arguments not checked at compile time.
解决方案: Add more argument type specs. Check arguments to test_setmouse()
and test_gui_mouse_event(). (Yegappan Lakshmanan, closes #8425)
文件: src/evalfunc.c, src/testdir/test_assert.vim,
src/testdir/test_gui.vim, src/testdir/test_popupwin.vim,
src/testdir/test_vim9_builtin.vim, src/testing.c
Patch 8.2.3037
问题: Configure reports libcanberra when checking for libsodium.
解决方案: Adjust the message. (Ozaki Kiichi, closes #8435)
文件: src/configure.ac, src/auto/configure
Patch 8.2.3038
问题: Amiga built-in version string doesn't include build date.
解决方案: Add the build date if available. (Ola Söder, closes #8437)
文件: src/os_amiga.c
Patch 8.2.3039
问题: Vim9: breakpoint at a comment line does not work.
解决方案: Add the comment line number to the debug instruction.
(closes #8429)
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_debugger.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3040
问题: GUI: dropping files not tested.
解决方案: Add test_gui_drop_files() and tests. (Yegappan Lakshmanan,
closes #8434)
文件: runtime/doc/eval.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/gui.c,
src/proto/testing.pro, src/testdir/test_gui.vim, src/testing.c
Patch 8.2.3041
问题: Detecting if the process of a swap file is running fails if the
process is owned by another user.
解决方案: Check for the ESRCH error. (closes #8436)
文件: src/os_unix.c
Patch 8.2.3042 (after 8.2.3041)
问题: Swap file test fails.
解决方案: Check for a very high process ID instead of one, which should be
running.
文件: src/testdir/test_swap.vim
Patch 8.2.3043
问题: Amiga: cannot get the shell size on MorphOS and AROS.
解决方案: Use control sequences. (Ola Söder, closes #8438)
文件: src/os_amiga.c
Patch 8.2.3044
问题: Amiga MorphOS and AROS: process ID is not valid.
解决方案: Use FindTask to return something which is unique to all processes.
(Ola Söder, closes #8444)
文件: src/os_amiga.c
Patch 8.2.3045
问题: Minor typos.
解决方案: Fix the typos. (Christian Brabandt, closes #8441)
文件: src/VisVim/README_VisVim.txt, src/evalfunc.c, src/testdir/vim9.vim
Patch 8.2.3046
问题: Amiga MorphOS: Term mode is set using DOS packets.
解决方案: Use the same way of setting term mode on all next gen Amiga-like
systems. (Ola Söder, closes #8445)
文件: src/os_amiga.c
Patch 8.2.3047
问题: Increment and decrement don't allow for next command.
解决方案: Allow for comment and next command. (closes #8442)
文件: src/ex_cmds.h, src/vim9script.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3048
问题: Strange error for white space after ++ command.
解决方案: Check for white space explicitly. (closes #8440)
文件: src/vim9script.c, src/errors.h, src/vim9compile.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.3049
问题: JSON patch file not recognized.
解决方案: Recognize json-patch as json. (Kevin Locke, closes #8450)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3050
问题: Cannot recognize elixir files.
解决方案: Recognize Elixir-specific files. Check if an .ex file is Euphoria
or Elixir. (Austin Gatlin, closes #8401, closes #8446)
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim
Patch 8.2.3051
问题: Vim9: for loop with one list variable does not work.
解决方案: Use a separate flag for unpacking a list. (closes #8452)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3052
问题: Vim9: "legacy call" does not work.
解决方案: Do not skip "call" after "legacy". (closes #8454)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.3053
问题: Vim9: cannot assign to @@ in :def function
解决方案: Handle '@' like '"'. (closes #8456)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3054
问题: Vim9: unpack assignment using "_" after semicolon fails.
解决方案: Drop the expression result. (closes #8453)
文件: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_assign.vim
Patch 8.2.3055
问题: Strange error for assigning to "x.key" on non-dictionary.
解决方案: Add a specific error message. (closes #8451)
文件: src/eval.c, src/errors.h, src/testdir/test_vim9_assign.vim,
src/testdir/test_listdict.vim, src/testdir/test_let.vim
Patch 8.2.3056
问题: Vim9: using default value in lambda gives confusing error.
解决方案: Pass "default_args" on the first pass to get the arguments.
(closes #8455)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3057
问题: Vim9: debugger test fails with normal features and +terminal.
(Dominique Pellé)
解决方案: Adjust the INSTRUCTIONS macro. (closes #8460)
文件: src/vim9.h
Patch 8.2.3058 (after 8.2.3056)
问题: Vim9: cannot use ternary operator in parentheses.
解决方案: Do not use "==" for a default argument value. (closes #8462)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3059 (after 8.2.3056)
问题: Vim9: memory leak when using lambda.
解决方案: Do not store the default value strings when skipping.
文件: src/userfunc.c
Patch 8.2.3060 (after 8.2.3056)
问题: Vim9: cannot use ternary operator in parentheses.
解决方案: Do not use "=~" for a default argument value. (closes #8462)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3061
问题: Testing the shell option is incomplete and spread out.
解决方案: Move shell tests to one file and increase coverage. (Yegappan
Lakshmanan, closes #8464)
文件: src/testdir/Make_all.mak, src/testdir/test_functions.vim,
src/testdir/test_options.vim, src/testdir/test_shell.vim,
src/testdir/test_system.vim
Patch 8.2.3062
问题: Internal error when adding several text properties.
解决方案: Do not handle text properties when deleting a line for splitting a
data block. (closes #8466)
文件: src/structs.h, src/memline.c, src/testdir/test_textprop.vim
Patch 8.2.3063
问题: Crash when switching 'cryptmethod' to xchaha20 with an existing
undo file. (Martin Tournoij)
解决方案: Disable reading undo file when decoding can't be done inplace.
(issue #8467)
文件: src/fileio.c, src/bufwrite.c
Patch 8.2.3064
问题: Vim9: in script cannot set item in uninitialized list.
解决方案: When a list is NULL allocate an empty one. (closes #8461)
文件: src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3065
问题: Vim9: error when sourcing script twice and reusing a function
name.
解决方案: Check if the function is dead. (closes #8463)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3066
问题: Vim9: debugging lambda does not work.
解决方案: Use the compile type of the function when compiling a lambda.
(closes #8412)
文件: src/vim9compile.c, src/testdir/test_debugger.vim
Patch 8.2.3067
问题: Building fails with Athena. (Elimar Riesebieter)
解决方案: Adjust #ifdefs and add the 'drop_file' feature.
文件: src/evalfunc.c, src/testing.c, src/testdir/test_gui.vim
Patch 8.2.3068
问题: Unicode tables are slightly outdated.
解决方案: Update the tables for Unicode release 13. (Christian Brabandt
closes #8430)
文件: runtime/tools/unicode.vim, src/mbyte.c
Patch 8.2.3069
问题: Error messages are spread out.
解决方案: Move some error messages to errors.h. Use clearer names.
文件: src/errors.h, src/globals.h, src/arglist.c, src/buffer.c,
src/channel.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
src/evalwindow.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
src/filepath.c, src/fold.c, src/getchar.c, src/indent.c,
src/list.c, src/map.c, src/mark.c, src/normal.c, src/ops.c,
src/optionstr.c, src/popupwin.c, src/quickfix.c, src/spellfile.c,
src/textprop.c, src/typval.c, src/undo.c, src/userfunc.c,
src/vim9compile.c, src/window.c
Patch 8.2.3070
问题: Not enough testing for shell use.
解决方案: Add a bit more testing. (Yegappan Lakshmanan, closes #8469)
文件: src/testdir/test_shell.vim, src/testdir/test_startup.vim
Patch 8.2.3071
问题: Shell options are not set properly for PowerShell.
解决方案: Use better option defaults. (Mike Williams, closes #8459)
文件: runtime/doc/eval.txt, runtime/doc/options.txt,
runtime/doc/os_dos.txt, src/fileio.c, src/misc2.c, src/option.c,
src/os_win32.c, src/testdir/test_shell.vim
Patch 8.2.3072
问题: The "zy" command does not work well when 'virtualedit' is set to
"block". (Johann Höchtl)
解决方案: Make endspaces zero. (Christian Brabandt, closes #8468,
closes #8448)
文件: src/register.c, src/testdir/test_visual.vim
Patch 8.2.3073
问题: When cursor is moved for block append wrong text is inserted.
解决方案: Calculate an offset. (Christian Brabandt, closes #8433,
closes #8288)
文件: src/ops.c, src/testdir/test_blockedit.vim,
src/testdir/test_visual.vim
Patch 8.2.3074
问题: popup_atcursor() uses wrong position with concealing.
解决方案: Keep w_wcol in conceal_check_cursor_line(). (closes #8476)
文件: src/screen.c, src/proto/screen.pro, src/normal.c, src/edit.c,
src/ui.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_atcursor_pos.dump
Patch 8.2.3075
问题: Xxd always reports an old version string. (Åsmund Ervik)
解决方案: Update the version string with the last known change date.
(Jürgen Weigert, closes #8475)
文件: src/xxd/xxd.c, src/testdir/test_xxd.vim
Patch 8.2.3076
问题: Vim9: using try in catch block causes a hang.
解决方案: Save and restore the ec_in_catch flag. (closes #8478)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.3077
问题: Vim9: an error in a catch block is not reported.
解决方案: Put the "in catch" flag in the try stack. (closes #8478)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.3078
问题: Vim9: profile test fails.
解决方案: Make throw in :catch jump to :finally.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3079
问题: Powershell core not supported by default.
解决方案: Set option defaults for "pwsh". (Mike Williams, closes #8481)
文件: runtime/doc/eval.txt, runtime/doc/options.txt,
runtime/doc/os_dos.txt, runtime/doc/os_win32.txt, src/fileio.c,
src/misc2.c, src/option.c, src/os_win32.c,
src/testdir/test_shell.vim
Patch 8.2.3080
问题: Recover test fails on 32bit systems. (Ondřej Súkup)
解决方案: Detect 32/64 bit systems. (Yegappan Lakshmanan, closes #8485,
closes #8479)
文件: src/testdir/test_recover.vim
Patch 8.2.3081
问题: Cannot catch errors in a channel command.
解决方案: Instead of skipping the error make it silent. (closes #8477)
文件: src/channel.c
Patch 8.2.3082
问题: A channel command "echoerr" does not show anything.
解决方案: Do not use silent errors when using an "echoerr" command.
(closes #8494)
文件: src/channel.c, src/testdir/test_channel.py,
src/testdir/test_channel.vim
Patch 8.2.3083
问题: Crash when passing null string to charclass().
解决方案: Bail out when string pointer is NULL. (Christian Brabandt,
closes #8498, closes #8260)
文件: src/mbyte.c, src/testdir/test_functions.vim
Patch 8.2.3084
问题: Vim9: builtin function argument types are not checked at compile
time.
解决方案: Add argument types. (Yegappan Lakshmanan, closes #8503)
文件: src/evalfunc.c, src/testdir/test_functions.vim,
src/testdir/test_glob2regpat.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.3085
问题: JSONC files are not recognized.
解决方案: Recognize .jsonc files. (Izhak Jakov, closes #8500)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3086
问题: Vim9: breakpoint on "for" does not work.
解决方案: Use the right line number in ISN_DEBUG. (closes #8486)
文件: src/vim9compile.c, src/testdir/test_debugger.vim
Patch 8.2.3087
问题: Gemtext files are not recognized.
解决方案: Recognize .gmi and .gemini files. (closes #8427)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3088
问题: With 'virtualedit' set to "block" Visual highlight is wrong after
using "$". (Marco Trosi)
解决方案: Do not set w_old_cursor_lcol to MAXCOL. (closes #8495)
文件: src/drawscreen.c, src/testdir/test_visual.vim,
src/testdir/dumps/Test_visual_block_with_virtualedit.dump
Patch 8.2.3089
问题: Garbage collection has useless code.
解决方案: Bail out when aborting. (closes #8504)
文件: src/userfunc.c
Patch 8.2.3090
问题: With concealing enabled and indirectly closing a fold the cursor
may be somewhere in a folded line.
解决方案: Recompute the cursor position when the cursor line can be
concealed. (closes #8480)
文件: src/drawscreen.c
Patch 8.2.3091
问题: Vim9: default argument expression cannot use previous argument
解决方案: Correct argument index. (closes #8496)
文件: src/vim9compile.c, src/structs.h, src/testdir/test_vim9_func.vim
Patch 8.2.3092
问题: Vim9: builtin function test fails without the +channel feature.
解决方案: Check the +channel feature is supported. (Dominique Pellé,
closes #8507)
文件: runtime/doc/eval.txt, src/testdir/test_vim9_builtin.vim
Patch 8.2.3093
问题: tablabel_tooltip test fails with Athena. (Dominique Pellé)
解决方案: Skip the test when using Athena. (closes #8508)
文件: src/testdir/test_gui.vim, src/testdir/check.vim
Patch 8.2.3094
问题: Test_popup_atcursor_pos() fails without the conceal feature.
解决方案: Add a check for the conceal feature. (Dominique Pellé,
closes #8505)
文件: src/testdir/test_popupwin.vim
Patch 8.2.3095 (after 8.2.3088)
问题: With 'virtualedit' set to "block" block selection is wrong after
using "$". (Marco Trosi)
解决方案: Compute the longest selected line. (closes #8495)
文件: src/drawscreen.c, src/testdir/test_visual.vim,
src/testdir/dumps/Test_visual_block_with_virtualedit2.dump
Patch 8.2.3096
问题: Temp files remain after running tests.
解决方案: Delete the right files. (Dominique Pellé, closes #8509)
文件: src/testdir/test_debugger.vim, src/testdir/test_lambda.vim,
src/testdir/test_visual.vim
Patch 8.2.3097
问题: Crash when using "quit" at recovery prompt and autocommands are
triggered.
解决方案: Block autocommands when creating an empty buffer to use as the
current buffer. (closes #8506)
文件: src/buffer.c, src/testdir/test_swap.vim
Patch 8.2.3098
问题: Popup window test is flaky on MS-Windows with GUI.
解决方案: Skip the check in this situation.
文件: src/testdir/test_popupwin.vim
Patch 8.2.3099
问题: Vim9: missing catch/finally not reported at script level.
解决方案: Give an error. (closes #8487)
文件: src/structs.h, src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3100
问题: Vim9: no error when using type with unknown number of arguments.
解决方案: Do not ignore argument count of -1. (closes #8492)
文件: src/vim9type.c, src/evalfunc.c, src/proto/evalfunc.pro,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.3101
问题: Missing function prototype for vim_round().
解决方案: Add the prototype.
文件: src/proto/float.pro
Patch 8.2.3102 (after 8.2.3097)
问题: Test for crash fix does not fail without the fix.
解决方案: Adjust the test sequence. (closes #8506)
文件: src/testdir/test_swap.vim
Patch 8.2.3103 (after 8.2.3102)
问题: Swap test may fail on some systems when jobs take longer to exit.
解决方案: Use different file names.
文件: src/testdir/test_swap.vim
Patch 8.2.3104
问题: Vim9: unspecified function type causes type error.
解决方案: Don't check type when min_argcount is negative. (issue #8492)
文件: src/globals.h, src/vim9type.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3105
问题: Vim9: type of partial is wrong when it has arguments.
解决方案: Subtract arguments from the count. (issue #8492)
文件: src/vim9type.c, src/userfunc.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3106
问题: Vim9: confusing line number reported for error.
解决方案: Use the start line number for the store instruction.
(closes #8488)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3107
问题: Vim9: error for arguments while type didn't specify arguments.
解决方案: Do not update that type to check when no argument count is
specified. (closes #8492)
文件: src/userfunc.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3108
问题: Test for remote_foreground() fails. (Elimar Riesebieter)
解决方案: Check that $DISPLAY is set. (Christian Brabandt)
文件: src/testdir/check.vim, src/testdir/test_clientserver.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3109
问题: Check for $DISPLAY never fails.
解决方案: Use eval().
文件: src/testdir/check.vim
Patch 8.2.3110
问题: A pattern that matches the cursor position is a bit complicated.
解决方案: Use a dot to indicate the cursor line and column. (Christian
Brabandt, closes #8497, closes #8179)
文件: runtime/doc/pattern.txt, src/errors.h, src/regexp_bt.c,
src/regexp_nfa.c, src/testdir/test_regexp_latin.vim
Patch 8.2.3111
问题: Vim9: confusing error with extra whitespace before colon.
解决方案: Check for colon after white space. (closes #8513)
文件: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3112 (after 8.2.3090)
问题: With concealing enabled and indirectly closing a fold the cursor
may be somewhere in a folded line when it is not on the first line
of the fold.
解决方案: Check if the cursor is somewhere in the folded text.
文件: src/drawscreen.c
Patch 8.2.3113
问题: No error when for loop variable shadows script variable.
解决方案: Check for the error. (closes #8512)
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3114
问题: Amiga-like systems: build error checking for running process
解决方案: Only build swapfile_process_running() on systems where it is
actually used. (Ola Söder, closes #8519)
文件: src/memline.c
Patch 8.2.3115
问题: Coverity complains about free_wininfo() use.
解决方案: Add a condition that "wip2" is not equal to "wip". (Neovim #14996)
文件: src/window.c
Patch 8.2.3116
问题: Vim9: crash when debugging a function with line continuation.
解决方案: Check for a NULL pointer. (closes #8521)
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.3117
问题: Vim9: type not properly checked in for loop.
解决方案: Have items() return a list of lists. Add runtime type checks.
(closes #8515)
文件: src/evalfunc.c, src/globals.h, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3118
问题: Vim9: "any" type not handled correctly in for loop.
解决方案: Change compile time check into runtime check. (closes #8516)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3119
问题: Compiler warning for unused argument.
解决方案: Add UNUSED.
文件: src/evalfunc.c
Patch 8.2.3120
问题: Crypt with sodium test fails on MS-Windows.
解决方案: Make the tests pass. (closes #8428)
文件: src/testdir/test_crypt.vim
Patch 8.2.3121
问题: 'listchars' "exceeds" character appears in foldcolumn. Window
separator is missing. (Leonid V. Fedorenchik)
解决方案: Only draw the "exceeds" character in the text area. Break the
loop when not drawing the text. (closes #8524)
文件: src/drawline.c, src/testdir/test_listchars.vim,
src/testdir/dumps/Test_listchars_01.dump,
src/testdir/dumps/Test_listchars_02.dump,
src/testdir/dumps/Test_listchars_03.dump,
src/testdir/dumps/Test_listchars_04.dump,
src/testdir/dumps/Test_listchars_05.dump
Patch 8.2.3122
问题: With 'nowrap' cursor position is unexpected in narrow window.
(Leonid V. Fedorenchik)
解决方案: Put cursor on the last non-empty line. (closes #8525)
文件: src/move.c, src/testdir/test_listchars.vim,
src/testdir/dumps/Test_listchars_06.dump,
src/testdir/dumps/Test_listchars_07.dump
Patch 8.2.3123
问题: Vim9: confusing error when using white space after option, before
one of "!&<".
解决方案: Give a specific error. (issue #8408)
文件: src/errors.h, src/option.c, src/testdir/test_vim9_script.vim
Patch 8.2.3124
问题: Vim9: no error for white space between option and "=9".
解决方案: Check for extraneous white space. (issue #8408)
文件: src/option.c, src/testdir/test_vim9_script.vim
Patch 8.2.3125
问题: Variables are set but not used.
解决方案: Move the declarations to the block where they are used.
(closes #8527)
文件: src/regexp_nfa.c
Patch 8.2.3126
问题: Vim9: for loop error reports wrong line number.
解决方案: Save and restore the line number when evaluating the expression.
(closes #8514)
文件: src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3127
问题: Vim9: no error when adding number to list of string.
解决方案: Check the value type. (closes #8529)
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3128
问题: Vim9: uninitialized list does not get type checked.
解决方案: Set the type when initializing the variable. (closes #8529)
文件: src/eval.c, src/evalvars.c, src/vim9script.c,
src/userfunc.c, src/proto/vim9script.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3129
问题: Vim9: imported uninitialized list does not get type checked.
解决方案: Get type from imported variable.
文件: src/eval.c, src/evalvars.c, src/vim9script.c,
src/proto/vim9script.pro, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3130
问题: Vim9: import test fails.
解决方案: Rename directory back to "import", use "p" to avoid an error when
the directory already exists.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.3131
问题: MS-Windows: ipv6 channel test is very flaky in the GUI.
解决方案: Skip the test.
文件: src/testdir/test_channel.vim
Patch 8.2.3132
问题: Compiler warns for size_t to colnr_T conversion. (Randall W.
Morris)
解决方案: Add a type cast.
文件: src/drawscreen.c
Patch 8.2.3133
问题: Vim9: memory leak when add() fails.
解决方案: Allocate listitem_T after type check.
文件: src/list.c
Patch 8.2.3134
问题: Crash when using typename() on a function reference. (Naohiro Ono)
解决方案: Initialize pointer to NULL. (closes #8531)
文件: src/vim9type.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3135
问题: Vim9: builtin function arguments not checked at compile time.
解决方案: Add more type checks. (Yegappan Lakshmanan, closes #8539)
文件: src/channel.c, src/errors.h, src/evalfunc.c, src/proto/typval.pro,
src/terminal.c, src/testdir/test_search.vim,
src/testdir/test_textprop.vim, src/testdir/test_vim9_builtin.vim,
src/testing.c, src/textprop.c, src/typval.c
Patch 8.2.3136
问题: No test for E187 and "No swap file".
解决方案: Add a test. (Dominique Pellé, closes #8540)
文件: src/testdir/test_cd.vim, src/testdir/test_swap.vim
Patch 8.2.3137
问题: Vim9: no error when a line only has a variable name.
解决方案: Give an error when an expression is evaluated without an effect.
(closes #8538)
文件: src/ex_eval.c, src/errors.h, src/vim9compile.c,
src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.3138 (after 8.2.3137)
问题: Debugger test fails.
解决方案: Adjust eval command.
文件: src/testdir/test_debugger.vim
Patch 8.2.3139
问题: Functions for string manipulation are spread out.
解决方案: Move string related functions to a new source file. (Yegappan
Lakshmanan, closes #8470)
文件: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/eval.c, src/evalfunc.c, src/mbyte.c, src/misc1.c, src/misc2.c,
src/proto.h, src/proto/eval.pro, src/proto/evalfunc.pro,
src/proto/mbyte.pro, src/proto/misc1.pro, src/proto/misc2.pro,
src/proto/strings.pro, src/strings.c
Patch 8.2.3140 (after 8.2.3131)
问题: MS-Windows: ipv6 channel test is very flaky also without the GUI.
解决方案: Skip the test also without the GUI.
文件: src/testdir/test_channel.vim
Patch 8.2.3141
问题: No error when using :complete for :command without -nargs.
解决方案: Give an error. (Martin Tournoij, closes #8544, closes #8541)
文件: src/usercmd.c, src/errors.h, src/testdir/test_usercommands.vim
Patch 8.2.3142
问题: Vim9: type check for has_key() argument is too strict.
解决方案: Also allow for a number key argument. (closes #8542)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3143
问题: Vim9: A lambda may be compiled with the wrong context if it is
called from a profiled function.
解决方案: Compile the lambda with and without profiling. (closes #8543)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3144
问题: Vim9: no error when using an invalid value for a line number.
解决方案: Give an error if the string value is not recognized.
(closes #8536)
文件: src/errors.h, src/eval.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3145
问题: Vim9: profile test fails without profile feature.
解决方案: Check the profile feature is present.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.3146
问题: Vim9: line number wrong for :execute argument.
解决方案: Use the line number of the :execute command itself. (closes #8537)
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3147
问题: Vim9: profiling does not work with a nested function.
解决方案: Also compile a nested function without profiling. (closes #8543)
Handle that compiling may cause the table of compiled functions to
change.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3148
问题: Vim9: function arg type check does not handle base offset.
解决方案: Take the base offset into account when checking builtin function
argument types.
文件: src/evalfunc.c, src/vim9compile.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3149 (after 8.2.3141)
问题: Some plugins have a problem with the error check for using
:command with -complete but without -nargs.
解决方案: In legacy script only give a warning message.
文件: src/usercmd.c, src/message.c, src/proto/message.pro,
src/testdir/test_usercommands.vim
Patch 8.2.3150
问题: Vim9: argument types are not checked at compile time.
解决方案: Add more type checks. (Yegappan Lakshmanan, closes #8545)
文件: src/evalfunc.c, src/testing.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3151
问题: Vim9: profiling fails if nested function is also profiled.
解决方案: Use the compile type from the outer function. (closes #8543)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3152
问题: Vim9: accessing "s:" results in an error.
解决方案: Do not try to lookup a script variable for "s:". (closes #8549)
文件: src/evalvars.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3153
问题: URLs with a dash in the scheme are not recognized.
解决方案: Allow for a scheme with a dash, but not at the start or end.
(Tsuyoshi CHO, closes #8299)
文件: src/misc1.c, src/testdir/test_buffer.vim
Patch 8.2.3154
问题: Vim9: some type checks for builtin functions fail.
解决方案: Correct the type checks. (Yegappan Lakshmanan, closes #8551,
closes #8550)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3155
问题: Some option related code not covered by tests.
解决方案: Add a few test cases. (Dominique Pellé, closes #8552)
文件: src/testdir/test_options.vim, src/testdir/test_set.vim
Patch 8.2.3156
问题: Vim9: term_getansicolors() test fails without +termguicolors.
解决方案: Add a check for the feature. (Dominique Pellé, closes #8555)
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.3157
问题: Crypt test may fail on MS-Windows.
解决方案: Ignore "[unix]" in the file message. (Christian Brabandt,
closes #8561)
文件: src/testdir/test_crypt.vim
Patch 8.2.3158
问题: Strange error message when using islocked() with a number.
(Yegappan Lakshmanan)
解决方案: Check that the name is empty.
文件: src/evalfunc.c, src/testdir/test_functions.vim
Patch 8.2.3159
问题: Cursor displayed in wrong position after deleting line.
解决方案: When deleting lines do not approximate botline. (fixes #8559)
文件: src/change.c
Patch 8.2.3160
问题: 'breakindent' does not work well for bulleted and numbered lists.
解决方案: Add the "list" entry to 'breakindentopt'. (Christian Brabandt,
closes #8564, closes #1661)
文件: runtime/doc/options.txt, src/indent.c, src/structs.h,
src/testdir/test_breakindent.vim
Patch 8.2.3161
问题: Vim9: no error when reltime() has invalid arguments.
解决方案: Add an error. (closes #8562)
文件: src/time.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3162
问题: Vim9: argument types are not checked at compile time.
解决方案: Add more type checks. (Yegappan Lakshmanan, closes #8560)
文件: runtime/doc/channel.txt, src/clientserver.c, src/cmdhist.c,
src/errors.h, src/evalfunc.c, src/evalwindow.c, src/filepath.c,
src/globals.h, src/popupwin.c, src/proto/typval.pro, src/sign.c,
src/strings.c, src/terminal.c, src/testdir/test_normal.vim,
src/testdir/test_reltime.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_expr.vim, src/testing.c, src/textprop.c,
src/time.c, src/typval.c
Patch 8.2.3163
问题: Location list window may open a wrong file.
解决方案: Also update the qf_ptr field. (Wei-Chung Wen, closes #8565,
closes #8566)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.3164
问题: MS-Windows: reported version lacks patchlevel, causing some update
tools to update too often. (Klaus Frank)
解决方案: Add the patchlevel to the version. (Christian Brabandt)
文件: src/dosinst.c
Patch 8.2.3165
问题: Vim9: in a || expression the error line number may be wrong.
解决方案: Save and restore the line number when checking the type.
(closes #8569)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3166
问题: Vim9: nested autoload call error overruled by "Unknown error".
解决方案: Check need_rethrow before giving an "Unknown error".
(closes #8568)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.3167
问题: Get E12 in a job callback when searching for tags. (Andy Stewart)
解决方案: Use the sandbox only for executing a command, not for searching.
(closes #8511)
文件: src/tag.c
Patch 8.2.3168
问题: Vim9: type error for constant of type any.
解决方案: Do add a runtime type check if a constant has type any.
(closes #8570)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3169
问题: Vim9: cannot handle nested inline function.
解决方案: Check for nested inline function. (closes #8575)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.3170
问题: Illegal memory access in test.
解决方案: Check pointer is not before the start of the line.
文件: src/userfunc.c
Patch 8.2.3171
问题: Another illegal memory access in test.
解决方案: Check pointer is after the start of the line.
文件: src/userfunc.c
Patch 8.2.3172
问题: MzScheme test fails. (Christian Brabandt)
解决方案: Correct function name.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.3173
问题: Vim9: argument types are not checked at compile time.
解决方案: Add more type checks. (Yegappan Lakshmanan, closes #8581)
文件: src/diff.c, src/errors.h, src/evalfunc.c, src/globals.h,
src/job.c, src/proto/typval.pro, src/strings.c, src/terminal.c,
src/testdir/test_vim9_builtin.vim, src/typval.c
Patch 8.2.3174
问题: Vim9: "legacy undo" finds "undo" variable.
解决方案: Do not pass lookup function to find_ex_command(). (closes #8563)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3175
问题: Vim9: using illegal pointer with inline function inside a lambda.
解决方案: Clear eval_tofree_cmdline when advancing to the next line.
(closes #8578)
文件: src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.3176
问题: Vim9: no type error for comparing number with string.
解决方案: Add a runtime type check. (closes #8571)
文件: src/typval.c, src/errors.h, src/testdir/test_vim9_expr.vim
Patch 8.2.3177
问题: Vim9: can not use "for _ in expr" at script level.
解决方案: Skip assignment if the loop variable is "_".
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3178
问题: Vim9: the file name of an :import cannot be an expression.
解决方案: Accept an expression that results in a string. Do not support
:import in a function.
文件: runtime/doc/vim9.txt, src/vim9script.c, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3179
问题: Vim9: cannot assign to an imported variable at script level.
解决方案: Lookup imported items when assigning.
文件: src/evalvars.c, src/errors.h, src/eval.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3180
问题: Vim9: memory leak when concatenating to an imported string.
解决方案: Clear the destination.
文件: src/evalvars.c
Patch 8.2.3181
问题: Vim9: builtin function test fails without channel feature.
解决方案: Add feature checks. (Dominique Pellé, closes #8586) Make feature
checks more consistent.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.3182
问题: Vim9: crash when using removing items from a constant list.
(Yegappan Lakshmanan)
解决方案: When a list was allocated with items copy them.
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3183
问题: Duplicate error numbers.
解决方案: Adjust the error numbers.
文件: src/errors.h, src/testdir/test_vim9_builtin.vim
Patch 8.2.3184
问题: Cannot add a digraph with a leading space. It is not easy to list
existing digraphs.
解决方案: Add setdigraph(), setdigraphlist(), getdigraph() and
getdigraphlist(). (closes #8580)
文件: runtime/doc/digraph.txt, runtime/doc/eval.txt,
runtime/doc/usr_41.txt, src/digraph.c, src/evalfunc.c,
src/ex_docmd.c, src/globals.h, src/errors.h,
src/proto/digraph.pro, src/testdir/test_digraph.vim
Patch 8.2.3185
问题: Vim9: start of inline function found in comment line.
解决方案: Do not check for inline function in comment line. (closes #8589)
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3186
问题: Vim9: not all failures for import tested
解决方案: Test more import failures
文件: src/errors.h, src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.3187
问题: Vim9: popup timer callback is not compiled.
解决方案: Compile the callback when creating the timer.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/popupwin.c
Patch 8.2.3188
问题: Vim9: argument types are not checked at compile time.
解决方案: Add several more type checks, also at runtime. (Yegappan
Lakshmanan, closes #8587)
文件: src/blob.c, src/channel.c, src/clientserver.c, src/cmdexpand.c,
src/cmdhist.c, src/dict.c, src/diff.c, src/errors.h, src/eval.c,
src/evalbuffer.c, src/evalfunc.c, src/evalvars.c,
src/evalwindow.c, src/filepath.c, src/globals.h, src/insexpand.c,
src/job.c, src/list.c, src/map.c, src/match.c,
src/proto/typval.pro, src/quickfix.c, src/search.c, src/sign.c,
src/strings.c, src/terminal.c, src/testdir/test_blob.vim,
src/testdir/test_gui.vim, src/testdir/test_vim9_builtin.vim,
src/testing.c, src/textprop.c, src/time.c, src/typval.c
Patch 8.2.3189
问题: Vim9: error when using "try|".
解决方案: Allow for "|" right after a command.
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.3190
问题: Error messages are spread out.
解决方案: Move error messages to errors.h and give them a clear name.
文件: src/globals.h, src/errors.h, src/buffer.c, src/debugger.c,
src/digraph.c, src/edit.c, src/ex_cmds.c, src/ex_cmds2.c,
src/ex_docmd.c, src/ex_eval.c, src/gui.c, src/list.c, src/main.c,
src/map.c, src/match.c, src/quickfix.c, src/regexp.c,
src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/search.c,
src/session.c, src/spell.c, src/syntax.c, src/time.c,
src/userfunc.c, src/vim9execute.c, src/window.c
Patch 8.2.3191
问题: Vim9: not enough code is tested.
解决方案: Use CheckLegacyAndVim9Success() in more places. Fix uncovered
problems.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_listdict.vim
Patch 8.2.3192 (after 8.2.3190)
问题: Build failure with small version (Tony Mechelynck).
解决方案: Remove stray #ifdef.
文件: src/errors.h
Patch 8.2.3193
问题: screenpos() is wrong when the last line is partially visible and
'display' is "lastline".
解决方案: Also compute the position for a partially visible line.
(closes #8599)
文件: src/move.c, src/testdir/test_cursor_func.vim
Patch 8.2.3194
问题: Vim9: argument types are not checked at compile time.
解决方案: Add several more type checks, simplify some. (Yegappan
Lakshmanan, closes #8598)
文件: src/diff.c, src/evalbuffer.c, src/evalfunc.c, src/job.c,
src/proto/typval.pro, src/sign.c, src/terminal.c,
src/testdir/test_vim9_builtin.vim, src/typval.c
Patch 8.2.3195
问题: Vim9: unclear error when passing too many arguments to lambda.
解决方案: Pass the expression itself instead of "[expression]".
(closes #8604)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.3196
问题: Vim9: bool expression with numbers only fails at runtime.
解决方案: Check constant to be bool at compile time. (closes #8603)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3197
问题: Error messages are spread out.
解决方案: Move a few more error messages to errors.h.
文件: src/globals.h, src/errors.h, src/edit.c, src/ex_cmds.c,
src/ex_docmd.c, src/evalvars.c, src/option.c, src/quickfix.c,
src/regexp_bt.c, src/regexp_nfa.c, src/regexp.c, src/undo.c,
src/vim9compile.c, src/vim9script.c
Patch 8.2.3198
问题: Cannot use 'formatlistpat' for breakindent.
解决方案: Use a negative list indent. (Maxim Kim, closes #8594)
文件: runtime/doc/options.txt, src/indent.c,
src/testdir/test_breakindent.vim
Patch 8.2.3199
问题: Vim9: execution speed can be improved.
解决方案: Make the break counter static.
文件: src/vim9execute.c
Patch 8.2.3200
问题: Vim9: hard to guess where a type error is given.
解决方案: Add the function name where possible. (closes #8608)
文件: src/dict.c, src/proto/dict.pro, src/eval.c, src/list.c,
src/vim9compile.c, src/vim9execute.c, src/structs.h,
src/vim9type.c, src/proto/vim9type.pro, src/if_py_both.h,
src/errors.h, src/testdir/test_vim9_builtin.vim
Patch 8.2.3201 (after 8.2.3200)
问题: Crash in test.
解决方案: Initialize "where".
文件: src/eval.c, src/evalvars.c
Patch 8.2.3202
问题: Vim9: tests are only executed for legacy script.
解决方案: Run more tests also for Vim9 script. Fix uncovered problems.
文件: src/vim9execute.c, src/ex_docmd.c, src/testdir/test_listdict.vim
Patch 8.2.3203
问题: Vim9: compiled string expression causes type error. (Yegappan
Lakshmanan)
解决方案: Remove the string type from the stack.
文件: src/vim9compile.c, src/evalfunc.c
Patch 8.2.3204
问题: Display garbled when 'cursorline' is set and lines wrap. (Gabriel
Dupras)
解决方案: Avoid inserting lines twice. (closes #7255)
文件: src/drawscreen.c, src/testdir/test_cursorline.vim,
src/testdir/dumps/Test_cursorline_redraw_1.dump,
src/testdir/dumps/Test_cursorline_redraw_2.dump
Patch 8.2.3205
问题: Coverity reports a null pointer dereference.
解决方案: Change the logic to avoid Coverity gets confused.
文件: src/vim9compile.c
Patch 8.2.3206
问题: Vim9: argument types are not checked at compile time.
解决方案: Add several more type checks. (Yegappan Lakshmanan, closes #8611)
文件: runtime/doc/eval.txt, src/blob.c, src/cmdhist.c, src/dict.c,
src/errors.h, src/evalfunc.c, src/filepath.c, src/globals.h,
src/job.c, src/list.c, src/match.c, src/misc1.c, src/popupwin.c,
src/proto/typval.pro, src/sign.c, src/terminal.c,
src/testdir/test_blob.vim, src/testdir/test_vim9_builtin.vim,
src/typval.c
Patch 8.2.3207
问题: Vim9: crash when compiling string fails. (Yegappan Lakshmanan)
解决方案: Adjust the type stack length.
文件: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3208
问题: Dynamic library load error does not mention why it failed.
解决方案: Add the error message. (Martin Tournoij, closes #8621)
文件: src/globals.h, src/if_cscope.c, src/if_lua.c, src/if_mzsch.c,
src/if_perl.xs, src/if_python.c, src/if_python3.c, src/if_ruby.c,
src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/os_win32.pro,
src/terminal.c
Patch 8.2.3209
问题: Vim9: lambda doesn't find block-local variable.
解决方案: Adjust how a script-local variable is found. (closes #8614)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.3210
问题: Vim9: searchpair() sixth argument is compiled. (Yegappan
Lakshmanan)
解决方案: Only compile the fifth argument.
文件: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3211
问题: Vim9: argument types are not checked at compile time.
解决方案: Add several more type checks. Fix type check for matchaddpos().
(Yegappan Lakshmanan, closes #8619)
文件: src/channel.c, src/evalfunc.c, src/evalvars.c, src/if_cscope.c,
src/job.c, src/proto/typval.pro,
src/testdir/test_vim9_builtin.vim, src/time.c, src/typval.c
Patch 8.2.3212
问题: Vim9: execution speed can be improved.
解决方案: Use __builtin_expect() to have the compiler produce better code.
(Dominique Pellé, closes #8613)
文件: src/vim9execute.c
Patch 8.2.3213
问题: NOCOMPOUNDSUGS entry in spell file not tested.
解决方案: Add a test. (Dominique Pellé, closes #8624)
文件: src/testdir/test_spellfile.vim
Patch 8.2.3214
问题: MS-Windows: passing /D does not set the install location.
解决方案: Adjust how the installer uses $VIM. Update the documentation.
(Christian Brabandt, Ken Takata, closes #8605)
文件: nsis/gvim.nsi, runtime/doc/os_win32.txt
Patch 8.2.3215
问题: Vim9: argument types are not checked at compile time.
解决方案: Add several more type checks. Sort the argument lists.
(Yegappan Lakshmanan, closes #8626)
文件: src/change.c, src/evalfunc.c, src/filepath.c, src/sound.c,
src/testdir/test_gui.vim, src/testdir/test_vim9_builtin.vim,
src/testing.c
Patch 8.2.3216
问题: Vim9: crash when using variable in a loop at script level.
解决方案: Do not clear the variable if a function was defined.
Do not create a new entry in sn_var_vals every time.
(closes #8628)
文件: src/eval.c, src/ex_eval.c, src/vim9script.c, src/userfunc.c,
src/evalvars.c, src/structs.h
Patch 8.2.3217 (after 8.2.3216)
问题: Build failure.
解决方案: Add missing changes.
文件: src/globals.h
Patch 8.2.3218
问题: When using xchaha20 crypt undo file is not removed.
解决方案: Reset 'undofile' and delete the file. (Christian Brabandt,
closes #8630, closes #8467)
文件: src/bufwrite.c, src/crypt.c, src/proto/undo.pro,
src/testdir/test_crypt.vim, src/undo.c
Patch 8.2.3219
问题: :find searches non-existing directories.
解决方案: Check the path is not "..". Update help. (Christian Brabandt,
closes #8612, closes #8533)
文件: runtime/doc/editing.txt, src/findfile.c,
src/testdir/test_findfile.vim
Patch 8.2.3220
问题: Test_term_setansicolors() fails in some configurations.
解决方案: Check available features. (Dominique Pellé, closes #8636)
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.3221
问题: Vim9: argument types are not checked at compile time.
解决方案: Add several more type checks. (Yegappan Lakshmanan, closes #8632)
文件: src/evalfunc.c, src/popupwin.c, src/proto/typval.pro,
src/testdir/test_assert.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_script.vim, src/testing.c, src/typval.c
Patch 8.2.3222
问题: Vim9: cannot use loop variable later as lambda argument.
解决方案: When not in function context check the current block ID.
(closes #8637)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.3223
问题: Vim: using {} block in autoloaded omnifunc fails.
解决方案: Allow using {} block when text is locked. (closes #8631)
文件: src/ex_cmds.h, src/testdir/test_ins_complete.vim
Patch 8.2.3224
问题: Cannot call script-local function after :vim9cmd. (Christian J.
Robinson)
解决方案: Skip over "<SNR>123".
文件: src/vim9compile.c, src/eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3225
问题: Incsearch highlighting is attempted halfway a mapping.
解决方案: Only do incsearch highlighting if keys were typed or there is no
more typeahead.
文件: src/ex_getln.c
Patch 8.2.3226
问题: New digraph functions use old naming scheme.
解决方案: Use the digraph_ prefix. (Hirohito Higashi, closes #8642)
文件: runtime/doc/digraph.txt, runtime/doc/eval.txt,
runtime/doc/usr_41.txt, src/digraph.c, src/edit.c, src/errors.h,
src/evalfunc.c, src/proto/digraph.pro,
src/testdir/test_digraph.vim
Patch 8.2.3227
问题: 'virtualedit' can only be set globally.
解决方案: Make 'virtualedit' global-local. (Gary Johnson, closes #8638)
文件: runtime/doc/options.txt, src/buffer.c, src/change.c,
src/drawscreen.c, src/edit.c, src/misc2.c, src/normal.c,
src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
src/optionstr.c, src/proto/option.pro, src/register.c,
src/structs.h, src/testdir/test_virtualedit.vim
Patch 8.2.3228
问题: Cannot use a simple block for the :command argument. (Maarten
Tournoij)
解决方案: Recognize a simple {} block. (issue #8623)
文件: runtime/doc/map.txt, src/misc2.c, src/proto/misc2.pro,
src/usercmd.c, src/testdir/test_usercommands.vim
Patch 8.2.3229
问题: Vim9: runtime and compile time type checks are not the same.
解决方案: Add more runtime type checks for builtin functions. (Yegappan
Lakshmanan, closes #8646)
文件: src/arglist.c, src/change.c, src/channel.c, src/cindent.c,
src/clientserver.c, src/cmdhist.c, src/dict.c, src/diff.c,
src/digraph.c, src/errors.h, src/eval.c, src/evalbuffer.c,
src/evalfunc.c, src/evalwindow.c, src/ex_docmd.c, src/ex_getln.c,
src/filepath.c, src/findfile.c, src/float.c, src/fold.c,
src/getchar.c, src/indent.c, src/insexpand.c, src/job.c,
src/json.c, src/list.c, src/mark.c, src/match.c, src/mbyte.c,
src/menu.c, src/misc1.c, src/move.c, src/popupwin.c,
src/proto/typval.pro, src/quickfix.c, src/search.c, src/sign.c,
src/sound.c, src/strings.c, src/terminal.c,
src/testdir/test_assert.vim, src/testdir/test_blob.vim,
src/testdir/test_execute_func.vim,
src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
src/testdir/test_glob2regpat.vim, src/testdir/test_listdict.vim,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_script.vim, src/testing.c, src/textprop.c,
src/time.c, src/typval.c, src/undo.c
Patch 8.2.3230
问题: Vim9: type error when function return type is not known yet.
解决方案: When return type is unknown, use "any". (closes #8644)
文件: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3231
问题: Build failure with small features.
解决方案: Adjust #ifdef.
文件: src/errors.h
Patch 8.2.3232 (after 8.2.3229)
问题: system() does not work without a second argument.
解决方案: Do not require a second argument. (Yegappan Lakshmanan,
closes #8651, closes #8650)
文件: src/misc1.c, src/proto/typval.pro,
src/testdir/test_vim9_builtin.vim, src/typval.c
Patch 8.2.3233
问题: prop_list() and prop_find() do not indicate the buffer for the
used type.
解决方案: Add "type_bufnr" to the results. (closes #8647)
文件: runtime/doc/textprop.txt, src/testdir/test_textprop.vim,
src/textprop.c
Patch 8.2.3234
问题: Crash when printing long string with Lua.
解决方案: Remove lua_pop(). (Martin Tournoij, closes #8648)
文件: src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.3235
问题: Cannot use lambda in {} block in user command. (Martin Tournoij)
解决方案: Do not go over the end of the lambda.
文件: src/userfunc.c, src/testdir/test_usercommands.vim
Patch 8.2.3236
问题: mode() does not indicate using CTRL-O in Select mode.
解决方案: Use "vs" and similar. (closes #8640)
文件: runtime/doc/eval.txt, src/globals.h, src/misc1.c, src/normal.c,
src/testdir/test_functions.vim
Patch 8.2.3237
问题: When a builtin function gives an error processing continues.
解决方案: In Vim9 script return FAIL in get_func_tv().
文件: src/userfunc.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3238
问题: Vim9: error message does not indicate the location.
解决方案: Add the relevant text. (issue #8634)
文件: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3239
问题: Vim9: no error using heredoc for a number variable.
解决方案: Add a type check. (closes #8627)
文件: src/vim9compile.c, src/evalvars.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.3240
问题: Lua print() does not work properly.
解决方案: Put back lua_pop().
文件: src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.3241
问题: Vim9: memory leak when function reports an error.
解决方案: Clear the return value.
文件: src/userfunc.c
Patch 8.2.3242
问题: Vim9: valgrind reports leaks in builtin function test.
解决方案: Do not start a job.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.3243
问题: MS-Windows: the "edit with multiple Vim" choice is not that
useful.
解决方案: Change it to "Edit with multiple tabs". (Michael Soyka,
closes #8645)
文件: src/GvimExt/gvimext.cpp, src/GvimExt/gvimext.h
Patch 8.2.3244
问题: Lua 5.3 print() with a long string crashes.
解决方案: Use a growarray instead of a Lua buffer. (Yegappan Lakshmanan,
closes #8655)
文件: src/if_lua.c, src/misc2.c, src/proto/misc2.pro
Patch 8.2.3245
问题: The crypt key may appear in a swap partition.
解决方案: When using xchacha20 use sodium_mlock(). (Christian Brabandt,
closes #8657)
文件: src/buffer.c, src/crypt.c, src/errors.h, src/fileio.c,
src/memline.c, src/vim.h
Patch 8.2.3246
问题: Memory use after free.
解决方案: When clearing a string option set the pointer to "empty_option".
文件: src/option.c
Patch 8.2.3247
问题: Using uninitialized memory when checking for crypt method.
解决方案: Check the header length before using the salt and seed.
文件: src/fileio.c
Patch 8.2.3248
问题: Vim9: error message for wrong input uses wrong line number.
解决方案: Use the line number of the start of the command. (issue #8653)
文件: src/vim9script.c, src/testdir/test_vim9_script.vim
Patch 8.2.3249
问题: Vim9: error for re-imported function with default argument.
解决方案: Do not check argument type if it is still unknown. (closes #8653)
文件: src/vim9type.c, src/proto/vim9type.pro, src/vim9script.c,
src/vim.h, src/eval.c, src/vim9execute.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3250
问题: MS-Windows: cannot build with libsodium.
解决方案: Change FEAT_SODIUM into HAVE_SODIUM. (Christian Brabandt,
closes #8668, closes #8663)
文件: src/Make_mvc.mak
Patch 8.2.3251
问题: Listing builtin_gui as an available terminal is confusing.
解决方案: Do not list builtin_gui. (Christian Brabandt, closes #8669,
closes #8661)
文件: src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.3252
问题: Duplicated code for adding buffer lines.
解决方案: Move code to a common function. Also move map functions to map.c.
(Yegappan Lakshmanan, closes #8665)
文件: src/evalbuffer.c, src/evalfunc.c, src/map.c, src/proto/map.pro
Patch 8.2.3253
问题: Channel test fails randomly.
解决方案: Add a sleep after sending the "echoerr" command. (Michael Soyka)
文件: src/testdir/test_channel.vim, src/testdir/test_channel.py
Patch 8.2.3254
问题: win_gettype() does not recognize a quickfix window.
解决方案: Add "quickfix" and "loclist". (Yegappan Lakshmanan, closes #8676)
文件: runtime/doc/eval.txt, src/evalwindow.c, src/misc2.c,
src/testdir/test_quickfix.vim
Patch 8.2.3255
问题: ci" finds following string but ci< and others don't.
解决方案: When not inside an object find the start. (Connor Lane Smit,
closes #8670)
文件: src/search.c, src/testdir/test_textobjects.vim, src/textobject.c
Patch 8.2.3256
问题: Executable test may fail on new Ubuntu system.
解决方案: Consider /usr/bin/cat and /bin/cat the same.
文件: src/testdir/test_functions.vim
Patch 8.2.3257
问题: Calling prop_find() with -1 for ID gives erroneous error. (Naohiro
Ono)
解决方案: When passing -1 use -2. (closes #8674)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.3258
问题: Error messages have the wrong text.
解决方案: Adjust the error message.
文件: src/errors.h, src/typval.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3259
问题: When 'indentexpr' causes an error the did_throw flag may remain
set.
解决方案: Reset did_throw and show the error. (closes #8677)
文件: src/indent.c, src/ex_docmd.c, src/proto/ex_docmd.pro
Patch 8.2.3260
问题: Build failure with small features.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.3261
问题: Vim9: when compiling repeat(123, N) return type is number.
解决方案: Make return type a string. (closes #8664)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3262
问题: Build failure when ABORT_ON_INTERNAL_ERROR is defined.
解决方案: Adjust how estack_len_before is used.
文件: src/ex_docmd.c
Patch 8.2.3263
问题: Vim9: "..=" does not accept same types as the ".." operator.
解决方案: Convert value to string like ".." does. (issue #8664)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3264 (after 8.2.3263)
问题: Vim9: assign test fails.
解决方案: Add missing change.
文件: src/eval.c
Patch 8.2.3265
问题: Smartcase does not work correctly in very magic pattern.
解决方案: Take the magicness into account when skipping over regexp items.
(Christian Brabandt, closes #8682, closes #7845)
文件: src/search.c, src/testdir/test_search.vim
Patch 8.2.3266
问题: Vim9: assignment with two indexes may check next line.
解决方案: Limit the number of lines to avoid checking the next line when
assigning to a LHS subscript. (closes #8660)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3267
问题: Vim9: crash when disassembling a function that uses a deleted
script variable.
解决方案: Check the variable still exists. (closes #8683)
文件: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.3268
问题: Cannot use a block with :autocmd like with :command.
解决方案: Add support for a {} block after :autocmd. (closes #8620)
文件: runtime/doc/autocmd.txt, runtime/doc/map.txt, src/autocmd.c,
src/proto/autocmd.pro, src/usercmd.c, src/proto/usercmd.pro,
src/ex_docmd.c, src/vim.h, src/testdir/test_autocmd.vim
Patch 8.2.3269
问题: Vim9: wrong argument check for partial. (Naohiro Ono)
解决方案: Handle getting return type without arguments. Correct the minimal
number of arguments for what is included in the partial.
(closes #8667)
文件: src/evalfunc.c, src/vim9type.c, src/testdir/test_vim9_func.vim
Patch 8.2.3270
问题: prop_find() finds property with ID -2.
解决方案: Use a separate flag to indicate an ID was specified. (issue #8674)
文件: src/textprop.c
Patch 8.2.3271
问题: Vim9: cannot use :command or :au with a block in a :def function.
解决方案: Recognize the start of the block.
文件: src/userfunc.c, src/usercmd.c, src/ex_docmd.c,
src/proto/ex_docmd.pro, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3272
问题: Cannot use id zero with prop_find(). (Naohiro Ono)
解决方案: Also accept id zero.
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.3273
问题: Autocmd test fails.
解决方案: Require white space before the "{" that starts a block.
文件: src/userfunc.c
Patch 8.2.3274
问题: Macro for printf format check can be simplified.
解决方案: Add ATTRIBUTE_FORMAT_PRINTF(). (Dominique Pellé, issue #8635)
文件: src/channel.c, src/gui_xim.c, src/if_mzsch.c, src/nbdebug.c,
src/nbdebug.h, src/netbeans.c, src/proto.h, src/term.c, src/vim.h,
src/vim9execute.c
Patch 8.2.3275
问题: Optimizer can use hints about ga_grow() normally succeeding.
解决方案: Use GA_GROW_FAILS() and GA_GROW_OK() in several places. (Dominique
Pellé, issue #8635)
文件: src/arglist.c, src/macros.h, src/vim9execute.c, src/vim9compile.c
Patch 8.2.3276
问题: Vim9: exists() can only be evaluated at runtime.
解决方案: Evaluate at compile time for option name literals. (closes #8437)
文件: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3277 (after 8.2.3276)
问题: Vim9: compiled has() does not work properly.
解决方案: Fix check for has() vs exists().
文件: src/vim9compile.c
Patch 8.2.3278
问题: Vim9: error when adding 1 to float.
解决方案: Accept t_number_bool. (closes #8687)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3279
问题: Vim9: cannot use block in cmdline window.
解决方案: Add EX_CMDWIN to the CMD_block flags. (closes #8689)
文件: src/ex_cmds.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.3280
问题: 'virtualedit' local to buffer is not the best solution.
解决方案: Make it window-local. (Gary Johnson, closes #8685)
文件: runtime/doc/options.txt, src/buffer.c, src/drawscreen.c,
src/ops.c, src/option.c, src/option.h, src/optionstr.c,
src/structs.h, src/testdir/test_virtualedit.vim
Patch 8.2.3281
问题: Vim9: TODO items in tests can be taken care of.
解决方案: Update test for now working functionality. (closes #8694)
文件: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.3282
问题: Vim9: error about using -complete without -nargs is confusing.
解决方案: Change the wording.
文件: src/usercmd.c, src/errors.h
Patch 8.2.3283
问题: Julia filetype is not recognized
解决方案: Add filetype detection. (Christian Clason, closes #8700)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3284
问题: No error for insert() or remove() changing a locked blob.
解决方案: Check a blob is not locked before changing it. (Sean Dewar,
closes #8696)
文件: src/blob.c, src/errors.h, src/eval.c, src/list.c,
src/proto/blob.pro, src/testdir/test_blob.vim,
src/testdir/test_eval_stuff.vim
Patch 8.2.3285
问题: Scdoc filetype is not recognized.
解决方案: Add filetype detection. (Gregory Anders, closes #8701)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3286
问题: win_enter_ext() has too many boolean arguments.
解决方案: use one flags argument with defined values.
文件: src/window.c
Patch 8.2.3287
问题: Channel events not handled in BufEnter autocommand.
解决方案: Decrement dont_parse_messages earlier. (Tim Pope, closes #8697)
文件: src/window.c, src/testdir/test_channel.vim
Patch 8.2.3288
问题: Cannot easily access namespace dictionaries from Lua.
解决方案: Add vim.g, vim.b, etc. (Yegappan Lakshmanan, closes #8693,
from NeoVim)
文件: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.3289 (after 8.2.3287)
问题: Compiler warning for unused variable with small features.
解决方案: Rearrange #ifdefs.
文件: src/window.c
Patch 8.2.3290
问题: Vim9: compiling dict may use pointer after free and leak memory on
failure.
解决方案: Pass a pointer to generate_PUSHS(). (Zdenek Dohnal, closes #8699)
文件: src/vim9compile.c
Patch 8.2.3291
问题: Coverity warns for not checking return value.
解决方案: If dict_add() fails give an error message.
文件: src/if_lua.c, src/testdir/test_lua.vim
Patch 8.2.3292
问题: Underscore in very magic pattern causes a hang. Pattern with \V
are case sensitive. (Yutao Yuan)
解决方案: Adjust condition for magicness and advance pointer. (Christian
Brabandt, closes #8707, closes #8704, closes #8705)
文件: src/search.c, src/testdir/test_search.vim
Patch 8.2.3293
问题: Finding completions may cause an endless loop.
解决方案: Use a better way to check coming back where the search started.
(Andy Gozas, closes #8672, closes #8671)
文件: src/insexpand.c, src/testdir/Make_all.mak,
src/testdir/test_ins_complete_no_halt.vim
Patch 8.2.3294
问题: Lua: memory leak when adding dict item fails.
解决方案: Free the typval and the dict item.
文件: src/if_lua.c
Patch 8.2.3295
问题: 'cursorline' should not apply to 'breakindent'.
解决方案: Make 'cursorline' apply to 'breakindent' and 'showbreak'
consistently. (closes #8684)
文件: src/drawline.c, src/testdir/dumps/Test_Xcursorline_19.dump,
src/testdir/dumps/Test_Xcursorline_20.dump,
src/testdir/dumps/Test_Xcursorline_21.dump,
src/testdir/dumps/Test_Xcursorline_22.dump,
src/testdir/dumps/Test_Xcursorline_23.dump,
src/testdir/dumps/Test_Xcursorline_24.dump,
src/testdir/dumps/Test_diff_with_cul_bri_01.dump,
src/testdir/dumps/Test_diff_with_cul_bri_02.dump,
src/testdir/dumps/Test_diff_with_cul_bri_03.dump,
src/testdir/dumps/Test_diff_with_cul_bri_04.dump,
src/testdir/test_cursorline.vim, src/testdir/test_diffmode.vim
Patch 8.2.3296
问题: Vim9: cannot add a number to a float.
解决方案: Accept a number if the destination is a float. (closes #8703)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3297
问题: Cannot use all commands inside a {} block after :command and
:autocmd.
解决方案: Do consider \n to separate commands. (closes #8620)
文件: runtime/doc/map.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/ex_eval.c, src/proto/ex_eval.pro, src/eval.c, src/evalvars.c,
src/ex_cmds.c, src/syntax.c, src/userfunc.c, src/vim9compile.c,
src/vim9script.c, src/errors.h, src/testdir/test_autocmd.vim,
src/testdir/test_usercommands.vim
Patch 8.2.3298
问题: Build failure with small features.
解决方案: Add #ifdef.
文件: src/ex_docmd.c
Patch 8.2.3299
问题: Vim9: exists() does not handle much at compile time.
解决方案: Handle variable names. (closes #8688)
文件: src/vim9compile.c, src/evalfunc.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3300
问题: Lua: can only execute one Vim command at a time. Not easy to get
the Vim version.
解决方案: Make vim.command() accept multiple lines. Add vim.version().
(Yegappan Lakshmanan, closes #8716)
文件: runtime/doc/if_lua.txt, src/evalfunc.c, src/if_lua.c,
src/proto/evalfunc.pro, src/testdir/test_lua.vim,
src/testdir/test_shell.vim
Patch 8.2.3301
问题: Memory allocation functions don't have their own place.
解决方案: Move memory allocation functions to alloc.c. (Yegappan
Lakshmanan, closes #8717)
文件: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
src/alloc.c, src/misc2.c, src/proto.h, src/proto/alloc.pro,
src/proto/misc2.pro
Patch 8.2.3302
问题: Coverity is not run from github.
解决方案: Add a coverity script. (James McCoy, closes #8714)
文件: .github/workflows/coverity.yml, Filelist
Patch 8.2.3303
问题: Some structures could be smaller.
解决方案: Rearrange members to reduce size. (Dominique Pellé, closes #8725)
文件: src/structs.h, src/vim9.h, src/vim9execute.c
Patch 8.2.3304
问题: Popup window title with wide characters is truncated.
解决方案: Use vim_strsize() instead of MB_CHARLEN(). (Naruhiko Nishino,
closes #8721)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_multibytetitle.dump
Patch 8.2.3305
问题: Vim9: :finally in skipped block not handled correctly.
解决方案: Check whether :finally is in a skipped block. (Naruhiko Nishino,
closes #8724)
文件: src/ex_eval.c, src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3306
问题: Unexpected "No matching autocommands".
解决方案: Do not give the message when aborting. Mention the arguments in
the message. (closes #8690)
文件: src/autocmd.c,
Patch 8.2.3307
问题: Vim9: :echoconsole cannot access local variables.
解决方案: Handle like other :echo commands. (closes #8708)
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3308
问题: Vim9: no runtime check for argument type if a function only has
varargs.
解决方案: Also check argument types if uf_va_type is set. (closes #8715)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.3309
问题: Vim9: divide by zero causes a crash.
解决方案: Give an error message. (closes #8727)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3310
问题: Vim9: unpack assignment does not mention source of type error.
解决方案: Mention the argument number. (closes #8719)
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3311
问题: Vim9: check for DO_NOT_FREE_CNT is very slow.
解决方案: Move to a separate function so it can be skipped by setting
$TEST_SKIP_PAT.
文件: src/testdir/test_vim9_expr.vim, src/testdir/runtest.vim
Patch 8.2.3312
问题: Vim9: after "if false" line breaks in expression not skipped.
解决方案: Do parse the expression. (closes #8723)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3313
问题: Unused code in win_exchange() and frame_remove().
解决方案: Remove the code. (closes #8728)
文件: src/window.c
Patch 8.2.3314
问题: Behavior of exists() in a :def function is unpredictable.
解决方案: Add exists_compiled().
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/errors.h, src/vim9compile.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3315
问题: Cannot use single quote in a float number for readability.
解决方案: Support single quotes like in numbers. (closes #8713)
文件: src/typval.c, src/float.c, src/proto/float.pro, src/json.c,
src/viminfo.c, src/testdir/test_float_func.vim
Patch 8.2.3316 (after 8.2.3315)
问题: Float test fails.
解决方案: Add missing change.
文件: src/evalfunc.c
Patch 8.2.3317
问题: Vim9: No error for missing white space before return type.
解决方案: Check for white space. (closes #8733)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3318
问题: Vim9: cannot ignore quotes in number at the command line.
解决方案: Use in_vim9script() so that after ":vim9" quotes are ignored.
文件: src/typval.c, src/testdir/test_float_func.vim
Patch 8.2.3319
问题: Coverity action on github does not work.
解决方案: Remove undefined $SRCDIR. (James McCoy, closes #8739)
文件: .github/workflows/coverity.yml
Patch 8.2.3320
问题: Some local functions are not static.
解决方案: Add "static". Move snprintf() related code to strings.c.
(Yegappan Lakshmanan, closes #8734)
文件: src/alloc.c, src/channel.c, src/dict.c, src/digraph.c, src/edit.c,
src/ex_docmd.c, src/getchar.c, src/job.c, src/list.c,
src/message.c, src/profiler.c, src/proto/channel.pro,
src/proto/dict.pro, src/proto/digraph.pro, src/proto/edit.pro,
src/proto/ex_docmd.pro, src/proto/getchar.pro, src/proto/job.pro,
src/proto/list.pro, src/proto/profiler.pro, src/proto/spell.pro,
src/proto/vim9compile.pro, src/proto/vim9script.pro,
src/proto/vim9type.pro, src/spell.c, src/strings.c,
src/vim9compile.c, src/vim9script.c, src/vim9type.c, src/window.c
Patch 8.2.3321
问题: Some code is not tested.
解决方案: Add some more tests. (Dominique Pellé, closes #8735)
文件: src/testdir/test_excmd.vim, src/testdir/test_writefile.vim
Patch 8.2.3322
问题: Vim9: checking type of dict does not check member type.
解决方案: When getting the type of a typval use dv_type and lv_type.
(closes #8732)
文件: src/vim9type.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3323
问题: Help tag for exists_compiled() is wrong. (Maxim Kim)
解决方案: Adjust the help tag.
文件: runtime/doc/eval.txt
Patch 8.2.3324
问题: Vim9: Cannot use :silent with :endwhile.
解决方案: Allow for using the :silent modifier. (closes #8737)
文件: src/ex_eval.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3325
问题: Digraph test fails when LC_ALL is set to "C".
解决方案: When restoring 'encoding' set it to "utf-8". (closes #8742)
文件: src/testdir/test_digraph.vim
Patch 8.2.3326
问题: Vim9: no error passing an empty list of the wrong type.
解决方案: Use ISN_SETTYPE also for "list<any>". (closes #8732)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3327
问题: No check for sysconf() failing.
解决方案: If sysconf() fails use SIGSTKSZ for the signal stack size.
(Zdenek Dohnal, closes #8743)
文件: src/os_unix.c
Patch 8.2.3328
问题: Coverity error for not checking return value.
解决方案: Check value is not negative.
文件: src/spellfile.c
Patch 8.2.3329
问题: v_lock not set when getting value of environment variable.
解决方案: Set v_lock to zero.
文件: src/typval.c
Patch 8.2.3330
问题: Coverity reports using uninitialized field.
解决方案: Initialize the field early.
文件: src/tag.c
Patch 8.2.3331
问题: Coverity warns for using value without boundary check.
解决方案: Add a boundary check.
文件: src/viminfo.c
Patch 8.2.3332
问题: Vim9: cannot assign to range in list.
解决方案: Implement overwriting a list range.
文件: src/vim9compile.c, src/vim9execute.c, src/list.c,
src/proto/list.pro, src/eval.c, src/proto/eval.pro,
src/testdir/test_listdict.vim, src/testdir/test_vim9_assign.vim
Patch 8.2.3333
问题: Vim9: not enough tests run with Vim9.
解决方案: Run a few more tests in Vim9 script and :def function.
文件: src/testdir/test_listdict.vim, src/testdir/vim9.vim
Patch 8.2.3334
问题: Vim9: not enough tests run with Vim9.
解决方案: Run a few more tests in Vim9 script and :def function. Fix
islocked(). Fix error for locking local variable.
文件: src/evalfunc.c, src/vim9compile.c, src/testdir/test_listdict.vim
Patch 8.2.3335
问题: Vim9: not enough tests run with Vim9.
解决方案: Run a few more tests in Vim9 script and :def function. Fix that
items(), keys() and values() return zero for a NULL dict.
Make join() return an empty string for a NULL list. Make sort()
return an empty list for a NULL list.
文件: src/dict.c, src/list.c, src/testdir/test_listdict.vim,
src/testdir/vim9.vim
Patch 8.2.3336
问题: Behavior of negative index in list change changed. (Naruhiko
Nishino)
解决方案: Only change it for Vim9 script. (closes #8749)
文件: src/list.c, src/testdir/test_listdict.vim
Patch 8.2.3337
问题: Completing "call g:" returns entries with just "g:". (Naohiro Ono)
解决方案: Skip empty strings returned by get_user_func_name(). (closes #8753)
文件: src/evalfunc.c, src/testdir/test_cmdline.vim
Patch 8.2.3338
问题: Vim9: no type check when assigning a list range. (Naohiro Ono)
解决方案: Check the member type. (closes #8750)
文件: src/list.c, src/testdir/test_listdict.vim
Patch 8.2.3339
问题: Vim9: cannot lock a member in a local dict.
解决方案: Get the local dict from the stack and pass it to get_lval().
文件: src/eval.c, src/vim9execute.c, src/vim9compile.c, src/vim9.h,
src/globals.h, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3340 (after 8.2.3339)
问题: Accessing uninitialized pointer.
解决方案: Set pointer to NULL.
文件: src/eval.c
Patch 8.2.3341
问题: Vim9: function call aborted despite try/catch. (Naohiro Ono)
解决方案: Ignore error caught by try/catch. (closes #8755)
文件: src/evalvars.c, src/vim9execute.c, src/message.c, src/time.c,
src/globals.h, src/testdir/vim9.vim, src/testdir/test_vim9_func.vim
Patch 8.2.3342 (after 8.2.3341)
问题: Test for :let errors fails.
解决方案: Adjust the test and how to avoid a second error message.
文件: src/evalvars.c, src/testdir/test_let.vim
Patch 8.2.3343 (after 8.2.3342)
问题: Vim9: autoload test fails.
解决方案: Adjust the way the second message is avoided
文件: src/evalvars.c
Patch 8.2.3344 (after 8.2.3343)
问题: Vimscript test fails.
解决方案: Have test verify first error instead of second
文件: src/testdir/test_vimscript.vim
Patch 8.2.3345
问题: Some code not covered by tests.
解决方案: Add a few more tests. (Dominique Pellé, closes #8757)
文件: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim,
src/testdir/test_spellfile.vim, src/testdir/test_substitute.vim
Patch 8.2.3346
问题: Vim9: no error for using "." for concatenation after ":vim9cmd".
(Naohiro Ono)
解决方案: Check for Vim9 script syntax. (closes #8756)
文件: src/eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3347
问题: Check for legacy script is incomplete. (Naohiro Ono)
解决方案: Also check the :legacy modifier. Use for string concatenation
with "." and others (issue #8756)
文件: src/vim9script.c, src/proto/vim9script.pro, src/eval.c,
src/typval.c, src/evalvars.c, src/errors.h, src/ex_docmd.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3348
问题: line2byte() returns wrong value after adding textprop. (Yuto
Kimura)
解决方案: Reduce the length by the size of the text property. (closes #8759)
文件: src/memline.c, src/testdir/test_textprop.vim
Patch 8.2.3349 (after 8.2.3347)
问题: Eval test for scriptversion fails.
解决方案: Fix off-by-one error.
文件: src/vim9script.c
Patch 8.2.3350 (after 8.2.3348)
问题: Text properties test fails on MS-Windows.
解决方案: Set fileformat to unix.
文件: src/testdir/test_textprop.vim
Patch 8.2.3351
问题: Vim9: using a function by name may delete it. (Naohiro Ono)
解决方案: Increment the reference count when using a function by name.
(closes #8760)
文件: src/evalvars.c, src/testdir/test_vim9_func.vim
Patch 8.2.3352
问题: Vim9: error for nested :enddef has wrong line number.
解决方案: Compute the line number.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3353
问题: Vim9: type of argument for negate not checked at compile time.
解决方案: Add a compile time check.
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3354
问题: Build failure with +byte_offset but without +textprop. (John
Marriott)
解决方案: Adjust the #ifdef.
文件: src/memline.c
Patch 8.2.3355
问题: MS-Windows: compiler warning for 64-32 bit conversion.
解决方案: Add type casts.
文件: src/memline.c
Patch 8.2.3356
问题: Adding many text properties requires a lot of function calls.
解决方案: Add the prop_add_list() function. (Yegappan Lakshmanan,
closes #8751)
文件: runtime/doc/eval.txt, runtime/doc/textprop.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/textprop.pro,
src/testdir/test_textprop.vim, src/testdir/test_vim9_builtin.vim,
src/textprop.c
Patch 8.2.3357
问题: Crash when 'virtualedit' is set and window is narrow.
解决方案: Check that width is not zero. (closes #8767)
文件: src/misc2.c, src/testdir/test_number.vim
Patch 8.2.3358
问题: Structurizr files are not recognized.
解决方案: Recognize the file by contents. (Bastian Venthur, closes #8764)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3359
问题: Vim9: error for type when variable is not set.
解决方案: Give a specific error for a NULL function. (closes #8773)
文件: src/vim9type.c, src/errors.h, src/testdir/test_vim9_func.vim
Patch 8.2.3360
问题: User function completion fails with dict function.
解决方案: Do not stop sequencing through the list if user functions when
encountering an empty name. (Naohiro Ono, closes #8765,
closes #8774)
文件: src/evalfunc.c, src/testdir/test_cmdline.vim
Patch 8.2.3361
问题: Vim9: crash with nested :while.
解决方案: Handle skipping better. (Naruhiko Nishino, closes #8778)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3362
问题: Buffer overflow when completing long tag name.
解决方案: Allocate the buffer dynamically. (Gregory Anders, closes #8769)
文件: src/tag.c, src/testdir/test_tagjump.vim
Patch 8.2.3363
问题: When :edit reuses the current buffer the alternate file is set to
the same buffer.
解决方案: Only set the alternate file when not reusing the buffer.
(closes #8783)
文件: src/ex_cmds.c, src/testdir/test_undo.vim,
src/testdir/test_cmdline.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.3364
问题: Vim9: crash when :for is skipped.
解决方案: Skip more code generation. (Naruhiko Nishino, closes #8777)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3365
问题: Vim9: cannot use option for all operations.
解决方案: Recognize more operations. (closes #8779)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/ex_docmd.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3366
问题: Vim9: debugging elseif does not stop before condition.
解决方案: Move debug statement to after the jump. (closes #8781)
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.3367
问题: Vim9: :@r executing a register is inconsistent.
解决方案: Use "@r" as the start of an expression. (issue #8779)
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3368
问题: Not all Racket files are recognized.
解决方案: Also recognize .rktl and .rktd files. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3369
问题: Auto formatting after "cw" leaves cursor in wrong spot.
解决方案: Do not auto-format after the delete. (closes #8789)
文件: src/ops.c, src/testdir/test_textformat.vim
Patch 8.2.3370
问题: Vim9: no check for white space before type in declaration.
(Naohiro Ono)
解决方案: Check for white space like in a compiled function. (closes #8785)
文件: src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3371
问题: Vim9: :$ENV cannot be followed by ->func() in next line.
解决方案: Use "$ENV" as the start of an expression. (closes #8790)
文件: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3372
问题: line2byte() value wrong when adding a text property. (Yuto Kimura)
解决方案: Adjust length for text property. (closes #8772) Also fix it for
deleting a line.
文件: src/memline.c, src/testdir/test_textprop.vim
Patch 8.2.3373 (after 8.2.3372)
问题: text property test fails on MS-Windows.
解决方案: Set fileformat to "unix"
文件: src/testdir/test_textprop.vim
Patch 8.2.3374
问题: Pyret files are not recognized.
解决方案: Recognize .arr files as Pyret. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3375
问题: Using uninitialized memory.
解决方案: Initialize textprop_save_len.
文件: src/memline.c
Patch 8.2.3376
问题: Vim9: no warning that "@r" does not do anything.
解决方案: Give a "no effect" error. (closes #8779)
文件: src/ex_eval.c, src/proto/ex_eval.pro, src/vim9compile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3377
问题: Vim9: :disass completion does not understand "s:".
解决方案: Expand "s:" to a pattern. (closes #8780)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.3378
问题: MS-Windows: completing environment variables with % is wrong.
解决方案: Only complete environment variables with $. (Albert Liu,
closes #8791)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.3379
问题: Crash when using NULL job.
解决方案: Copy static string into buffer. (issue #8260)
文件: src/job.c, src/testdir/test_channel.vim
Patch 8.2.3380
问题: Crash when using NULL string for funcref().
解决方案: Check for NULL argument. (issue #8260)
文件: src/evalfunc.c, src/testdir/test_expr.vim
Patch 8.2.3381
问题: Crash when using NULL list with sign functions.
解决方案: Handle a NULL list like an empty list. (issue #8260)
文件: src/globals.h, src/testdir/test_signs.vim
Patch 8.2.3382
问题: Crash when getting the type of a NULL partial.
解决方案: Check for NULL. (closes #8260)
文件: src/vim9type.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3383
问题: Vim9: completion for :disassemble adds parenthesis.
解决方案: Don't add parenthesis. (Naohiro Ono, closes #8802)
文件: src/userfunc.c, src/testdir/test_cmdline.vim
Patch 8.2.3384
问题: Cannot disable modeline for an individual file.
解决方案: Recognize "nomodeline" in a modeline. (Hu Jialun, closes #8798)
文件: runtime/doc/options.txt, src/buffer.c,
src/testdir/test_modeline.vim
Patch 8.2.3385
问题: Escaping for fish shell does not work properly.
解决方案: Insert a backslash before a backslash. (Jason Cox, closes #8810)
文件: runtime/doc/eval.txt, src/strings.c, src/testdir/test_shell.vim
Patch 8.2.3386
问题: Using uninitialized memory.
解决方案: Initialize the rm_ic field. (Dominique Pellé, closes #8800)
文件: src/indent.c
Patch 8.2.3387
问题: Compiler warning for non-static function.
解决方案: Make the function static. (Dominique Pellé, closes #8816)
文件: src/strings.c
Patch 8.2.3388
问题: fnamemodify('path/..', ':p') differs from using 'path/../'. (David
Briscoe)
解决方案: Include the "/.." in the directory name. (closes #8808)
文件: src/os_unix.c, src/testdir/test_fnamemodify.vim
Patch 8.2.3389
问题: Cannot stop insert mode completion without side effects.
解决方案: Add CTRL-XCTRL-Z. (closes #8821)
文件: runtime/doc/index.txt, runtime/doc/insert.txt, src/insexpand.c,
src/testdir/test_ins_complete.vim
Patch 8.2.3390
问题: Included xdiff code is outdated.
解决方案: Sync with xdiff in git 2.33. (Christian Brabandt, closes #8431)
文件: src/diff.c, src/xdiff/README.txt, src/xdiff/xdiff.h,
src/xdiff/xdiffi.c, src/xdiff/xdiffi.h, src/xdiff/xemit.c,
src/xdiff/xemit.h, src/xdiff/xhistogram.c, src/xdiff/xinclude.h,
src/xdiff/xmacros.h, src/xdiff/xpatience.c, src/xdiff/xprepare.h,
src/xdiff/xtypes.h, src/xdiff/xutils.c, src/xdiff/xutils.h
Patch 8.2.3391
问题: Crash with combination of 'linebreak' and other options.
解决方案: Avoid n_extra to become negative. (Christian Brabandt,
closes #8817)
文件: src/drawline.c
Patch 8.2.3392
问题: augroup completion escapes regexp pattern characters.
解决方案: Do not escape the augroup name. (closes #8826)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.3393
问题: Escaping for fish shell is skipping some characters.
解决方案: Escape character after backslash if needed. (Jason Cox,
closes #8827)
文件: src/strings.c, src/testdir/test_shell.vim
Patch 8.2.3394
问题: Filler lines are wrong when changing text in diff mode.
解决方案: Don't change the filler lines on every change. Check
scrollbinding when updating the filler lines. (closes #8809)
文件: src/move.c, src/diff.c, src/testdir/test_diffmode.vim,
src/testdir/dumps/Test_diff_scroll_change_01.dump,
src/testdir/dumps/Test_diff_scroll_change_02.dump
Patch 8.2.3395
问题: Vim9: expression breakpoint not checked in :def function.
解决方案: Always compile a function for debugging if there is an expression
breakpoint. (closes #8803)
文件: src/vim9execute.c, src/proto/vim9execute.pro, src/debugger.c,
src/proto/debugger.pro, src/vim.h, src/vim9.h,
src/testdir/test_debugger.vim
Patch 8.2.3396
问题: When libcall() fails invalid pointer may be used.
解决方案: Initialize the string to NULL. (Yasuhiro Matsumoto, closes #8829)
文件: src/evalfunc.c
Patch 8.2.3397
问题: No test for what 8.2.3391 fixes.
解决方案: Add a test. (Yegappan Lakshmanan, closes #8828)
文件: src/testdir/test_breakindent.vim
Patch 8.2.3398
问题: Html text objects are not fully tested.
解决方案: Add tests for dbcs encoding and different number of backslashes.
(Dominique Pellé, closes #8831)
文件: src/testdir/test_textobjects.vim
Patch 8.2.3399
问题: Octave files are not recognized.
解决方案: Detect Octave files. (Doug Kearns)
文件: runtime/autoload/dist/ft.vim, runtime/doc/filetype.txt,
runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3400
问题: ":z!" is not supported.
解决方案: Make ":z!" work and add tests. (Dominique Pellé, closes #8836)
Use display height instead of current window height.
文件: runtime/doc/various.txt, src/ex_cmds.h, src/ex_cmds.c,
src/testdir/test_ex_z.vim
Patch 8.2.3401
问题: Vim9: cannot use a negative count with finddir() and findfile().
解决方案: Adjust the return type. (closes #8776)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3402
问题: Invalid memory access when using :retab with large value.
解决方案: Check the number is positive.
文件: src/indent.c, src/option.c, src/optionstr.c,
src/testdir/test_retab.vim
Patch 8.2.3403 (after 8.2.3402)
问题: Memory leak for :retab with invalid argument.
解决方案: Free the memory. Make error messages consistent.
文件: src/indent.c
Patch 8.2.3404
问题: Vim9: no error for white space before "(".
解决方案: Give an error, like in a compiled function.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3405
问题: Cannot have a comment line in a {} block of a user command.
解决方案: Continue after the line break. (closes #8837)
文件: src/ex_docmd.c, src/testdir/test_usercommands.vim
Patch 8.2.3406
问题: On some systems tests fail without _REENTRANT. (Elimar
Riesebieter)
解决方案: Add -D_REENTRANT in configure. (closes #7402)
文件: src/configure.ac, src/auto/configure
Patch 8.2.3407
问题: Using uninitialized memory with "let g:['bar'] = 2".
解决方案: Initialize v_type of a new dict item.
文件: src/dict.c
Patch 8.2.3408
问题: Can delete a numbered function. (Naohiro Ono)
解决方案: Disallow deleting a numbered function. (closes #8760)
文件: src/userfunc.c, src/testdir/test_user_func.vim
Patch 8.2.3409
问题: Reading beyond end of line with invalid utf-8 character.
解决方案: Check for NUL when advancing.
文件: src/regexp_nfa.c, src/testdir/test_regexp_utf8.vim
Patch 8.2.3410
问题: Crash with linebreak, listchars and large tabstop.
解决方案: Account for different size listchars for a tab. (closes #8841)
文件: src/drawline.c, src/testdir/test_listlbr_utf8.vim
Patch 8.2.3411
问题: Vim9: crash when using base name of import. (Naohiro Ono)
解决方案: Check the import flags. (closes #8843)
文件: src/evalvars.c, src/errors.h, src/testdir/test_vim9_script.vim
Patch 8.2.3412 (after 8.2.3411)
问题: Vim9: importing the wrong file.
解决方案: Correct the file name. Delete the file afterwards.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.3413
问题: Vim9: too many characters are allowed in import name.
解决方案: Disallow ':' and '#', check for white space. (closes #8845)
文件: src/vim9script.c, src/errors.h, src/testdir/test_vim9_script.vim
Patch 8.2.3414
问题: fullcommand() gives the wrong name if there is a buffer-local user
command. (Naohiro Ono)
解决方案: Use a separate function to get the user command name.
(closes #8840)
文件: src/usercmd.c, src/proto/usercmd.pro, src/ex_docmd.c,
src/testdir/test_cmdline.vim
Patch 8.2.3415
问题: Vim9: Not all function argument types are properly checked.
解决方案: Add and improve argument type checks. (Yegappan Lakshmanan,
closes #8839)
文件: src/channel.c, src/digraph.c, src/evalfunc.c, src/terminal.c,
src/testdir/test_digraph.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.3416
问题: Second error is reported while exception is being thrown.
解决方案: Do not check for trailing characters when already aborting.
(closes #8842)
文件: src/userfunc.c, src/testdir/test_trycatch.vim
Patch 8.2.3417
问题: Vim9: a failing debug expression aborts script sourcing.
解决方案: Do not let expression failure abort script sourcing. (closes #8848)
文件: src/debugger.c, src/testdir/test_debugger.vim
Patch 8.2.3418
问题: Garbage collection while evaluating may cause trouble.
解决方案: Disable garbage collection while evaluating an expression.
(Christian Brabandt, issue #8848)
文件: src/eval.c
Patch 8.2.3419
问题: A failing debug expression may make Vim unusable.
解决方案: Suppress error messages. (closes #8848)
文件: src/debugger.c, src/testdir/test_debugger.vim
Patch 8.2.3420
问题: _REENTRANT defined more than once.
解决方案: Fix configure script. (Christian Brabandt, closes #8852)
文件: src/configure.ac, src/auto/configure
Patch 8.2.3421
问题: A bit of code is not covered by tests.
解决方案: Add a few more test cases. (Dominique Pellé, closes #8857)
文件: src/testdir/test_functions.vim, src/testdir/test_history.vim,
src/testdir/test_startup.vim
Patch 8.2.3422
问题: Vim9: no failure if return type differs from returned variable.
解决方案: Copy type when copying a list. (closes #8847)
文件: src/list.c, src/testdir/test_vim9_func.vim
Patch 8.2.3423
问题: Vim9: list += list creates a new list in :def function.
解决方案: Append to the existing list.
文件: src/structs.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.3424
问题: A sequence of spaces is hard to see in list mode.
解决方案: Add the "multispace" option to 'listchars'. (closes #8834)
文件: runtime/doc/options.txt, src/drawline.c, src/message.c,
src/screen.c, src/structs.h, src/testdir/test_listchars.vim
Patch 8.2.3425
问题: Warning for using uninitialized variable.
解决方案: Initialize it. (John Marriott)
文件: src/screen.c
Patch 8.2.3426
问题: Crash when deleting a listener in a listener callback. (Naohiro
Ono)
解决方案: Mark the listener and delete it later. (closes #8863)
文件: src/change.c, src/testdir/test_listener.vim
Patch 8.2.3427
问题: Double free when list is copied.
解决方案: Allocate the type when making a copy. (closes #8862)
Clear the type for flattennew(). Avoid a memory leak when
flattennew() fails.
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3428
问题: Using freed memory when replacing. (Dhiraj Mishra)
解决方案: Get the line pointer after calling ins_copychar().
文件: src/normal.c, src/testdir/test_edit.vim
Patch 8.2.3429
问题: Leaking memory when assigning to list or dict.
解决方案: Free the list or dict type before overwriting it.
文件: src/vim9type.c, src/evalvars.c
Patch 8.2.3430
问题: No generic way to trigger an autocommand on mode change.
解决方案: Add the ModeChanged autocommand event. (Magnus Gross, closes #8856)
文件: runtime/doc/autocmd.txt, src/autocmd.c, src/edit.c,
src/ex_docmd.c, src/ex_getln.c, src/globals.h, src/misc1.c,
src/normal.c, src/proto/autocmd.pro, src/proto/misc1.pro,
src/testdir/test_edit.vim, src/vim.h
Patch 8.2.3431
问题: Completion for :disas sorts local functions first.
解决方案: Sort local functions last, like with :delfunc. (Naohiro Ono,
closes #8860)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.3432
问题: Octave/Matlab filetype detection does not work properly.
解决方案: Update the patterns used for matching. (Doug Kearns)
文件: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
Patch 8.2.3433
问题: :delcommand does not take a -buffer option.
解决方案: Add the -buffer option.
文件: runtime/doc/map.txt, src/usercmd.c, src/errors.h,
src/testdir/test_usercommands.vim
Patch 8.2.3434 (after 8.2.3430)
问题: Function prototype for trigger_modechanged() is incomplete.
解决方案: Add "void".
文件: src/proto/misc1.pro
Patch 8.2.3435
问题: Vim9: dict is not passed to dict function.
解决方案: Keep the dict used until a function call.
文件: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3436
问题: Check for optional bool type has confusing return type.
解决方案: Explicitly return OK.
文件: src/typval.c
Patch 8.2.3437
问题: Compiler warnings for 32/64 bit usage.
解决方案: Add type casts. (Mike Williams, closes #8870)
文件: src/screen.c, src/xdiff/xemit.c, src/xdiff/xutils.c
Patch 8.2.3438
问题: Cannot manipulate blobs.
解决方案: Add blob2list() and list2blob(). (Yegappan Lakshmanan,
closes #8868)
文件: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/blob.c,
src/errors.h, src/evalfunc.c, src/proto/blob.pro,
src/proto/typval.pro, src/testdir/test_blob.vim,
src/testdir/test_vim9_builtin.vim, src/typval.c
Patch 8.2.3439
问题: Deleted lines go to wrong yank register.
解决方案: Reset y_append when not calling get_yank_register(). (Christian
Brabandt, closes #8872)
文件: src/ops.c, src/proto/register.pro, src/register.c,
src/testdir/test_registers.vim
Patch 8.2.3440
问题: Recover test fails if there is an old swap file.
解决方案: Delete old swap files.
文件: src/testdir/test_recover.vim
Patch 8.2.3441
问题: MS-Windows: vimtutor can't handle path with spaces.
解决方案: Add double quotes. (Christian Brabandt, closes #8871)
文件: vimtutor.bat
Patch 8.2.3442
问题: Vim9: || and && are not handled at compile time when possible.
解决方案: When using constants generate fewer instructions.
文件: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3443
问题: Vim9: memory leak when and/or fails.
解决方案: Also clear the growarray when the length is zero.
文件: src/vim9compile.c
Patch 8.2.3444
问题: concealed text not revealed when leaving insert mode. (Michael
Soyka)
解决方案: Check if concealing changed when leaving insert mode.
(closes #8880)
文件: src/edit.c, src/testdir/test_conceal.vim,
src/testdir/dumps/Test_conceal_two_windows_07in.dump
Patch 8.2.3445
问题: On Solaris longVersion may be declared twice. (Vladimir Marek)
解决方案: Always declare longVersion in version.c
文件: src/globals.h, src/version.c
Patch 8.2.3446
问题: Not enough tests for empty string arguments.
解决方案: Add tests, fix type check. (Yegappan Lakshmanan, closes #8881)
文件: runtime/doc/sign.txt, runtime/doc/textprop.txt, src/sign.c,
src/testdir/test_blob.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.3447
问题: A couple of declarations are not ANSI C.
解决方案: Put argument type inside (). (Yegappan Lakshmanan, closes #8890)
文件: src/os_unix.h
Patch 8.2.3448
问题: :endtry after function call that throws not found.
解决方案: Do check for following :endtry if an exception is being thrown.
(closes #8889)
文件: src/userfunc.c, src/testdir/test_trycatch.vim
Patch 8.2.3449
问题: Sort fails if the sort compare function returns 999.
解决方案: Adjust value to -1 / 0 / 1. (Yasuhiro Matsumoto, closes #8884)
文件: src/list.c, src/testdir/test_sort.vim
Patch 8.2.3450
问题: Coveralls action fails.
解决方案: Disable it for now.
文件: .github/workflows/ci.yml
Patch 8.2.3451
问题: Not all apache files are recognized.
解决方案: Adjust the filetype pattern. (Zdenek Dohnal, closes #8882)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3452
问题: MPD files are not recognized.
解决方案: Recognize MPD files as XML. (Steven Penny, closes #8893)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3453
问题: Autocmd not executed when editing a directory ending in a path
separator inside try block.
解决方案: Return NOTDONE instead of FAIL. (closes #8885)
文件: src/fileio.c, src/testdir/test_autocmd.vim
Patch 8.2.3454
问题: Using a count with "gp" leaves cursor in wrong position. (Naohiro
Ono)
解决方案: Count the inserted lines. (closes #8899)
文件: src/register.c, src/testdir/test_put.vim
Patch 8.2.3455 (after 8.2.3454)
问题: Using a count with "gp" leaves '] in wrong position. (Naohiro Ono)
解决方案: Correct the mark position. (closes #8899)
文件: src/register.c, src/testdir/test_put.vim
Patch 8.2.3456
问题: Vim9: Not all functions are tested with an empty string argument.
解决方案: Add tests with empty strings. (Yegappan Lakshmanan, closes #8915)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3457
问题: MS-Windows Vim9: test executed and fails.
解决方案: Add extra check for not being on MS-Windows.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.3458
问题: Not all dictdconf files are recognized.
解决方案: Adjust the pattern. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3459
问题: Vim9: need more tests for empty string arguments.
解决方案: Add more tests. Also use empty argument with menu_info() to get
the top-level menu names. (Yegappan Lakshmanan, closes #8925)
文件: runtime/doc/eval.txt, src/menu.c, src/testdir/test_menu.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3460
问题: Some type casts are not needed.
解决方案: Remove unnecessary type casts. (closes #8934)
文件: src/autocmd.c, src/buffer.c, src/debugger.c, src/getchar.c,
src/hardcopy.c, src/if_cscope.c, src/move.c, src/tag.c,
src/version.c
Patch 8.2.3461
问题: Cannot distinguish Normal and Terminal-Normal mode.
解决方案: Make mode() return "nt" for Terminal-Normal mode. (issue #8856)
文件: runtime/doc/eval.txt, src/misc1.c, src/testdir/test_functions.vim
Patch 8.2.3462
问题: The ModeChanged event only uses one character for the new_mode and
old_mode values.
解决方案: Pass one as first argument to mode(). (issue #8856)
文件: src/misc1.c, src/testdir/test_edit.vim
Patch 8.2.3463
问题: Pattern matching with ModeChanged not tested.
解决方案: Add a few more test lines. (issue #8856)
文件: src/testdir/test_edit.vim
Patch 8.2.3464
问题: nginx files are not recognized.
解决方案: Add several file patterns. (Chris Aumann, closes #8922)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3465
问题: Cannot detect insert scroll mode.
解决方案: Add "scroll" to complete_info(). (closes #8943)
文件: runtime/doc/eval.txt, src/insexpand.c, src/testdir/test_popup.vim
Patch 8.2.3466
问题: Completion submode not indicated for virtual replace.
解决方案: Add submode to "Rv". (closes #8945)
文件: runtime/doc/eval.txt, src/misc1.c, src/testdir/test_functions.vim
Patch 8.2.3467
问题: CursorHoldI event interferes with "CTRL-G U". (Naohiro Ono)
解决方案: Restore the flag for "CTRL-G U" after triggering CursorHoldI.
(closes #8937)
文件: src/edit.c, src/testdir/test_autocmd.vim
Patch 8.2.3468
问题: Problem with :cd when editing file in non-existent directory. (Yee
Cheng Chin)
解决方案: Prepend the current directory to get the full path. (closes #8903)
文件: src/os_unix.c, src/testdir/test_cd.vim
Patch 8.2.3469
问题: Some files with json syntax are not recognized.
解决方案: Add a few file patterns. (Emiliano Ruiz Carletti, closes #8947)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3470
问题: Crash with error in :catch and also in :finally.
解决方案: Only discard an exception if there is one. (closes #8954)
文件: src/ex_eval.c, src/testdir/test_trycatch.vim
Patch 8.2.3471
问题: Crash when using CTRL-T after an empty search pattern.
解决方案: Bail out when there is no previous search pattern. (closes #8953)
文件: src/ex_getln.c, src/testdir/test_search.vim
Patch 8.2.3472
问题: Other crashes with empty search pattern not tested.
解决方案: Add a few more test lines. (Dominique Pellé)
文件: src/testdir/test_search.vim
Patch 8.2.3473
问题: Some files with tcl syntax are not recognized.
解决方案: Add a few file patterns. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3474
问题: Some places use "Vimscript" instead of "Vim script".
解决方案: Consistently use "Vim script". (Hirohito Higashi, closes #8910)
文件: runtime/doc/if_lua.txt, src/getchar.c, src/if_lua.c
Patch 8.2.3475
问题: Expression register set by not executed put command.
解决方案: Do not set the register if the command is skipped. (closes #8909)
文件: src/ex_docmd.c, src/testdir/test_excmd.vim
Patch 8.2.3476
问题: Renaming a buffer on startup may cause using freed memory.
解决方案: Check if the buffer is used in a window. (closes #8955)
文件: src/buffer.c, src/testdir/test_startup.vim
Patch 8.2.3477 (after 8.2.3476)
问题: Startup test fails on MS-Windows.
解决方案: Skip the test if not on Unix.
文件: src/testdir/test_startup.vim
Patch 8.2.3478 (after 8.2.3470)
问题: Still crash with error in :catch and also in :finally.
解决方案: Only call finish_exception() once. (closes #8954)
文件: src/ex_eval.c, src/structs.h
Patch 8.2.3479
问题: Crash when calling job_start with an invalid argument. (Virginia
Senioria)
解决方案: Clear the first item in argv. (closes #8957)
文件: src/misc2.c, src/testdir/test_channel.vim
Patch 8.2.3480 (after 8.2.3478)
问题: Test does not fail without the fix for a crash.
解决方案: Write the bad code in a file and source it. (Dominique Pellé,
closes #8961)
文件: src/testdir/test_trycatch.vim
Patch 8.2.3481
问题: Failures when char is unsigned.
解决方案: Use int8_T. Make a CI run with unsigned char. (James McCoy,
closes #8936)
文件: src/structs.h, .github/workflows/ci.yml
Patch 8.2.3482
问题: Reading beyond end of line ending in quote and backslash.
解决方案: Check for non-NUL after backslash. (closes #8964)
文件: src/cindent.c, src/testdir/test_cindent.vim
Patch 8.2.3483
问题: #ifdef for using sysinfo() is incomplete.
解决方案: Also check for HAVE_SYSINFO. Make autoconf check use TRY_LINK.
(closes #8952)
文件: src/memline.c, src/configure.ac, src/auto/configure
Patch 8.2.3484
问题: Crash when going through spell suggestions.
解决方案: Limit the text length for finding suggestions to the original
length. Do not update buffers when exiting. (closes #8965)
文件: src/spellsuggest.c, src/clipboard.c,
src/testdir/test_spell_utf8.vim
Patch 8.2.3485
问题: Python 3 test fails with Python 3.10.
解决方案: Adjust expected error message. (zdohnal Dohnal, closes #8969)
文件: src/testdir/test_python3.vim
Patch 8.2.3486
问题: Illegal memory access with invalid sequence of commands.
解决方案: Do not call leave_block() when not in a try block. (closes #8966)
Reset did_emsg so that exception is shown as an error.
文件: src/ex_eval.c, src/testdir/test_trycatch.vim
Patch 8.2.3487
问题: Illegal memory access if buffer name is very long.
解决方案: Make sure not to go over the end of the buffer.
文件: src/drawscreen.c, src/testdir/test_statusline.vim
Patch 8.2.3488
问题: Issue template is not easy to use.
解决方案: Use a yaml template. (closes #8928)
文件: .github/ISSUE_TEMPLATE/bug_report.md,
.github/ISSUE_TEMPLATE/bug_report.yml
Patch 8.2.3489
问题: ml_get error after search with range.
解决方案: Limit the line number to the buffer line count.
文件: src/ex_docmd.c, src/testdir/test_search.vim
Patch 8.2.3490
问题: Superfluous return statements.
解决方案: Remove superfluous return statements from void functions.
(closes #8977)
文件: src/buffer.c, src/getchar.c, src/memline.c, src/move.c,
src/option.c
Patch 8.2.3491
问题: xpm2 filetype detection is not so good.
解决方案: Adjust the check for xpm2. (closes #8914)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3492
问题: Crash when pasting too many times.
解决方案: Limit the size to what fits in an int. (closes #8962)
文件: src/register.c, src/errors.h, src/testdir/test_put.vim
Patch 8.2.3493 (after 8.2.3492)
问题: Large count test fails on MS-Windows.
解决方案: Skip the test on MS-Windows.
文件: src/testdir/test_put.vim
Patch 8.2.3494
问题: Illegal memory access in utf_head_off.
解决方案: Check cursor position when reselecting the Visual area.
(closes #8963)
文件: src/normal.c, src/testdir/test_visual.vim
Patch 8.2.3495
问题: GUI geometry startup test fails on some systems. (Drew Vogel)
解决方案: Add tolerance to the size check. (closes #8815)
文件: src/testdir/test_startup.vim
Patch 8.2.3496
问题: Crypt test fails on MS-Windows if xxd was not installed yet.
解决方案: Use the just built xxd executable if it exists. (James McCoy,
closes #8929)
文件: src/testdir/test_crypt.vim
Patch 8.2.3497
问题: Put test fails when run by itself.
解决方案: Source check.vim. (Dominique Pellé, closes #8990)
文件: src/testdir/test_put.vim
Patch 8.2.3498
问题: Recover test may fail on some systems.
解决方案: Adjust the little endian and 64 bit detection. (James McCoy,
closes #8941)
文件: src/testdir/test_recover.vim
Patch 8.2.3499
问题: GUI geometry startup test fails.
解决方案: Check string values instead of numbers
文件: src/testdir/test_startup.vim
Patch 8.2.3500
问题: Github CI fails to install clang.
解决方案: Install llvm-11 explicitly. (Christian Brabandt, closes #8993)
文件: .github/workflows/ci.yml
Patch 8.2.3501
问题: tmux filetype detection is incomplete
解决方案: Also use tmux for files having text after .conf. (Eric Pruitt,
closes #8971)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3502 (after 8.2.2919)
问题: Cannot enter password in shell command.
解决方案: Revert patch 8.2.2919.
文件: src/os_unix.c
Patch 8.2.3503
问题: Vim9: using g:pat:cmd is confusing.
解决方案: Do not recognize g: as the :global command. Also for s:pat:repl.
(closes #8982)
文件: runtime/doc/vim9.txt, src/ex_docmd.c, src/ex_cmds.c, src/errors.h,
src/vim9compile.c, src/proto/vim9compile.pro,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3504 (after 8.2.3503)
问题: Vim9: warning for signed vs unsigned.
解决方案: Add type cast.
文件: src/vim9compile.c
Patch 8.2.3505 (after 8.2.3503)
问题: Vim9: build failure without the +eval feature.
解决方案: Add #ifdef.
文件: src/ex_cmds.c
Patch 8.2.3506 (after 8.2.3503)
问题: Vim9: special cases for "g" and "s" insufficiently tested.
解决方案: Add a few more test cases.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.3507
问题: Generating proto files may fail.
解决方案: Define __attribute().
文件: src/Makefile
Patch 8.2.3508 (after 8.2.3503)
问题: Vim9: bad separators for "g" and "s" insufficiently tested.
解决方案: Add a few more test cases.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.3509
问题: Undo file is not synced. (Sami Farin)
解决方案: Sync the undo file if 'fsync' is set. (Christian Brabandt,
closes #8879, closes #8920)
文件: runtime/doc/options.txt, src/undo.c
Patch 8.2.3510
问题: Changes are only detected with one second accuracy.
解决方案: Use the nanosecond time if possible. (Leah Neukirchen,
closes #8873, closes #8875)
文件: runtime/doc/eval.txt, src/auto/configure, src/bufwrite.c,
src/config.h.in, src/configure.ac, src/fileio.c,
src/proto/fileio.pro, src/memline.c, src/netbeans.c,
src/structs.h, src/evalfunc.c, src/testdir/test_stat.vim
Patch 8.2.3511
问题: Vim9: entry for loop variable is created every round.
解决方案: Only create the entry once. (closes #8996)
文件: src/evalvars.c, src/vim9script.c
Patch 8.2.3512
问题: Timestamp test fails on some systems.
解决方案: Sleep for a short while.
文件: src/testdir/test_stat.vim
Patch 8.2.3513
问题: Using freed memory when using a timer and searching. (Dominique
Pellé)
解决方案: Allocated mr_pattern.
文件: src/search.c
Patch 8.2.3514
问题: Autoread test with nanosecond time sometimes fails.
解决方案: Mark the test as being flaky.
文件: src/testdir/test_stat.vim
Patch 8.2.3515
问题: Nano time test fails on Mac and FreeBSD.
解决方案: Also check nano time when not on Linux. (Ozaki Kiichi,
closes #9000)
文件: src/fileio.c
Patch 8.2.3516
问题: Terminal window does not have transparent background when
'termguicolors' is used.
解决方案: Fix the background color. (closes #2361, closes #9002)
文件: runtime/doc/terminal.txt, src/highlight.c, src/proto/terminal.pro,
src/terminal.c
Patch 8.2.3517
问题: TextChanged does not trigger after TextChangedI.
解决方案: Store the tick separately for TextChangedI. (Christian Brabandt,
closes #8968, closes #8932)
文件: src/buffer.c, src/bufwrite.c, src/edit.c, src/structs.h,
src/testdir/test_autocmd.vim
Patch 8.2.3518
问题: Test_xrestore sometimes fails.
解决方案: Mark the test as flaky. Move marking test as flaky to the test
instead of listing them in runtest.
文件: src/testdir/test_paste.vim, src/testdir/runtest.vim,
src/testdir/test_autocmd.vim, src/testdir/test_channel.vim,
src/testdir/test_clientserver.vim, src/testdir/test_diffmode.vim,
src/testdir/test_functions.vim, src/testdir/test_gui.vim,
src/testdir/test_mapping.vim, src/testdir/test_popup.vim,
src/testdir/test_quotestar.vim, src/testdir/test_reltime.vim,
src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim,
src/testdir/test_timers.vim
Patch 8.2.3519
问题: TOML files are not recognized.
解决方案: Add filetype patterns for TOML. (Aman Verma, closes #8984)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3520
问题: Cannot define a function for thesaurus completion.
解决方案: Add 'thesaurusfunc'. (Yegappan Lakshmanan, closes #8987,
closes 8950)
文件: runtime/doc/insert.txt, runtime/doc/options.txt,
runtime/doc/quickref.txt, src/buffer.c, src/insexpand.c,
src/option.c, src/option.h, src/optiondefs.h, src/optionstr.c,
src/structs.h, src/testdir/test_edit.vim
Patch 8.2.3521 (after 8.2.3520)
问题: Options completion test fails.
解决方案: Add 'thesaurusfunc' to the results.
文件: src/testdir/test_options.vim
Patch 8.2.3522
问题: Cannot use \x and \u when setting 'listchars'.
解决方案: Support hex and unicode in hex form. (closes #9006)
文件: runtime/doc/options.txt, src/screen.c, src/charset.c,
src/testdir/test_listchars.vim
Patch 8.2.3523
问题: Duplicated code in xxd.
解决方案: Remove duplicated lines. (closes #8972)
文件: src/xxd/xxd.c
Patch 8.2.3524
问题: GUI: ligatures are not used.
解决方案: Add the 'guiligatures' option. (Dusan Popovic, closes #8933)
文件: runtime/doc/options.txt, src/gui.c, src/gui.h, src/gui_gtk_x11.c,
src/option.h, src/optiondefs.h, src/optionstr.c, src/errors.h,
src/proto/gui.pro, src/proto/gui_gtk_x11.pro,
src/testdir/test_gui.vim
Patch 8.2.3525
问题: Option variable name does not match option name. (Christ van
Willegen)
解决方案: Rename the variable.
文件: src/buffer.c, src/insexpand.c, src/option.c, src/optionstr.c,
src/structs.h
Patch 8.2.3526
问题: Tests have clumsy check for X11 based GUI.
解决方案: Add CheckX11BasedGui.
文件: src/testdir/check.vim, src/testdir/test_gui.vim,
src/testdir/test_gui_init.vim, src/testdir/setup_gui.vim
Patch 8.2.3527
问题: Gcc complains about uninitialized variable. (Tony Mechelynck)
解决方案: Initialize it.
文件: src/gui_gtk_x11.c
Patch 8.2.3528
问题: 'thesaurus' and 'thesaurusfunc' do not have the same scope.
解决方案: Make 'thesaurusfunc' global-local.
文件: runtime/doc/options.txt, runtime/doc/insert.txt,
src/optiondefs.h, src/option.h, src/option.c, src/structs.h,
src/insexpand.c, src/testdir/test_edit.vim
Patch 8.2.3529
问题: Xxd usage output is incomplete.
解决方案: Add "bytes" to "-g" flag. (Atsushi Sugawara, closes #8944)
文件: src/xxd/xxd.c
Patch 8.2.3530
问题: ":buf \{a}" fails while ":edit \{a}" works.
解决方案: Unescape "\{". (closes #8917)
文件: src/vim.h, src/cmdexpand.c, src/evalfunc.c, src/ex_getln.c,
src/proto/ex_getln.pro, src/normal.c, src/session.c,
src/terminal.c, src/vim9execute.c, src/testdir/test_cmdline.vim
Patch 8.2.3531 (after 8.2.3530)
问题: Command line completion test fails on MS-Windows.
解决方案: Do not test with "\{" on MS-Windows.
文件: src/testdir/test_cmdline.vim
Patch 8.2.3532
问题: The previous '' mark is restored after moving the cursor to the
original jump position. (Tony Chen)
解决方案: Forget the previous position after checking. (closes #8985)
文件: src/mark.c, src/testdir/test_marks.vim
Patch 8.2.3533
问题: Inefficient code in xxd.
解决方案: Don't use "p" when "hextype" is non-zero. (closes #9013)
文件: src/xxd/xxd.c
Patch 8.2.3534
问题: Autoread test is a bit flaky.
解决方案: Wait a brief moment before overwriting the file.
文件: src/testdir/test_stat.vim
Patch 8.2.3535
问题: If-else indenting is confusing.
解决方案: Add curly brackets and indent. (Dominique Pellé, closes #9010)
文件: src/drawscreen.c
Patch 8.2.3536
问题: The do_highlight() function is way too long.
解决方案: Split it into several functions. (Yegappan Lakshmanan,
closes #9011)
文件: src/highlight.c
Patch 8.2.3537
问题: mode() does not return the right value in 'operatorfunc'.
解决方案: Reset finish_op while calling 'operatorfunc'.
文件: src/ops.c, src/testdir/test_functions.vim
Patch 8.2.3538
问题: Else-if indenting is confusing.
解决方案: Add curly brackets. (Yegappan Lakshmanan, closes #9017)
文件: src/highlight.c
Patch 8.2.3539
问题: GTK3: with 'rightleft' set scrollbar may move unintentionally.
解决方案: Ignore events while moving the scrollbar thumb. (closes #8958)
文件: src/gui_gtk.c
Patch 8.2.3540
问题: The mark '] is wrong after put with a count. (Naohiro Ono)
解决方案: Use the right line number. (closes #8956)
文件: src/register.c, src/testdir/test_put.vim
Patch 8.2.3541
问题: Compiler warning for unused variable in tiny version.
解决方案: Add #ifdef. (John Marriott)
文件: src/highlight.c
Patch 8.2.3542
问题: Too many comments are old style.
解决方案: Change comments to // style. (closes #9021)
文件: src/buffer.c
Patch 8.2.3543
问题: Swapname has double slash when 'directory' ends in double slash.
(Shane Smith)
解决方案: Remove the superfluous slash. (closes #8876)
文件: src/memline.c, src/testdir/test_swap.vim
Patch 8.2.3544
问题: Unix: may leak file descriptor when using a non-existing
directory.
解决方案: Always close the file. (closes #9023)
文件: src/os_unix.c
Patch 8.2.3545
问题: setcellwidths() may make 'listchars' or 'fillchars' invalid.
解决方案: Check the value and give an error. (closes #9024)
文件: runtime/doc/eval.txt, src/optionstr.c, src/errors.h, src/mbyte.c,
src/testdir/test_utf8.vim
Patch 8.2.3546 (after 8.2.3545)
问题: Build failure without the +eval feature.
解决方案: Add #ifdef. (closes #9025)
文件: src/errors.h
Patch 8.2.3547
问题: Opening the quickfix window triggers BufWinEnter twice. (Yorick
Peterse)
解决方案: Only trigger BufWinEnter with "quickfix". (closes #9022)
文件: src/ex_cmds.c, src/vim.h, src/quickfix.c, src/buffer.c,
src/testdir/test_quickfix.vim
Patch 8.2.3548
问题: GTK GUI crashes when reading from stdin.
解决方案: Do not overwrite the NUL after the string. (closes #9028)
文件: src/gui_gtk_x11.c, src/testdir/test_gui.vim
Patch 8.2.3549
问题: Mistakes in test comments.
解决方案: Fix the comments. (closes #9029)
文件: src/testdir/test_autocmd.vim
Patch 8.2.3550
问题: completion() does not work properly.
解决方案: Set xp_line and add WILD_HOME_REPLACE. (Shougo Matsushita,
closes #9016)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.3551
问题: Checking first character of url twice.
解决方案: Only check once. (closes #9026)
文件: src/misc1.c
Patch 8.2.3552
问题: Xxd revert does not handle end of line correctly.
解决方案: Check for newline first. (closes #9034)
文件: src/xxd/xxd.c, src/testdir/test_xxd.vim
Patch 8.2.3553 (after 8.2.3552)
问题: Xxd test fails on MS-Windows.
解决方案: Split shell command in two.
文件: src/testdir/test_xxd.vim
Patch 8.2.3554
问题: Xxd has various way to exit.
解决方案: Add function to print error and exit. (closes #9035)
文件: src/xxd/xxd.c
Patch 8.2.3555
问题: ModeChanged is not triggered on every mode change.
解决方案: Also trigger on minor mode changes. (Maguns Gross, closes #8999)
文件: runtime/doc/autocmd.txt, src/autocmd.c, src/insexpand.c,
src/misc1.c, src/normal.c, src/terminal.c,
src/testdir/test_edit.vim
Patch 8.2.3556
问题: Filler lines are incorrect for other window in diff mode after
making a change.
解决方案: Copy filler lines from the current window. (closes #8809)
文件: src/diff.c, src/testdir/test_diffmode.vim,
src/testdir/dumps/Test_diff_scroll_change_03.dump
Patch 8.2.3557
问题: Vim9: cannot call imported funcref at script level.
解决方案: Check for an imported function. (closes #9007)
文件: src/userfunc.c, src/testdir/test_vim9_script.vim
Patch 8.2.3558 (after 8.2.3557)
问题: Vim9: asserting the wrong variable.
解决方案: Don't use Foo, use Goo.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.3559
问题: Loop variable recreated every time.
解决方案: Keep the loop variable when looping.
文件: src/ex_eval.c
Patch 8.2.3560
问题: Using freed memory with lambda.
解决方案: Do not free lines early, keep them until the expression is
finished. (closes #9020)
文件: src/eval.c, src/proto/eval.pro, src/userfunc.c, src/vim9compile.c,
src/structs.h, src/globals.h, src/testdir/test_vim9_func.vim
Patch 8.2.3561
问题: Cscope has a complicated way of giving an error message.
解决方案: Use semsg(). (James McCoy, closes #9038)
文件: src/if_cscope.c
Patch 8.2.3562
问题: Cannot add color names.
解决方案: Add the v:colornames dictionary. (Drew Vogel, closes #8761)
文件: Filelist, READMEdir/README_extra.txt, nsis/gvim.nsi,
runtime/colors/README.txt, runtime/colors/lists/csscolors.vim,
runtime/colors/lists/default.vim, runtime/doc/eval.txt,
runtime/doc/gui_w32.txt, runtime/doc/message.txt,
runtime/doc/os_haiku.txt, runtime/doc/syntax.txt,
runtime/doc/usr_06.txt, src/Makefile, src/evalvars.c,
src/gui_haiku.cc, src/highlight.c, src/gui.c, src/job.c,
src/proto/highlight.pro, src/proto/term.pro, src/term.c,
src/vim.h, src/globals.h, src/errors.h,
src/testdir/test_highlight.vim
Patch 8.2.3563 (after 8.2.3562)
问题: Build failure with +eval but without GUI or +termguicolors
解决方案: Adjust #ifdef. (John Marriott)
文件: src/highlight.c
Patch 8.2.3564
问题: Invalid memory access when scrolling without a valid screen.
解决方案: Do not set VALID_BOTLINE in w_valid.
文件: src/move.c, src/testdir/test_normal.vim
Patch 8.2.3565
问题: Makefile dependencies are outdated. (Gary Johnson)
解决方案: Run "make depend" and add missing dependencies.
文件: src/Makefile
Patch 8.2.3566
问题: Build failure on old systems when using nano timestamp.
解决方案: Define _BSD_SOURCE, _SVID_SOURCE and _DEFAULT_SOURCE. (Gary
Johnson, closes #9054)
文件: src/vim.h
Patch 8.2.3567
问题: CTRL-I in Insert mode is not tested
解决方案: Add a test case. (Dominique Pellé, closes #8866)
文件: src/testdir/test_edit.vim
Patch 8.2.3568
问题: Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
解决方案: Run the test only with GTK. (Dominique Pellé, closes #9069)
文件: src/testdir/test_edit.vim
Patch 8.2.3569
问题: Error for :let when vimrc is Vim 9 script.
解决方案: Prepend :legacy in the code for converting arguments. (Christian
Brabandt, closes #9068, closes #9077)
文件: src/os_win32.c
Patch 8.2.3570
问题: Test_very_large_count fails on 32bit systems.
解决方案: Bail out when using 32 bit numbers. (closes #9072)
文件: src/testdir/test_put.vim
Patch 8.2.3571
问题: Some unicode control characters are considered printable.
解决方案: Make 0x2060 - 0x2069 not printable.
文件: src/mbyte.c
Patch 8.2.3572
问题: Memory leak when closing window and using "multispace" in
'listchars'.
解决方案: Free the memory. (closes #9071)
文件: src/window.c, src/testdir/test_listchars.vim
Patch 8.2.3573
问题: Cannot decide whether to skip test that fails with 64 bit ints.
(closes #9072)
解决方案: Add v:sizeofint, v:sizeoflong and v:sizeofpointer. Improve the
check for multiply overflow.
文件: runtime/doc/eval.txt, src/vim.h, src/evalvars.c, src/register.c,
src/testdir/test_put.vim
Patch 8.2.3574 (after 8.2.3573)
问题: Divide by zero.
解决方案: Don't check for overflow if multiplicand is zero.
文件: src/register.c
Patch 8.2.3575 (after 8.2.3574)
问题: Overflow check still fails when sizeof(int) == sizeof(long).
解决方案: Use a float to check the result.
文件: src/register.c
Patch 8.2.3576
问题: Some functions are not documented for use with a method.
解决方案: Add examples. Fix that sign_unplacelist() only takes one
argument. (Sean Dewar, closes #9081)
文件: src/evalfunc.c, runtime/doc/eval.txt
Patch 8.2.3577 (after 8.2.3574)
问题: Overflow check fails with 32 bit ints.
解决方案: Only test with 64 bit ints.
文件: src/testdir/test_put.vim
Patch 8.2.3578
问题: Manipulating highlighting is complicated.
解决方案: Add the hlget() and hlset() functions. (Yegappan Lakshmanan,
closes #9039)
文件: runtime/doc/eval.txt, runtime/doc/syntax.txt,
runtime/doc/usr_41.txt, runtime/doc/windows.txt, src/evalfunc.c,
src/highlight.c, src/proto/highlight.pro,
src/testdir/test_highlight.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.3579
问题: CI sometimes fails for MinGW.
解决方案: Use backslashes in HandleSwapExists(). (Christian Brabandt,
closes #9078)
文件: src/testdir/runtest.vim
Patch 8.2.3580
问题: gj does not move properly with a wide character.
解决方案: Move one to the right. (Christian Brabandt, closes #8702)
文件: src/normal.c, src/testdir/test_normal.vim
Patch 8.2.3581
问题: Reading character past end of line.
解决方案: Correct the cursor column.
文件: src/ex_docmd.c, src/testdir/test_put.vim
Patch 8.2.3582
问题: Reading uninitialized memory when giving spell suggestions.
解决方案: Check that preword is not empty.
文件: src/spellsuggest.c, src/testdir/test_spell.vim
Patch 8.2.3583
问题: The "gd" and "gD" commands do not update search stats. (Gary
Johnson)
解决方案: Clear search stats.
文件: src/normal.c, src/testdir/test_search_stat.vim,
src/testdir/dumps/Test_searchstatgd_1.dump,
src/testdir/dumps/Test_searchstatgd_2.dump
Patch 8.2.3584
问题: "verbose set efm" reports the location of the :compiler command.
(Gary Johnson)
解决方案: Add the "-keepscript" argument to :command and use it when
defining CompilerSet.
文件: runtime/doc/map.txt, src/ex_cmds2.c, src/usercmd.c, src/ex_cmds.h,
src/testdir/test_compiler.vim
Patch 8.2.3585
问题: Crash when passing float to "term_rows" in the options argument of
term_start(). (Virginia Senioria)
解决方案: Bail out if the argument is not a number. (closes #9116)
文件: src/job.c, src/terminal.c, src/testdir/test_terminal.vim
Patch 8.2.3586 (after 8.2.3584)
问题: Command completion test fails.
解决方案: Add new argument to expected output
文件: src/testdir/test_usercommands.vim
Patch 8.2.3587 (after 8.2.3584)
问题: Compiler test fails with backslash file separator.
解决方案: Accept slash and backslash.
文件: src/testdir/test_compiler.vim
Patch 8.2.3588
问题: Break statement is never reached.
解决方案: Rely on return value of set_chars_option() not changing.
(closes #9103)
文件: src/optionstr.c
Patch 8.2.3589
问题: Failure when the "term_rows" argument of term_start() is an
unusual value.
解决方案: Limit to range of zero to 1000. (closes #9116)
文件: runtime/doc/terminal.txt, src/job.c, src/testdir/test_terminal.vim
Patch 8.2.3590
问题: Test for v:colornames sometimes fails. (Dominique Pellé)
解决方案: Check features. Clear v:colornames between tests. (Drew Vogel,
closes #9105, closes #9073)
文件: runtime/doc/eval.txt, src/highlight.c, src/proto/highlight.pro,
src/testdir/test_highlight.vim
Patch 8.2.3591
问题: No event is triggered when closing a window.
解决方案: Add the WinClosed event. (Naohiro Ono, closes #9110)
文件: runtime/doc/autocmd.txt, src/autocmd.c,
src/testdir/test_autocmd.vim, src/vim.h, src/window.c
Patch 8.2.3592
问题: Test_hlset fails when terminal has many columns.
解决方案: Set the number of columns to 80. (Dominique Pellé, closes #9101,
closes #9100)
文件: src/testdir/test_highlight.vim
Patch 8.2.3593
问题: Directory is wrong after executing "lcd" with win_execute().
解决方案: Correct the directory when going back to the original window.
(closes #9132)
文件: src/evalwindow.c, src/window.c, src/proto/window.pro,
src/testdir/test_execute_func.vim
Patch 8.2.3594
问题: Xxd code is a bit difficult to understand.
解决方案: Move some lines to a separate function. (closes #9037)
文件: src/xxd/xxd.c
Patch 8.2.3595
问题: Check for signed overflow might not work everywhere.
解决方案: Limit to 32 bit int. (closes #9043, closes #9067)
文件: src/getchar.c
Patch 8.2.3596
问题: Crash when using :pedit in Vim9 script.
解决方案: Move check for arguments to after checking there are arguments.
(Yegappan Lakshmanan, closes #9134, closes #9135)
文件: src/popupwin.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3597
问题: Vim seems to hang when writing a very long text to a terminal
window.
解决方案: Limit the amount of text based on 'termwinscroll'. (issue #9080)
文件: runtime/doc/options.txt, src/terminal.c
Patch 8.2.3598
问题: RouterOS filetype is not recognized.
解决方案: Add file and script patterns. (closes #9097)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3599
问题: Not all gdbinit files are recognized.
解决方案: Add "gdbinit". (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3600 (after 8.2.3598)
问题: Filetype test fails.
解决方案: Add missing change.
文件: runtime/scripts.vim
Patch 8.2.3601
问题: Check for overflow in put count does not work well.
解决方案: Improve the overflow check. (Ozaki Kiichi, closes #9102)
文件: src/register.c, src/testdir/test_put.vim
Patch 8.2.3602
问题: Python3 test fails with Python 3.10 on MS-Windows.
解决方案: Adjust the expected error. (Ken Takata, closes #9118)
文件: src/testdir/test_python3.vim
Patch 8.2.3603
问题: Fish filetype not recognized.
解决方案: Add a file pattern and match script line. (Doug Kearns)
文件: runtime/filetype.vim, runtime/scripts.vim,
src/testdir/test_filetype.vim
Patch 8.2.3604
问题: Not all sudoers files are recognized.
解决方案: Add a file pattern. (Doug Kearns, closes #1192)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3605
问题: Cannot clear and unlink a highlight group with hlset() in a
single call.
解决方案: Add the "force" option. (Yegappan Lakshmanan, closes #9117)
文件: runtime/doc/eval.txt, src/highlight.c,
src/testdir/test_highlight.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3606
问题: File missing from list of distributed files.
解决方案: Add the file.
文件: Filelist
Patch 8.2.3607
问题: GTK3 screen updating is slow.
解决方案: Remove some of the GTK3-specific code. (closes #9052)
文件: src/gui.h, src/gui_gtk_x11.c
Patch 8.2.3608
问题: Users who type "q:" instead of ":q" are confused.
解决方案: Add an autocmd to give a message that explains this is the
command-line window. (Egor Zvorykin, closes #9146)
文件: runtime/defaults.vim, src/testdir/test_autocmd.vim,
src/testdir/test_cmdline.vim
Patch 8.2.3609
问题: Internal error when ModeChanged is triggered when v:event is
already in use.
解决方案: Save and restore v:event if needed.
文件: src/misc1.c, src/proto/misc1.pro, src/testdir/test_edit.vim,
src/insexpand.c, src/structs.h, src/register.c
Patch 8.2.3610
问题: Crash when ModeChanged triggered too early.
解决方案: Trigger ModeChanged after setting VIsual.
文件: src/normal.c, src/testdir/test_edit.vim
Patch 8.2.3611
问题: Crash when using CTRL-W f without finding a file name.
解决方案: Bail out when the file name length is zero.
文件: src/findfile.c, src/normal.c, src/testdir/test_visual.vim
Patch 8.2.3612
问题: Using freed memory with regexp using a mark.
解决方案: Get the line again after getting the mark position.
文件: src/regexp.c, src/regexp_nfa.c, src/testdir/test_regexp_latin.vim
Patch 8.2.3613
问题: :find test fails.
解决方案: Put length check inside if block.
文件: src/findfile.c
Patch 8.2.3614
问题: zindex of popup windows not used when redrawing popup menu.
解决方案: Check the zindex when redrawing the popup menu. (closes #9129,
closes #9089)
文件: src/popupmenu.c, src/popupwin.c, src/proto/popupmenu.pro,
src/screen.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_popupmenu_masking_1.dump,
src/testdir/dumps/Test_popupwin_popupmenu_masking_2.dump
Patch 8.2.3615
问题: When re-formatting with an indent expression the first line of a
paragraph may get the wrong indent. (Martin F. Krafft)
解决方案: Apply the correct indenting function for the first line.
(Christian Brabandt, closes #9150, closes #9056)
文件: src/textformat.c, src/testdir/test_indent.vim
Patch 8.2.3616
问题: Arglist test does not clear the argument list consistently.
解决方案: Call Reset_arglist(). (Shougo Matsushita, closes #9154)
文件: src/testdir/test_arglist.vim
Patch 8.2.3617
问题: ":verbose pwd" does not mention 'autochdir' was applied.
解决方案: Remember the last chdir was done by 'autochdir'. (issue #9142)
文件: src/globals.h, src/buffer.c, src/ex_docmd.c, src/window.c,
src/main.c, src/netbeans.c, src/os_win32.c,
src/testdir/test_autochdir.vim
Patch 8.2.3618
问题: getcwd() is unclear about how 'autochdir' is used.
解决方案: Update the help for getcwd(). Without any arguments always return
the actual current directory. (closes #9142)
文件: runtime/doc/eval.txt, src/filepath.c, src/testdir/test_cd.vim
Patch 8.2.3619
问题: Cannot use a lambda for 'operatorfunc'.
解决方案: Support using a lambda or partial. (Yegappan Lakshmanan,
closes #8775)
文件: runtime/doc/map.txt, runtime/doc/options.txt, src/ops.c,
src/option.c, src/optionstr.c, src/proto/ops.pro,
src/proto/option.pro, src/quickfix.c, src/testdir/test_normal.vim
Patch 8.2.3620
问题: Memory leak reported in libtlib.
解决方案: Call del_curterm() when cleaning up memory. Rename term.h to
termdefs.h to avoid a name clash.
文件: src/term.c, src/proto/term.pro, src/alloc.c, src/configure.ac,
src/auto/configure, src/config.h.in, src/Makefile,
src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
src/term.h, src/termdefs.h
Patch 8.2.3621 (after 8.2.3620)
问题: Build failure.
解决方案: Add missing change.
文件: src/vim.h
Patch 8.2.3622
问题: "verbose pwd" shows confusing info when :lcd does not change
directory.
解决方案: Clear last_chdir_reason also when the directory does not change.
(closes #9160)
文件: src/ex_docmd.c, src/testdir/test_autochdir.vim
Patch 8.2.3623
问题: "$*" is expanded to "nonomatch".
解决方案: Only add "set nonomatch" when using a csh-like shell. (Christian
Brabandt, closes #9159, closes #9153)
文件: src/os_unix.c, src/testdir/test_expand.vim
Patch 8.2.3624
问题: When renaming a terminal buffer the status text is not updated.
解决方案: Clear the cached status text when renaming a terminal buffer.
(closes #9162)
文件: src/buffer.c, src/terminal.c, src/proto/terminal.pro,
src/testdir/test_terminal.vim
Patch 8.2.3625
问题: Illegal memory access when C-indenting.
解决方案: Also set the cursor column.
文件: src/cindent.c, src/testdir/test_cindent.vim
Patch 8.2.3626
问题: "au!" and "au! event" cannot be followed by another command as
documented.
解决方案: When a bar is found set nextcmd.
文件: src/autocmd.c, src/testdir/test_autocmd.vim
Patch 8.2.3627
问题: difficult to know where the text starts in a window. (Sergey
Vlasov)
解决方案: Add the "textoff" entry in the result of getwininfo().
(closes #9163)
文件: runtime/doc/eval.txt, src/evalwindow.c,
src/testdir/test_bufwintabinfo.vim
Patch 8.2.3628
问题: Looking up terminal colors is a bit slow.
解决方案: Cache the terminal colors. (closes #9130, closes #9058)
文件: src/highlight.c, src/libvterm/include/vterm.h, src/option.c,
src/optionstr.c, src/popupwin.c, src/proto/terminal.pro,
src/structs.h, src/terminal.c, src/window.c,
src/testdir/test_terminal3.vim,
src/testdir/dumps/Test_terminal_color_MyTermCol.dump,
src/testdir/dumps/Test_terminal_color_MyTermCol_over_Terminal.dump,
src/testdir/dumps/Test_terminal_color_MyWinCol.dump,
src/testdir/dumps/Test_terminal_color_MyWinCol_over_group.dump,
src/testdir/dumps/Test_terminal_color_Terminal.dump,
src/testdir/dumps/Test_terminal_color_gui_MyTermCol.dump,
src/testdir/dumps/Test_terminal_color_gui_MyWinCol.dump,
src/testdir/dumps/Test_terminal_color_gui_Terminal.dump,
src/testdir/dumps/Test_terminal_color_gui_transp_MyTermCol.dump,
src/testdir/dumps/Test_terminal_color_gui_transp_MyWinCol.dump,
src/testdir/dumps/Test_terminal_color_gui_transp_Terminal.dump,
src/testdir/dumps/Test_terminal_color_transp_MyTermCol.dump,
src/testdir/dumps/Test_terminal_color_transp_MyWinCol.dump,
src/testdir/dumps/Test_terminal_color_transp_Terminal.dump,
src/testdir/dumps/Test_terminal_popup_MyPopupHlCol.dump,
src/testdir/dumps/Test_terminal_popup_MyTermCol_over_Terminal.dump,
src/testdir/dumps/Test_terminal_popup_MyWinCol.dump,
src/testdir/dumps/Test_terminal_popup_MyWinCol_over_group.dump,
src/testdir/dumps/Test_terminal_popup_gui_MyPopupHlCol.dump,
src/testdir/dumps/Test_terminal_popup_gui_MyTermCol.dump,
src/testdir/dumps/Test_terminal_popup_gui_MyWinCol.dump,
src/testdir/dumps/Test_terminal_popup_gui_Terminal.dump,
src/testdir/dumps/Test_terminal_popup_gui_transp_MyPopupHlCol.dump,
src/testdir/dumps/Test_terminal_popup_gui_transp_MyTermCol.dump,
src/testdir/dumps/Test_terminal_popup_gui_transp_MyWinCol.dump,
src/testdir/dumps/Test_terminal_popup_gui_transp_Terminal.dump,
src/testdir/dumps/Test_terminal_popup_transp_MyPopupHlCol.dump,
src/testdir/dumps/Test_terminal_popup_transp_MyTermCol.dump,
src/testdir/dumps/Test_terminal_popup_transp_MyWinCol.dump,
src/testdir/dumps/Test_terminal_popup_transp_Terminal.dump,
src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol.dump,
src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol2.dump
Patch 8.2.3629
问题: Command completion in cmdline window uses global user commands,
not local commands for the window where it was opened from.
解决方案: Use local commands. (closes #9168)
文件: src/ex_getln.c, src/proto/ex_getln.pro, src/evalvars.c,
src/usercmd.c, src/testdir/test_ins_complete.vim
Patch 8.2.3630
问题: Printf() with %S does not handle multi-byte correctly.
解决方案: Count cells instead of bytes. (closes #9169, closes #7486)
文件: src/strings.c, src/testdir/test_expr.vim
Patch 8.2.3631
问题: "syntax enable" does not work properly in Vim9 context.
解决方案: Also handle Vim9 context. (closes #9161)
文件: src/syntax.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3632
问题: GTK3: undercurl does not get removed properly.
解决方案: Set the cairo cursor first. (closes #9170)
文件: src/gui_gtk_x11.c
Patch 8.2.3633
问题: Vim9: line number of lambda is off by one.
解决方案: Add one to the line number. (closes #9083)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3634
问题: Error for already defined function uses wrong line number.
解决方案: Set SOURCING_LNUM before giving the error message. (closes #9085)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3635
问题: GTK: composing underline does not show.
解决方案: Include composing character in pango call. A few more
optimizations for ligatures. (Dusan Popovic, closes #9171,
closes #9147)
文件: src/gui_gtk_x11.c
Patch 8.2.3636
问题: Coverity warns for unreachable code.
解决方案: Remove unreachable else block.
文件: src/gui_gtk_x11.c
Patch 8.2.3637
问题: Typos in test files.
解决方案: Correct the typos. (Dominique Pellé, closes #9175)
文件: src/testdir/runtest.vim, src/testdir/test_debugger.vim,
src/testdir/test_diffmode.vim, src/testdir/test_edit.vim,
src/testdir/test_excmd.vim, src/testdir/test_flatten.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
src/testdir/test_options.vim, src/testdir/test_python2.vim,
src/testdir/test_python3.vim, src/testdir/test_quickfix.vim,
src/testdir/test_recover.vim, src/testdir/test_spellfile.vim,
src/testdir/test_syntax.vim, src/testdir/test_termcodes.vim,
src/testdir/test_textobjects.vim, src/testdir/test_trycatch.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim
Patch 8.2.3638
问题: getcompletion() always passes zero as position to custom
completion function.
解决方案: Pass the pattern length. (closes #9173)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.3639 (after 8.2.2922)
问题: Line commented out accidentally.
解决方案: Uncomment. (Volodymyr Kot, closes #9172)
文件: src/main.c
Patch 8.2.3640
问题: Freeze when calling term_wait() in a close callback.
解决方案: Set a "closing" flag to tell term_wait() to return. (closes #9152)
文件: src/channel.c, src/terminal.c, src/proto/terminal.pro,
src/testdir/test_terminal.vim
Patch 8.2.3641
问题: Xxd code has duplicate expressions.
解决方案: Refactor to avoid duplication. (closes #9185)
文件: src/xxd/xxd.c
Patch 8.2.3642
问题: List of distributed files is outdated.
解决方案: Rename term.h to termdefs.h.
文件: Filelist
Patch 8.2.3643
问题: Header for source file is outdated.
解决方案: Make the header more accurate. (closes #9186)
文件: src/map.c, src/getchar.c
Patch 8.2.3644
问题: Count for 'operatorfunc' in Visual mode is not redone.
解决方案: Add the count to the redo buffer. (closes #9174)
文件: src/normal.c, src/proto/normal.pro, src/ops.c,
src/testdir/test_normal.vim
Patch 8.2.3645
问题: Vim9: The "no effect" error is not given for all registers.
解决方案: Include any character following '@'. (closes #8779)
文件: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3646
问题: Using <sfile> in a function gives an unexpected result.
解决方案: Give an error in a Vim9 function. (issue #9189)
文件: src/scriptfile.c, src/errors.h, src/testdir/test_vim9_builtin.vim
Patch 8.2.3647
问题: GTK: when using ligatures the cursor is drawn wrong.
解决方案: Clear more characters when ligatures are used. (Dusan Popovic,
closes #9190)
文件: src/gui.c
Patch 8.2.3648
问题: "verbose pwd" is incorrect after dropping files on Vim.
解决方案: Set the chdir reason to "drop".
文件: src/gui.c
Patch 8.2.3649
问题: Vim9: error for variable declared in while loop.
解决方案: Do not keep the first variable. (closes #9191)
文件: src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3650
问题: Vim9: for loop variable can be a list member.
解决方案: Check for valid variable name. (closes #9179)
文件: src/vim9compile.c, src/dict.c, src/eval.c, src/evalvars.c,
src/proto/evalvars.pro, src/testdir/test_vim9_script.vim
Patch 8.2.3651
问题: Vim9: no error for :lock or :unlock with unknown variable.
解决方案: Give an error. (closes #9188)
文件: src/evalvars.c, src/errors.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.3652
问题: Can only get text properties one line at a time.
解决方案: Add options to prop_list() to use a range of lines and filter by
types. (Yegappan Lakshmanan, closes #9138)
文件: runtime/doc/textprop.txt, src/textprop.c,
src/testdir/test_textprop.vim
Patch 8.2.3653
问题: Terminal ANSI colors may be wrong.
解决方案: Initialize the color type. (closes #9198, closes #9197)
文件: src/terminal.c
Patch 8.2.3654
问题: GTK: a touch-drag does not update the selection.
解决方案: Add GDK_BUTTON1_MASK to the state. (Chris Dalton, close #9196,
closes #9194)
文件: src/gui_gtk_x11.c
Patch 8.2.3655
问题: Compiler warning for using size_t for int.
解决方案: Add a type cast. (Mike Williams, closes #9199)
文件: src/vim9compile.c
Patch 8.2.3656
问题: Vim9: no error for an environment variable by itself.
解决方案: Give a "without effect" error. (closes #9166)
文件: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3657
问题: Vim9: debug text misses one line of return statement.
解决方案: Add a line when not at a debug instruction. (closes #9137)
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.3658
问题: Duplicate code in xxd.
解决方案: Merge duplicated code. Add more tests. (closes #9192)
文件: src/xxd/xxd.c, src/testdir/test_xxd.vim
Patch 8.2.3659
问题: Integer overflow with large line number.
解决方案: Check for overflow. (closes #9202)
文件: src/errors.h, src/ex_docmd.c, src/testdir/test_excmd.vim
src/normal.c, src/testdir/test_normal.vim
Patch 8.2.3660 (after 8.2.3659)
问题: Overflow check uses wrong number.
解决方案: Divide by ten.
文件: src/normal.c
Patch 8.2.3661 (after 8.2.3659)
问题: Test for put with large count fails.
解决方案: Adjust the counts in the test.
文件: src/testdir/test_put.vim
Patch 8.2.3662
问题: Illegal memory access if malloc() fails.
解决方案: Check 'foldmethod' is not empty. (closes #9207)
文件: src/fold.c
Patch 8.2.3663
问题: Using %S in printf() does not work correctly.
解决方案: Fix the problem and add more tests. (closes #9208)
文件: src/strings.c, src/testdir/test_expr.vim
Patch 8.2.3664
问题: Cannot adjust sign highlighting for 'cursorline'.
解决方案: Add CursorLineSign and CursorLineFold highlight groups.
(Gregory Anders, closes #9201)
文件: runtime/doc/sign.txt, runtime/doc/syntax.txt, src/drawline.c,
src/highlight.c, src/optiondefs.h, src/popupwin.c,
src/proto/sign.pro, src/sign.c, src/structs.h, src/vim.h,
src/testdir/test_signs.vim
Patch 8.2.3665
问题: Cannot use a lambda for 'tagfunc'.
解决方案: Use 'tagfunc' like 'opfunc'. (Yegappan Lakshmanan, closes #9204)
文件: runtime/doc/options.txt, src/buffer.c, src/option.c,
src/optionstr.c, src/proto/tag.pro, src/structs.h, src/tag.c,
src/testdir/test_tagfunc.vim
Patch 8.2.3666
问题: Libvterm is outdated.
解决方案: Include patches from revision 769 to revision 789.
文件: Filelist, src/libvterm/Makefile, src/libvterm/doc/seqs.txt,
src/libvterm/include/vterm.h, src/libvterm/src/mouse.c,
src/libvterm/src/parser.c, src/libvterm/src/state.c,
src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
src/libvterm/t/02parser.test, src/libvterm/t/17state_mouse.test,
src/libvterm/t/29state_fallback.test,
src/libvterm/t/40state_selection.test, src/libvterm/t/harness.c,
src/libvterm/t/run-test.pl, src/libvterm/vterm.pc.in,
src/terminal.c
Patch 8.2.3667
问题: Building libvterm fails with MSVC.
解决方案: Don't use C99 construct.
文件: src/libvterm/src/state.c
Patch 8.2.3668
问题: Messages may be corrupted.
解决方案: Use another buffer instead of IObuff. (Yegappan Lakshmanan,
closes #9195)
文件: src/highlight.c, src/testdir/test_highlight.vim
Patch 8.2.3669
问题: Buffer overflow with long help argument.
解决方案: Use snprintf().
文件: src/help.c, src/testdir/test_help.vim
Patch 8.2.3670
问题: Error checks repeated several times.
解决方案: Move the checks to functions. (closes #9213)
文件: src/xxd/xxd.c
Patch 8.2.3671
问题: Restarting Insert mode in prompt buffer too often when a callback
switches windows and comes back. (Sean Dewar)
解决方案: Do not set "restart_edit" when already in Insert mode.
(closes #9212)
文件: src/window.c, src/testdir/test_prompt_buffer.vim
Patch 8.2.3672 (after 8.2.3670)
问题: Build failure with unsigned char.
解决方案: Use int instead of char.
文件: src/xxd/xxd.c
Patch 8.2.3673
问题: Crash when allocating signal stack fails.
解决方案: Only using sourcing info when available. (closes #9215)
文件: src/globals.h, src/message.c
Patch 8.2.3674
问题: When ml_get_buf() fails it messes up IObuff.
解决方案: Return a local pointer. (closes #9214)
文件: src/memline.c
Patch 8.2.3675
问题: Using freed memory when vim_strsave() fails.
解决方案: Clear "last_sourcing_name". Check for msg_source() called
recursively. (closes #8217)
文件: src/message.c
Patch 8.2.3676
问题: Unused runtime file.
解决方案: Remove rgb.txt.
文件: runtime/rgb.txt
Patch 8.2.3677
问题: After a put the '] mark is on the last byte of a multi-byte
character.
解决方案: Move it to the first byte. (closes #9047)
文件: src/register.c, src/testdir/test_put.vim
Patch 8.2.3678 (after 8.2.3677)
问题: Illegal memory access.
解决方案: Ignore changed indent when computing byte offset.
文件: src/register.c
Patch 8.2.3679
问题: objc file detected as Octave. (Antony Lee)
解决方案: Detect objc by preprocessor lines. (Doug Kearns, closes #9223,
closes #9220)
文件: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
Patch 8.2.3680
问题: Repeated code in xxd.
解决方案: Change exit_on_ferror() to getc_or_die(). (closes #9226)
文件: src/xxd/xxd.c
Patch 8.2.3681
问题: Cannot drag popup window after click on a status line. (Sergey
Vlasov)
解决方案: Reset on_status_line. (closes #9221)
文件: src/mouse.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_drag_04.dump
Patch 8.2.3682
问题: Vim9: assigning to a script variable drops the required type.
解决方案: Lookup the type of the variable and use it. (closes #9219)
文件: src/evalvars.c, src/vim9script.c, src/proto/vim9script.pro,
src/testdir/test_vim9_assign.vim
Patch 8.2.3683
问题: Vim9: cannot use =expr in :...do commands.
解决方案: Add EX_EXPAND to the commands. (closes #9232)
文件: src/ex_cmds.h, src/testdir/test_vim9_cmd.vim
Patch 8.2.3684
问题: Blockwise insert does not handle autoindent properly.
解决方案: Adjust text column for indent. (closes #9229)
文件: src/ops.c, src/testdir/test_blockedit.vim
Patch 8.2.3685
问题: Visual Studio project files are not recognized.
解决方案: Use the xml file type. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3686
问题: Filetype detection often mixes up Forth and F#.
解决方案: Add a function to inspect the file contents. (Doug Kearns)
文件: runtime/autoload/dist/ft.vim, runtime/doc/filetype.txt,
runtime/doc/syntax.txt, runtime/filetype.vim, runtime/scripts.vim,
src/testdir/test_filetype.vim
Patch 8.2.3687
问题: Blockwise insert does not handle autoindent properly when tab is
inserted.
解决方案: Adjust text column for indent before computing column.
(closes #9229)
文件: src/ops.c, src/testdir/test_blockedit.vim
Patch 8.2.3688
问题: The window title is not updated when dragging the scrollbar.
解决方案: Call maketitle(). (Christian Brabandt, closes #9238, closes #5383)
文件: src/gui.c
Patch 8.2.3689
问题: ex_let_one() is too long.
解决方案: Split into multiple functions.
文件: src/evalvars.c
Patch 8.2.3690
问题: Vim9: "filter #pat# cmd" does not work.
解决方案: Do not see #pat# as a comment.
文件: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3691
问题: Build failure with small features.
解决方案: Add #ifdef. (Dominique Pellé)
文件: src/gui.c
Patch 8.2.3692
问题: Vim9: cannot use :func inside a :def function.
解决方案: Make it work.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/errors.h,
src/structs.h, src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3693
问题: Coverity warns for possibly using a NULL pointer.
解决方案: Check for NULL and give an error.
文件: src/vim9execute.c, src/errors.h
Patch 8.2.3694
问题: Cannot use quotes in the count of an Ex command.
解决方案: Add getdigits_quoted(). Give an error when misplacing a quote in
a range. (closes #9240)
文件: src/ex_docmd.c, src/charset.c, src/proto/charset.pro,
src/testdir/test_usercommands.vim
Patch 8.2.3695
问题: Confusing error for missing key.
解决方案: Use the actual key for the error. (closes #9241)
文件: src/eval.c, src/testdir/test_listdict.vim
Patch 8.2.3696
问题: Vim9: error for invalid assignment when skipping.
解决方案: Do not check white space when skipping. (closes #9243)
文件: src/evalvars.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3697
问题: Cannot drag a popup without a border.
解决方案: Add the "dragall" option. (closes #9218)
文件: runtime/doc/popup.txt, src/mouse.c, src/popupwin.c, src/vim.h,
src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_drag_05.dump,
src/testdir/dumps/Test_popupwin_drag_06.dump
Patch 8.2.3698
问题: Match highlighting continues over breakindent.
解决方案: Stop before the end column. (closes #9242)
文件: src/match.c, src/proto/match.pro, src/drawline.c,
src/testdir/test_match.vim,
src/testdir/dumps/Test_match_linebreak.dump
Patch 8.2.3699
问题: The +title feature adds a lot of #ifdef but little code.
解决方案: Graduate the +title feature.
文件: src/feature.h, src/alloc.c, src/arglist.c, src/autocmd.c,
src/buffer.c, src/bufwrite.c, src/change.c, src/drawscreen.c,
src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/gui.c,
src/gui_gtk_x11.c, src/if_xcmdsrv.c, src/locale.c, src/main.c,
src/misc2.c, src/netbeans.c, src/option.c, src/optionstr.c,
src/os_amiga.c, src/os_mswin.c, src/os_unix.c, src/os_win32.c,
src/regexp.c, src/term.c, src/ui.c, src/version.c, src/window.c,
src/globals.h, src/option.h, src/optiondefs.h,
runtime/doc/options.txt, runtime/doc/various.txt
Patch 8.2.3700
问题: Text property highlighting continues over breakindent.
解决方案: Stop before the end column. (closes #9242)
文件: src/drawline.c, src/testdir/test_textprop.vim,
src/testdir/dumps/Test_prop_linebreak.dump
Patch 8.2.3701
问题: Vim9: invalid LHS is not possible.
解决方案: Remove unreachable error message.
文件: src/vim9compile.c
Patch 8.2.3702
问题: First key in dict is seen as curly expression and fails.
解决方案: Ignore failure of curly expression. (closes #9247)
文件: src/typval.c, src/dict.c, src/testdir/test_listdict.vim
Patch 8.2.3703 (after 8.2.3686)
问题: Most people call F# "fsharp" and not "fs".
解决方案: Rename filetype "fs" to "fsharp".
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim
Patch 8.2.3704
问题: Vim9: cannot use a list declaration in a :def function.
解决方案: Make it work.
文件: runtime/doc/vim9.txt, src/vim9compile.c, src/errors.h,
src/testdir/test_vim9_assign.vim
Patch 8.2.3705
问题: Cannot pass a lambda name to function() or funcref(). (Yegappan
Lakshmanan)
解决方案: Handle a lambda name differently.
文件: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
src/testdir/test_expr.vim
Patch 8.2.3706 (after 8.2.3700)
问题: Text property highlighting is used on Tab.
解决方案: Only set in_linebreak when not on a Tab. (closes #9242)
文件: src/drawline.c, src/testdir/test_textprop.vim,
src/testdir/dumps/Test_prop_after_tab.dump
Patch 8.2.3707
问题: Vim9: constant expression of elseif not recognized.
解决方案: Set instruction count before generating the expression.
文件: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.3708 (after 8.2.3707)
问题: Vim9: test fails with different error.
解决方案: Correct the error number.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.3709
问题: Vim9: backtick expression expanded when not desired.
解决方案: Only expand a backtick expression for commands that expand their
argument. Remove a few outdated TODO comments.
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3710
问题: Vim9: backtick expression expanded for :global.
解决方案: Check the following command.
文件: runtime/doc/vim9.txt, src/vim9compile.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3711
问题: Vim9: memory leak when compiling :elseif fails.
解决方案: Cleanup ppconst.
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3712
问题: Cannot use Vim9 lambda for 'tagfunc'.
解决方案: Make it work, add more tests. (Yegappan Lakshmanan, closes #9250)
文件: runtime/doc/options.txt, src/insexpand.c, src/option.c,
src/testdir/test_tagfunc.vim
Patch 8.2.3713
问题: MS-Windows: No error message if vimgrep pattern is not matching.
解决方案: Give an error message. (Christian Brabandt, closes #9245,
closes #8762)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.3714
问题: Some unused assignments and ugly code in xxd.
解决方案: Leave out assignments. Use marcro for fprintf(). (closes #9246)
文件: src/xxd/xxd.c
Patch 8.2.3715
问题: Vim9: valgrind reports spurious problems for a test.
解决方案: Move the test to the set that is known to fail.
文件: src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_fails.vim
Patch 8.2.3716
问题: Vim9: range without a command is not compiled.
解决方案: Add the ISN_EXECRANGE byte code.
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/vim9compile.c,
src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3717
问题: Vim9: error for constant list size is only given at runtime.
解决方案: Give the error at compile time if possible.
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3718
问题: Compiler warns for unused variable without the +textprop feature.
(John Marriott)
解决方案: Adjust #ifdefs.
文件: src/drawline.c
Patch 8.2.3719
问题: MS-Windows: test sometimes runs into existing swap file.
解决方案: Use a different file name.
文件: src/testdir/test_buffer.vim
Patch 8.2.3720
问题: Vim9: Internal error when invoking closure in legacy context.
解决方案: Give a more appropriate error message. (closes #9251)
文件: src/errors.h, src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.3721
问题: Using memory freed by losing the clipboard selection. (Dominique
Pellé)
解决方案: Check y_array is still valid after calling changed_lines().
(closes #9253)
文件: src/errors.h, src/register.c
Patch 8.2.3722
问题: Amiga: superfluous messages for freeing lots of yanked text.
解决方案: Assume that the machine isn't that slow these days.
文件: src/register.c
Patch 8.2.3723
问题: When using 'linebreak' a text property starts too early.
解决方案: Decrement "bcol" when looking for property start. (closes #9242)
文件: src/drawline.c, src/testdir/test_textprop.vim,
src/testdir/dumps/Test_prop_after_linebreak.dump
Patch 8.2.3724
问题: Build error for missing error message in small build.
解决方案: Correct #ifdef.
文件: src/errors.h
Patch 8.2.3725
问题: Cannot use a lambda for 'completefunc' and 'omnifunc'.
解决方案: Implement lambda support. (Yegappan Lakshmanan, closes #9257)
文件: runtime/doc/options.txt, src/buffer.c, src/insexpand.c,
src/option.c, src/optionstr.c, src/proto/insexpand.pro,
src/proto/tag.pro, src/proto/userfunc.pro, src/structs.h,
src/tag.c, src/userfunc.c, src/testdir/test_ins_complete.vim,
src/testdir/test_tagfunc.vim
Patch 8.2.3726
问题: README file in a config directory gets wrong filetype.
解决方案: Match README before patterns that match everything in a directory.
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3727
问题: In a gnome terminal keys are recognized as mouse events.
解决方案: Only recognize DEC mouse events when four numbers are following.
(closes #9256)
文件: src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.3728
问题: Internal error when passing range() to list2blob().
解决方案: Materialize the list first. (closes #9262)
文件: src/blob.c, src/testdir/test_blob.vim
Patch 8.2.3729
问题: No support for squirrels.
解决方案: Recognize nuts. (closes #9259)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3730
问题: "/etc/Muttrc.d/README" gets filetype muttrc.
解决方案: Move the Muttrc.d pattern down, add exception for *.rc files.
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3731
问题: "set! termcap" shows codes in one column, but not keys.
解决方案: Also use one column for keys. (closes #9258)
文件: src/option.c, src/term.c, src/proto/term.pro,
src/testdir/test_set.vim
Patch 8.2.3732 (after 8.2.3731)
问题: "set! termcap" test fails.
解决方案: Account for keys without a t_xx entry.
文件: src/testdir/test_set.vim
Patch 8.2.3733
问题: Vim9: using "legacy" before range does not work.
解决方案: Skip over range before parsing command. (closes #9270)
文件: src/vim9compile.c, src/usercmd.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.3734
问题: Vim9: crash when no pattern match found.
解决方案: Check for error.
文件: src/vim9execute.c
Patch 8.2.3735
问题: Cannot use a lambda for 'imactivatefunc'.
解决方案: Add lambda support for 'imactivatefunc' and 'imstatusfunc'.
(Yegappan Lakshmanan, closes #9275)
文件: runtime/doc/options.txt, src/alloc.c, src/gui_xim.c,
src/optionstr.c, src/proto/gui_xim.pro,
src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim
Patch 8.2.3736
问题: Test fails without the channel feature. (Dominique Pellé)
解决方案: Source the check.vim script. (closes #9277)
文件: src/testdir/test_vim9_fails.vim
Patch 8.2.3737
问题: Test fails without the 'autochdir' option.
解决方案: Check that the option is available. (Dominique Pellé, closes #9272)
文件: src/testdir/test_cd.vim
Patch 8.2.3738
问题: Screen is cleared when a FocusLost autocommand triggers.
解决方案: Do not redraw when at the hit-enter or more prompt. (closes #9274)
文件: src/misc1.c
Patch 8.2.3739
问题: In wrong directory when using win_execute() with 'acd' set.
解决方案: Restore the directory when returning to the window. (closes #9276)
文件: src/window.c, src/testdir/test_autochdir.vim
Patch 8.2.3740
问题: Memory left allocated on exit when using Tcl.
解决方案: Call Tcl_Finalize().
文件: src/if_tcl.c, src/proto/if_tcl.pro, src/alloc.c
Patch 8.2.3741
问题: Using freed memory in open command.
解决方案: Make a copy of the current line.
文件: src/ex_docmd.c, src/testdir/test_ex_mode.vim
Patch 8.2.3742
问题: Dec mouse test fails without gnome terminfo entry.
解决方案: Check if there is a gnome entry. Also fix 'acd' test on
MS-Windows. (Ozaki Kiichi, closes #9282)
文件: src/testdir/test_termcodes.vim, src/testdir/test_autochdir.vim
Patch 8.2.3743
问题: ":sign" can add a highlight group without a name.
解决方案: Give an error if the group name is missing. (closes #9280)
文件: src/sign.c, src/errors.h, src/testdir/test_signs.vim
Patch 8.2.3744
问题: E854 is not tested; some spelling suggestions are not tested.
解决方案: Add a couple of tests. (Dominique Pellé, closes #9279)
文件: src/testdir/test_options.vim, src/testdir/test_spell.vim
Patch 8.2.3745
问题: Autochdir test fails without the +channel feature.
解决方案: Remove the ch_logfile() call. (Dominique Pellé, closes #9281)
文件: src/testdir/test_autochdir.vim
Patch 8.2.3746
问题: Cannot disassemble function starting with "debug" or "profile".
解决方案: Check for white space following. (closes #9273)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.3747 (after 8.2.3743)
问题: Cannot remove highlight from an existing sign. (James McCoy)
解决方案: Only reject empty argument for a new sign.
文件: src/sign.c, src/testdir/test_signs.vim
Patch 8.2.3748 (after 8.2.3747)
问题: Giving an error for an empty sign argument breaks a plugin.
解决方案: Do not give an error.
文件: src/sign.c, src/errors.h, src/testdir/test_signs.vim
Patch 8.2.3749
问题: Error messages are everywhere.
解决方案: Move more error messages to errors.h and adjust the names.
文件: src/errors.h, src/regexp_bt.c, src/regexp.c, src/regexp_nfa.c,
src/globals.h, src/memfile.c, src/tag.c, src/getchar.c,
src/bufwrite.c, src/cmdexpand.c
Patch 8.2.3750
问题: Error messages are everywhere.
解决方案: Move more error messages to errors.h and adjust the names.
文件: src/globals.h, src/errors.h, src/blob.c, src/buffer.c,
src/channel.c, src/ex_docmd.c, src/job.c, src/list.c, src/mark.c,
src/misc1.c, src/os_unix.c, src/popupwin.c, src/register.c,
src/session.c, src/spellfile.c, src/term.c, src/userfunc.c
Patch 8.2.3751
问题: Cannot assign a lambda to an option that takes a function.
解决方案: Automatically convert the lambda to a string. (Yegappan
Lakshmanan, closes #9286)
文件: runtime/doc/options.txt, src/eval.c, src/proto/eval.pro,
src/evalvars.c, src/if_mzsch.c, src/if_ruby.c, src/if_tcl.c,
src/option.c, src/option.h, src/optiondefs.h,
src/proto/option.pro, src/spell.c, src/typval.c,
src/vim9compile.c, src/testdir/test_iminsert.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim
Patch 8.2.3752
问题: Build error when using Photon GUI.
解决方案: Adjust #ifdef. (closes #9288)
文件: src/beval.c
Patch 8.2.3753
问题: Vim9: function unreferenced while called is never deleted.
解决方案: Delete a function when no longer referenced.
文件: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro
Patch 8.2.3754 (after 8.2.3615)
问题: Undesired changing of the indent of the first formatted line.
解决方案: Do not indent the first formatted line.
文件: src/textformat.c, src/testdir/test_indent.vim
Patch 8.2.3755
问题: Coverity warns for using a buffer in another scope.
解决方案: Declare the buffer in a common scope.
文件: src/evalvars.c
Patch 8.2.3756
问题: might crash when callback is not valid.
解决方案: Check for valid callback. (Yegappan Lakshmanan, closes #9293)
文件: src/insexpand.c, src/option.c, src/tag.c, src/job.c,
src/userfunc.c, src/testdir/test_iminsert.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim
Patch 8.2.3757
问题: An overlong highlight group name is silently truncated.
解决方案: Give an error if the name is too long. (closes #9289)
文件: src/errors.h, src/highlight.c, src/testdir/test_highlight.vim
Patch 8.2.3758
问题: Options that take a function insufficiently tested.
解决方案: Add additional tests and enhance existing tests. (Yegappan
Lakshmanan, closes #9298)
文件: src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
src/testdir/test_tagfunc.vim
Patch 8.2.3759
问题: Quickfix buffer becomes hidden while still in a window.
解决方案: Check if the closed window is the last window showing the quickfix
buffer. (Yegappan Lakshmanan, closes #9303, closes #9300)
文件: src/quickfix.c, src/testdir/test_quickfix.vim, src/window.c
Patch 8.2.3760
问题: Not automatically handling gnome terminal mouse like xterm.
解决方案: Default 'ttymouse' to "xterm" and recognize Focus events.
(issue #9296)
文件: src/os_unix.c
Patch 8.2.3761
问题: Focus change is not passed on to a terminal window.
解决方案: If the current window is a terminal and focus events are enabled
send a focus event escape sequence to the terminal.
文件: src/ui.c, src/terminal.c, src/proto/terminal.pro,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_focus_1.dump,
src/testdir/dumps/Test_terminal_focus_2.dump
Patch 8.2.3762
问题: If the quickfix buffer is wiped out getqflist() still returns its
number.
解决方案: Use zero if the buffer is no longer present. (Yegappan Lakshmanan,
closes #9306)
文件: src/quickfix.c, src/testdir/test_quickfix.vim
Patch 8.2.3763
问题: When editing the command line a FocusLost callback may cause the
screen to scroll up.
解决方案: Do not redraw at the last line but at the same place where the
command line was before. (closes #9295)
文件: src/ex_getln.c, src/ui.c, src/beval.c, src/channel.c,
src/drawscreen.c, src/proto/drawscreen.pro, src/job.c,
src/popupwin.c, src/sound.c, src/terminal.c, src/time.c,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_terminal_focus_1.dump,
src/testdir/dumps/Test_terminal_focus_2.dump,
src/testdir/dumps/Test_terminal_focus_3.dump
Patch 8.2.3764
问题: Cannot see any text when window was made zero lines or zero
columns.
解决方案: Ensure there is at least one line and column. (fixes #9307)
文件: src/window.c, src/proto/window.pro, src/normal.c, src/edit.c,
src/testdir/test_window_cmd.vim
Patch 8.2.3765
问题: Vim9: cannot use a lambda for 'opfunc' and others.
解决方案: Convert the lambda to a string.
文件: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3766
问题: Converting a funcref to a string leaves out "g:", causing the
meaning of the name depending on the context.
解决方案: Prepend "g:" for a global function.
文件: src/eval.c, src/testdir/test_functions.vim
Patch 8.2.3767 (after 8.2.3766)
问题: Crash when using NULL partial.
解决方案: Check for NULL.
文件: src/eval.c
Patch 8.2.3768
问题: timer_info() has the wrong repeat value in a timer callback.
(Sergey Vlasov)
解决方案: Do not add one to the repeat value when in the callback.
(closes #9294)
文件: src/time.c, src/testdir/test_timers.vim
Patch 8.2.3769
问题: Zig files are not recognized.
解决方案: Add *.zig. (Gregory Anders, closes #9313)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3770
问题: New compiler warnings from clang-12 and clang-13.
解决方案: Adjust CI and suppress some warnings. (Ozaki Kiichi, closes #9314)
文件: .github/workflows/ci.yml, ci/config.mk.clang-12.sed,
src/os_unix.c, src/spellfile.c
Patch 8.2.3771
问题: Vim9: accessing freed memory when checking type.
解决方案: Make a copy of a function type.
文件: src/structs.h, src/evalvars.c, src/vim9script.c,
src/testdir/test_vim9_func.vim
Patch 8.2.3772
问题: Timer info test fails on slow machine.
解决方案: Use WaitForAssert().
文件: src/testdir/test_timers.vim
Patch 8.2.3773
问题: Wrong window size when a modeline changes 'columns' and there is
more than one tabpage. (Michael Soyka)
解决方案: Adjust the frames of all tabpages. (closes #9315)
文件: src/window.c
Patch 8.2.3774 (after 8.2.3773)
问题: Test for command line height fails.
解决方案: Use another way to handle window size change.
文件: src/structs.h, src/window.c
Patch 8.2.3775
问题: Vim9: lambda compiled without outer context when debugging.
解决方案: When compiling a lambda for debugging also compile it without.
(closes #9302)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.3776
问题: When a tags file line is long a tag may not be found.
解决方案: When increasing the buffer size read the same line again.
文件: src/tag.c, src/testdir/test_taglist.vim
Patch 8.2.3777
问题: Spell file write error not checked.
解决方案: Check writing the prefix conditions. (Bjorn Linse, closes #9323)
文件: src/spellfile.c
Patch 8.2.3778
问题: Lambda debug test fails in some configurations.
解决方案: Check feature in a legacy function.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.3779
问题: Using freed memory when defining a user command from a user
command.
解决方案: Do not use the command pointer after executing the command.
(closes #9318)
文件: src/usercmd.c, src/testdir/test_usercommands.vim
Patch 8.2.3780
问题: ":cd" works differently on MS-Windows.
解决方案: Add the 'cdhome' option. (closes #9324)
文件: runtime/doc/editing.txt, runtime/doc/options.txt,
runtime/doc/quickref.txt, runtime/optwin.vim, src/ex_docmd.c,
src/option.h, src/optiondefs.h, src/testdir/runtest.vim,
src/testdir/test_options.vim
Patch 8.2.3781
问题: The option window script is outdated.
解决方案: Add several changes.
文件: runtime/optwin.vim
Patch 8.2.3782
问题: Vim9: no error if a function shadows a script variable.
解决方案: Check the function doesn't shadow a variable. (closes #9310)
文件: src/userfunc.c, src/evalvars.c, src/vim.h,
src/testdir/test_vim9_script.vim
Patch 8.2.3783
问题: Confusing error for using a variable as a function.
解决方案: If a function is not found but there is a variable, give a more
useful error. (issue #9310)
文件: src/eval.c, src/userfunc.c, src/proto/userfunc.pro,
src/structs.h, src/vim9execute.c, src/testdir/test_functions.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_vim9_func.vim
Patch 8.2.3784
问题: The help for options is outdated.
解决方案: Include all the recent changes.
文件: runtime/doc/options.txt
Patch 8.2.3785
问题: Running CI on macOS with gcc is not useful.
解决方案: Only use clang. (Ozaki Kiichi, closes #9326) Also build with
normal features.
文件: .github/workflows/ci.yml
Patch 8.2.3786
问题: Test fails because of using Vim9 syntax in legacy function.
解决方案: Add "call".
文件: src/testdir/test_functions.vim
Patch 8.2.3787
问题: No proper formatting of a C line comment after a statement.
解决方案: Find the start of the line comment, insert the comment leader and
indent the comment properly.
文件: src/change.c, src/proto/change.pro, src/search.c,
src/proto/search.pro, src/cindent.c, src/edit.c, src/normal.c,
src/textformat.c, src/testdir/test_textformat.vim,
src/testdir/test_cindent.vim
Patch 8.2.3788
问题: Lambda for option that is a function may be garbage collected.
解决方案: Set a reference in the funcref. (Yegappan Lakshmanan,
closes #9330)
文件: src/eval.c, src/evalbuffer.c, src/evalvars.c, src/gui_xim.c,
src/insexpand.c, src/ops.c, src/proto/eval.pro,
src/proto/gui_xim.pro, src/proto/insexpand.pro, src/proto/ops.pro,
src/proto/tag.pro, src/quickfix.c, src/tag.c,
src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_normal.vim, src/testdir/test_quickfix.vim,
src/testdir/test_tagfunc.vim
Patch 8.2.3789
问题: Test_window_minimal_size can fail on a slow machine.
解决方案: Do not rely on timers firing at the expected time. (Ozaki Kiichi,
closes #9335)
文件: src/testdir/test_window_cmd.vim
Patch 8.2.3790
问题: Test for term_gettitle() fails in some environments.
解决方案: Make the digits after "VIM" optional. (Kenta Sato, closes #9334)
文件: src/testdir/test_terminal2.vim
Patch 8.2.3791
问题: Build error with +cindent but without +smartindent.
解决方案: Move declaration of "do_cindent". (John Marriott)
文件: src/change.c
Patch 8.2.3792
问题: Setting *func options insufficiently tested.
解决方案: Improve tests. (Yegappan Lakshmanan, closes #9337)
文件: src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_normal.vim, src/testdir/test_quickfix.vim,
src/testdir/test_tagfunc.vim
Patch 8.2.3793
问题: Using "g:Func" as a funcref does not work in script context
because "g:" is dropped.
解决方案: Keep "g:" in the name. Also add parenthesis to avoid confusing
operator precedence. (closes #9336)
文件: src/evalvars.c, src/testdir/test_vim9_func.vim
Patch 8.2.3794
问题: Vim9: cannot find script-local func using "s:". (Yegappan
Lakshmanan)
解决方案: Skip the "s:".
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3795
问题: Too many #ifdefs.
解决方案: Graduate the jumplist feature.
文件: runtime/doc/various.txt, runtime/doc/motion.txt, src/feature.h,
src/buffer.c, src/change.c, src/evalfunc.c, src/ex_docmd.c,
src/mark.c, src/normal.c, src/undo.c, src/version.c,
src/viminfo.c, src/window.c, src/structs.h,
src/testdir/test_changelist.vim, src/testdir/test_jumplist.vim,
src/testdir/test_normal.vim
Patch 8.2.3796
问题: The funcexe_T struct members are not named consistently.
解决方案: Prefix "fe_" to all the members.
文件: src/structs.h, src/eval.c, src/list.c, src/regexp.c,
src/terminal.c, src/userfunc.c, src/vim9execute.c
Patch 8.2.3797
问题: No good reason to limit the message history in the tiny version.
解决方案: Always use 200.
文件: runtime/doc/message.txt, src/feature.h
Patch 8.2.3798
问题: A :def callback function postpones an error message.
解决方案: Display the error after calling the function. (closes #9340)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim,
src/testdir/dumps/Test_opfunc_error.dump
Patch 8.2.3799 (after 8.2.3798)
问题: Edit test hangs or fails.
解决方案: Do not rethrow an exception when inside try/catch.
文件: src/userfunc.c
Patch 8.2.3800
问题: When cross compiling the output of "uname" cannot be set. (Ben
Reeves)
解决方案: Use cache variables. (closes #9338)
文件: src/configure.ac, src/auto/configure
Patch 8.2.3801
问题: If a terminal shows in two windows, only one is redrawn.
解决方案: Reset the dirty row range only after redrawing all windows.
(closes #9341)
文件: src/terminal.c, src/proto/terminal.pro, src/drawscreen.c,
src/testdir/test_terminal.vim
Patch 8.2.3802
问题: Terminal in two windows test fails on some systems.
解决方案: Wait a bit between commands.
文件: src/testdir/test_terminal.vim
Patch 8.2.3803
问题: Crash when 'writedelay' is set and using a terminal window to
execute a shell command.
解决方案: Check that "tl_vterm" isn't NULL. (closes #9346)
文件: src/terminal.c
Patch 8.2.3804
问题: Script context not set when copying 'swf' and 'ts'.
解决方案: Use COPY_OPT_SCTX with the right argument. (closes #9347)
文件: src/option.c
Patch 8.2.3805
问题: i3config files are not recognized.
解决方案: Add patterns to match i3config files. (Quentin Hibon,
closes #7969)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3806
问题: Terminal focus test fails sometimes.
解决方案: Run the test function before others.
文件: src/testdir/test_terminal.vim
Patch 8.2.3807
问题: Vim9: can call import with star directly.
解决方案: Check that the import used star.
文件: src/userfunc.c, src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.3808
问题: Vim9: obsolete TODO items
解决方案: Remove the comments.
文件: src/vim9execute.c
Patch 8.2.3809
问题: Vim9: crash when garbage collecting a nested partial. (Virginia
Senioria)
解决方案: Set references in all the funcstacks. (closes #9348)
文件: src/vim9execute.c, src/proto/vim9execute.pro, src/structs.h,
src/eval.c, src/testdir/test_vim9_func.vim
Patch 8.2.3810
问题: Vim9: expr4 test fails on MS-Windows.
解决方案: Do not give an error for a missing function name when skipping.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3811
问题: The opfunc error test fails on a slow machine.
解决方案: Use WaitForAssert().
文件: src/testdir/test_vim9_func.vim
Patch 8.2.3812
问题: Vim9: leaking memory in numbered function test.
解决方案: Skip "g:" when checking for numbered function. Clean up after
errors properly.
文件: src/userfunc.c
Patch 8.2.3813
问题: confusing error when using :cc without error list. (Gary Johnson)
解决方案: Give the "no errors" error.
文件: src/ex_docmd.c, src/testdir/test_quickfix.vim
Patch 8.2.3814
问题: .csx files and .sln files are not recognized.
解决方案: Add filetype patterns. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3815
问题: Vim9: cannot have a multi-line dict inside a block.
解决方案: Do not split the command at a line break, handle NL characters
as white space.
文件: src/ex_docmd.c, src/charset.c, src/proto/charset.pro,
src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3816
问题: Compiler warning for possible loss of data on MS-Windows.
解决方案: Add type cast. (Mike Williams, closes #9349)
文件: src/userfunc.c
Patch 8.2.3817 (after 8.2.3815)
问题: Vim9: Not using NL as command end does not work for :autocmd.
解决方案: Only ignore NL for commands with an expression argument.
文件: src/ex_cmds.h, src/ex_docmd.c, src/testdir/test_usercommands.vim
Patch 8.2.3818
问题: Cannot filter or map characters in a string.
解决方案: Make filter() and map() work on a string. (Naruhiko Nishino,
closes #9327)
文件: runtime/doc/eval.txt, src/errors.h, src/list.c,
src/testdir/test_filter_map.vim
Patch 8.2.3819 (after 8.2.3818)
问题: Test fails because error message changed.
解决方案: Update screendumps.
文件: src/testdir/dumps/Test_popupwin_three_errors_1.dump,
src/testdir/dumps/Test_popupwin_three_errors_2.dump
Patch 8.2.3820
问题: "vrc" does not replace composing characters, while "rc" does.
解决方案: Check the byte length including composing characters.
(closes #9351)
文件: src/ops.c, src/testdir/test_visual.vim
Patch 8.2.3821
问题: ASAN test run fails.
解决方案: Use asan_symbolize-13 instead of asan_symbolize-11.
文件: .github/workflows/ci.yml
Patch 8.2.3822
问题: Leaking memory in map() and filter(), cannot use a string argument
in Vim9 script.
解决方案: Fix the leak, adjust the argument check, also run the tests as
Vim9 script. (Yegappan Lakshmanan, closes #9354)
文件: src/errors.h, src/evalfunc.c, src/list.c, src/proto/typval.pro,
src/testdir/test_filter_map.vim,
src/testdir/test_vim9_builtin.vim, src/typval.c
Patch 8.2.3823
问题: Test for visual replace is in wrong function.
解决方案: Move it to another function.
文件: src/testdir/test_visual.vim
Patch 8.2.3824
问题: No ASAN support for MSVC.
解决方案: Add ASAN support and fix a couple of uncovered problems. (Yegappan
Lakshmanan, closes #9357)
文件: src/Make_mvc.mak, src/findfile.c, src/os_mswin.c,
src/testdir/test_fnamemodify.vim
Patch 8.2.3825
问题: Various comments could be improved.
解决方案: Improve the comments.
文件: src/getchar.c, src/mbyte.c, src/regexp_nfa.c,
src/testdir/test_edit.vim, src/gui_motif.c
Patch 8.2.3826
问题: Vim9: using "g:Func" as a funcref does not work in a :def
function.
解决方案: Include "g:" in the function name. (closes #9336)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3827
问题: Huntr badge does not really fit in the list.
解决方案: Move the link to Huntr to the issue template.
文件: Filelist, .github/ISSUE_TEMPLATE/bug_report.yml, README.md
Patch 8.2.3828
问题: when opening a terminal from a timer the first typed character
is lost. (Virginia Senioria)
解决方案: When opening a terminal while waiting for a character put K_IGNORE
in the input buffer.
文件: src/terminal.c, src/edit.c, src/testdir/test_terminal.vim
Patch 8.2.3829
问题: No error when setting a func option to a script-local function.
解决方案: Give an error if the name starts with "s:". (closes #9358)
文件: src/option.c, src/testdir/test_tagfunc.vim,
src/testdir/dumps/Test_set_tagfunc_on_cmdline.dump
Patch 8.2.3830
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/globals.h, src/errors.h, src/buffer.c, src/dict.c, src/diff.c,
src/digraph.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
src/misc2.c, src/quickfix.c, src/typval.c, src/ui.c,
src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
src/vim9type.c, src/window.c
Patch 8.2.3831
问题: Opfunc test fails when missing feature changes function name.
(Dominique Pellé)
解决方案: Check the relevant screen line instead of using a screendump.
(closes #9360)
文件: src/testdir/test_vim9_func.vim,
src/testdir/dumps/Test_opfunc_error.dump
Patch 8.2.3832 (after 8.2.3830)
问题: Test fails because of changed error message.
解决方案: Adjust the expected error message.
文件: src/testdir/test_vimscript.vim
Patch 8.2.3833
问题: Error from term_start() not caught by try/catch.
解决方案: save and restore did_emsg when applying autocommands. (Ozaki
Kiichi, closes #9361)
文件: src/autocmd.c, src/testdir/test_terminal3.vim
Patch 8.2.3834
问题: Test_out_cb often fails on Mac.
解决方案: Increase the timeout with every retry.
文件: src/testdir/test_channel.vim
Patch 8.2.3835
问题: The inline-function example does not work.
解决方案: Drop ":let". Add EX_EXPR_ARG to CMD_var. (issue #9352)
文件: runtime/doc/vim9.txt, src/ex_cmds.h,
src/testdir/test_vim9_expr.vim
Patch 8.2.3836
问题: Vim9: comment after expression not skipped to find NL.
解决方案: After evaluating an expression look for a newline after a #
comment.
文件: src/eval.c
Patch 8.2.3837
问题: QNX: crash when compiled with GUI but using terminal.
解决方案: Check gui.in_use is set. (Hirohito Higashi, closes #9363)
文件: src/autocmd.c
Patch 8.2.3838
问题: Cannot use script-local function for setting *func options.
解决方案: Use the script context. (Yegappan Lakshmanan, closes #9362)
文件: src/option.c, src/testdir/dumps/Test_set_tagfunc_on_cmdline.dump,
src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
src/testdir/test_quickfix.vim, src/testdir/test_tagfunc.vim
Patch 8.2.3839
问题: Using \z() with \z1 not tested for syntax highlighting.
解决方案: Add a test. (Dominique Pellé, closes #9365)
文件: src/testdir/test_syntax.vim
Patch 8.2.3840
问题: Useless test for negative index in check functions.
解决方案: Remove the test for negative index. (Naruhiko Nishino,
closes #9364)
文件: src/typval.c
Patch 8.2.3841
问题: Vim9: outdated TODO items, disabled tests that work.
解决方案: Remove TODO items, run tests that work now. Check that a dict
item isn't locked.
文件: src/vim9execute.c, src/evalvars.c, src/errors.h, src/globals.h,
src/testdir/test_listdict.vim, src/testdir/test_vim9_assign.vim
Patch 8.2.3842
问题: Vim9: can change locked list and list items.
解决方案: Check that a list and list item isn't locked.
文件: src/vim9execute.c, src/testdir/test_listdict.vim
Patch 8.2.3843
问题: Dep3patch files are not recognized.
解决方案: Recognize dep3patch files by their location and content. (James
McCoy, closes #9367)
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim
Patch 8.2.3844
问题: Vim9: no type error if assigning a value with type func(number) to
a variable of type func(string).
解决方案: Use check_type_maybe(): return MAYBE if a runtime type check is
useful. (issue #8492)
文件: src/vim9type.c, src/proto/vim9type.pro, src/vim9compile.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.3845
问题: Vim9: test fails when the channel feature is missing.
解决方案: Check for the channel feature. (Dominique Pellé, closes #9368)
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.3846
问题: No error when using control character for 'lcs' or 'fcs'.
解决方案: Use char2cells() to check the width. (closes #9369)
文件: src/screen.c, src/testdir/test_display.vim,
src/testdir/test_listchars.vim
Patch 8.2.3847
问题: Illegal memory access when using a lambda with an error.
解决方案: Avoid skipping over the NUL after a string.
文件: src/eval.c, src/testdir/test_lambda.vim
Patch 8.2.3848
问题: Cannot use reduce() for a string.
解决方案: Make reduce() work with a string. (Naruhiko Nishino, closes #9366)
文件: runtime/doc/eval.txt, src/errors.h, src/evalfunc.c, src/list.c,
src/typval.c, src/proto/typval.pro, src/testdir/test_listdict.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3849
问题: Functions implementing reduce and map are too long.
解决方案: Use a function for each type of value. Add a few more test cases
and add to the help. (Yegappan Lakshmanan, closes #9370)
文件: runtime/doc/eval.txt, src/list.c, src/testdir/test_listdict.vim
Patch 8.2.3850
问题: Illegal memory access when displaying a partial.
解决方案: Terminate the string with a NUL. (closes #9371)
文件: src/eval.c, src/testdir/test_messages.vim
Patch 8.2.3851
问题: Vim9: overhead when comparing string, dict or function.
解决方案: Call the intended compare function directly. Refactor to avoid
duplicated code.
文件: src/vim9execute.c, src/typval.c, src/proto/typval.pro
Patch 8.2.3852
问题: Vim9: not enough tests.
解决方案: Also run existing tests for Vim9 script. Make errors more
consistent.
文件: src/testdir/test_listdict.vim, src/eval.c, src/vim9compile.c,
src/errors.h
Patch 8.2.3853
问题: Vim9: not enough tests.
解决方案: Run more existing tests for Vim9 script.
文件: src/testdir/test_listdict.vim
Patch 8.2.3854
问题: Vim9: inconsistent arguments for test functions.
解决方案: When :def function and script have different arguments use a list
with two items instead of a separate function.
文件: src/testdir/vim9.vim, src/testdir/test_execute_func.vim,
src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
src/testdir/test_glob2regpat.vim, src/testdir/test_listdict.vim,
src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.3855
问题: Illegal memory access when displaying a blob.
解决方案: Append a NUL at the end. (Yegappan Lakshmanan, closes #9372)
文件: src/blob.c, src/regexp_nfa.c, src/testdir/test_blob.vim,
src/testdir/test_messages.vim
Patch 8.2.3856
问题: Vim9: not enough tests.
解决方案: Run more expression tests also with Vim9. Fix an uncovered
problem.
文件: src/vim9compile.c, src/testdir/test_expr.vim, src/testdir/vim9.vim
Patch 8.2.3857
问题: Vim9: inconsistent error for using function().
解决方案: Use a runtime type check for the result of function().
(closes #8492)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3858
问题: Vim9: not enough tests.
解决方案: Add tests for :try/:catch and :redir. Add missing type check.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_cmd.vim
Patch 8.2.3859
问题: Vim9: some code lines not tested.
解决方案: Add a few specific tests.
文件: src/vim9compile.c, src/testdir/test_vim9_cmd.vim, src/errors.h,
src/testdir/test_vim9_script.vim
Patch 8.2.3860
问题: Vim9: codecov struggles with the file size.
解决方案: Split vim9compile.c into four files.
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9instr.c,
src/proto/vim9instr.pro, src/vim9expr.c, src/proto/vim9expr.pro,
src/vim9cmds.c, src/proto/vim9cmds.pro, src/vim9.h,
src/vim9execute.c, src/vim9script.c, src/proto.h,
src/Makefile, src/Make_ami.mak, src/Make_cyg_ming.mak,
src/Make_mvc.mak, src/Make_vms.mms
Patch 8.2.3861
问题: List of distributed files is outdated.
解决方案: Add new files.
文件: Filelist
Patch 8.2.3862
问题: Crash on exit with EXITFREE and using win_execute().
解决方案: Also save and restore tp_topframe. (issue #9374)
文件: src/evalwindow.c, src/testdir/test_execute_func.vim
Patch 8.2.3863 (after 8.2.3860)
问题: Various build flags accidentally enabled.
解决方案: Revert several lines in Makefile.
文件: src/Makefile
Patch 8.2.3864
问题: Cannot disable requesting key codes from xterm.
解决方案: Add the 'xtermcodes' option, default on.
文件: runtime/doc/options.txt, runtime/doc/term.txt, src/option.h,
src/optiondefs.h, src/term.c, runtime/optwin.vim
Patch 8.2.3865
问题: Vim9: compiler complains about using "try" as a struct member.
解决方案: Rename "try" to "tryref".
文件: src/vim9.h, src/vim9cmds.c, src/vim9execute.c, src/vim9instr.c
Patch 8.2.3866
问题: Vim9: type checking global variables is inconsistent.
解决方案: Use the "unknown" type in more places.
文件: src/globals.h, src/vim9expr.c, src/vim9instr.c, src/vim9cmds.c,
src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3867
问题: Implementation of some list functions too complicated.
解决方案: Refactor do_sort_uniq(), f_count() and extend() (Yegappan
Lakshmanan, closes #9378)
文件: src/list.c
Patch 8.2.3868 (after 8.2.3866)
问题: Vim9: function test fails.
解决方案: Add missing changes. Add test for earlier patch.
文件: src/vim9type.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.3869
问题: Vim9: type checking for "any" is inconsistent.
解决方案: Always use a runtime type check for using "any" for a more
specific type.
文件: src/vim9type.c, src/vim9compile.c, src/vim9expr.c,
src/testdir/test_vim9_func.vim
Patch 8.2.3870
问题: MS-Windows: wrong working directory when opening two files with
right-click context menu. (Gabriel Dupras)
解决方案: Use the working directory and pass it on to the process creation.
(Nir Lichtman, closes #9382, closes #8874)
文件: src/GvimExt/gvimext.cpp, src/GvimExt/gvimext.h
Patch 8.2.3871
问题: List.c contains code for dict and blob.
解决方案: Refactor to put code where it belongs. (Yegappan Lakshmanan,
closes #9386)
文件: src/blob.c, src/dict.c, src/list.c, src/proto/blob.pro,
src/proto/dict.pro, src/proto/list.pro, src/proto/strings.pro,
src/strings.c, src/structs.h, src/testdir/test_filter_map.vim,
src/testdir/test_listdict.vim, src/testdir/test_sort.vim
Patch 8.2.3872
问题: Vim9: finddir() and uniq() return types can be more specific.
解决方案: Adjust the return type.
文件: src/evalfunc.c, src/testdir/vim9.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3873
问题: go.mod files are not recognized.
解决方案: Check for the file name. (closes #9380)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3874
问题: Cannot highlight the number column for a sign.
解决方案: Add the "numhl" argument. (James McCoy, closes #9381)
文件: runtime/doc/options.txt, runtime/doc/sign.txt, src/drawline.c,
src/popupwin.c, src/proto/sign.pro, src/sign.c, src/structs.h,
src/testdir/test_signs.vim
Patch 8.2.3875
问题: gcc complains about buffer overrun.
解决方案: Use mch_memmove() instead of STRCPY(). (John Marriott)
文件: src/dict.c
Patch 8.2.3876
问题: 'cindent' does not recognize inline namespace.
解决方案: Skip over "inline" to find "namespace". (closes #9383)
文件: src/cindent.c, src/testdir/test_cindent.vim
Patch 8.2.3877
问题: Function does not abort after a type error in compare
解决方案: Check getting number fails. (closes #9384)
文件: src/typval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.3878
问题: Vim9: debugger tries to read more lines than there are.
解决方案: Check the number of lines. (closes #9394)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.3879
问题: getreg() and getregtype() contain dead code.
解决方案: Remove the needless check. (closes #9392) Also refactor to put
common code in a shared function.
文件: src/evalfunc.c
Patch 8.2.3880
问题: Solution filter files are not recognized.
解决方案: Add pattern *.slnf and use json. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3881
问题: QNX: crash when compiled with GUI but using terminal.
解决方案: Check the gui.in_use flag. (Hirohito Higashi, closes #9391)
文件: src/main.c
Patch 8.2.3882 (after 8.2.3879)
问题: More duplicated code in f_getreginfo().
解决方案: Also use getreg_get_regname(). (closes #9398)
文件: src/evalfunc.c
Patch 8.2.3883
问题: Crash when switching to other regexp engine fails.
解决方案: Check for regprog being NULL.
文件: src/ex_cmds.c
Patch 8.2.3884
问题: Crash when clearing the argument list while using it.
解决方案: Lock the argument list for ":all".
文件: src/arglist.c, src/testdir/test_arglist.vim
Patch 8.2.3885
问题: Arglist test fails.
解决方案: Adjust for locking the arglist for ":all".
文件: src/testdir/test_arglist.vim
Patch 8.2.3886
问题: Can define autocmd for every event by using "au!".
解决方案: Check if a command is present also for "au!".
文件: src/autocmd.c, src/testdir/test_autocmd.vim,
src/testdir/test_arglist.vim
Patch 8.2.3887
问题: E1135 is used for two different errors.
解决方案: Renumber one error.
文件: src/errors.h, src/testdir/test_mapping.vim
Patch 8.2.3888
问题: The argument list may contain duplicates.
解决方案: Add the :argdedeupe command. (Nir Lichtman, closes #6235)
文件: runtime/doc/editing.txt, runtime/doc/index.txt, src/arglist.c,
src/ex_cmdidxs.h, src/ex_cmds.h, src/proto/arglist.pro,
src/testdir/test_arglist.vim
Patch 8.2.3889
问题: Duplicate code for translating script-local function name.
解决方案: Move the code to get_scriptlocal_funcname(). (Yegappan Lakshmanan,
closes #9393)
文件: src/evalfunc.c, src/evalvars.c, src/option.c, src/userfunc.c,
src/proto/userfunc.pro, src/testdir/test_expr.vim,
src/testdir/test_normal.vim
Patch 8.2.3890
问题: Vim9: type check for using v: variables is basic.
解决方案: Specify a more precise type.
文件: src/evalvars.c, src/proto/evalvars.pro, src/vim9instr.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.3891
问题: Github CI: workflows may overlap.
解决方案: Cancel previous workflows when starting a new one. (Yegappan
Lakshmanan, closes #9400)
文件: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml
Patch 8.2.3892
问题: When modifyOtherKeys is used CTRL-C is not recognized.
解决方案: Check for uppercase C as well, fix minimum length.
文件: src/ui.c
Patch 8.2.3893
问题: Vim9: many local variables are initialized with an instruction.
解决方案: Initialize local variables to zero to avoid the instructions.
文件: src/vim9execute.c, src/vim9compile.c, src/vim9instr.c,
src/proto/vim9instr.pro, src/vim9cmds.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3894
问题: Vim9: no proper type check for first argument of call().
解决方案: Add specific type check.
文件: src/evalfunc.c, src/typval.c, src/proto/typval.pro,
src/errors.h, src/testdir/test_vim9_builtin.vim
Patch 8.2.3895
问题: Vim9: confusing error when using function() with a number.
解决方案: Check for a function or string argument.
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3896
问题: Vim9: no test for nested function not available later.
解决方案: Add a test.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.3897
问题: Vim9: the second argument of map() and filter() is not checked at
compile time.
解决方案: Add more specific type check for the second argument.
文件: src/evalfunc.c, src/globals.h, src/list.c,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.3898
问题: Vim9: not sufficient testing for variable initialization.
解决方案: Add another test case.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.3899 (after 8.2.3897)
问题: Vim9: test for map() on string fails.
解决方案: Expect string return type.
文件: src/evalfunc.c
Patch 8.2.3900
问题: It is not easy to use a script-local function for an option.
解决方案: recognize s: and <SID> at the start of the expression. (Yegappan
Lakshmanan, closes #9401)
文件: runtime/doc/diff.txt, runtime/doc/fold.txt,
runtime/doc/options.txt, runtime/doc/print.txt, src/optionstr.c,
src/testdir/test_diffmode.vim, src/testdir/test_edit.vim,
src/testdir/test_fold.vim, src/testdir/test_gf.vim,
src/testdir/test_gui.vim, src/testdir/test_hardcopy.vim,
src/testdir/test_normal.vim
Patch 8.2.3901
问题: Vim9: Cannot set 'cpo' in main .vimrc if using Vim9 script.
解决方案: Do not restore 'cpo' at the end of the main .vimrc.
文件: runtime/doc/vim9.txt, runtime/doc/options.txt, src/scriptfile.c,
src/structs.h, src/testdir/test_vim9_script.vim
Patch 8.2.3902
问题: Vim9: double free with nested :def function.
解决方案: Pass "line_to_free" from compile_def_function() and make sure
cmdlinep is valid.
文件: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.3903
问题: "gM" does not count tabs as expected.
解决方案: Use linetabsize() instead of mb_string2cells(). (closes #9409)
文件: src/normal.c, src/testdir/test_normal.vim
Patch 8.2.3904
问题: Vim9: skip expression type is not checked at compile time.
解决方案: Add argument type checks.
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3905
问题: Dockerfile using prefix name not recognized.
解决方案: Recognize Dockerfile.*. (closes #9410)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3906
问题: Vim9 help still contains "under development" warnings.
解决方案: Remove the explicit warning.
文件: runtime/doc/vim9.txt
Patch 8.2.3907
问题: Error messages are spread out.
解决方案: Move error messages to errors.h. Avoid duplicates.
文件: src/userfunc.c, src/ex_cmds.c, src/viminfo.c, src/errors.h,
src/testdir/test_user_func.vim
Patch 8.2.3908
问题: Cannot use a script-local function for 'foldtext'.
解决方案: Expand "s:" and "<SID>". (Yegappan Lakshmanan, closes #9411)
文件: runtime/doc/fold.txt, src/optionstr.c, src/strings.c,
src/testdir/test_blob.vim, src/testdir/test_expr.vim,
src/testdir/test_filter_map.vim, src/testdir/test_fold.vim,
src/testdir/test_listdict.vim
Patch 8.2.3909
问题: Containerfile using prefix name not recognized.
解决方案: Recognize Containerfile.*.
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3910
问题: When the compare function of sort() produces and error then sort()
does not abort.
解决方案: Check if did_emsg was incremented.
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3911
问题: Vim9: type check for filter() does not accept unknown.
解决方案: Also accept unknown for the return type. (closes #9413)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3912
问题: The ins_complete() function is much too long.
解决方案: Split it up into multiple functions. (Yegappan Lakshmanan,
closes #9414)
文件: src/insexpand.c
Patch 8.2.3913
问题: Help for expressions does not mention Vim9 syntax.
解决方案: Add the rules for Vim9 to the expression help. Rename functions
to match the help.
文件: runtime/doc/vim9.txt, runtime/doc/eval.txt, src/vim9expr.c
Patch 8.2.3914
问题: Various spelling mistakes in comments.
解决方案: Fix the mistakes. (Dominique Pellé, closes #9416)
文件: src/alloc.c, src/blowfish.c, src/buffer.c, src/cindent.c,
src/clipboard.c, src/diff.c, src/drawline.c, src/edit.c,
src/ex_cmds.c, src/ex_docmd.c, src/findfile.c, src/fold.c,
src/getchar.c, src/gui.c, src/gui_athena.c, src/gui_gtk.c,
src/gui_motif.c, src/gui_photon.c, src/gui_w32.c, src/gui_xmebw.c,
src/if_python.c, src/if_python3.c, src/if_xcmdsrv.c, src/main.c,
src/memline.c, src/menu.c, src/message.c, src/misc1.c, src/move.c,
src/option.c, src/os_amiga.c, src/os_mac.h, src/os_mac_conv.c,
src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/os_win32.h,
src/quickfix.c, src/regexp_nfa.c, src/screen.c, src/scriptfile.c,
src/spell.c, src/spellfile.c, src/spellsuggest.c, src/strings.c,
src/term.c, src/terminal.c, src/testdir/test_debugger.vim,
src/testdir/test_source.vim, src/textformat.c, src/userfunc.c,
src/vim.h, src/vim9.h, src/vim9cmds.c, src/vim9execute.c,
src/winclip.c, src/window.c
Patch 8.2.3915
问题: illegal memory access when completing with invalid bytes.
解决方案: Avoid going over the end of the completion text.
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.3916
问题: No error for passing an invalid line number to append().
解决方案: In Vim9 script check for a non-negative number. (closes #9417)
文件: src/evalbuffer.c, src/textprop.c, src/errors.h, src/indent.c,
src/eval.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3917
问题: The eval.txt help file is way too big.
解决方案: Move the builtin function details to a separate file.
文件: runtime/doc/eval.txt, runtime/doc/builtin.txt,
runtime/doc/Makefile, runtime/doc/help.txt, runtime/doc/remote.txt
Patch 8.2.3918 (after 8.2.3916)
问题: Function list test fails.
解决方案: Adjust the test for the new location of the function list.
文件: src/testdir/test_function_lists.vim
Patch 8.2.3919
问题: Vim9: wrong argument for append() results in two errors.
解决方案: Check did_emsg. Also for setline(). Adjust the help for
appendbufline().
文件: runtime/doc/builtin.txt, src/evalbuffer.c, src/typval.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3920
问题: Restoring directory after using another window is inefficient.
解决方案: Only restore the directory for win_execute(). Apply 'autochdir'
only when needed.
文件: src/evalwindow.c, src/testdir/test_autochdir.vim
Patch 8.2.3921
问题: The way xdiff is used is inefficient.
解决方案: Use hunk_func instead of the out_line callback. (Lewis Russell,
closes #9344)
文件: src/diff.c
Patch 8.2.3922
问题: Cannot build with dynamic Ruby 3.1.
解决方案: Add "_EXTRA" variables for CI. Add missing functions. (Ozaki
Kiichi, closes #9420)
文件: ci/config.mk.clang-12.sed, ci/config.mk.clang.sed,
ci/config.mk.sed, src/Makefile, src/auto/configure,
src/config.mk.in, src/configure.ac, src/if_ruby.c, src/vim.h
Patch 8.2.3923
问题: Vim9: double free if a nested function has a line break in the
argument list.
解决方案: Set cmdlinep when freeing the previous line.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.3924
问题: Vim9: no error if something follows :enddef in a nested function.
解决方案: Give an error. Move common code to a function.
文件: src/userfunc.c, src/vim9compile.c, src/errors.h,
src/testdir/test_vim9_func.vim
Patch 8.2.3925
问题: Diff mode confused by NUL bytes.
解决方案: Handle NUL bytes differently. (Christian Brabandt, closes #9421,
closes #9418)
文件: src/diff.c, src/testdir/test_diffmode.vim,
src/testdir/dumps/Test_diff_bin_01.dump,
src/testdir/dumps/Test_diff_bin_02.dump,
src/testdir/dumps/Test_diff_bin_03.dump,
src/testdir/dumps/Test_diff_bin_04.dump
Patch 8.2.3926 (after 8.2.3920)
问题: Build failure without the 'autochdir' option. (John Marriott)
解决方案: Add #ifdefs.
文件: src/evalwindow.c
Patch 8.2.3927
问题: Vim9: double free when using lambda.
解决方案: Don't free both cmdline and line_to_free.
文件: src/userfunc.c
Patch 8.2.3928
问题: Heredoc test fails.
解决方案: Correct order of function arguments.
文件: src/userfunc.c
Patch 8.2.3929
问题: Using uninitialized variable.
解决方案: Set the option flags to zero for a terminal option.
文件: src/option.c
Patch 8.2.3930
问题: getcmdline() argument has a misleading type.
解决方案: Use the correct type, even though the value is not used.
文件: src/ex_getln.c, src/proto/ex_getln.pro, src/ex_docmd.c,
src/normal.c, src/register.c, src/userfunc.c
Patch 8.2.3931
问题: Coverity reports a memory leak.
解决方案: Free memory in case of failure.
文件: src/diff.c
Patch 8.2.3932
问题: C line comment not formatted properly.
解决方案: If a line comment follows after "#if" the next line is not the end
of a paragraph.
文件: src/textformat.c, src/testdir/test_textformat.vim
Patch 8.2.3933
问题: After ":cd" fails ":cd -" is incorrect.
解决方案: Set the previous directory only after successfully changing
directory. (Richard Doty, closes #9419, closes #8983)
文件: src/ex_docmd.c, src/testdir/test_cd.vim
Patch 8.2.3934
问题: Repeating line comment is undesired for "O" command.
解决方案: Do not copy line comment leader for "O". (closes #9426)
文件: src/change.c, src/testdir/test_textformat.vim
Patch 8.2.3935
问题: CTRL-U in Insert mode does not fix the indent.
解决方案: Fix the indent when 'cindent' is set.
文件: src/edit.c, src/testdir/test_textformat.vim
Patch 8.2.3936
问题: No proper test for maintaining change mark in diff mode.
解决方案: Run the test with internal and external diff. (Sean Dewar,
closes #9424)
文件: src/testdir/test_diffmode.vim
Patch 8.2.3937
问题: Insert mode completion function is too long.
解决方案: Refactor into multiple functions. (Yegappan Lakshmanan,
closes #9423)
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.3938
问题: Line comment start is also found in a string.
解决方案: Skip line comments in a string.
文件: src/cindent.c, src/proto/cindent.pro, src/search.c,
src/testdir/test_textformat.vim
Patch 8.2.3939
问题: MS-Windows: fnamemodify('', ':p') does not work.
解决方案: Do not consider an empty string a full path. (Yegappan Lakshmanan,
closes #9428, closes #9427)
文件: src/os_mswin.c, src/testdir/test_fnamemodify.vim
Patch 8.2.3940
问题: Match highlight disappears when doing incsearch for ":s/pat".
解决方案: Only use line limit for incsearch highlighting. (closes #9425)
文件: src/match.c, src/testdir/test_match.vim,
src/testdir/dumps/Test_match_with_incsearch_1.dump,
src/testdir/dumps/Test_match_with_incsearch_2.dump
Patch 8.2.3941
问题: SIGTSTP is not handled.
解决方案: Handle SIGTSTP like pressing CTRL-Z. (closes #9422)
文件: runtime/doc/autocmd.txt, src/ex_docmd.c, src/os_unix.c,
src/proto/ex_docmd.pro, src/testdir/test_signals.vim
Patch 8.2.3942
问题: Coverity reports a possible memory leak.
解决方案: Free the array if allocation fails.
文件: src/insexpand.c
Patch 8.2.3943
问题: Compiler warning from gcc for uninitialized variable.
解决方案: Initialize variable. (closes #9429)
文件: src/diff.c
Patch 8.2.3944
问题: Insert mode completion functions are too long.
解决方案: Split up into multiple functions. (Yegappan Lakshmanan,
closes #9431)
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.3945
问题: Vim9: partial variable argument types are wrong, leading to a
crash.
解决方案: When adjusting the argument count also adjust the argument types.
(closes #9433)
文件: src/vim9type.c, src/userfunc.c, src/testdir/test_vim9_assign.vim
Patch 8.2.3946
问题: When an internal error makes Vim exit the error is not seen.
解决方案: Add the error to the test output.
文件: src/message.c, src/testdir/runtest.vim
Patch 8.2.3947
问题: Unnecessary check for NULL pointer.
解决方案: Remove the check. (closes #9434)
文件: src/ex_docmd.c
Patch 8.2.3948
问题: Vim9: failure with partial with unknown argument count.
解决方案: Do not copy argument types if there aren't any.
文件: src/vim9type.c
Patch 8.2.3949
问题: Using freed memory with /\%V.
解决方案: Get the line again after getvvcol().
文件: src/regexp.c, src/testdir/test_regexp_latin.vim
Patch 8.2.3950
问题: Going beyond the end of the line with /\%V.
解决方案: Check for valid column in getvcol().
文件: src/charset.c, src/testdir/test_regexp_latin.vim
Patch 8.2.3951
问题: Vim9: memory leak when text after a nested function.
解决方案: Free the function if text is found after "enddef".
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.3952
问题: First line not redrawn when adding lines to an empty buffer.
解决方案: Adjust the argument to appended_lines(). (closes #9439,
closes #9438)
文件: src/ex_cmds.c, src/testdir/test_excmd.vim
Patch 8.2.3953
问题: Insert completion code is too complicated.
解决方案: More refactoring. Move function arguments into a struct.
(Yegappan Lakshmanan, closes #9437)
文件: src/insexpand.c
Patch 8.2.3954
问题: Vim9: no error for shadowing if script var is declared later.
解决方案: Check argument names when compiling a function.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_assign.vim
Patch 8.2.3955
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/globals.h, src/debugger.c, src/ex_cmds.c,
src/help.c, src/sign.c, src/spellfile.c
Patch 8.2.3956
问题: Duplicate assignment.
解决方案: Remove the second assignment. (closes #9442)
文件: src/evalfunc.c
Patch 8.2.3957
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/globals.h, src/arglist.c, src/bufwrite.c,
src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
src/help.c, src/scriptfile.c, src/usercmd.c, src/userfunc.c,
src/vim9cmds.c, src/vim9compile.c
Patch 8.2.3958
问题: Build failure compiling xxd with "-std=c2x".
解决方案: define _XOPEN_SOURCE. (Yegappan Lakshmanan, closes #9444)
文件: src/xxd/xxd.c
Patch 8.2.3959
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/autocmd.c, src/bufwrite.c, src/evalvars.c,
src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/fileio.c,
src/getchar.c, src/gui.c, src/locale.c, src/map.c
Patch 8.2.3960
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/alloc.c, src/arglist.c, src/autocmd.c,
src/blob.c, src/blowfish.c, src/buffer.c, src/bufwrite.c
Patch 8.2.3961
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/globals.h, src/arglist.c, src/autocmd.c,
src/blob.c, src/bufwrite.c, src/channel.c, src/clipboard.c,
src/cmdexpand.c, src/debugger.c, src/dict.c, src/eval.c,
src/evalfunc.c, src/evalvars.c, src/evalwindow.c, src/ex_cmds.c,
src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/fileio.c,
src/filepath.c, src/gui_gtk_x11.c, src/gui_haiku.cc,
src/gui_photon.c, src/gui_w32.c, src/gui_x11.c, src/highlight.c,
src/indent.c, src/insexpand.c, src/job.c, src/json.c, src/list.c,
src/map.c, src/mark.c, src/match.c, src/mbyte.c, src/menu.c,
src/message.c, src/misc2.c, src/ops.c, src/option.c,
src/optionstr.c, src/popupwin.c, src/quickfix.c, src/screen.c,
src/scriptfile.c, src/search.c, src/sign.c, src/spell.c,
src/spellfile.c, src/strings.c, src/syntax.c, src/terminal.c,
src/testing.c, src/textprop.c, src/time.c, src/userfunc.c,
src/vim9cmds.c, src/vim9execute.c, src/vim9script.c, src/window.c
Patch 8.2.3962 (after 8.2.3961)
问题: Build fails for missing error message.
解决方案: Add changes in missed file.
文件: src/regexp_bt.c
Patch 8.2.3963
问题: Build failure with tiny and small features. (Tony Mechelynck)
解决方案: Adjust #ifdefs.
文件: src/errors.h, src/message.c
Patch 8.2.3964
问题: Some common lisp and scheme files not recognized.
解决方案: Recognize *.asd as lisp and *.sld as scheme. (Alex Vear,
closes #9447)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3965
问题: Vim9: no easy way to check if Vim9 script is supported.
解决方案: Add has('vim9script').
文件: runtime/doc/vim9.txt, src/evalfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.3966
问题: When using feedkeys() abbreviations may be blocked.
解决方案: Reset tb_no_abbr_cnt when running out of characters.
(closes #9448)
文件: src/getchar.c, src/testdir/test_feedkeys.vim
Patch 8.2.3967
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/globals.h, src/feature.h, src/arglist.c,
src/autocmd.c, src/blob.c, src/bufwrite.c, src/channel.c,
src/cmdexpand.c, src/dict.c, src/diff.c, src/eval.c,
src/evalfunc.c, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c,
src/fileio.c, src/filepath.c, src/getchar.c, src/gui_gtk_x11.c,
src/gui_x11.c, src/hardcopy.c, src/help.c, src/highlight.c,
src/if_cscope.c, src/if_lua.c, src/if_mzsch.c, src/if_perl.xs,
src/if_python.c, src/if_python3.c, src/if_ruby.c, src/if_tcl.c,
src/if_xcmdsrv.c, src/indent.c, src/insexpand.c, src/job.c,
src/list.c, src/main.c, src/map.c, src/match.c, src/mbyte.c,
src/message.c, src/misc1.c, src/option.c, src/optionstr.c,
src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/popupwin.c,
src/profiler.c, src/quickfix.c, src/scriptfile.c, src/search.c,
src/session.c, src/sign.c, src/spell.c, src/spellfile.c,
src/spellsuggest.c, src/syntax.c, src/tag.c, src/terminal.c,
src/testing.c, src/textprop.c, src/typval.c, src/userfunc.c,
src/vim9execute.c, src/vim9expr.c, src/vim9instr.c,
src/vim9script.c
Patch 8.2.3968
问题: Build failure.
解决方案: Add missing changes.
文件: src/strings.c, src/vim9compile.c
Patch 8.2.3969
问题: Value of MAXCOL not available in Vim script.
解决方案: Add v:maxcol. (Naohiro Ono, closes #9451)
文件: runtime/doc/builtin.txt, runtime/doc/eval.txt, src/evalvars.c,
src/testdir/test_cursor_func.vim, src/testdir/test_normal.vim,
src/testdir/test_put.vim, src/vim.h
Patch 8.2.3970
问题: Error messages are spread out.
解决方案: Move more errors to errors.h.
文件: src/errors.h, src/globals.h, src/buffer.c, src/bufwrite.c,
src/clientserver.c, src/cmdhist.c, src/dict.c, src/edit.c,
src/eval.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds.c,
src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/gui_w32.c,
src/gui_x11.c, src/if_xcmdsrv.c, src/insexpand.c, src/json.c,
src/match.c, src/menu.c, src/option.c, src/optionstr.c,
src/os_mswin.c, src/quickfix.c, src/regexp_bt.c, src/regexp_nfa.c,
src/scriptfile.c, src/sign.c, src/spellfile.c, src/undo.c,
src/userfunc.c, src/vim9cmds.c, src/vim9compile.c,
src/vim9execute.c, src/vim9expr.c, src/window.c
Patch 8.2.3971
问题: Build fails.
解决方案: Use the right error message name.
文件: src/typval.c
Patch 8.2.3972
问题: Error messages are spread out.
解决方案: Move the last errors from globals.h to errors.h.
文件: src/errors.h, src/globals.h, src/eval.c, src/evalfunc.c,
src/evalvars.c, src/evalwindow.c, src/ex_eval.c, src/list.c,
src/match.c, src/menu.c, src/popupmenu.c, src/search.c,
src/vim9cmds.c, src/vim9expr.c
Patch 8.2.3973
问题: Tiny build fails.
解决方案: Adjust #ifdefs
文件: src/errors.h
Patch 8.2.3974
问题: Vim9: LISTAPPEND instruction does not check for a locked list.
解决方案: Check whether the list is locked. (closes #9452)
文件: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3975
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/clientserver.c, src/fileio.c, src/gui.c,
src/gui_beval.c, src/gui_w32.c, src/gui_x11.c, src/if_cscope.c,
src/if_xcmdsrv.c, src/os_mswin.c, src/sign.c, src/viminfo.c,
src/window.c
Patch 8.2.3976
问题: FEARG_LAST is never used. (Dominique Pellé)
解决方案: Remove FEARG_LAST and the related code.
文件: src/evalfunc.c
Patch 8.2.3977
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/change.c, src/clientserver.c, src/eval.c,
src/gui_xim.c, src/if_cscope.c, src/if_py_both.h, src/if_python.c,
src/if_python3.c, src/if_ruby.c, src/if_tcl.c, src/main.c,
src/mark.c, src/match.c, src/memfile.c, src/memline.c,
src/terminal.c, src/textprop.c, src/userfunc.c
Patch 8.2.3978
问题: Build error when using dynamically loaded Python 3.
解决方案: Adjust #ifdef.
文件: src/errors.h
Patch 8.2.3979
问题: Vim9: the feature is not mentioned in the right places.
解决方案: Add +vim9script to the help and :version output.
文件: runtime/doc/builtin.txt, runtime/doc/various.txt, src/version.c
Patch 8.2.3980
问题: If 'operatorfunc' invokes an operator the remembered Visual mode
may be changed. (Naohiro Ono)
解决方案: Save and restore the information for redoing the Visual area.
(closes #9455)
文件: src/ops.c, src/testdir/test_normal.vim
Patch 8.2.3981
问题: Vim9: debugging a for loop doesn't stop before it starts.
解决方案: Keep the DEBUG instruction before the expression is evaluated.
(closes #9456)
文件: src/vim9cmds.c, src/testdir/test_vim9_disassemble.vim
Patch 8.2.3982
问题: Some lines of code not covered by tests.
解决方案: Add a few more test cases. (Dominique Pellé, closes #9453)
文件: src/testdir/test_filter_map.vim, src/testdir/test_highlight.vim,
src/testdir/test_regexp_latin.vim, src/testdir/test_search.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3983
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/ex_docmd.c, src/fileio.c, src/filepath.c,
src/findfile.c, src/hardcopy.c, src/memfile.c, src/memline.c,
src/menu.c, src/normal.c, src/regexp_bt.c
Patch 8.2.3984 (after 8.2.3981)
问题: Debugger test fails.
解决方案: Adjust the test for modified debugging of a for loop.
文件: src/testdir/test_debugger.vim
Patch 8.2.3985
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/findfile.c, src/fold.c, src/hardcopy.c,
src/highlight.c, src/map.c, src/message.c, src/normal.c,
src/option.c, src/os_amiga.c, src/os_unix.c, src/os_win32.c,
src/quickfix.c, src/regexp.c, src/register.c, src/search.c,
src/syntax.c, src/tag.c, src/term.c, src/typval.c, src/undo.c,
src/window.c
Patch 8.2.3986
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c,
src/fileio.c, src/fold.c, src/gui_x11.c, src/hardcopy.c,
src/help.c, src/highlight.c, src/if_cscope.c, src/json.c,
src/map.c, src/netbeans.c, src/popupwin.c, src/usercmd.c,
src/userfunc.c
Patch 8.2.3987
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/digraph.c, src/ex_eval.c, src/gui.c,
src/hardcopy.c, src/if_cscope.c, src/if_tcl.c, src/if_xcmdsrv.c,
src/mbyte.c, src/misc2.c, src/netbeans.c, src/option.c,
src/optionstr.c, src/quickfix.c, src/regexp.c, src/tag.c,
src/term.c, src/viminfo.c
Patch 8.2.3988 (after 8.2.3987)
问题: Tiny build fails.
解决方案: Fix misplaced #ifdef.
文件: src/errors.h
Patch 8.2.3989
问题: Some insert completion code is not tested.
解决方案: Add a few tests. Refactor thesaurus completion. (Yegappan
Lakshmanan, closes #9460)
文件: src/insexpand.c, src/testdir/test_edit.vim,
src/testdir/test_ins_complete.vim
Patch 8.2.3990
问题: Testing wrong operator.
解决方案: Test "g@" instead of "r_". (Naohiro Ono, closes #9463)
文件: src/testdir/test_normal.vim
Patch 8.2.3991
问题: Vim9: error when extending dict<any> with another type that it was
initialized with.
解决方案: Also set the type for dict<any> if the initializer has a more
specific type. (closes #9461)
文件: src/vim9compile.c, src/vim9type.c, src/vim9.h, src/eval.c,
src/list.c, src/vim9script.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_func.vim
Patch 8.2.3992
问题: Wrong local-additions in the help with language mix.
解决方案: Adjust how the local additions list is generated. (Hirohito
Higashi, closes #9464)
文件: src/help.c, src/testdir/test_help.vim
Patch 8.2.3993
问题: When recording a change in Select mode the first typed character
appears twice.
解决方案: When putting the character back into typeahead remove it from
recorded characters. (closes #9462)
文件: src/getchar.c, src/proto/getchar.pro, src/normal.c,
src/testdir/test_registers.vim
Patch 8.2.3994
问题: Vim9: extend() complains about the type even when it was not
declared.
解决方案: Only check the list or dict type when it was declared.
文件: src/list.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.3995
问题: Not all sshconfig files are detected as such.
解决方案: Adjust the patterns used for sshconfig detection. (David Auer,
closes #9322)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.3996
问题: Vim9: type checking for list and dict lacks information about
declared type.
解决方案: Add dv_decl_type and lv_decl_type. Refactor the type stack to
store two types in each entry.
文件: src/structs.h, src/dict.c, src/list.c, src/vim9type.c,
src/proto/vim9type.pro, src/vim9instr.c, src/proto/vim9instr.pro,
src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
src/evalbuffer.c, src/proto/evalbuffer.pro, src/vim9expr.c,
src/vim9cmds.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.3997
问题: Vim9: not enough testing for extend() and map().
解决方案: Add more test cases. Fix uncovered problems. Remove unused type
fields.
文件: src/structs.h, src/dict.c, src/list.c, src/vim9compile.c,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.3998
问题: Asan error for adding zero to NULL.
解决方案: Do not compute pointer if there are no entries.
文件: src/vim9type.c
Patch 8.2.3999
问题: Redundant check for NUL byte.
解决方案: Remove the check for a NUL byte. (closes #9471)
文件: src/ex_docmd.c
Patch 8.2.4000
问题: Coverity warns for checking for NULL pointer after using it.
解决方案: Remove check for NULL.
文件: src/help.c
Patch 8.2.4001
问题: Insert complete code uses global variables.
解决方案: Make variables local to the file and use accessor functions.
(Yegappan Lakshmanan, closes #9470)
文件: src/edit.c, src/getchar.c, src/globals.h, src/insexpand.c,
src/proto/insexpand.pro, src/search.c
Patch 8.2.4002
问题: First char typed in Select mode can be wrong.
解决方案: Escape special bytes in the input buffer. (closes #9469)
文件: src/getchar.c, src/testdir/test_utf8.vim
Patch 8.2.4003
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/channel.c, src/ex_docmd.c, src/ex_eval.c,
src/gui_at_fs.c, src/hardcopy.c, src/if_cscope.c, src/menu.c,
src/netbeans.c, src/optionstr.c, src/os_mswin.c, src/sign.c,
src/typval.c
Patch 8.2.4004
问题: Old compiler complains about struct init with variable.
解决方案: Set the struct member later. (John Marriott)
文件: src/evalfunc.c
Patch 8.2.4005
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/dict.c, src/eval.c, src/evalfunc.c,
src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
src/filepath.c, src/gui.c, src/gui_w32.c, src/hardcopy.c,
src/help.c, src/highlight.c, src/if_python.c, src/list.c,
src/misc1.c, src/normal.c, src/quickfix.c, src/regexp.c,
src/regexp_bt.c, src/regexp_nfa.c, src/typval.c, src/userfunc.c
Patch 8.2.4006
问题: Vim9: crash when declaring variable on the command line.
解决方案: Use a temporary type list. (closes #9474)
文件: src/eval.c, src/testdir/test_vim9_assign.vim
Patch 8.2.4007
问题: Session does not restore help buffer properly when "options' is
missing from 'sessionoptions'.
解决方案: Use a ":help" command to create the help window. (closes #9475,
closes #9458, closes #9472)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.4008
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/diff.c, src/digraph.c, src/evalfunc.c,
src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
src/insexpand.c, src/match.c, src/memline.c, src/menu.c,
src/ops.c, src/profiler.c, src/quickfix.c, src/regexp.c,
src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/spell.c,
src/spell.h, src/spellfile.c, src/strings.c, src/syntax.c,
src/typval.c, src/undo.c, src/userfunc.c
Patch 8.2.4009
问题: Reading one byte beyond the end of the line.
解决方案: Check for NUL byte first.
文件: src/vim9compile.c, src/ex_docmd.c, src/testdir/test_vim9_func.vim
Patch 8.2.4010
问题: Error messages are spread out.
解决方案: Move more error messages to errors.h.
文件: src/errors.h, src/crypt.c, src/diff.c, src/ex_docmd.c,
src/ex_getln.c, src/fileio.c, src/findfile.c, src/float.c,
src/gui.c, src/highlight.c, src/if_mzsch.c, src/if_py_both.h,
src/if_python.c, src/if_python3.c, src/insexpand.c, src/match.c,
src/memline.c, src/option.c, src/popupwin.c, src/regexp.c,
src/regexp_nfa.c, src/spellfile.c, src/strings.c, src/syntax.c,
src/textprop.c, src/typval.c, src/undo.c, src/usercmd.c,
src/userfunc.c, src/window.c
Patch 8.2.4011
问题: Test fails because of changed error number.
解决方案: Restore old duplicate error message.
文件: src/errors.h, src/match.c
Patch 8.2.4012
问题: Error messages are spread out.
解决方案: Move the last error messages to errors.h.
文件: src/errors.h, src/channel.c, src/clientserver.c, src/diff.c,
src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c,
src/gui_w32.c, src/help.c, src/if_mzsch.c, src/if_py_both.h,
src/if_python.c, src/job.c, src/json.c, src/list.c, src/option.c,
src/optionstr.c, src/quickfix.c, src/regexp.c, src/regexp_nfa.c,
src/register.c, src/scriptfile.c, src/sign.c, src/syntax.c,
src/tag.c, src/terminal.c, src/textprop.c, src/typval.c,
src/undo.c, src/userfunc.c, src/vim9compile.c, src/viminfo.c
Patch 8.2.4013
问题: Build failure without the spell feature.
解决方案: Adjust #ifdefs.
文件: src/errors.h
Patch 8.2.4014
问题: Git and gitcommit file types not properly recognized.
解决方案: Adjust filetype detection. (Tim Pope, closes #9477)
文件: runtime/filetype.vim, runtime/scripts.vim,
src/testdir/test_filetype.vim
Patch 8.2.4015
问题: Build failure with tiny features. (Tony Mechelynck)
解决方案: Adjust #ifdefs.
文件: src/errors.h
Patch 8.2.4016
问题: Vim9: incorrect error for argument that is shadowing var.
解决方案: Ignore variable that is not in block where the function was
defined.
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.4017
问题: Gcc warns for misleading indent in Athena menu code.
解决方案: Add curlies around the two statements. (Dominique Pellé,
closes #9480)
文件: src/gui_athena.c
Patch 8.2.4018
问题: ml_get error when win_execute redraws with Visual selection.
解决方案: Disable Visual area temporarily. (closes #9479)
文件: src/evalwindow.c, src/proto/evalwindow.pro, src/structs.h,
src/evalbuffer.c, src/proto/evalbuffer.pro, src/evalvars.c,
src/if_py_both.h, src/evalfunc.c,
src/testdir/test_execute_func.vim
Patch 8.2.4019
问题: Vim9: import mechanism is too complicated.
解决方案: Do not use the Javascript mechanism but a much simpler one.
文件: runtime/doc/vim9.txt, src/vim9script.c, src/proto/vim9script.pro,
src/errors.h, src/structs.h, src/eval.c, src/proto/eval.pro,
src/evalvars.c, src/proto/evalvars.pro, src/userfunc.c,
src/vim9expr.c, src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_script.vim
Patch 8.2.4020 (after 8.2.4019)
问题: Debugger test fails.
解决方案: Fix import statement.
文件: src/testdir/test_debugger.vim
Patch 8.2.4021 (after 8.2.4019)
问题: Missing part of the :import changes.
解决方案: Add changes in vim9cmds.c.
文件: src/vim9cmds.c
Patch 8.2.4022
问题: Two error messages in the wrong file.
解决方案: Use the error message from errors.h.
文件: src/popupwin.c, src/usercmd.c
Patch 8.2.4023
问题: Using uninitialized variable.
解决方案: Initialize "ufunc" also when an item is not exported.
文件: src/vim9script.c
Patch 8.2.4024
问题: Confusing error message if imported name is used directly.
解决方案: Give a better error message.
文件: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4025
问题: Error for import not ending in .vim does not work for .vimrc.
解决方案: Check that .vim is the end. (closes #9484)
文件: src/vim9script.c, src/errors.h, src/testdir/test_vim9_script.vim
Patch 8.2.4026
问题: ml_get error with specific win_execute() command. (Sean Dewar)
解决方案: Check cursor and Visual area are OK.
文件: src/evalwindow.c, src/testdir/test_execute_func.vim
Patch 8.2.4027
问题: Import test fails on MS-Windows.
解决方案: Use a different directory name.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4028
问题: ml_get error with :doautoall and Visual area. (Sean Dewar)
解决方案: Disable Visual mode while executing autocommands.
文件: src/structs.h, src/autocmd.c, src/testdir/test_autocmd.vim
Patch 8.2.4029
问题: Debugging NFA regexp my crash, cached indent may be wrong.
解决方案: Fix some debug warnings in the NFA regexp code. Make sure log_fd
is set when used. Fix breakindent and indent caching. (Christian
Brabandt, closes #9482)
文件: src/indent.c, src/optionstr.c, src/regexp_nfa.c
Patch 8.2.4030
问题: A script local funcref is not found from a mapping.
解决方案: When looking for a function, also find a script-local funcref.
(closes #9485)
文件: src/evalvars.c, src/proto/evalvars.pro, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4031
问题: Crash in xterm with only two lines. (Dominique Pellé)
解决方案: Only perform xterm compatibility test if possible. (closes #9488)
文件: src/term.c, src/testdir/test_startup.vim
Patch 8.2.4032
问题: ATTRIBUTE_NORETURN is not needed.
解决方案: Use NORETURN(). (Ozaki Kiichi, closes #9487)
文件: src/if_ruby.c, src/vim.h
Patch 8.2.4033
问题: Running filetype tests leaves directory behind.
解决方案: Delete the top directory. (closes #9483)
文件: src/testdir/test_filetype.vim
Patch 8.2.4034
问题: Coverity warns for possibly using a NULL pointer.
解决方案: Check v_partial is not NULL.
文件: src/vim9type.c
Patch 8.2.4035
问题: Timer triggered at the debug prompt may cause trouble.
解决方案: Do not trigger any timer at the debug prompt. (closes #9481)
文件: src/time.c
Patch 8.2.4036
问题: Vim9: script test file is getting too long.
解决方案: Split the import/export functionality to a separate file.
文件: src/testdir/test_vim9_script.vim, src/testdir/test_vim9_import.vim,
src/testdir/Make_all.mak
Patch 8.2.4037
问题: Insert mode completion is insufficiently tested.
解决方案: Add more tests. Fix uncovered memory leak. (Yegappan Lakshmanan,
closes #9489)
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.4038
问题: Various code not used when features are disabled.
解决方案: Add #ifdefs. (Dominique Pellé, closes #9491)
文件: src/alloc.c, src/buffer.c, src/charset.c, src/clipboard.c,
src/cmdhist.c, src/crypt.c, src/edit.c, src/eval.c,
src/evalbuffer.c, src/evalfunc.c, src/ex_docmd.c, src/globals.h,
src/gui_xim.c, src/hashtab.c, src/highlight.c, src/insexpand.c,
src/main.c, src/mark.c, src/message.c, src/misc1.c, src/misc2.c,
src/ops.c, src/option.c, src/option.h, src/optionstr.c,
src/register.c, src/scriptfile.c, src/tag.c, src/term.c,
src/typval.c, src/usercmd.c, src/userfunc.c, src/vim9script.c,
src/vim9type.c
Patch 8.2.4039
问题: The xdiff library is linked in even when not used.
解决方案: Use configure to decide whether xdiff object files are included.
文件: src/Makefile, src/config.mk.in, src/configure.ac,
src/auto/configure, src/feature.h
Patch 8.2.4040
问题: Keeping track of allocated lines in user functions is too
complicated.
解决方案: Instead of freeing individual lines keep them all until the end.
文件: src/alloc.c, src/proto/alloc.pro, src/vim9compile.c,
src/userfunc.c, src/proto/userfunc.pro, src/message.c,
src/usercmd.c, src/viminfo.c, src/testdir/test_vim9_func.vim
Patch 8.2.4041
问题: Using uninitialized pointer.
解决方案: Store "ht" when variable is in another script.
文件: src/evalvars.c
Patch 8.2.4042
问题: Vim9: build error.
解决方案: Use grow array instead of character pointer.
文件: src/vim9execute.c
Patch 8.2.4043
问题: Using int for second argument of ga_init2().
解决方案: Remove unnecessary type cast (int) when using sizeof().
文件: src/arglist.c, src/channel.c, src/cmdexpand.c, src/dict.c,
src/digraph.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
src/evalwindow.c, src/ex_docmd.c, src/fileio.c, src/filepath.c,
src/findfile.c, src/fold.c, src/hardcopy.c, src/help.c,
src/job.c, src/list.c, src/menu.c, src/os_win32.c, src/register.c,
src/scriptfile.c, src/spellfile.c, src/spellsuggest.c,
src/strings.c, src/syntax.c, src/tag.c, src/terminal.c,
src/undo.c, src/usercmd.c, src/userfunc.c, src/vim9execute.c,
src/viminfo.c, src/window.c, src/if_py_both.h
Patch 8.2.4044
问题: Vim9: no error when importing the same script twice.
解决方案: Give an error, unless it is a reload.
文件: src/vim9script.c, src/errors.h, src/testdir/test_vim9_import.vim
Patch 8.2.4045
问题: Some global functions are only used in one file.
解决方案: Make the functions static. (Yegappan Lakshmanan, closes #9492)
文件: src/ex_getln.c, src/highlight.c, src/proto/ex_getln.pro,
src/proto/highlight.pro, src/proto/vim9compile.pro,
src/proto/vim9instr.pro, src/proto/window.pro, src/vim9compile.c,
src/vim9instr.c, src/window.c
Patch 8.2.4046
问题: Some error messages not in the right place.
解决方案: Adjust the errors file. Fix typo.
文件: src/errors.h, src/regexp_bt.c, src/typval.c,
Patch 8.2.4047
问题: Depending on the build features error messages are unused.
解决方案: Add #ifdefs. (Dominique Pellé, closes #9493)
文件: src/errors.h
Patch 8.2.4048
问题: gcc complains about use of "%p" in printf.
解决方案: Add (void *) typecast. (Dominique Pellé, closes #9494)
文件: src/if_py_both.h
Patch 8.2.4049
问题: Vim9: reading before the start of the line with "$" by itself.
解决方案: Do not subtract one when reporting the error.
文件: src/vim9expr.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4050
问题: Vim9: need to prefix every item in an autoload script.
解决方案: First step in supporting "vim9script autoload" and "import
autoload".
文件: runtime/doc/repeat.txt, runtime/doc/vim9.txt, src/structs.h,
src/errors.h, src/vim9script.c, src/scriptfile.c,
src/proto/scriptfile.pro, src/userfunc.c, src/eval.c,
src/evalvars.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/vim9expr.c, src/testdir/test_vim9_script.vim
Patch 8.2.4051
问题: Compiler complains about possibly uninitialized variable.
解决方案: Add code to avoid a compiler warning. (John Marriott)
文件: src/scriptfile.c
Patch 8.2.4052
问题: Not easy to resize a window from a plugin.
解决方案: Add win_move_separator() and win_move_statusline() functions.
(Daniel Steinberg, closes #9486)
文件: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/evalwindow.c, src/proto/evalwindow.pro,
src/testdir/test_window_cmd.vim
Patch 8.2.4053
问题: Vim9: autoload mechanism doesn't fully work yet.
解决方案: Define functions and variables with their autoload name, add the
prefix when calling a function, find the variable in the table of
script variables.
文件: src/structs.h, src/scriptfile.c, src/proto/scriptfile.pro,
src/vim9script.c, src/proto/vim9script.pro, src/userfunc.c,
src/evalvars.c, src/testdir/test_vim9_script.vim
Patch 8.2.4054 (after 8.2.4053)
问题: Vim9 script test fails.
解决方案: Add missing change.
文件: src/vim9compile.c
Patch 8.2.4055
问题: Vim9: line break in expression causes v:errmsg to be filled.
(Yegappan Lakshmanan)
解决方案: Do not give an error when skipping over an expression.
文件: src/userfunc.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4056
问题: Vim9: memory leak when exporting function in autoload script.
解决方案: Free the name if replacing it.
文件: src/scriptfile.c
Patch 8.2.4057
问题: Vim9: not fully implementing the autoload mechanism.
解决方案: Allow for exporting a legacy function. Improve test coverage.
文件: src/vim9script.c, src/testdir/test_vim9_import.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.4058
问题: Vim9: import test failure in wrong line.
解决方案: Adjust line number.
文件: src/testdir/test_vim9_import.vim
Patch 8.2.4059
问题: Vim9: an expression of a map cannot access script-local items.
(Maxim Kim)
解决方案: Use the script ID of where the map was defined.
文件: src/getchar.c, src/map.c, src/proto/map.pro,
src/testdir/test_vim9_import.vim
Patch 8.2.4060
问题: win_execute() is slow on systems where getcwd() or chdir() is
slow. (Rick Howe)
解决方案: Avoid using getcwd() and chdir() if no local directory is used and
'acd' is not set. (closes #9504)
文件: src/evalwindow.c
Patch 8.2.4061
问题: Codecov bash script is deprecated.
解决方案: Use the codecov action. (Ozaki Kiichi, closes #9505)
文件: .github/workflows/ci.yml
Patch 8.2.4062
问题: Match highlighting of tab too short.
解决方案: Do not stop match highlighting if on a Tab. (Christian Brabandt,
closes #9507, closes #9500)
文件: src/drawline.c, src/testdir/test_match.vim,
src/testdir/dumps/Test_match_tab_linebreak.dump
Patch 8.2.4063
问题: Vim9: exported function in autoload script not found. (Yegappan
Lakshmanan)
解决方案: Use the autoload prefix to search for the function.
文件: src/userfunc.c, src/testdir/test_vim9_import.vim
Patch 8.2.4064
问题: Foam files are not detected.
解决方案: Detect the foam filetype by the path and file contents. (Mohammed
Elwardi Fadeli, closes #9501)
文件: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
src/testdir/test_filetype.vim
Patch 8.2.4065
问题: Computation overflow with large count for :yank.
解决方案: Avoid an overflow.
文件: src/ex_docmd.c, src/testdir/test_excmd.vim
Patch 8.2.4066
问题: Vim9: imported autoload script loaded again.
解决方案: Do not create a new imported_T every time.
文件: src/vim9script.c, src/vim9compile.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4067
问题: Vim9: cannot call imported function with :call. (Drew Vogel)
解决方案: Translate the function name. (closes #9510)
文件: src/userfunc.c, src/testdir/test_vim9_import.vim
Patch 8.2.4068 (after 8.2.4066)
问题: Vim9: import test fails.
解决方案: Add missing change.
文件: src/scriptfile.c
Patch 8.2.4069
问题: Vim9: import test fails on MS-Windows.
解决方案: Ignore case. Adjust test to avoid name that only differs in case.
文件: src/eval.c, src/scriptfile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4070
问题: Using uninitialized memory when reading empty file.
解决方案: Check for empty file before checking for NL. (Dominique Pellé,
closes #9511)
文件: src/filepath.c, src/testdir/test_eval_stuff.vim
Patch 8.2.4071
问题: Vim9: no detection of return in try/endtry. (Dominique Pellé)
解决方案: Check if any of the blocks inside try/endtry did not end in
return.
文件: src/vim9.h, src/vim9compile.c, src/vim9cmds.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4072
问题: Vim9: compiling function fails when autoload script is not loaded
yet.
解决方案: Depend on runtime loading.
文件: src/vim9expr.c, src/vim9script.c, src/vim9instr.c,
src/vim9execute.c, src/testdir/test_vim9_import.vim
Patch 8.2.4073
问题: Coverity warns for using NULL pointer.
解决方案: Bail out when running out of memory. Check for running over end of
a string.
文件: src/userfunc.c,
Patch 8.2.4074
问题: Going over the end of NameBuff.
解决方案: Check length when appending a space.
文件: src/drawscreen.c, src/testdir/test_edit.vim
Patch 8.2.4075 (after 8.2.4073)
问题: Test failures.
解决方案: Change check for NULL pointer.
文件: src/userfunc.c
Patch 8.2.4076
问题: Memory leak in autoload import.
解决方案: Do not overwrite the autoload prefix.
文件: src/vim9script.c
Patch 8.2.4077
问题: Not all Libsensors files are recognized.
解决方案: Add "sensors.d/*" pattern. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4078
问题: Terminal test for current directory not used on FreeBSD.
解决方案: Make it work on FreeBSD. (Ozaki Kiichi, closes #9516) Add
TermWait() inside Run_shell_in_terminal() as a generic solution.
文件: src/testdir/test_terminal3.vim, src/testdir/term_util.vim,
src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim,
src/testdir/test_mapping.vim
Patch 8.2.4079
问题: MS-Windows: "gvim --version" didn't work when build with VIMDLL.
解决方案: Adjust #ifdef. (Ken Takata, closes #9517)
文件: src/main.c
Patch 8.2.4080
问题: Not sufficient test coverage for xxd.
解决方案: Add a few more test cases. (Erki Auerswald, closes #9515)
文件: src/testdir/test_xxd.vim
Patch 8.2.4081
问题: CodeQL reports problem in if_cscope causing it to fail.
解决方案: Use execvp() instead of execl(). Merge the header file into the
source file. (Ozaki Kiichi, closes #9519)
文件: Filelist, src/Make_cyg_ming.mak, src/Make_mvc.mak,
src/Make_vms.mms, src/Makefile, src/if_cscope.c, src/if_cscope.h,
src/testdir/test_cscope.vim
Patch 8.2.4082
问题: Check for autoload file name and prefix fails. (Christian J.
Robinson)
解决方案: Only lower case the prefix on systems where the file name is not
case sensitive.
文件: src/scriptfile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4083
问题: Vim9: no test for "vim9script autoload" and using script variable
in the same script.
解决方案: Add a simple test. Fix uncovered problem.
文件: src/evalvars.c, src/testdir/test_vim9_import.vim
Patch 8.2.4084
问题: Memory leak when looking for autoload prefixed variable.
解决方案: Free the concatenated string.
文件: src/evalvars.c
Patch 8.2.4085
问题: Vim9: no test for using import in legacy script.
解决方案: Add a test.
文件: src/testdir/test_vim9_import.vim
Patch 8.2.4086
问题: "cctx" argument of find_func_even_dead() is unused.
解决方案: Remove the argument.
文件: src/userfunc.c, src/proto/userfunc.pro, src/vim9compile.c,
src/vim9instr.c, src/evalfunc.c, src/evalvars.c, src/testing.c,
src/vim9execute.c, src/vim9expr.c, src/vim9script.c,
src/vim9type.c
Patch 8.2.4087
问题: Cannot test items from an autoload script easily.
解决方案: Add the "autoload" value for test_override().
文件: runtime/doc/testing.txt, src/testing.c, src/globals.h,
src/vim9script.c, src/testdir/test_vim9_import.vim
Patch 8.2.4088
问题: Xxd cannot output everything in one line.
解决方案: Make zero columns mean infinite columns. (Erik Auerswald,
closes #9524)
文件: runtime/doc/xxd.1, runtime/doc/xxd.man, src/testdir/test_xxd.vim,
src/xxd/xxd.c
Patch 8.2.4089 (after 8.2.4078)
问题: Terminal test for current directory fails on FreeBSD.
解决方案: Skip the test.
文件: src/testdir/test_terminal3.vim
Patch 8.2.4090
问题: After restoring a session buffer order can be quite different.
解决方案: Create buffers first. (Evgeni Chasnovski, closes #9520)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.4091
问题: Virtcol is recomputed for statusline unnecessarily.
解决方案: Just use "w_virtcol". (closes #9523)
文件: src/buffer.c, src/testdir/test_statusline.vim
Patch 8.2.4092
问题: macOS CI: unnecessarily doing "Install packages".
解决方案: Only do "Install packages" for huge build. (Ozaki Kiichi,
closes #9521)
文件: .github/workflows/ci.yml
Patch 8.2.4093
问题: Cached breakindent values not initialized properly.
解决方案: Initialize and cache formatlistpat. (Christian Brabandt,
closes #9526, closes #9512)
文件: runtime/doc/options.txt, src/indent.c, src/option.c,
src/proto/option.pro, src/testdir/test_breakindent.vim
Patch 8.2.4094
问题: 'virtualedit' is window-local but using buffer-local enum.
解决方案: Use window-local enum. (closes #9529)
文件: src/option.h, src/optiondefs.h
Patch 8.2.4095
问题: Sed script not recognized by the first line.
解决方案: Recognize a sed script starting with "#n". (Doug Kearns)
文件: runtime/scripts.vim, src/testdir/test_filetype.vim
Patch 8.2.4096
问题: Linux CI: unnecessarily installing packages
解决方案: Only install packages for huge build. (Ozaki Kiichi,
closes #9530)
文件: .github/workflows/ci.yml
Patch 8.2.4097
问题: Wrong number in error message on 32 bit system. (John Paul Adrian
Glaubitz)
解决方案: Add type cast. (closes #9527)
文件: src/vim9compile.c
Patch 8.2.4098
问题: Typing "interrupt" at debug prompt may keep exception around,
causing function calls to fail.
解决方案: Discard any exception at the toplevel. (closes #9532)
文件: src/main.c
Patch 8.2.4099
问题: Vim9: cannot use Vim9 syntax in mapping.
解决方案: Add <ScriptCmd> to use the script context for a command.
文件: runtime/doc/map.txt, src/normal.c, src/getchar.c,
src/proto/getchar.pro, src/ex_getln.c, src/edit.c, src/terminal.c,
src/keymap.h, src/insexpand.c, src/misc2.c, src/ops.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4100
问题: Early return when getting the 'formatlistpat' value.
解决方案: Remove the first line. (Christian Brabandt)
文件: src/option.c, src/testdir/test_breakindent.vim
Patch 8.2.4101
问题: Warning for unused argument in tiny version.
解决方案: Add "UNUSED".
文件: src/getchar.c
Patch 8.2.4102
问题: Vim9: import cannot be used after method.
解决方案: Recognize an imported function name. (closes #9496)
文件: src/eval.c, src/testdir/test_vim9_import.vim
Patch 8.2.4103
问题: Vim9: variable declared in for loop not initialized.
解决方案: Always initialize the variable. (closes #9535)
文件: src/vim9instr.c, src/proto/vim9instr.pro, src/vim9compile.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.4104
问题: Vim9: lower casing the autoload prefix causes problems.
解决方案: Always store the prefix with case preserved.
文件: src/scriptfile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4105
问题: Translation related comment in the wrong place.
解决方案: Move it back with the text. (Ken Takata, closes #9537)
文件: src/errors.h, src/ex_docmd.c
Patch 8.2.4106
问题: Going over the end of the w_lines array.
解决方案: Break out of the loop when "idx" is too big. (issue #9540)
文件: src/drawscreen.c
Patch 8.2.4107
问题: Script context not restored after using <ScriptCmd>.
解决方案: Also restore context when not in a script. (closes #9536)
Add the 'c' flag to feedkeys() to be able to test this.
文件: runtime/doc/builtin.txt, src/getchar.c, src/evalfunc.c,
src/testdir/test_mapping.vim
Patch 8.2.4108
问题: Going over the end of the w_lines array.
解决方案: Check not going over the end and limit to Rows. (issue #9540)
文件: src/drawscreen.c
Patch 8.2.4109
问题: MS-Windows: high dpi support is outdated.
解决方案: Improve High DPI support by using PerMonitorV2. (Ken Takata
closes #9525, closes #3102)
文件: src/gui.c, src/gui.h, src/gui_w32.c, src/vim.manifest
Patch 8.2.4110
问题: Coverity warns for using NULL pointer.
解决方案: Check "evalarg" is not NULL. Skip errors when "verbose" is false.
文件: src/eval.c
Patch 8.2.4111
问题: Potential problem when map is deleted while executing.
解决方案: Reset last used map pointer when deleting a mapping.
文件: src/map.c
Patch 8.2.4112
问题: Function not deleted at end of test.
解决方案: Delete the function.
文件: src/testdir/test_diffmode.vim
Patch 8.2.4113
问题: Typo on DOCMD_RANGEOK results in not recognizing command.
解决方案: Correct the typo. (closes #9539)
文件: src/vim.h, src/testdir/test_mapping.vim
Patch 8.2.4114
问题: Vim9: type checking for a funcref does not work for when it is
used in a method.
解决方案: Pass the base to where the type is checked.
文件: src/vim9type.c, src/proto/vim9type.pro, src/userfunc.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.4115
问题: Cannot use a method with a complex expression.
解决方案: Evaluate the expression after "->" and use the result.
文件: src/eval.c, src/errors.h, src/testdir/test_vim9_expr.vim
Patch 8.2.4116
问题: Vim9: cannot use a method with a complex expression in a :def
function.
解决方案: Implement compiling the expression.
文件: src/vim9expr.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4117
问题: Vim9: wrong white space error after using imported item.
解决方案: Don't skip over white space. (closes #9544)
文件: src/eval.c, src/testdir/test_vim9_import.vim
Patch 8.2.4118
问题: Using UNUSED for argument that is used.
解决方案: Remove UNUSED.
文件: src/usercmd.c
Patch 8.2.4119
问题: Build failure when disabling the channel feature.
解决方案: Adjust #ifdef. (Dominique Pellé, closes #9545)
文件: src/misc2.c
Patch 8.2.4120
问题: Block insert goes over the end of the line.
解决方案: Handle invalid byte better. Fix inserting the wrong text.
文件: src/ops.c, src/testdir/test_visual.vim
Patch 8.2.4121
问题: Visual test fails on MS-Windows.
解决方案: Set 'isprint' so that the character used is not printable.
文件: src/testdir/test_visual.vim
Patch 8.2.4122
问题: ":command Cmd" does not show custom completion argument.
解决方案: Show the completion argument when using ":verbose".
文件: src/usercmd.c, src/testdir/test_usercommands.vim
Patch 8.2.4123
问题: Complete function cannot be import.Name.
解决方案: Dereference the function name if needed. Also: do not see
"import.Name" as a builtin function. (closes #9541)
文件: src/userfunc.c, src/eval.c, src/testdir/test_vim9_import.vim
Patch 8.2.4124
问题: Vim9: method in compiled function may not see script item.
解决方案: Make sure not to skip to the next line. (closes #9496)
文件: src/vim9expr.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4125
问题: Completion tests fail.
解决方案: Disable error messages while dereferencing the function name.
文件: src/eval.c
Patch 8.2.4126
问题: Crash on exit when built with dynamic Tcl and EXITFREE is defined.
(Dominique Pellé)
解决方案: Only call Tcl_Finalize() when initialized. (closes #9546)
文件: src/if_tcl.c
Patch 8.2.4127
问题: Build failure without the +eval feature.
解决方案: Add #ifdef.
文件: src/usercmd.c
Patch 8.2.4128
问题: Crash when method cannot be found. (Christian J. Robinson)
解决方案: Don't mix up pointer names.
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4129
问题: Building with +sound but without +eval fails. (Dominique Pellé)
解决方案: Disable canberra in tiny and small build. (closes #9548)
文件: src/configure.ac, src/auto/configure
Patch 8.2.4130
问题: MS-Windows: MSVC build may have libraries duplicated.
解决方案: Improve the MSVC Makefile. (Ken Takata, closes #9547)
文件: src/Make_mvc.mak
Patch 8.2.4131
问题: Vim9: calling function in autoload import does not work in a :def
function.
解决方案: When a variable is not found and a PCALL follows use a funcref.
(closes #9550)
文件: src/vim9execute.c, src/testdir/test_vim9_import.vim
Patch 8.2.4132
问题: Vim9: wrong error message when autoload script can't be found.
解决方案: Correct check for using autoload with wrong name.
文件: src/vim9script.c, src/testdir/test_vim9_import.vim
Patch 8.2.4133
问题: output of ":scriptnames" goes into the message history, while this
does not happen for other commands, such as ":ls".
解决方案: Use msg_outtrans() instead of smsg(). (closes #9551)
文件: src/scriptfile.c, src/testdir/test_scriptnames.vim
Patch 8.2.4134
问题: MS-Windows: test for import with absolute path fails.
解决方案: Handle path starting with slash as an absolute path.
文件: src/vim9script.c
Patch 8.2.4135
问题: Vim9: ":scriptnames" shows unloaded imported autoload script.
解决方案: Mark the unloaded script with "A". (closes #9552)
文件: runtime/doc/repeat.txt, src/scriptfile.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4136
问题: Vim9: the "autoload" argument of ":vim9script" is not useful.
解决方案: Remove the argument. (closes #9555)
文件: runtime/doc/vim9.txt, runtime/doc/repeat.txt, src/vim9script.c,
src/errors.h, src/testdir/test_vim9_import.vim
Patch 8.2.4137
问题: Vim9: calling import with and without method is inconsistent.
解决方案: Set a flag that a parenthesis follows to compile_load_scriptvar().
Add some more tests. Improve error message.
文件: src/vim9expr.c, src/vim9execute.c, src/vim9script.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4138
问题: Vim9: no error for return with argument when the function does not
return anything.
解决方案: Give an error for the invalid argument. (issue #9497)
文件: src/vim9cmds.c, src/testdir/test_vim9_func.vim
Patch 8.2.4139
问题: Using freed memory if an expression abbreviation deletes the
abbreviation.
解决方案: Do not access the pointer after evaluating the expression.
文件: src/map.c, src/testdir/test_mapping.vim
Patch 8.2.4140
问题: maparg() does not indicate the type of script where it was defined.
解决方案: Add "scriptversion".
文件: runtime/doc/builtin.txt, src/map.c, src/testdir/test_maparg.vim
Patch 8.2.4141 (after 8.2.4140)
问题: Vim9 builtin functions test fails.
解决方案: Add "scriptversion" item to maparg() result.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.4142
问题: Build failure with normal features without persistent undo.
解决方案: Adjust #ifdef. (closes #9557)
文件: src/fileio.c
Patch 8.2.4143
问题: MS-Windows: IME support for Win9x is obsolete.
解决方案: Remove the Win9x code. (Ken Takata, closes #9559)
文件: src/gui_w32.c
Patch 8.2.4144
问题: Cannot load libsodium dynamically.
解决方案: Support dynamic loading on MS-Windows. (Ken Takata, closes #9554)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/buffer.c,
src/crypt.c, src/memline.c, src/proto/crypt.pro
Patch 8.2.4145
问题: Confusing error when using name of import for a function.
解决方案: Pass a flag to trans_function_name().
文件: src/vim.h, src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4146
问题: Vim9: shadowed function can be used in compiled function but not
at script level.
解决方案: Also give an error in a compiled function. (closes #9563)
文件: src/vim9expr.c
Patch 8.2.4147
问题: E464 does not always include the offending command.
解决方案: Add another error message with "%s". (closes #9564)
文件: src/errors.h, src/vim9compile.c, src/ex_docmd.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4148
问题: Deleting any mapping may cause <ScriptCmd> to not set the script
context.
解决方案: Only reset last_used_map if it is the deleted mapping.
(closes #9568)
文件: src/map.c, src/getchar.c, src/proto/getchar.pro,
src/testdir/test_mapping.vim
Patch 8.2.4149
问题: Test override not restored, autocommand left behind.
解决方案: Correct restoring test override. Delete autocommand afterwards.
文件: src/testdir/test_autocmd.vim, src/testdir/test_mapping.vim
Patch 8.2.4150
问题: Coverity warns for using pointer after free.
解决方案: Swap statements, even though using the pointer is no problem.
文件: src/map.c
Patch 8.2.4151
问题: Reading beyond the end of a line.
解决方案: For block insert only use the offset for correcting the length.
文件: src/ops.c, src/testdir/test_visual.vim
Patch 8.2.4152
问题: Block insert with double wide character fails.
解决方案: Adjust the expected output.
文件: src/testdir/test_utf8.vim
Patch 8.2.4153
问题: MS-Windows: Global IME is no longer supported.
解决方案: Remove the Global IME implementation. (Ken Takata, closes #9562)
文件: Filelist, runtime/doc/mbyte.txt, src/Make_mvc.mak, src/dimm.idl,
src/glbl_ime.cpp, src/glbl_ime.h, src/gui_w32.c, src/vim.h
Patch 8.2.4154
问题: ml_get error when exchanging windows in Visual mode.
解决方案: Correct end of Visual area when entering another buffer.
文件: src/window.c, src/testdir/test_visual.vim
Patch 8.2.4155
问题: Translating strftime() argument results in check error.
解决方案: Add gettext comment.
文件: src/time.c
Patch 8.2.4156
问题: Fileinfo message overwrites echo'ed message.
解决方案: Reset need_fileinfo when displaying a message. (Rob Pilling,
closes #9569)
文件: src/message.c, src/testdir/test_messages.vim,
src/testdir/dumps/Test_fileinfo_after_echo.dump
Patch 8.2.4157
问题: Terminal test fails because Windows sets the title.
解决方案: Add the "vterm_title" testing override and use it in the test.
(Ozaki Kiichi, closes #9556)
文件: runtime/doc/testing.txt, src/globals.h, src/terminal.c,
src/testing.c, src/testdir/test_terminal.vim
Patch 8.2.4158
问题: MS-Windows: memory leak in :browse.
解决方案: Free stuff before returning. (Ken Takata, closes #9574)
文件: src/gui_w32.c
Patch 8.2.4159
问题: MS-Windows: _WndProc() is very long.
解决方案: Move code to separate functions. (Ken Takata, closes #9573)
文件: src/gui_w32.c
Patch 8.2.4160
问题: Cannot change the register used for Select mode delete.
解决方案: Make CTRL-R set the register to be used when deleting text for
Select mode. (Shougo Matsushita, closes #9531)
文件: runtime/doc/visual.txt, src/globals.h, src/normal.c, src/ops.c,
src/testdir/test_selectmode.vim
Patch 8.2.4161
问题: Vim9: warning for missing white space after imported variable.
解决方案: Do not skip white space. (closes #9567)
文件: src/vim9expr.c, src/testdir/test_vim9_import.vim
Patch 8.2.4162
问题: Vim9: no error for redefining function with export.
解决方案: Check for existing function with/without prefix. (closes #9577)
文件: src/userfunc.c, src/scriptfile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4163
问题: No error for omitting function name after autoload prefix.
解决方案: Check for missing function name. (issue #9577)
文件: src/userfunc.c, src/testdir/test_vim9_import.vim
Patch 8.2.4164 (after 8.2.4162)
问题: Error in legacy code for function shadowing variable.
解决方案: Only give the error in Vim9 script.
文件: src/userfunc.c
Patch 8.2.4165
问题: The nv_g_cmd() function is too long.
解决方案: Move code to separate functions. (Yegappan Lakshmanan,
closes #9576)
文件: src/normal.c
Patch 8.2.4166
问题: Undo synced when switching buffer in another window.
解决方案: Do not sync undo when not needed. (closes #9575)
文件: src/buffer.c, src/testdir/test_timers.vim
Patch 8.2.4167
问题: Vim9: error message for old style import.
解决方案: Use another error message. Add a test.
文件: src/evalvars.c, src/errors.h, src/testdir/test_vim9_import.vim
Patch 8.2.4168 (after 8.2.4163)
问题: Disallowing empty function name breaks existing plugins.
解决方案: Allow empty function name in legacy script.
文件: src/userfunc.c, src/testdir/test_autoload.vim,
src/testdir/sautest/autoload/foo.vim
Patch 8.2.4169
问题: MS-Windows: unnecessary casts and other minor things.
解决方案: Clean up the MS-Windows code. (Ken Takata, closes #9583)
文件: src/gui_w32.c
Patch 8.2.4170
问题: MS-Windows: still using old message API calls.
解决方案: Call the "W" functions directly. (Ken Takata, closes #9582)
文件: src/gui_w32.c, src/os_mswin.c, src/os_win32.c, src/os_win32.h
Patch 8.2.4171
问题: Cannot invoke option function using autoload import.
解决方案: Expand the import to an autoload function name. (closes #9578)
文件: src/userfunc.c, src/evalvars.c, src/proto/evalvars.pro,
src/option.c, src/testdir/test_vim9_import.vim
Patch 8.2.4172
问题: Filetype detection for BASIC is not optimal.
解决方案: Improve BASIC filetype detection. (Doug Kearns)
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim
Patch 8.2.4173
问题: Cannot use an import in 'foldexpr'.
解决方案: Set the script context to where 'foldexpr' was set. (closes #9584)
Fix that the script context was not set for all buffers.
文件: src/eval.c, src/proto/eval.pro, src/fold.c, src/structs.h,
src/option.c, src/testdir/test_vim9_import.vim
Patch 8.2.4174
问题: Vim9: can use an autoload name in normal script.
解决方案: Disallow using an autoload name.
文件: src/userfunc.c, src/errors.h, src/testdir/test_vim9_import.vim
Patch 8.2.4175
问题: MS-Windows: runtime check for multi-line balloon is obsolete.
解决方案: Remove the obsolete code. (Ken Takata, closes #9592)
文件: src/evalfunc.c, src/gui_w32.c, src/proto/gui_w32.pro
Patch 8.2.4176
问题: Vim9: cannot use imported function with call().
解决方案: Translate the function name. (closes #9590)
文件: src/evalfunc.c, src/testdir/test_vim9_import.vim
Patch 8.2.4177
问题: Vim9: autoload script not loaded after "vim9script noclear".
解决方案: Check IMP_FLAGS_AUTOLOAD properly. (closes #9593)
文件: src/vim9compile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4178
问题: Vim9: invalid error for return type of lambda when debugging.
解决方案: Do not check the return type of a lambda. (closes #9589)
文件: src/vim9cmds.c
Patch 8.2.4179
问题: 'foldtext' is evaluated in the current script context.
解决方案: Use the script context where the option was set.
文件: src/fold.c, src/buffer.c, src/eval.c, src/proto/eval.pro,
src/findfile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4180
问题: 'balloonexpr' is evaluated in the current script context.
解决方案: Use the script context where the option was set.
文件: src/beval.c, src/option.c, src/proto/option.pro,
src/testdir/test_balloon.vim,
src/testdir/dumps/Test_balloon_eval_term_01.dump,
src/testdir/dumps/Test_balloon_eval_term_01a.dump,
src/testdir/dumps/Test_balloon_eval_term_02.dump
Patch 8.2.4181
问题: Vim9: cannot use an import in 'diffexpr'.
解决方案: Set the script context when evaluating 'diffexpr'. Do not require
'diffexpr' to return a bool, it was ignored anyway.
文件: src/evalvars.c, src/testdir/test_vim9_import.vim
Patch 8.2.4182 (after 8.2.4182)
问题: Memory leak when evaluating 'diffexpr'.
解决方案: Use free_tv() instead of clear_tv().
文件: src/evalvars.c
Patch 8.2.4183
问题: Cannot use an import in 'formatexpr'.
解决方案: Set the script context when evaluating 'formatexpr'.
文件: src/textformat.c, src/testdir/test_vim9_import.vim
Patch 8.2.4184
问题: Cannot use an import in 'includeexpr'.
解决方案: Set the script context when evaluating 'includeexpr'
文件: src/findfile.c, src/testdir/test_vim9_import.vim
Patch 8.2.4185
问题: Cannot use an import in 'indentexpr'.
解决方案: Set the script context when evaluating 'indentexpr'
文件: src/indent.c, src/testdir/test_vim9_import.vim
Patch 8.2.4186
问题: Cannot use an import in 'patchexpr'.
解决方案: Set the script context when evaluating 'patchexpr'. Do not
require 'patchexpr' to return a bool, it was ignored anyway.
文件: src/evalvars.c, src/testdir/test_vim9_import.vim
Patch 8.2.4187
问题: Gnuplot file not recognized.
解决方案: Recognize ".gnuplot". (closes #9588)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4188
问题: Not all gitconfig files are recognized.
解决方案: Add a few more patterns. (Tim Pope, closes #9597)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4189
问题: MS-Windows: code for "old look" is obsolete.
解决方案: Delete obsolete code. Use "MS Shell Dlg" font. (Ken Takata,
closes #9596)
文件: src/gui_w32.c
Patch 8.2.4190
问题: All conceal tests are skipped without the screendumps feature.
解决方案: Only skip the tests that use screendumps. (closes #9599)
文件: src/testdir/test_conceal.vim
Patch 8.2.4191
问题: json5 files are not recognized.
解决方案: Add a pattern for json5 files. (closes #9601)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4192
问题: Cannot use an import in 'printexpr'.
解决方案: Set the script context when evaluating 'printexpr'.
文件: src/evalvars.c, src/testdir/test_vim9_import.vim
Patch 8.2.4193
问题: Cannot use an import in 'charconvert'.
解决方案: Set the script context when evaluating 'charconvert'. Also expand
script-local functions in 'charconvert'.
文件: src/evalvars.c, src/optionstr.c, src/testdir/test_vim9_import.vim
Patch 8.2.4194
问题: MS-Windows: code for calculating font size is duplicated.
解决方案: Move the code to a function. (Ken Takata, closes #9603)
文件: src/gui_w32.c
Patch 8.2.4195
问题: Resizing terminal may cause to behave like CTRL-Z.
解决方案: Set "got_tstp" only when in_mch_suspend is set. (Dorian Bivolaru,
closes #9602, closes #9586)
文件: src/os_unix.c
Patch 8.2.4196
问题: Various file types not recognized.
解决方案: Add patterns to recognize more file types (closes #9607)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4197
问题: Cannot use an import in the "expr" part of 'spellsuggest'.
解决方案: Set the script context when evaluating "expr" of 'spellsuggest'.
文件: src/evalvars.c, src/testdir/test_vim9_import.vim
Patch 8.2.4198
问题: Vim9: the switch for executing instructions is too long.
解决方案: Move some code to separate functions.
文件: src/vim9execute.c
Patch 8.2.4199
问题: MS-Windows: Support for MSVC before 2003 is not useful.
解决方案: Remove the exceptions for MSVC 6.0. (Ken Takata, closes #9616)
文件: src/GvimExt/gvimext.h, src/ex_docmd.c, src/feature.h,
src/gui_w32.c, src/if_cscope.c, src/if_ole.cpp, src/if_ruby.c,
src/macros.h, src/os_mswin.c, src/os_win32.c, src/os_win32.h,
src/proto/os_win32.pro, src/time.c, src/vim.h
Patch 8.2.4200
问题: Some tests do not clean up properly.
解决方案: Delete created files. (Yegappan Lakshmanan, closes #9611)
文件: src/testdir/test_filetype.vim, src/testdir/test_messages.vim,
src/testdir/test_vim9_import.vim
Patch 8.2.4201
问题: When using the GUI CTRL-Z does not stop gvim.
解决方案: When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
closes #9570)
文件: src/os_unix.c
Patch 8.2.4202
问题: Vim9: cannot export function that exists globally.
解决方案: When checking if a function already exists only check for
script-local functions. (closes #9615)
文件: src/userfunc.c, src/proto/userfunc.pro, src/vim.h,
src/vim9compile.c, src/vim9instr.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4203
问题: Entering a character with CTRL-V may include modifiers.
解决方案: Reset "mod_mask" when entering a character with digits after
CTRL-V. (closes #9610)
文件: src/edit.c, src/testdir/test_edit.vim
Patch 8.2.4204
问题: screenpos() has non-zero row for invisible text.
解决方案: Only add the window row when the text is visible. (closes #9618)
文件: src/move.c, src/testdir/test_cursor_func.vim
Patch 8.2.4205
问题: The normal_cmd() function is too long.
解决方案: Move parts to separate functions. (Yegappan Lakshmanan,
closes #9608)
文件: src/normal.c
Patch 8.2.4206
问题: Condition with many "(" causes a crash.
解决方案: Limit recursion to 1000.
文件: src/errors.h, src/eval.c, src/testdir/test_eval_stuff.vim
Patch 8.2.4207 (after 8.2.4206)
问题: Recursion test fails with MSVC.
解决方案: Use a smaller limit for MSVC.
文件: src/eval.c
Patch 8.2.4208
问题: Using setbufvar() may change the window title.
解决方案: Do not redraw when creating the autocommand window. (closes #9613)
文件: src/autocmd.c, src/testdir/test_functions.vim
Patch 8.2.4209
问题: partial in 'opfunc' cannot use an imported function.
解决方案: Also expand the function name in a partial. (closes #9614)
文件: src/evalvars.c, src/testdir/test_vim9_import.vim
Patch 8.2.4210 (after 8.2.4208)
问题: Window title test fails in some configurations.
解决方案: Only run the test if the title can be obtained.
文件: src/testdir/test_functions.vim
Patch 8.2.4211 (after 8.2.4208)
问题: Window title test still fails in some configurations.
解决方案: Use WaitForAssert().
文件: src/testdir/test_functions.vim
Patch 8.2.4212 (after 8.2.4208)
问题: Window title test still fails in some configurations.
解决方案: Explicitly set the 'title' option.
文件: src/testdir/test_functions.vim
Patch 8.2.4213
问题: Too much code for supporting old MSVC versions.
解决方案: Remove MSVC 2003 support. (Ken Takata, closes #9623)
文件: Filelist, src/INSTALLpc.txt, src/Make_mvc.mak, src/gui_w32.c,
src/msvcsetup.bat, src/os_win32.c
Patch 8.2.4214
问题: Illegal memory access with large 'tabstop' in Ex mode.
解决方案: Allocate enough memory.
文件: src/ex_getln.c, src/testdir/test_ex_mode.vim
Patch 8.2.4215
问题: Illegal memory access when copying lines in Visual mode.
解决方案: Adjust the Visual position after copying lines.
文件: src/ex_cmds.c, src/testdir/test_visual.vim
Patch 8.2.4216
问题: Vim9: cannot use a function from an autoload import directly.
解决方案: Add the AUTOLOAD instruction to figure out at runtime.
(closes #9620)
文件: src/vim9expr.c, src/vim9.h, src/vim9execute.c, src/vim9instr.c,
src/proto/vim9instr.pro, src/testdir/test_vim9_import.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4217
问题: Illegal memory access when undo makes Visual area invalid.
解决方案: Correct the Visual area after undo.
文件: src/undo.c, src/testdir/test_visual.vim
Patch 8.2.4218
问题: Illegal memory access with bracketed paste in Ex mode.
解决方案: Reserve space for the trailing NUL.
文件: src/edit.c, src/testdir/test_paste.vim
Patch 8.2.4219
问题: Reading before the start of the line.
解决方案: Check boundary before trying to read the character.
文件: src/register.c, src/testdir/test_visual.vim
Patch 8.2.4220
问题: MS-Windows: some old compiler support remains.
解决方案: Remove obsolete compiler support. (Ken Takata, closes #9627)
文件: src/Make_mvc.mak, src/vim.h
Patch 8.2.4221
问题: Some functions in normal.c are very long.
解决方案: Move code to separate functions. (Yegappan Lakshmanan,
closes #9628)
文件: src/normal.c
Patch 8.2.4222
问题: MS-Windows: clumsy way to suppress progress on CI.
解决方案: Check for "$CI" in the Makefile itself. (Ken Takata, closes #9631)
文件: .github/workflows/ci.yml, ci/appveyor.bat, src/Make_mvc.mak
Patch 8.2.4223
问题: Long/int compiler warnings; function arguments swapped.
解决方案: Add type casts. Swap arguments. (Ken Takata, closes #9632)
文件: src/alloc.c, src/eval.c, src/vim9script.c
Patch 8.2.4224
问题: Vim9: no error when using a number for map() second argument
解决方案: Disallow number to string conversion. (closes #9630)
文件: src/eval.c, src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4225
问题: Vim9: depth argument of :lockvar not parsed in :def function.
解决方案: Parse the optional depth argument. (closes #9629)
Fix that locking doesn't work for a non-materialize list.
文件: src/vim9cmds.c, src/evalvars.c, src/structs.h, src/evalfunc.c,
src/errors.h, src/vim9execute.c, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4226 (after 8.2.4224)
问题: Filter-map test fails.
解决方案: Only reject number argument in Vim9 script.
文件: src/eval.c
Patch 8.2.4227
问题: Vim9: using "lockvar!" in :def function does not work.
解决方案: Add "!" instead of "-1". (closes #9634)
文件: src/vim9cmds.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4228
问题: No tests for clicking in the GUI tabline.
解决方案: Add test functions to generate the events. Add tests using the
functions. (Yegappan Lakshmanan, closes #9638)
文件: runtime/doc/builtin.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/normal.c,
src/proto/testing.pro, src/testdir/test_diffmode.vim,
src/testdir/test_gui.vim, src/testdir/test_normal.vim,
src/testing.c
Patch 8.2.4229
问题: Possible crash when invoking timer callback fails.
解决方案: Initialize the typval. Give an error for an empty callback.
(closes #9636)
文件: src/time.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4230
问题: MS-Windows: set_guifontwide() is included but won't work.
解决方案: Include set_guifontwide() only for X11. (Ken Takata, closes #9640)
文件: src/gui.c
Patch 8.2.4231
问题: Vim9: map() gives type error when type was not declared.
解决方案: Only check the type when it was declared, like extend() does.
(closes #9635)
文件: src/list.c, src/evalfunc.c, src/vim9instr.c,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_assign.vim
Patch 8.2.4232 (after 8.2.4231)
问题: Some compilers don't like a goto label without statement.
解决方案: Return instead of using a goto.
文件: src/list.c
Patch 8.2.4233
问题: Crash when recording and using Select mode.
解决方案: When deleting the last recorded character check there is something
to delete.
文件: src/getchar.c, src/testdir/test_registers.vim
Patch 8.2.4234
问题: test_garbagecollect_now() does not check v:testing as documented.
解决方案: Give an error if v:testing is not set.
文件: src/testing.c, src/errors.h, src/testdir/test_functions.vim
Patch 8.2.4235
问题: Invalid check for NULL pointer.
解决方案: Remove the check.
文件: src/getchar.c
Patch 8.2.4236
问题: Accessing freed memory.
解决方案: Set the bh_curr pointer to NULL.
文件: src/getchar.c
Patch 8.2.4237
问题: Record buffer wrong if character in Select mode was not typed.
解决方案: Only delete the tail from the record buffer if the character was
typed. (closes #9650)
文件: src/normal.c, src/testdir/test_registers.vim
Patch 8.2.4238
问题: *.tf file could be filetype "tf" or "terraform".
解决方案: Detect the type from the file contents. (closes #9642)
文件: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
src/testdir/test_filetype.vim
Patch 8.2.4239
问题: Build fails with unusual configuration.
解决方案: Adjust #ifdef. (closes #9651)
文件: src/testing.c
Patch 8.2.4240
问题: Error for using flatten() in Vim9 script is unclear.
解决方案: Add a remark to use flattennew().
文件: src/errors.h
Patch 8.2.4241
问题: Some type casts are redundant.
解决方案: Remove the type casts. (closes #9643)
文件: src/blob.c, src/buffer.c, src/channel.c, src/clientserver.c,
src/clipboard.c, src/drawline.c, src/drawscreen.c, src/edit.c,
src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c,
src/fold.c, src/if_cscope.c, src/json.c, src/match.c,
src/memline.c, src/message.c, src/misc1.c, src/normal.c,
src/ops.c, src/option.c, src/optionstr.c, src/os_unix.c,
src/register.c, src/sign.c, src/spellfile.c, src/tag.c, src/ui.c,
src/undo.c, src/window.c
Patch 8.2.4242
问题: Put in Visual mode cannot be repeated.
解决方案: Use "P" to put without yanking the deleted text into the unnamed
register. (Shougo Matsushita, closes #9591)
文件: runtime/doc/visual.txt, src/normal.c, src/register.c,
src/testdir/test_visual.vim
Patch 8.2.4243
问题: Lua tests fail with Lua 5.4.4.
解决方案: Check messages like before Lua 5.4.3. (Jakub Kulík, closes #9652)
文件: src/testdir/test_lua.vim
Patch 8.2.4244
问题: MS-Windows: warning from MSVC on debug build.
解决方案: Adjust "/opt" options. Remove unused variables. Make variables
uppercase for consistency. (Ken Takata, closes #9647)
文件: src/Make_mvc.mak
Patch 8.2.4245
问题: ":retab 0" may cause illegal memory access.
解决方案: Limit the value of 'tabstop' to 10000.
文件: src/option.c, src/vim.h, src/indent.c,
src/testdir/test_options.vim
Patch 8.2.4246
问题: One error message not in errors.h. (Antonio Colombo)
解决方案: Move the message and rename.
文件: src/errors.h, src/if_perl.xs
Patch 8.2.4247
问题: Stack corruption when looking for spell suggestions.
解决方案: Prevent the depth increased too much. Add a five second time
limit to finding suggestions.
文件: src/spellsuggest.c, src/testdir/test_spell.vim
Patch 8.2.4248
问题: No proper test for moving the window separator.
解决方案: Add a test. Add comment in code. (closes #9656)
文件: src/window.c, src/testdir/test_window_cmd.vim
Patch 8.2.4249
问题: The timeout limit for spell suggestions is always 5000 milli
seconds.
解决方案: Add the "timeout" entry to 'spellsuggest'.
文件: runtime/doc/options.txt, src/spellsuggest.c,
src/testdir/test_spell.vim
Patch 8.2.4250
问题: Channel out callback test is flaky on Mac.
解决方案: Assign high priority to the test process. (Ozaki Kiichi,
closes #9653)
文件: src/testdir/test_channel_pipe.py, src/testdir/thread_util.py
Patch 8.2.4251
问题: Vala files are not recognized.
解决方案: Add the *.vala pattern. (closes #9654)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4252
问题: Generating the normal command table at runtime is inefficient.
解决方案: Generate the table with a Vim script and put it in a header file.
(Yegappan Lakshmanan, closes #9648)
文件: Filelist, runtime/doc/builtin.txt, runtime/doc/usr_41.txt,
src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
src/Makefile, src/create_nvcmdidxs.vim, src/evalfunc.c,
src/main.c, src/normal.c, src/nv_cmdidxs.h, src/proto/normal.pro
Patch 8.2.4253
问题: Using freed memory when substitute uses a recursive function call.
解决方案: Make a copy of the substitute text.
文件: src/ex_cmds.c, src/testdir/test_substitute.vim
Patch 8.2.4254
问题: Using short instead of int.
解决方案: Use int. (closes #9658)
文件: src/if_cscope.c
Patch 8.2.4255
问题: Theoretical computation overflow.
解决方案: Perform multiplication in a wider type. (closes #9657)
文件: src/alloc.c, src/drawline.c, src/eval.c, src/evalfunc.c,
src/ex_docmd.c, src/hardcopy.c, src/list.c, src/memfile.c,
src/memline.c, src/popupwin.c
Patch 8.2.4256
问题: MS-Windows: compiler warnings when compiled with /W4.
解决方案: Small adjustments to the code. (Ken Takata, closes #9659)
文件: src/gui_w32.c, src/os_win32.c
Patch 8.2.4257
问题: Vim9: finding global function without g: prefix but not finding
global variable is inconsistent.
解决方案: 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.
文件: src/vim9expr.c, src/evalfunc.c, src/eval.c, src/userfunc.c,
src/testdir/vim9.vim, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_import.vim,
src/testdir/test_vim9_script.vim, src/testdir/test_blob.vim,
src/testdir/test_execute_func.vim, src/testdir/test_debugger.vim,
src/testdir/test_expr.vim, src/testdir/test_filter_map.vim,
src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
src/testdir/test_glob2regpat.vim, src/testdir/test_highlight.vim,
src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim,
src/testdir/test_listdict.vim, src/testdir/test_mapping.vim,
src/testdir/test_normal.vim, src/testdir/test_popupwin.vim,
src/testdir/test_profile.vim, src/testdir/test_quickfix.vim,
src/testdir/test_tagfunc.vim, src/testdir/test_textprop.vim,
src/testdir/test_usercommands.vim
Patch 8.2.4258
问题: Coverity warns for array overrun.
解决方案: Restrict depth to MAXWLEN - 1.
文件: src/spellsuggest.c
Patch 8.2.4259
问题: Number of test functions for GUI events is growing.
解决方案: Use one function with a dictionary. (Yegappan Lakshmanan,
closes #9660)
文件: runtime/doc/builtin.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/testing.pro,
src/testdir/test_gui.vim, src/testdir/test_vim9_builtin.vim,
src/testing.c
Patch 8.2.4260
问题: Vim9: can still use a global function without g: at the script
level.
解决方案: Also check for g: at the script level. (issue #9637)
文件: src/userfunc.c, src/proto/userfunc.pro, src/evalvars.c,
src/vim9expr.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_import.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_scroll_11.dump,
src/testdir/dumps/Test_popupwin_scroll_12.dump
Patch 8.2.4261
问题: Accessing invalid memory when a regular expression checks the
Visual area while matching in a string.
解决方案: Do not try matching the Visual area in a string.
文件: src/regexp.c, src/testdir/test_help.vim
Patch 8.2.4262 (after 8.2.4261)
问题: Some search tests fail.
解决方案: Use a better way to reject searching for the Visual area.
文件: src/regexp.c
Patch 8.2.4263
问题: No test for the GUI find/replace dialog.
解决方案: Add a test function and a test. (Yegappan Lakshmanan,
closes #9662)
文件: runtime/doc/testing.txt, src/testdir/test_gui.vim, src/testing.c
Patch 8.2.4264
问题: Vim9: can use old style autoload function name.
解决方案: Give an error for old style autoload function name.
文件: src/errors.h, src/userfunc.c, src/testdir/test_vim9_import.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
Patch 8.2.4265 (after 8.2.4264)
问题: Autoload tests fails.
解决方案: Use export instead of name with #.
文件: src/testdir/sautest/autoload/auto9.vim,
src/testdir/test_autoload.vim, src/testdir/test_ins_complete.vim
Patch 8.2.4266
问题: Compiler warning for uninitialized variable.
解决方案: Initialize saved_did_emsg.
文件: src/userfunc.c
Patch 8.2.4267
问题: Unused entry in keymap enum.
解决方案: Remove the entry.
文件: src/keymap.h
Patch 8.2.4268
问题: CI log output is long.
解决方案: Group output in sections. (Ozaki Kiichi, closes #9670)
文件: .github/workflows/ci.yml
Patch 8.2.4269
问题: Coverity warns for using a NULL pointer.
解决方案: Check for "name" to not be NULL.
文件: src/userfunc.c
Patch 8.2.4270
问题: Generating nv_cmdidxs.h requires building Vim twice.
解决方案: Move the table into a separate file and use a separate executable
to extract the command characters. (Ozaki Kiichi, closes #9669)
文件: src/normal.c, src/nv_cmds.h, Filelist, runtime/doc/builtin.txt,
runtime/doc/usr_41.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
src/Make_vms.mms, src/Makefile, src/create_nvcmdidxs.c,
src/create_nvcmdidxs.vim, src/evalfunc.c, src/proto/normal.pro
Patch 8.2.4271
问题: MS-Windows: cannot build with Ruby 3.1.0.
解决方案: Adjust the DLL name and include directory. (Ken Takata,
closes #9666)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak
Patch 8.2.4272
问题: Vim9 expr test fails without the channel feature. (Dominique
Pellé)
解决方案: Remove "g:" before "CheckFeature". (closes #9671)
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.4273
问题: The EBCDIC support is outdated.
解决方案: Remove the EBCDIC support.
文件: src/ascii.h, src/charset.c, src/cindent.c, src/digraph.c,
src/edit.c, src/eval.c, src/evalfunc.c, src/ex_cmds.c,
src/feature.h, src/filepath.c, src/findfile.c, src/getchar.c,
src/gui.c, src/gui_motif.c, src/hardcopy.c, src/help.c,
src/macros.h, src/map.c, src/mark.c, src/misc2.c, src/normal.c,
src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
src/os_unix.c, src/proto/evalfunc.pro, src/regexp.c,
src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/screen.c,
src/spell.c, src/strings.c, src/structs.h, src/term.c,
src/version.c, src/viminfo.c, src/testdir/test_edit.vim,
src/testdir/test_exec_while_if.vim, src/testdir/test_expr.vim,
src/testdir/test_gf.vim, src/testdir/test_regexp_utf8.vim
Patch 8.2.4274
问题: Basic and form filetype detection is incomplete.
解决方案: Add a separate function for .frm files. (Doug Kearns, closes #9675)
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim
Patch 8.2.4275
问题: Cannot use an autoload function from a package under start.
解决方案: Also look in the "start" package directory. (Bjorn Linse,
closes #7193)
文件: src/scriptfile.c, src/testdir/test_packadd.vim
Patch 8.2.4276
问题: Separate test function for the GUI scrollbar.
解决方案: Use test_gui_event(). (Yegappan Lakshmanan, closes #9674)
文件: runtime/doc/builtin.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/testing.c,
src/proto/testing.pro, src/testdir/test_gui.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4277
问题: Vim9: an import does not shadow a command modifier.
解决方案: Do not accept a command modifier followed by a dot.
文件: src/ex_docmd.c, src/testdir/test_vim9_import.vim
Patch 8.2.4278
问题: Build with Athena GUI fails. (Elimar Riesebieter)
解决方案: Add #ifdef.
文件: src/testing.c
Patch 8.2.4279
问题: Vim9: cannot change item type with map() after range().
解决方案: Split the return type in current type and declared type.
(closes #9665)
文件: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9instr.c,
src/vim9type.c, src/proto/vim9type.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4280 (after 8.2.4279)
问题: list-dict test crashes.
解决方案: Check declared type for add().
文件: src/vim9expr.vim
Patch 8.2.4281
问题: Using freed memory with :lopen and :bwipe.
解决方案: Do not use a wiped out buffer.
文件: src/buffer.c, src/testdir/test_quickfix.vim
Patch 8.2.4282
问题: Restricted mode requires the -Z command line option.
解决方案: Use restricted mode when $SHELL ends in "nologin" or "false".
(closes #9681)
文件: runtime/doc/starting.txt, src/option.c,
src/testdir/test_restricted.vim
Patch 8.2.4283
问题: Using a variable for the return value is not needed.
解决方案: Return the value directly. (closes #9687)
文件: src/ex_docmd.c, src/misc2.c
Patch 8.2.4284
问题: Old mac resources files are no longer used.
解决方案: Delete the unused files. (Ozaki Kiichi, closes #9688)
文件: Filelist, src/Makefile, src/dehqx.py, src/infplist.xml,
src/os_mac.rsr.hqx, src/os_mac_rsrc/app.icns,
src/os_mac_rsrc/doc-txt.icns, src/os_mac_rsrc/doc.icns
Patch 8.2.4285
问题: Vim9: type of item in for loop not checked properly.
解决方案: Adjust the type checking. (closes #9683)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9cmds.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4286
问题: Vim9: strict type checking after copy() and deepcopy().
解决方案: Allow type to change after making a copy. (closes #9644)
文件: src/eval.c, src/proto/eval.pro, src/dict.c, src/proto/dict.pro,
src/list.c, src/proto/list.pro, src/evalfunc.c, src/vim9execute.c,
src/vim9type.c, src/proto/vim9type.pro, src/evalvars.c,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_assign.vim
Patch 8.2.4287
问题: Cannot assign empty list with any list type to variable with
specific list type.
解决方案: Use unknown list type for empty list if the specified type is any.
文件: src/vim9type.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.4288
问题: Preprocessor indents are inconsistent.
解决方案: Fix preprocessor indents. (Ken Takata, closes #9691)
文件: src/arglist.c, src/change.c, src/ex_cmds.c, src/gui.c,
src/hashtab.c, src/indent.c, src/ops.c, src/os_win32.c
Patch 8.2.4289
问题: Warnings reported by MSVC.
解决方案: Rename variables and other fixes. (Ken Takata, closes #9689)
文件: src/cmdexpand.c, src/drawscreen.c, src/filepath.c, src/getchar.c,
src/menu.c, src/os_win32.c, src/version.c
Patch 8.2.4290
问题: MS-Windows: using type casts for timer IDs.
解决方案: Remove type casts and use the right type. (Ken Takata,
closes #9690) Remove old debug comments. Rename variables and
functions.
文件: src/gui_w32.c
Patch 8.2.4291
问题: Error number used twice.
解决方案: Renumber the errors.
文件: src/errors.h
Patch 8.2.4292 (after 8.2.4291)
问题: Test fails.
解决方案: Adjust the expected error number.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.4293
问题: Vim9: when copying a list it gets type list<any> even when the
original list did not have a type.
解决方案: Only set the type when the original list has a type. (closes #9692)
文件: src/list.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4294
问题: MS-Windows: #ifdefs for Cygwin are too complicated.
解决方案: Simplify the conditions. (Ken Takata, closes #9693)
文件: src/evalfunc.c, src/main.c, src/os_unix.c, src/os_win32.c,
src/os_win32.h
Patch 8.2.4295
问题: Vim9: concatenating two lists may result in wrong type.
解决方案: Remove the type instead of using list<any>. (closes #9692)
文件: src/list.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4296
问题: Vim9: not all code covered by tests.
解决方案: Add a few more tests for corner cases. Fix hang when single quote
is missing.
文件: src/vim9expr.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.4297
问题: Vim9: not all code covered by tests.
解决方案: Add a couple more tests.
文件: src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4298
问题: Divide by zero with huge tabstop value.
解决方案: Reject tabstop value that overflows to zero.
文件: src/indent.c, src/testdir/test_vartabs.vim
Patch 8.2.4299
问题: SafeState autocommand interferes with debugging.
解决方案: Do not trigger SafeState while debugging. (closes #9697)
文件: src/main.c
Patch 8.2.4300 (after 8.2.4299)
问题: Cannot build tiny version. (Tony Mechelynck)
解决方案: Add #ifdef.
文件: src/main.c
Patch 8.2.4301
问题: Vim9: type error for copy of dict.
解决方案: Do not use dict<any> but no type. (closes #9696)
文件: src/dict.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4302
问题: Vim9: return type of getline() is too strict.
解决方案: Make the declared type list<any>. Also do this for other
functions returning a list of a specific type.
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4303
问题: A few messages should not be translated.
解决方案: Remove _(). (Dominique Pellé, closes #9702)
文件: src/syntax.c
Patch 8.2.4304
问题: Vim9: slice() makes a copy but doesn't change the type.
解决方案: Change the declared type like copy(). (closes #9696)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4305
问题: Tex filetype detection fails.
解决方案: Check value to be positive. (closes #9704)
文件: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
Patch 8.2.4306
问题: No test for fixed perl filetype check.
解决方案: Add a test. Sort test functions.
文件: src/testdir/test_filetype.vim
Patch 8.2.4307
问题: A few more messages should not be translated.
解决方案: Remove _().
文件: src/syntax.c
Patch 8.2.4308
问题: Vim9: cannot list autoload function.
解决方案: Don't give an error for using # when listing a function.
(closes #9703)
文件: src/userfunc.c, src/testdir/test_vim9_import.vim
Patch 8.2.4309
问题: Vim9: crash when using a partial in the wrong context.
解决方案: Don't use an NULL outer pointer. (closes #9706)
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim
Patch 8.2.4310
问题: Vim9: constant list and dict get a declaration type other than
"any".
解决方案: A constant list and dict have a declared member type "any".
(closes #9701)
文件: src/vim9instr.c, src/vim9type.c, src/proto/vim9type.pro,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4311
问题: Vim9: changing script variable type not caught at compile time.
解决方案: Set the declared type.
文件: src/vim9instr.c, src/testdir/test_vim9_assign.vim
Patch 8.2.4312
问题: No error for using :vim9script in a :def function.
解决方案: Give an error when compiling.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.4313
问题: Vim9: cannot change type of list after making a slice.
解决方案: Adjust the declared member type. (closes #9696)
文件: src/vim9expr.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4314 (after 8.2.4312)
问题: Test fails where lines are skipped.
解决方案: Only give an error when not skipping commands.
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.4315
问题: Put in Visual mode not fully tested.
解决方案: Add a few more test cases. (closes #9708)
文件: src/testdir/test_visual.vim
Patch 8.2.4316
问题: __CYGWIN32__ is not defined on 64 bit systems.
解决方案: Update #ifdefs. (Ken Takata, closes #9709)
文件: src/main.c, src/os_unix.c, src/pty.c, src/vim.h
Patch 8.2.4317
问题: MS-Windows: Vim exits when Python 3 initialisation fails.
解决方案: Hook into the exit() function to recover from the failure.
(Ken Takata, closes #9710)
文件: runtime/doc/if_pyth.txt, src/if_python3.c, src/os_win32.c,
src/errors.h, src/proto/os_win32.pro
Patch 8.2.4318
问题: Various comment and indent mistakes, returning wrong zero.
解决方案: Fix the mistakes. Return NULL instead of FAIL.
文件: src/clientserver.c, src/eval.c, src/evalvars.c, src/vim9cmds.c,
src/window.c
Patch 8.2.4319
问题: :put does not work properly in compiled function. (John Beckett)
解决方案: Adjust the direction when using line zero.
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4320
问题: Athena and Motif: when maximized scrollbar position is wrong.
解决方案: Implement the scrollbar padding functions. (closes #9712)
文件: src/gui_athena.c, src/gui_motif.c
Patch 8.2.4321
问题: Vim9: crash when using a funcref to a closure.
解决方案: Copy pt_outer to the new partial. (closes #9714)
文件: src/evalfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.4322
问题: Vim9: crash when using funcref with closure.
解决方案: Keep a reference to the funcref that has the outer context.
(closes #9716)
文件: src/evalfunc.c, src/structs.h, src/eval.c, src/vim9execute.c,
src/testdir/test_vim9_func.vim
Patch 8.2.4323
问题: Vim9: nested function name can start with "_".
解决方案: Use same rule for function name for nested functions.
(closes #9713)
文件: src/vim9compile.c, src/testdir/test_vim9_func.vim
Patch 8.2.4324
问题: Vim9: script-local function name can start with "_".
解决方案: Check for leading capital after "s:". Correct error message.
文件: src/userfunc.c, src/errors.h, src/vim9compile.c,
src/testdir/test_vim9_func.vim
Patch 8.2.4325
问题: 'wildmenu' only shows few matches.
解决方案: Add the "pum" option: use a popup menu to show the matches.
(Yegappan Lakshmanan et al., closes #9707)
文件: runtime/doc/options.txt, src/vim.h, src/cmdexpand.c,
src/drawscreen.c, src/evalfunc.c, src/ex_getln.c, src/option.h,
src/optionstr.c, src/popupmenu.c, src/proto/cmdexpand.pro,
src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_01.dump,
src/testdir/dumps/Test_wildmenu_pum_02.dump,
src/testdir/dumps/Test_wildmenu_pum_03.dump,
src/testdir/dumps/Test_wildmenu_pum_04.dump,
src/testdir/dumps/Test_wildmenu_pum_05.dump,
src/testdir/dumps/Test_wildmenu_pum_06.dump,
src/testdir/dumps/Test_wildmenu_pum_07.dump,
src/testdir/dumps/Test_wildmenu_pum_08.dump,
src/testdir/dumps/Test_wildmenu_pum_09.dump,
src/testdir/dumps/Test_wildmenu_pum_10.dump,
src/testdir/dumps/Test_wildmenu_pum_11.dump,
src/testdir/dumps/Test_wildmenu_pum_12.dump,
src/testdir/dumps/Test_wildmenu_pum_13.dump,
src/testdir/dumps/Test_wildmenu_pum_14.dump,
src/testdir/dumps/Test_wildmenu_pum_15.dump,
src/testdir/dumps/Test_wildmenu_pum_16.dump,
src/testdir/dumps/Test_wildmenu_pum_17.dump,
src/testdir/dumps/Test_wildmenu_pum_18.dump,
src/testdir/dumps/Test_wildmenu_pum_19.dump,
src/testdir/dumps/Test_wildmenu_pum_20.dump,
src/testdir/dumps/Test_wildmenu_pum_21.dump,
src/testdir/dumps/Test_wildmenu_pum_22.dump,
src/testdir/dumps/Test_wildmenu_pum_23.dump,
src/testdir/dumps/Test_wildmenu_pum_24.dump,
src/testdir/dumps/Test_wildmenu_pum_25.dump,
src/testdir/dumps/Test_wildmenu_pum_26.dump,
src/testdir/dumps/Test_wildmenu_pum_27.dump,
src/testdir/dumps/Test_wildmenu_pum_28.dump,
src/testdir/dumps/Test_wildmenu_pum_29.dump
Patch 8.2.4326
问题: "o" and "O" copying comment not sufficiently tested.
解决方案: Add a test case. (closes #9718)
文件: src/testdir/test_textformat.vim
Patch 8.2.4327
问题: May end up with no current buffer.
解决方案: When deleting the current buffer to not pick a quickfix buffer as
the new current buffer.
文件: src/buffer.c, src/testdir/test_quickfix.vim
Patch 8.2.4328
问题: Command line complete matches cleared when typing character.
(Dominique Pellé)
解决方案: Only remove a popup menu if there is one.
文件: src/ex_getln.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_30.dump,
src/testdir/dumps/Test_wildmenu_pum_31.dump
Patch 8.2.4329
问题: No support for end line number and column in 'errorformat'.
解决方案: Add %e and %k. (closes #9624)
文件: runtime/doc/quickfix.txt, src/quickfix.c,
src/testdir/test_quickfix.vim
Patch 8.2.4330
问题: Vim9: no error if script imports itself.
解决方案: Give an error when a script imports itself.
文件: src/vim9script.c, src/errors.h, src/testdir/test_vim9_import.vim
Patch 8.2.4331
问题: Vim9: no test for existing script variable in block.
解决方案: Add a test.
文件: src/testdir/test_vim9_func.vim
Patch 8.2.4332
问题: Vim9: incomplete test for existing script variable in block.
解决方案: Add a couple more tests. Fix uncovered problem.
文件: src/userfunc.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/vim9script.c, src/vim9expr.c, src/testdir/test_vim9_func.vim
Patch 8.2.4333
问题: cstack not always passed to where it is needed.
解决方案: Pass cstack through functions.
文件: src/eval.c, src/vim9expr.c, src/vim9script.c,
src/proto/vim9script.pro, src/vim9compile.c,
src/proto/vim9compile.pro
Patch 8.2.4334
问题: Command line popup menu not positioned correctly.
解决方案: Also use vim_strsize() on the existing text. (Naruhiko Nishino,
closes #9727)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_32.dump
Patch 8.2.4335
问题: No autocommand event triggered before changing directory. (Ronnie
Magatti)
解决方案: Add DirChangedPre. (closes #9721)
文件: runtime/doc/autocmd.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/vim.h, src/autocmd.c, src/misc2.c,
src/testdir/test_autocmd.vim
Patch 8.2.4336
问题: Using :filter for :scriptnames does not work. (Ben Jackson)
解决方案: Call message_filtered(). (closes #9720)
文件: src/scriptfile.c, src/testdir/test_filter_cmd.vim
Patch 8.2.4337
问题: Part of condition is always true.
解决方案: Remove that part of the condition. (closes #9729)
文件: src/filepath.c
Patch 8.2.4338
问题: An error from an expression mapping messes up the display.
解决方案: When the expression results in an empty string return K_IGNORE.
In cmdline mode redraw the command line. (closes #9726)
文件: src/getchar.c, src/testdir/test_mapping.vim,
src/testdir/dumps/Test_map_expr_2.dump,
src/testdir/dumps/Test_map_expr_3.dump,
src/testdir/dumps/Test_map_expr_4.dump
Patch 8.2.4339
问题: CTRL-A does not work properly with the cmdline popup menu.
解决方案: Fix issues with CTRL-A. Add more tests for the cmdline popup
menu. Remove TermWait() before VeriryScreenDump(). Refactor the
cmdline popup code. (Yegappan Lakshmanan, closes #9735)
文件: src/cmdexpand.c, src/ex_getln.c, src/popupmenu.c,
src/testdir/screendump.vim, src/testdir/test_bufline.vim,
src/testdir/test_cmdline.vim, src/testdir/test_conceal.vim,
src/testdir/test_cursorline.vim, src/testdir/test_diffmode.vim,
src/testdir/test_display.vim, src/testdir/test_highlight.vim,
src/testdir/test_match.vim, src/testdir/test_popup.vim,
src/testdir/test_search_stat.vim, src/testdir/test_terminal.vim,
src/testdir/test_textprop.vim,
src/testdir/dumps/Test_wildmenu_pum_33.dump,
src/testdir/dumps/Test_wildmenu_pum_34.dump,
src/testdir/dumps/Test_wildmenu_pum_35.dump,
src/testdir/dumps/Test_wildmenu_pum_36.dump,
src/testdir/dumps/Test_wildmenu_pum_37.dump
Patch 8.2.4340
问题: Amiga: mch_can_exe() is not implemented.
解决方案: Implement mch_can_exe() for Amiga OS 4. (Ola Söder, closes #9731)
文件: src/os_amiga.c
Patch 8.2.4341
问题: Command line not redrawn when finishing popup menu and the screen
has scrolled up.
解决方案: Redraw the command line after updating the screen. (closes #9722)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_38.dump
Patch 8.2.4342
问题: CI will soon switch to other windows version.
解决方案: Use "windows-2019" instead of "windows-latest". (Ozaki Kiichi,
closes #9740)
文件: .github/workflows/ci.yml
Patch 8.2.4343
问题: When reloading not all properties are detected.
解决方案: Add the "edit" value to v:fcs_choice. (Rob Pilling, closes #9579)
文件: runtime/doc/editing.txt, runtime/doc/eval.txt, src/fileio.c,
src/proto/fileio.pro, src/message.c, src/spellfile.c,
src/testdir/test_filechanged.vim
Patch 8.2.4344
问题: Amiga: header file included twice.
解决方案: Remove #include. (Ola Söder, closes #9733)
文件: src/memfile.c
Patch 8.2.4345
问题: <amatch> is expanded like a file name for DirChangedPre.
解决方案: Do not expand <amatch>. (closes #9742) Also for the User event.
文件: src/autocmd.c, src/testdir/test_autocmd.vim
Patch 8.2.4346
问题: A custom statusline may cause Esc to work like Enter on the
command line when the popup menu is displayed.
解决方案: Save and restore KeyTyped. (closes #9749)
文件: src/drawscreen.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_39.dump
Patch 8.2.4347
问题: In some build setups UNUSED is not defined.
解决方案: Change the logic of how UNUSED is defined. (Ola Söder,
closes #9734)
文件: src/vim.h
Patch 8.2.4348
问题: "legacy exe cmd" does not do what one would expect.
解决方案: Apply the "legacy" and "vim9script" command modifiers to the
argument of ":execute".
文件: runtime/doc/vim9.txt, src/globals.h, src/eval.c, src/ex_docmd.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.4349
问题: FileChangedShell test fails on MS-Windows.
解决方案: Skip the test on MS-Windows.
文件: src/testdir/test_filechanged.vim
Patch 8.2.4350
问题: FEAT_GUI_ENABLED defined but never used.
解决方案: Remove the #define. (Ola Söder, closes #9732)
文件: src/vim.h
Patch 8.2.4351
问题: No coverage is measured on MS-Windows CI.
解决方案: Enable coverage on MS-Windows. (Ozaki Kiichi, closes #9750)
文件: .github/workflows/ci.yml
Patch 8.2.4352
问题: ReScript files are not recognized.
解决方案: Add the *.res and *.resi patterns. (Ananda Umamil, closes #9752)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4353
问题: CI does not use the latest Lua and Python.
解决方案: Use Lua 5.4.2 and Python 3.10. (closes #9744)
文件: .github/workflows/ci.yml
Patch 8.2.4354
问题: Dynamic loading of libsodium not handled properly.
解决方案: Fix has() and :version. Show an error message when loading fails.
Fix memory leaks. (Ken Takata, closes #9754)
文件: src/crypt.c, src/evalfunc.c, src/gui_dwrite.cpp, src/if_cscope.c,
src/os_win32.c, src/proto/crypt.pro, src/proto/os_win32.pro,
src/version.c
Patch 8.2.4355
问题: Unnecessary call to check_colorcolumn().
解决方案: Remove the call. (Sean Dewar, closes #9748)
文件: src/option.c, src/window.c
Patch 8.2.4356
问题: Command line completion functions are very long.
解决方案: Refactor into multiple functions. (Yegappan Lakshmanan,
closes #9753)
文件: src/cmdexpand.c
Patch 8.2.4357 (after 8.2.4348)
问题: sticky command modifiers are too sticky.
解决方案: Do not apply command modifiers to a sourced script. (closes #9751)
文件: src/scriptfile.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4358
问题: Vim9: line number of exception is not set.
解决方案: Set the line number before throwing an exception. (closes #9755)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.4359
问题: crash when repeatedly using :retab.
解决方案: Bail out when the line is getting too long.
文件: src/indent.c, src/testdir/test_retab.vim
Patch 8.2.4360
问题: Vim9: allowing use of "s:" leads to inconsistencies.
解决方案: Disallow using "s:" in Vim9 script at the script level.
文件: src/userfunc.c, src/proto/userfunc.pro, src/errors.h,
src/vim9compile.c, src/eval.c, src/testdir/vim9.vim,
src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_import.vim, src/testdir/test_vim9_script.vim
Patch 8.2.4361 (after 8.2.4360)
问题: Vim9: some tests fail.
解决方案: Fix the tests, mostly by removing "s:".
文件: src/testdir/test_expr.vim, src/testdir/test_functions.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
src/testdir/test_tagfunc.vim
Patch 8.2.4362
问题: :retab may allocate too much memory.
解决方案: Bail out when allocating more than MAXCOL bytes.
文件: src/indent.c
Patch 8.2.4363
问题: MS-Windows: running out of memory for a very long line.
解决方案: Use a 32 bit value for MAXCOL also when ints are 64 bits.
文件: src/vim.h
Patch 8.2.4364
问题: MS-Windows: still running out of memory for a very long line.
解决方案: Check for negative length.
文件: src/indent.c
Patch 8.2.4365 (after 8.2.4348)
问题: sticky command modifiers are too sticky.
解决方案: Do not apply command modifiers to a called function. (closes #9751)
文件: src/userfunc.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4366
问题: Not enough tests for command line completion.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #9760)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim,
src/testdir/test_usercommands.vim
Patch 8.2.4367
问题: Calling in_vim9script() multiple times.
解决方案: Call it once and keep the result.
文件: src/userfunc.c, src/eval.c
Patch 8.2.4368
问题: Amiga: a few compiler warnings.
解决方案: Adjust #ifdefs. Add "UNUSED". (Ola Söder, closes #9756,
closes #9757)
文件: src/term.c, src/os_amiga.c
Patch 8.2.4369
问题: Redundant #ifdef argument.
解决方案: Remove unused MSWIN. (Ola Söder, closes #9758)
文件: src/feature.h
Patch 8.2.4370
问题: MS-Windows: libsodium.dll not included with the installer.
解决方案: Add the file to the installer if it exists. (Christian Brabandt,
closes #9762)
文件: nsis/gvim.nsi
Patch 8.2.4371
问题: Vim9: can create a script variable from a legacy function.
解决方案: Disallow creating a script variable from a function.
文件: src/evalvars.c, src/errors.h, src/testdir/test_vim9_script.vim
Patch 8.2.4372
问题: Filetype detection from file contents is in legacy script.
解决方案: Use a compiled function for filetype detection.
文件: runtime/scripts.vim, runtime/autoload/dist/script.vim
Patch 8.2.4373
问题: Expression test fails.
解决方案: Make the test work with latest Vim9 syntax.
文件: src/testdir/test_expr.vim
Patch 8.2.4374
问题: Unreachable code.
解决方案: Remove outdated code lines.
文件: src/vim9compile.c
Patch 8.2.4375
问题: ctx_imports is not used.
解决方案: Delete ctx_imports. Add missing dependency.
文件: src/vim9.h, src/vim9compile.c, src/proto/vim9compile.pro,
src/eval.c, src/evalfunc.c, src/evalvars.c, src/userfunc.c,
src/vim9expr.c, src/vim9script.c, src/Makefile
Patch 8.2.4376
问题: Not enough tests for command line completion.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #9771)
文件: src/testdir/test_cmdline.vim, src/testdir/test_usercommands.vim
Patch 8.2.4377
问题: CI steps for Windows are a bit unorganized.
解决方案: Organize CI test steps on Windows. (Ozaki Kiichi, closes #9764)
文件: .github/workflows/ci.yml
Patch 8.2.4378
问题: Incsearch highlight broken when calling searchcount() in 'tabLine'
function. (Mirko Palmer)
解决方案: Save and restore the incsearch state. (Christian Brabandt,
closes #9763, closes #9633)
文件: src/search.c, src/testdir/test_search_stat.vim,
src/testdir/dumps/Test_searchstat_inc_1.dump,
src/testdir/dumps/Test_searchstat_inc_2.dump,
src/testdir/dumps/Test_searchstat_inc_3.dump
Patch 8.2.4379
问题: An empty change is reported to a listener.
解决方案: Do not report an empty change. (closes #9768) Remove unused
return value.
文件: src/undo.c, src/change.c, src/testdir/test_listener.vim
Patch 8.2.4380
问题: Small differences between Chinese translation files.
解决方案: Add rule for converting UTF-8 to gb2312. (closes #9773)
文件: src/po/Makefile, src/po/Make_all.mak
Patch 8.2.4381 (after 8.2.4380)
问题: Translation file listed twice.
解决方案: Remove one entry.
文件: src/po/Make_all.mak
Patch 8.2.4382 (after 8.2.4346)
问题: A custom 'tabline' may cause Esc to work like Enter on the
command line when the popup menu is displayed.
解决方案: Save and restore KeyTyped. (closes #9776)
文件: src/drawscreen.c, src/screen.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_40.dump
Patch 8.2.4383
问题: Vim9: unused code lines.
解决方案: Rely on either "cctx" or "cstack" to not be NULL.
文件: src/vim9compile.c
Patch 8.2.4384
问题: Vim9: error message not tested, some code not tested.
解决方案: Add a couple of test cases. Give an error for a command modifier
without a command.
文件: src/errors.h, src/vim9compile.c, src/ex_docmd.c,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_cmd.vim
Patch 8.2.4385 (after 8.2.4384)
问题: Cannot build tiny version.
解决方案: Adjust #ifdefs.
文件: src/errors.h
Patch 8.2.4386 (after 8.2.4384)
问题: Still cannot build tiny version.
解决方案: Adjust #ifdefs.
文件: src/ex_docmd.c
Patch 8.2.4387
问题: Command line completion doesn't always work properly.
解决方案: Adjust triggering after a "|". Add more tests. (Yegappan
Lakshmanan, closes #9779)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.4388
问题: Dead code in op_insert().
解决方案: Remove condition and else block. (closes #9782)
文件: src/ops.c
Patch 8.2.4389
问题: screenpos() does not handle a position in a closed fold.
解决方案: Check if the position is inside a closed fold. (closes #9778)
文件: src/move.c, src/testdir/test_cursor_func.vim
Patch 8.2.4390
问题: Vim9: list from declaration with inferred type does not set the
type on the value.
解决方案: 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".
文件: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4391
问题: Command line executed when typing Esc in the GUI.
解决方案: Move saving/restoring KeyTyped to build_stl_str_hl().
(closes #9783)
文件: src/buffer.c, src/screen.c
Patch 8.2.4392 (after 8.2.4002)
问题: MS-Windows with VIMDLL: Escaping CSI is wrong.
解决方案: Put back #ifdef. (Ken Takata, closes #9769)
文件: src/getchar.c
Patch 8.2.4393
问题: Possible number overflow with nested folds.
解决方案: Avoid a negative line number.
文件: src/fold.c
Patch 8.2.4394 (after 8.2.4392)
问题: UTF8 select mode test fails on MS-Windows.
解决方案: Revert the #ifdef change.
文件: src/getchar.c
Patch 8.2.4395
问题: Some code lines not covered by tests.
解决方案: Add a few more test cases. Fix getting more than one error for
invalid assignment.
文件: src/evalvars.c, src/errors.h, src/vim9compile.c,
src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.4396 (after 8.2.4395)
问题: Python3 test fails.
解决方案: Remove "let".
文件: src/testdir/test_vim9_func.vim
Patch 8.2.4397
问题: Crash when using many composing characters in error message.
解决方案: Use mb_cptr2char_adv() instead of mb_ptr2char_adv().
文件: src/testing.c, src/testdir/test_assert.vim
Patch 8.2.4398
问题: Some command completion functions are too long.
解决方案: Refactor code into separate functions. Add a few more tests.
(Yegappan Lakshmanan, closes #9785)
文件: src/cmdexpand.c, src/ex_getln.c, src/usercmd.c,
src/proto/usercmd.pro, src/testdir/test_cmdline.vim
Patch 8.2.4399
问题: Crash after ml_get error.
解决方案: When returning "???" flush the line and set ml_line_lnum.
文件: src/memline.c
Patch 8.2.4400 (after 8.2.4394)
问题: MS-Windows: cannot use the mouse in the console with VIMDLL.
解决方案: use add_char2buf() instead of fix_input_buffer(). (closes #9784,
closes #9769)
文件: src/getchar.c
Patch 8.2.4401
问题: Map listing does not clear the rest of the command line.
解决方案: Call msg_clear_eos(). (closes #5623, closes #5962)
文件: src/map.c, src/testdir/test_mapping.vim,
src/testdir/dumps/Test_map_list_1.dump
Patch 8.2.4402
问题: Missing parenthesis may cause unexpected problems.
解决方案: Add more parenthesis is macros. (closes #9788)
文件: src/autocmd.c, src/charset.c, src/drawline.c, src/drawscreen.c,
src/evalfunc.c, src/fileio.c, src/fold.c, src/getchar.c,
src/highlight.c, src/memline.c, src/normal.c, src/quickfix.c,
src/regexp.c, src/search.c, src/sha256.c, src/spell.c,
src/spellfile.c, src/spellsuggest.c, src/syntax.c, src/window.c
Patch 8.2.4403
问题: ml_get error with nested folds and deleting lines.
解决方案: Correct the last line number before calling hasFoldingWin().
文件: src/change.c
Patch 8.2.4404
问题: Vim9: some code not covered by tests.
解决方案: Add a few specific test cases.
文件: src/vim9execute.c, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_import.vim
Patch 8.2.4405
问题: Compiler warning for unused variable without the +folding feature.
(Tony Mechelynck)
解决方案: Add #ifdef.
文件: src/change.c
Patch 8.2.4406
问题: Expand functions use confusing argument names.
解决方案: Rename "file" to "match". Refactor some completion code. Add a
few more tests. (Yegappan Lakshmanan, closes #9790)
文件: src/cmdexpand.c, src/testdir/test_usercommands.vim
Patch 8.2.4407
问题: Vim9: some code not covered by tests.
解决方案: Add more tests. Avoid giving two errors. Remove dead code.
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_func.vim
Patch 8.2.4408
问题: Vim9: some code not covered by tests.
解决方案: Add a few more tests. Correct error message. Allow unlet on dict
with a number key.
文件: src/vim9execute.c, src/errors.h, src/testdir/test_vim9_assign.vim
Patch 8.2.4409
问题: Vim9: some code not covered by tests.
解决方案: Add a few more tests. Fix reported line number.
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.4410
问题: Vim9: some code not covered by tests.
解决方案: Add a few more tests. Remove dead code.
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_script.vim
Patch 8.2.4411
问题: Bicep files are not recognized.
解决方案: Match *.bicep files. (Dundar Goc, closes #9791)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4412
问题: Translation cleanup script does not remove empty lines at end.
解决方案: Remove empty lines at the end. (Ken Takata, closes #9794)
文件: src/po/cleanup.vim
Patch 8.2.4413
问题: Vim9: Coverity warns for using NULL pointer.
解决方案: Give an internal error when funcref function can't be found.
文件: src/vim9execute.c
Patch 8.2.4414
问题: Solidity files are not recognized.
解决方案: Add the *.sol pattern. (Dundar Goc, closes #9792)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4415
问题: Function argument name conflicts with C++ keyword.
解决方案: Rename the argument.
文件: src/usercmd.c, src/proto/usercmd.pro
Patch 8.2.4416
问题: Vim9: using a script-local function requires using "s:" when
setting 'completefunc'.
解决方案: Do not require "s:" in Vim9 script. (closes #9796)
文件: runtime/doc/options.txt, src/userfunc.c,
src/testdir/test_ins_complete.vim
Patch 8.2.4417 (after 8.2.4416)
问题: Using NULL pointer.
解决方案: Set offset after checking for NULL pointer.
文件: src/userfunc.c
Patch 8.2.4418
问题: Crash when using special multi-byte character.
解决方案: Don't use isalpha() for an arbitrary character.
文件: src/charset.c, src/proto/charset.pro, src/filepath.c,
src/testdir/test_autochdir.vim
Patch 8.2.4419
问题: Illegal memory access when using exactly 20 highlights.
解决方案: Add one more item in the array. (Brandon Richardson,
closes #9800)
文件: src/buffer.c, src/testdir/test_tabline.vim
Patch 8.2.4420
问题: Menu translations are inconsistent.
解决方案: Add a Makefile to convert between encodings. (Ada (Haowen) Yu,
closes #9801)
文件: runtime/lang/Makefile, runtime/lang/menu_af_af.latin1.vim,
runtime/lang/menu_ca_es.latin1.vim,
runtime/lang/menu_chinese_gb.936.vim,
runtime/lang/menu_chinese_taiwan.950.vim,
runtime/lang/menu_cs_cz.iso_8859-2.vim,
runtime/lang/menu_cs_cz.utf-8.vim,
runtime/lang/menu_czech_czech_republic.1250.vim,
runtime/lang/menu_czech_czech_republic.ascii.vim,
runtime/lang/menu_da.utf-8.vim,
runtime/lang/menu_de_de.latin1.vim,
runtime/lang/menu_eo.utf-8.vim,
runtime/lang/menu_es_es.latin1.vim,
runtime/lang/menu_fi_fi.latin1.vim,
runtime/lang/menu_fr_fr.latin1.vim,
runtime/lang/menu_hu_hu.iso_8859-2.vim,
runtime/lang/menu_hu_hu.utf-8.vim,
runtime/lang/menu_is_is.latin1.vim,
runtime/lang/menu_it_it.latin1.vim,
runtime/lang/menu_ja_jp.euc-jp.vim,
runtime/lang/menu_ja_jp.utf-8.vim,
runtime/lang/menu_japanese_japan.932.vim,
runtime/lang/menu_ko_kr.euckr.vim,
runtime/lang/menu_ko_kr.utf-8.vim,
runtime/lang/menu_nl_nl.latin1.vim,
runtime/lang/menu_no_no.latin1.vim,
runtime/lang/menu_pl_pl.iso_8859-2.vim,
runtime/lang/menu_pl_pl.utf-8.vim,
runtime/lang/menu_polish_poland.1250.vim,
runtime/lang/menu_pt_br.vim, runtime/lang/menu_pt_pt.vim,
runtime/lang/menu_ru.utf-8.vim,
runtime/lang/menu_ru_ru.koi8-r.vim,
runtime/lang/menu_ru_ru.utf-8.vim, runtime/lang/menu_ru_ru.vim,
runtime/lang/menu_sk_sk.iso_8859-2.vim,
runtime/lang/menu_sl_si.cp1250.vim,
runtime/lang/menu_sl_si.latin2.vim,
runtime/lang/menu_sl_si.utf-8.vim,
runtime/lang/menu_slovak_slovak_republic.1250.vim,
runtime/lang/menu_sr_rs.ascii.vim,
runtime/lang/menu_sr_rs.iso_8859-2.vim,
runtime/lang/menu_sr_rs.iso_8859-5.vim,
runtime/lang/menu_sr_rs.utf-8.vim,
runtime/lang/menu_sv_se.latin1.vim,
runtime/lang/menu_tr_tr.cp1254.vim,
runtime/lang/menu_tr_tr.iso_8859-9.vim,
runtime/lang/menu_tr_tr.utf-8.vim,
runtime/lang/menu_uk_ua.cp1251.vim,
runtime/lang/menu_uk_ua.koi8-u.vim,
runtime/lang/menu_uk_ua.utf-8.vim, runtime/lang/menu_vi_vn.vim,
runtime/lang/menu_zh_cn.utf-8.vim,
runtime/lang/menu_zh_tw.utf-8.vim
Patch 8.2.4421
问题: Some installed files and directories have wrong permissions.
解决方案: Adjust the Makefile and shell to set permissions. (closes #9793)
文件: src/Makefile, src/installman.sh
Patch 8.2.4422
问题: Autochdir test fails on MS-Windows.
解决方案: Expect another error on MS-Windows.
文件: src/testdir/test_autochdir.vim
Patch 8.2.4423
问题: "make nvcmdidxs" fails.
解决方案: Use "-S" instead of "-u" to source the script.
文件: src/Makefile
Patch 8.2.4424
问题: ".gts" and ".gjs" files are not recognized.
解决方案: Recognize Glimmer flavored typescript and javascript.
(closes #9799)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4425
问题: map() function does not check function arguments at compile time.
解决方案: Give an error if the arguments of a map() function are wrong.
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.4426
问题: map() function on string and blob does not check argument types at
compile time.
解决方案: Check string and blob argument types. Support "0z1234->func()".
文件: src/vim9compile.c, src/evalfunc.c, src/ex_docmd.c,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4427
问题: getchar() may return modifiers if no character is available.
解决方案: Do not process modifiers when there is no character. (closes #9806)
文件: src/getchar.c, src/testdir/test_functions.vim
Patch 8.2.4428
问题: Crash when switching tabpage while in the cmdline window.
解决方案: Disallow switching tabpage when in the cmdline window.
文件: src/window.c, src/proto/window.pro, src/evalvars.c,
src/evalvars.c, src/usercmd.c
Patch 8.2.4429
问题: Using script-local function from the wrong script when using a
partial. (Yegappan Lakshmanan)
解决方案: Include the script ID in the partial name.
文件: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
src/vim9type.c, src/testdir/test_vim9_import.vim
Patch 8.2.4430
问题: GTK: crash when using 'guiligatures' and reading from stdin.
解决方案: Make a copy of the message. (Amon Sha, closes #9719, closes #9814)
文件: src/fileio.c
Patch 8.2.4431
问题: Unnecessary condition when assigning to a variable.
解决方案: Remove the condition.
文件: src/evalvars.c
Patch 8.2.4432 (after 8.2.4428)
问题: Cannot use settabvar() while the cmdline window is open.
解决方案: Only give an error when actually switching tabpage.
(closes #9813)
文件: src/window.c
Patch 8.2.4433
问题: CI: cannot see interface versions for MS-Windows.
解决方案: List the interface versions. (Ken Takata, closes #9811)
文件: .github/workflows/ci.yml
Patch 8.2.4434
问题: Duplicate check for cmdline window.
解决方案: Remove the second check. (Sean Dewar, closes #9816)
文件: src/window.c
Patch 8.2.4435
问题: Dead code in checking map() arguments. (Dominique Pellé)
解决方案: Remove the first return statement. (closes #9815)
文件: src/evalfunc.c
Patch 8.2.4436
问题: Crash with weird 'vartabstop' value.
解决方案: Check for running into the end of the line.
文件: src/indent.c, src/testdir/test_vartabs.vim
Patch 8.2.4437
问题: Vartabs test fails on MS-Windows.
解决方案: Use iso8859-1 'encoding'. (Ken Takata, closes #9818)
文件: src/testdir/test_vartabs.vim
Patch 8.2.4438
问题: Crash on exit when using cmdline window.
解决方案: Reset "cmdwin_type" before exiting. (closes #9817)
文件: src/ui.c, src/testdir/test_exit.vim
Patch 8.2.4439
问题: Accepting "iso8859" 'encoding' as "iso-8859-".
解决方案: use "iso8859" as "iso-8859-1".
文件: src/mbyte.c, src/testdir/test_options.vim
Patch 8.2.4440
问题: Crash with specific regexp pattern and string.
解决方案: Stop at the start of the string.
文件: src/regexp_bt.c, src/testdir/test_regexp_utf8.vim
Patch 8.2.4441
问题: Vim9: function argument of filter() not checked like map().
解决方案: Also check the function argument of filter().
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4442 (after 8.2.4438)
问题: Test for error reading input fails on MS-Windows.
解决方案: Don't run the test on MS-Windows.
文件: src/testdir/test_exit.vim
Patch 8.2.4443 (after 8.2.4440)
问题: Regexp pattern test fails on Mac.
解决方案: Do not use a swapfile for the buffer.
文件: src/testdir/test_regexp_utf8.vim
Patch 8.2.4444
问题: Beep caused by test. ASAN reports leaks.
解决方案: Do not put a NL at the end of the script. Make the text work on
MS-Windows. Do not run the test with ASAN.
文件: src/testdir/test_exit.vim
Patch 8.2.4445
问题: Exit test fails on MS-Windows anyway.
解决方案: Skip the test on MS-Windows.
文件: src/testdir/test_exit.vim
Patch 8.2.4446
问题: Vim9: cannot refer to a global function like a local one.
解决方案: When g:name is not a variable but a function, use a function
reference. (closes #9826)
文件: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4447
问题: Vim9: can still use s:var in a compiled function.
解决方案: Disallow using s:var for Vim9 script. (closes #9824)
文件: runtime/doc/vim9.txt, src/vim9expr.c, src/vim9compile.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.4448 (after 8.2.4447)
问题: Filetype detection is failing.
解决方案: Do not use "s:" where it is no longer allowed.
文件: runtime/autoload/dist/ft.vim,
Patch 8.2.4449
问题: vim9: function argument of sort() not checked at compile time.
解决方案: Add a compile time check.
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4450 (after 8.2.4449)
问题: List sort test fails.
解决方案: Pass a valid "how" argument.
文件: src/testdir/test_listdict.vim
Patch 8.2.4451 (after 8.2.4450)
问题: sort() fails when ignoring case.
解决方案: Accept a number one argument in sort().
文件: src/evalfunc.c, src/testdir/test_listdict.vim
Patch 8.2.4452
问题: Test for what 8.2.4436 fixes does not check for regression.
解决方案: Set several options. (Ken Takata, closes #9830)
文件: src/testdir/test_vartabs.vim
Patch 8.2.4453
问题: :helpgrep may free an option that was not allocated. (Yegappan
Lakshmanan)
解决方案: Check if the value was allocated.
文件: src/option.c, src/proto/option.pro, src/quickfix.c,
src/testdir/test_quickfix.vim
Patch 8.2.4454
问题: Resetting cmdwin_type only for one situation.
解决方案: Reset cmdwin_type before closing windows. (closes #9822)
文件: src/ui.c, src/window.c, src/testdir/test_exit.vim
Patch 8.2.4455
问题: Accepting one and zero for the second sort() argument is strange.
解决方案: Disallow using one and zero in Vim9 script.
文件: runtime/doc/builtin.txt, src/evalfunc.c, src/list.c,
src/testdir/test_listdict.vim
Patch 8.2.4456
问题: Terminal test may fail on some machines.
解决方案: Increase wait time. (Zdenek Dohnal, closes #9834)
文件: src/testdir/test_terminal.vim
Patch 8.2.4457
问题: The GPM library can only be linked statically.
解决方案: Make it possible to load the GPM library dynamically. (Damien)
文件: runtime/doc/various.txt, src/config.h.in, src/configure.ac,
src/Makefile, src/evalfunc.c, src/feature.h, src/os_unix.c,
src/proto/os_unix.pro, src/version.c
Patch 8.2.4458
问题: Vim9: compiling filter() call fails with funcref that has unknown
arguments.
解决方案: Do not check the arguments if they are unknown at compile time.
(closes #9835)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4459
问题: Vim9: compiling sort() call fails with a funcref that has unknown
arguments.
解决方案: Do not check the arguments if they are unknown at compile time.
(closes #9835)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4460
问题: Vim9: wrong error for defining dict function.
解决方案: Explicitly check for trying to define a dict function.
(closes 9827)
文件: src/errors.h, src/userfunc.c, src/vim9compile.c,
src/testdir/test_vim9_func.vim
Patch 8.2.4461
问题: MS-Windows: garbage characters on stdout with VIMDLL.
解决方案: Don't call gui_focus_change() when about to quit. (Ken Takata,
closes #9840)
文件: src/gui_w32.c
Patch 8.2.4462
问题: Not enough testing for quickfix code.
解决方案: Add more tests. Fix uncovered problem. (Yegappan Lakshmanan,
closes #9839)
文件: src/quickfix.c, src/window.c, src/testdir/test_makeencoding.vim,
src/testdir/test_quickfix.vim
Patch 8.2.4463
问题: Completion only uses strict matching.
解决方案: Add the "fuzzy" item for 'wildoptions'. (Yegappan Lakshmanan,
closes #9803)
文件: runtime/doc/options.txt, src/buffer.c, src/cmdexpand.c,
src/option.c, src/option.h, src/optionstr.c,
src/proto/cmdexpand.pro, src/proto/option.pro,
src/proto/search.pro, src/search.c, src/structs.h,
src/testdir/gen_opt_test.vim, src/testdir/test_cmdline.vim
Patch 8.2.4464
问题: Dtrace files are recognized as filetype D.
解决方案: Add a pattern for Dtrace files. (Teubel György, closes #9841)
Add some more testing.
文件: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim
Patch 8.2.4465
问题: Fuzzy completion does not order matches properly.
解决方案: Do not use regular expression match. (Yegappan Lakshmanan,
closes #9843)
文件: src/cmdexpand.c, src/search.c, src/testdir/test_cmdline.vim
Patch 8.2.4466
问题: MS-Windows: illegal memory access in installer when using
"create-directories" as the final argument.
解决方案: Check the argument count. (Cam Sinclair, closes #9844)
文件: src/dosinst.c
Patch 8.2.4467
问题: Running filetype test leaves file behind.
解决方案: Delete the file.
文件: src/testdir/test_filetype.vim
Patch 8.2.4468
问题: Coverity warns for uninitialized struct member.
解决方案: Set color.index to zero.
文件: src/terminal.c
Patch 8.2.4469
问题: Coverity warns for uninitialized variable.
解决方案: Set the value to zero.
文件: src/ex_getln.c
Patch 8.2.4470
问题: Coverity warns for uninitialized variable.
解决方案: Set can_spell to zero.
文件: src/drawline.c
Patch 8.2.4471
问题: Coverity warns for uninitialized variable.
解决方案: Set flags to zero.
文件: src/vim9cmds.c
Patch 8.2.4472
问题: Coverity warns for use of a freed function name.
解决方案: Only check an autoload name when is prefixed.
文件: src/userfunc.c
Patch 8.2.4473
问题: Coverity warns for not checking return value of ftell().
解决方案: Bail out if ftell() returns a negative value.
文件: src/spellfile.c
Patch 8.2.4474
问题: Memory allocation failures not tested in quickfix code.
解决方案: Add alloc IDs and tests. (Yegappan Lakshmanan, closes #9848)
文件: src/alloc.h, src/quickfix.c, src/vim.h,
src/testdir/test_quickfix.vim
Patch 8.2.4475
问题: Fuzzy cmdline completion does not work for lower case.
解决方案: Also use fuzzy completion for lower case input. (Yegappan
Lakshmanan, closes #9849)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.4476
问题: Operator name spelled wrong.
解决方案: Change trinary to ternary. (Goc Dundar, closes #9850)
文件: src/testdir/test_expr.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vimscript.vim
Patch 8.2.4477
问题: Crash when using fuzzy completion.
解决方案: Temporary fix: put back regexp. (closes #9851)
文件: src/cmdexpand.c
Patch 8.2.4478
问题: Crash when using fuzzy completion.
解决方案: Temporary fix: put back regexp. (closes #9852, closes #9851)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.4479
问题: No fuzzy completion for maps and abbreviations.
解决方案: Fuzzy complete maps and abbreviations. (Yegappan Lakshmanan,
closes #9856)
文件: src/cmdexpand.c, src/map.c, src/proto/map.pro, src/search.c,
src/testdir/test_cmdline.vim
Patch 8.2.4480
问题: Suspending with CTRL-Z does not work on Android.
解决方案: Do not handle SIGTSTP. (closes #9854)
文件: src/os_unix.c
Patch 8.2.4481
问题: Cmdline popup menu not removed when 'lazyredraw' is set.
解决方案: Temporarily reset 'lazyredraw' when removing the popup menu.
(closes #9857)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_41.dump
Patch 8.2.4482
问题: No fuzzy cmdline completion for user defined completion.
解决方案: Add fuzzy completion for user defined completion. (Yegappan
Lakshmanan, closes #9858)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim
Patch 8.2.4483
问题: Command completion makes two rounds to collect matches.
解决方案: Use a growarray to collect matches. (Yegappan Lakshmanan,
closes #9860)
文件: src/buffer.c, src/cmdexpand.c, src/map.c,
src/testdir/test_cmdline.vim
Patch 8.2.4484
问题: Vim9: some error messages are not tested.
解决方案: Add a few more test cases. Delete dead code.
文件: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
Patch 8.2.4485
问题: Compiler warning for uninitialized variable.
解决方案: Initialize the variable. (John Marriott)
文件: src/cmdexpand.c
Patch 8.2.4486
问题: MS-Windows GUI: slow scrolling with maximized window.
解决方案: Use a better way to check the window is on screen. (Ken Takata,
closes #9865)
文件: src/gui_w32.c
Patch 8.2.4487
问题: Vim9: cannot compare with v:null.
解决方案: Allow comparing anything with v:null. (closes #9866)
文件: src/vim9instr.c, src/typval.c, src/proto/typval.pro,
src/vim9.h, src/vim9execute.c, src/evalvars.c,
src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4488 (after 8.2.4487)
问题: Build error with +eval but without +channel or +job.
解决方案: Add #ifdef. (John Marriott)
文件: src/typval.c
Patch 8.2.4489 (after 8.2.4487)
问题: Failing test for comparing v:null with number.
解决方案: Allow comparing v:null with number in legacy script.
(Ken Takata, closes #9873) Also do this for float.
文件: src/typval.c, src/testdir/test_vimscript.vim
Patch 8.2.4490
问题: Terminal focus reporting only works for xterm-like terminals.
(Jonathan Rascher)
解决方案: Remove the "focus_mode" flag. (closes #9859)
文件: src/term.c
Patch 8.2.4491
问题: MS-Windows makefile dependencies are outdated.
解决方案: Update dependencies. (Ken Takata, closes #9876)
文件: src/Make_cyg_ming.mak, src/Make_mvc.mak
Patch 8.2.4492
问题: No error if an option is given an invalid value with
":let &opt = val".
解决方案: Give the error. (closes #9864)
文件: src/evalvars.c, src/testdir/test_options.vim
Patch 8.2.4493 (after 8.2.4492)
问题: Options test fails in the GUI.
解决方案: Do not save and restore 'term'.
文件: src/testdir/gen_opt_test.vim
Patch 8.2.4494
问题: The find_tags() function is much too long.
解决方案: Refactor the function. (Yegappan Lakshmanan, closes #9869)
文件: src/quickfix.c, src/tag.c, src/testdir/test_tagjump.vim
Patch 8.2.4495
问题: Help test fails in 24 line terminal.
解决方案: Use up to 23 lines for text.
文件: src/testdir/test_help.vim
Patch 8.2.4496 (after 8.2.4494)
问题: Coverity gives warnings after tags code refactoring.
解决方案: Avoid the warnings. (Yegappan Lakshmanan, closes #9882)
文件: src/tag.c
Patch 8.2.4497
问题: Wrong color for half of wide character next to pum scrollbar.
解决方案: Redraw the screen cell with the right color. (closes #9874)
文件: src/screen.c, src/testdir/test_ins_complete.vim,
src/testdir/dumps/Test_scrollbar_on_wide_char.dump
Patch 8.2.4498
问题: Using <Plug> with "noremap" does not work.
解决方案: Always remap <Plug>. (closes #9879, closes #9789)
文件: runtime/doc/map.txt, src/getchar.c, src/testdir/test_mapping.vim
Patch 8.2.4499
问题: Vim9: at the script level declarations leak from try block to
catch and finally block.
解决方案: End the block and start a new one. (closes #9883)
文件: src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.4500
问题: Vim9: can declare a global variable on the command line.
解决方案: Disallow declaring a variable on the command line. (closes #9881)
文件: src/errors.h, src/evalvars.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_script.vim,
src/testdir/dumps/Test_vim9_reject_declaration.dump
Patch 8.2.4501
问题: With 'showbreak' set and after the end of the line the cursor
may be displayed in the wrong position.
解决方案: Do not apply 'showbreak' after the end of the line. (closes #9884)
文件: src/charset.c, src/testdir/test_breakindent.vim,
src/testdir/dumps/Test_cursor_position_with_showbreak.dump
Patch 8.2.4502
问题: In the GUI a modifier is not recognized for the key typed after
CTRL-X, which may result in a mapping to be used. (Daniel
Steinberg)
解决方案: Recognize a modifier starting with CSI. (closes #9889)
文件: src/getchar.c, src/testdir/test_ins_complete.vim
Patch 8.2.4503
问题: Vim9: there is no point in supporting :Print and :mode.
解决方案: Do not recognize :Print and :mode as commands. (closes #9870)
文件: src/ex_docmd.c, src/testdir/test_vim9_script.vim
Patch 8.2.4504
问题: When there is a partially matching map and modifyOtherKeys is
active a full map may not work.
解决方案: Only simplify modifiers when there is no matching mapping.
(closes #8792)
文件: src/getchar.c, src/testdir/test_termcodes.vim
Patch 8.2.4505
问题: Vim9: outdated "autocmd nested" still works.
解决方案: Do not accept the :autocmd argument "nested" without "++" in Vim9
script.
文件: src/autocmd.c, src/errors.h, src/testdir/test_autocmd.vim
Patch 8.2.4506
问题: "pattern not found" for :global is not an error message.
解决方案: In Vim9 script make this an actual error, so that try/catch can be
used as expected.
文件: src/ex_cmds.c, src/errors.h, src/testdir/test_global.vim
Patch 8.2.4507 (after 8.2.4506)
问题: Test fails because of new error message.
解决方案: Avoid the test fails.
文件: src/testdir/test_vim9_cmd.vim
Patch 8.2.4508
问题: Vim9: cannot assign to a global variable on the command line.
解决方案: Allow using :vim9cmd for assignment on the command line.
文件: src/evalvars.c, src/testdir/test_vim9_script.vim,
src/testdir/dumps/Test_vim9_reject_declaration.dump,
src/testdir/dumps/Test_vim9_reject_declaration_1.dump,
src/testdir/dumps/Test_vim9_reject_declaration_2.dump
Patch 8.2.4509
问题: Vim9: can declare a variable with ":va".
解决方案: Disallow using ":va", require using ":var".
文件: src/evalvars.c, src/errors.h, src/vim9compile.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.4510
问题: Vim9: shortening commands leads to confusing script.
解决方案: 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".
文件: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/evalvars.c,
src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.4511
问题: Filetype test fails.
解决方案: Change "endw" to "endwhile".
文件: runtime/autoload/dist/ft.vim
Patch 8.2.4512
问题: The find_tags_in_file() function is much too long.
解决方案: Refactor into multiple smaller functions. (Yegappan Lakshmanan,
closes #9892)
文件: Filelist, src/Makefile, src/quickfix.c, src/tag.c,
src/testdir/test83-tags2, src/testdir/test83-tags3,
src/testdir/test_tagjump.vim
Patch 8.2.4513
问题: Window-local directory is not applied if 'acd' fails.
解决方案: Don't call do_autochdir(). (closes #9891)
文件: src/window.c, src/testdir/test_autochdir.vim
Patch 8.2.4514
问题: Vim9: some flow commands can be shortened.
解决方案: Also require using the full name for ":return", ":enddef",
":continue", ":export" and ":import".
文件: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4515
问题: Old substitute syntax is still supported.
解决方案: Disallow using backslash after ":s" in Vim9 script.
文件: src/ex_cmds.c, src/errors.h, src/testdir/test_substitute.vim
Patch 8.2.4516 (after 8.2.4515)
问题: Build failure without the +eval feature.
解决方案: Move error message outside of #ifdef.
文件: src/errors.h
Patch 8.2.4517
问题: MS-Windows: cannot specify location of sodium library.
解决方案: Allow for using a path for SODIUM. (Ken Takata, closes #9896)
文件: src/Make_cyg_ming.mak
Patch 8.2.4518
问题: The binary tag search feature is always enabled.
解决方案: Remove the #ifdefs. Add a few more tests. (Yegappan Lakshmanan,
closes #9893)
文件: src/evalfunc.c, src/feature.h, src/tag.c, src/version.c,
src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim
Patch 8.2.4519
问题: Vim9: Can still use ":fini" and ":finis" for ":finish".
解决方案: Require using ":finish".
文件: src/ex_cmds.h, src/testdir/test_vim9_script.vim
Patch 8.2.4520
问题: Using wrong highlight for cursor line number.
解决方案: Take filler lines into account when using CursorLineNr.
(closes #9897)
文件: src/drawline.c, src/testdir/test_diffmode.vim,
src/testdir/dumps/Test_diff_with_cursorline_number_01.dump,
src/testdir/dumps/Test_diff_with_cursorline_number_02.dump
Patch 8.2.4521 (after 8.2.4520)
问题: Build failure without the +diff feature. (John Marriott)
解决方案: Define filler+lines if not declaring it.
文件: src/drawline.c
Patch 8.2.4522 (after 8.2.4492)
问题: GUI test fails with Motif. (Dominique Pellé)
解决方案: Remove using an invalid value for 'guifontset'.
文件: src/testdir/test_gui.vim
Patch 8.2.4523
问题: When gvim is started maximized the 'window' option isn't set
properly. (Christian J. Robinson)
解决方案: Check if 'windows' was already set or not. (Ken Takata,
closes #9904)
文件: src/term.c
Patch 8.2.4524
问题: MS-Windows: cannot build with some sodium libraries.
解决方案: Make the DLL name configurable. Add build instructions.
(Ken Takata, closes #9905)
文件: src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
src/crypt.c
Patch 8.2.4525
问题: Some GUI tests don't work on Athena.
解决方案: Skip tests that won't work. (Yegappan Lakshmanan, closes #9902)
文件: src/testdir/test_gui.vim
Patch 8.2.4526
问题: Vim9: cannot set variables to a null value.
解决方案: Add null_list, null_job, etc.
文件: runtime/doc/vim9.txt, src/eval.c, src/proto/eval.pro,
src/vim9expr.c, src/vim9script.c, src/vim9instr.c,
src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/vim9type.c,
src/evalvars.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_expr.vim
Patch 8.2.4527
问题: The Athena GUI is old and does not work well.
解决方案: Remove the Athena GUI from configure to find out who still wants
support for this GUI.
文件: src/configure.ac, src/auto/configure, src/Makefile
Patch 8.2.4528
问题: Crash when using null_function for a partial.
解决方案: Don't call fname_trans_sid() with NULL. (closes #9908)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.4529
问题: Vim9: comparing partial with function fails.
解决方案: Support this comparison. Avoid a crash. (closes #9909)
Add more test cases.
文件: src/vim9instr.c, src/userfunc.c, src/vim9type.c,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vimscript.vim
Patch 8.2.4530
问题: Making comparison with null work changes legacy behavior.
解决方案: Only use the better comparison in Vim9 script. (closes #9910)
文件: src/typval.c, src/testdir/test_expr.vim
Patch 8.2.4531
问题: LGTM warnings for condition always true and buffer size too small.
解决方案: Remove the useless condition. Make the buffer larger. (Goc
Dundar, closes #9914)
文件: src/charset.c, src/term.c
Patch 8.2.4532
问题: Suspending with CTRL-Z does not work on OpenBSD.
解决方案: Adjust #ifdef for SIGTSTP. (Stuart Henderson, closes #9912)
文件: src/os_unix.c
Patch 8.2.4533
问题: Vim9: no test that after assigning null the type is still checked.
解决方案: Add a test.
文件: src/testdir/test_vim9_assign.vim
Patch 8.2.4534
问题: Vim9: "is" operator with empty string and null returns true.
解决方案: Consider empty string and null to be different for "is".
文件: src/typval.c, src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4535
问题: Filename modifier ":8" removes the filename.
解决方案: Use strncpy() instead of vim_strncpy(). (Christian Brabandt,
closes #9918, closes #8600)
文件: src/filepath.c, src/testdir/test_shortpathname.vim
Patch 8.2.4536 (after 8.2.4534)
问题: Debugger test fails when breaking on expression.
解决方案: Compare strings with "==" instead of "is".
文件: src/debugger.c
Patch 8.2.4537
问题: Output from linter and language server shows up in git.
解决方案: Add patterns to .gitignore. (Goc Dundar, closes #9925)
文件: .gitignore
Patch 8.2.4538
问题: The find_tags_in_file() function is too long.
解决方案: Refactor into smaller functions. (Yegappan Lakshmanan,
closes #9920)
文件: src/tag.c, src/testdir/test_tagjump.vim
Patch 8.2.4539
问题: When comparing special v:none and v:null are handled the same when
compiling.
解决方案: Pass more information so that v:none can be handled differently at
compile time. (issue #9923)
文件: src/vim9instr.c, src/vim9compile.c, src/globals.h,
src/testdir/test_vim9_expr.vim
Patch 8.2.4540
问题: Line number for error is off by one.
解决方案: Remember the line number of the comparison. (closes #9923)
文件: src/eval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4541
问题: Crash in debugger when a variable is not available in the current
block.
解决方案: Check for a NULL name. (closes #9926)
文件: src/vim9execute.c, src/testdir/test_debugger.vim
Patch 8.2.4542
问题: Vim9: "break" inside try/catch not handled correctly.
解决方案: First jump to :endtry. (closes #9927)
文件: src/vim9cmds.c, src/vim9.h, src/testdir/test_vim9_script.vim
Patch 8.2.4543
问题: Coverity warning for refactored tag search code.
解决方案: Avoid the warnings. Update comments. Add one more test case.
(Yegappan Lakshmanan, closes #9928)
文件: src/tag.c, src/testdir/test_tagjump.vim
Patch 8.2.4544
问题: Coverity warnings for not using returned value.
解决方案: Assign to vim_ignored.
文件: src/tag.c
Patch 8.2.4545
问题: MS-Windows: the installed icon is low resolution.
解决方案: Use a better icon. Install vim.ico. (Christian Brabandt,
closes #9931, closes #9930)
文件: Filelist, nsis/gvim.nsi, src/vim.ico, runtime/bitmaps/vim.ico
Patch 8.2.4546
问题: Duplicate #undef.
解决方案: Remove one #undef. (closes #9932)
文件: src/regexp_nfa.c
Patch 8.2.4547
问题: The neXTaw GUI is old and does not work well.
解决方案: Remove the neXTaw GUI from configure to find out who still wants
support for this GUI.
文件: src/configure.ac, src/auto/configure, src/Makefile
Patch 8.2.4548
问题: Script-local function is deleted when used in a funcref.
解决方案: Do not consider a function starting with "<SNR>" reference
counted. (closes #9916, closes #9820)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.4549
问题: Cannot build with Motif and editres. (Tony Mechelynck)
解决方案: Fix configure mistake.
文件: src/configure.ac, src/auto/configure
Patch 8.2.4550
问题: Motif: cannot set the color of the scrollbar thumb.
解决方案: Remove #ifdef.
文件: src/gui_motif.c
Patch 8.2.4551
问题: When mapping <Esc> terminal codes are not recognized.
解决方案: Specifically recognize a mapping with just <Esc> and check for
terminal codes even though there is no partial mapping.
(closes #9903)
文件: src/getchar.c, src/testdir/test_termcodes.vim
Patch 8.2.4552
问题: In a :def function "put = expr" does not work.
解决方案: Skip over white space. (closes #9936)
文件: src/vim9cmds.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4553
问题: Linear tag search is a bit slow.
解决方案: Remove a vim_ftell() call. (Yegappan Lakshmanan, closes #9937)
文件: src/tag.c, src/testdir/test_taglist.vim
Patch 8.2.4554
问题: Vim9: using null values not sufficiently tested.
解决方案: Add more tests. Fix uncovered problem.
文件: src/vim9type.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.4555
问题: getmousepos() returns the wrong column. (Ernie Rael)
解决方案: Limit to the text size, not the number of bytes.
文件: src/mouse.c, src/testdir/test_functions.vim
Patch 8.2.4556
问题: Test fails without the +job or +channel feature. (Dominique Pellé)
解决方案: Adjust #ifdefs. Pass on skip flag. (closes #9942)
文件: src/eval.c, src/vim9compile.c
Patch 8.2.4557
问题: Confusing comment about 'cursorlineopt'.
解决方案: Adjust comment. (closes #9939) Add parenthesis around logical
OR.
文件: src/drawline.c
Patch 8.2.4558
问题: Motif: using default colors does not work as expected.
解决方案: Do not try to store the default colors, use the resources.
(closes #9933)
文件: src/gui_motif.c, src/gui.h
Patch 8.2.4559 (after 8.24555)
问题: getmousepos() returns the screen column. (Ernie Rael)
解决方案: Return the text column, as documented.
文件: src/mouse.c, src/testdir/test_functions.vim
Patch 8.2.4560
问题: Suspending with CTRL-Z does not work on DragonFlyBSD.
解决方案: Adjust #ifdef. (Ozaki Kiichi, closes #9943)
文件: src/os_unix.c
Patch 8.2.4561
问题: Build failure with some combination of features. (John Marriott)
解决方案: Adjust #ifdef.
文件: src/mouse.c
Patch 8.2.4562
问题: Linear tag search is not optimal.
解决方案: Improve linear tag search performance. (Yegappan Lakshmanan,
closes #9944)
文件: src/tag.c
Patch 8.2.4563
问题: "z=" in Visual mode may go beyond the end of the line.
解决方案: Adjust "badlen".
文件: src/spellsuggest.c, src/testdir/test_spell.vim
Patch 8.2.4564
问题: Running test leaves file behind. (Dominique Pellé)
解决方案: Run the profiling in a separate Vim instance. (closes #9952)
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4565
问题: No command line completion for :breakadd and :breakdel.
解决方案: Add completion for :breakadd and :breakdel. (Yegappan Lakshmanan,
closes #9950)
文件: runtime/doc/builtin.txt, src/cmdexpand.c, src/spellsuggest.c,
src/usercmd.c, src/vim.h, src/testdir/test_cmdline.vim,
src/testdir/test_writefile.vim
Patch 8.2.4566
问题: Check for existing buffer in session file does not work for files
in the home directory.
解决方案: Use fnamemodify(). (James Cherti, closes #9945) Add a test.
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.4567
问题: Bracketed paste doesn't work well in Visual linewise mode.
解决方案: Handle linewise Visual mode differently. (closes #9947)
文件: src/normal.c, src/testdir/test_paste.vim
Patch 8.2.4568
问题: getmousepos() does not compute the column below the last line.
解决方案: Also compute the column when the mouse is below the last line.
(Sean Dewar, closes #9946)
文件: src/mouse.c, src/testdir/test_functions.vim
Patch 8.2.4569
问题: Coverity warning for not using a return value.
解决方案: Add "(void)".
文件: src/popupwin.c
Patch 8.2.4570
问题: No command line completion for :profile and :profdel.
解决方案: Implement completion. (Yegappan Lakshmanan, closes #9955)
文件: src/cmdexpand.c, src/profiler.c, src/testdir/test_cmdline.vim,
src/testdir/test_profile.vim
Patch 8.2.4571
问题: Not all gdb files are recognized.
解决方案: Add a few more patterns for gdb. (Jade Lovelace, closes #9956)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4572
问题: Vim9: return type "any" is sometimes changed to first returned
type. (Virginia Senioria)
解决方案: Do not change the return type if declared as "any". (closes #9949)
文件: src/vim9cmds.c, src/testdir/test_vim9_func.vim
Patch 8.2.4573
问题: A nested function (closure) is compiled for debugging without
context.
解决方案: Check if a nested function is marked for debugging before
compiling it. Give an error when trying to compile a closure
without its context. (closes #9951)
文件: src/vim9compile.c, src/vim9execute.c, src/proto/vim9execute.pro,
src/vim9expr.c, src/errors.h
Patch 8.2.4574
问题: Vim9: test for profiling fails.
解决方案: Mark function for profiling earlier to avoid E1271.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4575
问题: Vim9: test for profiling still fails.
解决方案: Update flags for profiling and breakpoints when obtaining the
compile type. Do not set the FC_CLOSURE flag for a toplevel
function.
文件: src/vim.h, src/vim9compile.c, src/proto/vim9compile.pro,
src/eval.c, src/vim9execute.c, src/vim9expr.c, src/vim9instr.c,
src/vim9.h
Patch 8.2.4576
问题: Vim9: error for comparing with null can be annoying.
解决方案: Allow comparing anything with null. (closes #9948)
文件: src/vim9instr.c, src/typval.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4577
问题: Message test is flaky. (Elimar Riesebieter)
解决方案: Trigger the autocommand event only after startup is finished.
文件: src/testdir/test_messages.vim
Patch 8.2.4578
问题: No warning when an autoload script for completion function has an
error.
解决方案: Do not ignore errors when a function name is given with a dot or
'#' character. (closes #9958)
文件: src/eval.c, src/testdir/test_cmdline.vim
Patch 8.2.4579
问题: Cannot use page-up and page-down in the command line completion
popup menu.
解决方案: Check for to page-up and page-down keys. (Yegappan Lakshmanan,
closes #9960)
文件: src/cmdexpand.c, src/ex_getln.c, src/spellsuggest.c, src/vim.h,
src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_pum_42.dump,
src/testdir/dumps/Test_wildmenu_pum_43.dump,
src/testdir/dumps/Test_wildmenu_pum_44.dump,
src/testdir/dumps/Test_wildmenu_pum_45.dump,
src/testdir/dumps/Test_wildmenu_pum_46.dump,
src/testdir/dumps/Test_wildmenu_pum_47.dump,
src/testdir/dumps/Test_wildmenu_pum_48.dump,
src/testdir/dumps/Test_wildmenu_pum_49.dump,
src/testdir/dumps/Test_wildmenu_pum_50.dump
Patch 8.2.4580
问题: Vim9: incorrect error for shadowing variable.
解决方案: Do not pass the context when compiling a referenced function.
文件: src/vim9expr.c, src/testdir/test_vim9_func.vim
Patch 8.2.4581
问题: Null types not fully tested.
解决方案: Add some more tests using null types.
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.4582
问题: Useless code handling a type declaration.
解决方案: Remove the code and give an error.
文件: src/eval.c, src/errors.h, src/testdir/test_vim9_script.vim,
src/testdir/dumps/Test_misplaced_type.dump
Patch 8.2.4583 (after 8.2.4582)
问题: Screendump test fails.
解决方案: Check that making a screendump is possible.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4584 (after 8.2.4578)
问题: Error for using autoload function in custom completion.
解决方案: Do not check for errors when using an autoload function.
(closes #9962)
文件: src/eval.c, src/testdir/test_cmdline.vim
Patch 8.2.4585
问题: Cannot use keypad page-up/down for completion menu.
解决方案: Recognize the keypad keys. (Yegappan Lakshmanan, closes #9963)
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.4586
问题: Vim9: no error for using lower case name for "func" argument.
(Ernie Rael)
解决方案: Check the name as soon as the type is known.
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.4587
问题: Vim9: double free after unpacking a list.
解决方案: Make a copy of the value instead of moving it. (closes #9968)
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim
Patch 8.2.4588
问题: Mapping with key code after other matching mapping does not work.
解决方案: Change ">" to ">=". (closes #9903)
文件: src/getchar.c, src/testdir/test_termcodes.vim
Patch 8.2.4589
问题: Cannot index the g: dictionary.
解决方案: Recognize using "g:[key]". (closes #9969)
文件: src/ex_docmd.c, src/eval.c, src/vim9compile.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.4590
问题: Vim9: range type check has wrong offset.
解决方案: Adjust offset for CHECKTYPE. Remove other type check.
文件: src/vim9compile.c, src/vim9execute.c,
src/testdir/test_vim9_assign.vim
Patch 8.2.4591
问题: Cursor line not updated when a callback moves the cursor.
解决方案: Check if the cursor moved. (closes #9970)
文件: src/main.c, src/drawscreen.c, src/proto/drawscreen.pro,
src/testdir/test_cursorline.vim,
src/testdir/dumps/Test_cursorline_callback_1.dump
Patch 8.2.4592
问题: Search continues after giving E1204.
解决方案: Return failure after giving E1204. (closes #9972)
文件: src/regexp_nfa.c
Patch 8.2.4593
问题: Unnecessary call to redraw_later().
解决方案: Remove the call to redraw_later() in op_yank(). (closes #9971)
文件: src/register.c
Patch 8.2.4594
问题: Need to write script to a file to be able to source them.
解决方案: Make ":source" use lines from the current buffer. (Yegappan
Lakshmanan et al., closes #9967)
文件: runtime/doc/repeat.txt, runtime/doc/todo.txt, src/alloc.c,
src/digraph.c, src/eval.c, src/ex_cmds.h, src/scriptfile.c,
src/proto/scriptfile.pro, src/vim9script.c,
src/testdir/test_source.vim
Patch 8.2.4595
问题: X11: using --remote-wait may keep the CPU busy.
解决方案: Set the timeout for select() on every call. (Jacopo Secchiero,
closes #9973)
文件: src/if_xcmdsrv.c
Patch 8.2.4596
问题: Installing tutor binary may fail.
解决方案: Fix the dependency. (Sergei Trofimovich, closes #9978)
文件: src/Makefile
Patch 8.2.4597
问题: LuaV_debug() not covered by tests.
解决方案: Add a test. (Dominique Pellé, closes #9980)
文件: src/testdir/test_lua.vim
Patch 8.2.4598
问题: Profile completion test sometimes fails.
解决方案: Delete the .res file before running tests.
文件: src/testdir/runtest.vim
Patch 8.2.4599
问题: GTK: get assertion errors when scrolling a split window.
解决方案: Use GDK_IS_DRAWABLE() on the scrollbar window. (closes #9982)
文件: src/gui_gtk.c
Patch 8.2.4600
问题: Vim9: not enough test coverage for executing :def function.
解决方案: Add a few more tests. Fix inconsistencies.
文件: src/vim9execute.c, src/evalvars.c, src/proto/evalvars.pro,
src/testdir/test_listdict.vim, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_cmd.vim
Patch 8.2.4601
问题: Vim9: not enough test coverage for executing :def function.
解决方案: Add a few more tests.
文件: src/testdir/test_vim9_script.vim, src/testdir/test_vim9_func.vim,
src/testdir/test_vim9_cmd.vim
Patch 8.2.4602
问题: Vim9: not enough test coverage for executing :def function.
解决方案: Add a few more tests. Fix uncovered problem. Remove dead code.
文件: src/vim9execute.c, src/vim9.h, src/vim9instr.c,
src/proto/vim9instr.pro, src/vim9compile.c,
src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.4603
问题: Sourcing buffer lines is too complicated.
解决方案: Simplify the code. Make it possible to source Vim9 script lines.
(Yegappan Lakshmanan, closes #9974)
文件: runtime/doc/repeat.txt, src/ex_docmd.c, src/proto/scriptfile.pro,
src/scriptfile.c, src/structs.h, src/testdir/test_source.vim
Patch 8.2.4604
问题: Error for redefining a script item may be confusing.
解决方案: Put quotes around the name.
文件: src/errors.h
Patch 8.2.4605
问题: Error for arguments of remote_expr() even when the +clientserver
feature is not included.
解决方案: Move #ifdef.
文件: src/clientserver.c
Patch 8.2.4606 (after 8.2.4605)
问题: Test fails because of changed error message.
解决方案: Update the expected error message
文件: src/testdir/test_vim9_import.vim
Patch 8.2.4607
问题: Sourcing buffer lines may lead to errors for conflicts.
解决方案: Add the ++clear argument. (Yegappan Lakshmanan, closes #9991)
文件: runtime/doc/repeat.txt, src/scriptfile.c, src/vim9script.c,
src/proto/vim9script.pro, src/testdir/test_source.vim
Patch 8.2.4608
问题: getcompletion() does not work properly when 'wildoptions
contains "fuzzy".
解决方案: Do not use addstar(). (Yegappan Lakshmanan, closes #9992,
closes #9986)
文件: runtime/doc/builtin.txt, src/cmdexpand.c,
src/testdir/test_cmdline.vim
Patch 8.2.4609
问题: :unhide does not check for failing to close a window.
解决方案: When closing a window fails continue with the next one. Do not
try closing the autocmd window. (closes #9984)
文件: src/buffer.c, src/window.c, src/proto/window.pro,
src/testdir/test_autocmd.vim
Patch 8.2.4610
问题: Some conditions are always true.
解决方案: Remove the useless conditions. (closes #9993)
文件: src/clientserver.c, src/drawline.c, src/drawscreen.c,
src/ex_cmds.c, src/fileio.c, src/message.c, src/misc2.c,
src/ops.c, src/sign.c, src/spell.c, src/vim9cmds.c, src/window.c
Patch 8.2.4611
问题: Typos in tests; one lua line not covered by test.
解决方案: Fix typos. Add test case. (Dominique Pellé, closes #9994)
文件: src/testdir/test_breakindent.vim, src/testdir/test_crypt.vim,
src/testdir/test_cursorline.vim, src/testdir/test_digraph.vim,
src/testdir/test_gui.vim, src/testdir/test_lua.vim,
src/testdir/test_regexp_latin.vim, src/testdir/test_signals.vim,
src/testdir/test_spell.vim, src/testdir/test_statusline.vim,
src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim, src/testdir/test_vimscript.vim
Patch 8.2.4612
问题: Vim9: cannot use a recursive call in a nested function. (Sergey
Vlasov)
解决方案: Define the funcref before compiling the function. (closes #9989)
文件: src/vim9compile.c, src/vim9instr.c, src/proto/vim9instr.pro,
src/vim9expr.c, src/testdir/test_vim9_func.vim
Patch 8.2.4613
问题: Return type of swapfile_unchanged() is wrong.
解决方案: Use "int". (closes #10000 Yeah!)
文件: src/memline.c
Patch 8.2.4614
问题: Redrawing too much when 'cursorline' is set and jumping around.
解决方案: Rely on win_update() to redraw the current and previous cursor
line, do not mark lines as modified. (closes #9996)
文件: src/drawline.c, src/drawscreen.c, src/move.c, src/proto/move.pro,
src/option.c
Patch 8.2.4615
问题: Mapping with escaped bar does not work in :def function. (Sergey
Vlasov)
解决方案: Do not remove the backslash. (closes #10002)
文件: src/ex_docmd.c, src/proto/ex_docmd.pro, src/syntax.c,
src/vim9cmds.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4616
问题: Vim9: Declarations in a {} block of a user command do not use Vim9
rules if defined in a legacy script. (Yegappan Lakshmanan)
解决方案: Pretend the script is Vim9 script.
文件: src/usercmd.c, src/testdir/test_usercommands.vim
Patch 8.2.4617
问题: No completion for :scriptnames.
解决方案: Implement :scriptnames completion. (Yegappan Lakshmanan,
closes #10005)
文件: runtime/doc/builtin.txt, src/cmdexpand.c, src/ex_cmds.h,
src/scriptfile.c, src/usercmd.c, src/vim.h,
src/testdir/test_cmdline.vim, src/testdir/test_quickfix.vim
Patch 8.2.4618
问题: Command line completion does not recognize single letter commands.
解决方案: Use the condition from find_ex_command().
文件: src/ex_docmd.c
Patch 8.2.4619
问题: Mapping is cancelled when mouse moves and popup is visible.
解决方案: Only generate mouse moved events when a popup may use them.
(closes #10004)
文件: src/gui.c, src/globals.h, src/popupwin.c
Patch 8.2.4620 (after 8.2.4618)
问题: Two letter substitute commands don't work. (Yegappan Lakshmanan)
解决方案: Invert condition.
文件: src/ex_docmd.c
Patch 8.2.4621
问题: Crash when using the tabline right-click menu.
解决方案: Use XtPointer for XmNuserData. (closes #10009)
文件: src/gui_motif.c
Patch 8.2.4622
问题: Vim9: Crash with :execute and :finish. (Sergey Vlasov)
解决方案: Check for NULL. (closes #10011)
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.4623
问题: Coverity warns for using uninitialized field.
解决方案: Initialize the field to zero.
文件: src/ex_docmd.c
Patch 8.2.4624
问题: Old Coverity warning for resource leak.
解决方案: Close the file if memory allocation fails.
文件: src/diff.c
Patch 8.2.4625
问题: Old Coverity warning for resource leak.
解决方案: Call FreeWild() if expanding matches did not fail.
文件: src/help.c
Patch 8.2.4626
问题: Visual area not fully updated when removing sign in Visual mode
while scrolling.
解决方案: Adjust check for topline. (closes #10017)
文件: src/drawscreen.c, src/testdir/test_display.vim,
src/testdir/dumps/Test_display_scroll_update_visual.dump
Patch 8.2.4627
问题: flatten() does not use maxdepth correctly.
解决方案: Use a recursive implementation. (closes #10020)
文件: src/list.c, src/testdir/test_flatten.vim
Patch 8.2.4628
问题: Not enough testing for 2/3 letter substitute commands.
解决方案: Add more tests. (Yegappan Lakshmanan, closes #10019)
文件: src/testdir/test_cmdline.vim, src/testdir/test_substitute.vim
Patch 8.2.4629
问题: flattennew() makes a deep copy unnecessarily.
解决方案: Use a shallow copy. (issue #10012)
文件: src/list.c
Patch 8.2.4630
问题: 'cursorline' not always updated with 'cursorlineopt' is
"screenline".
解决方案: Call check_redraw_cursorline() more often. (closes #10013)
文件: src/normal.c, src/edit.c, src/testdir/test_cursorline.vim,
src/testdir/dumps/Test_cursorline_screenline_1.dump,
src/testdir/dumps/Test_cursorline_screenline_2.dump
Patch 8.2.4631
问题: Crash when switching window in BufWipeout autocommand.
解决方案: Put any buffer in the window to avoid it being NULL.
(closes #10024)
文件: src/window.c, src/buffer.c, src/testdir/test_autocmd.vim
Patch 8.2.4632
问题: Using freed memory in flatten().
解决方案: Clear typval after recursing into list.
文件: src/list.c
Patch 8.2.4633
问题: Visual range does not work before command modifiers.
解决方案: Move Visual range to after command modifiers.
文件: src/ex_docmd.c, src/testdir/test_source.vim
Patch 8.2.4634
问题: Vim9: cannot initialize a variable to null_list.
解决方案: Give negative count to NEWLIST. (closes #10027)
Also fix inconsistencies in comparing with null values.
文件: src/vim9instr.c, src/proto/vim9instr.pro, src/vim9.h,
src/vim9compile.c, src/vim9expr.c, src/vim9execute.c,
src/evalvars.c, src/typval.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4635 (after 8.2.4634)
问题: Tests using null list or dict fail.
解决方案: Only use the new rules for Vim9 script.
文件: src/evalvars.c
Patch 8.2.4636 (after 8.2.4633)
问题: Not using Visual range.
解决方案: Put the command pointer back to the range.
文件: src/ex_docmd.c
Patch 8.2.4637
问题: Warning for using uninitialized variable. (Tony Mechelynck)
解决方案: Initialize it.
文件: src/ex_docmd.c
Patch 8.2.4638
问题: Superfluous check if a redraw is needed for 'cursorline'.
解决方案: Remove check_redraw_cursorline(). (closes #10030, closes #10029)
文件: src/drawscreen.c, src/proto/drawscreen.pro, src/edit.c,
src/main.c, src/normal.c, src/move.c,
src/testdir/dumps/Test_cursorcolumn_callback_1.dump,
src/testdir/dumps/Test_relativenumber_callback_1.dump,
src/testdir/test_highlight.vim, src/testdir/test_number.vim
Patch 8.2.4639
问题: Not sufficient parenthesis in preprocessor macros.
解决方案: Add more parenthesis. (closes #10031)
文件: src/globals.h, src/gui.h, src/if_py_both.h, src/macros.h,
src/option.h, src/regexp.h, src/spell.h, src/structs.h, src/vim.h,
src/vim9.h
Patch 8.2.4640
问题: Some boolean options use "long" instead of "int".
解决方案: Adjust the type. (James McCoy, closes #10033)
文件: src/option.h
Patch 8.2.4641
问题: May mark the wrong window for redrawing.
解决方案: Use redraw_win_later(). (closes #10032)
文件: src/move.c
Patch 8.2.4642
问题: Vim9: in :def function script var cannot be null.
解决方案: Only initialize a script variable when not set to a null value.
(closes #10034)
文件: src/vim9execute.c, src/vim9type.c, src/globals.h, src/evalvars.c,
src/vim.h, src/vim9script.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4643
问题: Vim9: variable may be locked unintentionally.
解决方案: Clear "v_lock". (closes #10036)
文件: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4644
问题: Redrawing too often when 'relativenumber' is set.
解决方案: Only redraw when the cursor line changed. (Lewis Russell,
closes #10040)
文件: src/change.c, src/drawscreen.c, src/structs.h
Patch 8.2.4645
问题: 'shortmess' changed when session does not store options.
解决方案: Save and restore 'shortmess' if needed. (James Charti,
closes #10037)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.4646
问题: Using buffer line after it has been freed in old regexp engine.
解决方案: After getting mark get the line again.
文件: src/regexp_bt.c, src/testdir/test_regexp_latin.vim
Patch 8.2.4647
问题: "source" can read past end of copied line.
解决方案: Add a terminating NUL.
文件: src/scriptfile.c, src/testdir/test_source.vim
Patch 8.2.4648
问题: Handling LSP messages is a bit slow.
解决方案: Included support for LSP messages. (Yegappan Lakshmanan,
closes #10025)
文件: runtime/doc/channel.txt, src/channel.c, src/job.c, src/json.c,
src/proto/json.pro, src/structs.h, src/testdir/test_channel.vim,
src/testdir/test_channel_lsp.py
Patch 8.2.4649
问题: Various formatting problems.
解决方案: Improve the code formatting.
文件: src/mark.c, src/quickfix.c, src/regexp_nfa.c, src/register.c,
src/testdir/test_filechanged.vim, src/gui_athena.c,
src/gui_motif.c, src/os_unix.c
Patch 8.2.4650
问题: "import autoload" only works with using 'runtimepath'.
解决方案: Also support a relative and absolute file name.
文件: runtime/doc/vim9.txt, src/structs.h, src/scriptfile.c,
src/proto/scriptfile.pro, src/vim9script.c, src/vim9expr.c,
src/vim9.h, src/vim9execute.c, src/vim9instr.c,
src/proto/vim9instr.pro, src/vim.h, src/userfunc.c,
src/proto/userfunc.pro, src/testdir/test_vim9_import.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4651 (after 8.2.4650)
问题: Test fails because path differs.
解决方案: Only compare the tail of the path.
文件: src/testdir/test_vim9_disassemble.vim
Patch 8.2.4652 (after 8.2.4650)
问题: Leaking memory if assignment fails.
解决方案: Clear assigned value on failure.
文件: src/vim9execute.c
Patch 8.2.4653
问题: "import autoload" does not check the file name.
解决方案: Give an error if the file is not readable. (closes #10049)
文件: src/filepath.c, src/proto/filepath.pro, src/errors.h,
src/ex_cmds.c, src/ex_docmd.c, src/spellfile.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4654 (after 8.2.4653)
问题: Missing changes for import check.
解决方案: Add missing changes.
文件: src/vim9script.c
Patch 8.2.4655
问题: Command line completion popup menu positioned wrong when using a
terminal window.
解决方案: Position the popup menu differently when editing the command line.
(Yegappan Lakshmanan, closes #10050, closes #10035)
文件: src/popupmenu.c, src/testdir/test_cmdline.vim,
src/testdir/test_terminal.vim,
src/testdir/dumps/Test_wildmenu_pum_term_01.dump
Patch 8.2.4656
问题: Vim9: can't use items from "import autoload" with autoload
directory name.
解决方案: Let sn_autoload_prefix overrule sn_import_autoload.
(closes #10054)
文件: src/structs.h, src/vim9instr.c, src/vim9expr.c, src/vim9script.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4657
问题: Errors for functions are sometimes hard to read.
解决方案: Use printable_func_name() in more places.
文件: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro,
src/vim9expr.c, src/eval.c, src/vim9instr.c, src/vim9type.c,
src/testdir/test_vim9_expr.vim
Patch 8.2.4658
问题: Org-mode files are not recognized.
解决方案: Add patterns to recognize "org" files. (closes #10046)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4659
问题: Invalid memory access when using printable function name.
解决方案: Adjust copied name length.
文件: src/userfunc.c
Patch 8.2.4660
问题: Cursorcolumn is sometimes not correct.
解决方案: Recompute the cursor column when entering Insert mode and the
cursor is on a character wider than a screen cell. (closes #10057)
文件: src/edit.c, src/testdir/test_highlight.vim,
src/testdir/dumps/Test_cursorcolumn_insert_on_tab_1.dump,
src/testdir/dumps/Test_cursorcolumn_insert_on_tab_2.dump
Patch 8.2.4661
问题: Coverity warning for using uninitialized variable.
解决方案: Initialize variable to NULL.
文件: src/vim9expr.c
Patch 8.2.4662
问题: No error for using out of range list index.
解决方案: Check list index at script level like in compiled function.
(closes #10051)
文件: src/vim.h, src/evalvars.c, src/list.c, src/proto/list.pro,
src/eval.c, src/vim9execute.c, src/testdir/test_vim9_assign.vim
Patch 8.2.4663
问题: Occasional crash when running the GUI tests.
解决方案: Check that the line index is not too high. (closes #8681)
文件: src/screen.c
Patch 8.2.4664
问题: Elvish files are not recognized.
解决方案: Recognize .elv files. (Bruno Roque, closes #10058)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4665
问题: Popup with "minwidth" and scrollbar not updated properly.
解决方案: Adjust the computation if the window width. (closes #10061)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_previewpopup_4.dump,
src/testdir/dumps/Test_popupwin_previewpopup_5.dump,
src/testdir/dumps/Test_popupwin_previewpopup_7.dump,
src/testdir/dumps/Test_popupwin_previewpopup_8.dump,
src/testdir/dumps/Test_popupwin_previewpopup_9.dump,
src/testdir/dumps/Test_popupwin_previewpopup_10.dump,
src/testdir/dumps/Test_popupwin_drag_minwidth_1.dump,
src/testdir/dumps/Test_popupwin_drag_minwidth_2.dump,
src/testdir/dumps/Test_popupwin_drag_minwidth_3.dump
Patch 8.2.4666
问题: Vim9: assignment not recognized in skipped block.
解决方案: When skipping assume identifier exists. (closes #10059)
文件: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9cmds.c,
src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_script.vim
Patch 8.2.4667
问题: expandcmd() fails on an error.
解决方案: On failure return the command unmodified. (Yegappan Lakshmanan,
closes #10063)
文件: runtime/doc/builtin.txt, src/evalfunc.c,
src/testdir/test_expand.vim
Patch 8.2.4668
问题: Buffer allocation failures insufficiently tested.
解决方案: Add tests for memory allocation failures. (Yegappan Lakshmanan,
closes #10064)
文件: src/alloc.h, src/buffer.c, src/popupwin.c, src/window.c,
src/testdir/test_buffer.vim, src/testdir/test_swap.vim
Patch 8.2.4669
问题: In compiled code len('string') is not inlined.
解决方案: Compute the length at compile time if possible. (closes #10065)
文件: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9expr.c,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4670
问题: Memory allocation failures for new tab page not tested.
解决方案: Add tests with failing memory allocation. (Yegappan Lakshmanan,
closes #10067)
文件: src/alloc.h, src/blob.c, src/buffer.c, src/window.c,
src/testdir/test_blob.vim, src/testdir/test_buffer.vim,
src/testdir/test_tabpage.vim, src/testdir/test_window_cmd.vim
Patch 8.2.4671
问题: 'wildignorecase' is sometimes not used for glob().
解决方案: Also use 'wildignorecase' when there are no wildcards.
(closes #10066, closes #8350)
文件: src/filepath.c, src/testdir/test_functions.vim
Patch 8.2.4672
问题: Using :normal with Ex mode may make :substitute hang.
解决方案: When getting an empty line behave like 'q' was typed.
(closes #10070)
文件: src/ex_cmds.c, src/testdir/test_normal.vim
Patch 8.2.4673
问题: Redrawing a vertically split window is slow when using CTRL-F and
CTRL-B.
解决方案: When deciding on USE_REDRAW bail out if scrolling more than three
lines. (issue #8002)
文件: src/screen.c
Patch 8.2.4674
问题: Cannot force getting MouseMove events.
解决方案: Add the 'mousemoveevent' option with implementation for the GUI.
(Ernie Rael, closes #10044)
文件: runtime/doc/gui.txt, runtime/doc/options.txt,
runtime/doc/testing.txt, src/gui.c, src/option.h,
src/optiondefs.h, src/testing.c, src/testdir/test_gui.vim
Patch 8.2.4675
问题: No error for missing expression after :elseif. (Ernie Rael)
解决方案: Check for missing expression. (closes #10068)
文件: src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.4676 (after 8.2.4675)
问题: Test fails with different error.
解决方案: Add argument to :elseif.
文件: src/testdir/test_vimscript.vim
Patch 8.2.4677
问题: The Athena GUI support is outdated.
解决方案: Remove the Athena GUI code.
文件: Filelist, src/Makefile, src/proto.h, src/clipboard.c,
src/gui_athena.c, src/proto/gui_athena.pro, src/gui_at_sb.c,
src/gui_at_sb.h, src/gui_at_fs.c, src/gui_motif.c, src/evalfunc.c,
src/gui.c, src/gui_beval.c, src/gui_x11.c, src/if_mzsch.c,
src/main.c, src/menu.c, src/mouse.c, src/version.c, src/feature.h,
src/gui.h, src/structs.h, src/vim.h, src/testdir/gui_init.vim,
src/testdir/setup_gui.vim, src/testdir/test_clientserver.vim,
src/testdir/test_edit.vim, src/testdir/test_gui.vim,
src/testdir/test_highlight.vim, src/testdir/test_quotestar.vim,
src/testdir/test_startup.vim, runtime/doc/gui.txt,
runtime/doc/gui_x11.txt
Patch 8.2.4678
问题: Vim9: not all code is tested.
解决方案: Add a few more tests.
文件: src/vim9execute.c, src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_import.vim, src/testdir/test_vim9_cmd.vim
Patch 8.2.4679
问题: Cannot have expandcmd() give an error message for mistakes.
解决方案: Add an optional argument to give errors. Fix memory leak when
expanding files fails. (Yegappan Lakshmanan, closes #10071)
文件: runtime/doc/builtin.txt, src/evalfunc.c, src/filepath.c,
src/testdir/test_expand.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.4680
问题: Build failure without +postscript.
解决方案: Use another error message.
文件: src/vim9execute.c, src/testdir/test_vim9_import.vim
Patch 8.2.4681
问题: Build fails with a combination of features.
解决方案: Remove #ifdef for alloc_clear_id(). (John Marriott)
文件: src/alloc.c
Patch 8.2.4682
问题: Vim9: can use :unlockvar for const variable. (Ernie Rael)
解决方案: Check whether the variable is a const.
文件: src/ex_docmd.c, src/evalvars.c, src/vim9script.c,
src/proto/vim9script.pro, src/eval.c, src/userfunc.c,
src/testdir/test_vim9_cmd.vim
Patch 8.2.4683
问题: Verbose check with dict_find() to see if a key is present.
解决方案: Add dict_has_key(). (Yegappan Lakshmanan, closes #10074)
文件: src/channel.c, src/dict.c, src/evalwindow.c, src/filepath.c,
src/highlight.c, src/json.c, src/match.c, src/popupwin.c,
src/proto/dict.pro, src/quickfix.c, src/search.c, src/sign.c,
src/tag.c, src/terminal.c, src/testing.c, src/textprop.c,
src/time.c
Patch 8.2.4684
问题: Cannot open a channel on a Unix domain socket.
解决方案: Add Unix domain socket support. (closes #10062)
文件: runtime/doc/channel.txt, src/channel.c, src/testdir/check.vim,
src/testdir/shared.vim, src/testdir/test_channel.py,
src/testdir/test_channel.vim, src/testdir/test_channel_unix.py,
src/testdir/test_cmdline.vim
Patch 8.2.4685
问题: When a swap file is found for a popup there is no dialog and the
buffer is loaded anyway.
解决方案: Silently load the buffer read-only. (closes #10073)
文件: runtime/doc/popup.txt, src/memline.c, src/popupwin.c, src/vim.h,
src/buffer.c, src/testdir/test_popupwin.vim
Patch 8.2.4686
问题: Configure doesn't find the Motif library with Cygwin.
解决方案: Check for libXm.dll.a. (Kelvin Lee, closes #10077)
文件: src/configure.ac, src/auto/configure
Patch 8.2.4687
问题: "vimgrep /\%v/ *" may cause a crash.
解决方案: When compiling the pattern with the old engine fails, restore the
regprog of the new engine instead of leaving it NULL.
(closes #10079)
文件: src/regexp.c
Patch 8.2.4688
问题: New regexp engine does not give an error for "\%v".
解决方案: Check for a value argument. (issue #10079)
文件: src/regexp_nfa.c, src/errors.h, src/regexp_bt.c,
src/testdir/test_regexp_latin.vim
Patch 8.2.4689
问题: Using <Cmd> in a mapping does not work for mouse keys in Insert
mode. (Sergey Vlasov)
解决方案: When reading the <Cmd> argument do not use the stuff buffer.
(closes #10080)
文件: src/getchar.c
Patch 8.2.4690
问题: Channel tests fail on MS-Windows.
解决方案: Check if the AF_UNIX attribute exists. (closes #10083)
文件: src/testdir/test_channel.py, src/testdir/test_channel_unix.py
Patch 8.2.4691 (after 8.2.4689)
问题: Solution for <Cmd> in a mapping causes trouble.
解决方案: Use another solution: put back CTRL-O after reading the <Cmd>
sequence.
文件: src/getchar.c
Patch 8.2.4692
问题: No test for what 8.2.4691 fixes.
解决方案: Add a test. Use a more generic solution. (closes #10090)
文件: src/getchar.c, src/mouse.c, src/testdir/test_mapping.vim
Patch 8.2.4693 (after 8.2.4688)
问题: new regexp does not accept pattern "\%>0v".
解决方案: Do accept digit zero.
文件: src/regexp_bt.c, src/regexp_nfa.c,
src/testdir/test_regexp_latin.vim
Patch 8.2.4694
问题: Avoidance of #elif causes more preproc nesting.
解决方案: Use #elif where it is useful. (Ozaki Kiichi, closes #10081)
文件: src/option.c, src/optiondefs.h, src/optionstr.c, src/version.c
Patch 8.2.4695
问题: JSON encoding could be faster.
解决方案: Optimize encoding JSON strings. (closes #10086)
文件: src/json.c, src/testdir/test_json.vim
Patch 8.2.4696
问题: delete() with "rf" argument does not report a failure.
解决方案: Return -1 if the directory could not be removed. (closes #10078)
文件: src/fileio.c, src/testdir/test_functions.vim
Patch 8.2.4697
问题: Vim9: crash when adding a duplicate key to a dictionary.
解决方案: Clear the stack item when it has been moved into the dictionary.
(closes #10087)
文件: src/vim9execute.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4698
问题: Vim9: script variable has no flag that it was set.
解决方案: Add a flag that it was set, to avoid giving it a value when used.
(closes #10088)
文件: src/structs.h, src/vim9script.c, src/vim9execute.c,
src/evalvars.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4699
问题: Hard to reproduce hang when reading from a channel.
解决方案: Check for readahead before starting to wait. (closes #10093,
closes #7781, closes #6364)
文件: src/channel.c
Patch 8.2.4700
问题: Buffer remains active if a WinClosed event throws an exception.
解决方案: Ignore aborting() when closing the buffer. (closes #10097)
文件: src/window.c, src/testdir/test_autocmd.vim
Patch 8.2.4701
问题: Kuka Robot Language files not recognized.
解决方案: Recognize *.src and *.dat files. (Patrick Meiser-Knosowski,
closes #10096)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim,
runtime/autoload/dist/ft.vim
Patch 8.2.4702
问题: C++ scope labels are hard-coded.
解决方案: Add 'cinscopedecls' to define the labels. (Rom Praschan,
closes #10109)
文件: runtime/doc/indent.txt, runtime/doc/options.txt,
runtime/doc/quickref.txt, runtime/optwin.vim, src/buffer.c,
src/cindent.c, src/option.c, src/option.h, src/optiondefs.h,
src/optionstr.c, src/structs.h, src/testdir/test_cindent.vim
Patch 8.2.4703 (after 8.2.4702)
问题: Memory leak in handling 'cinscopedecls'.
解决方案: Free the memory before returning.
文件: src/cindent.c
Patch 8.2.4704
问题: Using "else" after return or break increases indent.
解决方案: Remove "else" and reduce indent. (Goc Dundar, closes #10099)
文件: src/fileio.c, src/memline.c, src/option.c, src/syntax.c
Patch 8.2.4705
问题: reg_executing may not be cleared.
解决方案: Reset reg_executing later. (closes #10111, closes #10110)
文件: src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h,
src/testdir/test_registers.vim
Patch 8.2.4706
问题: Buffer remains active if a WinClosed event throws an exception
when there are multiple tabpages.
解决方案: Ignore aborting() when closing the buffer. (closes #10101)
文件: src/window.c, src/testdir/test_autocmd.vim
Patch 8.2.4707
问题: Redrawing could be a bit more efficient.
解决方案: Optimize redrawing. (closes #10105)
文件: src/change.c, src/edit.c, src/testdir/test_highlight.vim,
src/testdir/dumps/Test_cursorcolumn_insert_on_tab_3.dump
Patch 8.2.4708
问题: PHP test files are not recognized.
解决方案: Add the *.phpt pattern. (Julien Voisin, closes #10112)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4709
问题: After :redraw the statusline highlight might be used.
解决方案: Clear the screen attribute after redrawing the screen.
(closes #10108)
文件: src/ex_docmd.c
Patch 8.2.4710
问题: Smart indenting does not work after completion.
解决方案: Set "can_si". (Christian Brabandt, closes #10113, closes #558)
文件: src/edit.c, src/testdir/test_ins_complete.vim
Patch 8.2.4711
问题: When 'insermode' is set :edit from <Cmd> mapping misbehaves.
解决方案: Don't set "need_start_insertmode" when already in Insert mode.
(closes #10116)
文件: src/ex_cmds.c, src/testdir/test_edit.vim
Patch 8.2.4712
问题: Only get profiling information after exiting.
解决方案: Add "profile dump" and "profile stop". (Marco Hinz, Yegappan
Lakshmanan, closes #10107)
文件: runtime/doc/repeat.txt, src/profiler.c,
src/testdir/test_profile.vim
Patch 8.2.4713
问题: Plugins cannot track text scrolling.
解决方案: Add the WinScrolled event. (closes #10102)
文件: runtime/doc/autocmd.txt, src/autocmd.c, src/proto/autocmd.pro,
src/edit.c, src/gui.c, src/main.c, src/structs.h, src/vim.h,
src/window.c, src/proto/window.pro, src/testdir/test_autocmd.vim
Patch 8.2.4714
问题: Using g:filetype_dat and g:filetype_src not tested.
解决方案: Add a test. (Patrick Meiser-Knosowski, closes #10117)
文件: src/testdir/test_filetype.vim
Patch 8.2.4715
问题: Vagrantfile not recognized.
解决方案: Recognize Vagrantfile as ruby. (Julien Voisin, closes #10119)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4716
问题: Memory allocation failure not tested when defining a function.
解决方案: Add a test. (Yegappan Lakshmanan, closes #10127)
文件: src/alloc.c, src/alloc.h, src/proto/alloc.pro, src/userfunc.c,
src/testdir/test_user_func.vim, src/testdir/test_vim9_func.vim
Patch 8.2.4717
问题: For TextYankPost v:event does not contain information about the
operation being inclusive or not.
解决方案: Add "inclusive" to v:event. (Justin M. Keyes, Yegappan Lakshmanan,
closes #10125)
文件: runtime/doc/autocmd.txt, src/register.c,
src/testdir/test_autocmd.vim
Patch 8.2.4718
问题: @@@ in the last line sometimes drawn in the wrong place.
解决方案: Make sure the column is valid. (closes #10130)
文件: src/drawscreen.c, src/screen.c, src/testdir/test_display.vim
src/testdir/dumps/Test_display_lastline_1.dump,
src/testdir/dumps/Test_display_lastline_2.dump,
src/testdir/dumps/Test_display_lastline_3.dump,
src/testdir/dumps/Test_display_lastline_4.dump
Patch 8.2.4719
问题: ">" marker sometimes not displayed in the jumplist.
解决方案: If the buffer no longer exists show "-invalid-". (Christian
Brabandt, closes #10131, closes #10100)
文件: runtime/doc/motion.txt, src/mark.c, src/testdir/Make_all.mak,
src/testdir/test_alot.vim, src/testdir/test_jumplist.vim,
src/testdir/test_jumps.vim
Patch 8.2.4720
问题: ABB Rapid files are not recognized properly.
解决方案: Add checks for ABB Rapid files. (Patrick Meiser-Knosowski,
closes #10104)
文件: runtime/autoload/dist/ft.vim, runtime/doc/filetype.txt,
runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4721
问题: Cooklang files are not recognized.
解决方案: recognize *.cook files. (Goc Dundar, closes #10120)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4722
问题: When a recording is ended with a mapped key that key is also
recorded.
解决方案: Remember the previous last_recorded_len. (closes #10122)
文件: src/getchar.c, src/testdir/test_registers.vim
Patch 8.2.4723
问题: The ModeChanged autocmd event is inefficient.
解决方案: Avoid allocating memory. (closes #10134) Rename
trigger_modechanged() to may_trigger_modechanged().
文件: src/misc1.c, src/proto/misc1.pro, src/edit.c, src/ex_docmd.c,
src/ex_getln.c, src/insexpand.c, src/normal.c, src/terminal.c,
src/autocmd.c
Patch 8.2.4724
问题: Current instance of last search pattern not easily spotted.
解决方案: Add CurSearch highlighting. (closes #10133)
文件: runtime/doc/options.txt, runtime/doc/syntax.txt, src/highlight.c,
src/match.c, src/normal.c, src/optiondefs.h, src/structs.h,
src/vim.h, src/normal.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line.dump,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_1.dump,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_2.dump,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_3.dump
Patch 8.2.4725 (after 8.2.4724)
问题: Unused variable in tiny build.
解决方案: Add #ifdef.
文件: src/normal.c
Patch 8.2.4726
问题: Cannot use expand() to get the script name.
解决方案: Support expand('<script>'). (closes #10121)
文件: runtime/doc/cmdline.txt, src/errors.h, src/ex_docmd.c,
src/scriptfile.c, src/vim.h, src/testdir/test_expand.vim
Patch 8.2.4727
问题: Unused code.
解决方案: Remove code and add #ifdefs. (Dominique Pellé, closes #10136)
文件: runtime/doc/editing.txt, runtime/doc/eval.txt,
runtime/doc/vim9.txt, src/errors.h, src/option.c, src/search.c,
src/proto/search.pro
Patch 8.2.4728
问题: No test that v:event cannot be modified.
解决方案: Add a test. (closes #10139)
文件: src/testdir/test_autocmd.vim
Patch 8.2.4729
问题: HEEx and Surface templates do not need a separate filetype.
解决方案: Use Eelixir for the similar filetypes. (Aaron Tinio, closes #10124)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4730
问题: MS-Windows GUI: cannot use CTRL-/.
解决方案: Handle the WM_KEYUP event. (Yasuhiro Matsumoto, closes #10141)
文件: src/gui_w32.c
Patch 8.2.4731
问题: The changelist index is not remembered per buffer.
解决方案: Keep the changelist index per window and buffer. (closes #10135,
closes #2173)
文件: src/buffer.c, src/evalfunc.c, src/structs.h,
src/testdir/test_changelist.vim
Patch 8.2.4732
问题: Duplicate code to free fuzzy matches.
解决方案: Bring back fuzmatch_str_free().
文件: src/search.c, src/proto/search.pro, src/cmdexpand.c
Patch 8.2.4733 (after 8.2.4729)
问题: HEEx and Surface do need a separate filetype.
解决方案: Revert 8.2.4729. (closes #10147)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4734
问题: getcharpos() may change a mark position.
解决方案: Copy the mark position. (closes #10148)
文件: src/eval.c, src/testdir/test_cursor_func.vim
Patch 8.2.4735
问题: Quickfix tests can be a bit hard to read.
解决方案: Use heredoc instead of strings and line continuation. (Yegappan
Lakshmanan, closes #10145)
文件: src/testdir/test_quickfix.vim
Patch 8.2.4736
问题: Build problem for Cygwin with Motif.
解决方案: Undefine ControlMask. (Kelvin Lee, closes #10152)
文件: src/mbyte.c
Patch 8.2.4737
问题: // in JavaScript string recognized as comment.
解决方案: Only check for linecomment if 'cindent' is set. (closes #10151)
文件: src/change.c, src/testdir/test_textformat.vim
Patch 8.2.4738
问题: Esc on commandline executes command instead of abandoning it.
解决方案: Save and restore KeyTyped when removing the popup menu.
(closes #10154)
文件: src/cmdexpand.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_wildmenu_with_pum_foldexpr_1.dump,
src/testdir/dumps/Test_wildmenu_with_pum_foldexpr_2.dump
Patch 8.2.4739
问题: Accessing freed memory after WinScrolled autocmd event.
解决方案: Check the window pointer is still valid. (closes #10156)
Remove the argument from may_trigger_winscrolled().
文件: src/window.c, src/proto/window.pro, src/edit.c, src/gui.c,
src/main.c, src/testdir/test_autocmd.vim
Patch 8.2.4740
问题: When expand() fails there is no error message.
解决方案: When 'verbose' is set give an error message.
文件: runtime/doc/builtin.txt, src/evalfunc.c,
src/testdir/test_expand.vim
Patch 8.2.4741 (after 8.2.4740)
问题: Startup test fails.
解决方案: Avoid an error for verbose expansion. Fix that the "0verbose"
command modifier doesn't work.
文件: runtime/syntax/syntax.vim, runtime/syntax/synload.vim,
src/structs.h, src/ex_docmd.c, src/testdir/test_excmd.vim
Patch 8.2.4742
问题: There is no way to start logging very early in startup.
解决方案: Add the --log argument. Include the date in the start message in
the log file. Avoid a duplicate message when forking. Log an
executed shell command.
文件: runtime/doc/starting.txt, runtime/doc/channel.txt,
src/main.c, src/channel.c, src/os_unix.c, src/os_win32.c,
src/testdir/test_startup.vim
Patch 8.2.4743
问题: Clang 14 is available on CI.
解决方案: Switch from clang 13 to 14. (closes #10157)
文件: .github/workflows/ci.yml
Patch 8.2.4744
问题: A terminal window can't use the bell.
解决方案: Add bell support for the terminal window. (closes #10178)
文件: runtime/doc/options.txt, src/gui_w32.c, src/option.h,
src/optionstr.c, src/terminal.c
Patch 8.2.4745 (after 8.2.4744)
问题: Using wrong flag for using bell in the terminal.
解决方案: Change to use BO_TERM.
文件: src/terminal.c, src/misc1.c
Patch 8.2.4746
问题: Supercollider filetype not recognized.
解决方案: Match file extensions and check file contents to detect
supercollider. (closes #10142)
文件: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
src/testdir/test_filetype.vim
Patch 8.2.4747
问题: No filetype override for .sys files.
解决方案: Add g:filetype_sys. (Patrick Meiser-Knosowski, closes #10181)
文件: runtime/doc/filetype.txt, runtime/autoload/dist/ft.vim,
src/testdir/test_filetype.vim
Patch 8.2.4748
问题: Cannot use an imported function in a mapping.
解决方案: Recognize <SID>name.Func.
文件: runtime/doc/vim9.txt, src/term.c, src/vim9execute.c,
src/proto/vim9execute.pro, src/scriptfile.c,
src/testdir/test_vim9_import.vim
Patch 8.2.4749
问题: <script> is not expanded in autocmd context.
解决方案: Add the context to the pattern struct. (closes #10144)
Rename AutoPatCmd to AutoPatCmd_T.
文件: src/autocmd.c, src/proto/autocmd.pro, src/scriptfile.c,
src/structs.h, src/testdir/test_expand.vim
Patch 8.2.4750
问题: Small pieces of dead code.
解决方案: Remove the dead code. (Goc Dundar, closes #10190) Rename the
qftf_cb struct member to avoid confusion.
文件: src/ex_cmds.c, src/misc1.c, src/optionstr.c, src/quickfix.c
Patch 8.2.4751 (after 8.2.4748)
问题: Mapping <SID>name.Func does not work for script in autoload
directory.
解决方案: Use the # form for a script in the autoload directory.
(closes #10186)
文件: src/term.c, src/testdir/test_vim9_import.vim
Patch 8.2.4752
问题: Wrong 'statusline' value can cause illegal memory access.
解决方案: Properly check the value. (closes #10192)
文件: src/optionstr.c, src/testdir/test_options.vim
Patch 8.2.4753
问题: Error from setting an option is silently ignored.
解决方案: Handle option value errors better. Fix uses of N_().
文件: src/option.c, src/proto/option.pro, src/optionstr.c,
src/channel.c, src/crypt.c, src/diff.c, src/edit.c,
src/eval.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c,
src/ex_docmd.c, src/ex_getln.c, src/getchar.c, src/gui.c,
src/gui_gtk_x11.c, src/help.c, src/highlight.c, src/if_tcl.c,
src/main.c, src/memline.c, src/message_test.c,
src/popupmenu.c, src/quickfix.c, src/scriptfile.c, src/spell.c,
src/spellfile.c, src/term.c, src/undo.c, src/vim9script.c
Patch 8.2.4754
问题: Still using cached values after unsetting some known environment
variables.
解决方案: Take care of the side effects. (closes #10194)
文件: src/evalfunc.c, src/evalvars.c, src/misc1.c, src/proto/misc1.pro,
src/vim9execute.c, src/optionstr.c, src/testdir/test_environ.vim
Patch 8.2.4755
问题: Cannot use <SID>FuncRef in completion spec.
解决方案: Dereference a function name in another way. (closes #10197)
文件: src/eval.c, src/testdir/test_vim9_import.vim
Patch 8.2.4756 (after 8.2.4754)
问题: Build error without the +eval feature.
解决方案: Adjust #ifdefs.
文件: src/misc1.c
Patch 8.2.4757
问题: List of libraries to suppress lsan errors is outdated.
解决方案: Add another library. (closes #10201)
文件: src/testdir/lsan-suppress.txt
Patch 8.2.4758
问题: When using an LSP channel want to get the message ID.
解决方案: Have ch_sendexpr() return the ID. (Yegappan Lakshmanan,
closes #10202)
文件: runtime/doc/channel.txt, src/channel.c, src/evalfunc.c,
src/testdir/test_channel.vim
Patch 8.2.4759
问题: CurSearch highlight does not work for multi-line match.
解决方案: Check cursor position before adjusting columns. (closes #10133)
文件: src/structs.h, src/match.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line.dump,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_1.dump,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_2.dump,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_3.dump,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_4.dump,
src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_5.dump
Patch 8.2.4760
问题: Using matchfuzzy() on a long list can take a while.
解决方案: Add a limit to the number of matches. (Yasuhiro Matsumoto,
closes #10189)
文件: runtime/doc/builtin.txt, src/search.c,
src/testdir/test_matchfuzzy.vim
Patch 8.2.4761
问题: Documentation for using LSP messages is incomplete.
解决方案: Update the documentation. (Yegappan Lakshmanan, closes #10206)
文件: runtime/doc/channel.txt
Patch 8.2.4762
问题: Using freed memory when using synstack() and synID() in WinEnter.
解决方案: Check using the syntax window. (closes #10204)
文件: src/syntax.c, src/testdir/test_syntax.vim
Patch 8.2.4763
问题: Using invalid pointer with "V:" in Ex mode.
解决方案: Correctly handle the command being changed to "+".
文件: src/ex_docmd.c, src/testdir/test_ex_mode.vim
Patch 8.2.4764
问题: CI uses an older gcc version.
解决方案: Use GCC 11. (closes #10185)
文件: .github/workflows/ci.yml, src/testdir/lsan-suppress.txt
Patch 8.2.4765
问题: Function matchfuzzy() sorts too many items.
解决方案: Only put matches in the array. (Yegappan Lakshmanan,
closes #10208)
文件: src/search.c
Patch 8.2.4766
问题: KRL files using "deffct" not recognized.
解决方案: Adjust the pattern used for matching. (Patrick Meiser-Knosowski,
closes #10200)
文件: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
Patch 8.2.4767
问题: Openscad files are not recognized.
解决方案: Add a filetype pattern. (Niklas Adam, closes #10199)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4768
问题: CI: codecov upload sometimes does not work.
解决方案: Use action v3 instead of v2. (closes #10209)
文件: .github/workflows/ci.yml
Patch 8.2.4769
问题: Build warning with UCRT.
解决方案: Adjust #ifdef for _wenviron. (John Marriott)
文件: src/evalfunc.c
Patch 8.2.4770
问题: Cannot easily mix expression and heredoc.
解决方案: Support =expr in heredoc. (Yegappan Lakshmanan, closes #10138)
文件: runtime/doc/eval.txt, src/evalvars.c, src/userfunc.c,
src/testdir/test_let.vim, src/testdir/test_vim9_assign.vim
Patch 8.2.4771
问题: Coverity warns for not checking return value.
解决方案: Check return value of rettv_dict_alloc().
文件: src/channel.c
Patch 8.2.4772
问题: Old Coverity warning for not checking ftell() return value.
解决方案: Check return value of fseek() and ftell().
文件: src/misc1.c
Patch 8.2.4773
问题: Build failure without the +eval feature.
解决方案: Use other error message. Avoid warnings.
文件: src/misc1.c, src/cindent.c, src/term.c
Patch 8.2.4774
问题: Crash when using a number for lambda name.
解决方案: Check the type of the lambda reference.
文件: src/eval.c, src/errors.h, src/testdir/test_lambda.vim
Patch 8.2.4775
问题: SpellBad highlighting does not work in Konsole.
解决方案: Do not keep t_8u defined for Konsole. Redraw when t_8u is reset.
(closes #10177)
文件: src/term.c
Patch 8.2.4776
问题: GTK: 'lines' and 'columns' may change during startup.
解决方案: Ignore stale GTK resize events. (Ernie Rael, closes #10179)
文件: src/gui_gtk_x11.c
Patch 8.2.4777 (after 8.2.4775)
问题: Screendump tests fail because of a redraw.
解决方案: Do not output t_8u before receiving termresponse. Redraw only
when t_8u is not reset and termresponse is received.
文件: src/term.c
Patch 8.2.4778
问题: Pacman files use dosini filetype.
解决方案: Use conf instead. (Chaoren Lin, closes #10213)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4779
问题: lsan suppression is too version specific.
解决方案: Leave out the version number. (Christian Brabandt, closes #10214)
文件: src/testdir/lsan-suppress.txt
Patch 8.2.4780
问题: Parsing an LSP message fails when it is split.
解决方案: Collapse the received data before parsing. (Yegappan Lakshmanan,
closes #10215)
文件: runtime/doc/channel.txt, src/channel.c,
src/testdir/test_channel.vim, src/testdir/test_channel_lsp.py
Patch 8.2.4781
问题: Maxima files are not recognized.
解决方案: Add patterns to detect Maxima files. (Doron Behar, closes #10211)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4782
问题: Accessing freed memory.
解决方案: Clear evalarg after checking for trailing characters.
(issue #10218)
文件: src/userfunc.c, src/testdir/test_lambda.vim
Patch 8.2.4783
问题: Coverity warns for leaking memory.
解决方案: Use another strategy freeing "theline".
文件: src/evalvars.c
Patch 8.2.4784
问题: Lamba test with timer is flaky.
解决方案: Adjust sleep time on retry.
文件: src/testdir/test_lambda.vim
Patch 8.2.4785
问题: Visual mode not stopped early enough if win_gotoid() goes to
another buffer. (Sergey Vlasov)
解决方案: Stop Visual mode before jumping to another buffer. (closes #10217)
文件: src/evalwindow.c, src/testdir/test_vim9_builtin.vim,
src/testdir/dumps/Test_win_gotoid_1.dump,
src/testdir/dumps/Test_win_gotoid_2.dump,
src/testdir/dumps/Test_win_gotoid_3.dump
Patch 8.2.4786 (after 8.2.4785)
问题: Test for win_gotoid() in Visual mode fails on Mac.
解决方案: Skip the test on MacOS.
文件: src/testdir/test_vim9_builtin.vim
Patch 8.2.4787
问题: prop_find() does not find the right property.
解决方案: Fix the scan order. (closes #10220)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.4788
问题: Large payload for LSP message not tested.
解决方案: Add a test with a large LSP payload. (Yegappan Lakshmanan,
closes #10223)
文件: src/channel.c, src/testdir/test_channel.vim,
src/testdir/test_channel_lsp.py
Patch 8.2.4789
问题: The cursor may be in the in wrong place when using :redraw while
editing the cmdline.
解决方案: When editing the command line let :redraw update the command line
too. (closes #10210)
文件: src/ex_docmd.c, src/testdir/test_cmdline.vim,
src/testdir/dumps/Test_redraw_in_autocmd_1.dump,
src/testdir/dumps/Test_redraw_in_autocmd_2.dump
Patch 8.2.4790
问题: Lilypond filetype not recognized.
解决方案: Add patterns for lilypond. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4791
问题: Autocmd events triggered in different order when reusing an empty
buffer.
解决方案: Call buff_freeall() earlier. (Charlie Groves, closes #10198)
文件: src/buffer.c, src/testdir/test_autocmd.vim
Patch 8.2.4792
问题: Indent operator creates an undo entry for every line.
解决方案: Create one undo entry for all lines. (closes #10227)
文件: src/indent.c, src/testdir/test_indent.vim
Patch 8.2.4793
问题: Recognizing Maxima filetype even though it might be another.
解决方案: Remove *.mc and *.dem patterns from Maxima files
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4794
问题: Compiler warning for not initialized variable.
解决方案: Initialize the variable. (John Marriott)
文件: src/indent.c
Patch 8.2.4795
问题: 'cursorbind' scrolling depends on whether 'cursorline' is set.
解决方案: Always call validate_cursor(). (Christian Brabandt, closes #10230,
closes #10014)
文件: src/move.c, src/testdir/README.txt,
src/testdir/test_cursorline.vim,
src/testdir/dumps/Test_hor_scroll_1.dump,
src/testdir/dumps/Test_hor_scroll_2.dump,
src/testdir/dumps/Test_hor_scroll_3.dump,
src/testdir/dumps/Test_hor_scroll_4.dump
Patch 8.2.4796 (after 8.2.4795)
问题: File left behind after running cursorline tests.
解决方案: Uncomment the line that deletes the file.
文件: src/testdir/test_cursorline.vim
Patch 8.2.4797
问题: getwininfo() may get outdated values.
解决方案: Make sure w_botline is up-to-date. (closes #10226)
文件: src/evalwindow.c, src/testdir/test_bufwintabinfo.vim
Patch 8.2.4798
问题: t_8u option was reset even when set by the user.
解决方案: Only reset t_8u when using the default value. (closes #10239)
文件: src/term.c
Patch 8.2.4799
问题: Popup does not use correct topline.
解决方案: Also add one when firstline is negative. (closes #10229)
文件: src/popupwin.c, src/testdir/test_popupwin.vim
Patch 8.2.4800 (after 8.2.4798)
问题: Missing test update for adjusted t_8u behavior.
解决方案: Update and extend the test.
文件: src/testdir/test_termcodes.vim
Patch 8.2.4801 (after 8.2.4795)
问题: Fix for cursorbind fix not fully tested.
解决方案: Add another test case. (Christian Brabandt, closes #10240)
文件: src/testdir/test_cursorline.vim,
src/testdir/dumps/Test_hor_scroll_5.dump
Patch 8.2.4802
问题: Test is not cleaned up.
解决方案: Make test clean up after itself. Avoid NUL. (closes #10233)
文件: src/testdir/test_autocmd.vim
Patch 8.2.4803
问题: WinScrolled not always triggered when scrolling with the mouse.
解决方案: Add calls to may_trigger_winscrolled(). (closes #10246)
文件: src/mouse.c, src/testdir/test_autocmd.vim
Patch 8.2.4804
问题: Expression in heredoc doesn't work for compiled function.
解决方案: Implement compiling the heredoc expressions. (Yegappan Lakshmanan,
closes #10232)
文件: runtime/doc/eval.txt, src/evalvars.c, src/proto/evalvars.pro,
src/ex_getln.c, src/vim9compile.c, src/proto/vim9compile.pro,
src/testdir/test_vim9_assign.vim
Patch 8.2.4805
问题: CurSearch used for all matches in current line.
解决方案: Don't use the non-zero line count. (closes #10247)
文件: src/match.c, src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_1.dump,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_2.dump,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_2a.dump,
src/testdir/dumps/Test_hlsearch_cursearch_single_line_2b.dump
Patch 8.2.4806
问题: A mapping using <LeftDrag> does not start Select mode.
解决方案: When checking for starting select mode with the mouse also do this
when there is typeahead. (closes #10249)
文件: src/normal.c
Patch 8.2.4807
问题: Processing key events in Win32 GUI is not ideal.
解决方案: Improve processing of key events. (closes #10155)
文件: src/gui_w32.c
Patch 8.2.4808
问题: Unused item in engine struct.
解决方案: Remove "expr". Add comment with tags.
文件: src/regexp.h
Patch 8.2.4809
问题: Various things not properly tested.
解决方案: Add various test cases. (Yegappan Lakshmanan, closes #10259)
文件: src/testdir/test_blob.vim, src/testdir/test_debugger.vim,
src/testdir/test_listdict.vim, src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_import.vim, src/testdir/test_vim9_script.vim
Patch 8.2.4810 (after 8.2.4808)
问题: Missing changes in one file.
解决方案: Also change the struct initializers.
文件: src/regexp.c
Patch 8.2.4811 (after 8.2.4807)
问题: Win32 GUI: caps lock doesn't work.
解决方案: Handle VK_CAPITAL. (closes #10260, closes #10258)
文件: src/gui_w32.c
Patch 8.2.4812
问题: Unused struct item.
解决方案: Remove "lines" match_T. Simplify the code. (closes #10256)
文件: src/match.c, src/structs.h
Patch 8.2.4813
问题: Pasting text while indent folding may mess up folds.
解决方案: Adjust the way folds are split. (Brandon Simmons, closes #10254)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.4814
问题: Possible to leave a popup window with win_gotoid().
解决方案: Give an error when trying to leave a popup window with
win_gotoid(). (closes #10253)
文件: src/evalwindow.c, src/testdir/test_terminal3.vim
Patch 8.2.4815 (after 8.2.4776)
问题: Cannot build with older GTK version.
解决方案: Use gtk_window_get_size() instead of gdk_window_get_width() and
gdk_window_get_height(). (Ernie Rael, closes #10257)
文件: src/gui_gtk_x11.c
Patch 8.2.4816
问题: Still using older codecov app in some places of CI.
解决方案: Use v3.1.0. (closes #10209)
文件: .github/workflows/ci.yml
Patch 8.2.4817
问题: Win32 GUI: modifiers are not always used.
解决方案: Handle more modifiers. (closes #10269)
文件: src/gui_w32.c
Patch 8.2.4818 (after 8.2 4806)
问题: No test for what 8.2.4806 fixes.
解决方案: Add a test. (closes #10272)
文件: src/testdir/test_mapping.vim
Patch 8.2.4819
问题: Unmapping simplified keys also deletes other mapping.
解决方案: Only unmap a mapping with m_simplified set. (closes #10270)
文件: src/map.c, src/testdir/test_mapping.vim
Patch 8.2.4820
问题: No simple programmatic way to find a specific mapping.
解决方案: Add getmappings(). (Ernie Rael, closes #10273)
文件: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/map.c, src/proto/map.pro, src/testdir/test_maparg.vim
Patch 8.2.4821
问题: Crash when imported autoload script was deleted.
解决方案: Initialize local variable. (closes #10274) Give a more meaningful
error message.
文件: src/eval.c, src/vim9script.c, src/testdir/test_vim9_import.vim
Patch 8.2.4822
问题: Setting ufunc to NULL twice.
解决方案: Set ufunc to NULL in find_exported(). (closes #19275)
文件: src/eval.c, src/vim9script.c
Patch 8.2.4823
问题: Concatenating more than 2 strings in a :def function is
inefficient.
解决方案: Add a count to the CONCAT instruction. (closes #10276)
文件: src/vim9.h, src/vim9cmds.c, src/vim9compile.c, src/vim9execute.c,
src/vim9expr.c, src/vim9instr.c, src/proto/vim9instr.pro,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4824
问题: Expression is evaluated multiple times.
解决方案: Evaluate expression once and store the result. (closes #10278)
文件: src/map.c
Patch 8.2.4825
问题: Can only get a list of mappings.
解决方案: Add the optional {abbr} argument. (Ernie Rael, closes #10277)
Rename to maplist(). Rename test file.
文件: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/map.c, src/proto/map.pro, src/testdir/test_maparg.vim,
src/testdir/test_map_functions.vim, src/testdir/Make_all.mak
Patch 8.2.4826
问题: .cshtml files are not recognized.
解决方案: Use html filetype for .cshtml files. (Julien Voisin, closes #10212)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4827
问题: Typo in variable name. (Gabriel Dupras)
解决方案: Rename the variable.
文件: src/map.c
Patch 8.2.4828
问题: Fix for unmapping simplified key not fully tested.
解决方案: Add a test case. (closes #10292)
文件: src/map.c, src/testdir/test_mapping.vim
Patch 8.2.4829
问题: A key may be simplified to NUL.
解决方案: Use K_ZERO instead. Use macros instead of hard coded values.
(closes #10290)
文件: src/getchar.c, src/misc2.c, src/testdir/test_termcodes.vim
Patch 8.2.4830
问题: Possible endless loop if there is unused typahead.
解决方案: Only loop when the typeahead changed.
文件: src/channel.c
Patch 8.2.4831
问题: Crash when using maparg() and unmapping simplified keys.
解决方案: Do not keep a mapblock pointer. (closes #10294)
文件: src/map.c, src/testdir/test_map_functions.vim
Patch 8.2.4832
问题: Passing zero instead of NULL to a pointer argument.
解决方案: Use NULL. (closes #10296)
文件: src/getchar.c, src/term.c
Patch 8.2.4833
问题: Failure of mapping not checked for.
解决方案: Check return value of ins_typebuf(). (closes #10299)
文件: src/getchar.c, src/term.c, src/testdir/test_termcodes.vim
Patch 8.2.4834
问题: Vim9: some lines not covered by tests.
解决方案: Add a few more tests. Remove dead code.
文件: src/vim9execute.c, src/vim9instr.c, src/vim9.h,
src/testdir/test_vim9_expr.vim
Patch 8.2.4835
问题: Vim9: some lines not covered by tests.
解决方案: Add a few more tests. Fix disassemble output.
文件: src/vim9execute.c, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4836
问题: Vim9: some lines not covered by tests.
解决方案: Remove dead code. Add disassemble tests.
文件: src/vim9execute.c, src/vim9.h,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4837 (after patch 8.2.0919)
问题: Modifiers not simplified when timed out or using feedkeys() with
'n" flag.
解决方案: Adjust how mapped flag and timeout are used. (closes #10305)
文件: src/getchar.c, src/testdir/test_paste.vim,
src/testdir/test_termcodes.vim
Patch 8.2.4838
问题: Checking for absolute path is not trivial.
解决方案: Add isabsolutepath(). (closes #10303)
文件: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/filepath.c, src/proto/filepath.pro,
src/testdir/test_functions.vim
Patch 8.2.4839
问题: Compiler warning for unused argument.
解决方案: Add "UNUSED".
文件: src/gui_gtk_x11.c
Patch 8.2.4840
问题: Heredoc expression evaluated even when skipping.
解决方案: Don't evaluate when "skip" is set. (closes #10306)
文件: src/evalvars.c, src/testdir/test_let.vim
Patch 8.2.4841
问题: Empty string considered an error for expand() when 'verbose' is
set. (Christian Brabandt)
解决方案: Do not give an error for an empty result. (closes #10307)
文件: src/evalfunc.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/filepath.c, src/testdir/test_expand_func.vim
Patch 8.2.4842 (after 8.2.4841)
问题: expand("%:p") is not empty when there is no buffer name.
解决方案: When ignoring errors still return NULL. (closes #10311)
文件: src/ex_docmd.c, src/testdir/test_expand_func.vim
Patch 8.2.4843 (after 8.2.4807)
问题: Win32 GUI: Treating CTRL + ALT as AltGr is not backwards
compatible. (Axel Bender)
解决方案: Make a difference between left and right menu keys.
(closes #10308)
文件: src/gui_w32.c
Patch 8.2.4844
问题: <C-S-I> is simplified to <S-Tab>.
解决方案: Do not simplify CTRL if there is also SHIFT. (closes #10313)
文件: src/getchar.c, src/testdir/test_gui.vim
Patch 8.2.4845
问题: Duplicate code.
解决方案: Move code below if/else. (closes #10314)
文件: src/misc1.c
Patch 8.2.4846 (after 8.2.4844)
问题: Termcodes test fails.
解决方案: use CTRL-SHIFT-V to insert an unsimplified key. (closes #10316)
文件: runtime/doc/cmdline.txt, src/edit.c, src/getchar.c,
src/testdir/test_gui.vim
Patch 8.2.4847
问题: Crash when using uninitialized function pointer.
解决方案: Check for NULL pointer. (closes #10319, closes #10319)
文件: src/eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.4848
问题: Local completion with mappings and simplification not working.
解决方案: Fix local completion <C-N>/<C-P> mappings not ignored if keys are
not simplified. (closes #10323)
文件: src/getchar.c, src/testdir/test_popup.vim
Patch 8.2.4849
问题: Gleam filetype not detected.
解决方案: Add a pattern for Gleam files. (Mathias Jean Johansen,
closes #10326)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4850
问题: Mksession mixes up "tabpages" and "curdir" arguments.
解决方案: Correct logic for storing tabpage in session. (closes #10312)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.4851
问题: Compiler warning for uninitialized variable.
解决方案: Use another variable to decide to restore option values.
文件: src/session.c
Patch 8.2.4852
问题: ANSI color index to RGB value not correct.
解决方案: Convert the cterm index to ANSI index. (closes #10321,
closes #9836)
文件: src/term.c
Patch 8.2.4853
问题: CI with FreeBSD is a bit outdated.
解决方案: Use 12.3 instead of 12.1. (closes #10333)
文件: .cirrus.yml
Patch 8.2.4854
问题: Array size does not match usage.
解决方案: Make array size 3 instead of 4. (Christian Brabandt, closes #10336)
文件: src/term.c
Patch 8.2.4855
问题: Robot files are not recognized.
解决方案: Add patterns for robot files. (Zoe Roux, closes #10339)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4856
问题: MinGW compiler complains about unknown escape sequence.
解决方案: Avoid using a backslash in path. (Christian Brabandt,
closes #10337)
文件: .github/workflows/ci.yml
Patch 8.2.4857
问题: Yaml indent for multiline is wrong.
解决方案: Adjust patterns. (closes #10328, closes #8740)
文件: runtime/indent/yaml.vim, runtime/indent/testdir/yaml.in,
runtime/indent/testdir/yaml.ok
Patch 8.2.4858
问题: K_SPECIAL may be escaped twice.
解决方案: Avoid double escaping. (closes #10340)
文件: src/highlight.c, src/misc2.c, src/proto/misc2.pro, src/term.c,
src/typval.c, src/testdir/test_eval_stuff.vim,
src/testdir/test_feedkeys.vim, src/testdir/test_functions.vim,
src/testdir/test_mapping.vim
Patch 8.2.4859
问题: wget2 files are not recognized.
解决方案: Add patterns to recognize wget2. (Doug Kearns)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.4860
问题: MS-Windows: always uses current directory for executables.
解决方案: Check the NoDefaultCurrentDirectoryInExePath environment variable.
(Yasuhiro Matsumoto, closes #10341)
文件: runtime/doc/builtin.txt, src/os_win32.c,
src/testdir/test_functions.vim
Patch 8.2.4861
问题: It is not easy to restore saved mappings.
解决方案: Make mapset() accept a dict argument. (Ernie Rael, closes #10295)
文件: runtime/doc/builtin.txt, src/errors.h, src/evalfunc.c, src/map.c,
src/typval.c, src/proto/typval.pro,
src/testdir/test_map_functions.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4862
问题: Vim9: test may fail when run with valgrind.
解决方案: Wait longer for callback if needed.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4863
问题: Accessing freed memory in test without the +channel feature.
(Dominique Pellé)
解决方案: Do not generted PUSHCHANNEL or PUSHJOB if they are not
implemented. (closes #10350)
文件: src/vim9instr.c, src/errors.h, src/vim9compile.c,
src/testdir/test_vim9_script.vim
Patch 8.2.4864 (after 8.2.4863)
问题: Vim9: script test fails.
解决方案: Remove "if" around declaration.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4865
问题: :startinsert right after :stopinsert does not work when popup menu
is still visible.
解决方案: Use ins_compl_active() instead of pum_visible(). (closes #10352)
文件: src/edit.c, src/testdir/test_ins_complete.vim
Patch 8.2.4866
问题: Duplicate code in "get" functions.
解决方案: Use get_var_from() for getwinvar(), gettabvar(), gettabwinvar()
and getbufvar(). (closes #10335)
文件: src/evalvars.c
Patch 8.2.4867
问题: Listing of mapping with K_SPECIAL is wrong.
解决方案: Adjust escaping of special characters. (closes #10351)
文件: src/map.c, src/message.c, src/testdir/test_mapping.vim
Patch 8.2.4868
问题: When closing help window autocmds triggered for the wrong window.
解决方案: Figure out the new current window earlier. (closes #10348)
文件: src/window.c, src/testdir/test_help.vim
Patch 8.2.4869
问题: Expression in command block does not look after NL.
解决方案: Skip over NL to check what follows. (closes #10358)
文件: src/eval.c, src/proto/eval.pro, src/vim9script.c,
src/testdir/test_usercommands.vim
Patch 8.2.4870
问题: Vim9: expression in :substitute is not compiled.
解决方案: Use an INSTR instruction if possible. (closes #10334)
文件: src/evalfunc.c, src/regexp.c, src/vim9execute.c, src/vim9expr.c,
src/testdir/test_vim9_builtin.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4871
问题: Vim9: in :def function no error for using a range with a command
that does not accept one.
解决方案: Check for the command to accept a range. (closes #10330)
文件: src/vim9compile.c, src/testdir/test_vim9_script.vim
Patch 8.2.4872
问题: Vim9: no error for using an expression only at the script level
when followed by an empty line.
解决方案: Do not check the line number but whether something follows.
(closes #10357)
文件: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4873
问题: Vim9: using "else" differs from using "endif/if !cond".
解决方案: Leave the block and enter another one. (closes #10320)
文件: src/ex_eval.c, src/testdir/test_vim9_script.vim
Patch 8.2.4874
问题: Win32 GUI: horizontal scroll wheel not handled properly.
解决方案: Also handle WM_MOUSEHWHEEL. (closes #10309)
文件: src/gui_w32.c
Patch 8.2.4875
问题: MS-Windows: some .exe files are not recognized.
解决方案: Parse APPEXECLINK junctions. (closes #10302)
文件: src/os_mswin.c, src/proto/os_mswin.pro, src/os_win32.c,
src/os_win32.h, src/testdir/test_functions.vim
Patch 8.2.4876
问题: MS-Windows: Shift-BS results in strange character in powershell.
解决方案: Add K_S_BS. (Christian Brabandt, closes #10283, closes #10279)
文件: src/edit.c, src/keymap.h, src/term.c, src/testdir/shared.vim,
src/testdir/test_edit.vim
Patch 8.2.4877
问题: MS-Windows: Using Normal colors for termguicolors causes problems.
解决方案: Do not use Normal colors to set sg_gui_fg and sg_gui_bg.
(Christian Brabandt, closes #10317, closes #10241)
文件: src/highlight.c
Patch 8.2.4878
问题: Valgrind warning for using uninitialized variable.
解决方案: Initialize the type of newtv.
文件: src/strings.c
Patch 8.2.4879
问题: Screendump test may fail when using valgrind.
解决方案: Wait longer for the first screendump.
文件: src/testdir/test_vim9_builtin.vim, src/testdir/screendump.vim
Patch 8.2.4880
问题: Vim9: misplaced elseif causes invalid memory access.
解决方案: Check cs_idx not to be negative.
文件: src/ex_eval.c
Patch 8.2.4881
问题: "P" in Visual mode still changes some registers.
解决方案: Make "P" in Visual mode not change any register. (Shougo
Matsushita, closes #10349)
文件: runtime/doc/change.txt, runtime/doc/index.txt,
runtime/doc/visual.txt, src/normal.c, src/testdir/test_visual.vim
Patch 8.2.4882
问题: Cannot make 'breakindent' use a specific column.
解决方案: Add the "column" entry in 'breakindentopt'. (Christian Brabandt,
closes #10362, closes #10325)
文件: runtime/doc/options.txt, src/indent.c, src/structs.h,
src/testdir/test_breakindent.vim
Patch 8.2.4883
问题: String interpolation only works in heredoc.
解决方案: Support interpolated strings. Use syntax for heredoc consistent
with strings, similar to C#. (closes #10327)
文件: runtime/doc/eval.txt, src/errors.h, src/eval.c, src/evalvars.c,
src/proto/evalvars.pro, src/typval.c, src/proto/typval.pro,
src/vim9compile.c, src/proto/vim9compile.pro, src/vim9expr.c,
src/testdir/test_debugger.vim, src/testdir/test_expr.vim,
src/testdir/test_let.vim, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4884
问题: Test fails without the job/channel feature. (Dominique Pellé)
解决方案: Add condition.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4885 (after 8.2.4884)
问题: Test fails with the job/channel feature.
解决方案: Move check for job/channel separately.
文件: src/testdir/test_vim9_script.vim
Patch 8.2.4886
问题: Vim9: redir in skipped block seen as assignment.
解决方案: Check for valid assignment.
文件: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
Patch 8.2.4887
问题: Channel log does not show invoking a timer callback.
解决方案: Add a ch_log() call.
文件: src/time.c
Patch 8.2.4888
问题: Line number of lambda ignores line continuation.
解决方案: Use the line number of where the arguments are. Avoid outputting
"..." twice. (closes #10364)
文件: src/userfunc.c
Patch 8.2.4889
问题: CI only tests with FreeBSD 12.
解决方案: Also test with FreeBSD 13. (closes #10366)
文件: .cirrus.yml
Patch 8.2.4890
问题: Inconsistent capitalization in error messages.
解决方案: Make capitalization consistent. (Doug Kearns)
文件: src/errors.h
Patch 8.2.4891
问题: Vim help presentation could be better.
解决方案: Add an imported file for extra Vim help support. Show highlight
names in the color they have.
文件: Filelist, runtime/import/dist/vimhelp.vim
Patch 8.2.4892
问题: Test failures because of changed error messages.
解决方案: Adjust the expected error messages.
文件: src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim,
src/testdir/test_expand.vim, src/testdir/test_tcl.vim,
src/testdir/test_vimscript.vim
Patch 8.2.4893 (after 8.2.4891)
问题: Distributed import files are not installed.
解决方案: Add rules to Makefile and NSIS.
文件: src/Makefile, nsis/gvim.nsi
Patch 8.2.4894
问题: MS-Windows: not using italics.
解决方案: Use italics. Simplify the code. (closes #10359)
文件: src/term.c
Patch 8.2.4895
问题: Buffer overflow with invalid command with composing chars.
解决方案: Check that the whole character fits in the buffer.
文件: src/ex_docmd.c, src/testdir/test_cmdline.vim
Patch 8.2.4896 (after 8.2.4869)
问题: Expression in command block does not look after NL when command is
typed.
解决方案: Skip over NL also when not in a script. (closes #10358)
文件: src/eval.c, src/testdir/test_usercommands.vim
Patch 8.2.4897
问题: Comment inside an expression in lambda ignores the rest of the
expression.
解决方案: Truncate the line at the comment. (closes #10367)
文件: src/eval.c, src/testdir/test_lambda.vim
Patch 8.2.4898
问题: Coverity complains about pointer usage.
解决方案: Move code for increment/decrement.
文件: src/vim9compile.c
Patch 8.2.4899
问题: With latin1 encoding CTRL-W might go before the start of the
command line.
解决方案: Check already being at the start of the command line.
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.4900
问题: Vim9 expression test fails without the job feature.
解决方案: Add a check for the job feature. (Dominique Pellé, closes #10373)
文件: src/testdir/test_vim9_expr.vim
Patch 8.2.4901
问题: NULL pointer access when using invalid pattern.
解决方案: Check for failed regexp program.
文件: src/buffer.c, src/testdir/test_buffer.vim
Patch 8.2.4902
问题: Mouse wheel scrolling is inconsistent.
解决方案: Use the MS-Windows system setting. (closes #10368)
文件: runtime/doc/scroll.txt, src/gui_w32.c, src/mouse.c,
src/proto/mouse.pro, src/testing.c, src/testdir/test_gui.vim
Patch 8.2.4903
问题: Cannot get the current cmdline completion type and position.
解决方案: Add getcmdcompltype() and getcmdscreenpos(). (Shougo Matsushita,
closes #10344)
文件: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/cmdexpand.c,
src/proto/cmdexpand.pro, src/evalfunc.c, src/ex_getln.c,
src/proto/ex_getln.pro, src/usercmd.c, src/proto/usercmd.pro,
src/testdir/test_cmdline.vim
Patch 8.2.4904
问题: codecov includes MS-Windows install files.
解决方案: Ignore dosinst.c and uninstall.c.
文件: .codecov.yml
Patch 8.2.4905
问题: codecov includes MS-Windows install header file.
解决方案: Ignore dosinst.h.
文件: .codecov.yml
Patch 8.2.4906
问题: MS-Windows: cannot use transparent background.
解决方案: Make transparent background work with 'termguicolors' and NONE
background color. (Yasuhiro Matsumoto, closes #10310, closes #7162)
文件: runtime/doc/options.txt, src/os_win32.c, src/term.c
Patch 8.2.4907
问题: Some users do not want a line comment always inserted.
解决方案: Add the '/' flag to 'formatoptions' to not repeat the comment
leader after a statement when using "o".
文件: runtime/doc/change.txt, src/option.h, src/change.c,
src/testdir/test_textformat.vim
Patch 8.2.4908
问题: No text formatting for // comment after a statement.
解决方案: format a comment when the 'c' flag is in 'formatoptions'.
文件: src/textformat.c, src/testdir/test_textformat.vim
Patch 8.2.4909
问题: MODE_ enum entries names are too generic.
解决方案: use CH_MODE_.
文件: src/structs.h, src/channel.c, src/job.c, src/terminal.c
Patch 8.2.4910
问题: Imperfect coding.
解决方案: Make code nicer.
文件: src/ex_getln.c
Patch 8.2.4911
问题: The mode #defines are not clearly named.
解决方案: Prepend MODE_. Renumber them to put the mapped modes first.
文件: src/vim.h, src/autocmd.c, src/buffer.c, src/change.c,
src/charset.c, src/cindent.c, src/clipboard.c, src/debugger.c,
src/digraph.c, src/drawline.c, src/drawscreen.c, src/edit.c,
src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
src/fileio.c, src/fold.c, src/getchar.c, src/globals.h, src/gui.c,
src/gui_gtk.c, src/gui_w32.c, src/gui_xim.c, src/indent.c,
src/insexpand.c, src/macros.h, src/main.c, src/map.c, src/menu.c,
src/message.c, src/misc1.c, src/misc2.c, src/mouse.c,
src/netbeans.c, src/normal.c, src/ops.c, src/option.c,
src/os_unix.c, src/os_win32.c, src/popupmenu.c, src/search.c,
src/tag.c, src/screen.c, src/term.c, src/terminal.c,
src/textformat.c, src/window.c
Patch 8.2.4912
问题: Using execute() to define a lambda doesn't work. (Ernie Rael)
解决方案: Put the getline function in evalarg. (closes #10375)
文件: src/eval.c, src/evalfunc.c, src/proto/evalfunc.pro,
src/testdir/test_vim9_func.vim
Patch 8.2.4913
问题: Popup_hide() does not always have effect.
解决方案: Add the POPF_HIDDEN_FORCE flag. (closes #10376)
文件: src/popupwin.c, src/vim.h, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popup_prop_not_visible_01a.dump,
src/testdir/dumps/Test_popup_prop_not_visible_01b.dump
Patch 8.2.4914
问题: String interpolation in :def function may fail.
解决方案: Do not terminate the expression. (closes #10377)
文件: src/vim9compile.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4915
问题: Sometimes the cursor is in the wrong position.
解决方案: When the cursor moved to another line, recompute w_botline.
(closes #9736)
文件: src/move.c
Patch 8.2.4916 (after 8.2.4915)
问题: Mouse in Insert mode test fails.
解决方案: Fix the test and check relevant positions.
文件: src/testdir/test_edit.vim
Patch 8.2.4917
问题: Fuzzy expansion of option names is not right.
解决方案: Pass the fuzzy flag down the call chain. (Christian Brabandt,
closes #10380, closes #10318)
文件: src/cmdexpand.c, src/option.c, src/proto/option.pro,
src/testdir/test_options.vim
Patch 8.2.4918
问题: Conceal character from matchadd() displayed too many times.
解决方案: Check the syntax flag. (closes #10381, closes #7268)
文件: src/drawline.c, src/testdir/test_matchadd_conceal.vim
Patch 8.2.4919
问题: Can add invalid bytes with :spellgood.
解决方案: Check for a valid word string.
文件: src/mbyte.c, src/spellfile.c, src/errors.h,
src/testdir/test_spell_utf8.vim
Patch 8.2.4920 (after 8.2.4902)
问题: MS-Windows GUI: unused variables.
解决方案: Delete the variables. (John Marriott)
文件: src/gui_w32.c
Patch 8.2.4921
问题: Spell test fails because of new illegal byte check.
解决方案: Remove the test.
文件: src/testdir/test_spell.vim
Patch 8.2.4922 (after 8.2.4916)
问题: Mouse test fails on MS-Windows.
解决方案: Set 'mousemodel' to "extend".
文件: src/testdir/test_edit.vim
Patch 8.2.4923
问题: Test checks for terminal feature unnecessarily.
解决方案: Remove CheckRunVimInTerminal. (closes #10383)
文件: src/testdir/test_matchadd_conceal.vim
Patch 8.2.4924
问题: maparg() may return a string that cannot be reused.
解决方案: use msg_outtrans_special() instead of str2special().
(closes #10384)
文件: src/message.c, src/option.c, src/testdir/test_map_functions.vim,
src/testdir/test_mapping.vim, src/testdir/test_options.vim
Patch 8.2.4925
问题: Trailing backslash may cause reading past end of line.
解决方案: Check for NUL after backslash.
文件: src/textobject.c, src/testdir/test_textobjects.vim
Patch 8.2.4926
问题: #ifdef for crypt feature around too many lines.
解决方案: Move code outside of #ifdef. (closes #10388)
文件: src/option.c
Patch 8.2.4927
问题: Return type of remove() incorrect when using three arguments.
解决方案: Use first argument type when there are three arguments.
(closes #10387)
文件: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
Patch 8.2.4928
问题: Various white space and cosmetic mistakes.
解决方案: Change spaces to tabs, improve comments.
文件: src/bufwrite.c, src/channel.c, src/cindent.c, src/crypt.c,
src/debugger.c, src/digraph.c, src/edit.c, src/evalwindow.c,
src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/fileio.c,
src/filepath.c, src/gui.c, src/highlight.c, src/indent.c,
src/insexpand.c, src/job.c, src/keymap.h, src/macros.h,
src/menu.c, src/misc1.c, src/misc2.c, src/mouse.c, src/move.c,
src/normal.c, src/ops.c, src/option.c, src/option.h, src/search.c,
src/session.c, src/spellsuggest.c, src/structs.h, src/tag.c,
src/term.c, src/terminal.c, src/textformat.c, src/typval.c,
src/ui.c, src/userfunc.c, src/vim.h, src/vim9.h,
src/vim9compile.c, src/vim9execute.c, src/window.c,
src/testdir/test_cursorline.vim, src/os_unix.c, src/if_lua.c,
src/if_py_both.h, src/os_amiga.c, src/os_win32.c, src/os_mswin.c,
src/os_vms.c, src/os_vms_conf.h
Patch 8.2.4929
问题: Off-by-one error in statusline item.
解决方案: Subtrace one less. (closes #10394, closes #5599)
文件: src/buffer.c, src/testdir/test_statusline.vim,
src/testdir/dumps/Test_statusline_hl.dump
Patch 8.2.4930
问题: Interpolated string expression requires escaping.
解决方案: Do not require escaping in the expression.
文件: runtime/doc/eval.txt, src/typval.c, src/proto/typval.pro,
src/dict.c, src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
src/vim9compile.c, src/proto/vim9compile.pro, src/vim9expr.c,
src/vim9instr.c, src/alloc.c, src/proto/alloc.pro,
src/testdir/test_expr.vim, src/testdir/test_let.vim
Patch 8.2.4931
问题: Crash with sequence of Perl commands.
解决方案: Move PUTBACK to another line. (closes #10386)
文件: src/if_perl.xs
Patch 8.2.4932
问题: Not easy to filter the output of maplist().
解决方案: Add mode_bits to the dictionary. (Ernie Rael, closes #10356)
文件: runtime/doc/builtin.txt, src/map.c,
src/testdir/test_map_functions.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4933
问题: A few more capitalization mistakes in error messages.
解决方案: Adjust capitalization. (Doug Kearns)
文件: src/errors.h
Patch 8.2.4934
问题: String interpolation fails when not evaluating.
解决方案: Skip the expression when not evaluating. (closes #10398)
文件: src/typval.c, src/evalvars.c, src/proto/evalvars.pro,
src/testdir/test_vim9_expr.vim
Patch 8.2.4935
问题: With 'foldmethod' "indent" some lines are not included in the
fold. (Oleg Koshovetc)
解决方案: Fix it. (Brandon Simmons, closes #10399, closes #3214)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.4936
问题: MS-Windows: mouse coordinates for scroll event are wrong.
解决方案: Convert coordinates to the text area coordinates. (closes #10400)
文件: src/gui_w32.c
Patch 8.2.4937 (after 8.2.4931)
问题: No test for what 8.2.4931 fixes.
解决方案: Add a test that triggers a valgrind error.
文件: src/testdir/test_perl.vim
Patch 8.2.4938
问题: Crash when matching buffer with invalid pattern.
解决方案: Check for NULL regprog.
文件: src/buffer.c, src/testdir/test_buffer.vim
Patch 8.2.4939
问题: matchfuzzypos() with "matchseq" does not have all positions.
解决方案: Also add a position for white space. (closes #10404)
文件: runtime/doc/builtin.txt, src/search.c,
src/testdir/test_matchfuzzy.vim
Patch 8.2.4940
问题: Some code is never used.
解决方案: Remove dead code. Add a few more test cases.
文件: src/vim9expr.c, src/proto/vim9expr.pro, src/vim9compile.c,
src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
Patch 8.2.4941
问题: '[ and '] marks may be wrong after undo.
解决方案: Adjust the '[ and '] marks if needed. (closes #10407, closes #1281)
文件: src/undo.c, src/testdir/test_undo.vim
Patch 8.2.4942
问题: Error when setting 'filetype' in help file again.
解决方案: Deal with text property type already existing. (closes #10409)
文件: runtime/import/dist/vimhelp.vim
Patch 8.2.4943
问题: Changing 'switchbuf' may have no effect.
解决方案: Handle 'switchbuf' in didset_string_options(). (Sean Dewar,
closes #10406)
文件: src/optionstr.c, src/testdir/test_options.vim
Patch 8.2.4944
问题: Text properties are wrong after "cc". (Axel Forsman)
解决方案: Pass the deleted byte count to inserted_bytes(). (closes #10412,
closes #7737, closes #5763)
文件: src/change.c, src/testdir/test_textprop.vim
Patch 8.2.4945
问题: Inconsistent use of white space.
解决方案: Use Tabs and Spaces consistently.
文件: src/os_amiga.c, src/if_py_both.h, src/os_win32.c, src/os_mswin.c,
src/os_vms.c, src/os_vms_conf.h
Patch 8.2.4946
问题: Vim9: some code not covered by tests.
解决方案: Add a few more test cases. Remove dead code.
文件: src/vim9expr.c, src/testdir/test_vim9_expr.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4947
问题: Text properties not adjusted when accepting spell suggestion.
解决方案: Adjust text properties when text changes. (closes #10414)
文件: src/spell.c, src/spellsuggest.c, src/testdir/test_textprop.vim
Patch 8.2.4948
问题: Cannot use Perl heredoc in nested :def function. (Virginia
Senioria)
解决方案: Only concatenate heredoc lines when not in a nested function.
(closes #10415)
文件: src/userfunc.c, src/testdir/test_vim9_func.vim
Patch 8.2.4949
问题: Vim9: some code not covered by tests.
解决方案: Add a few more test cases. Fix double error message.
文件: src/vim9expr.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4950
问题: Text properties position wrong after shifting text.
解决方案: Adjust the text properties when shifting a block of text.
(closes #10418)
文件: src/ops.c, src/testdir/test_textprop.vim
Patch 8.2.4951
问题: Smart indenting done when not enabled.
解决方案: Check option values before setting can_si. (closes #10420)
文件: src/indent.c, src/proto/indent.pro, src/change.c, src/edit.c,
src/ops.c, src/testdir/test_smartindent.vim
Patch 8.2.4952
问题: GUI test will fail if color scheme changes.
解决方案: Reduce the test for now.
文件: src/testdir/test_gui.vim
Patch 8.2.4953
问题: With 'smartindent' inserting '}' after completion goes wrong.
解决方案: Check the cursor is in indent. (closes #10420)
文件: src/indent.c, src/testdir/test_smartindent.vim
Patch 8.2.4954
问题: Inserting line breaks text property spanning more than one line.
解决方案: Check TP_FLAG_CONT_PREV and TP_FLAG_CONT_NEXT. (closes #10423)
文件: src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.4955
问题: Text property in wrong position after auto-indent.
解决方案: Adjust text property columns. (closes #10422, closes #7719)
文件: src/change.c, src/testdir/test_textprop.vim
Patch 8.2.4956
问题: Reading past end of line with "gf" in Visual block mode.
解决方案: Do not include the NUL in the length.
文件: src/normal.c, src/testdir/test_gf.vim
Patch 8.2.4957
问题: Text properties in a wrong position after a block change.
解决方案: Adjust the properties columns. (closes #10427)
文件: src/ops.c, src/testdir/test_textprop.vim
Patch 8.2.4958
问题: A couple conditions are always true.
解决方案: Remove the conditions. (Goc Dundar, closes #10428)
文件: src/evalfunc.c, src/quickfix.c
Patch 8.2.4959
问题: Using NULL regexp program.
解决方案: Check for regexp program becoming NULL in more places.
文件: src/buffer.c, src/testdir/test_buffer.vim
Patch 8.2.4960
问题: Text properties that cross line boundary are not correctly updated
for a deleted line.
解决方案: Correct computing location of text property entry. (Paul Ollis,
closes #10431, closes #10430)
文件: src/memline.c, src/testdir/test_textprop.vim
Patch 8.2.4961
问题: Build error with a certain combination of features.
解决方案: Adjust #if. (John Marriott)
文件: src/memline.c
Patch 8.2.4962
问题: Files show up in git status.
解决方案: Adjust the list of ignored files. Clean up more test files.
(Shane xb Qian, closes #9929)
文件: .gitignore, src/testdir/Makefile
Patch 8.2.4963
问题: Expanding path with "/**" may overrun end of buffer.
解决方案: Use vim_snprintf().
文件: src/filepath.c
Patch 8.2.4964
问题: MS-Windows GUI: mouse event test is flaky.
解决方案: Add a short delay after generating a mouse event.
文件: src/testdir/test_gui.vim
Patch 8.2.4965
问题: GUI: testing mouse move event depends on screen cell size.
解决方案: Multiply the row and column with the screen cell size.
文件: runtime/doc/testing.txt, src/testing.c, src/testdir/test_gui.vim
Patch 8.2.4966
问题: MS-Windows GUI: mouse event test gets extra event.
解决方案: Ignore one move event.
文件: src/testdir/test_gui.vim
Patch 8.2.4967 (after 8.2.4966)
问题: MS-Windows GUI: mouse event test sometimes fails.
解决方案: Ignore one move event only if there is an extra event.
文件: src/testdir/test_gui.vim
Patch 8.2.4968
问题: Reading past end of the line when C-indenting.
解决方案: Check for NUL.
文件: src/cindent.c, src/testdir/test_cindent.vim
Patch 8.2.4969
问题: Changing text in Visual mode may cause invalid memory access.
解决方案: Check the Visual position after making a change.
文件: src/change.c, src/edit.c, src/misc2.c, src/proto/misc2.pro,
src/testdir/test_visual.vim
Patch 8.2.4970
问题: "eval 123" gives an error, "eval 'abc'" does not.
解决方案: Also give an error when evaluating only a string. (closes #10434)
文件: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
Patch 8.2.4971
问题: Vim9: interpolated string seen as range.
解决方案: Recognize an interpolated string at the start of a command line.
(closes #10434)
文件: src/ex_docmd.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4972
问题: Vim9: compilation fails when using dict member when skipping.
解决方案: Do not generate ISN_USEDICT when skipping. (closes #10433)
文件: src/vim9expr.c, src/testdir/test_vim9_expr.vim
Patch 8.2.4973
问题: Vim9: type error for list unpack mentions argument.
解决方案: Mention variable. (close #10435)
文件: src/vim9.h, src/vim9execute.c, src/vim9instr.c,
src/proto/vim9instr.pro, src/vim9compile.c,
src/testdir/test_vim9_script.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4974
问题: ":so" command may read after end of buffer.
解决方案: Compute length of text properly.
文件: src/scriptfile.c, src/testdir/test_source.vim
Patch 8.2.4975
问题: Recursive command line loop may cause a crash.
解决方案: Limit recursion of getcmdline().
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.4976
问题: Coverity complains about not restoring a saved value.
解决方案: Restore value before handling error.
文件: src/vim9execute.c
Patch 8.2.4977
问题: Memory access error when substitute expression changes window.
解决方案: Disallow changing window in substitute expression.
文件: src/ex_cmds.c, src/testdir/test_substitute.vim
Patch 8.2.4978
问题: No error if engine selection atom is not at the start.
解决方案: Give an error. (Christian Brabandt, closes #10439)
文件: runtime/doc/pattern.txt, src/errors.h, src/regexp_bt.c,
src/regexp_nfa.c, src/testdir/test_regexp_latin.vim
Patch 8.2.4979
问题: Accessing freed memory when line is flushed.
解决方案: Make a copy of the pattern to search for.
文件: src/window.c, src/testdir/test_tagjump.vim
Patch 8.2.4980
问题: When 'shortmess' contains 'A' loading a session may still warn for
an existing swap file. (Melker Österberg)
解决方案: Keep the 'A' flag to 'shortmess' in the session file.
(closes #10443)
文件: src/session.c, src/testdir/test_mksession.vim
Patch 8.2.4981
问题: It is not possible to manipulate autocommands.
解决方案: Add functions to add, get and set autocommands. (Yegappan
Lakshmanan, closes #10291)
文件: runtime/doc/autocmd.txt, runtime/doc/builtin.txt,
runtime/doc/usr_41.txt, src/autocmd.c, src/evalfunc.c,
src/proto/autocmd.pro, src/testdir/test_autocmd.vim,
src/testdir/test_vim9_builtin.vim
Patch 8.2.4982
问题: Colors in terminal window are not 100% correct.
解决方案: Use g:terminal_ansi_colors as documented. (closes #10429,
closes #7227 closes #10347)
文件: src/job.c, src/option.c, src/proto/term.pro,
src/terminal.c, src/proto/terminal.pro, src/term.c,
src/testdir/test_functions.vim, src/testdir/test_terminal.vim
Patch 8.2.4983 (after 8.2.4982)
问题: Colors test fails in the GUI.
解决方案: Reset g:terminal_ansi_colors.
文件: src/testdir/test_functions.vim
Patch 8.2.4984
问题: Dragging statusline fails for window with winbar.
解决方案: Fix off-by-one error. (closes #10448)
文件: src/mouse.c, src/testdir/test_winbar.vim
Patch 8.2.4985
问题: PVS warns for possible array underrun.
解决方案: Add a check for a positive value. (Goc Dundar, closes #10451)
文件: src/spell.c
Patch 8.2.4986
问题: Some github actions are outdated.
解决方案: Update CodeQl to v2, update checkout to v3. (closes #10450)
文件: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml,
.github/workflows/coverity.yml
Patch 8.2.4987
问题: After deletion a small fold may be closable.
解决方案: Check for a reverse range. (Brandon Simmons, closes #10457)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.4988
问题: Textprop in wrong position when replacing multi-byte chars.
解决方案: Adjust textprop position. (closes #10461)
文件: src/change.c, src/testdir/test_textprop.vim
Patch 8.2.4989
问题: Cannot specify a function name for :defcompile.
解决方案: Implement a function name argument for :defcompile.
文件: runtime/doc/vim9.txt, src/userfunc.c, src/proto/userfunc.pro,
src/vim9execute.c, src/ex_cmds.h, src/testdir/test_vim9_cmd.vim,
src/testdir/test_vim9_disassemble.vim
Patch 8.2.4990 (after 8.2.4989)
问题: Memory leak when :defcompile fails.
解决方案: Free fname when returning early.
文件: src/userfunc.c
Patch 8.2.4991
问题: No test for what patch 8.1.0535 fixes.
解决方案: Add a test. (closes #10462)
文件: src/testdir/test_fold.vim
Patch 8.2.4992 (after 8.2.4989)
问题: Compiler warning for possibly uninitialized variable. (Tony
Mechelynck)
解决方案: Initialize variable in the caller instead of in the function.
文件: src/userfunc.c, src/vim9execute.c
Patch 8.2.4993
问题: smart/C/lisp indenting is optional, which makes the code more
complex, while it only reduces the executable size a bit.
解决方案: Graduate FEAT_CINDENT, FEAT_SMARTINDENT and FEAT_LISP.
文件: runtime/doc/builtin.txt, runtime/doc/indent.txt,
runtime/doc/options.txt, runtime/doc/various.txt, src/feature.h,
src/buffer.c, src/change.c, src/cindent.c, src/charset.c,
src/edit.c, src/evalfunc.c, src/indent.c, src/insexpand.c,
src/main.c, src/mouse.c, src/ops.c, src/option.c, src/optionstr.c,
src/register.c, src/search.c, src/textformat.c, src/version.c,
src/option.h, src/optiondefs.h, src/structs.h, src/globals.h,
src/testdir/test_edit.vim
Patch 8.2.4994
问题: Tests are using legacy functions.
解决方案: Convert a few tests to use :def functions.
文件: src/testdir/test_cindent.vim
Patch 8.2.4995 (after 8.2.4992)
问题: Still a compiler warning for possibly uninitialized variable.
(Tony Mechelynck)
解决方案: Initialize variables.
文件: src/vim9execute.c
Patch 8.2.4996 (after 8.2.4969)
问题: setbufline() may change Visual selection. (Qiming Zhao)
解决方案: Disable Visual mode when using another buffer. (closes #10466)
文件: src/evalbuffer.c, src/testdir/test_bufline.vim
Patch 8.2.4997
问题: Python: changing hidden buffer can cause the display to be messed
up.
解决方案: Do not mark changed lines when using another buffer. (Paul Ollis,
closes #10437, closes #7972)
文件: src/if_py_both.h, src/testdir/test_python3.vim
Patch 8.2.4998
问题: Vim9: crash when using multiple funcref().
解决方案: Check if varargs type is NULL. (closes #10467)
文件: src/vim9type.c, src/testdir/test_vim9_func.vim
Patch 8.2.4999
问题: Filetype test table is not properly sorted.
解决方案: Sort by filetype. (Doug Kearns)
文件: src/testdir/test_filetype.vim
Patch 8.2.5000
问题: No patch for documentation updates.
解决方案: Update documentation files.
文件: runtime/doc/arabic.txt, runtime/doc/autocmd.txt,
runtime/doc/builtin.txt, runtime/doc/change.txt,
runtime/doc/channel.txt, runtime/doc/cmdline.txt,
runtime/doc/diff.txt, runtime/doc/digraph.txt,
runtime/doc/editing.txt, runtime/doc/eval.txt,
runtime/doc/filetype.txt, runtime/doc/fold.txt,
runtime/doc/ft_ada.txt, runtime/doc/ft_ps1.txt,
runtime/doc/ft_raku.txt, runtime/doc/ft_rust.txt,
runtime/doc/ft_sql.txt, runtime/doc/gui.txt,
runtime/doc/gui_w32.txt, runtime/doc/helphelp.txt,
runtime/doc/help.txt, runtime/doc/if_cscop.txt,
runtime/doc/if_lua.txt, runtime/doc/if_perl.txt,
runtime/doc/if_pyth.txt, runtime/doc/if_tcl.txt,
runtime/doc/indent.txt, runtime/doc/index.txt,
runtime/doc/insert.txt, runtime/doc/intro.txt,
runtime/doc/map.txt, runtime/doc/mbyte.txt,
runtime/doc/message.txt, runtime/doc/motion.txt,
runtime/doc/netbeans.txt, runtime/doc/options.txt,
runtime/doc/os_dos.txt, runtime/doc/os_vms.txt,
runtime/doc/os_win32.txt, runtime/doc/pattern.txt,
runtime/doc/pi_netrw.txt, runtime/doc/pi_zip.txt,
runtime/doc/popup.txt, runtime/doc/print.txt,
runtime/doc/quickfix.txt, runtime/doc/quickref.txt,
runtime/doc/remote.txt, runtime/doc/repeat.txt,
runtime/doc/rileft.txt, runtime/doc/scroll.txt,
runtime/doc/sign.txt, runtime/doc/spell.txt,
runtime/doc/sponsor.txt, runtime/doc/starting.txt,
runtime/doc/syntax.txt, runtime/doc/tabpage.txt,
runtime/doc/tagsrch.txt, runtime/doc/terminal.txt,
runtime/doc/term.txt, runtime/doc/testing.txt,
runtime/doc/textprop.txt, runtime/doc/tips.txt,
runtime/doc/todo.txt, runtime/doc/uganda.txt,
runtime/doc/undo.txt, runtime/doc/usr_02.txt,
runtime/doc/usr_04.txt, runtime/doc/usr_05.txt,
runtime/doc/usr_06.txt, runtime/doc/usr_08.txt,
runtime/doc/usr_09.txt, runtime/doc/usr_12.txt,
runtime/doc/usr_20.txt, runtime/doc/usr_29.txt,
runtime/doc/usr_40.txt, runtime/doc/usr_41.txt,
runtime/doc/usr_45.txt, runtime/doc/usr_46.txt,
runtime/doc/usr_50.txt, runtime/doc/usr_51.txt,
runtime/doc/usr_52.txt, runtime/doc/usr_90.txt,
runtime/doc/usr_toc.txt, runtime/doc/various.txt,
runtime/doc/version5.txt, runtime/doc/version6.txt,
runtime/doc/version7.txt, runtime/doc/version8.txt,
runtime/doc/version9.txt, runtime/doc/vi_diff.txt,
runtime/doc/vim9.txt, runtime/doc/visual.txt,
runtime/doc/windows.txt, runtime/doc/tags, runtime/doc/Makefile
Patch 8.2.5001
问题: Checking translations affects the search pattern history.
解决方案: Use "keeppatterns". (Doug Kearns)
文件: src/po/check.vim
Patch 8.2.5002
问题: deletebufline() may change Visual selection.
解决方案: Disable Visual mode when using another buffer. (closes #10469)
文件: src/evalbuffer.c, src/testdir/test_bufline.vim
Patch 8.2.5003
问题: Cannot do bitwise shifts.
解决方案: Add the >> and << operators. (Yegappan Lakshmanan, closes #8457)
文件: runtime/doc/eval.txt, src/errors.h, src/eval.c, src/structs.h,
src/vim.h, src/vim9execute.c, src/vim9expr.c,
src/testdir/test_expr.vim, src/testdir/test_vim9_disassemble.vim,
src/testdir/test_vim9_expr.vim
Patch 8.2.5004
问题: Right shift on negative number does not work as documented.
解决方案: Use a uvarnumber_T type cast.
文件: runtime/doc/eval.txt, src/eval.c, src/vim9expr.c,
src/vim9execute.c, src/charset.c, src/testdir/test_expr.vim
Patch 8.2.5005 (after 8.2.5003)
问题: Compiler warning for uninitialized variable. (John Marriott)
解决方案: Initialize the pointer to NULL.
文件: src/vim9expr.vim
Patch 8.2.5006 (after 8.2.5003)
问题: Asan warns for undefined behavior.
解决方案: Cast the shifted value to unsigned.
文件: src/eval.c, src/vim9expr.c, src/vim9execute.c
Patch 8.2.5007
问题: Spell suggestion may use uninitialized memory. (Zdenek Dohnal)
解决方案: Avoid going over the end of the word.
文件: src/spellsuggest.c, src/testdir/test_spell_utf8.vim
Patch 8.2.5008
问题: When 'formatoptions' contains "/" wrongly wrapping a long trailing
comment.
解决方案: Pass the OPENLINE_FORMAT flag.
文件: src/change.c, src/vim.h, src/textformat.c,
src/testdir/test_textformat.vim
Patch 8.2.5009
问题: Fold may not be closable after appending.
解决方案: Set the fd_small flag to MAYBE. (Brandon Simmons, closes #10471)
文件: src/fold.c, src/testdir/test_fold.vim
Patch 8.2.5010
问题: The terminal debugger uses various global variables.
解决方案: Add a dictionary to hold the terminal debugger preferences.
文件: runtime/doc/terminal.txt,
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
Patch 8.2.5011
问题: Replacing an autocommand requires several lines.
解决方案: Add the "replace" flag to autocmd_add(). (Yegappan Lakshmanan,
closes #10473)
文件: runtime/doc/autocmd.txt, runtime/doc/builtin.txt, src/autocmd.c,
src/testdir/test_autocmd.vim
Patch 8.2.5012
问题: Cannot select one character inside ().
解决方案: Do not try to extend the area if it is empty. (closes #10472,
closes #6616)
文件: src/textobject.c, src/testdir/test_textobjects.vim
Patch 8.2.5013
问题: After text formatting the cursor may be in an invalid position.
解决方案: Correct the cursor position after formatting.
文件: src/textformat.c, src/testdir/test_textformat.vim
Patch 8.2.5014
问题: Byte offsets are wrong when using text properties.
解决方案: Make sure text properties do not affect the byte counts.
(Paul Ollis, closes #10474)
文件: src/memline.c, src/textprop.c, src/testdir/test_textprop.vim
Patch 8.2.5015
问题: Hoon and Moonscript files are not recognized.
解决方案: Add filetype patterns. (Goc Dundar, closes #10478)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.5016
问题: Access before start of text with a put command.
解决方案: Check the length is more than zero.
文件: src/register.c, src/testdir/test_put.vim
Patch 8.2.5017
问题: Gcc 12.1 warns for uninitialized variable.
解决方案: Initialize the variable. (closes #10476)
文件: src/evalvars.c
Patch 8.2.5018
问题: Vim9: some code is not covered by tests.
解决方案: Delete dead code.
文件: src/vim9instr.c, src/proto/vim9instr.pro, src/vim9compile.c,
src/vim9expr.c,
Patch 8.2.5019
问题: Cannot get the first screen column of a character.
解决方案: Let virtcol() optionally return a list. (closes #10482,
closes #7964)
文件: runtime/doc/builtin.txt, src/evalfunc.c,
src/testdir/test_functions.vim, src/testdir/test_vim9_builtin.vim
Patch 8.2.5020
问题: Using 'imstatusfunc' and 'imactivatefunc' breaks 'foldopen'.
解决方案: Save and restore the KeyTyped flag. (closes #10479)
文件: src/gui_xim.c, src/testdir/test_iminsert.vim
Patch 8.2.5021
问题: Build fails with normal features and +terminal. (Dominique Pellé)
解决方案: Add #ifdefs. (closes #10484)
文件: src/terminal.c
Patch 8.2.5022
问题: 'completefunc'/'omnifunc' error does not end completion.
解决方案: Check if there was an error or exception. (closes #10486,
closes #4218)
文件: src/insexpand.c, src/testdir/test_ins_complete.vim
Patch 8.2.5023
问题: Substitute overwrites allocated buffer.
解决方案: Disallow undo when in a substitute command.
文件: src/normal.c, src/undo.c, src/testdir/test_substitute.vim
Patch 8.2.5024
问题: Using freed memory with "]d".
解决方案: Copy the pattern before searching.
文件: src/normal.c, src/testdir/test_tagjump.vim
Patch 8.2.5025
问题: Vim9: a few lines not covered by tests.
解决方案: Add a few tests.
文件: src/vim9script.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_import.vim
Patch 8.2.5026
问题: Vim9: a few lines not covered by tests.
解决方案: Delete dead code. Add a few test cases. make "12->func()" work.
文件: src/vim9type.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
src/vim9compile.c, src/testdir/test_vim9_assign.vim,
src/testdir/test_vim9_func.vim
Patch 8.2.5027
问题: Error for missing :endif when an exception was thrown. (Dani
Dickstein)
解决方案: Do not give an error when aborting. (closes #10490)
文件: src/ex_docmd.c, src/testdir/test_trycatch.vim
Patch 8.2.5028
问题: Syntax regexp matching can be slow.
解决方案: Adjust the counters for checking the timeout to check about once
per msec. (closes #10487, closes #2712)
文件: src/regexp_bt.c, src/regexp_nfa.c
Patch 8.2.5029
问题: "textlock" is always zero.
解决方案: Remove "textlock" and rename "textwinlock" to "textlock".
(closes #10489)
文件: runtime/doc/insert.txt, runtime/doc/tags, src/beval.c,
src/change.c, src/edit.c, src/errors.h, src/eval.c, src/ex_cmds.c,
src/ex_getln.c, src/proto/ex_getln.pro, src/globals.h,
src/indent.c, src/insexpand.c, src/map.c, src/register.c,
src/undo.c, src/window.c, src/testdir/test_edit.vim,
src/testdir/test_ins_complete.vim, src/testdir/test_popup.vim,
src/testdir/test_quickfix.vim
Patch 8.2.5030
问题: autocmd_add() can only handle one event and pattern.
解决方案: Support a list of events and patterns. (Yegappan Lakshmanan,
closes #10483)
文件: runtime/doc/builtin.txt, src/autocmd.c, src/errors.h,
src/testdir/test_autocmd.vim
Patch 8.2.5031
问题: Cannot easily run the benchmarks.
解决方案: Have "make benchmark" in the src directory work.
文件: src/Makefile, src/testdir/Makefile
Patch 8.2.5032
问题: Python 3 test fails without the GUI.
解决方案: Check the balloon_eval feature is available.
文件: src/testdir/test_python3.vim
Patch 8.2.5033 (after 8.2.5030)
问题: Build error with +eval but without +quickfix. Warning for
uninitialized variable.
解决方案: Adjust #ifdefs. (John Marriott)
文件: src/errors.h, src/autocmd.c
Patch 8.2.5034
问题: There is no way to get the byte index from a virtual column.
解决方案: Add virtcol2col(). (Yegappan Lakshmanan, closes #10477,
closes #10098)
文件: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
src/move.c, src/proto/move.pro, src/testdir/test_cursor_func.vim
Patch 8.2.5035
问题: When splitting a window the changelist position moves.
解决方案: Set the changelist index a bit later. (closes #10493)
文件: src/window.c, src/testdir/test_changelist.vim,
src/testdir/test_normal.vim
Patch 8.2.5036 (after 8.2.5028)
问题: Using two counters for timeout check in NFA engine.
解决方案: Use only one counter. Tune the counts based on guessing.
文件: src/regexp_nfa.c
Patch 8.2.5037
问题: Cursor position may be invalid after "0;" range.
解决方案: Check the cursor position when it was set by ";" in the range.
文件: src/ex_docmd.c, src/testdir/test_excmd.vim
Patch 8.2.5038
问题: A finished terminal in a popup window does not show a scrollbar.
解决方案: Show the scrollbar if the terminal job is finished. (closes
#10497)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_poptermscroll_1.dump,
src/testdir/dumps/Test_popupwin_poptermscroll_2.dump,
src/testdir/dumps/Test_popupwin_poptermscroll_3.dump
Patch 8.2.5039
问题: Confusing error if first argument of popup_create() is wrong.
解决方案: Give a more informative error.
文件: src/popupwin.c, src/testdir/test_popupwin.vim, src/errors.h,
src/testdir/dumps/Test_popup_settext_07.dump
Patch 8.2.5040
问题: Scrollbar thumb in scrolled popup not visible.
解决方案: Show at least one thumb character. (fixes 10492)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_scroll_13.dump
Patch 8.2.5041
问题: Cannot close a terminal popup with "NONE" job.
解决方案: Adjust the conditions for whether a job is running.
(closes #10498)
文件: src/buffer.c, src/terminal.c, src/proto/terminal.pro,
src/undo.c, src/testdir/test_popupwin.vim
Patch 8.2.5042
问题: Scrollbar thumb in tall scrolled popup not visible.
解决方案: Show at least one thumb character. (fixes 10492)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_scroll_13.dump
Patch 8.2.5043
问题: Can open a cmdline window from a substitute expression.
解决方案: Disallow opening a command line window when text or buffer is
locked.
文件: src/buffer.c, src/ex_getln.c, src/proto/ex_getln.pro,
src/window.c, src/testdir/test_substitute.vim
Patch 8.2.5044 (after 8.2.5043)
问题: Command line test fails.
解决方案: Also beep when cmdline win can't be opened because of locks.
Make the test not beep. Make the test pass on MS-Windows.
文件: src/ex_getln.c, src/testdir/test_substitute.vim
Patch 8.2.5045
问题: Can escape a terminal popup window when the job is finished.
解决方案: Only check for a finished job where it is relevant.
(closes #10253)
文件: src/popupwin.c, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_poptermscroll_1.dump,
src/testdir/dumps/Test_popupwin_poptermscroll_2.dump,
src/testdir/dumps/Test_popupwin_poptermscroll_3.dump,
src/testdir/dumps/Test_popupwin_poptermscroll_4.dump
Patch 8.2.5046
问题: vim_regsub() can overwrite the destination.
解决方案: Pass the destination length, give an error when it doesn't fit.
文件: src/regexp.h, src/regexp.c, src/proto/regexp.pro, src/eval.c,
src/ex_cmds.c
Patch 8.2.5047
问题: CurSearch highlight is often wrong.
解决方案: Remember the last highlighted position and redraw when needed.
文件: src/globals.h, src/match.c, src/drawscreen.c, src/change.c,
src/testdir/test_search.vim,
src/testdir/dumps/Test_hlsearch_cursearch_changed_1.dump
Patch 8.2.5048
问题: When using XIM the gui test may fail.
解决方案: Only use --not-a-term when not using XIM.
文件: src/testdir/test_gui.vim
Patch 8.2.5049
问题: Insufficient tests for autocommands.
解决方案: Add a few more tests. (Yegappan Lakshmanan, closes #10507)
文件: src/autocmd.c, src/testdir/gen_opt_test.vim,
src/testdir/test_autocmd.vim, src/testdir/test_cmdline.vim
Patch 8.2.5050
问题: Using freed memory when searching for pattern in path.
解决方案: Make a copy of the line.
文件: src/search.c, src/testdir/test_tagjump.vim
Patch 8.2.5051
问题: Check for autocmd_add() event argument is confusing.
解决方案: Make the code more straightforward.
文件: src/autocmd.c
Patch 8.2.5052
问题: CI checkout step title is a bit cryptic.
解决方案: Add a better title. (closes #10509)
文件: .github/workflows/ci.yml, .github/workflows/coverity.yml,
.github/workflows/codeql-analysis.yml
Patch 8.2.5053
问题: Cannot have a comment halfway an expression in an autocmd command
block.
解决方案: When skipping over the NL also skip over comments. (closes #10519)
文件: src/eval.c, src/testdir/test_autocmd.vim
Patch 8.2.5054
问题: No good filetype for conf files similar to dosini.
解决方案: Add the confini filetype. (closes #10518)
文件: runtime/filetype.vim, src/testdir/test_filetype.vim
Patch 8.2.5055
问题: Statusline is not updated when terminal title changes.
解决方案: Redraw the status line when the title changes. (issue #10425)
文件: src/terminal.c
Patch 8.2.5056
问题: The channel log only contains some of the raw terminal output.
解决方案: Add the "o" flag to log all terminal output. Use it for "--log".
文件: runtime/doc/channel.txt, runtime/doc/starting.txt, src/main.c,
src/channel.c, src/vim.h, src/term.c, src/edit.c, src/normal.c,
src/optionstr.c
Patch 8.2.5057
问题: Using gettimeofday() for timeout is very inefficient.
解决方案: Set a platform dependent timer. (Paul Ollis, closes #10505)
文件: src/auto/configure, src/config.h.in, src/configure.ac,
src/drawscreen.c, src/errors.h, src/evalfunc.c, src/ex_cmds.c,
src/ex_getln.c, src/match.c, src/os_mac.h, src/os_macosx.m,
src/os_unix.c, src/os_win32.c, src/proto/os_unix.pro,
src/proto/os_win32.pro, src/proto/regexp.pro, src/quickfix.c,
src/regexp.c, src/regexp.h, src/regexp_bt.c, src/regexp_nfa.c,
src/screen.c, src/search.c, src/structs.h, src/syntax.c,
src/testdir/test_hlsearch.vim, src/testdir/test_search.vim,
src/testdir/test_syntax.vim
Patch 8.2.5058
问题: input() does not handle composing characters properly.
解决方案: Use mb_cptr2char_adv() instead of mb_ptr2char_adv().
(closes #10527)
文件: src/getchar.c, src/testdir/test_functions.vim
Patch 8.2.5059
问题: Autoconf 2.71 produces many obsolete warnings.
解决方案: Replace obsolete macros with non-obsolete ones, where the
functionality does not change. (issue #10528)
文件: src/configure.ac, src/auto/configure
Patch 8.2.5060 (after 8.2.5059)
问题: Running configure fails.
解决方案: Remove line break.
文件: src/configure.ac, src/auto/configure
Patch 8.2.5061
问题: C89 requires signal handlers to return void.
解决方案: Drop RETSIGTYPE and hard-code a void return value.
文件: src/configure.ac, src/auto/configure, src/if_cscope.c,
src/os_unix.c, src/pty.c, src/os_mac.h, src/os_vms_conf.h,
src/config.h.in, src/osdef1.h.in
Patch 8.2.5062
问题: Coverity warns for dead code.
解决方案: Remove the dead code.
文件: src/os_unix.c, src/match.c
Patch 8.2.5063
问题: Error for a command may go over the end of IObuff.
解决方案: Truncate the message.
文件: src/ex_docmd.c, src/testdir/test_cmdline.vim
Patch 8.2.5064
问题: No test for what 8.1.0052 fixes.
解决方案: Add a test. (closes #10531)
文件: src/getchar.c, src/testdir/test_mapping.vim
Patch 8.2.5065
问题: Wrong return type for main() in tee.c.
解决方案: Use "int" instead of "void". Remove unused variable.
文件: src/tee/tee.c
Patch 8.2.5066
问题: Can specify multispace listchars only for whole line.
解决方案: Add "leadmultispace". (Christian Brabandt, closes #10496)
文件: runtime/doc/options.txt, src/drawline.c, src/message.c,
src/screen.c, src/structs.h, src/window.c,
src/testdir/test_listchars.vim
Patch 8.2.5067
问题: Timer_create is not available on every Mac system. (Hisashi T
Fujinaka)
解决方案: Adjust #ifdef.
文件: src/os_unix.c
Patch 8.2.5068
问题: Gcc 12.1 warning when building tee.
解决方案: Change type to size_t. (John Marriott)
文件: src/tee/tee.c
Patch 8.2.5069
问题: Various warnings from clang on MS-Windows.
解决方案: Fix the code to avoid the warnings. (Yegappan Lakshmanan,
closes #10538)
文件: src/dosinst.c, src/fileio.c, src/gui_w32.c, src/os_mswin.c,
src/os_win32.c
Patch 8.2.5070
问题: Unnecessary code.
解决方案: Remove code that isn't needed. (closes #10534)
文件: src/message.c, src/screen.c
Patch 8.2.5071
问题: With some Mac OS version clockid_t is redefined.
解决方案: Adjust #ifdefs. (Ozaki Kiichi, closes #10549)
文件: src/os_mac.h
Patch 8.2.5072
问题: Using uninitialized value and freed memory in spell command.
解决方案: Initialize "attr". Check for empty line early.
文件: src/spell.c, src/testdir/test_spell_utf8.vim
Patch 8.2.5073
问题: Clang on MS-Windows produces warnings.
解决方案: Avoid the warnings. (Yegappan Lakshmanan, closes #10546)
文件: src/dosinst.c, src/dosinst.h, src/gui_dwrite.cpp, src/gui_w32.c,
src/iscygpty.c, src/libvterm/src/vterm_internal.h, src/mbyte.c,
src/os_win32.c, src/os_win32.h, src/term.c, src/xdiff/xinclude.h
Patch 8.2.5074
问题: Spell test fails on MS-Windows.
解决方案: Do not change 'encoding'
文件: src/testdir/test_spell_utf8.vim
Patch 8.2.5075
问题: Clang gives an out of bounds warning.
解决方案: adjust conditional expression (John Marriott)
文件: src/ui.c
Patch 8.2.5076
问题: Unnecessary code.
解决方案: Remove code and replace with function call. (closes #10552)
文件: src/drawline.c, src/getchar.c
Patch 8.2.5077
问题: Various warnings from clang on MS-Windows.
解决方案: Avoid the warnings. (Yegappan Lakshmanan, closes #10553)
文件: src/dosinst.c, src/dosinst.h, src/filepath.c, src/gui_w32.c,
src/misc1.c, src/os_win32.c
Patch 8.2.5078
问题: Substitute test has a one second delay.
解决方案: Use ":silent!". Add another test case. (closes #10558)
文件: src/testdir/test_substitute.vim
Patch 8.2.5079
问题: DirChanged autocommand may use freed memory. (Shane-XB Qian)
解决方案: Free the memory later. (closes #10555)
文件: src/ex_docmd.c, src/testdir/test_autocmd.vim
Patch 8.2.5080
问题: When indenting gets out of hand it is hard to stop.
解决方案: When line gets too long set got_int.
文件: src/indent.c
Patch 8.2.5081
问题: Autocmd test fails on MS-Windows.
解决方案: Set shellslash to get forward slashes.
文件: src/testdir/test_autocmd.vim
Patch 8.2.5082 (after 8.2.5080)
问题: Retab test fails.
解决方案: Disable the test for now.
文件: src/testdir/test_retab.vim
Patch 8.2.5083
问题: Autocmd test still fails on MS-Windows.
解决方案: Change backward to forward slashes.
文件: src/testdir/test_autocmd.vim
Patch 8.2.5084
问题: When the GUI shows a dialog tests get stuck.
解决方案: Add the --gui-dialog-file argument.
文件: runtime/doc/starting.txt, src/Make_mvc.mak, src/gui.c, src/main.c,
src/message.c, src/os_mswin.c, src/proto/gui.pro,
src/proto/main.pro, src/structs.h, src/testdir/Make_dos.mak,
src/testdir/Make_ming.mak, src/testdir/Makefile,
src/testdir/runtest.vim, src/testdir/shared.vim
Patch 8.2.5085
问题: Gcc gives warning for signed/unsigned difference.
解决方案: Use a different pointer type. (John Marriott)
文件: src/os_mswin.c
Patch 8.2.5086
问题: CI runs on Windows 2019.
解决方案: Switch to Windows 2022. (closes #10566)
文件: .github/workflows/ci.yml
Patch 8.2.5087
问题: Cannot build with clang on MS-Windows.
解决方案: Add support for building with clang. (Yegappan Lakshmanan,
closes #10557)
文件: src/GvimExt/Make_ming.mak, src/INSTALLpc.txt,
src/Make_cyg_ming.mak
Patch 8.2.5088
问题: Value of cmod_verbose is a bit complicated to use.
解决方案: Use zero for not set, value + 1 when set. (closes #10564)
文件: src/ex_docmd.c, src/ex_getln.c, src/globals.h, src/structs.h
Patch 8.2.5089
问题: Some functions return a different value on failure.
解决方案: Initialize the return value earlier. (Yegappan Lakshmanan,
closes #10568)
文件: src/autocmd.c, src/dict.c, src/evalfunc.c, src/list.c
Patch 8.2.5090
问题: MS-Windows: vim.def is no longer used.
解决方案: Delete vim.def. (Ken Takata, closes #10569)
文件: Filelist, Makefile, src/vim.def
Patch 8.2.5091
问题: Terminal test fails with some shell commands.
解决方案: Disable setting the window title. (closes #10530)
文件: src/testdir/test_terminal.vim
Patch 8.2.5092
问题: Using "'<,'>" in Ex mode may compare unrelated pointers.
解决方案: Set eap->cmd to "+" only later.
文件: src/ex_docmd.c
Patch 8.2.5093
问题: Error message for unknown command may mention the command twice.
(Malcolm Rowe)
解决方案: Add the did_append_cmd flag. (closes #10570)
文件: src/ex_docmd.c
Patch 8.2.5094
问题: MS-Windows GUI: empty command may cause a dialog.
解决方案: Delete the dialog file. Improve the message.
文件: src/testdir/runtest.vim, src/testdir/test_ex_mode.vim
Patch 8.2.5095
问题: Terminal test still fails with some shell commands.
解决方案: Disable setting the window title in the Vim instance running in a
terminal window. (closes #10530)
文件: src/testdir/test_terminal.vim
Patch 8.2.5096 (after 8.2.5095)
问题: Terminal test still fails with some shell commands.
解决方案: Add missing "call". (closes #10530)
文件: src/testdir/test_terminal.vim
Patch 8.2.5097
问题: Using uninitialized memory when using 'listchars'.
解决方案: Use the length returned by mb_char2bytes(). (closes #10576)
文件: src/message.c
Patch 8.2.5098
问题: Spelldump test sometimes hangs.
解决方案: Catch the problem of the spell file not being found to avoid
hanging in the download dialog.
文件: src/testdir/test_spell.vim
Patch 8.2.5099
问题: Some terminal tests are not retried.
解决方案: Mark terminal tests as flaky.
文件: src/testdir/test_terminal.vim
Patch 8.2.5100
问题: Memory usage tests are not retried.
解决方案: Mark memory usage tests as flaky.
文件: src/testdir/test_memory_usage.vim
Patch 8.2.5101
问题: MS-Windows with MinGW: $CC may be "cc" instead of "gcc".
解决方案: Set $CC if it is not matching "clang". (Yegappan Lakshmanan,
closes #10578)
文件: src/INSTALLpc.txt, src/Make_cyg_ming.mak
Patch 8.2.5102
问题: Interrupt not caught in test.
解决方案: Consider an exception thrown in the current try/catch when got_int
is set. Also catch early exit when not using try/catch.
文件: src/indent.c, src/testing.c, src/testdir/test_retab.vim,
src/testdir/runtest.vim
Patch 8.2.5103
问题: Build fails with small features.
解决方案: Add #ifdef. Skip test on MS-Windows.
文件: src/indent.c, src/testdir/test_retab.vim
Patch 8.2.5104 (after 8.2.5103)
问题: Test hangs on MS-Windows.
解决方案: Skip another test on MS-Windows.
文件: src/testdir/test_retab.vim
Patch 8.2.5105 (after 8.2.5104)
问题: Test still hangs on MS-Windows.
解决方案: Skip "nocatch" test the right way.
文件: src/testdir/test_retab.vim
Patch 8.2.5106
问题: Default cmdwin mappings are re-mappable.
解决方案: Make the default mappings not re-mappable. (closes #10580) Use
symbols for the first do_map() argument.
文件: src/vim.h, src/ex_getln.c, src/map.c, src/proto/map.pro,
src/digraph.c, src/netbeans.c
Patch 8.2.5107
问题: Some callers of rettv_list_alloc() check for not OK. (Christ van
Willegen)
解决方案: Use "==" instead of "!=" when checking the return value.
文件: src/evalbuffer.c, src/channel.c, src/cmdexpand.c, src/evalfunc.c,
src/evalwindow.c, src/insexpand.c, src/job.c, src/list.c,
src/map.c, src/menu.c, src/mouse.c, src/move.c, src/sign.c,
src/textprop.c, src/term.c, src/time.c
Patch 8.2.5108
问题: Retab test disabled because it hangs on MS-Windows.
解决方案: Also set got_int at the other place an overlong text is detected.
文件: src/indent.c, src/testdir/test_retab.vim
Patch 8.2.5109
问题: Mode not updated after CTRL-OCTRL-C in Insert mode.
解决方案: Set redraw_mode and use it. (closes #10581)
文件: src/main.c, src/normal.c, src/testdir/test_normal.vim,
src/testdir/dumps/Test_mode_updated_1.dump
Patch 8.2.5110
问题: Icon filetype not recognized from the first line.
解决方案: Add a check for the first line. (Doug Kearns)
文件: runtime/autoload/dist/script.vim, src/testdir/test_filetype.vim
Patch 8.2.5111
问题: No test for --gui-dialog-file.
解决方案: Add a test.
文件: src/testdir/test_gui.vim
Patch 8.2.5112 (after 8.2.5111)
问题: Gui test hangs on MS-Windows.
解决方案: Use "!start" to start Vim.
文件: src/testdir/test_gui.vim
Patch 8.2.5113
问题: Timer becomes invalid after fork/exec, :gui gives errors. (Gabriel
Dupras)
解决方案: Delete the timer befor forking. (closes #10584)
文件: src/os_unix.c, src/proto/os_unix.pro, src/gui.c
Patch 8.2.5114
问题: Time limit on searchpair() does not work properly.
解决方案: Set the time limit once instead of for each regexp. (closes #10562)
文件: src/search.c, src/evalfunc.c, src/testdir/test_search.vim
Patch 8.2.5115
问题: Search timeout is overrun with some patterns.
解决方案: Check for timeout in more places. Make the flag volatile and
atomic. Use assert_inrange() to see what happened.
文件: src/regexp_nfa.c, src/regexp_bt.c, src/regexp.c, src/os_unix.c,
src/proto/os_unix.pro, src/testdir/test_search.vim
Patch 8.2.5116
问题: "limit" option of matchfuzzy() not always respected.
解决方案: Remove "else". (Kazuyuki Miyagi, closes #10586)
文件: runtime/doc/builtin.txt, src/search.c,
src/testdir/test_matchfuzzy.vim
Patch 8.2.5117
问题: Crash when calling a Lua callback from a :def function. (Bohdan
Makohin)
解决方案: Handle FC_CFUNC in call_user_func_check(). (closes #10587)
文件: src/userfunc.c, src/testdir/test_lua.vim
Patch 8.2.5118
问题: MS-Windows: sending a message to another Vim may hang if that Vim
is halted.
解决方案: Add a timeout to serverSendToVim(). (Ken Takata, closes #10585)
文件: runtime/pack/dist/opt/editexisting/plugin/editexisting.vim,
src/os_mswin.c
Patch 8.2.5119
问题: CI uses cache v2.
解决方案: Use cache v3. (closes #10588)
文件: .github/workflows/ci.yml
Patch 8.2.5120
问题: Searching for quotes may go over the end of the line.
解决方案: Check for running into the NUL.
文件: src/textobject.c
Patch 8.2.5121
问题: Interrupt test sometimes fails.
解决方案: Use a different file name.
文件: src/testdir/test_interrupt.vim
Patch 8.2.5122
问题: Lisp indenting my run over the end of the line.
解决方案: Check for NUL earlier.
文件: src/indent.c, src/testdir/test_indent.vim
Patch 8.2.5123
问题: Using invalid index when looking for spell suggestions.
解决方案: Do not decrement the index when it is zero.
文件: src/spellsuggest.c, src/testdir/test_spell.vim
Patch 8.2.5124
问题: When syntax timeout test fails it does not show the time.
解决方案: Use assert_inrange().
文件: src/testdir/test_syntax.vim
Patch 8.2.5125
问题: MS-Windows: warnings from MinGW compiler.
解决方案: Use "volatile". (Yasuhiro Matsumoto, closes #10589) Initialize
variable.
文件: src/os_win32.c, src/proto/os_win32.pro, src/map.c
Patch 8.2.5126
问题: Substitute may overrun destination buffer.
解决方案: Disallow switching buffers in a substitute expression.
文件: src/ex_docmd.c, src/testdir/test_substitute.vim
Patch 8.2.5127
问题: Using assert_true() does not show value on failure.
解决方案: Use assert_inrange(). (closes #10593)
文件: src/testdir/test_channel.vim, src/testdir/test_hlsearch.vim
Patch 8.2.5128
问题: Syntax highlighting disabled when using synID() in searchpair()
skip expression and it times out. (Jaehwang Jung)
解决方案: Add the redrawtime_limit_set flag. (closes #10562)
文件: src/globals.h, src/drawscreen.c, src/syntax.c
Patch 8.2.5129
问题: Timeout handling is not optimal.
解决方案: Avoid setting timeout_flag twice. Adjust the pointer when
stopping the regexp timeout. Adjust variable name.
文件: src/os_unix.c, src/os_win32.c, src/regexp.c
Patch 8.2.5130
问题: Edit test for mode message fails when using valgrind.
解决方案: Use WaitForAssert(). Run beep test later.
文件: src/testdir/test_edit.vim
Patch 8.2.5131
问题: Timeout implementation is not optimal.
解决方案: Further improvements for timeouts. Add a test for searchpair()
timeout. (partly by Paul Ollis)
文件: src/configure.ac, src/auto/configure,
src/testdir/test_hlsearch.vim, src/testdir/test_search.vim
Patch 8.2.5132
问题: :mkview test doesn't test much.
解决方案: Save the view with the folds closed. (James McCoy, closes #10596)
文件: src/testdir/test_mksession.vim
Patch 8.2.5133
问题: MacOS: build fails.
解决方案: Remove "#if 0" from timer_delete().
文件: src/os_macosx.m
Patch 8.2.5134
问题: Function has confusing name.
解决方案: Rename tgetent_error() to invoke_tgetent().
文件: src/term.c
Patch 8.2.5135
问题: Running configure gives warnings for main() return type.
解决方案: Specify "int" return type. Avoid a few more warnings.
文件: src/configure.ac, src/auto/configure
Patch 8.2.5136
问题: Debugger test fails when run with valgrind.
解决方案: Wait longer when using valgrind.
文件: src/testdir/shared.vim, src/testdir/test_debugger.vim,
src/testdir/test_search.vim
Patch 8.2.5137
问题: Cannot build without the +channel feature. (Dominique Pellé)
解决方案: Add #ifdef around ch_log() calls. (closes #10598)
文件: src/os_unix.c, src/regexp_nfa.c, src/regexp_bt.c
Patch 8.2.5138
问题: Various small issues.
解决方案: Various small improvements.
文件: src/filepath.c, src/job.c, src/mark.c, src/move.c,
src/popupwin.c, src/testdir/test_filetype.vim
Patch 8.2.5139
问题: TIME_WITH_SYS_TIME is no longer supported by autoconf.
解决方案: Always include time.h.
文件: src/os_unix.h
Patch 8.2.5140
问题: Seachpair timeout test is flaky.
解决方案: Mark the test as flaky so it is retried.
文件: src/testdir/test_search.vim
Patch 8.2.5141
问题: Using "volatile int" in a signal handler might be wrong.
解决方案: Use "volatile sig_atomic_t".
文件: src/os_unix.c, src/proto/os_unix.pro, src/os_win32.c,
src/proto/os_win32.pro, src/regexp.c,
Patch 8.2.5142
问题: Startup test fails if there is a status bar at the top of the
screen. (Ernie Rael)
解决方案: Use a larger vertical offset in the test.
文件: src/testdir/test_startup.vim
Patch 8.2.5143
问题: Some tests fail when using valgrind. Spurious leak reports.
解决方案: Use WaitForAssert(). Avoid failing fork/exec. Skip tests where a
job is killed when running valgrind.
文件: src/testdir/test_iminsert.vim, src/testdir/test_popup.vim,
src/testdir/test_cscope.vim, src/testdir/test_channel.vim
Patch 8.2.5144
问题: With 'lazyredraw' set completion menu may be displayed wrong.
解决方案: When the popup menu is visible do not insert a screen line.
(closes #10601)
文件: src/screen.c
Patch 8.2.5145
问题: Exit test causes spurious valgrind reports.
解决方案: Skip test. Add CheckNotValgrind.
文件: src/testdir/test_exit.vim, src/testdir/check.vim,
src/testdir/test_channel.vim
Patch 8.2.5146
问题: Memory leak when substitute expression nests.
解决方案: Use an array of expression results.
文件: src/alloc.c, src/regexp.c, src/proto/regexp.pro,
src/errors.h, src/ex_cmds.c, src/testdir/test_substitute.vim
Patch 8.2.5147
问题: Flaky test always fails on retry.
解决方案: Delete the created function.
文件: src/testdir/test_search.vim
Patch 8.2.5148
问题: Invalid memory access when using an expression on the command line.
解决方案: Make sure the position does not go negative.
文件: src/ex_getln.c, src/testdir/test_cmdline.vim
Patch 8.2.5149 (after 8.2.5148)
问题: Cannot build without the +eval feature. (Tony Mechelynck)
解决方案: Add #ifdefs.
文件: src/ex_getln.c
Patch 8.2.5150
问题: Read past the end of the first line with ":0;'{".
解决方案: When on line zero check the column is valid for line one.
文件: src/ex_docmd.c, src/testdir/test_cmdline.vim
Patch 8.2.5151
问题: Reading beyond the end of the line with lisp indenting.
解决方案: Avoid going over the NUL at the end of the line.
文件: src/indent.c, src/testdir/test_lispwords.vim
Patch 8.2.5152
问题: search() gets stuck with "c" and skip evaluates to true.
解决方案: Reset the SEARCH_START option. (closes #10608)
文件: src/evalfunc.c, src/testdir/test_syntax.vim
Patch 8.2.5153
问题: "make uninstall" does not remove colors/lists.
解决方案: Add a line to the Makefile. (closes #10609)
文件: src/Makefile
Patch 8.2.5154
问题: Still mentioning version8, some cosmetic issues.
解决方案: Prefer mentioning version9, cosmetic improvements.
文件: src/version.c, src/if_tcl.c, src/regexp.c,
src/testdir/test_gui.vim, src/os_unix.c, Filelist, src/Makefile
Patch 8.2.5155
问题: In diff mode windows may get out of sync. (Gary Johnson)
解决方案: Avoid that the other window scrolls for 'cursorbind'.
文件: src/move.c, src/testdir/test_diffmode.vim,
src/testdir/dumps/Test_diff_scroll_1.dump,
src/testdir/dumps/Test_diff_scroll_2.dump
Patch 8.2.5156
问题: Search timeout test often fails with FreeBSD.
解决方案: Double the maximum time.
文件: src/testdir/test_search.vim
Patch 8.2.5157
问题: MS-Windows GUI: CTRL-key combinations do not always work.
解决方案: Handle special key combinations better. (closes #10613,
closes #10602, closes #10579)
文件: src/gui_w32.c
Patch 8.2.5158
问题: TSTP and INT signal tests are not run with valgrind.
解决方案: Sleep a bit longer. (closes #10614)
文件: src/testdir/test_signals.vim
Patch 8.2.5159 (after 8.2.5157)
问题: Fix for CTRL-key combinations causes more problems than it solves.
解决方案: Roll back the change.
文件: src/gui_w32.c
Patch 8.2.5160
问题: Accessing invalid memory after changing terminal size.
解决方案: Adjust cmdline_row and msg_row to the value of Rows.
文件: src/term.c
Patch 8.2.5161
问题: Might still access invalid memory.
解决方案: Add extra check for negative value.
文件: src/message.c
Patch 8.2.5162
问题: Reading before the start of the line with BS in Replace mode.
解决方案: Check the cursor column is more than zero.
文件: src/edit.c
Patch 8.2.5163
问题: Crash when deleting buffers in diff mode.
解决方案: Recompute diffs later. Skip window without a valid buffer.
文件: src/diff.c, src/testdir/test_diffmode.vim
Patch 8.2.5164
问题: Invalid memory access after diff buffer manipulations.
解决方案: Use zero offset when change removes all lines in a diff block.
文件: src/diff.c, src/testdir/test_diffmode.vim
Patch 8.2.5165
问题: Import test fails because 'diffexpr' isn't reset.
解决方案: Reset 'diffexpr'.
文件: src/testdir/test_vim9_import.vim
Patch 8.2.5166
问题: Test for DiffUpdated fails.
解决方案: Also accept a count of two.
文件: src/testdir/test_diffmode.vim
Patch 8.2.5167
问题: get(Fn, 'name') on funcref returns special byte code.
解决方案: Use the printable name.
文件: src/evalfunc.c, src/testdir/test_getvar.vim
Patch 8.2.5168
问题: Cannot build with Python 3.11.
解决方案: Adjust define for _PyObject_TypeCheck. (Zdenek Dohnal,
closes #10627)
文件: src/if_python3.c
Patch 8.2.5169
问题: Nested :source may use NULL pointer.
解决方案: Do not use the NULL pointer.
文件: src/eval.c, src/testdir/test_vimscript.vim
Patch 8.2.5170
问题: Tiny issues.
解决方案: Tiny improvements.
文件: src/misc1.c, src/screen.c, src/vim.h
Patch 8.2.5171
问题: Dependencies and proto files are outdated.
解决方案: Update dependencies and proto files. Avoid errors.
文件: src/Makefile, src/gui_w32.c, src/os_mswin.c, src/proto/buffer.pro,
src/proto/cmdexpand.pro, src/proto/getchar.pro,
src/proto/help.pro, src/proto/mbyte.pro, src/proto/option.pro,
src/proto/screen.pro, src/proto/syntax.pro,
src/proto/textformat.pro, src/proto/textobject.pro,
src/proto/time.pro, src/proto/gui_x11.pro, src/proto/if_tcl.pro,
src/proto/os_mswin.pro
Patch 8.2.5172
问题: "make menu" still uses legacy script.
解决方案: make menu generation script use Vim9 script, fix errors.
文件: runtime/makemenu.vim
vim:tw=78:ts=8:noet:ft=help:norl: