aboutsummaryrefslogtreecommitdiff
path: root/test/old/testdir/test_functions.vim
Commit message (Collapse)AuthorAge
* vim-patch:partial:9.2.1145: repeat() can cause an integer overflowzeertzjq2026-09-30
| | | | | | | | | | | | Problem: repeat() with a large number can cause an overflow (Yuyao Jiang) Solution: Add overflow check for the various repeat() functions. related: vim/vim#21373 https://github.com/vim/vim/commit/70903d2be29ddf759ea55cfa6d343c026ea04779 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:9.2.0950: transstr() can be improved (after 9.2.0906)zeertzjq2026-08-13
| | | | | | | | | | | | | | | | Problem: transstr() has comments that do not add anything to what the code says, and it casts a length to int only to cast it back to size_t. Solution: Drop the comments and keep the length in a size_t (Hirohito Higashi). related: vim/vim#20925 closes: vim/vim#21026 https://github.com/vim/vim/commit/fe65307d49b482ffdd4c81ce46352ee091e2c67b Co-authored-by: Hirohito Higashi <h.east.727@gmail.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* vim-patch:9.2.0906: slow transstr() with long strings (#41144)zeertzjq2026-08-04
| | | | | | | | | | | | Problem: transstr() appends with STRCAT()/STRLEN() from the start of the result on every iteration, making it quadratic to the length of the string. Solution: Keep a tail pointer and append at it. (Samuel Schlesinger). closes: vim/vim#20925 https://github.com/vim/vim/commit/124c86868c253a5ec1347e7cbe102504d2d66a07 Co-authored-by: Samuel Schlesinger <sgschlesinger@gmail.com>
* refactor(exmode): Ex-mode as cmdwin + Lua #40991Justin M. Keyes2026-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: POSIX-compatible Ex-mode requires special-cases all over the codebase to match various quirks that don't actually matter to users. - The main utility of *interactive* Ex-mode is its REPL behavior, and that can be achieved with `cmdwin`, which also gains extra UX benefits. - The main utility of *non-interactive* `nvim -es` is for shell scripting, where Ex-mode quirks are mostly unhelpful (e.g. the "Entering Ex mode" message). Solution: - Reimplement *interactive* Ex-mode as a "persistent, insert-mode cmdwin" in Lua. - "nvim -e/-E" is simply an alias to "gQ". - Reframe *non-interactive* Ex-mode (`nvim -es`) as "script mode". - Drop POSIX Ex-mode quirks. Improvements: - "nvim -V1 -es" output ends with a final newline! - "nvim -V1 -es" no longer shows the "Entering Ex mode" msg. (This was pointless noise, unwanted for scripting purposes.) - stdin is no longer typeahead. Scripts (":lua io.read()") can read stdin as data. - Empty line is a no-op: a stray blank line no longer moves the cursor (deviates from POSIX ex "+1"), no longer exits 1 at EOF (E501). Preserved behavior: - cursor starts at "$" - mode()=="cv" (for non-interactive) - multiline commands (:append/:function/heredoc pull continuation lines) - bare-range print - :print=>stdout - -V1=>stderr - CRLF input - continue-after-error and exit codes Dropped (regressed) POSIX behavior (non-interactive): - Event loop only ticks while/between commands, not while blocked waiting for a stdin line. - ":g/pat/visual...Q" - input()/getchar()/":s/x/y/c" no longer consume stdin lines as answers: Nvim stops at end-of-input, skipping the rest of the script, exit 0. Use ":lua io.read()" instead. - If users care about this they should use interactive Ex-mode (`gQ`). - ":@r" stops at end of the register instead of continuing to read cmdline input from stdin.
* refactor(ctx): drop aucmd_prepbuf/aucmd_restbuf #40692Justin M. Keyes2026-07-11
|
* vim-patch:9.2.0680: keytrans() doesn't replace '|' and '\' (#40345)zeertzjq2026-06-21
| | | | | | | | | | Problem: keytrans() doesn't replace '|' and '\' (user202729) Solution: Replace '|' and '\' with "<Bar>" and "<Bslash>" respectively. (zeertzjq) fixes: vim/vim#20585 closes: vim/vim#20586 https://github.com/vim/vim/commit/47fd183c4efe50c9fbee3380397e32459749a547
* vim-patch:9.0.2123: Problem with initializing the length of range() listsJan Edmund Lazo2026-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Problem with initializing the length of range() lists Solution: Set length explicitly when it shouldn't contain any items range() may cause a wrong calculation of list length, which may later then cause a segfault in list_find(). This is usually not a problem, because range_list_materialize() calculates the length, when it materializes the list. In addition, in list_find() when the length of the range was wrongly initialized, it may seem to be valid, so the check for list index out-of-bounds will not be true, because it is called before the list is actually materialized. And so we may eventually try to access a null pointer, causing a segfault. So this patch does 3 things: - In f_range(), when we know that the list should be empty, explicitly set the list->lv_len value to zero. This should happen, when start is larger than end (in case the stride is positive) or end is larger than start when the stride is negative. This should fix the underlying issue properly. However, - as a safety measure, let's check that the requested index is not out of range one more time, after the list has been materialized and return NULL in case it suddenly is. - add a few more tests to verify the behaviour. fixes: vim/vim#13557 closes: vim/vim#13563 -------- Vim9 (non) materialize list is N/A. Port only tests. https://github.com/vim/vim/commit/df63da98d8dc284b1c76cfe1b17fa0acbd6094d8 Co-authored-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Tim Pope <tpope@github.com>
* fix(path): normalize path slashes on Windows #37729tao2026-04-24
| | | | | | | | | | | | | | | | | | | | Problem: On Windows, path separators may become inconsistent for various reasons, which makes normalization quite painful. Solution: Normalize paths to `/` at the entry boundaries and always use it internally, converting back only in rare cases where `\` is really needed (e.g. cmd.exe/bat scripts?). This is the first commit in a series of incremental steps. Note: * some funcs won't respect shellslash. e.g. `expand/fnamemodify` * some funcs still respect shellslash, but will be updated in a follow PR. e.g. `ex_pwd/f_chdir/f_getcwd` * uv's built-in funcs always return `\`. e.g. `uv.cwd/uv.exepath` Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
* vim-patch:9.1.2004: MS-Windows: executable() cannot find file in directory ↵Jan Edmund Lazo2026-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with single char (#39183) Problem: MS-Windows: If a directory with a single character name is included in the PATH environment variable without a trailing path separator, executable() will not be able to find the executable file under it. Solution: The second argument of the after_pathsep() function is now passed the next pointer where a path separator may exist (Muraoka Taro). As a specific example, the default installation path for PowerShell v7 is "C:\Program Files\PowerShell\7", but if you set this as is in the PATH environment variable, Vim will not be able to find the pwsh.exe command. In this case, Vim will try to search for "C:\Program Files\PowerShell\7pwsh.exe". Cause: The after_pathsep() function determines whether the location passed as its second argument immediately follows a path separator. However, in the code where the problem occurred, the second argument was passed a location that might contain a path separator. As a result, it was mistakenly determined that a path separator was present in cases where the final directory name was a single character and not followed by a path separator, and the path to search was incorrect. closes: vim/vim#18979 https://github.com/vim/vim/commit/bd686d85dc2b1488ab10c723125d654e0e2d7ef4 Co-authored-by: Muraoka Taro <koron.kaoriya@gmail.com>
* vim-patch:8.2.2035: MS-Windows: some tests may fail (#38969)Jan Edmund Lazo2026-04-12
| | | | | | | | Problem: MS-Windows: some tests may fail. Solution: Avoid test failures. (Yegappan Lakshmanan, closes vim/vim#7346) https://github.com/vim/vim/commit/f637bceb6135139dc1891a15de8fa134c2ca2d97 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.1370: CI Tests favor GTK2 over GTK3zeertzjq2026-01-24
| | | | | | | | | | | | | | | Problem: CI Tests favor GTK2 over GTK3 Solution: Install GTK3 dependencies and debug packages for CI workflows, update ASAN suppression list, update required dependency checks for the tests (Drew Vogel) closes: vim/vim#17253 https://github.com/vim/vim/commit/ea67ba718d8af10cb7aa3b91379203f5dd7e50d7 Cherry-pick test_match.vim changes from patch 9.0.0626. Co-authored-by: Drew Vogel <dvogel@github>
* vim-patch:9.1.1646: MS-Windows: completion cannot handle implicit drive letterszeertzjq2026-01-04
| | | | | | | | | | | | Problem: MS-Windows: completion cannot handle implicit drive letters Solution: Consider paths like \folder and /folder as absolute (Miguel Barro). closes: vim/vim#17829 https://github.com/vim/vim/commit/a2f13bf782f723e116c5d4cc7d79a23e918a24db Co-authored-by: Miguel Barro <miguel.barro@live.com>
* vim-patch:8.2.3766: converting a funcref to a string leaves out "g:"zeertzjq2025-12-20
| | | | | | | | | | | Problem: Converting a funcref to a string leaves out "g:", causing the meaning of the name depending on the context. Solution: Prepend "g:" for a global function. https://github.com/vim/vim/commit/c4ec338fb80ebfb5d631f0718fdd1a1c04d9ed82 Co-authored-by: Bram Moolenaar <Bram@vim.org> Co-authored-by: Jan Edmund Lazo <jan.lazo@mail.utoronto.ca>
* vim-patch:9.0.0010: returning 0 for has('patch-9.0.0') is inconsistentJan Edmund Lazo2025-11-29
| | | | | | | | | Problem: Returning 0 for has('patch-9.0.0') is inconsistent. Solution: Make it return 1. (closes vim/vim#10640) https://github.com/vim/vim/commit/b0375d466e5ca57dca71995c342870b3226d8115 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.1226: "shellcmdline" completion doesn't work with input() (#32998)zeertzjq2025-03-20
| | | | | | | | | | | | | | Problem: "shellcmdline" completion doesn't work with input(). Solution: Use set_context_for_wildcard_arg(). Fix indent in nextwild() (zeertzjq). There are some other inconsistencies for input() completion (ref vim/vim#948), but since "shellcmdline" currently doesn't work at all, it makse sense to at least make it work. fixes: vim/vim#16932 closes: vim/vim#16934 https://github.com/vim/vim/commit/7a5115ce50c622caf91503f9d7fe09c3749b928b
* vim-patch:9.1.1157: command completion wrong for input() (#32669)zeertzjq2025-02-28
| | | | | | | | | | | | | Problem: command completion wrong for input() (Cdrman Fu) Solution: Set commandline completion context explicitly (Jim Zhou) fixes vim/vim#16723 closes: vim/vim#16733 https://github.com/vim/vim/commit/3255af850e8bab35c30fce4177bb5ba4a941e6ce Co-authored-by: Jim Zhou <csd_189@163.com>
* vim-patch:9.1.1081: has('bsd') is true for GNU/Hurdzeertzjq2025-02-07
| | | | | | | | | | | | | | | | Problem: has('bsd') is true for GNU/Hurd Solution: exclude GNU/Hurd from BSD feature flag (Zhaoming Luo) GNU/Hurd, like Mac OS X, is a BSD-based system. It should exclude has('bsd') feature just like what Mac OS X does. The __GNU__ pre-defined macro indicates it's compiled for GNU/Hurd. closes: vim/vim#16580 https://github.com/vim/vim/commit/a41dfcd55b1744b44a47d2fc3feb5d5f6207a556 Co-authored-by: Zhaoming Luo <zhmingluo@163.com>
* vim-patch:8.2.0849: BeOS code is not maintained and probably unusedzeertzjq2025-02-07
| | | | | | | | | Problem: BeOS code is not maintained and probably unused. Solution: Remove the BeOS code. (Emir Sari, closes vim/vim#5817) https://github.com/vim/vim/commit/041c7107f23d3b49ab62c1d7e36af90421db8b63 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* test(old): reorder test_functions.vim to match upstreamzeertzjq2025-02-07
|
* vim-patch:9.1.1070: Cannot control cursor positioning of getchar() (#32303)zeertzjq2025-02-03
| | | | | | | | | | Problem: Cannot control cursor positioning of getchar(). Solution: Add "cursor" flag to {opts}, with possible values "hide", "keep" and "msg". related: vim/vim#10603 closes: vim/vim#16569 https://github.com/vim/vim/commit/edf0f7db28f87611368e158210e58ed30f673098
* vim-patch:9.1.1068: getchar() can't distinguish between C-I and Tab (#32295)zeertzjq2025-02-02
| | | | | | | | | | | | Problem: getchar() can't distinguish between C-I and Tab. Solution: Add {opts} to pass extra flags to getchar() and getcharstr(), with "number" and "simplify" keys. related: vim/vim#10603 closes: vim/vim#16554 https://github.com/vim/vim/commit/e0a2ab397fd13a71efec85b017d5d4d62baf7f63 Cherry-pick tv_dict_has_key() from patch 8.2.4683.
* vim-patch:9.1.1017: Vim9: Patch 9.1.1013 causes a few problemszeertzjq2025-01-16
| | | | | | | | | | | | | | | Problem: Vim9: Patch 9.1.1013 causes a few problems Solution: Translate the function name only when it is a string (Yegappan Lakshmanan) fixes: vim/vim#16453 closes: vim/vim#16450 https://github.com/vim/vim/commit/9904cbca4132f7376246a1a31305eb53e9530023 Cherry-pick call() change from patch 9.0.0345. Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:9.1.0794: tests: tests may fail on Windows environment (#30874)zeertzjq2024-10-20
| | | | | | | | | | | | | | Problem: tests: tests may fail on Windows environment Solution: use shellcmdflag=/D to skip executing autorun from the registry (Milly) closes: vim/vim#15900 https://github.com/vim/vim/commit/4f5681dbdfaf25f3357cba3172906c076421c7b9 Cherry-pick Test_cursorhold_insert_with_timer_interrupt() change from patch 8.2.1836. Co-authored-by: Milly <milly.ca@gmail.com>
* vim-patch:8.2.0986: MS-Windows: functions test failszeertzjq2024-10-13
| | | | | | | | | Problem: MS-Windows: functions test fails. Solution: Only simplify ///path on Unix. https://github.com/vim/vim/commit/c70222d12a2f8552273c0de48a3bf7138d649175 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:8.2.0985: simplify() does not remove slashes from "///path"zeertzjq2024-10-13
| | | | | | | | | | | Problem: Simplify() does not remove slashes from "///path". Solution: Reduce > 2 slashes to one. (closes vim/vim#6263) https://github.com/vim/vim/commit/fdcbe3c3fedf48a43b22938c9331addb2f1182f1 Omit Test_readdirex() change: changed again in patch 9.0.0323. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0776: test_strftime may fail because of missing TZ data (#30780)zeertzjq2024-10-13
| | | | | | | | | | | | | | | | | Problem: test_strftime may fail because of missing TZ data Solution: Use GMT offsets to validate timezone differences (James McCoy) Some systems only provide timezones that follow the geographical region naming (e.g. America/New_York) by default and require an additional install for other names (like EST). The GMT+<offset> format must always be honored, so use that to generate distinct data for the test. closes: vim/vim#15848 https://github.com/vim/vim/commit/ea997edc7aaa5bc1d645b57b6700e0b30c07acbd Co-authored-by: James McCoy <jamessan@jamessan.com>
* feat(mbyte): support extended grapheme clusters including more emojibfredl2024-08-30
| | | | | | | | | Use the grapheme break algorithm from utf8proc to support grapheme clusters from recent unicode versions. Handle variant selector VS16 turning some codepoints into double-width emoji. This means we need to use ptr2cells rather than char2cells when possible.
* vim-patch:9.1.0683: mode() returns wrong value with <Cmd> mapping (#30109)zeertzjq2024-08-22
| | | | | | | | | | | Problem: mode() returns wrong value with <Cmd> mapping Solution: Change decision priority of VIsual_active and move visual mode a bit further down (kuuote) closes: vim/vim#15533 https://github.com/vim/vim/commit/0fd1cb1b1fc90b68cb37f71e65289eadac3588a6 Co-authored-by: kuuote <znmxodq1@gmail.com>
* vim-patch:8.2.4860: MS-Windows: always uses current directory for executableszeertzjq2024-08-09
| | | | | | | | | | | | Problem: MS-Windows: always uses current directory for executables. Solution: Check the NoDefaultCurrentDirectoryInExePath environment variable. (Yasuhiro Matsumoto, closes vim/vim#10341) https://github.com/vim/vim/commit/05cf63e9bdca1ac070df3e7d9c6dfc45e68ac916 Omit doc change: override in later doc update. Co-authored-by: Yasuhiro Matsumoto <mattn.jp@gmail.com>
* vim-patch:8.2.4838: checking for absolute path is not trivial (#29990)zeertzjq2024-08-06
| | | | | | | | | | Problem: Checking for absolute path is not trivial. Solution: Add isabsolutepath(). (closes vim/vim#10303) https://github.com/vim/vim/commit/dca1d40cd0f2af0755519e7028378bd3c8fefd31 vim-patch:8a3b805c6c9c Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0415: Some functions are not testedzeertzjq2024-07-31
| | | | | | | | | | | | Problem: Some functions are not tested Solution: Add a few more tests, fix a few minor problems (Yegappan Lakshmanan) closes: vim/vim#14789 https://github.com/vim/vim/commit/fe424d13ef6e5486923f23f15bb6951e3079412e Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:9.1.0499: MS-Windows: doesn't handle symlinks properly (#29400)zeertzjq2024-06-19
| | | | | | | | | | | | | | | | | | | Problem: MS-Windows: doesn't handle symlinks properly (Timothy Madden) Solution: Implement lstat() on MS-Windows (author) lstat() differs from stat() in how it handles symbolic links, the former doesn't resolve the symlink while the latter does so. Implement a simple yet effective fallback using Win32 APIs. fixes vim/vim#14933 closes: vim/vim#15014 https://github.com/vim/vim/commit/23c5ebeb95cb942df307946e3ced230a7c8312eb Co-authored-by: LemonBoy <thatlemon@gmail.com> Co-authored-by: K.Takata <kentkt@csc.jp>
* vim-patch:9.1.0483: glob() not sufficiently tested (#29323)zeertzjq2024-06-14
| | | | | | | | | | Problem: glob() not sufficiently tested Solution: Add more tests for directory containing [] chars related: vim/vim#14991 https://github.com/vim/vim/commit/8b34aea1b0431082a062ecfb5de0f244f3f23418 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:8.2.3061: testing the shell option is incomplete and spread out ↵zeertzjq2024-05-30
| | | | | | | | | | | (#29090) Problem: Testing the shell option is incomplete and spread out. Solution: Move shell tests to one file and increase coverage. (Yegappan Lakshmanan, closes vim/vim#8464) https://github.com/vim/vim/commit/054794c20f6322bbd9482c4124041dc0a140c78e Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:8.2.3158: strange error message when using islocked() with a ↵zeertzjq2024-05-24
| | | | | | | | | | | | | number (#28962) Problem: Strange error message when using islocked() with a number. (Yegappan Lakshmanan) Solution: Check that the name is empty. https://github.com/vim/vim/commit/1840a7b4e3577e617f724c9d07ccc78195cc010a Use ll_name_len instead. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0406: Divide by zero with getmousepos() and 'smoothscroll' ↵zeertzjq2024-05-11
| | | | | | | | | | | (#28701) Problem: Divide by zero with getmousepos() and 'smoothscroll'. Solution: Don't compute skip_lines when width1 is zero. (zeertzjq) closes: vim/vim#14747 https://github.com/vim/vim/commit/031a745608d615d56f9d79bb0f76e2a74b2eaf14
* vim-patch:8.1.0815: dialog for file changed outside of Vim not tested (#28184)zeertzjq2024-04-05
| | | | | | | | | Problem: Dialog for file changed outside of Vim not tested. Solution: Add a test. Move FileChangedShell test. Add 'L' flag to feedkeys(). https://github.com/vim/vim/commit/5e66b42aae7c67a3ef67617d4bd43052ac2b73ce Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0199: Not enough tests for the slice() function (#27991)zeertzjq2024-03-23
| | | | | | | | | | Problem: Not enough tests for the slice() function. Solution: Test with multibyte chars, and in both Legacy and Vim9 script. Update docs to be clearer about how it treats composing chars. (zeertzjq) closes: vim/vim#14275 https://github.com/vim/vim/commit/ad38769030b5fa86aa0e8f1f0b4266690dfad4c9
* vim-patch:8.1.1968: crash when using nested map() (#27029)zeertzjq2024-01-16
| | | | | | | | | | | Problem: Crash when using nested map(). Solution: Clear the pointer in prepare_vimvar(). (Ozaki Kiichi, closes vim/vim#4890, closes vim/vim#4891) https://github.com/vim/vim/commit/27da7de7c547dbf983ed7dd901ea59be4e7c9ab2 Cherry-pick Test_filter_map_nested() from patch 8.1.1964. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0009: Cannot easily get the list of matches (#27028)zeertzjq2024-01-16
| | | | | | | | | | | | | | | | | | | | Problem: Cannot easily get the list of matches Solution: Add the matchstrlist() and matchbufline() Vim script functions (Yegappan Lakshmanan) closes: vim/vim#13766 Omit CHECK_LIST_MATERIALIZE(): it populates a List with numbers only, and there is a check for strings below. https://github.com/vim/vim/commit/f93b1c881a99fa847a1bafa71877d7e16f18e6ef vim-patch:eb3475df0d92 runtime(doc): Replace non-breaking space with normal space (vim/vim#13868) https://github.com/vim/vim/commit/eb3475df0d927a178789cf8e7fc4983932e1cdbe Co-authored-by: Yegappan Lakshmanan <4298407+yegappan@users.noreply.github.com>
* test: normalise nvim bridge functionsLewis Russell2024-01-12
| | | | | - remove helpers.cur*meths - remove helpers.nvim
* vim-patch:9.0.2135: No test for mode() when executing Ex commands (#26282)zeertzjq2023-11-29
| | | | | | | | | Problem: No test for mode() when executing Ex commands Solution: Add some test cases and simplify several other test cases. Also add a few more test cases for ModeChanged. closes: vim/vim#13588 https://github.com/vim/vim/commit/fcaeb3d42b228e73c669b2fce78f1d3fe112769f
* vim-patch:9.0.2133: Cannot detect overstrike mode in Cmdline mode (#26263)zeertzjq2023-11-28
| | | | | | | | Problem: Cannot detect overstrike mode in Cmdline mode Solution: Make mode() return "cr" for overstrike closes: vim/vim#13569 https://github.com/vim/vim/commit/d1c3ef1f47c87d1da056c56564e1985fe6f2931d
* vim-patch:9.0.2041: trim(): hard to use default mask (#25692)zeertzjq2023-10-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: trim(): hard to use default mask (partly revert v9.0.2040) Solution: use default mask when it is empty The default 'mask' value is pretty complex, as it includes many characters. Yet, if one needs to specify the trimming direction, the third argument, 'trim()' currently requires the 'mask' value to be provided explicitly. Currently, an empty 'mask' will make 'trim()' call return 'text' value that is passed in unmodified. It is unlikely that someone is using it, so the chances of scripts being broken by this change are low. Also, this reverts commit 9.0.2040 (which uses v:none for the default and requires to use an empty string instead). closes: vim/vim#13358 https://github.com/vim/vim/commit/8079917447e7436dccc2e4cd4a4a56ae0a4712f2 vim-patch:9.0.2040: trim(): hard to use default mask Problem: trim(): hard to use default mask Solution: Use default 'mask' when it is v:none The default 'mask' value is pretty complex, as it includes many characters. Yet, if one needs to specify the trimming direction, the third argument, 'trim()' currently requires the 'mask' value to be provided explicitly. 'v:none' is already used to mean "use the default argument value" in user defined functions. See |none-function_argument| in help. closes: vim/vim#13363 https://github.com/vim/vim/commit/6e6386716f9494ae86027c6d34f657fd03dfec42 Co-authored-by: Illia Bobyr <illia.bobyr@gmail.com>
* vim-patch:9.0.2032: cannot get mouse click pos for tab or virt text (#25653)zeertzjq2023-10-15
| | | | | | | | | Problem: Cannot accurately get mouse clicking position when clicking on a TAB or with virtual text. Solution: Add a "coladd" field to getmousepos() result. closes: vim/vim#13335 https://github.com/vim/vim/commit/f5a94d5165bb9e390797da50a1fa7a87df3fbee4
* vim-patch:9.0.2022: getmousepos() returns wrong index for TAB char (#25636)zeertzjq2023-10-14
| |