aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* fix(extmarks): empty inline virt_text interfering with Visual highlightzeertzjq2023-06-22
|
* feat(man): respect 'wrapmargin' when wrapping man pages (#24091)Gregory Anders2023-06-21
|
* Merge #24086 LSP ctx.version, report full Nvim versionJustin M. Keyes2023-06-21
|\
| * docs(lsp): mention ctx.versionJustin M. Keyes2023-06-21
| | | | | | | | | | Since 643546b82b4bc0c29ca869f81af868a019723d83 the request handler context (`ctx`) includes a `version` field.
| * refactor(lsp): report full Nvim version string in clientInfoJustin M. Keyes2023-06-21
| |
* | fix(folds): don't show search or match highlighting on fold (#24084)zeertzjq2023-06-21
|/
* fix(vim.json)!: remove global options, "null", "array_mt" #24070Justin M. Keyes2023-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: - `vim.json` exposes various global options which: - affect all Nvim Lua plugins (especially the LSP client) - are undocumented and untested - can cause confusing problems such as: https://github.com/codota/tabnine-nvim/commit/cc76ae3abe2f129d44b5a8edee2529e0ee0dcf69 - `vim.json` exposes redundant mechanisms: - `vim.json.null` is redundant with `vim.NIL`. - `array_mt` is redundant because Nvim uses a metatable (`vim.empty_dict()`) for empty dict instead, which `vim.json` is configured to use by default (see `as_empty_dict`). Example: ``` :lua vim.print(vim.json.decode('{"bar":[],"foo":{}}')) --> { bar = {}, foo = vim.empty_dict() } ``` Thus we don't need to also decorate empty arrays with `array_mt`. Solution: Remove the functions from the public vim.json interface. Comment-out the implementation code to minimize drift from upstream. TODO: - Expose the options as arguments to `vim.json.new()`
* fix(lsp): add spacing for inlay hints separately #24079Akin2023-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: Spacing around inlay hints has the same highlight as the hint itself. The LSP spec for inlay hints specifically mentions the padding should not be coloured: /** Render padding before the hint. Note: Padding should use the editor's background color, not the background color of the hint itself. That means padding can be used to visually align/separate an inlay hint. */ paddingLeft?: boolean; /** Render padding after the hint. Note: Padding should use the editor's background color, not the background color of the hint itself. That means padding can be used to visually align/separate an inlay hint. */ paddingRight?: boolean; Solution: Add the space as separate parts of the virtual text, don't add the space to the text itself.
* fix(lsp): define LspInlayHint highlight group #24073Chinmay Dalal2023-06-21
| | | | | fixes #24068 Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
* fix(lsp): always return boolean in lsp.buf_client_attach (#24077)Sooryakiran Ponnath2023-06-20
| | | Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net>
* Merge pull request #24069 from famiu/refactor/options/varpbfredl2023-06-20
|\ | | | | refactor(option): use `void *` for pointer to option value
| * refactor(option): use `void *` for pointer to option valueFamiu Haque2023-06-20
| | | | | | | | | | | | Option related code uses `char *` for pointer to option value, which is not the best way of representing a type-agnostic pointer. Solution: Make pointers to option value use `void *` instead.
* | fix(lsp): check if inlay hints are enabled for a buffer before disabling ↵Chinmay Dalal2023-06-20
| | | | | | | | | | | | (#24074) disabling before enabling throws an error otherwise, because bufstate[bufnr] doesn't exist
* | refactor(lsp): extract common execute command functionality (#24065)Mathias Fußenegger2023-06-20
| |
* | docs(lsp): LspInlayHint highlight group #24071Chinmay Dalal2023-06-20
| |
* | fix(lsp): duplicate on_detach, on_reload callbacks #24067Chinmay Dalal2023-06-20
| | | | | | | | M.enable already clears bufstate[bufnr] and the namespace, the duplicate callbacks cause an error (indexing bufstate[bufnr] fails)
* | feat(lsp): inlay hints #23984Chinmay Dalal2023-06-19
| | | | | | | | | | | | | | | | | | | | | | Add automatic refresh and a public interface on top of #23736 * add on_reload, on_detach handlers in `enable()` buf_attach, and LspDetach autocommand in case of manual detach * unify `__buffers` and `hint_cache_by_buf` * use callback bufnr in `on_lines` callback, bufstate: remove __index override * move user-facing functions into vim.lsp.buf, unify enable/disable/toggle Closes #18086
* | docs #24061Justin M. Keyes2023-06-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - nvim requires rpc responses in reverse order. https://github.com/neovim/neovim/issues/19932 - NVIM_APPNAME: UIs normally should NOT set this. ref #23520 fix #24050 fix #23660 fix #23353 fix #23337 fix #22213 fix #19161 fix #18088 fix #20693
* | Merge pull request #24063 from bfredl/ceci-nest-pas-rtpbfredl2023-06-19
|\ \ | | | | | | fix(docs): the runtimepath is not the runtime path
| * | fix(docs): the runtimepath is not the runtime pathbfredl2023-06-19
|/ /
* | docs: deprecation policy #23138Gregory Anders2023-06-19
| |
* | docs #22363Justin M. Keyes2023-06-19
| | | | | | | | | | | | | | | | | | Co-authored by: zeertzjq <zeertzjq@outlook.com> Co-authored by: Steven Todd McIntyre II <114119064+stmii@users.noreply.github.com> Co-authored by: nobe4 <nobe4@users.noreply.github.com> - docs: mention --luadev-mod to run with lua runtime files When changing a lua file in the ./runtime folder, a new contributor might expect changes to be applied to the built Neovim binary.
* | fix(treesitter): use vim.highlight.priorities instead of hardcoded 100 (#24052)Santos Gallegos2023-06-18
| | | | | | | | | | Problem: Treesitter highlighting base priority cannot be customized. Solution: Use `vim.highlight.priorities.treesitter` instead of hard-coded value.
* | fix(fs): make `normalize()` work with '/' path (#24047)Evgeni Chasnovski2023-06-18
| | | | | | | | | | | | | | Problem: Current implementation of "remove trailing /" doesn't account for the case of literal '/' as path. Solution: Remove trailing / only if it preceded by something else. Co-authored by: notomo <notomo.motono@gmail.com>
* | vim-patch:9.0.1638: crypt tests hang and cause memory errors (#24053)zeertzjq2023-06-18
|/ | | | | | | | | | | | | | | | | | | | | | | | Problem: crypt tests hang and cause memory errors Solution: Move variable to start of function. https://github.com/vim/vim/commit/438d0c5e58aa475179ade9a1b99013733c5b8f06 N/A patches for version.c: vim-patch:9.0.1639: build failure without the crypt feature Problem: Build failure without the crypt feature. Solution: Adjust #ifdefs https://github.com/vim/vim/commit/bc385a150f9d812bb3e54ff0d5db75d3c6c3bb43 vim-patch:9.0.1640: compiler warning for unused variables without crypt feature Problem: Compiler warning for unused variables without the crypt feature. Solution: Adjust #ifdefs https://github.com/vim/vim/commit/7f29122c8ce2ca224d21abbaeb35e38bc354d95d Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(lsp): allow Lua pattern chars in code action filter (#24041)Jonas Strittmatter2023-06-17
| | | | | | | Previously, filtering code actions with the "only" option failed if the code action kind contained special Lua pattern chars such as "-" (e.g. the ocaml language server supports a "type-annotate" code action). Solution: use string comparison instead of string.find
* vim-patch:9.0.1637: compiler warning for uninitialized variable (#24042)zeertzjq2023-06-17
| | | | | | | | | | | | Problem: Compiler warning for uninitialized variable. Solution: Move the variable to an inner block and initialize it. (Christian Brabandt, closes vim/vim#12549) https://github.com/vim/vim/commit/54f50cbf6a470316a262e4389d62424e6f06b81c The "eof" variable is not present in Nvim because it is only used by FEAT_CRYPT. Co-authored-by: Christian Brabandt <cb@256bit.org>
* Merge pull request #24037 from zeertzjq/vim-9.0.1634zeertzjq2023-06-16
|\ | | | | vim-patch:9.0.{1634,1635}: message is cleared when removing mode message
| * vim-patch:9.0.1635: error message is cleared when removing mode messagezeertzjq2023-06-16
| | | | | | | | | | | | | | | | | | Problem: Error message is cleared when removing mode message. Solution: Also reset flags when the message is further down. https://github.com/vim/vim/commit/da51ad51bf4fbd66619786d0e6a83fb3ca09930b Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * vim-patch:9.0.1634: message is cleared when removing mode messagezeertzjq2023-06-16
|/ | | | | | | | | Problem: Message is cleared when removing mode message (Gary Johnson). Solution: Do not clear the command line after displaying a message. https://github.com/vim/vim/commit/800cdbb7caeb5dd4379c6cb071bb12391f20bcf3 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1636: expanding a pattern interferes with cmdline completion ↵zeertzjq2023-06-16
| | | | | | | | (#24034) Problem: Expanding a pattern interferes with command line completion. Solution: Set the file index only when appropriate. (closes vim/vim#12519) https://github.com/vim/vim/commit/094dd152fe1d47878ec6c0b3f54b03ffde7f4a2d
* fix(:let): fix error when applying operator to boolean option (#24030)zeertzjq2023-06-15
|
* test(decorations_spec): add test for extmark case of #21486 (#24028)zeertzjq2023-06-15
|
* fix(extmarks): don't position overlay virt_text halfway a char (#24027)zeertzjq2023-06-15
|
* vim-patch:9.0.1631: passing wrong variable type to option gives multiple ↵zeertzjq2023-06-15
| | | | | | | | errors (#24026) Problem: Passing a wrong variable type to an option gives multiple errors. Solution: Bail out early on failure. (closes vim/vim#12504) https://github.com/vim/vim/commit/4c7cb372c17a84c8a35254d93eb37cb854cd39da
* docs(ex_cmds): migration from "behave xterm" #24024Erich Gubler2023-06-14
|
* vim-patch:9.0.1629: having utf16idx() rounding up is inconvenient (#24019)zeertzjq2023-06-14
| | | | | | | | Problem: Having utf16idx() rounding up is inconvenient. Solution: Make utf16idx() round down. (Yegappan Lakshmanan, closes vim/vim#12523) https://github.com/vim/vim/commit/95707037afa1aeae4f3494dc623a721ceed7fc4e Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* perf(lsp): reduce polling handles for workspace/didChangeWatchedFiles (#23500)Jon Huhn2023-06-14
| | | Co-authored-by: Lewis Russell <lewis6991@gmail.com>
* fix(tui): v:argv does not report the original argv[0] #24015t0muxx2023-06-14
| | | | | | | | | | Problem: Since TUI was moved to another process 24488169564c39a506c235bf6a33b8e23a8cb528 v:argv and v:progname don't report the original argv[0]. ["/usr/bin/nvim", "--embed", ...] Solution: Use argv[0] instead of VV_PROGPATH in ui_client_start_server(). Fix #23953
* fix(codelens): add buffer and line checks before displaying codelens (#23887)Rohit Sukumaran2023-06-13
| | | Co-authored-by: Rohit Sukumaran <rohit.sukumaran@kredx.com>
* fix(lsp): handle stale bufnr on LspRequest autocmd trigger (#24013)Mathias Fußenegger2023-06-13
| | | | | | Fixes a `Invalid buffer id: 123` race when the buffer gets deleted before the callback triggered. Alternative to https://github.com/neovim/neovim/pull/23981
* fix(api): redundant error when using `nvim_cmd` (#24010)Famiu Haque2023-06-13
| | | | | `nvim_cmd` shows multiple errors when attempting to edit another buffer through a command when `curbuf->b_ro_locked` is set. This PR fixes that by removing a redundant error in `execute_cmd`.
* fix(extmarks): handle inline virt_text with empty chunk (#24005)zeertzjq2023-06-13
|
* vim-patch:8.2.4600: Vim9: not enough test coverage for executing :def ↵zeertzjq2023-06-12
| | | | | | | | | | | | function (#24001) Problem: Vim9: not enough test coverage for executing :def function. Solution: Add a few more tests. Fix inconsistencies. https://github.com/vim/vim/commit/6b8c7ba062ca4b50e8f983e0485be7afa4eef691 Cherry-pick a blank line in test_listdict.vim from patch 8.2.3842. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* Merge pull request #24000 from zeertzjq/vim-8.2.3332zeertzjq2023-06-12
|\ | | | | vim-patch:8.2.{3332,3338}
| * vim-patch:8.2.3338: Vim9: no type check when assigning a list rangezeertzjq2023-06-12
| | | | | | | | | | | | | | | | | | Problem: Vim9: no type check when assigning a list range. (Naohiro Ono) Solution: Check the member type. (closes vim/vim#8750) https://github.com/vim/vim/commit/89071cb6a116a74f78f77a1853e6fada44872a15 Co-authored-by: Bram Moolenaar <Bram@vim.org>
| * vim-patch:8.2.3332: Vim9: cannot assign to range in listzeertzjq2023-06-12
|/ | | | | | | | | Problem: Vim9: cannot assign to range in list. Solution: Implement overwriting a list range. https://github.com/vim/vim/commit/4f0884d6e24d1d45ec83fd86b372b403177d3298 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* docs: various clarifications (#23999)zeertzjq2023-06-12
| | | | | Close #18907 Close #20314 Close #23749
* Merge pull request #23998 from zeertzjq/vim-8.2.3852zeertzjq2023-06-12
|\ | | | | vim-patch:8.2.{3852,3853}
| * vim-patch:8.2.3853: Vim9: not enough testszeertzjq2023-06-12
| | | | | | | | | | | | | | | | | | | | | | Problem: Vim9: not enough tests. Solution: Run more existing tests for Vim9 script. https://github.com/vim/vim/commit/700e6b166298ecfb53fe4bf593085b29ca78d556 Cherry-pick test_listdict.vim change from patch 8.2.3854. Co-authored-by: Bram Moolenaar <Bram@vim.org>