aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | feat(defaults): map gO to LSP document_symbol #30781Nikita Revenco2024-10-28
| | |
| * | fix(lsp): list all workspace folders in healthcheck #30966Maria José Solano2024-10-28
| | |
| * | test(pum): add test for item selection with 'rightleft' (#30968)zeertzjq2024-10-28
| | |
| * | fix(pum): don't select item when clicking to the left/right (#30967)zeertzjq2024-10-28
| | | | | | | | | | | | | | | | | | | | | Problem: Selecting an item in the right-click menu when clicking to the left/right of it is confusing, especially in a UI that doesn't support 'mousemoveevent'. Solution: Don't select an item when clicking to the left/right of the right-click menu.
| * | fix(treesitter): correct condition in `__has_ancestor`Amaan Qureshi2024-10-27
| | |
| * | feat(diagnostics)!: sort underline severity_sort (#30898)Donatas2024-10-27
| | | | | | | | | | | | | | | feat(diagnostics)!: sort underline with severity_sort BREAKING CHANGE: underline will be applied with a higher value than `vim.hl.priorities.diagnostics`
| * | fix(lsp): compare URI instead of workspace folder name (#30962)Gregory Anders2024-10-27
| | | | | | | | | | | | | | | | | | The workspace folder name is meant to be a human-readable name which is only used in the UI. Comparing the name against root_dir is thus not a valid comparison. Instead, we should compare the workspace folder's URI against the root dir URI.
| * | feat(tutor): give hints to satisfy the line checker #30952echometerain2024-10-27
| | | | | | | | | | | | | | | Problem: novice users relying on vimtutor won't know what to do when they follow the instructions and delete a couple lines and that breaks the line checker Solution: tell the user to fix the line numbers after they're done
| * | refactor(options): always allocate option values (#30917)Famiu Haque2024-10-27
| | | | | | | | | | | | | | | | | | | | | Instead of keeping `P_ALLOCED` and `P_DEF_ALLOCED` flags to check if an option value is allocated, always allocate option values to simplify the logic. Ref: #25672
| * | docs(lsp): document alternative for vim.lsp.util.jump_to_locationMaria José Solano2024-10-27
| | |
| * | docs(treesitter): specify predicate boolean return valueRiley Bruins2024-10-27
| | |
| * | refactor(lsp): drop str_byteindex/str_utfindex wrappers #30915Tristan Knight2024-10-26
| | | | | | | | | | | | | | | * deprecate old signatures * move to new str_byteindex/str_utfindex signature * use single-underscore name (double-underscore is reserved for Lua itself)
| * | refactor(options)!: use OptVal for option defaults #26691Famiu Haque2024-10-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: We use `void *` for option default values, which is confusing and can cause problems with type-correctness. It also doesn't accomodate for multitype options. On top of that, it also leads to default boolean option values not behaving correctly on big endian systems. Solution: Use `OptVal` for option default values. BREAKING CHANGE: - `:set {option}<` removes the local value for all global-local options instead of just string global-local options. - `:setlocal {option}<` copies the global value to the local value for number and boolean global-local options instead of removing the local value.
| * | fix(defaults): missing ]Q/[Q unimpaired mappings #30943Maria José Solano2024-10-25
| | |
| * | vim-patch:9.1.0814: mapset() may remove unrelated mapping (#30941)zeertzjq2024-10-24
| |/ | | | | | | | | | | | | | | | | Problem: mapset() may remove unrelated mapping whose {rhs} matches the restored mapping's {lhs}. Solution: only match by {lhs} when unmapping for mapset() (zeertzjq). closes: vim/vim#15935 https://github.com/vim/vim/commit/fdf135a0525746cc0ff85bed2fbbde320ddb6d0d
| * feat(lsp): deprecate vim.lsp.buf.completionLewis Russell2024-10-24
| | | | | | | | Use `vim.lsp.completion.trigger()` instead'
| * feat(lsp): deprecate execute_command with client:exec_cmdLewis Russell2024-10-24
| |
| * fix(lsp): better multi-client support for callHierarchyLewis Russell2024-10-24
| | | | | | | | | | | | | | | | Only ever display a dialogue box once. Switch from vim.fn.inpulist to vim.ui.select refactor(lsp): merge call and type hierarchy functions
| * fix(lsp): use correct method for prepareTypehierarchyLewis Russell2024-10-24
| | | | | | | | Regression from #30902
| * fix(lsp): set tagstack on jump via goto methodsMathias Fussenegger2024-10-24
| | | | | | | | | | Follow up to https://github.com/neovim/neovim/pull/30877 Fixes https://github.com/neovim/neovim/issues/30926
| * Merge pull request #30929 from lewis6991/fix/lsp_param_encodingsLewis Russell2024-10-24
| |\
| | * fix(lsp.buf): use correct offset_encoding for all requestsLewis Russell2024-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `lsp.buf_request` send the same params to all servers and many calls to this pass PositionalParams which depends on the clients offset_encoding. This can result with incorrect params being sent to a server. Solution: `lsp.buf_request` `params` argument can now be passed as a function which takes the client as the first argument. This is used in lsp/buf.lua to construct correct params for each client request.
| | * fix(lsp.protocal): improve typing of constantsLewis Russell2024-10-24
| | |
| | * refactor(lsp.buf): remove buf_request wrapperLewis Russell2024-10-24
| | |
| | * refactor(lsp.buf): use alias for vim.lspLewis Russell2024-10-24
| |/
| * fix(lsp): handle mixed encoding in tagfunc paramsMathias Fussenegger2024-10-24
| | | | | | | | Relates to https://github.com/neovim/neovim/issues/30034
| * fix(options): missing error check for global 'scl' and 'winhl' (#30919)zeertzjq2024-10-24
| |
| * test(012_directory_spec): fix flakiness on Windows (#30920)zeertzjq2024-10-24
| | | | | | | | Problem: 012_directory_spec is flaky on Windows. Solution: Use :%bwipe! instead :qall!.
| * Merge pull request #30918 from zeertzjq/vim-9.1.0802zeertzjq2024-10-24
| |\ | | | | | | vim-patch:9.1.{0802,0803,0804,0806,0812}: :setglobal fixes
| | * test(old): remove unnecessary :setglobal skipszeertzjq2024-10-24
| | |
| | * vim-patch:9.1.0812: Coverity warns about dereferencing NULL ptrzeertzjq2024-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Coverity warns about dereferencing NULL ptr in check_colorcolumn() Solution: verify that wp is not null before accessing it related: vim/vim#15914 https://github.com/vim/vim/commit/d0809869d6445faecd323fb33dc271d8c74a94fb Co-authored-by: Christian Brabandt <cb@256bit.org>
| | * vim-patch:9.1.0806: tests: no error check when setting global 'briopt'zeertzjq2024-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: tests: no error check when setting global 'briopt' Solution: also parse and check global 'briopt' value (Milly) closes: vim/vim#15911 https://github.com/vim/vim/commit/b38700ac81d90a652e5c8495056dd78df5babdde Co-authored-by: Milly <milly.ca@gmail.com>
| | * vim-patch:9.1.0804: tests: no error check when setting global 'cc'zeertzjq2024-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: tests: no error check when setting global 'cc' Solution: also parse and check global 'cc' value (Milly) closes: vim/vim#15914 https://github.com/vim/vim/commit/a441a3eaabbfc14b4772e07ecbecaaff3bd06a58 Co-authored-by: Milly <milly.ca@gmail.com>
| | * vim-patch:9.1.0803: tests: no error check when setting global 'isk'zeertzjq2024-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: tests: no error check when setting global 'isk' Solution: also parse and check global 'isk' value (Milly) closes: vim/vim#15915 https://github.com/vim/vim/commit/5e7a6a4a106923e45c67dae6810e4c9753f88025 Co-authored-by: Milly <milly.ca@gmail.com>
| | * vim-patch:9.1.0802: tests: no error check when setting global 'fdm' to empty ↵zeertzjq2024-10-24
| |/ | | | | | | | | | | | | | | | | | | | | | | | | value Problem: tests: no error check when setting global 'fdm' to empty value Solution: Also check global 'fdm' value for being empty (Milly). closes: vim/vim#15916 https://github.com/vim/vim/commit/142cad1f88d1d3aa34b6050151e620b66185112e Co-authored-by: Milly <milly.ca@gmail.com>
| * feat(stdlib): overload vim.str_byteindex, vim.str_utfindex #30735Tristan Knight2024-10-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PROBLEM: There are several limitations to vim.str_byteindex, vim.str_utfindex: 1. They throw given out-of-range indexes. An invalid (often user/lsp-provided) index doesn't feel exceptional and should be handled by the caller. `:help dev-error-patterns` suggests that `retval, errmsg` is the preferred way to handle this kind of failure. 2. They cannot accept an encoding. So LSP needs wrapper functions. #25272 3. The current signatures are not extensible. * Calling: The function currently uses a fairly opaque boolean value to indicate to identify the encoding. * Returns: The fact it can throw requires wrapping in pcall. 4. The current name doesn't follow suggestions in `:h dev-naming` and I think `get` would be suitable. SOLUTION: - Because these are performance-sensitive, don't introduce `opts`. - Introduce an "overload" that accepts `encoding:string` and `strict_indexing:bool` params. ```lua local col = vim.str_utfindex(line, encoding, [index, [no_out_of_range]]) ``` Support the old versions by dispatching on the type of argument 2, and deprecate that form. ```lua vim.str_utfindex(line) -- (utf-32 length, utf-16 length), deprecated vim.str_utfindex(line, index) -- (utf-32 index, utf-16 index), deprecated vim.str_utfindex(line, 'utf-16') -- utf-16 length vim.str_utfindex(line, 'utf-16', index) -- utf-16 index vim.str_utfindex(line, 'utf-16', math.huge) -- error: index out of range vim.str_utfindex(line, 'utf-16', math.huge, false) -- utf-16 length ```
| * docs: miscdundargoc2024-10-23
| | | | | | | | | | | | | | Co-authored-by: David Pedersen <limero@me.com> Co-authored-by: Gregory Anders <greg@gpanders.com> Co-authored-by: Leo Schlosser <Leo.Schlosser@Student.HTW-Berlin.de> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * fix(defaults): error messages UX for unimpaired mappings #30884Maria José Solano2024-10-23
| |
| * vim-patch:9.1.0809: filetype: petalinux config files not recognizedChristian Clason2024-10-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: petalinux config files not recognized Solution: detect 'project-spec/*.conf' files as bitbake filetype (Wu, Zhenyu) References: https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/embedded-software/petalinux-sdk.html closes: vim/vim#15926 https://github.com/vim/vim/commit/626b6ab48682b211c22ede5a6e63513c85f93e58 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
| * Merge pull request #30907 from zeertzjq/vim-9.1.0805zeertzjq2024-10-23
| |\ | | | | | | vim-patch:9.1.{0799,0805},19be0eb
| | * vim-patch:9.1.0805: tests: minor issues in gen_opt_test.vimzeertzjq2024-10-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: tests: minor issues in gen_opt_test.vim Solution: fix restore value for 'undolevels', fix comment, fix wrong cpo value, add equality test for global-local options on switchback (Milly). closes: vim/vim#15913 https://github.com/vim/vim/commit/231480f9753fa3fb28e17b670550ce43172c0eba Cherry-pick gen_opt_test.vim change from patch 9.1.0807. Co-authored-by: Milly <milly.ca@gmail.com>
| | * vim-patch:19be0eb: runtime(doc): :ownsyntax also resets 'spelloptions'zeertzjq2024-10-23
| | | | | | | | | | | | | | | | | | closes: vim/vim#15919 https://github.com/vim/vim/commit/19be0eb7f0c5877fef927a22457fdd7b3ec0ea9b
| | * vim-patch:9.1.0799: tests: gettwinvar()/gettabwinvar() tests are not ↵zeertzjq2024-10-23
| |/ | | | | | | | | | | | | | | | | | | | | | | | | comprehensive Problem: tests: gettwinvar()/gettabwinvar() tests are not comprehensive Solution: Add more tests (Milly) closes: vim/vim#15920 https://github.com/vim/vim/commit/ceec8640df0f75c6e7759fbb3d7a1064313321fb Co-authored-by: Milly <milly.ca@gmail.com>
| * fix(lsp): support multiple clients in typehierarchyLewis Russell2024-10-22
| |
| * test: port libvterm unit test to neovim test suitedundargoc2024-10-22
| | | | | | | | | | | | | | These were imported from the v0.3.3 git tag https://github.com/neovim/libvterm/tree/v0.3.3 and not the latest commit. This is for compatibility reasons as the libvterm code was imported from v0.3.3.
| * docs(options): remove description for hidden options #30903Famiu Haque2024-10-22
| | | | | | | | | | | | | | | | | | Problem: Hidden options are documented despite being no-ops. Solution: Remove docs for hidden options. Move tags for options that we plan to restore, to ":help nvim-missing". Move tags for permanently removed options, to ":help nvim-removed".
| * build(lpeg): search for lpeg.so on MacOSTom Scogland2024-10-22
| | | | | | | | | | | | | | | | | | | | Problem: Currently Neovim only searches for lpeg.dylib, liblpeg.dylib, etc. on MacOS, but a normal installation of lpeg will produce lpeg.so instead. There are explicit workarounds for this by modifying lpeg's package in Homebrew, and will shortly be another in spack. Solution: also search for lpeg.so even if that's not the platform default, because Lua and luarocks use it anyway.
| * build: remove enforcement of cmake build typedundargoc2024-10-22
| | | | | | | | | | | | | | | | | | | | | | Forcing the build type to be one of the default types was intended to prevent usage of custom build types which risks unpredictability. Unfortunately, many distributions patch this check out so they can use a custom type anyway, making the check moot in the first place. Instead, allow custom build types but don't try to accomodate them in the code: we're making the assumption that anyone who wants to use a custom build type will be able to set any additional necessary flags needed for their specific system.
| * fix(options): fix 'winhl' still accepting invalid value (#30896)zeertzjq2024-10-22
| |
| * refactor(eval): fix clear_evalarg() called with wrong argument (#30899)zeertzjq2024-10-22
| |