aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
...
* vim-patch:b2a4c110a5d1Christian Clason2023-11-05
| | | | | | | | | | | | | | | runtime(dist): Make dist/vim.vim work properly when lacking vim9script support (vim/vim#13487) `:return` cannot be used outside of `:function` (or `:def`) in older Vims lacking Vim9script support or in Neovim, even when evaluation is being skipped in the dead `:else` branch. Instead, use the pattern described in `:h vim9-mix`, which uses `:finish` to end script processing before it reaches the vim9script stuff. https://github.com/vim/vim/commit/b2a4c110a5d13bc794f4eddb2e88a4e8fe9dfbea Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
* vim-patch:4f174f0de90bChristian Clason2023-11-05
| | | | | | | | | | | | | runtime(dist): add legacy version for central vim library Also, enable the zip and gzip plugins by default, unless those variables were not explicitly set by the user. related: vim/vim#13413 https://github.com/vim/vim/commit/4f174f0de90b52937ddaf1e6db98e9731930ff7c Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:cd8a3eaf5348Christian Clason2023-11-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(dist): centralize safe executable check and add vim library (vim/vim#13413) Follow up to 816fbcc26 (patch 9.0.1833: [security] runtime file fixes, 2023-08-31) and f7ac0ef50 (runtime: don't execute external commands when loading ftplugins, 2023-09-06). This puts the logic for safe executable checks in a single place, by introducing a central vim library, so all filetypes benefit from consistency. Notable changes: - dist#vim because the (autoload) namespace for a new runtime support library. Supporting functions should get documentation. It might make life easier for NeoVim devs to make the documentation a new file rather than cram it into existing files, though we may want cross-references to it somewhere… - The gzip and zip plugins need to be opted into by enabling execution of those programs (or the global plugin_exec). This needs documentation or discussion. - This fixes a bug in the zig plugin: code setting s:tmp_cwd was removed in f7ac0ef50 (runtime: don't execute external commands when loading ftplugins, 2023-09-06), but the variable was still referenced. Since the new function takes care of that automatically, the variable is no longer needed. https://github.com/vim/vim/commit/cd8a3eaf5348feacfecab4b374b7ea4ce6a97422 Co-authored-by: D. Ben Knoble <ben.knoble+github@gmail.com>
* feat(extmarks): add "undo_restore" flag to opt out of undo-restoringbfredl2023-11-05
| | | | | | | | | | | | | | | It is a design goal of extmarks that they allow precise tracking of changes across undo/redo, including restore the exact positions after a do/undo or undo/redo cycle. However this behavior is not useful for all usecases. Many plugins won't keep marks around for long after text changes, but uses them more like a cache until some external source (like LSP semantic highlights) has fully updated to changed text and then will explicitly readjust/replace extmarks as needed. Add a "undo_restore" flag which is true by default (matches existing behavior) but can be set to false to opt-out of this behavior. Delete dead u_extmark_set() code.
* docs(treesitter): add disclaimer about needing to parse before `get_node()`L Lllvvuu2023-11-04
| | | | | | | | | | | Problem: --- Misuse of `get_node()` is common: https://github.com/search?q=get_node_at_cursor+language%3Alua&type=code Solution: --- Add a note clarifying proper usage.
* vim-patch:ce3b0136c6d9Christian Clason2023-11-04
| | | | | | | | | | | | | | | | | | runtime(sh): Update sh syntax and add shDerefOffset to shDerefVarArray for bash (vim/vim#13480) Add shDerefOffset to shDerefVarArray. Example code: ```bash declare -a a=({a..z}) echo "${a[@]:1:3}" ``` https://github.com/vim/vim/commit/ce3b0136c6d9d09af41969d3dc9634f115505a32 Co-authored-by: Lucien Grondin <grondilu@yahoo.fr>
* vim-patch:2f54c13292afChristian Clason2023-11-04
| | | | | | | | | | | | | | | | | runtime(script.vim): make strace ft check less strict (vim/vim#13482) Strace output, depending on parameters (-ttf this time), can dump both times and pid: 1038 07:14:20.959262 execve("./e.py", ["./e.py"], 0x7ffca1422840 /* 51 vars */) = 0 <0.000150> So loose the regexp matching this, so that the above is matched too. Fixes vim/vim#13481. https://github.com/vim/vim/commit/2f54c13292af053ec00c18e5fded87b1bc602822 Co-authored-by: Jiri Slaby <jirislaby@gmail.com> Co-authored-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
* fix(lsp): create per client params in lsp.buf.code_actionMathias Fussenegger2023-11-04
| | | | | | | | | `code_action` used the same parameters for all clients, which led to the following warning and incorrect start/end column locations if using clients with mixed encodings: warning: multiple different client offset_encodings detected for buffer, this is not supported yet
* vim-patch:1858e2b22ad1Christian Clason2023-11-03
| | | | | | | | runtime(sh) Update sh syntax and add shDblParen to shCaseList (vim/vim#13469) https://github.com/vim/vim/commit/1858e2b22ad168b1fd44a4efcd3a2b6cd9f6772d Co-authored-by: Lucien Grondin <grondilu@yahoo.fr>
* vim-patch:2b89afd5eb63Christian Clason2023-11-03
| | | | | | | | runtime(debversions): Add noble (24.04 LTS) as Ubuntu release name (vim/vim#13472) https://github.com/vim/vim/commit/2b89afd5eb63864154d973e7991a56a53b87a767 Co-authored-by: James McCoy <jamessan@jamessan.com>
* docs: small fixes (#25831)dundargoc2023-11-03
| | | Co-authored-by: Peter Aronoff <peter@aronoff.org>
* feat(server): allow embed with listen (#25709)George Harker2023-11-01
| | | | | | connection from any channel or stdio will unblock remote_ui_wait_for_attach. Wait on stdio only if only —embed specified, if both —embed and —listen then wait on any channel.
* feat(stdlib): add vim.base64 module (#25843)Gregory Anders2023-10-31
| | | Add base64 encode() and decode() functions to a vim.base64 module.
* fix(lsp): call `on_list()` even for single location (#25830)Evgeni Chasnovski2023-10-31
| | | | | | | | Problem: Currently there is no way of customizing behavior of `declaration`, `definition`, `typeDefinition`, and `implementation` methods in `vim.lsp.buf` when LSP server returns `Location`. Instead, cursor jumps to that location directly. Solution: Normalize LSP response to be `Location[]` for those four cases.
* Merge pull request #25674 from famiu/refactor/options/unify_string_optionsbfredl2023-10-30
|\ | | | | refactor(options): unify `set_option` and `set_string_option`
| * refactor(options)!: unify `set_option` and `set_string_option`Famiu Haque2023-10-30
| | | | | | | | | | | | | | | | While the interfaces for setting number and boolean options are now unified by #25394, there is still a separate `set_string_option` function that is used for setting a string option. This PR removes that function and merges it with set_option. BREAKING CHANGE: `v:option_old` is now the old global value for all global-local options, instead of just string global-local options. Local value for a global-local number/boolean option is now unset when the option is set (e.g. using `:set` or `nvim_set_option_value`) without a scope, which means they now behave the same way as string options. Ref: #25672
* | fix(lsp): do not cancel snippet when selecting placeholder (#25835)Maria José Solano2023-10-30
|/
* docs: small fixes (#25585)dundargoc2023-10-29
| | | | Co-authored-by: tmummert <doczook@gmx.de> Co-authored-by: parikshit adhikari <parikshitadhikari@gmail.com>
* vim-patch:a390e984db20Christian Clason2023-10-29
| | | | | | | | | | | | | | | | | | | | runtime(sh): add shDblParen to shLoopList for bash (vim/vim#13445) add shDblParen to shLoopList to correctly highlight arithmetic expressions for Bash and Ksh This should allow code such as: ```bash declare -i i j for i in foo bar do ((j = 1 << j)) done ``` https://github.com/vim/vim/commit/a390e984db20575dc726b4e0ebf95582265df8e7 Co-authored-by: Lucien Grondin <grondilu@yahoo.fr>
* vim-patch:9.0.2079: Not all Dart files detectedChristian Clason2023-10-29
| | | | | | | | | | | Problem: Not all Dart files detected Solution: Add shebang filetype detection for Dart closes: vim/vim#13449 https://github.com/vim/vim/commit/c1c177a47bfe1b9a524ede2743a689e461668d14 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* vim-patch:8ebdbc9e6d80 (#25816)zeertzjq2023-10-29
| | | | | | | | | | runtime(doc): all secure options should note this restriction in the documentation (vim/vim#13448) Problem: Not all secure options document their status Solution: Describe secure context :set restrictions in each help entry https://github.com/vim/vim/commit/8ebdbc9e6d80b707c2b2d923e702dc86bf902923 Co-authored-by: dkearns <dougkearns@gmail.com>
* vim-patch:650dcfc8d12eChristian Clason2023-10-28
| | | | | | | | runtime(netrw): don't echo empty lines (vim/vim#13431) https://github.com/vim/vim/commit/650dcfc8d12e68aa05a358301ec15f9e6dbd03ba Co-authored-by: nwounkn <nwounkn@gmail.com>
* fix(diagnostic): virtual_text prefix function should have index and total ↵Jongwook Choi2023-10-27
| | | | | | | | | | | | | (#25801) The prefix option of the diagnostic virtual text can be a function, but previously it was only a function of diagnostic. This function should also have additional parameters index and total, more consistently and similarily as in the prefix function for `vim.diagnostic.open_float()`. These additional parameters will be useful when there are too many number of diagnostics in a single line.
* vim-patch:7b7cda67a124Christian Clason2023-10-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(debian): update debian related runtime files (vim/vim#13423) * Update Debian runtime files Add mantic as a supported Ubuntu release and move buster/kinetic to unsupported. Add syntax highlighting for deb822sources filetype. Add debsources ftplugin to set relevant comment options. Move common version information to shared/debversions.vim Closes vim/vim#11934 * Add myself as codeowner for Debian-related runtime files --------- https://github.com/vim/vim/commit/7b7cda67a1246874520b280277d9b1447e1a7ef5 Co-authored-by: James McCoy <jamessan@jamessan.com> Co-authored-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Co-authored-by: James Addison <jay@jp-hosting.net> Co-authored-by: Viktor Szépe <viktor@szepe.net> Co-authored-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Co-authored-by: James Addison <jay@jp-hosting.net> Co-authored-by: Viktor Szépe <viktor@szepe.net>
* vim-patch:9.0.2071: objdump files not recognizedChristian Clason2023-10-27
| | | | | | | | | | | | | Problem: objdump files not recognized Solution: detect *.objdump files, add a filetype plugin Added the objdump file/text format closes: vim/vim#13425 https://github.com/vim/vim/commit/10407df7a95d0311c7d2eb920d3b72020db5b301 Co-authored-by: Colin Kennedy <colinvfx@gmail.com>
* fix(lsp): fix omnicomplete in middle of the line (#25787)Lajos Koszti2023-10-26
| | | | | | | | Fixes a regression from 5e5f5174e3faa862a9bc353aa7da41487911140b Until that commit we had a logic like this: `local prefix = startbyte and line:sub(startbyte + 1) or line_to_cursor:sub(word_boundary)` The commit changed the logic and no longer cut off the line at the cursor, resulting in a prefix that included trailing characters
* fix(lsp): cancel session when leaving snippet region (#25762)Maria José Solano2023-10-26
|
* vim-patch:9.0.2064: cannot use buffer-number for errorformat (#25782)zeertzjq2023-10-26
| | | | | | | | | | | Problem: cannot use buffer-number for errorformat Solution: add support for parsing a buffer number using '%b' in 'errorformat' closes: vim/vim#13419 https://github.com/vim/vim/commit/b731800522af00fd348814d33a065b92e698afc3 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:partial:5985879e3c36 (#25780)zeertzjq2023-10-26
| | | | | | | | | | | | | runtime(doc): Fix typos in several documents (vim/vim#13420) * Fix typos in several documents * Update runtime/doc/terminal.txt https://github.com/vim/vim/commit/5985879e3c36383155f84649fa42d06813a1893e Skip runtime/doc/indent.txt: not ported yet Co-authored-by: h_east <h.east.727@gmail.com> Co-authored-by: K.Takata <kentkt@csc.jp>
* vim-patch:9.0.2063: pacman hooks are detected as conf filetypeChristian Clason2023-10-24
| | | | | | | | | | | | | | | | | | | | Problem: pacman hooks are detected as conf filetype Solution: make it consistent to pacman.conf and detect those hooks as confini Because confini has much better syntax highlighting than conf. For reference, I identified pacman.conf and pacman hooks as dosini in https://github.com/vim/vim/pull/6335, then https://github.com/vim/vim/pull/10213 changed them to conf, then https://github.com/vim/vim/pull/10518 changed pacman.conf to confini but forgot to change hooks. closes: vim/vim#13399 https://github.com/vim/vim/commit/7d254dbc2db35badc65668db85f826f605486986 Co-authored-by: Guido Cella <guido@guidocella.xyz>
* vim-patch:9.0.2062: Janet files are not recognisedChristian Clason2023-10-24
| | | | | | | | | | | | | | | Problem: Janet files are not recognised Solution: Add filename and shebang detection (without adding an extra filetype plugin) Those are used by the Janet language: http://www.janet-lang.org closes: vim/vim#13400 https://github.com/vim/vim/commit/c038427d2a27445e612761f19c92b2b8b05afdea Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* vim-patch:9.0.2061: not able to detect xkb filetypesChristian Clason2023-10-24
| | | | | | | | | | | | | | Problem: not able to detect xkb filetypes Solution: Detect files below /u/s/X11/xkb as xkb files (without adding an extra filetype) Those files are used from the X11 xkb extension closes: vim/vim#13401 https://github.com/vim/vim/commit/ae9021a840db3253b0e0cb84186faae73368afd7 Co-authored-by: Guido Cella <guido@guidocella.xyz>
* vim-patch:9.0.2060: *.{gn,gni} files are not recognizedChristian Clason2023-10-24
| | | | | | | | | | | | | Problem: *.{gn,gni} files are not recognized Solution: Detect some as gn filetype (without adding an extra filetype) Those come from: https://gn.googlesource.com/gn/ closes: vim/vim#13405 https://github.com/vim/vim/commit/84394f2be4a750f1e26b478e36de041663f4b5a4 Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
* vim-patch:fea96c00e55aChristian Clason2023-10-23
| | | | | | | | | | | | | | | | runtime(vim): Update ftplugin - comment motions (vim/vim#13412) Fix the pattern used by comment-motion mappings to match the start of a block comment. Block-comment start lines were being ignored if the previous line contained a double-quote character anywhere in the line. Line comments should only be ignored if the previous line is a full-line comment and, therefore, part of the current block comment. https://github.com/vim/vim/commit/fea96c00e55a71e3007907ff4f7ad513bb9ff0eb Co-authored-by: dkearns <dougkearns@gmail.com>
* fix(lsp): do not add extra indentationMaria José Solano2023-10-23
|
* fix(lsp): track snippet deletionMaria José Solano2023-10-23
|
* fix(lsp): fix off-by-one error for omnifunc word boundaryMathias Fussenegger2023-10-23
| | | | | | | | Fixes https://github.com/neovim/neovim/issues/25177 I initially wanted to split this into a refactor commit to make it more testable, but it appears that already accidentally fixed the issue by normalizing lnum/col to 0-indexing
* feat(complete): support f flag for complete buffer partglepnir2023-10-21
|
* refactor(lsp): deprecate completion util methodsMathias Fussenegger2023-10-21
| | | | Relates to https://github.com/neovim/neovim/issues/25272
* refactor(lsp): move completion logic into _completion moduleMathias Fussenegger2023-10-21
| | | | | To reduce cross-chatter between modules and for https://github.com/neovim/neovim/issues/25272 Also preparing for https://github.com/neovim/neovim/issues/25714
* vim-patch:9.0.2059: outstanding exceptions may be skipped (#25736)zeertzjq2023-10-21
| | | | | | | | | | | Problem: outstanding exceptions may be skipped Solution: When restoring exception state, process remaining outstanding exceptions closes: vim/vim#13386 https://github.com/vim/vim/commit/0ab500dede4edd8d5aee7ddc63444537be527871 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:d3e277f279ed (#25734)zeertzjq2023-10-21
| | | | | | | | | | | | | | | | | | matchparen: do not use hard-coded match id (vim/vim#13393) * matchparen: do not use hard-coded match id Instead of using the hard-coded match id 3, which may also be used by other plugins, let the matchparen plugin use whatever ids are automatically returned when calling matchaddpos(). For backwards-compatibility, keep the `:3match` call, which will still use the hard-coded id 3 (as mentioned in :h :3match). closes: vim/vim#13381 https://github.com/vim/vim/commit/d3e277f279ed628809eb6857ea3ebcfca566ca2a Co-authored-by: Christian Brabandt <cb@256bit.org>
* feat(lsp): add snippet API (#25301)Maria José Solano2023-10-21
|
* fix(lsp): log unknown diagnostic tags instead of showing a warning (#25705)Jorge Mederos2023-10-21
| | | | | To be more in line with the specification: > To support the evolution of enumerations the using side of an enumeration shouldn’t fail on an enumeration value it doesn’t know. It should simply ignore it as a value it can use and try to do its best to preserve the value on round trips
* vim-patch:9.0.2056: no digraph for quadruple primeChristian Clason2023-10-20
| | | | | | | | | | | Problem: no digraph for quadruple prime Solution: add quadruple prime digraph using 4' closes: vim/vim#13380 https://github.com/vim/vim/commit/47416d1a7441f8c815438903e78ba0a2d877699e Co-authored-by: Jonathan Wright <quaggy@gmail.com>
* vim-patch:d5dc58aeed1b (#25720)Gregory Anders2023-10-19
| | | | | | | runtime(json5): Add new ftplugin (vim/vim#13385) https://github.com/vim/vim/commit/d5dc58aeed1b3e76527685d04906afd634d45949 Co-authored-by: dkearns <dougkearns@gmail.com>
* vim-patch:e08bfef88bd0Gregory Anders2023-10-19
| | | | | | | | | | | runtime(zig): Update Zig runtime files (vim/vim#13388) Update runtime files from upstream (https://github.com/zig/zig.vim) at commit 54c216e5306a5c3878a60596aacb94dca8652ab9. https://github.com/vim/vim/commit/e08bfef88bd05a9d27ee16c57cd10173e280f600 Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com>
* fix(treesitter): set cursor position when opening inspectorMaria José Solano2023-10-19
|
* fix(docs): fix TSNode incorrect signaturesPham Huy Hoang2023-10-19
|
* vim-patch:5a33ce2a661fChristian Clason2023-10-18
| | | | | | | | | | | | | | runtime(json5): include syntax script for json5 (vim/vim#13356) Merging syntax file from gutenye/json5.vim, modified to include proper vim header. See: https://github.com/vim/vim/issues/8499 https://github.com/vim/vim/commit/5a33ce2a661fb836d4c5c489f2a850172a23e0b0 Co-authored-by: Rolf Vidar Mazunki Hoksaas <32819373+mazunki@users.noreply.github.com> Co-authored-by: Guten Ye <ywzhaifei@gmail.com>