aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testdir
Commit message (Collapse)AuthorAge
* vim-patch:8.2.4253: using freed memory when substitute with function callzeertzjq2022-04-04
| | | | | | | | Problem: Using freed memory when substitute uses a recursive function call. Solution: Make a copy of the substitute text. https://github.com/vim/vim/commit/37f47958b8a2a44abc60614271d9537e7f14e51a 'compatible' doesn't seem needed for the test.
* vim-patch:8.2.4247: stack corruption when looking for spell suggestionszeertzjq2022-04-04
| | | | | | | | | Problem: Stack corruption when looking for spell suggestions. Solution: Prevent the depth increased too much. Add a five second time limit to finding suggestions. https://github.com/vim/vim/commit/06f15416bb8d5636200a10776f1752c4d6e49f31 Cherry-pick parentheses from patch 8.2.4402.
* test(old): fix test_spell.vim encodingzeertzjq2022-04-04
|
* test(old): fix test_regexp_latin.vim encoding (#17989)zeertzjq2022-04-04
| | | Cherry-pick a change from Vim patch 8.2.3982
* vim-patch:8.2.4672: using :normal with Ex mode may make :substitute hang ↵zeertzjq2022-04-03
| | | | | | | | | | (#17983) Problem: Using :normal with Ex mode may make :substitute hang. Solution: When getting an empty line behave like 'q' was typed. (closes vim/vim#10070) https://github.com/vim/vim/commit/ce416b453a849c837f9f6ffc91dd4792d84e1bfd Cherry-pick a comment from patch 8.2.0363.
* [RFC] vim-patch:8.1.1378: delete() can not handle a file name that looks ↵Shougo2022-04-03
| | | | | | | | | | | | li… (#16268) Problem: Delete() can not handle a file name that looks like a pattern. Solution: Use readdir() instead of appending "/*" and expanding wildcards. (Ken Takata, closes vim/vim#4424, closes vim/vim#696) https://github.com/vim/vim/commit/701ff0a3e53d253d7300c385e582659bbff7860d Cherry-pick a change to Test_delete_rf() from patch 8.1.1921. Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* vim-patch:8.2.4664: Elvish files are not recognized (#17963)Christian Clason2022-04-02
| | | | | Problem: Elvish files are not recognized. Solution: Recognize .elv files. (Bruno Roque, closes vim/vim#10058) https://github.com/vim/vim/commit/c1658a196bb05dd96562fd0a92409be2201b62e9
* vim-patch:8.2.4660: cursorcolumn is sometimes not correctzeertzjq2022-04-01
| | | | | | | Problem: Cursorcolumn is sometimes not correct. Solution: Recompute the cursor column when entering Insert mode and the cursor is on a character wider than a screen cell. https://github.com/vim/vim/commit/782c6744b49b30d9460ed00d4773666e42e07163
* vim-patch:8.2.3489: ml_get error after search with rangezeertzjq2022-04-01
| | | | | | Problem: ml_get error after search with range. Solution: Limit the line number to the buffer line count. https://github.com/vim/vim/commit/35a319b77f897744eec1155b736e9372c9c5575f
* vim-patch:8.2.3472: other crashes with empty search pattern not testedzeertzjq2022-04-01
| | | | | | Problem: Other crashes with empty search pattern not tested. Solution: Add a few more test lines. (Dominique Pellé) https://github.com/vim/vim/commit/9af9fd6ab637ea507dd9015fa5a84a408c36c1e0
* vim-patch:8.2.3471: crash when using CTRL-T after an empty search patternzeertzjq2022-04-01
| | | | | | Problem: Crash when using CTRL-T after an empty search pattern. Solution: Bail out when there is no previous search pattern. (closes vim/vim#8953) https://github.com/vim/vim/commit/d8d957de86f218de9124ca1209548f8c6f61b69b
* vim-patch:8.2.3122: with 'nowrap' cursor position is unexected in narrow ↵zeertzjq2022-04-01
| | | | | | | | window (#17935) Problem: With 'nowrap' cursor position is unexected in narrow window. (Leonid V. Fedorenchik) Solution: Put cursor on the last non-empty line. (closes vim/vim#8525) https://github.com/vim/vim/commit/30441bb3d5fa73f888b09684db3f54ff5ab48dbc
* vim-patch:8.2.4658: org-mode files are not recognized (#17939)Christian Clason2022-03-31
| | | | | Problem: Org-mode files are not recognized. Solution: Add patterns to recognize "org" files. (closes vim/vim#10046) https://github.com/vim/vim/commit/3a6f952cc87065a4cf1f6502b2054ba99fdf45ed
* vim-patch:8.2.4577: message test is flakyzeertzjq2022-03-31
| | | | | | Problem: Message test is flaky. (Elimar Riesebieter) Solution: Trigger the autocommand event only after startup is finished. https://github.com/vim/vim/commit/9323ca51c2b1522f26907a7b8879067245ebd1be
* vim-patch:8.2.4200: some tests do not clean up properlyzeertzjq2022-03-31
| | | | | | | | | Problem: Some tests do not clean up properly. Solution: Delete created files. (Yegappan Lakshmanan, closes vim/vim#9611) https://github.com/vim/vim/commit/7e765a39b795d5331bf2d4927b41df7b78915af9 Omit test_filetype.vim: already ported Omit test_vim9_import.vim: N/A
* vim-patch:8.2.4156: fileinfo message overwrites echo'ed messagezeertzjq2022-03-31
| | | | | | | Problem: Fileinfo message overwrites echo'ed message. Solution: Reset need_fileinfo when displaying a message. (Rob Pilling, closes vim/vim#9569) https://github.com/vim/vim/commit/726f7f91fd17e3e7eb39614a20d10ea83c134df0
* vim-patch:8.2.1844: using "q" at the more prompt doesn't stop a long messagezeertzjq2022-03-31
| | | | | | | | Problem: Using "q" at the more prompt doesn't stop a long message. Solution: Check for "got_int". (closes vim/vim#7122) https://github.com/vim/vim/commit/3d30af8783bf43fbfece641ec81ad8d2f01b3735 Cherry-pick file name change from patch 8.2.2112.
* vim-patch:8.2.4645: 'shortmess' changed when session does not store options ↵zeertzjq2022-03-31
| | | | | | | | (#17908) Problem: 'shortmess' changed when session does not store options. Solution: Save and restore 'shortmess' if needed. (James Charti, closes vim/vim#10037) https://github.com/vim/vim/commit/fd01280d01c2270a320d8c962d24140a8176a400
* vim-patch:8.2.4649: various formatting problemszeertzjq2022-03-30
| | | | | | Problem: Various formatting problems. Solution: Improve the code formatting. https://github.com/vim/vim/commit/b4ad3b0deac12674a7773311890b48fd39c6807c
* vim-patch:8.2.4349: FileChangedShell test fails on MS-Windowszeertzjq2022-03-30
| | | | | | Problem: FileChangedShell test fails on MS-Windows. Solution: Skip the test on MS-Windows. https://github.com/vim/vim/commit/c9e3187d053dcef03d11915b06be0c78ab45bc75
* vim-patch:8.2.3110: a pattern that matches the cursor position is complicatedzeertzjq2022-03-30
| | | | | | | | | Problem: A pattern that matches the cursor position is bit complicated. Solution: Use a dot to indicate the cursor line and column. (Christian Brabandt, closes vim/vim#8497, closes vim/vim#8179) https://github.com/vim/vim/commit/04db26b36000a4677b95403ec94bd11f6cc73975 Also use `n = ++vcol` in regexp_bt.c as `++vcol` alone fails lint.
* vim-patch:8.2.4646: using buffer line after it has been freed (#17907)zeertzjq2022-03-30
| | | | | Problem: Using buffer line after it has been freed in old regexp engine. Solution: After getting mark get the line again. https://github.com/vim/vim/commit/b55986c52d4cd88a22d0b0b0e8a79547ba13e1d5
* vim-patch:8.2.3449: sort fails if the sort compare function returns 999 (#17909)dundargoc2022-03-30
| | | | | Problem: Sort fails if the sort compare function returns 999. Solution: Adjust value to -1 / 0 / 1. (Yasuhiro Matsumoto, closes vim/vim#8884) https://github.com/vim/vim/commit/c04f62346bfd6b92151908239a3c5ab1a7d18f2a
* vim-patch:8.2.4630: 'cursorline' not always updated with 'culopt' is ↵zeertzjq2022-03-28
| | | | | | | | | | | "screenline" Problem: 'cursorline' not always updated with 'cursorlineopt' is "screenline". Solution: Call check_redraw_cursorline() more often. (closes vim/vim#10013) https://github.com/vim/vim/commit/bf269ed0b0bd8414eea7bea17465b2738a9a2b55 Code was reverted in patch 8.2.4638, so this just ports the test.
* vim-patch:8.2.4638: superfluous check if a redraw is needed for 'cursorline'zeertzjq2022-03-28
| | | | | | | | | Problem: Superfluous check if a redraw is needed for 'cursorline'. Solution: Remove check_redraw_cursorline(). (closes vim/vim#10030, closes vim/vim#10029) https://github.com/vim/vim/commit/3e559cd88486ffab6b6fb4e0921b4600d137a617 redraw_after_callback() is N/A. Omits changes that just revert code from patch 8.2.4630.
* vim-patch:8.2.4631: crash when switching window in BufWipeout autocommandzeertzjq2022-03-27
| | | | | | | | | Problem: Crash when switching window in BufWipeout autocommand. Solution: Put any buffer in the window to avoid it being NULL. (closes vim/vim#10024) https://github.com/vim/vim/commit/347538fad0c503249ebdedd5884c2081257c9f61 win_init_empty() cannot be made static because it is used in autocmd.c
* vim-patch:8.2.4327: may end up with no current bufferzeertzjq2022-03-26
| | | | | | | | | | Problem: May end up with no current buffer. Solution: When deleting the current buffer to not pick a quickfix buffer as the new current buffer. https://github.com/vim/vim/commit/e3537aec2f8d6470010547af28dcbd83d41461b8 The test cannot be ported as-is because Nvim doesn't support "-Z" command line argument. Just use only "--clean" instead.
* vim-patch:8.2.4281: using freed memory with :lopen and :bwipezeertzjq2022-03-26
| | | | | | | | Problem: Using freed memory with :lopen and :bwipe. Solution: Do not use a wiped out buffer. https://github.com/vim/vim/commit/9b4a80a66544f2782040b641498754bcb5b8d461 Cherry-pick some indent changes from patch 8.2.1432.
* vim-patch:8.2.4626: Visual area not updated when removing sign in Visual ↵zeertzjq2022-03-26
| | | | | | | | mode (#17864) Problem: Visual area not fully updated when removing sign in Visual mode while scrolling. Solution: Adjust check for topline. (closes vim/vim#10017) https://github.com/vim/vim/commit/abb6fbd14d985b9b36a4e336d6edaf9853888ac1
* vim-patch:8.2.3453: autocmd not executed when editing a directory (#17846)zeertzjq2022-03-26
| | | | | | Problem: Autocmd not executed when editing a directory ending in a path separator inside try block. Solution: Return NOTDONE instead of FAIL. (closes vim/vim#8885) https://github.com/vim/vim/commit/40fa12aea352474d229f2f750e954a4318aead4e
* Merge pull request #17821 from zeertzjq/vim-patch-cursorlinezeertzjq2022-03-24
|\ | | | | vim-patch:8.2.{4591,4614}: cursorline redrawing
| * vim-patch:8.2.4591: cursor line not updated when a callback moves the cursorzeertzjq2022-03-24
| | | | | | | | | | | | | | | | Problem: Cursor line not updated when a callback moves the cursor. Solution: Check if the cursor moved. (closes vim/vim#9970) https://github.com/vim/vim/commit/e7a74d53754765f22ef8ce71c915bb669d5f7f3f redraw_after_callback() is N/A. Nvim handles timers on the main loop.
* | feat(input): enable <tab>/<c-i>, <cr>/<c-m>, <esc>/<c-[> pairs unconditionallybfredl2022-03-24
| |
* | feat(input)!: delay some conversions to vgetc()zeertzjq2022-03-24
|/
* vim-patch:8.2.2716: the equivalent class regexp is missing some characterszeertzjq2022-03-19
| | | | | | | | | Problem: The equivalent class regexp is missing some characters. Solution: Update the list of equivalent characters. (Dominique Pellé, closes vim/vim#8029) https://github.com/vim/vim/commit/0b94e297afd072c51bf2eed12c7ffe3978d93399 Match upstream's indent in s:equivalence_class().
* Merge pull request #17266 from famiu/feat/ui/global-statuslinebfredl2022-03-17
|\ | | | | feat(statusline): add global statusline
| * feat: add support for global statuslineFamiu Haque2022-03-18
| | | | | | | | | | | | | | | | | | | | Ref: #9342 Adds the option to have a single global statusline for the current window at the bottom of the screen instead of a statusline at the bottom of every window. Enabled by setting `laststatus = 3`. Due to the fact that statuslines at the bottom of windows are removed when global statusline is enabled, horizontal separators are used instead to separate horizontal splits. The horizontal separator character is configurable through the`horiz` item in `'fillchars'`. Separator connector characters are also used to connect the horizontal and vertical separators together, which are also configurable through the `horizup`, `horizdown`, `vertleft`, `vertright` and `verthoriz` items in `fillchars`. The window separators are highlighted using the `WinSeparator` highlight group, which supersedes `VertSplit` and is linked to `VertSplit` by default in order to maintain backwards compatibility.
* | vim-patch:8.2.4571: not all gdb files are recognized (#17727)Jade Lovelace2022-03-15
| | | | | | | | | | | | Problem: Not all gdb files are recognized. Solution: Add a few more patterns for gdb. (closes https://github.com/vim/vim/pull/9956) https://github.com/vim/vim/commit/8d5e514d77bd4b1956656ad2be2ce7094bd43a72
* | vim-patch:8.2.4568: getmousepos() does not compute the column below the last ↵Sean Dewar2022-03-15
| | | | | | | | | | | | | | | | | | | | | | line Problem: getmousepos() does not compute the column below the last line. Solution: Also compute the column when the mouse is below the last line. (Sean Dewar, closes vim/vim#9946) https://github.com/vim/vim/commit/10792feebd237aee89270669e509e85cafdfac60 test_setmouse is N/A.
* | vim-patch:8.2.4559: getmousepos() returns the screen columnSean Dewar2022-03-15
| | | | | | | | | | | | | | | | | | Problem: getmousepos() returns the screen column. (Ernie Rael) Solution: Return the text column, as documented. https://github.com/vim/vim/commit/533870a98501fac2b51ef4bc489fac3a055a41a9 Re-introduce vcol2col, which was removed in 71b1f4e for being unused. Move it to mouse.c (like in v8.1.2062, which hasn't been ported yet).
* | vim-patch:8.2.4555: getmousepos() returns the wrong columnSean Dewar2022-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: getmousepos() returns the wrong column. (Ernie Rael) Solution: Limit to the text size, not the number of bytes. https://github.com/vim/vim/commit/986b0fd0c550d9834a3cc45dd87555c13152c391 test_setmouse is N/A; adjust test for Nvim. N/A patches for version.c: vim-patch:8.2.4569: Coverity warning for not using a return value Problem: Coverity warning for not using a return value. Solution: Add "(void)". https://github.com/vim/vim/commit/977525fea662b7f37ad0e052894c1f62b5b03269
* | vim-patch:8.2.4566: check for existing buffer in session file may not workzeertzjq2022-03-15
| | | | | | | | | | | | | | Problem: Check for existing buffer in session file does not work for files in the home directory. Solution: Use fnamemodify(). (James Cherti, closes vim/vim#9945) Add a test. https://github.com/vim/vim/commit/7d42840033aedf36389208b62e28b4e0b251c199
* | vim-patch:8.2.1413: previous tab page not usable from an Ex commandSean Dewar2022-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Previous tab page not usable from an Ex command. Solution: Add the "#" argument for :tabnext et al. (Yegappan Lakshmanan, closes vim/vim#6677) https://github.com/vim/vim/commit/94f4ffa7704921a3634e56b878e6dc362bc3d508 Do not rename old_curtab to prev_tp in win_new_tabpage, this can be confused with the previous tabpage (`:tabprevious`). Cherry-pick ex_errmsg from v8.2.1280. https://github.com/vim/vim/commit/8930caaa1a283092aca81fdbc3fcf15c7eadb197
* | vim-patch:8.2.1401: cannot jump to the last used tabpageSean Dewar2022-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot jump to the last used tabpage. Solution: Add g<Tab> and tabpagnr('#'). (Yegappan Lakshmanan, closes vim/vim#6661, neovim #11626) https://github.com/vim/vim/commit/62a232506d06f6d1b3b7271801c907d6294dfe84 Nvim implemented this feature before Vim, but Vim made some useful changes (e.g: beeping on failure). Port the changes to closer match Vim (also makes porting future patches easier). Also note that because CHECK_CMDWIN was added to goto_tabpage_tp, there is no need to do the extra work with tabpage_index and goto_tabpage inside goto_tabpage_lastused to fix cmdwin issues any more (#11692). Note that while goto_tabpage_tp doesn't check for textlock like goto_tabpage does, it shouldn't matter as it is already checked for earlier. Add tags for <C-Tab> to tabpage.txt, and refer to <C-Tab> over CTRL-Tab to be consistent with other docs like the patch. Remove mention of "previous tabpage" (it can be confused with the tabpage to the left, e.g: `:tabprevious`). Similarly, don't rename old_curtab to last_tab in enter_tabpage (it might be confused with the right-most tabpage, e.g: `:tablast`). Cherry-pick Test_tabpage change from v8.2.0634. https://github.com/vim/vim/commit/92b83ccfda7a1d654ccaaf161a9c8a8e01fbcf76
* | vim-patch:8.2.4454: resetting cmdwin_type only for one situationSean Dewar2022-03-14
| | | | | | | | | | | | | | | | Problem: Resetting cmdwin_type only for one situation. Solution: Reset cmdwin_type before closing windows. (closes vim/vim#9822) https://github.com/vim/vim/commit/6a8b13614e5bcb233d20403ae9f008ccba152be3 Move the check to win_free_all to match Vim.
* | vim-patch:8.2.4445: exit test fails on MS-Windows anywaySean Dewar2022-03-14
| | | | | | | | | | | | Problem: Exit test fails on MS-Windows anyway. Solution: Skip the test on MS-Windows. https://github.com/vim/vim/commit/29a9e6971849b4a9eabf14fee1130d51cecfbaa7
* | vim-patch:8.2.4444: beep caused by testSean Dewar2022-03-14
| | | | | | | | | | | | | | | | | | | | Problem: Beep caused by test. ASAN reports leaks. Solution: 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. https://github.com/vim/vim/commit/68eab67119734ea1efc7cef1287276d969f2713a The test is skipped, but cherry-pick CheckNotAsan from v8.2.2424 anyway. https://github.com/vim/vim/commit/97202d951685fc4d90085da676a90644cbf72571
* | vim-patch:8.2.4442: test for error reading input fails on MS-WindowsSean Dewar2022-03-14
| | | | | | | | | | | | Problem: Test for error reading input fails on MS-Windows. Solution: Don't run the test on MS-Windows. https://github.com/vim/vim/commit/70b9e4f4c3a62e325fd16ac108bd12feb026ede5
* | vim-patch:8.2.4438: crash on exit when using cmdline windowSean Dewar2022-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash on exit when using cmdline window. Solution: Reset "cmdwin_type" before exiting. (closes vim/vim#9817) https://github.com/vim/vim/commit/ca0c1caa36823ea8e61184268d7337e79995352f Bram also went with the cmdwin_type = 0 solution, but putting it in read_error_exit isn't ideal and only fixes one specific variant of the bug, so don't port that change. Port the test only, but skip it as Nvim does not exit after stdin is exhausted. Using -es instead does exit, but read_error_exit does not run preserve_exit in that case, and does not have issues exiting even without resetting cmdwin_type. Note that the test has problems and is fixed in later patches.
* | vim-patch:8.2.4428: crash when switching tabpage while in the cmdline windowSean Dewar2022-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash when switching tabpage while in the cmdline window. Solution: Disallow switching tabpage when in the cmdline window. https://github.com/vim/vim/commit/0f6e28f686dbb59ab3b562408ab9b2234797b9b1 Ensure cmdline window doesn't stop us from closing tabs with EXITFREE. mem_free_all -> win_free_all -> tabpage_close -> ... -> goto_tabpage_tp -> CHECK_CMDWIN can cause an infinite loop if Nvim is exited without using standard methods such as :qa! and friends (e.g: killed via a signal). This issue had caused the ASAN CI's functionaltests to timeout. Cherry-pick Test_cmdwin_tabpage from v8.2.4463. https://github.com/vim/vim/commit/38b85cb4d7216705058708bacbc25ab90cd61595 This bug was already fixed in Nvim. Note that g<Tab> inside cmdwin is already tested for in tabnewentered_spec.lua anyway. E492 is thrown after E11 when using ":norm" in assert_fails for some reason (except after v8.2.1919, which isn't ported yet). As v8.2.1183 isn't ported yet, so we cannot assert E11 directly. Modify the test to check for E11 and E492 seperately; when v8.2.1183 is ported, the assertion for E492 will fail and the changes can be reverted to match upstream. Remove redundant CHECK_CMDWIN from goto_tabpage; it's handled with text_locked() and text_locked_msg() above: vim-patch:8.2.4434: duplicate check for cmdline window Problem: Duplicate check for cmdline window. Solution: Remove the second check. (Sean Dewar, closes vim/vim#9816) https://github.com/vim/vim/commit/16b51d26fe2cc3afb09afd439069220dea74581d