aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* vim-patch:9.0.1768: Runtime: no support for bicep filesChristian Clason2023-08-21
| | | | | | | | | | | Problem: Runtime: no support for bicep files Solution: Add filetype support for bicepparam closes: vim/vim#12784 https://github.com/vim/vim/commit/2d0988ef93c6e8e59381c9cd123efbc2cd1faf92 Co-authored-by: Scott McKendry <scott.c.mckendry@gmail.com>
* vim-patch:9.0.1766: Runtime: Missing QML supportChristian Clason2023-08-21
| | | | | | | | | | | Problem: Runtime: Missing QML support Solution: Add QML support to Vim closes: vim/vim#12810 https://github.com/vim/vim/commit/bedc69f9d67b117ab05aa735c701cd3899d1ae2d Co-authored-by: ChaseKnowlden <haroldknowlden@gmail.com>
* vim-patch:9.0.1772: Cursor may be adjusted in 'splitkeep'ed windows (#24811)zeertzjq2023-08-21
| | | | | | | | | | | | Problem: Cursor is adjusted in window that did not change in size by 'splitkeep'. Solution: Only check that cursor position is valid in a window that has changed in size. closes: vim/vim#12509 https://github.com/vim/vim/commit/16af913eeefb288ce968fb87e09a597413861900 Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
* vim-patch:9.0.1774: no support for custom cmdline completion (#24808)zeertzjq2023-08-21
| | | | | | | | | | | | | | | Problem: no support for custom cmdline completion Solution: Add new vimscript functions Add the following two functions: - getcmdcompltype() returns custom and customlist functions - getcompletion() supports both custom and customlist closes: vim/vim#12228 https://github.com/vim/vim/commit/92997dda789ad8061841128cbc99b15ec0374411 Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
* vim-patch:9.0.1763: crash when passing invalid buffer to undotree() (#24807)zeertzjq2023-08-21
| | | | | | | | | Problem: crash when passing invalid buffer to undotree() Solution: Use get_buf_arg() instead of tv_get_buf_from_arg(). closes: vim/vim#12862 closes: vim/vim#12830 https://github.com/vim/vim/commit/ab9f2ecfd4ecaf74eeed0e5ec41355589af3ec8f
* vim-patch:9.0.1759: Visual highlight not working with cursor at end of ↵zeertzjq2023-08-21
| | | | | | | | | | | screen line (#24806) Problem: Visual highlight not working with cursor at end of screen line and 'showbreak'. Solution: Only update "vcol_prev" when drawing buffer text. closes: vim/vim#12865 https://github.com/vim/vim/commit/8fc6a1dae07aa63faa6bfe6ed93888635745830c
* Merge pull request #24805 from zeertzjq/vim-9.0.1753zeertzjq2023-08-21
|\ | | | | vim-patch:9.0.{1753,1761}: g<End>
| * vim-patch:9.0.1761: g<kEnd> behaves different from g<end>zeertzjq2023-08-21
| | | | | | | | | | | | | | | | | | Problem: g<kEnd> behaves different from g<end> Solution: Make g<kEnd> behave like g<End> closes: vim/vim#12861 https://github.com/vim/vim/commit/654bdbbd329e7267051cc2eb496bc52b66053081
| * vim-patch:9.0.1753: can't move to last non-blank charzeertzjq2023-08-21
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: can't move to last non-blank char Solution: Make g<end> behave like that Make it possible to move to last non-blank char on a line We can distinguish between g0 and g^ to move to the very first character and the first non-blank char. And while we can move to the last screen char, we cannot go to the last non-blank screen char. Since I think g$ is the more widely used and known movement command (and g<end> is synonymous to it) change the behaviour of g<end> to move to last non-screen char instead and don't have this be the same command as the g$ command anymore. If you want to keep the old behaviour, you can use: ``` nnoremap g<end> g$ ``` Add a test to verify the behaviour. closes: vim/vim#12593 https://github.com/vim/vim/commit/b5f6fe9ca2661d06bc0be839447ce1995450b9de Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:56bafd7a6a79Christian Clason2023-08-20
| | | | | | | | Runtime: add new sed ftplugin (vim/vim#12843) https://github.com/vim/vim/commit/56bafd7a6a79203b86f7165a7bbac5730c170f64 Co-authored-by: dkearns <dougkearns@gmail.com>
* vim-patch:9.0.1747: screenpos() may cause unnecessary redraw (#24792)zeertzjq2023-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: screenpos() may cause unnecessary redraw. Solution: Don't unnecessarily reset VALID_WROW flag. VALID_WROW flag is only used by two functions: validate_cursor() and cursor_valid(), and cursor_valid() is only used once in ex_sleep(). When adjust_plines_for_skipcol() was first added in patch 9.0.0640, it was called in two functions: comp_botline() and curs_rows(). - comp_botline() is called in two places: - onepage(), which resets VALID_WROW flag immediately afterwards. - validate_botline_win(), where resetting a VALID_ flag is strange. - curs_rows() is called in two places: - curs_columns(), which sets VALID_WROW flag afterwards. - validate_cline_row(), which is only used by GUI mouse focus. Therefore resetting VALID_WROW there doesn't seem to do anything useful. Also, a w_skipcol check (which resets VALID_WROW flag) was added to check_cursor_moved() in patch 9.0.0734, which seems to make more sense than resetting that flag in the middle of a computation. While at it make adjust_plines_for_skipcol() and textpos2screenpos() a bit less confusing: - Make adjust_plines_for_skipcol() return "off" instead of "n - off". - Use 0-based "row" in textpos2screenpos() until W_WINROW is added. closes: vim/vim#12832 https://github.com/vim/vim/commit/6235a109c48ff2559eca3b16578c429ffb61eadc
* vim-patch:9.0.1745: Missing test coverage for blockwise Visual highlight ↵zeertzjq2023-08-19
| | | | | | | | | | | (#24790) Problem: Missing test coverage for blockwise Visual highlight with virtual that starts with a double-width char. Solution: Add a new virtual text to the test. Some other small fixes. closes: vim/vim#12835 https://github.com/vim/vim/commit/fc3058495d3ff58c8f2b9dd4452d0840f2d1fa42
* vim-patch:9.0.1742: wrong curswant when clicking on second cell of ↵zeertzjq2023-08-19
| | | | | | | | | | | double-width char (#24789) Problem: Wrong curswant when clicking and the second cell of a double-width char. Solution: Don't copy virtcol of the first char to the second one. closes: vim/vim#12842 https://github.com/vim/vim/commit/9994160bfe74501886bbbf5631aec8ea2ae05991
* Merge pull request #24787 from zeertzjq/vim-9.0.1515zeertzjq2023-08-19
|\ | | | | vim-patch:9.0.{1515,1540,1738}
| * vim-patch:9.0.1540: reverse() on string doesn't work in compiled functionzeertzjq2023-08-19
| | | | | | | | | | | | | | | | | | | | Problem: reverse() on string doesn't work in compiled function. Solution: Accept string in argument type check. (Yegappan Lakshmanan, closes vim/vim#12377) https://github.com/vim/vim/commit/f9dc278946d52235a0025fd347bd9ff571258470 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
| * vim-patch:9.0.1515: reverse() does not work for a Stringzeertzjq2023-08-19
|/ | | | | | | | | | | | | | | | | | | Problem: reverse() does not work for a String. Solution: Implement reverse() for a String. (Yegappan Lakshmanan, closes vim/vim#12179) https://github.com/vim/vim/commit/03ff1c2dde7f15eca5c9baa6dafbda9b49bedc3b vim-patch:9.0.1738: Duplicate code to reverse a string Problem: Duplicate code to reverse a string Solution: Move reverse_text() to strings.c and remove string_reverse(). closes: vim/vim#12847 https://github.com/vim/vim/commit/4dd266cb66d901cf5324f09405cfea3f004bd29f Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* build(deps): bump tree-sitter to HEAD - ab09ae20dChristian Clason2023-08-19
|
* refactor(tui): check for out of bound access after snprintf (#24751)Thomas Vigouroux2023-08-19
| | | | | | | Counterintuitively, snprintf returns the number of characters it _should have written_ if it had not encoutered the length bound, thus leading to a potential buffer overflow. Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* fix(extmarks): make empty "conceal" respect &conceallevel = 1 (#24785)zeertzjq2023-08-19
| | | This treats extmark conceal more like matchadd() conceal.
* refactor(grid.c): remove duplicate assignmentszeertzjq2023-08-18
| | | They were removed from Vim in patch 9.0.0638.
* Merge pull request #24780 from zeertzjq/vim-9.0.0048zeertzjq2023-08-18
|\ | | | | vim-patch:9.0.{0048,0177,1705,1725}: mouse click after concealed text
| * test(ui/mouse_spec): mouse click with matchadd() concealed textzeertzjq2023-08-18
| |
| * vim-patch:9.0.1725: cursor pos wrong after concealed text with 'virtualedit'zeertzjq2023-08-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Wrong cursor position when clicking after concealed text with 'virtualedit'. Solution: Store virtual columns in ScreenCols[] instead of text columns, and always use coladvance() when clicking. This also fixes incorrect curswant when clicking on a TAB, so now Test_normal_click_on_ctrl_char() asserts the same results as the ones before patch 9.0.0048. closes: vim/vim#12808 https://github.com/vim/vim/commit/e500ae8e29ad921378085f5d70ee5c0c537be1ba Remove the mouse_adjust_click() function. There is a difference in behavior with the old mouse_adjust_click() approach: when clicking on the character immediately after concealed text that is completely hidden, cursor is put on the clicked character rather than at the start of the concealed text. The new behavior is better, but it causes unnecessary scrolling in a functional test (which is an existing issue unrelated to these patches), so adjust the test. Now fully merged: vim-patch:9.0.0177: cursor position wrong with 'virtualedit' and mouse click
| * vim-patch:9.0.1705: cursor position wrong when clicking on an unprintable charzeertzjq2023-08-18
| | | | | | | | | | | | | | | | | | | | | | Problem: cursor position wrong when clicking on an unprintable char Solution: Don't update prev_ptr when wlv.n_extra is not zero. closes: vim/vim#12664 https://github.com/vim/vim/commit/b25dbb3f9b5885dd623af7a9fae890b8366b64e2 Tests only. Code superseded by patch 9.0.1725.
| * vim-patch:9.0.0048: cursor in wrong column with mouse click after concealed textzeertzjq2023-08-18
|/ | | | | | | | | | | Problem: Cursor in wrong column with mouse click after concealed text. Solution: Store the text column when drawing text. https://github.com/vim/vim/commit/b90818867c089d4987f1a48ee3666674826d6f4b Tests only. Code changes moved to the port of patch 9.0.1725. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1731: blockwise Visual highlight not working with virtual text ↵zeertzjq2023-08-18
| | | | | | | | | | | | | (#24779) Problem: blockwise Visual highlight not working with virtual text Solution: Reset the correct variable at the end of virtual selection and Check for double-width char inside virtual text. closes: vim/vim#12606 https://github.com/vim/vim/commit/6e940d9a1d4ff122aad1b0821c784a60b507d45c Need to remove area_active and use wlv.fromcol and wlv.tocol directly.
* vim-patch:442d1746f4c6Christian Clason2023-08-18
| | | | | | | | | | bindzone runtime: add new DNS record types (vim/vim#7351) Recognize some newer DNS record types - CAA (RFC8659, certificate authority authorization), OPENPGPKEY (RFC7929), SMIMEA (RFC8162). Sort SSHFP alphabetically while there. https://github.com/vim/vim/commit/442d1746f4c650e2e41246fd5679f635a4a30232 Co-authored-by: Stuart Henderson <sthen@users.noreply.github.com>
* vim-patch:817db406bb12Christian Clason2023-08-18
| | | | | | | | | | Add TODO, FIXME to Haskell syntax file (vim/vim#8055) Adding TODO, XXX, FIXME to Haskell syntax file vim/vim#8054 https://github.com/vim/vim/commit/817db406bb12b9fd5df25d4cda392b515d44ee05 Co-authored-by: Bruno-366 <81762173+Bruno-366@users.noreply.github.com>
* vim-patch:a5988f582e48Christian Clason2023-08-18
| | | | | | | | | | | | Keywords 'of' and 'yield' for Javascript. (vim/vim#7873) * Keyword 'of' in for...of statement. * Keyword 'yield' for generator function. https://github.com/vim/vim/commit/a5988f582e482150023862052d41e5215253a3de Co-authored-by: Yuri Klimov <yuri@klimov.net>
* fix(ui_compositor): only reset skipstart at first column (#24776)zeertzjq2023-08-18
| | | | | | | Problem: A double-width char in a floating window causes an extra space to be drawn to the left of its boundary. Solution: Only reset skipstart at the first column. Fix #24775
* vim-patch:9.0.1729: screenpos() wrong when w_skipcol and cpoptions+=n (#24773)zeertzjq2023-08-18
| | | | | | | | | Problem: screenpos() wrong result with w_skipcol and cpoptions+=n Solution: Use adjust_plines_for_skipcol() instead of subtracting w_skipcol. closes: vim/vim#12625 https://github.com/vim/vim/commit/bfe377b8f2d080e5f85c8cbecf3533456e1d6312
* vim-patch:9.0.1728: missing winid argument for virtcol() (#24770)zeertzjq2023-08-18
| | | | | | | | | | | | | Problem: missing winid argument for virtcol() Solution: Add a {winid} argument to virtcol() Other functions col(), charcol() and virtcol2col() support a {winid} argument, so it makes sense for virtcol() to also support than. Also add test for virtcol2col() with 'showbreak' and {winid}. closes: vim/vim#12633 https://github.com/vim/vim/commit/825cf813fa0fddf085fcbd3194781e875320ff63
* vim-patch:9.0.1730: passing multiple patterns to runtime not working (#24771)zeertzjq2023-08-18
| | | | | | | | Problem: passing multiple patterns to runtime not working Solution: prepend prefix to each argument separately closes: vim/vim#12617 https://github.com/vim/vim/commit/008c91537b55835aa91cd8fbe1a139256581da31
* vim-patch:9.0.1735: Rename completion specific findex var (#24769)zeertzjq2023-08-18
| | | | | | | | Problem: Rename completion specific findex var Solution: Move "findex" static variable to xp_selected in expand_T closes: vim/vim#12548 https://github.com/vim/vim/commit/e9ef347c137aca6c2592beb19da45a8aece65e11
* vim-patch:9.0.1734: :runtime completion fails for multiple args (#24767)zeertzjq2023-08-18
| | | | | | | | Problem: :runtime completion fails for multiple args Solution: Make it work closes: vim/vim#12616 https://github.com/vim/vim/commit/be5cdd1d634c2dfc7e415499fb18f4d246a8721c
* vim-patch:9.0.1726: incorrect heights in win_size_restore() (#24765)Sean Dewar2023-08-17
| | | | | | | | | Problem: incorrect heights in win_size_restore() Solution: avoid restoring incorrect heights in win_size_restore() https://github.com/vim/vim/commit/876f5fb570d8401aa4c58af4a5da91f10520aa9d I already merged this prior, so just replace the new test with the old one, but add a test case for the global statusline.
* Merge pull request #24766 from zeertzjq/vim-9.0.1722zeertzjq2023-08-18
|\ | | | | vim-patch:9.0.{1722,1723}
| * vim-patch:9.0.1723: Fix regression in {func} argument of reduce()zeertzjq2023-08-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Fix regression in {func} argument of reduce() Solution: pass function name as string again Before patch 9.0.0548, passing a string as {func} argument of reduce() is treated as a function name, but after patch 9.0.0548 it is treated as an expression instead, which is useless as reduce() doesn't set any v: variables. This PR restores the behavior of {func} before that patch. Also correct an emsg() call, as e_string_list_or_blob_required doesn't contain format specifiers. closes: vim/vim#12824 https://github.com/vim/vim/commit/ad0c442f1fcc6fe9c433777ee3e5b9e6addc6d69
| * vim-patch:9.0.1722: wrong error messages when passing wrong types to count()zeertzjq2023-08-18
|/ | | | | | | | | | | | | | | Problem: wrong error messages when passing wrong types to count() Solution: fix it This fixes two problems: 1. When passing wrong type to {ic} argument of count(), two error messages are given, the second of which is misleading. 2. When passing wrong type to {comp} argument of count(), the error message doesn't mention that {comp} may be a String. closes: vim/vim#12825 https://github.com/vim/vim/commit/4f389e7c0fe7dfeccfa512a72fa36f9028d57159
* docs(builtin): fix some missing lines (#24759)Sean Dewar2023-08-17
| | | | Some things got chopped off in the PR that removed method syntax examples. These were all that I found.
* vim-patch:8.2.3867: implementation of some list functions too complicated ↵zeertzjq2023-08-17
| | | | | | | | | | | (#24757) Problem: Implementation of some list functions too complicated. Solution: Refactor do_sort_uniq(), f_count() and extend() (Yegappan Lakshmanan, closes vim/vim#9378) https://github.com/vim/vim/commit/d92813a59877c707e4b64bea6d786aad152acb45 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* refactor: cast to int earlier when using 'so' and 'siso' (#24756)zeertzjq2023-08-17
|
* Merge pull request #24752 from zeertzjq/vim-9.0.0548zeertzjq2023-08-17
|\ | | | | vim-patch:9.0.{0359,0548,1416}
| * vim-patch:9.0.1416: crash when collection is modified when using filter()zeertzjq2023-08-17
| | | | | | | | | | | | | | | | | | Problem: Crash when collection is modified when using filter(). Solution: Lock the list/dict/blob. (Ernie Rael, closes vim/vim#12183) https://github.com/vim/vim/commit/e6d40dcdc7227594935d2db01eca29f0e575dcee Co-authored-by: Ernie Rael <errael@raelity.com>
| * vim-patch:9.0.0548: reduce() with a compiled lambda could be fasterzeertzjq2023-08-17
| | | | | | | | | | | | | | | | | | Problem: reduce() with a compiled lambda could be faster. Solution: Call eval_expr_typval() instead of call_func() directly. https://github.com/vim/vim/commit/f1c60d4bf10794265b828afd9c5f7eddacada10b Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * vim-patch:9.0.0359: error message for wrong argument type is not specificzeertzjq2023-08-17
|/ | | | | | | | | | | | Problem: Error message for wrong argument type is not specific. Solution: Include more information in the error. (Yegappan Lakshmanan, closes vim/vim#11037) https://github.com/vim/vim/commit/8deb2b30c77035bb682ccf80b781455ac1d6038b Cherry-pick test_listdict.vim changes from patch 8.2.4809. Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* Merge pull request #24750 from zeertzjq/vim-8.2.4450zeertzjq2023-08-17
|\ | | | | vim-patch:8.2.{4450,4451,4455}
| * vim-patch:8.2.4455: accepting one and zero for second sort() argument is strangezeertzjq2023-08-17
| | | | | | | | | | | | | | | | | | Problem: Accepting one and zero for the second sort() argument is strange. Solution: Disallow using one and zero in Vim9 script. https://github.com/vim/vim/commit/2007dd49f5cb36f944cab1cfbceb0f864e625f74 Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * vim-patch:8.2.4451: sort() fails when ignoring casezeertzjq2023-08-17
| | | | | | | | | | | | | | | | | | Problem: sort() fails when ignoring case. Solution: Accept a number one argument in sort(). https://github.com/vim/vim/commit/9cd4c0fb98cb4fe6164e4e1751c21a5a5229b9cc Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * vim-patch:8.2.4450: list sort test failszeertzjq2023-08-17
|/ | | | | | | | | Problem: List sort test fails. Solution: Pass a valid "how" argument. https://github.com/vim/vim/commit/2afeb408310f4f0185ce5eec079b51a3fe415a33 Co-authored-by: Bram Moolenaar <Bram@vim.org>