aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* docs(vvars): adjust lua types for vim.v variables #31510luukvbaal2024-12-09
| | | | - classes for v:event and v:completed_item - add remaining unknown types
* build: mark CMake variables advanced #31412Eisuke Kawashima2024-12-09
| | | The variables are not marked as advanced, thus they appear in e.g. `ccmake`.
* docs: fix type of vim.validate valueMaria José Solano2024-12-09
|
* Merge pull request #31523 from zeertzjq/vim-eda923ezeertzjq2024-12-09
|\ | | | | vim-patch: netrw fixes
| * vim-patch:92b3666: runtime(netrw): only check first arg of ↵zeertzjq2024-12-09
| | | | | | | | | | | | | | | | | | | | netrw_browsex_viewer for being executable fixes: vim/vim#16185 https://github.com/vim/vim/commit/92b36663f8d0e507f60f357c6add6f6c9148a951 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * vim-patch:eda923e: runtime(netrw): do not detach when launching external ↵zeertzjq2024-12-09
|/ | | | | | | | | | | | programs in gvim On Debian 12 when detaching the program wouldn't launch at all closes: vim/vim#16168 https://github.com/vim/vim/commit/eda923e9c9e639bc4f02b8b3ead1e7d27981e552 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
* vim-patch:9.1.0915: GVim: default font size a bit too small (#31516)zeertzjq2024-12-08
| | | | | | | | | | | | Problem: GVim: default font size a bit too small Solution: increase guifont size to 12 pt on GTK builds of gVim (matveyt). fixes: vim/vim#16172 closes: vim/vim#16178 https://github.com/vim/vim/commit/ad3b6a3340a4ab02c1e5bc4a6d6a5fb858b671d3 Co-authored-by: matveyt <matthewtarasov@yandex.ru>
* refactor(lsp): better tracking of requestsLewis Russell2024-12-08
| | | | | Not essential, but adds robustness and hardening for future changes.
* vim-patch:9.1.0913: no error check for neg values for 'messagesopt' (#31511)zeertzjq2024-12-08
| | | | | | | | | | | | | Problem: no error check for neg values for 'messagesopt' (after v9.1.0908) Solution: add additional error checks and tests (h-east) closes: vim/vim#16187 https://github.com/vim/vim/commit/65be834c30fb43abb2e41585b41eefcd2ae06c01 Nvim's getdigits() checks for overflow, so the code change isn't needed. Co-authored-by: h-east <h.east.727@gmail.com>
* fix(lua): avoid vim._with() double-free with cmdmod (#31505)zeertzjq2024-12-08
|
* vim-patch:336fb22: translation(vi): Update Vietnamese translationbrianhuster2024-12-08
| | | | | | closes: vim/vim#16144 https://github.com/vim/vim/commit/336fb22eaef7977741712d0c4735fc6d65428a4f
* vim-patch:41afa30: runtime(doc): Add vietnamese.txt to helps main TOCzeertzjq2024-12-08
| | | | | | | | closes: vim/vim#16177 https://github.com/vim/vim/commit/41afa308d6f420504c47567b494e97a6721afe71 Co-authored-by: h-east <h.east.727@gmail.com>
* vim-patch:8a52587: runtime(doc): fix wrong syntax and style of vietnamese.txtbrianhuster2024-12-08
| | | | | | | | | | https://github.com/vim/vim/commit/8a52587ee05a360cad4d42322200775fc74a4430 vim-patch:72212c9: runtime(doc): update wrong Vietnamese localization tag https://github.com/vim/vim/commit/72212c9bea77f14f1e6be703de3c10d70eb2984c Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:189e24b: runtime(doc): include vietnamese.txtbrianhuster2024-12-08
| | | | | | | | | | Since Vietnamese keymaps in Vim is quite differences from the corresponding input methods, let's document the Vietnamese specifics in vietnames.txt related: vim/vim#16144 https://github.com/vim/vim/commit/189e24bb1441abe87387a4e21c4387bbf2eac718
* Merge pull request #31504 from zeertzjq/vim-9.1.0910zeertzjq2024-12-08
|\ | | | | vim-patch:9.1.{0910,0911}: 'messagesopt' followup
| * vim-patch:9.1.0911: Variable name for 'messagesopt' doesn't match short namezeertzjq2024-12-08
| | | | | | | | | | | | | | | | | | | | Problem: Variable name for 'messagesopt' doesn't match short name (after v9.1.0908) Solution: Change p_meo to p_mopt. Add more details to docs. closes: vim/vim#16182 https://github.com/vim/vim/commit/8cc43daee1f485c9abf1de3c638cce7835b9f861
| * vim-patch:9.1.0910: 'messagesopt' does not check max wait timezeertzjq2024-12-08
|/ | | | | | | | | | | | | Problem: 'messagesopt' does not check max wait time (after v9.1.0908) Solution: Check for max wait value (Shougo Matsushita) closes: vim/vim#16183 https://github.com/vim/vim/commit/d9e9f89e0ffd6e7ce5e2a7f8f1ace5471e37c210 Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
* refactor: add vim._resolve_bufnrLewis Russell2024-12-07
|
* fix(inspect): always show priorityChristian Clason2024-12-07
| | | | | | | | Problem: It is not obvious if a treesitter highlight priority shown in `:Inspect` is higher or lower than the default. Solution: Also print default priority (`vim.hl.priorities.treesitter`). Add padding for better readability.
* feat(ex_cmds): :sleep! hides the cursor while sleeping (#31493)zeertzjq2024-12-07
| | | | | | | | | | Problem: :sleep! not hiding the cursor is an arbitrary difference from Vim without obvious justification, and Vim's behavior isn't easily achievable in Nvim. Solution: Make :sleep! hide the cursor while sleeping. Ref: https://github.com/neovim/neovim/commit/6a01b3fcc361960e559db459e1524418bc76dd66 https://github.com/neovim/neovim/commit/b5c0ade43790cf18f6a54858ddad30d8d9667cf9
* Merge pull request #31475 from luukvbaal/delgravitybfredl2024-12-07
|\ | | | | fix(marks): check gravity at range bounds when deleting text
| * fix(marks): skip right_gravity marks when deleting textLuuk van Baal2024-12-06
| | | | | | | | | | | | | | | | | | | | Problem: Marks that are properly restored by the splice associated with an undo edit, are unnecessarily pushed to the undo header. This results in incorrect mark tracking in the "copy_only" save/restore completion path. Solution: Avoid pushing left gravity marks at the beginning of the range, and right gravity marks at the end of the range to the undo header.
* | fix(treesitter): #trim! range for nodes ending at col 0 #31488Riley Bruins2024-12-07
| | | | | | | | | | | | | | | | | | Problem: char-wise folding for `#trim!` ranges are improperly calculated for nodes that end at column 0, due to the way `get_node_text` works. Solution: Add the blank line that `get_node_text` removes for for nodes ending at column 0. Also properly set column positions when performing linewise trims.
* | fix: remove vim.lsp._with_extendLewis Russell2024-12-07
| | | | | | | | Not used anywhere.
* | fix(lsp): cancel pending requests before refreshingtris2032024-12-07
| | | | | | | | | | | | | | | | | | | | | | Problem: Diagnostics and inlay hints can be expensive to calculate, and we shouldn't stack them as this can cause noticeable lag. Solution: Check for duplicate inflight requests and cancel them before issuing a new one. This ensures that only the latest request is processed, improving performance and preventing potential conflicts.
* | fix(lsp): check for configuration workspace folders when reusing clientsMaria José Solano2024-12-07
| |
* | fix(inspect): show priority for treesitter highlightsChristian Clason2024-12-07
| | | | | | | | | | | | | | | | Problem: `:Inspect` does not show priority for treesitter highlights, leading to confusion why sometimes earlier highlights override later highlights. Solution: Also print priority metadata if set.
* | vim-patch:9.1.0908: not possible to configure :messages (#31492)zeertzjq2024-12-07
| | | | | | | | | | | | | | | | | | | | | | Problem: not possible to configure :messages Solution: add the 'messagesopt' option (Shougo Matsushita) closes: vim/vim#16068 https://github.com/vim/vim/commit/51d4d84d6a7159c6ce9e04b36f8edc105ca3794b Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com> Co-authored-by: h_east <h.east.727@gmail.com>
* | feat(stdlib): vim.json.encode(...,{escape_slash:boolean}) #30561Bartłomiej Maryńczak2024-12-06
| | | | | | | | | | | | | | | | | | | | | | | | Problem: vim.json.encode escapes every slash in string values (for example in file paths), and is not optional. Use-case is for preventing HTML injections (eg. injecting `</script>` closing tag); in the context of Nvim this is rarely useful. Solution: - Add a `escape_slash` flag to `vim.json.encode`. - Defaults to `false`. (This is a "breaking" change, but more like a bug fix.)
* | fix(lsp): add foldingrange method support check #31463Tristan Knight2024-12-06
| | | | | | | | | | | | Problem: The folding_range request method assumes that the client supports the method Solution: Add a capability guard to the call
* | docs: do not escape Lua keywords #31467Gregory Anders2024-12-06
| |
* | Merge #30085 #trim! all whitespaceJustin M. Keyes2024-12-06
|\ \
| * | test(treesitter): add a simple testutil fileRiley Bruins2024-12-06
| | | | | | | | | | | | The util file, for now, just abstracts the common `run_query` function.
| * | feat(treesitter): #trim! can trim all whitespaceRiley Bruins2024-12-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit also implements more generic trimming, acting on all whitespace (charwise) rather than just empty lines. It will unblock https://github.com/nvim-treesitter/nvim-treesitter/pull/3442 and allow for properly concealing markdown bullet markers regardless of indent width, e.g.
* | | feat(defaults): disable 'foldcolumn' in terminal buffers (#31480)Micah Halter2024-12-06
|/ /
* | fix(filetype): make filetype detection work with :doautocmd (#31470)zeertzjq2024-12-06
| |
* | docs: delineate blocks/list items #30973Brian A. Weston2024-12-06
| | | | | | | | | | Problem: Paragraph below bulleted list was joined to last list item instead of dropping below as expected. Same with "Notes:" paragraph below it. Solution: Added necessary newlines.
* | fix(completion): avoid deleting text when completion leader changes #31448luukvbaal2024-12-06
| | | | | | | | | | | | | | Problem: When completion leader changes, text that might be reinserted immediately after is deleted. This unnecessarily affects extmarks. #31387 restored the original extmarks but that prevents end_right_gravity marks from growing. Solution: Avoid deleting leader text that will be reinserted.
* | fix(events): don't expand `args.file` for Lua callback (#31473)zeertzjq2024-12-06
|/ | | | | | | | Problem: In an autocommand Lua callback whether `args.file` is expanded depends on whether `expand('<afile>')` has been called. Solution: Always use the unexpanded file name for `args.file`. Related to #31306 and vim/vim#16106. This doesn't provide `sfname`, but at least makes `args.file` have a consistent value.
* vim-patch:9.1.0906: filetype: Nvidia PTX files are not recognizedChristian Clason2024-12-06
| | | | | | | | | | | | | Problem: filetype: Nvidia PTX files are not recognized Solution: detect '*.ptx' files as ptx filetype (Yinzuo Jiang) Reference: https://docs.nvidia.com/cuda/parallel-thread-execution/ closes: vim/vim#16171 https://github.com/vim/vim/commit/bdb5f85a5189534653f36e92b1bc780ca8d25218 Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
* vim-patch:ea0e41a: runtime(doc): make tag alignment more consistent in ↵zeertzjq2024-12-06
| | | | | | | | | | | | filetype.txt (#31459) closes: vim/vim#16169 https://github.com/vim/vim/commit/ea0e41a1152378358975e5021ea9f5540dabf542 Omit Lua folding. N/A patch: vim-patch:fdfcce5: runtime(lua): add optional lua function folding
* fix(diagnostic): only store quickfix id when creating a new one #31466Jeremy Fleischman2024-12-05
| | | | | | The old code would always update `_qf_id` with the current quickfix, even if you're currently looking at a completely different, non-diagnostics quickfix list. This completely defeats the intent of <https://github.com/neovim/neovim/pull/30868>, whoops!
* docs: graduate intro.txt to "flow layout" #31462Justin M. Keyes2024-12-05
| | | - move credits and backers to credits.txt
* Merge #31451 docsJustin M. Keyes2024-12-05
|\
| * docs: graduate gui.txt to "flow layout"Justin M. Keyes2024-12-05
| |
| * docs: help tags for neovim.io searchesJustin M. Keyes2024-12-04
| |
* | fix(defaults): don't replace keycodes in Visual search mappings (#31460)zeertzjq2024-12-05
| | | | | | Also remove "silent" to be more consistent with Normal mode search.
* | vim-patch:9.1.0903: potential overflow in spell_soundfold_wsal() (#31456)glepnir2024-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: potential overflow in spell_soundfold_wsal() Solution: Protect wres from buffer overflow, by checking the length (Zdenek Dohnal) Error: OVERRUN (CWE-119): vim91/src/spell.c:3819: cond_const: Checking "reslen < 254" implies that "reslen" is 254 on the false branch. vim91/src/spell.c:3833: incr: Incrementing "reslen". The value of "reslen" is now 255. vim91/src/spell.c:3792: overrun-local: Overrunning array "wres" of 254 4-byte elements at element index 254 (byte offset 1019) using index "reslen - 1" (which evaluates to 254). 3789| { 3790| // rule with '<' is used 3791|-> if (reslen > 0 && ws != NULL && *ws != NUL 3792| && (wres[reslen - 1] == c 3793| || wres[reslen - 1] == *ws)) Error: OVERRUN (CWE-119): vim91/src/spell.c:3819: cond_const: Checking "reslen < 254" implies that "reslen" is 254 on the false branch. vim91/src/spell.c:3833: overrun-local: Overrunning array "wres" of 254 4-byte elements at element index 254 (byte offset 1019) using index "reslen++" (which evaluates to 254). 3831| { 3832| if (c != NUL) 3833|-> wres[reslen++] = c; 3834| mch_memmove(word, word + i + 1, 3835| sizeof(int) * (wordlen - (i + 1) + 1)); related: vim/vim#16163 https://github.com/vim/vim/commit/39a94d20487794aeb722c21e84f8816e217f0cfe Co-authored-by: Zdenek Dohnal <zdohnal@redhat.com>
* | vim-patch:9.1.0905: Missing information in CompleteDone event (#31455)glepnir2024-12-05
| | | | | | | | | | | | | | | | | | Problem: Missing information in CompleteDone event Solution: add complete_word and complete_type to v:event dict (glepnir) closes: vim/vim#16153 https://github.com/vim/vim/commit/1c5a120a701fcf558617c4e70b5a447778f0e51d
* | test(system_spec): check for .git dir before using git (#31458)zeertzjq2024-12-05
| |