aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | fix(lua): highlight.on_yank can close timer in twice #18976notomo2022-06-15
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Steps to reproduce: 1. setting `vim.highlight.on_yank` ``` vim.api.nvim_create_autocmd({ "TextYankPost" }, { pattern = { "*" }, callback = function() vim.highlight.on_yank({ timeout = 200 }) end, }) ``` 2. repeat typing `yeye` ... 3. causes the following error. ``` Error executing vim.schedule lua callback: vim/_editor.lua:0: handle 0x01e96970 is already closing stack traceback: [C]: in function 'close' vim/_editor.lua: in function '' vim/_editor.lua: in function <vim/_editor.lua:0> ``` 📝 Test result before fix: [----------] Global test environment setup. [----------] Running tests from test/functional/lua/highlight_spec.lua [ RUN ] vim.highlight.on_yank does not show errors even if buffer is wiped before timeout: 15.07 ms OK [ RUN ] vim.highlight.on_yank does not show errors even if executed between timeout and clearing highlight: 15.07 ms ERR test/helpers.lua:73: Expected objects to be the same. Passed in: (string) 'Error executing vim.schedule lua callback: vim/_editor.lua:0: handle 0x02025260 is already closing stack traceback: [C]: in function 'close' vim/_editor.lua: in function '' vim/_editor.lua: in function <vim/_editor.lua:0>' Expected: (string) ''
* refactor(log): use msg_schedule_semsg #18950Justin M. Keyes2022-06-15
|
* vim-patch:8.2.5097: using uninitialized memory when using 'listchars' (#18974)zeertzjq2022-06-16
| | | | | Problem: Using uninitialized memory when using 'listchars'. Solution: Use the length returned by mb_char2bytes(). (closes vim/vim#10576) https://github.com/vim/vim/commit/74ac29cecd56457ee93f3f71b31b7a2e6d9712d6
* fix(ui): do not call showmode() when setting window height (#18969)zeertzjq2022-06-15
|
* vim-patch:8c1b8cb2e0b5 (#18966)Christian Clason2022-06-15
| | | | Update runtime files https://github.com/vim/vim/commit/8c1b8cb2e0b52d0853f85c2096a2f22dbc57a788
* test: correct check for v:errmsg in inccommand test (#18968)zeertzjq2022-06-15
| | | | After the first separator is typed v:errmsg can be set. Check for its value before typing the first separator.
* docs: fix typos (#18866)dundargoc2022-06-15
| | | | | | | docs: fix typos and similarly insignificant changes Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: smjonas <jonas.strittmatter@gmx.de> Co-authored-by: kanreki <32443233+kanreki@users.noreply.github.com>
* Merge pull request #18947 from zeertzjq/vim-8.2.1897zeertzjq2022-06-14
|\ | | | | vim-patch:8.2.{1897,1898,5088}
| * vim-patch:8.2.5088: value of cmod_verbose is a bit complicated to usezeertzjq2022-06-14
| | | | | | | | | | | | | | | | Problem: Value of cmod_verbose is a bit complicated to use. Solution: Use zero for not set, value + 1 when set. (closes vim/vim#10564) https://github.com/vim/vim/commit/cd7496382efc9e6748326c6cda7f01003fa07063 Omit has_cmdmod(): only used for Vim9 script
| * vim-patch:8.2.1898: command modifier parsing always uses global cmdmodzeertzjq2022-06-14
| | | | | | | | | | | | Problem: Command modifier parsing always uses global cmdmod. Solution: Pass in cmdmod_T to use. Rename struct fields consistently. https://github.com/vim/vim/commit/e10044015841711b989f9a898d427bcc1fdb4c32
| * refactor(api): remove redundant fields of CmdParseInfozeertzjq2022-06-14
| |
| * vim-patch:8.2.1897: command modifiers are saved and set inconsistentlyzeertzjq2022-06-14
| | | | | | | | | | | | | | | | | | Problem: Command modifiers are saved and set inconsistently. Solution: Separate parsing and applying command modifiers. Save values in cmdmod_T. https://github.com/vim/vim/commit/5661ed6c833e05467cab33cb9b1c535e7e5cc570 Cherry-pick: :0verbose fix from patch 8.2.4741
* | Merge pull request #18880 from bfredl/arenabfredl2022-06-14
|\ \ | |/ |/| perf(memory): use an arena for RPC decoding
| * perf(memory): use an arena for RPC decodingbfredl2022-06-14
| | | | | | | | | | | | | | | | | | drawback: tracing memory errors with ASAN is less accurate for arena allocated memory. Therefore, to start with it is being used for Object types around serialization/deserialization exclusively. This is going to have a large impact especially when TUI is refactored as a co-prosess as all UI events will be serialized and deserialized by nvim itself.
* | refactor: enable -Wconversion warning for eval.c (#18448)dundargoc2022-06-14
| | | | | | Work on https://github.com/neovim/neovim/issues/567
* | vim-patch:6ba83ba9ee29 (#18948)Christian Clason2022-06-14
| | | | | | | | Update runtime files. https://github.com/vim/vim/commit/6ba83ba9ee292f68aa0b218b3eef42db31c0b632
* | fix(inccommand): never preview if parsing command failed (#18944)zeertzjq2022-06-14
|/ | | | `errormsg` is not always set when parsing the command failed (e.g. when the range contains invalid marks). Check the return value is better.
* feat(lsp): sort codelens if multiple item per line (#18951)rhcher2022-06-13
|
* vim-patch:8.2.0577: not all modifiers supported for :options (#18952)zeertzjq2022-06-13
| | | | | | | Problem: Not all modifiers supported for :options. Solution: Use all cmdmod.split flags. (closes vim/vim#4401) https://github.com/vim/vim/commit/7a1637f4c00ac3d0cbf894803ada1586a1717470 Cherry-pick Test_options_command() change from patch 8.2.0540
* fix(tests): missing clear() #18927kylo2522022-06-13
| | | This was caught in #18674 since it allows test isolation
* feat: cmdheight=0 #16251Shougo2022-06-13
| | | | | | | | | Fix https://github.com/neovim/neovim/issues/1004 Limitation: All outputs need hit-enter prompt. Related: https://github.com/neovim/neovim/pull/6732 https://github.com/neovim/neovim/pull/4382
* Merge pull request #18902 from bfredl/fulexitbfredl2022-06-13
|\ | | | | fix(tests): check for EOF in requests to nvim properly
| * fix(tests): check for EOF on exit of nvim properlybfredl2022-06-13
| |
* | Merge pull request #18934 from zeertzjq/vim-8.2.5079zeertzjq2022-06-13
|\ \ | |/ |/| vim-patch:8.2.{5079,5081,5083}
| * vim-patch:8.2.5083: autocmd test still fails on MS-Windowszeertzjq2022-06-13
| | | | | | | | | | | | Problem: Autocmd test still fails on MS-Windows. Solution: Change backward to forward slashes. https://github.com/vim/vim/commit/db77c49401145d76441fbb3d22a1d7d987681c13
| * vim-patch:8.2.5081: autocmd test fails on MS-Windowszeertzjq2022-06-13
| | | | | | | | | | | | Problem: Autocmd test fails on MS-Windows. Solution: Set shellslash to get forward slashes. https://github.com/vim/vim/commit/7c0d0c3c75151e716184397a41ff74ab0429db5a
| * vim-patch:8.2.5079: DirChanged autocommand may use freed memoryzeertzjq2022-06-13
|/ | | | | | | | | Problem: DirChanged autocommand may use freed memory. (Shane-XB Qian) Solution: Free the memory later. (closes vim/vim#10555) https://github.com/vim/vim/commit/d8c9d32c8932e93008bfd4e8828ed42f4e9f8315 Code change is N/A as Nvim gets the full current directory again before applying the autocommand, so this just ports the tests.
* build(lint): fix lintuncrustify #18945Justin M. Keyes2022-06-12
| | | | | | | | | | Problem: lintuncrustify doesn't actually do anything. Solution: - Fix the parameters. - Fail correctly on nonzero result. followup to #18940
* test: dismiss quit_more from Lua #11226Daniel Hahler2022-06-12
| | | Add a test for what #16537 fixed.
* Merge pull request #18931 from zeertzjq/regexp-num-escapedzeertzjq2022-06-13
|\ | | | | fix(substitute): subtract number of backslashes later
| * vim-patch:8.2.5078: substitute test has a one second delayzeertzjq2022-06-12
| | | | | | | | | | | | Problem: Substitute test has a one second delay. Solution: Use ":silent!". Add another test case. (closes vim/vim#10558) https://github.com/vim/vim/commit/3269efdf014dd3b6e60e330950d40a7cc5d13d3a
| * fix(substitute): subtract number of backslashes laterzeertzjq2022-06-12
| |
* | build: remove CMAKE_CROSSCOMPILING code #18914dundargoc2022-06-12
| | | | | | | | This is rarely, if ever, used and certainly not tested. It's likely this isn't functional anymore.
* | build(lint): fix luacheck not found #18940Justin M. Keyes2022-06-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Since 6d57bb89c1ee #18543, luacheck is not found on some systems when running the "lintlua" target. Solution: - Move the find_program() to the top-level CMakeLists.txt - Define a def_cmd_target() function with fewer assumptions than the old lint() function. - Move "lintuncrustify" to src/nvim/CMakeLists.txt so it can reuse the $LINT_NVIM_SOURCES already defined there. - Make the lint targets _fatal_ by default. There is little reason for the "lint" umbrella target defined in Makefile to exist if it's going to ignore the absence of the actual linters. - For now, keep the uncrustify call in a separate cmake script so that it can be silenced (too noisy).
* | fix(buffer): disable buffer-updates before removing from window #18933zeertzjq2022-06-12
| | | | | | | | | | | | | | | | There can be other places that access window buffer info (e.g. `tabpagebuflist()`), so checking `w_closing` in `win_findbuf()` doesn't solve the crash in all cases, and may also cause Nvim's behavior to diverge from Vim. Fix #14998
* | Merge pull request #18936 from bfredl/apioptionbfredl2022-06-12
|\ \ | | | | | | refactor(api): reorganize code
| * | refactor(api): update vimdocbfredl2022-06-12
| | |
| * | refactor(api): move command related API to separate filebfredl2022-06-12
| | |
| * | refactor(api): move extmark specific functions to api/extmark.cbfredl2022-06-12
| | |
| * | refactor(api): move option code to own filebfredl2022-06-12
| |/
* | fix(inccommand): skip split window if not enough room #18937Famiu Haque2022-06-12
| | | | | | | | | | Command preview now behaves like inccommand=nosplit when there's not enough room for the preview window to be opened instead of aborting, which is consistent with old behavior of 'inccommand'.
* | feat(contrib): asan debugging script #18892dundargoc2022-06-12
|/ | | | Opted to use a shell script because it's simpler to manipulate environment variables than in makefiles.
* Merge pull request #18919 from bfredl/multiattrbfredl2022-06-11
|\ | | | | fix(messages): add color when showing nvim_echo in :messages history
| * fix(messages): add color when showing nvim_echo in :messages historybfredl2022-06-11
|/
* Merge pull request #18428 from bfredl/do_sourcebfredl2022-06-11
|\ | | | | feat(api): nvim__get_runtime do_source
| * feat(api): nvim__get_runtime do_sourcebfredl2022-06-11
|/
* fix(inccommand): clear cmdpreview state if preview is not shown (#18923)zeertzjq2022-06-11
|
* vim-patch:8.2.5076: unnecessary code (#18922)zeertzjq2022-06-11
| | | | | Problem: Unnecessary code. Solution: Remove code and replace with function call. (closes vim/vim#10552) https://github.com/vim/vim/commit/2e7cba347fc8b746add12aa5e0e9f6218a76c788
* Merge pull request #18461 from dundargoc/refactor/change-linenr-to-int32bfredl2022-06-10
|\ | | | | refactor: change type of linenr_T from long to int32_t
| * refactor: change type of linenr_T from long to int32_tDundar Goc2022-06-10
|/ | | | | | | | | | | | | The size of long varies depending on architecture, in contrast to the MAXLNUM constant which sets the maximum allowable number of lines to 2^32-1. This discrepancy may lead to hard to detect bugs, for example https://github.com/neovim/neovim/issues/18454. Setting linenr_T to a fix maximum size of 2^32-1 will prevent this type of errors in the future. Also change the variables `amount` and `amount_after` to be linenr_T since they're referring to "the line number difference" between two texts.