aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc
Commit message (Collapse)AuthorAge
...
| * | feat(lsp): deprecate vim.lsp.start_client #31341Maria José Solano2024-12-04
| | | | | | | | | | | | | | | | | | | | | | | | Problem: LSP module has multiple "start" interfaces. Solution: - Enhance vim.lsp.start - Deprecate vim.lsp.start_client
| * | docs: misc, help tags for neovim.io searches #31428Justin M. Keyes2024-12-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Various keywords are commonly searched-for on https://neovim.io, but don't have help tags. Solution: Add help tags. fix #31327
| * | docs: provide example for configuring LSP foldexpr (#31411)Gregory Anders2024-12-02
| | | | | | | | | | | | | | | Using the "supports_method" function with a client capability inside of an LspAttach autocommand is the preferred method to do this, so we should be showing users how to do it.
| * | vim-patch:768728b: runtime(doc): Update documentation for "noselect" in ↵dundargoc2024-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'completeopt' In particular, make the distinction and interaction between "noinsert" and "noselect" clearer as it was very confusing before. closes: vim/vim#16148 https://github.com/vim/vim/commit/768728b48751c5e937409d12d98bfa1fb4c37266 Co-authored-by: dundargoc <gocdundar@gmail.com>
| * | vim-patch:9.1.0899: default for 'backspace' can be set in C code (#31416)zeertzjq2024-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: default for 'backspace' can be set in C code Solution: promote the default for 'backspace' from defaults.vim to the C code (Luca Saccarola) closes: vim/vim#16143 https://github.com/vim/vim/commit/959ef61430bdd8fb982b38bd3347d90251255cfc N/A patches: vim-patch:9.1.0895: default history value is too small vim-patch:075aeea: runtime(doc): document changed default value for 'history' Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
| * | docs: example keybind for :Inspect #31391C.D. MacEachern2024-12-01
| | |
| * | vim-patch:9.1.0898: runtime(compiler): pytest compiler not includedChristian Clason2024-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: runtime(compiler): pytest compiler not included Solution: include pytest compiler, update the compiler completion test (Konfekt) closes: vim/vim#16130 https://github.com/vim/vim/commit/3c2596a9e967910143d41fbb9615614ab36d43a7 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
| * | docs(diagnostics): location list / quickfix example #31371Yochem van Rosmalen2024-11-29
| | |
| * | feat(lsp): support `textDocument/foldingRange` (#31311)Yi Ming2024-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refactor(shared): extract `vim._list_insert` and `vim._list_remove` * feat(lsp): add `vim.lsp.foldexpr()` * docs(lsp): add a todo for state management * feat(lsp): add `vim.lsp.folding_range.foldclose()` * feat(lsp): schedule `foldclose()` if the buffer is not up-to-date * feat(lsp): add `vim.lsp.foldtext()` * feat(lsp): support multiple folding range providers * refactor(lsp): expose all folding related functions under `vim.lsp.*` * perf(lsp): add `lsp.MultiHandler` for do `foldupdate()` only once
| * | vim-patch:65311c6: runtime(compiler): include spotbugs Java linterzeertzjq2024-11-29
| |/ | | | | | | | | | | | | | | | | closes: vim/vim#16001 https://github.com/vim/vim/commit/65311c6f472de67b368d83441ca5e93da86161f4 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com> Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
| * docs(lsp): update example, optional parameters #31299Yi Ming2024-11-28
| |
| * docs: more accurate typing for LSP references contextRiley Bruins2024-11-28
| | | | | | | | | | | | | | **Problem:** The `context` parameter for `references()` is just typed as a table, which is unhelpful. **Solution:** Properly type it as an `lsp.ReferenceContext`!
| * vim-patch:9.1.0890: %! item not allowed for 'rulerformat' (#31369)zeertzjq2024-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: %! item not allowed for 'rulerformat' (yatinlala) Solution: also allow to use %! for rulerformat option (Yegappan Lakshmanan) fixes: vim/vim#16091 closes: vim/vim#16118 https://github.com/vim/vim/commit/ac023e8baae65584537aa3c11494dad6f71770af Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
| * docs: add tag `vim.fs.exists()` and document suggested replacementdundargoc2024-11-27
| |
| * feat(tui): update 'background' on theme change events (#31350)Gregory Anders2024-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | Enabling private DEC mode 2031 tells the terminal to notify Nvim whenever the OS theme changes (i.e. light mode to dark mode or vice versa) or the terminal emulator's palette changes. When we receive one of these notifications we query the terminal color's background color again to see if it has changed and update the value of 'background' if it has. We only do this though if the user has not explicitly set the value of 'bg' themselves. The help text is updated slightly to hint to users that they probably shouldn't set this value: on modern terminal emulators Nvim is able to completely determine this automatically.
| * fix(lua): remove vim.loader.disable() #31344Justin M. Keyes2024-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `vim.loader.disable` does not conform to `:help dev-name-common` and `:help dev-patterns`. Solution: - Add `enable` parameter to `vim.loader.enable` - Remove `vim.loader.disable` - Note the change in `:help news-breaking-dev` (HEAD changes). - This is not a breaking change (except to "HEAD") because `vim.loader` is marked "experimental". previous: 26765e8461c1ba1e9a351632212cf89900221781
| * vim-patch:9.1.0888: leftcol property not available in getwininfo() (#31349)zeertzjq2024-11-26
| | | | | | | | | | | | | | | | | | | | Problem: leftcol property not available in getwininfo() Solution: add leftcol property property (glepnir) closes: vim/vim#16119 https://github.com/vim/vim/commit/0a850673e3d4193d55f47bcbbc0b0da5f155307d Co-authored-by: glepnir <glephunter@gmail.com>
| * fix(lsp): retrigger diagnostics request on server cancellation (#31345)Gregory Anders2024-11-25
| | | | | | Co-authored-by: Jesse <github@jessebakker.com>
| * refactor(lsp): rename `offset_encoding` to `position_encoding` #31286Yi Ming2024-11-25
| | | | | | | | | | | | | | | | Problem: LSP spec uses the term "position encoding" where we say "offset encoding". Solution: - Rename it everywhere except `vim.lsp.Client.offset_encoding` (which would be breaking). - Mention "position encoding" in the documentation for `vim.lsp.Client.offset_encoding`.
| * vim-patch:9.1.0883: message history cleanup is missing some tests (#31331)zeertzjq2024-11-24
| | | | | | | | | | | | | | | | | | | | | | | | Problem: message history cleanup is missing some tests Solution: Add tests, refactor common code into did_set_msghistory() (Shougo Matsushita) closes: vim/vim#16078 https://github.com/vim/vim/commit/9f860a14c308f7a9a27a6850d36790615717a710 Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com> Co-authored-by: Milly <milly.ca@gmail.com>
| * vim-patch:partial:a01148d: runtime(doc): Expand docs on :! vs. :term (#31321)zeertzjq2024-11-24
| | | | | | | | | | | | | | | | fixes: vim/vim#16071 closes: vim/vim#16089 https://github.com/vim/vim/commit/a01148d2cb2f8d2820a5b95474d11db0d1802360 Co-authored-by: matveyt <matthewtarasov@yandex.ru>
| * vim-patch:cacfccf: runtime(netrw): update netrw's decompress logicChristian Clason2024-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Detect a few more default archive types, correctly handle file extensions with digits in it. fixes: vim/vim#16099 closes: vim/vim#16104 https://github.com/vim/vim/commit/cacfccf803949e62a29c85d4525372a10ea7e070 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * Merge pull request #31193 from bfredl/winrtbfredl2024-11-21
| |\ | | | | | | refactor(windows)!: only support UCRT, even for mingw
| | * refactor(windows)!: only support UCRT, even for mingwbfredl2024-11-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The newer UCRT runtime has native support for UTF-8, including forcing it as the active codepage even before `main()` is called. This means the c runtime will properly convert windows WCHAR:s into UTF-8 bytes, as early as the argv/argc params to `main()` . Whereas MSVCRT does not support this reliably and required us to use `wmain()`. Only MSVC supports using manifest files directly as source files. The solution for other Windows toolchains is to use a .rc file.
| * | 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.
| * | 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.
| * | 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
| * | 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
| * | 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(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(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.
| * docs: standardize doc for ChanInfo/ChanOpen autocmds/v:event (#31099)errael2024-11-16
| |
| * 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: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>
| * 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>
| * Merge pull request #27874 from luukvbaal/funcerrbfredl2024-11-14
| |\ | | | | | | fix(messages)!: vim.ui_attach message callbacks are unsafe
| | * fix(messages)!: vim.ui_attach message callbacks are unsafeLuuk van Baal2024-11-14
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Lua callbacks for "msg_show" events with vim.ui_attach() are executed when it is not safe. Solution: Disallow non-fast API calls for "msg_show" event callbacks. Automatically detach callback after excessive errors. Make sure fast APIs do not modify Nvim state.
| * | feat(lsp): support utf-8 and utf-32 position encodingsLewis Russell2024-11-14
| |/ | | | | | | Resolves #30034
| * vim-patch:9b05326: runtime(doc): improve indentation in examples for ↵zeertzjq2024-11-14
| | | | | | | | | | | | | | | | | | | | netrw-handler related: vim/vim#16043 https://github.com/vim/vim/commit/9b05326afdb0359a2dd40470b2b47a6e422662e9 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * vim-patch:8b96858: runtime(doc): improve examples for netrw-handler functionszeertzjq2024-11-14
| | | | | | | | | | | | | | | | fixes: vim/vim#16043 https://github.com/vim/vim/commit/8b96858996c4bdc68c055d2ef4afa5f88eda455e Co-authored-by: Christian Brabandt <cb@256bit.org>