aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc
Commit message (Collapse)AuthorAge
* Merge branch 'master' of https://github.com/neovim/neovim into rahmtmpJosh Rahm2022-08-19
|\
| * docs(lua): update vim.{g,b,w}o documentation (#19844)Christian Clason2022-08-19
| | | | | | | | | | | | | | docs(lua): update vim.{go,bo,wo} documentation * document indexing by buffer/window handle * correct wrapper information (`nvim_buf_{g,s}et_value` now) * make clear what is considered "invalid key" (consistently)
| * Merge pull request #19360 from famiu/feat/multibuffer-inccommandbfredl2022-08-19
| |\ | | | | | | feat: multibuffer preview support for inccommand
| | * feat: multibuffer preview support for inccommandFamiu Haque2022-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | Allows preview callbacks to modify multiple buffers in order to show the preview. Previously, if multiple buffers were modified, only the current buffer would have its state restored. After this change, all buffers have their state restored after preview. Closes #19103.
| * | docs(lsp): remove lsp.buf_request from docs (#19738)Mathias Fußenegger2022-08-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This starts a soft phase-out of `buf_request`. `buf_request` is quite error prone: - Positional `params` depend on the client because of the `offset_encoding`. Currently if there is one client using UTF-8 offset encoding and another using UTF-16, the positions in the request are wrong for one of the clients. To solve this the params would need to be created per client instead of once for all of them. - `handler` is called *per* client but many users of it assume it is only called once. This can lead to a "select n + 1" kind of problem, where the handler makes another call to `buf_request`, multiplying the amount of requests. (There are in fact still some places where this happens in core) Or it leads to erratic behavior if called multiple times (E.g. the quicklist list flickering & being overwritten) (See hover or references implementation) `buf_request_all` returns an aggregate of the responses which is more sensible as it avoids this problem. For off-spec extensions it also has the problem that it sends requests to clients which cannot handle a given request. Given that `buf_request` is in use by a lot of plugins this starts a soft-phase out. Planned Steps: - Remove from docs - Provide an alternative, either `buf_request_all`, maybe with extensions (params being a function), or an entirely new method. - Mark as deprecated in 0.9 - Remove in 0.10 To note: - `buf_request_all` currently isn't ideal either because it suffers from the `params` problem as well. - This implies that the `vim.lsp.with` pattern will die, because the global handlers as they are don't fit a multi-client model, as most of the time an aggregate is needed.
| * | feat(ui): allow to set the highlight namespace per windowbfredl2022-08-17
| | | | | | | | | | | | | | | - reimplement 'winhl' in terms of highlight namespaces - check for EOF in screen tests (to indicate a likely crash)
| * | feat: allow :wincmd to accept a count (#19815)Famiu Haque2022-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let :wincmd command accept a count like what its documentation suggests. Previously it could only accept a range, which led to some ambiguity on which attribute should be used when executing :wincmd using nvim_cmd. Closes #19662. Also fix a typo in a related Vim test: vim-patch:9.0.0223: typo in diffmode test Problem: Typo in diffmode test. Solution: Fix the typo. (closes vim/vim#10932) https://github.com/vim/vim/commit/5fd6ab820b4a0aaa5c6020852f39d118375fab49
| * | docs(lsp): rename on-list-handler to lsp-on-list-handler (#19813)Jonas Strittmatter2022-08-17
| | | | | | | | | | | | This makes it easier to find documentation about the on-list-handler when starting the search term with "lsp".
| * | vim-patch:e1f3fd1d02e3 (#19796)Christian Clason2022-08-16
| | | | | | | | | | | | Update runtime files https://github.com/vim/vim/commit/e1f3fd1d02e3f5fe6d2b6d82687c6846b8e500f8
| * | vim-patch:8.2.3888: the argument list may contain duplicates (#19795)zeertzjq2022-08-16
| |/ | | | | | | | | | | | | Problem: The argument list may contain duplicates. Solution: Add the :argdedeupe command. (Nir Lichtman, closes vim/vim#6235) https://github.com/vim/vim/commit/73a024209cbfbd5b39a2e974084d807c6131e2ed Use latest index.txt :argdedupe doc from Vim.
| * docs: update Vim differences (#19780)Yegappan Lakshmanan2022-08-15
| | | | | | | | | | Patch 8.2.4594 (https://github.com/vim/vim/commit/36a5b6867bb6c0bd69c8da7d788000ab8a0b0ab0) added support for sourcing a buffer without a name. Patch 8.2.4325 (https://github.com/vim/vim/commit/3908ef5017a6b4425727013588f72cc7343199b9) added support for using a popup menu for wildmode completion.
| * vim-patch:8.2.1297: when a test fails it's often not easy to see wherezeertzjq2022-08-15
| | | | | | | | | | | | | | | | | | Problem: When a test fails it's often not easy to see what the call stack is. Solution: Add more entries from the call stack in the exception message. https://github.com/vim/vim/commit/a5d0423fa16f18b4576a2a07e50034e489587a7d Use docs from latest Vim.
| * vim-patch:8.2.4249: the timeout limit for spell suggestions is always 5000 ↵zeertzjq2022-08-14
| | | | | | | | | | | | | | | | (#19769) Problem: The timeout limit for spell suggestions is always 5000 milli seconds. Solution: Add the "timeout" entry to 'spellsuggest'. https://github.com/vim/vim/commit/585ee07cfef307b2fc828537e0d31fdc22d7e79f
| * docs(lua): clarify vim.keymap.set() opts (#19761)Antoine Cotten2022-08-14
| |
| * fix(charclass): make behavior with empty str match latest Vim (#19749)zeertzjq2022-08-13
| | | | | | | | Later Vim patches changed to return 0 for empty string and null string. Also update setcellwidth() docs to match latest Vim.
| * vim-patch:8.2.{1536,1540}: charclass() (#19748)zeertzjq2022-08-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vim-patch:8.2.1536: cannot get the class of a character; emoji widths are wrong Problem: Cannot get the class of a character; emoji widths are wrong in some environments. Solution: Add charclass(). Update some emoji widths. Add script to check emoji widths. https://github.com/vim/vim/commit/4e4473c927167fd24e5c8df90e0e8035080cf2da Use latest charclass() docs from Vim. Rewrite DoIt() in emoji_list.vim in Lua. Omit emoji table updates: - emoji_width update looks wrong as these added ranges are only double-width when followed by 0xFE0F. - Other updates are too old. vim-patch:8.2.1540: the user cannot try out emoji character widths Problem: The user cannot try out emoji character widths. Solution: Move the emoji script to the runtime/tools directory. https://github.com/vim/vim/commit/98945560c1ae6e2ddee820a7de718a36e3f4b6e5
| * docs: clarify that cursorline will be disabled before command preview (#19710)Jonas Strittmatter2022-08-12
| |
| * fix(signs): priority of extmark signs (#19718)Lewis Russell2022-08-11
| |
| * fix(lsp): fix some type annotations in lsp.rpc (#19714)Mathias Fußenegger2022-08-11
| |
| * Merge pull request #19685 from ii14/gen_vimdoc_indentationChristian Clason2022-08-11
| |\ | | | | | | docs: change gen_vimdoc indentation level
| | * docs: regenerateii142022-08-11
| | |
| * | docs: fix some mistakes and missing docs (#19699)zeertzjq2022-08-10
| |/
| * docs(lua): add luv (`vim.loop`) reference manual (#19679)Christian Clason2022-08-09
| | | | | | | | Upstreamed from https://github.com/nanotee/luv-vimdocs with kind permission from @nanotee.
| * vim-patch:partial: 48c3f4e0bff7 (#19684)Christian Clason2022-08-09
| | | | | | | | | | | | | | | | vim-patch:partial:48c3f4e0bff7 Update runtime files https://github.com/vim/vim/commit/48c3f4e0bff7efd289a7001b68c777b6f89a7057 partially skip `options.txt` (needs 9.0.0138)
| * docs(lua): add Lua 5.1 reference manual (#19663)dundargoc2022-08-08
| | | | | | | | | | | | | | | | based on http://www.vim.org/scripts/script.php?script_id=1291 reformatted to match Nvim documentation style; removed irrelevant sections Co-authored-by: dundargoc <gocundar@gmail.com> Co-authored-by: Christian Clason <c.clason@uni-graz.at> Co-authored-by: Lewis Russell <lewis6991@gmail.com>
| * feat(lsp): set formatexpr by default (#19677)Mathias Fußenegger2022-08-08
| | | | | | Follow up to https://github.com/neovim/neovim/pull/19003
| * vim-patch:8.2.3545: setcellwidths() may make 'listchars' or 'fillchars' invalidzeertzjq2022-08-08
| | | | | | | | | | | | | | | | | | Problem: setcellwidths() may make 'listchars' or 'fillchars' invalid. Solution: Check the value and give an error. (closes vim/vim#9024) https://github.com/vim/vim/commit/94358a1e6e640ca5ebeb295efdddd4e92b700673 Cherry-pick f_setcellwidths() change from patch 9.0.0036. Cherry-pick 'ambiwidth' docs update from runtime update 079ba76ae7a7.
| * vim-patch:8.2.1535: it is not possible to specify cell widths of characterszeertzjq2022-08-08
| | | | | | | | | | | | | | | | Problem: It is not possible to specify cell widths of characters. Solution: Add setcellwidths(). https://github.com/vim/vim/commit/08aac3c6192f0103cb87e280270a32b50e653be1 Co-Authored-By: delphinus <me@delphinus.dev>
| * feat(lsp): disable exit_timeout by default (#19672)Mathias Fußenegger2022-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The lsp client used to wait up to 500ms for a language server to shutdown before sending a TERM signal. The intention behind the 500ms grace period was to ensure the language server exits to prevent stale processes, but it has the side-effect that it can interrupt language-servers which are too slow to shutdown within 500ms. Language servers tend to write out index files or project files on shutdown, and being interrupted during this process can cause corruption of those files. This changes the default to not wait at all, at the risk of leaving stale processes around if the language server isn't well behaved. An alternative would be to wait indefinitely, but that can cause neovim to take several seconds to exit.
* | Merge branch 'master' of https://github.com/neovim/neovim into rahmJosh Rahm2022-08-07
|\|
| * docs: improve example in incremental preview section (#19613)Jonas Strittmatter2022-08-05
| | | | | | | | | | | | - Separate preview and callback functions to make the example easier to understand - Use false instead of 0 for boolean arguments in API function calls - Remove explicit nil checks for consistency - Format with stylua
| * vim-patch:8.2.3459: Vim9: need more tests for empty string argumentszeertzjq2022-08-05
| | | | | | | | | | | | | | Problem: Vim9: need more tests for empty string arguments. Solution: Add more tests. Also use empty argument with menu_info() to get the top-level menu names. (Yegappan Lakshmanan, closes vim/vim#8925) https://github.com/vim/vim/commit/51491adfa86fd66a857cd7ec50d0b57dbdf3da59
| * vim-patch:8.2.0385: menu functionality insufficiently testedzeertzjq2022-08-05
| | | | | | | | | | | | | | | | | | | | | | Problem: Menu functionality insufficiently tested. Solution: Add tests. Add menu_info(). (Yegappan Lakshmanan, closes vim/vim#5760) https://github.com/vim/vim/commit/0eabd4dc8ff50658f0ea0e92c7918a42242f6b80 Omit feedkeys() change: even if "L" flag is implemented it will likely use input_enqueue(), which already checks for interrupts. Omit Test_mouse_popup_menu(): already tested in Lua.
| * vim-patch:partial:8.2.0897: list of functions in patched version is outdated ↵zeertzjq2022-08-04
| | | | | | | | | | | | | | (#19637) Problem: List of functions in patched version is outdated. Solution: Update the function lists only. https://github.com/vim/vim/commit/ebacddbc16b2d76bf5dad636d7ee5c529f0e8753
* | Make userreg system more accurate.Josh Rahm2022-08-07
| | | | | | | | | | | | | | | | Before the userreg system would use just a string, which removes some important information about the yanked text. I.e. was is a "block" yank, etc. So now, the content argument, instead of just a string, is now a dictionary that roughly maps to the yankreg_T data type, allowing userregs to be used in block and line mode.
* | Merge remote-tracking branch 'upstream/master' into rahmJosh Rahm2022-08-03
|\|
| * docs: fix typos (#19588)dundargoc2022-08-03
| | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: notomo <notomo.motono@gmail.com>
| * feat(terminal): implement <c-\><c-o> for terminal modebfredl2022-08-02
| | | | | | | | this works similar to <c-o> or <c-\><c-o> in insert mode
| * test: improve mapping tests and docs (#19619)zeertzjq2022-08-02
| |
| * vim-patch:8.2.0815: maparg() does not provide enough information for mapset()zeertzjq2022-08-01
| | | | | | | | | | | | | | | | | | | | | | | | Problem: maparg() does not provide enough information for mapset(). Solution: Add "lhsraw" and "lhsrawalt" items. Drop "simplified" https://github.com/vim/vim/commit/9c65253fe702ea010afec11aa971acd542c35de2 vim-patch:9.0.0127: unused variable Problem: Unused variable. Solution: Remove the variable. (closes vim/vim#10829) https://github.com/vim/vim/commit/e95f22f63a1871b91e5508088e5ae4905ce28cd7
| * vim-patch:8.2.0807: cannot easily restore a mappingzeertzjq2022-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot easily restore a mapping. Solution: Add mapset(). https://github.com/vim/vim/commit/4c9243f9fb708c9010867d3cc8e928f36b58509a Use MapArgument to reduce number of arguments of map_add(). N/A patches for version.c: vim-patch:8.2.0809: build failure with small features Problem: Build failure with small features. (Tony Mechelynck) Solution: Move "expr" inside #ifdef. https://github.com/vim/vim/commit/5a80f8ad5dc0b2cc63400255dcf3c63f6c1a2ef9
| * feat(api): add replace_keycodes to nvim_set_keymap (#19598)ii142022-08-01
| |
| * Use Strings instead of Tables in vim.filetype.matchregex Doc (#19604)LaurenceWarne2022-08-01
| | | | | | docs: use strings instead of tables in vim.filetype.matchregex doc
| * fix(session): respect sessionoptions=terminal #19497Gustavo Sampaio2022-08-01
| | | | | | | | | | fixes #13078 Co-authored-by: Yuta Katayama <8683947+yutkat@users.noreply.github.com>
| * vim-patch:9.0.0114: the command line takes up space even when not usedShougo Matsushita2022-07-31
| | | | | | | | | | | | | | | | | | | | | | Problem: The command line takes up space even when not used. Solution: Allow for 'cmdheight' to be set to zero. (Shougo Matsushita, closes vim/vim#10675, closes vim/vim#940) https://github.com/vim/vim/commit/f39cfb72629f3e7fefaf578a3faa2619cd0654f8 Omit win_redr_ruler() change: winbar may still need redraw. Omit win_update() changes: Nvim doesn't use `Rows` there. Omit redraw_asap(): removed.
| * docs: fix typos (#19024)dundargoc2022-07-31
| | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: Valery Viktorovsky <viktorovsky@gmail.com>
| * vim-patch:9.0.0111: "nocombine" is missing from synIDattr()Christian Clason2022-07-31
| | | | | | | | | | | | Problem: "nocombine" is missing from synIDattr(). Solution: Add "nocombine". (Munif Tanjim, closes vim/vim#10816) https://github.com/vim/vim/commit/de78632c41d870d5254e9ccd285f53674b955f4e
| * vim-patch:2ecbe53f452e (#19577)Christian Clason2022-07-30
| | | | | | | | Update runtime files https://github.com/vim/vim/commit/2ecbe53f452e92e941aff623f6a0b72f80e43d07
| * docs(lsp): use direct link to formattingOptions in format docs (#19558)Mathias Fußenegger2022-07-28
| | | | | | | | Also changes `@see` to `See` to avoid the break to a dedicated "See also" block in the generated vimdoc
| * feat(lsp): add range option to code_action; deprecate range_code_action (#19551)Mathias Fußenegger2022-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `code_action` gained extra functions (`filter` and `apply`) which `range_code_action` didn't have. To close this gap, this adds a `range` option to `code_action` and deprecates `range_code_action`. The option defaults to the current selection if in visual mode. This allows users to setup a mapping like `vim.keymap.set({'v', 'n'}, '<a-CR>', vim.lsp.buf.code_action)` `range_code_action` used to use the `<` and `>` markers to get the _last_ selection which required using a `<Esc><Cmd>lua vim.lsp.buf.range_code_action()<CR>` (note the `<ESC>`) mapping.