aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* vim-patch:9.1.0798: too many strlen() calls in cmdhist.c (#30895)zeertzjq2024-10-22
| | | | | | | | | | | Problem: too many strlen() calls in cmdhist.c Solution: refactor code and remove strlen() calls (John Marriott) closes: vim/vim#15888 https://github.com/vim/vim/commit/8df07d0ca310a55e1540f7d234b536abee49abd4 Co-authored-by: John Marriott <basilisk@internode.on.net>
* fix(options): fix :setglobal not working for 'spelloptions' (#30894)zeertzjq2024-10-22
|
* vim-patch:9.1.0797: testing of options can be further improved (#30893)zeertzjq2024-10-22
| | | | | | | | | | | Problem: testing of options can be further improved Solution: split the generated option test into test_options_all.vim, add more test cases, save and restore values, fix use-after-free closes: vim/vim#15894 https://github.com/vim/vim/commit/6eca04e9f1d446dc509ba51e32da56fa413fe2f0 Co-authored-by: Milly <milly.ca@gmail.com>
* fix(meta): do not use hyphens in param namesLewis Russell2024-10-21
| | | | Fixes #30882
* fix(exit): close memfiles after processing events (#30872)zeertzjq2024-10-21
| | | | | Problem: When exiting, processed events may still use memfiles after they are closed. Solution: Close memfiles after processing events.
* feat(float): allow enabling mouse for non-focusable window (#30844)zeertzjq2024-10-20
| | | | Problem: Cannot allow mouse interaction for non-focusable float window. Solution: Add a "mouse" field to float window config.
* feat(terminal)!: make 'belloff' and 'visualbell' apply to terminal bell (#30859)zeertzjq2024-10-20
| | | | | | | vim-patch:8.2.4744: a terminal window can't use the bell vim-patch:8.2.4745: using wrong flag for using bell in the terminal BREAKING CHANGE: Bells from :terminal are now silent by default, unless 'belloff' option doesn't contain "term" or "all".
* fix(options): fix some 'belloff' flags not working properly (#30856)zeertzjq2024-10-18
| | | | Problem: Some 'belloff' flags don't work properly. Solution: Keep BO_ flags and p_bo_values[] in sync.
* Merge pull request #30825 from lewis6991/refactor/lsputilLewis Russell2024-10-17
|\
| * feat(meta): add type for quickfix entriesLewis Russell2024-10-17
| |
* | vim-patch:6c2fc37: runtime(help): Update help syntaxzeertzjq2024-10-17
|/ | | | | | | | | | | | | | | | | This commit makaes the following changes to the vim help syntax: - fix excessive URL detection in help, because `file:{filename}` in doc/options.txt is determined to be a URL. - update highlighting N for :resize in help - split Italian-specific syntax into separate help script - highlight `Note` in parentheses in help - update 'titlestring' behaviour in documentation for invalid '%' format closes: vim/vim#15883 https://github.com/vim/vim/commit/6c2fc377bfbfb6f1a46b1061413cd21116b596ed Co-authored-by: Milly <milly.ca@gmail.com>
* fix(runtime): clean up one-off scriptsChristian Clason2024-10-15
| | | | | | | | | | | | | | | | | | | | Problem: Some runtime files no longer spark joy. Solution: Kondo the place up. Still sparks _some_ joy (moved to new `runtime/scripts` folder): * `macros/less.*` * `mswin.vim` * `tools/emoji_list.lua` No longer sparks joy (removed): * `macmap.vim` (gvimrc file; not useful in Nvim) * `tools/check_colors.vim` (no longer useful with new default colorscheme and treesitter) * `macros/editexisting.vim` (throws error on current Nvim) * `macros/justify.vim` (obsolete shim for `packadd! justify`) * `macros/matchit.vim` (same) * `macros/shellmenu.vim` (same) * `macros/swapmous.vim` (same)
* vim-patch:9.1.0785: cannot preserve error position when setting quickfix ↵zeertzjq2024-10-15
| | | | | | | | | | | | | | list (#30820) Problem: cannot preserve error position when setting quickfix lists Solution: Add the 'u' action for setqflist()/setloclist() and try to keep the closes target position (Jeremy Fleischman) fixes: vim/vim#15839 closes: vim/vim#15841 https://github.com/vim/vim/commit/27fbf6e5e8bee5c6b61819a5e82a0b50b265f0b0 Co-authored-by: Jeremy Fleischman <jeremyfleischman@gmail.com>
* vim-patch:9.1.0783: 'spell' option setting has problems (#30818)zeertzjq2024-10-15
| | | | | | | | | | | Problem: 'spell' option setting has problems Solution: correctly check for comma for 'spellfile' option, remove unnecessary checks, refactor slightly (Milly) closes: vim/vim#15873 https://github.com/vim/vim/commit/322ad0c953b7a3023cd2a65db61d05e180a5d682 Co-authored-by: Milly <milly.ca@gmail.com>
* vim-patch:5bcfb5a: runtime(doc): add some docs for file-watcher programszeertzjq2024-10-15
| | | | | | | | fixes: vim/vim#15733 https://github.com/vim/vim/commit/5bcfb5a30cfd8e8574061bdd82a192f47aae09b5 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:7b5e52d: runtime(doc): add preview flag to statusline examplezeertzjq2024-10-15
| | | | | | | | | | | | Problem: The standard statusline example is missing the preview flag "%w" Solution: Add the preview flag "%w" closes: vim/vim#15874 https://github.com/vim/vim/commit/7b5e52d16fb457c90cc44340a6190712aab7e03b Co-authored-by: saher <msaher.shair@gmail.com>
* fix(tui): avoid flushing buffer halfway an OSC 2 sequence (#30793)zeertzjq2024-10-15
| | | | | | Problem: Setting title while TUI buffer is almost full may cause the end of a flush to be treated as a part of an OSC 2 or OSC 0 sequence, leading to problems like invisible cursor. Solution: Make the whole sequence to set title a unibi_ext string.
* 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.0775: tests: not enough tests for setting options (#30785)zeertzjq2024-10-13
| | | | | | | | | | | | | Problem: tests: not enough tests for setting options Solution: Add more comprehensive tests to test_options (Milly). closes: vim/vim#15856 https://github.com/vim/vim/commit/484facebe4a0fb775ad011a99ba007f55fc4f11a Restore behavior of &l:option for unset local boolean options that was accidentally changed in #26429. Co-authored-by: Milly <milly.ca@gmail.com>
* feat(ui): statusline text inherits highlights #29976Riley Bruins2024-10-12
| | | Changes apply to the winbar, statusline, and tabline text.
* fix(treesitter): mark supertype nodes as namedRiley Bruins2024-10-12
| | | | | | | | | | | **Problem:** Tree-sitter 0.24.0 introduced a new symbol type to denote supertype nodes (`TSSymbolTypeSupertype`). Now, `language.inspect()` (and the query `omnifunc`) return supertype symbols, but with double quotes around them. **Solution:** Mark a symbol as "named" based on it *not* being an anonymous node, rather than checking that it is a regular node (which a supertype also is not).
* fix(lua): avoid recursive vim.on_key() callback (#30753)zeertzjq2024-10-12
|
* fix(coverity/497375): f_strpart cast overflow (#30773)Devon Gardner2024-10-12
| | | | | | | Problem: Casting long to int introduces risk of overflow. Solution: Work with all int64_t (long) rather than casting back and forth.
* fix(build): remove USE_FNAME_CASE, redundant with CASE_INSENSITIVE_FILENAMEbfredl2024-10-11
| | | | | It stands to reason, you need to "fix" case-insensitive filenames if-and-only-if you have case-insensitive filenames.
* fix(treesitter): remove duplicate symbol names in language.inspect()Riley Bruins2024-10-11
| | | | | | | | | | | | | | | | | **Problems:** - `vim.treesitter.language.inspect()` returns duplicate symbol names, sometimes up to 6 of one kind in the case of `markdown` - The list-like `symbols` table can have holes and is thus not even a valid msgpack table anyway, mentioned in a test **Solution:** Return symbols as a map, rather than a list, where field names are the names of the symbol. The boolean value associated with the field encodes whether or not the symbol is named. Note that anonymous nodes are surrounded with double quotes (`"`) to prevent potential collisions with named counterparts that have the same identifier.
* feat(treesitter): introduce child_with_descendant()Riley Bruins2024-10-11
| | | | | | This commit also marks `child_containing_descendant()` as deprecated (per upstream's documentation), and uses `child_with_descendant()` in its place. Minimum required tree-sitter version will now be `0.24`.
* feat(ui): cascading style inheritance for Pmenu* highlights #29980Riley Bruins2024-10-10
| | | | - `PmenuSel` and `PmenuMatch` inherit from `Pmenu` - `PmenuMatchSel` inherits from both `PmenuSel` and `PmenuMatch`
* vim-patch:9.1.0774: "shellcmdline" doesn't work with getcompletion() (#30750)zeertzjq2024-10-10
| | | | | | | | Problem: "shellcmdline" doesn't work with getcompletion(). Solution: Use set_context_for_wildcard_arg() (zeertzjq). closes: vim/vim#15834 https://github.com/vim/vim/commit/85f36d61e09b12d6f1c60201129823371daa4a84
* vim-patch:9.1.0772: some missing changes from v9.1.0771zeertzjq2024-10-10
| | | | | | | | | | | | Problem: some missing changes from v9.1.0771 Solution: use correct highlighting attribute and adjust comments (glepnir) closes: vim/vim#15836 https://github.com/vim/vim/commit/7baa014d0f73c3b2c6831471d047220633651238 Co-authored-by: glepnir <glephunter@gmail.com>
* vim-patch:9.1.0771: completion attribute hl_group is confusingzeertzjq2024-10-10
| | | | | | | | | | | | | Problem: Currently completion attribute hl_group is combined with all items, which is redundant and confusing with kind_hlgroup Solution: Renamed to abbr_hlgroup and combine it only with the abbr item (glepnir). closes: vim/vim#15818 https://github.com/vim/vim/commit/0fe17f8ffbd2588ecd2bf42dced556897bc64f89 Co-authored-by: glepnir <glephunter@gmail.com>
* build(deps): bump wasmtime to v25.0.2Christian Clason2024-10-09
|
* vim-patch:9.1.0770: current command line completion is a bit limited (#30728)zeertzjq2024-10-09
| | | | | | | | | | | Problem: current command completion is a bit limited Solution: Add the shellcmdline completion type and getmdcomplpat() function (Ruslan Russkikh). closes: vim/vim#15823 https://github.com/vim/vim/commit/0407d621bbad020b840ffbbbd25ba023bbc05edd Co-authored-by: Ruslan Russkikh <dvrussk@yandex.ru>
* vim-patch:9.1.0766: too many strlen() calls in ex_getln.c (#30715)zeertzjq2024-10-08
| | | | | | | | | | | Problem: too many strlen() calls in ex_getln.c Solution: refactor the code to reduce the number of strlen() calls (John Marriott) closes: vim/vim#15809 https://github.com/vim/vim/commit/ccf8907570e14396e265b742e51f5089fdf97bf5 Co-authored-by: John Marriott <basilisk@internode.on.net>
* fix(coverity/510275): linematch out of bounds access (#30687)Devon Gardner2024-10-07
| | | | | | | | Problem: Int pointer cast to unsigned long pointer causes potential memory corruption. Solution: Cast and store value first, then pass the new pointer.
* fix(drawline): correct highlight priority with Visual selection (#30706)zeertzjq2024-10-08
|
* docs: dev-arch, focusable windows #30510Justin M. Keyes2024-10-07
| | | | - 'statuscolumn' is no longer experimental - add tags for popular searches on neovim.io
* docs: generate params/returns in builtin.txt #30654Justin M. Keyes2024-10-07
|
* vim-patch:9.1.0764: [security]: use-after-free when closing a buffer (#30705)zeertzjq2024-10-07
| | | | | | | | | | | | | Problem: [security]: use-after-free when closing a buffer Solution: When splitting the window and editing a new buffer, check whether the newly to be edited buffer has been marked for deletion and abort in this case Github Advisory: https://github.com/vim/vim/security/advisories/GHSA-rj48-v4mq-j4vg https://github.com/vim/vim/commit/51b62387be93c65fa56bbabe1c3c1ea5df187641 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:9.1.0762: 'cedit', 'termwinkey' and 'wildchar' may not be parsed ↵zeertzjq2024-10-07
| | | | | | | | | | | | | | | | | | | | | correctly (#30704) Problem: 'cedit', 'termwinkey' and 'wildchar' may not be parsed correctly Solution: improve string_to_key() function in option.c (Milly) - Problem: `^@` raises an error. Solution: Store as `<Nul>`. - Problem: `<t_xx` does not raise an error. Solution: Raise an error if closing `>` is missing. - Problem: Single `<` or `^` raises an error. It is inconvenient for users. Solution: They are stored as a single character. closes: vim/vim#15811 https://github.com/vim/vim/commit/a9c6f90918d0012d1b8c8c5c1dccb77407f553fb Co-authored-by: Milly <milly.ca@gmail.com>
* vim-patch:9.1.0761: :cd completion fails on Windows with backslash in path ↵zeertzjq2024-10-07
| | | | | | | | | | | | | | | | | (#30703) Problem: :cd completion fails on Windows with backslash in path Solution: switch no_bslash argument to FALSE in file_pat_to_reg_pat() Note: only fixes the problem on Windows. For Unix, we still need to escape backslashes since those are taken as regex atoms (and could be invalid regex atoms). fixes: vim/vim#15643 closes: vim/vim#15808 https://github.com/vim/vim/commit/1a31c430bb175144d097ca607dbe10d7960f372a Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:fd4e47e: runtime(doc): clarify the effect of 'startofline' option ↵zeertzjq2024-10-07
| | | | | | | | | (#30701) fixes: vim/vim#15794 https://github.com/vim/vim/commit/fd4e47e06b77fa26cb38f057aba950449e1f47f6 Co-authored-by: Christian Brabandt <cb@256bit.org>
* fix(runtime): fully port emoji_list to LuaChristian Clason2024-10-06
| | | | | | | Problem: `runtime/tools/emoji_list.vim` is a Lua script masquerading as Vimscript, which is unnecessary now that `:source` works for Lua files. Solution: Remove Vimscript wrapper.
* fix(coverity/510436): shada_read_when_writing index out of bounds (#30686)Devon Gardner2024-10-06
| | | | | | | | Problem: Index for global and numbered marks out of bounds when indexing into numbered marks array (contains 10 elements but indexed by values 26 through 35. Solution: Offset index by number of global marks to correctly index numbered marks array.
* vim-patch:9.1.0759: screenpos() may return invalid position (#30681)zeertzjq2024-10-06
| | | | | | | | | | | | | Problem: screenpos() may return invalid position after switching buffers (Greg Hurrell) Solution: reset w_leftcol if wrapping has been set after copying wrap option fixes: vim/vim#15792 closes: vim/vim#15803 https://github.com/vim/vim/commit/b065a10e245d020c11b521a2a5062300ca9891fc Co-authored-by: Christian Brabandt <cb@256bit.org>
* ci: bump ubuntu runner version to ubuntu-24.04dundargoc2024-10-05
| | | | Also bump clang to version 20.
* fix(coverity/497355): shada_read_when_writing out of bounds read #30665Devon Gardner2024-10-05
| | | | | | | | | | Problem: There appears to be an intentional array out of bounds read when indexing global and numbered marks since they are adjacent in the struct that holds them. Solution: Explicitly index numeric marks array to avoid reading out of bounds from global marks array.
* vim-patch:9.1.0758: it's possible to set an invalid key to 'wildcharm' (#30662)zeertzjq2024-10-05
| | | | | | | | | | | Problem: it's possible to set an invalid key to 'wildcharm' Solution: error out, if the 'wildcharm' value is an invalid key (Milly) closes: vim/vim#15787 https://github.com/vim/vim/commit/40c6babc1789aceb241b23bab76eea16da37e33d Co-authored-by: Milly <milly.ca@gmail.com>
* fix(mouse): indicate X1 and X2 button clicks on statusline (#30655)zeertzjq2024-10-04
|
* perf(treesitter): do not use tree cursors with a small lifetimeLewis Russell2024-10-03
| | | | | | | | | Problem: Tree cursors can only be efficient when they are re-used. Short-lived cursors are very slow. Solution: Reimplement functions that use short-lived cursors.
* vim-patch:9.1.0756: missing change from patch v9.1.0754 (#30636)glepnir2024-10-03
| | | | | | | | | Problem: missing change from patch v9.1.0754 Solution: use correct width for the actual item in pum_redraw() (glepnir) closes: vim/vim#15786 https://github.com/vim/vim/commit/a6d9e3c4e07f73f6523699961d8b7b54bdb80cf6