aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | test: move exec_lua logic to separate moduleLewis Russell2024-11-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | By making it a separate module, the embedded Nvim session can require this module directly instead of setup code sending over the module via RPC. Also make exec_lua wrap _G.print so messages can be seen in the test output immediately as the exec_lua returns.
| * | vim-patch:9.1.0862: 'wildmenu' not enabled by default in nocp mode (#31261)zeertzjq2024-11-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: 'wildmenu' not enabled by default in nocp mode Solution: promote the default Vim value to true, it has been enabled in defaults.vim anyhow, so remove it there (Luca Saccarola) closes: vim/vim#16055 https://github.com/vim/vim/commit/437bc13ea101835511bf4b5029c84482c1e30e62 Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
| * | docs: misc (#31138)dundargoc2024-11-21
| | | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * | refactor(options): impl default 'titlestring' by format flags #30843zshuzh2024-11-20
| | | | | | | | | | | | | | | | | | | | | Problem: Unnecessary C impl of default 'titlestring'. Solutin: Define it using format flags.
| * | feat(lsp): require `offset_encoding` param #31249Yi Ming2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Since [version 3.17](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocuments), LSP supports specifying the position encoding (aka offset encoding) supported by the client through `positionEncoding`. Since #31209, Nvim fully supports `utf-8`, `utf-16`, and `utf-32` encodings. Previously, nvim assumed all clients for a buffer had the same `offset_encoding`, so: * Nvim provides `vim.lsp._get_offset_encoding()` to get `offset_encoding`, but this function is incorrect because `offset_encoding` is per-client, not per-buffer. * Based on the strategy of `vim.lsp._get_offset_encoding()`, `vim.lsp.util.make_position_params()`, `vim.lsp.util.make_range_params()`, and `vim.lsp.util.make_given_range_params()` do not require the caller to pass `offset_encoding`, which is invalid. * https://github.com/neovim/neovim/issues/25272 Solution: * Mark `vim.lsp._get_offset_encoding()` as `@deprecated`. * Change the type annotations of `vim.lsp.util.make_position_params()`, `vim.lsp.util.make_range_params()`, `vim.lsp.util.make_given_range_params()` to require the `offset_encoding` param.
| * | fix(messages): more ext_messages kinds #31279luukvbaal2024-11-20
| | | | | | | | | | | | Add kinds for various commands that output a list, the 'wildmode' list, and for number prompts.
| * | build(clint): make NOLINT work with header checks (#31281)zeertzjq2024-11-20
| | | | | | | | | | | | Problem: NOLINT doesn't work with header checks. Solution: Move these checks after ProcessLine() calls.
| * | feat(lsp): deprecate non-method client functionsLewis Russell2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Deprecated: - `client.request()` -> `client:request()` - `client.request_sync()` -> `client:request_sync()` - `client.notify()` -> `client:notify()` - `client.cancel_request()` -> `client:cancel_request()` - `client.stop()` -> `client:stop()` - `client.is_stopped()` `client:is_stopped()` - `client.supports_method()` -> `client:supports_method()` - `client.on_attach()` -> `client:on_attach()` Fixed docgen to link class fields to the full function doc.
| * | vim-patch:9.1.0880: filetype: C3 files are not recognizedChristian Clason2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: C3 files are not recognized Solution: detect '*.c3*' files as c3 filetype (Turiiya) closes: vim/vim#16087 https://github.com/vim/vim/commit/c8dfcfc53ba5ed69b5d4e534fd7e8694de014e6a Co-authored-by: Turiiya <34311583+ttytm@users.noreply.github.com>
| * | vim-patch:9.1.0876: filetype: openCL files are not recognizedChristian Clason2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: openCL files are not recognized Solution: detect '*.cl' files as opencl or lisp filetype, include a opencl syntax and filetype plugin (Wu, Zhenyu) closes: vim/vim#15825 https://github.com/vim/vim/commit/e2c27ca8eff7cc8ec852b531d5a7f328a343a761 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
| * | vim-patch:9.1.0875: filetype: hyprlang detection can be improvedChristian Clason2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: hyprlang detection can be improved Solution: detect '/hypr/*.conf' files as hyprlang filetype, include basic syntax highlighting (Luca Saccarola) fixes: vim/vim#15875 closes: vim/vim#16064 https://github.com/vim/vim/commit/a13bd294ab2d9ab38634c9ec51fa76205af6eb62 Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
| * | vim-patch:9.1.0874: filetype: karel files are not detectedChristian Clason2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: karel files are not detected Solution: detect '*.kl' files as karel filetype, include syntax and filetype plugin (Kirill Morozov) closes: vim/vim#16075 https://github.com/vim/vim/commit/fdac54d7bbf6d68a8bf741e734b86d0f1998ac86 Co-authored-by: Kirill Morozov <kirill@robotix.pro> Co-authored-by: KnoP-01 <knosowski@graeffrobotics.de>
| * | vim-patch:4927dae: runtime(compiler): fix escaping of arguments passed to ↵Christian Clason2024-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | :CompilerSet See newly added help entry referring to option-backslash closes: vim/vim#16084 https://github.com/vim/vim/commit/4927daef608d4bbcdce8a1098cdeeaed3112c849 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
| * | fix(move): redraw for 'concealcursor' after changing w_wcol (#31276)zeertzjq2024-11-20
| | |
| * | fix(messages): no message kind for search pattern #31272Tomasz N2024-11-19
| | |
* | | Merge remote-tracking branch 'upstream/master' into mix_20240309Josh Rahm2024-11-25
|\| |
| * | fix(lsp): restore get_language_id behaviourLewis Russell2024-11-19
| | | | | | | | | | | | | | | | | | Ensure filetype is always passed. Fixes #31262
| * | vim-patch:9.1.0870: too many strlen() calls in eval.c (#31267)zeertzjq2024-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: too many strlen() calls in eval.c Solution: Refactor eval.c to remove calls to STRLEN() (John Marriott) closes: vim/vim#16066 https://github.com/vim/vim/commit/bd4614f43d0eac4aff743132bab8e53b015ac801 Co-authored-by: John Marriott <basilisk@internode.on.net>
| * | vim-patch:9.1.0873: filetype: Vivado files are not recognizedChristian Clason2024-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: Vivado files are not recognized Solution: detect '*.mss' files as 'mss' filetype (Wu, Zhenyu) references: https://docs.amd.com/r/2020.2-English/ug1400-vitis-embedded/Microprocessor-Software-Specification-MSS closes: vim/vim#15907 https://github.com/vim/vim/commit/a87462a498a883e12ad7699b26bd28f4600b68c6 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
| * | refactor(lsp): fold in dynamic_registration code into the clientLewis Russell2024-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Capability register logic is spread across 3 files. Solution: - Consolidate (and simplify) logic into the client. - Teach client.supports_method about resolve methods
| * | fix(api): nvim_get_option_value does not clean up on FileType error #31219altermo2024-11-18
| | | | | | | | | | | | | | | | | | | | | | | | Problem: If there's an error in `FileType` autocmd, the filetype get-opt buffer doesn't get cleaned up. Solution: Call `aucmd_restbuf`.
| * | fix(api): only flush nvim__redraw when necessary #31250luukvbaal2024-11-18
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Not possible to only set a "redraw later" type with nvim__redraw, which seems to be desired for the treesitter highlighter. Solution: Do not update the screen when "flush" is explicitly set to false and only redraw later types are present. In that case, do not call ui_flush() either.
| * | vim-patch:9.1.0869: Problem: curswant not set on gm in folded line (#31247)zeertzjq2024-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: curswant not set on gm in folded line (citizenmatt) Solution: in a folded line, call update_curswant_force() fixes: vim/vim#11596 closes: vim/vim#11994 closes: vim/vim#15398 https://github.com/vim/vim/commit/9848face747ba91282d34a96dcb966bcb410bf2b Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | fix(checkhealth): disable 'listchars' #31245Yochem van Rosmalen2024-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: 'listchars' (in particular multispace) breaks visual heading due to `Whitespace` highlight group. Solution: Disable 'list' (and thus all listchars) by default for `checkhealth` files. Fixes #31145
| * | feat(defaults): dot-repeat [<Space> #31186Peter Aronoff2024-11-17
| | | | | | | | | | | | | | | | | | Problem: `[<Space>` and `]<Space>` do not support repetition. Solution: use `operatorfunc` and `g@l` to make these mappings dot repeatable.
| * | feat(lsp): highlight hover target/range #31110Riley Bruins2024-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **Problem:** Despite the LSP providing the option for language servers to specify a range with a hover response (for highlighting), Neovim does not give the option to highlight this range. **Solution:** Add an option to `buf.hover()` which causes this range to be highlighted. Co-authored-by: Mathias Fußenegger <mfussenegger@users.noreply.github.com>
| * | fix(api): update "range" windows in nvim__redraw #31042luukvbaal2024-11-17
| | | | | | | | | | | | | | | | | | | | | Problem: nvim__redraw's "range" marks a buffer range for redraw, and subsequently flushes the UI without updating the windows containing that buffer. Solution: Implicitly update the screen, unless specified otherwise. Only update the screen with the last call of the treesitter on_changedtree() callback.
| * | fix(messages): proper multiline Lua print() messages #31205luukvbaal2024-11-17
| | | | | | | | | | | | | | | | | | Problem: Separate message emitted for each newline present in Lua print() arguments. Solution: Make msg_multiline() handle NUL bytes. Refactor print() to use msg_multiline(). Refactor vim.print() to use print().
| * | fix(api): nvim_echo free text memory with invalid highlight (#31243)luukvbaal2024-11-17
| | | | | | | | | Fix regression from #31195
| * | build(deps): bump uncrustify to uncrustify-0.80.1Christian Clason2024-11-17
| | |
| * | fix(lsp): type-errors, other nits in vim.lsp.log #31235Maria José Solano2024-11-16
| | |
| * | fix(treesitter): remove redundant on_bytes callback #31041luukvbaal2024-11-16
| | | | | | | | | | | | | | | | | | | | | Problem: Treesitter highlighter implements an on_bytes callback that just re-marks a buffer range for redraw. The edit that prompted the callback will already have done that. Solution: Remove redundant on_bytes callback from the treesitter highlighter module.
| * | fix(api): validation, documentation of hl_group #31195luukvbaal2024-11-16
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Documentation for "hl_group" in nvim_buf_set_extmark() is unclear. "hl_group" in nvim_echo() does not accept highlight group id. Solution: Move documentation for highlight group name/id to first mention of hl_group. Update nvim_echo() to accept highlight group id.
| * | feat(ui): don't show unfocusable windows in :tabs, 'tabline' #27984luukvbaal2024-11-16
| | | | | | | | | | | | | | | | | | | | | Problem: Floating windows with focusable set to false can reasonably be expected to be UI elements but are listed in some outputs that should contain only regular windows. Solution: Hide unfocusable floating windows from the default tabline and :tabs.
| * | refactor(options): remove `.indir`, redesign option scopes #31066Famiu Haque2024-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The way option scopes currently work is inflexible and does not allow for nested option scopes or easily finding the value of an option at any arbitrary scope without having to do long handwritten switch-case statements like in `get_varp()`. `.indir` is also confusing and redundant since option indices for each scope can be autogenerated. Solution: Expand option scopes in such a way that an option can support any amount of scopes using a set of scope flags, similarly to how it's already done for option types. Also make options contain information about its index at each scope it supports. This allows for massively simplifying `get_varp()` and `get_varp_scope()` in the future by just using a struct for options at each scope. This would be done by creating a table that stores the offset of an option's variable at a scope by using the option's index at that scope as a key. This PR also autogenerates enums for option indices at each scope to remove the need for `.indir` entirely, and also to allow easily iterating over options all options that support any scope. Ref: #29314
| * | build(deps): bump uncrustify to uncrustify-0.80.0Christian Clason2024-11-16
| |/
| * vim-patch:partial:9.1.0851: too many strlen() calls in getchar.c (#31230)zeertzjq2024-11-16
| | | | | | | | | | | | | | | | | | | | | | Problem: too many strlen() calls in getchar.c Solution: refactor code and reduce strlen() calls (John Marriott) closes: vim/vim#16017 https://github.com/vim/vim/commit/e7a1bbf2102ecd2083613ff18d7d46c45d1e568e Co-authored-by: John Marriott <basilisk@internode.on.net>
| * docs: standardize doc for ChanInfo/ChanOpen autocmds/v:event (#31099)errael2024-11-16
| |
| * test(lua/ui_event_spec): avoid polluting log file (#31229)zeertzjq2024-11-16
| |
| * vim-patch:9.1.0866: filetype: LLVM IR files are not recognized (#31228)zeertzjq2024-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: LLVM IR files are not recognized Solution: detect '*.ll' files either as lifelines or llvm filetype (Wu, Zhenyu) closes: vim/vim#15824 https://github.com/vim/vim/commit/bc32bbddcfc2671158a4780838766ed2d1e14fa6 N/A patch: vim-patch:7e4b861: runtime(filetype): remove duplicated *.org file pattern Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
| * fix(ui): no fast context for prompt message kinds #31224luukvbaal2024-11-15
| | | | | | | | | | | | | | Problem: No longer able to show prompt messages with vim.ui_attach(). Solution: Do not execute callback in fast context for prompt message kinds. These events must be safe to show the incoming message so the event itself serves to indicate that the message should be shown immediately.
| * feat(default): bind `vim.lsp.buf.signature_help` in select mode (#31223)Yi Ming2024-11-15
| |
| * vim-patch:7c3b65e: runtime(cfg): only consider leading // as starting a commentChristian Clason2024-11-15
| | | | | | | | | | | | | | | | fixes: vim/vim#16051 https://github.com/vim/vim/commit/7c3b65eb3e882aeda7214faa17aef04d76d9c06f Co-authored-by: Christian Brabandt <cb@256bit.org>
| * vim-patch:0acd3ab: runtime(sh): better function support for bash/zsh in ↵Christian Clason2024-11-15
| | | | | | | | | | | | | | | | | | | | indent script closes: vim/vim#16052 https://github.com/vim/vim/commit/0acd3abfadf54a97a3cad999791603aa6a8b2248 Co-authored-by: Lukas Zapletal <lzap+git@redhat.com>
| * vim-patch:460799d: runtime(netrw): small fixes to netrw#BrowseXChristian Clason2024-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - do not enter dir in Netrw on opening - double quotes after start cause error on Windows See @chrisbra 's comments at [0] [0]: https://github.com/techntools/vim/commit/ff82e7a9dbef1cf98525be3186d65f450390e3b7#diff-39baf27d8f62071617bbef12f874cce31c0ebd02ec99e7b119474ca870c636a3R5279 https://github.com/vim/vim/commit/460799d885feeabd57b4e9336c513e53b2c7c86f Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
| * vim-patch:9.1.0865: filetype: org files are not recognizedChristian Clason2024-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: org files are not recognized Solution: detect '*.org' files as 'org' filetype, include filetype and syntax plugin (Luca Saccarola) closes: vim/vim#16054 https://github.com/vim/vim/commit/0684800c853ee5bd6e6736389b1a6ebe6a16a741 Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
| * ci(win): remove python workaround (#31212)Christian Clason2024-11-15
| | | | | | Explicitly installing Python 3.13 using (deprecated version of) `setup-python` looks to be no longer required for provider tests to pass.
| * fix(treesitter): keep treeview open if source window is still open #31198Hyker2024-11-14
| | | | | | | | | | | | | | | | | | | | | | | | Problem: When there is a tree view opened by :InspectTree and the source buffer is open in multiple windows, closing one of the source windows will lead to the tree view being closed as well. Regression by #31181. Solution: Check how many source windows are open when trying to quit one. If there are more than one, keep the tree view(s) open. If the only source window is closed, also close the tree view(s). fix #31196
| * vim-patch:9.1.0855: setting 'cmdheight' may missing output (#31216)zeertzjq2024-11-15
| | | | | | | | | | | | | | | | | | | | | | | | Problem: setting 'cmdheight' may cause hit-enter-prompt and echo output to be missing Solution: Before cleaning the cmdline, check the need_wait_return flag (nwounkn) closes: vim/vim#13432 https://github.com/vim/vim/commit/2e48567007f2becd484a3c3dd0706bf3a0beeae7 Co-authored-by: nwounkn <nwounkn@gmail.com>
| * vim-patch:9.1.0864: message history is fixed to 200 (#31215)zeertzjq2024-11-15
| | | | | | | | | | | | | | | | | | | | | | | | Problem: message history is fixed to 200 Solution: Add the 'msghistory' option, increase the default value to 500 (Shougo Matsushita) closes: vim/vim#16048 https://github.com/vim/vim/commit/4bd9b2b2467e696061104a029000e9824c6c609e Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com> Co-authored-by: Milly <milly.ca@gmail.com>