aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| | * | | | | | refactor(decorations): more conservative redraw rangeLuuk van Baal2024-01-13
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Decor range is being redrawn unconditionally, negating the more conservative line redrawing that follows. Solution: Get rid of unconditional redraw_buf_range_later() call.
| * | | | | | Merge pull request #26734 from bfredl/splitaroobfredl2024-01-13
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | fix(buffer_updates): correct buffer updates when splitting empty line
| | * | | | | | fix(buffer_updates): correct buffer updates when splitting empty linebfredl2024-01-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixes #11591
| * | | | | | | vim-patch:9.1.0022: Coverity complains about improper use of negative value ↵zeertzjq2024-01-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#27001) Problem: Coverity complains about improper use of negative value Solution: Add a condition to validate that keytyped is larger or equal to 0 Apparently patch 9.1.0006 made it more explicit for Coverity, that the TOLOWER_LOC() macros do not handle negative values properly. However, that condition has always been there even before that, so add a condition to verify that keytyped is indeed at least 0 closes: vim/vim#13824 https://github.com/vim/vim/commit/49471963fefbdf78239d9066d84e14e1876fb177 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | | | | | | Merge pull request #26911 from zeertzjq/vim-8.2.3439zeertzjq2024-01-13
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | vim-patch:8.2.3439,9.1.{0015,0021}
| | * | | | | | | vim-patch:9.1.0021: i_CTRL-R- doesn't work for multibyte chars in Replace modezeertzjq2024-01-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: i_CTRL-R- doesn't work for multibyte chars in Replace mode, Coverity complains missing return value for u_save_cursor() Solution: Use mb_charlen() and del_chars() instead, handle failure mode for u_save_cursor() correctly (@zeertzjq) closes: vim/vim#13846 https://github.com/vim/vim/commit/424ec1f235a53131042aed94d30f6e2528e551d9
| | * | | | | | | vim-patch:9.1.0015: i_CTRL-R- no longer works in replace modezeertzjq2024-01-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: i_CTRL-R- no longer works in replace mode Solution: delete characters in replace mode before putting, add a test, add a bit warning into the documentation, that i_CTRL-R-P/O is not supported in Replace mode for now fixes: vim/vim#13792 closes: vim/vim#13816 https://github.com/vim/vim/commit/5d5cbb2b9ac526fb6fad2116e24a282affc45efe Co-authored-by: Christian Brabandt <cb@256bit.org>
| | * | | | | | | vim-patch:8.2.3439: deleted lines go to wrong yank registerzeertzjq2024-01-13
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Deleted lines go to wrong yank register. Solution: Reset y_append when not calling get_yank_register(). (Christian Brabandt, closes vim/vim#8872) https://github.com/vim/vim/commit/78eb9cce911dcd662182443e0920649ec1596d41 Nvim has removed y_append static variable and already works as expected. Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | | | | | | vim-patch:9.1.0025: A few typos in tests and justify.vimdundargoc2024-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: A few typos in tests and justify.vim Solution: fix them closes: vim/vim#13848 https://github.com/vim/vim/commit/dc4c37b9d5130c777b377287b8b38cd24da084cb Co-authored-by: dundargoc <gocdundar@gmail.com>
| * | | | | | | fix(flake): clang-tools moved to nativeBuildInputs (#26955)LamprosPitsillos2024-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix(flake): clang-tools moved to nativeBuildInputs Buildtime binaries should go in `nativeBuildInputs` Before `clang-tools` version was overwriten breaking the Lsp. Relevant issues: https://github.com/NixOS/nixpkgs/issues/76486 * remove cmake, available in the nixpkgs derivation
| * | | | | | | Merge pull request #26994 from lewis6991/vimhelpersLewis Russell2024-01-12
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | test: big cleanup
| | * | | | | | | test: rename (meths, funcs) -> (api, fn)Lewis Russell2024-01-12
| | | | | | | | |
| | * | | | | | | test: normalise nvim bridge functionsLewis Russell2024-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove helpers.cur*meths - remove helpers.nvim
| | * | | | | | | test: typing for helpers.methsLewis Russell2024-01-12
| | | | | | | | |
| | * | | | | | | test: use vim.mpack and vim.uv directlyLewis Russell2024-01-12
| | | | | | | | |
| | * | | | | | | test: use vim.inspect directlyLewis Russell2024-01-12
| | | | | | | | |
| | * | | | | | | test: remove helpers.sleep()Lewis Russell2024-01-12
| | | | | | | | |
| | * | | | | | | test: do not inject vim module into global helpersLewis Russell2024-01-12
| | | | | | | | |
| * | | | | | | | vim-patch:2357765304e4Christian Clason2024-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(netrw): Decode multibyte percent-encoding filename correctly (vim/vim#13842) Use `printf("%c")` instead of `nr2char()` to handle '%xx' as a byte. Close vim/vim#13787 https://github.com/vim/vim/commit/2357765304e4c55935b5cc853ffb98ae82d64a01 Co-authored-by: K.Takata <kentkt@csc.jp>
| * | | | | | | | vim-patch:5f4cc8ea65e8Christian Clason2024-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(colorschemes): Add initial support for Added/Removed/Changed highlight groups (vim/vim#13830) For some of the colorschemes where diffAdded and diffRemoved were explicitly set up. https://github.com/vim/vim/commit/5f4cc8ea65e80efa35f84fe9a9985a42c3c96bae Co-authored-by: Maxim Kim <habamax@gmail.com>
| * | | | | | | | vim-patch:9.1.0016: default diff highlighting is too noisyChristian Clason2024-01-12
| | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: default diff highlighting is too noisy Solution: Link diff highlighting groups to new Added/Removed/Changed, revert previous change (Romain Lafourcade) Remove diff* links added in vim/vim#13776 and doc added in commit b1392be The links added in vim/vim#13776 are way too noisy for the contexts in which the `diff` syntax is applied (git commits, patches, etc.). This commit: - removes those links - adds new default highlighting groups Added, Changed and Removed - links the diff highlighting groups to those new defaults - removes the doc changes - adjusts the syntax_completion test for those newly added group names Note: Changes to the default color schemes will be handled separately, by adding links to those newly created Added/Removed/Changed highlighting groups. related: vim/vim#13776 closes vim/vim#13825 https://github.com/vim/vim/commit/124371c5a149a8c0c75c04b6c90ac11e71a0aa97 Co-authored-by: Romain Lafourcade <romain.lafourcade@razorfish.fr>
| * | | | | | | vim-patch:9.1.0011: regexp cannot match combining chars in collection (#26992)zeertzjq2024-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: regexp cannot match combining chars in collection Solution: Check for combining characters in regex collections for the NFA and BT Regex Engine Also, while at it, make debug mode work again. fixes vim/vim#10286 closes: vim/vim#12871 https://github.com/vim/vim/commit/d2cc51f9a1a5a30ef5d2e732f49d7f495cae24cf Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | | | | | | refactor(IWYU): fix headersdundargoc2024-01-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove `export` pramgas from defs headers as it causes IWYU to believe that the definitions from the defs headers comes from main header, which is not what we really want.
| * | | | | | | Merge pull request #26961 from bfredl/drawendbfredl2024-01-11
| |\ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | | refactor(screen): simplify grid_clear() and win_draw_end()
| | * | | | | | refactor(screen): simplify grid_clear() and win_draw_end()bfredl2024-01-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | grid_put_linebuf() used grid_clear() internally to handle clearing the left part of a rightleft line. By reimplementing that internally, we can instead use grid_put_linebuf() as the implementation of grid_clear(), which in the end is a net reduction of code as grid_fill() is used for nothing else. win_draw_end: Implement "draw_margin" on a per-row basis which closer reflects how terminals work. Also use the magic mirror for 'rightleft'
| * | | | | | | fix(doc): improve doc generation of types using lpegLewis Russell2024-01-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added a lpeg grammar for LuaCATS and use it in lua2dox.lua
| * | | | | | | feat(vim.iter): add Iter:flatten (#26786)JD2024-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-authored-by: Gregory Anders <greg@gpanders.com> Co-authored-by: Jongwook Choi <wookayin@gmail.com>
| * | | | | | | fix(pum): handle right-click menu repositioning with multigrid (#26975)zeertzjq2024-01-10
| | | | | | | |
| * | | | | | | fix(terminal): use terminal buffer for TermRequest autocommand (#26974)Gregory Anders2024-01-09
| | | | | | | |
| * | | | | | | fix(health): improve python executable check error handling (#26954)Barrett Ruth2024-01-10
| | | | | | | | | | | | | | | | | | | | | | | | Credit to @wookayin for the fix.
| * | | | | | | fix(health): correctly expand and resolve PYENV_ROOT (#26953)Barrett Ruth2024-01-10
| | | | | | | |
| * | | | | | | vim-patch:71d0ba07a33aChristian Clason2024-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(netrw): Sync with netrw 174b (vim/vim#13836) * Import netrw v174b * Revert unwanted changes * Fix indent * Revert some changes * Update tags * Break long line https://github.com/vim/vim/commit/71d0ba07a33a750e9834cd42b7acc619043dedb1 Co-authored-by: K.Takata <kentkt@csc.jp>
| * | | | | | | refactor(options): remove `OPT_FREE` (#26963)Famiu Haque2024-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `OPT_FREE` macro doesn't seem to do anything as `P_ALLOCED` already handles allocations. Solution: Remove `OPT_FREE`.
| * | | | | | | vim-patch:3a5b3df7764d (#26956)dundargoc2024-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(tar): fix a few problems with the tar plugin From: vim/vim#138331: - Updating .tar.zst files was broken. Fixes vim/vim#12639. - Extracting files from .tar.zst / .tzs files was also broken and works now. From: vim/vim#12637: - Fixes variable assignment and typo From: vim/vim#8109: - Rename .tzs to the more standard .tzst fixes: vim/vim#12639 fixes: vim/vim#8105 closes: vim/vim#8109 closes: vim/vim#12637 closes: vim/vim#13831 https://github.com/vim/vim/commit/3a5b3df7764daa058a3e779183e8f38a8418b164 Co-authored-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Martin Rys <martin@rys.pw> Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com> Co-authored-by: Carlo Teubner <carlo@cteubner.net>
| * | | | | | | feat(terminal): trigger TermRequest autocommand events (#22159)Ghjuvan Lacambre2024-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit implements a new TermRequest autocommand event and has Neovim emit this event when children of terminal buffers emit an OSC or DCS sequence libvterm does not handle. The TermRequest autocommand event has additional data in the v:termrequest variable. Co-authored-by: Gregory Anders <greg@gpanders.com>
| * | | | | | | fix(docs): make lines not overflow in vim docsJongwook Choi2024-01-09
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Some lines in the generated vim doc are overflowing, not correctly wrapped at 78 characters. This happens when docs body contains several consecutive 'inline' elements generated by doxygen. Solution: Take into account the current column offset of the last line, and prepend some padding before doc_wrap().
| * | | | | | fix(extmarks): blending space shouldn't overwrite wide char (#26960)zeertzjq2024-01-09
| | | | | | |
| * | | | | | refactor(drawline): remove unused save_extra argument (#26959)zeertzjq2024-01-09
| | | | | | |
| * | | | | | fix(extmarks): handle overwriting right half of wide char (#26951)zeertzjq2024-01-09
| | | | | | |
| * | | | | | Merge pull request #26872 from bfredl/fillscharbfredl2024-01-08
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | refactor(options): use schar_T for fillchars and listchars
| | * | | | | | refactor(options): use schar_T representation for fillchars and listcharsbfredl2024-01-08
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A bit big, but practically it was a lot simpler to change over all fillchars and all listchars at once, to not need to maintain two parallel implementations. This is mostly an internal refactor, but it also removes an arbitrary limitation: that 'fillchars' and 'listchars' values can only be single-codepoint characters. Now any character which fits into a single screen cell can be used.
| * | | | | | docs(treesitter): improve 'no parser' error message for InspectTreeJongwook Choi2024-01-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve error messages for `:InspectTree`, when no parsers are available for the current buffer and filetype. We can show more informative and helpful error message for users (e.g., which lang was searched for): ``` ... No parser available for the given buffer: +... no parser for 'custom_ft' language, see :help treesitter-parsers ``` Also improve the relevant docs for *treesitter-parsers*.
| * | | | | | fix(tui): use buflen to calculate remaining buffer size (#26942)James McCoy2024-01-07
| | | | | | | | | | | | | | | | | | | | | buf is a pointer argument, not a local char array, so sizeof(buf) is just the size of a pointer type on the platform. This is always an incorrect value, but on 32-bit platforms it actually has an impact, since sizeof(buf) is just 4 and causes the buffer to get truncated.
| * | | | | | fix(defaults): use augroup for default autocommands (#26933)Gregory Anders2024-01-06
| | | | | | |
| * | | | | | fix(highlight): update `IncSearch` to link to `CurSearch`Evgeni Chasnovski2024-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `IncSearch` is currently linked to `Search` which makes it not usable for its purpose of showing current match with 'incsearch' and confirming matches after `:s///c`. Solution: Link it to `CurSearch`.
| * | | | | | Merge pull request #26913 from jamessan/execl-fixJames McCoy2024-01-06
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | fix(test/tui_spec): pass the expected NULL-sentinel to execl()
| | * | | | | | fix(test/tui_spec): pass the expected NULL-sentinel to execl()James McCoy2024-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since execl() is a variadic function, it requries a NULL-terminal to indicate the end of its argument list, c.f. exec(3) > The first argument, by convention, should point to the filename > associated with the file being executed. The list of arguments *must* > be terminated by a null pointer This fixes the failure seen on aarch64 and i386, due to garbage data being considered part of the variadic arguments.
| * | | | | | | docs(luvref): update to version bumpChristian Clason2024-01-06
| | | | | | | |
| * | | | | | | build(deps): bump luv to 1.47.0-0Christian Clason2024-01-06
| |/ / / / / /
| * | | | | | vim-patch:9.1.0014: incorrect use of W_WINROW in edit.c (#26910)zeertzjq2024-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: incorrect use of W_WINROW in edit.c Solution: compare against curwin->w_height instead Remove incorrect use of W_WINROW In structs.h it is mentioned that w_wrow is relative to w_winrow, so using W_WINROW doesn't make sense when comparing with window height. This change won't lead to any observable behavior change: The condition intends to check if there are 'scrolloff' lines between the current cursor when the bottom of the window. When W_WINROW(curwin) is added to curwin->w_height - 1 - get_scrolloff_value(), the condition is instead satisfied when the cursor is on some screen line below that position. However, - If 'scrolloff' is smaller than half the window height, this condition can only be satisfied when W_WINROW(curwin) == 0. And if it is not satisfied, update_topline() does the actual scrolling. - If 'scrolloff' is larger than half the window height, update_topline() will put the cursor at the center of the window soon afterwards anyway, because set_topline() now unsets VALID_TOPLINE flag starting from https://github.com/vim/vim-history/commit/7db7bb45b0f919ff0615d463ebd4fde881c69d1f. To put it in another way, https://github.com/vim/vim-history/commit/7db7bb45b0f919ff0615d463ebd4fde881c69d1f makes the update_topline() just below correct the mistakes made in this block, so this incorrect use of W_WINROW() no longer affects observable behavior. closes: vim/vim#12331 https://github.com/vim/vim/commit/b1ed7ec9f7d1a0142d4f1c8c83bab9172bc92c7c