aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
* vim-patch:9.1.0962: filetype: bun.lock file is not recognizedChristian Clason2024-12-27
| | | | | | | | | | | | Problem: filetype: bun.lock file is not recognized Solution: detect 'bun.lock' file as jsonc filetype (Anton Kastritskii) closes: vim/vim#16308 https://github.com/vim/vim/commit/f07ae5b3bdb7331ee0e65adcb74402eef74f0a2b Co-authored-by: Anton Kastritskii <halloy52@gmail.com>
* vim-patch:9.1.0963: fuzzy-matching does not prefer full match (#31741)glepnir2024-12-27
| | | | | | | | | | | Problem: fuzzy-matching does not prefer full match (Maxim Kim) Solution: add additional score for a full match (glepnir) fixes: vim/vim#15654 closes: vim/vim#16300 https://github.com/vim/vim/commit/5a04999a7402201cf1b47ff10bc474dd1cdc24f4
* vim-patch:9b67a2e: runtime(vim): Update base-syntax, allow parens in default ↵zeertzjq2024-12-27
| | | | | | | | | | | | | arguments (#31738) Allow parentheses in default arguments specified in :def and :function definitions. fixes vim/vim#16243 closes: vim/vim#16269 https://github.com/vim/vim/commit/9b67a2e1ddf277faf01fa957bf72f7b804a7cb7f Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* vim-patch:9.1.0961: filetype: TI gel files are not recognizedChristian Clason2024-12-25
| | | | | | | | | | | | | | | | Problem: filetype: TI gel files are not recognized Solution: detect '*.gel' files as gel filetype, include get filetype and syntax plugins (Wu, Zhenyu) References: https://downloads.ti.com/ccs/esd/documents/users_guide/ccs_debug-gel.html closes: vim/vim#16226 https://github.com/vim/vim/commit/9360de9027aa286e802363ede59c9e97025ae123 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
* vim-patch:9.1.0960: filetype: hy history files are not recognizedChristian Clason2024-12-25
| | | | | | | | | | | | | Problem: filetype: hy history files are not recognized Solution: detect '*.hy', '.hy-history' files as hy filetype, detect '.lips_repl_history' files are scheme filetype (Wu, Zhenyu) closes: vim/vim#16298 https://github.com/vim/vim/commit/a32daed55933df49a7aed571cc6e400ae01c7976 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
* docs(api): return type of nvim_get_keymap() #31708Shihua Zeng2024-12-24
|
* vim-patch:9.1.0958: filetype: supertux2 config files detected as lispChristian Clason2024-12-24
| | | | | | | | | | | | | | | | | | Problem: filetype: supertux2 config files detected as lisp Solution: detect supertux2 config files as scheme instead (Wu, Zhenyu) References: https://github.com/SuperTux/supertux/wiki/S-Expression supertux uses #t and #f as bool type, which is same as scheme, not common lisp closes: vim/vim#16287 https://github.com/vim/vim/commit/e62d93ead10b4c5818e3c0b7551f1784d24bfe33 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
* fix(diagnostic): silence :chistory #31701Yorick Peterse2024-12-23
| | | | | | | vim.diagnostic.set_list() uses chistory to restore the actively selected entry whenever necessary. This however also results in it displaying some output in the message bar, but this output isn't useful (and can even be distracting) when opening the quickfix window. This fixes this by silencing the chistory command.
* docs(api): vim.version.range():has() method #31622Lukasz Piepiora2024-12-23
| | | | | | | | Problem: The :has() method of the vim.version.range() result is not documented though it's mentioned in examples. Solution: Mention it in the range() result doc.
* vim-patch:4ce1cb5: runtime(graphql): contribute vim-graphql to Vim coreChristian Clason2024-12-23
| | | | | | | | | | | | | | | | | | | Contribute the core of my vim-graphql project (ftplugin, indent, syntax) to the Vim project. This replaces the basic ftplugin support that was already in the runtime with a more complete set of filetype settings. I can assume maintainership for all of these files. I'll continue to maintain the higher-level embedded filetype support separately (in vim-graphql) for now, because it's fairly complex, but we can consider integrating that code directly into vim later. runtime files use the MIT license. closes: vim/vim#16273 https://github.com/vim/vim/commit/4ce1cb5bf1dc507224792543d8e56e6ab431a2b5 Co-authored-by: Jon Parise <jon@indelible.org>
* Merge #31661 cmdline_show/hide eventsJustin M. Keyes2024-12-22
|\
| * feat(ui): specify whether msg_show event is added to historyLuuk van Baal2024-12-23
| | | | | | | | | | Pass along whether message in msg_show event is added to the internal :messages history.
| * feat(ui): additional arguments for cmdline_show/hide eventsLuuk van Baal2024-12-22
| | | | | | | | | | | | | | | | Problem: Unable to tell what highlight the prompt part of a cmdline_show event should have, and whether cmdline_hide was emitted after aborting. Solution: Add additional arguments hl_id to cmdline_show, and abort to cmdline_hide.
* | vim-patch:9.1.0953: filetype: APKBUILD files not correctly detectedChristian Clason2024-12-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: APKBUILD files not correctly detected Solution: detect 'APKBUILD' files as apkbuild filetype, include a apkbuild syntax script (which basically just sources the sh.vim syntax file) (Hugo Osvaldo Barrera) Vim plugins (e.g.: ALE, nvim-lspconfig, etc) rely on filetype to determine which integrations/helpers are applicable. They expect filetype=apkbuild for APKBUILD files. On the other hand, plugins also enable bash-specific linters and functionality when filetype=bash, but APKBUILD files are POSIX sh, not bash, so these often provide bogus results. Change the filetype for APKBUILD to a 'apkbuild', so that tools and ftplugin can properly target these files. This filetype will use the existing `sh` syntax rules, since these are applicable for them. https://github.com/vim/vim/commit/7cb24917a112ba473cb351bdcdc48b8adbd46793 Co-authored-by: Hugo Osvaldo Barrera' via vim_dev <vim_dev@googlegroups.com>
* | vim-patch:9.1.0951: filetype: jshell files are not recognizedChristian Clason2024-12-22
| | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: jshell files are not recognized Solution: detect '*.jsh' files as java filetype (Konfekt) closes: vim/vim#16260 https://github.com/vim/vim/commit/62e3014ab1146d7f78694c97fc6974f1af2cc5af Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
* | feat(lsp): return table from lsp/ files on runtimepath (#31663)Gregory Anders2024-12-21
| | | | | | | | | | | | | | | | Problem: LSP configs on the runtimepath must have the same name as the LSP server and must also explicitly set the name in vim.lsp.config. This is redundant and creates a footgun where a user may accidentally use the wrong name when assigning to the vim.lsp.config table. Solution: Return a table from lsp/ runtimepath files instead
* | vim-patch:70881ba: runtime(dockerfile): do not set commentstring in syntax ↵Christian Clason2024-12-21
| | | | | | | | | | | | | | | | | | | | script fixes: vim/vim#16268 https://github.com/vim/vim/commit/70881ba195d267d01df912294ddc5b5d525bba3d Co-authored-by: Christian Brabandt <cb@256bit.org>
* | vim-patch:9.1.0950: filetype: fennelrc files are not recognizedChristian Clason2024-12-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: fennelrc files are not recognized Solution: detect 'fennelrc' files as fennel filetype (Wu Zhenyu) References: https://github.com/bakpakin/Fennel/issues/193 closes: vim/vim#16262 https://github.com/vim/vim/commit/f173f4249fc785fb3e2b341bcfb0f21192cd4bf5 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
* | vim-patch:c673b80: runtime(netrw): more reformating vim/vim#16248 (#31662)zeertzjq2024-12-21
|/ | | | | | | closes: vim/vim#16266 https://github.com/vim/vim/commit/c673b805ad80d0aef07e745d412a2bf298ba1c07 Co-authored-by: shane.xb.qian <shane.qian@foxmail.com>
* fix(messages): no message kind for completion menu messages #31646Tomasz N2024-12-20
|
* fix(vim.system): invalid MAX_TIMEOUT for 32-bit systems #31638Dan Pascu2024-12-20
| | | | | | The maximum signed value on 32-bit systems is 2 ^ 31 - 1. When using 2 ^ 31 for the default timeout, the value would overflow on such systems resulting in a negative value, which caused a stack trace when calling wait() without a timeout.
* vim-patch:c363ca1: runtime(netrw): change indent size from 1 to 2 (#31648)zeertzjq2024-12-20
| | | | | | | closes: vim/vim#16248 https://github.com/vim/vim/commit/c363ca1ecd1f8db03663ef98dcf41eeacc3c22c7 Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
* feat(jobs): jobstart(…,{term=true}), deprecate termopen() #31343Justin M. Keyes2024-12-19
| | | | | | | | | | | | Problem: `termopen` has long been a superficial wrapper around `jobstart`, and has no real purpose. Also, `vim.system` and `nvim_open_term` presumably will replace all features of `jobstart` and `termopen`, so centralizing the logic will help with that. Solution: - Introduce `eval/deprecated.c`, where all deprecated eval funcs will live. - Introduce "term" flag of `jobstart`. - Deprecate `termopen`.
* docs(api): specify when decor provider on_buf is called #31634luukvbaal2024-12-19
|
* vim-patch:9.1.0945: ComplMatchIns highlight doesn't end after inserted text ↵zeertzjq2024-12-18
| | | | | | | | | | | | (#31628) Problem: ComplMatchIns highlight doesn't end after inserted text. Solution: Handle ComplMatchIns highlight more like search highlight. Fix off-by-one error. Handle deleting text properly. (zeertzjq) closes: vim/vim#16244 https://github.com/vim/vim/commit/f25d8f9312a24da2727671560a865888812ab8d9
* refactor(man.lua): various changesLewis Russell2024-12-18
| | | | | | | | | | | | | | | | | | | - Replace all uses of vim.regex with simpler Lua patterns. - Replace all uses of vim.fn.substitute with string.gsub. - Rework error handling so expected errors are passed back via a return. - These get routed up an passed to `vim.notify()` - Any other errors will cause a stack trace. - Reworked the module initialization of `localfile_arg` - Updated all type annotations. - Refactored CLI completion by introduction a parse_cmdline() function. - Simplified `show_toc()` - Refactor highlighting - Inline some functions - Fix completion on MacOS 13 and earlier. - Prefer `manpath -q` over `man -w` - Make completion more efficient by avoiding vim.fn.sort and vim.fn.uniq - Reimplement using a single loop
* fix(lsp): vim.lsp.start fails if existing client has no workspace_folders #31608phanium2024-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: regression since https://github.com/neovim/neovim/pull/31340 `nvim -l repro.lua`: ```lua vim.lsp.start { cmd = { 'lua-language-server' }, name = 'lua_ls' } vim.lsp.start { cmd = { 'lua-language-server' }, name = 'lua_ls', root_dir = 'foo' } -- swapped case will be ok: -- vim.lsp.start { cmd = { 'lua-language-server' }, name = 'lua_ls', root_dir = 'foo' } -- vim.lsp.start { cmd = { 'lua-language-server' }, name = 'lua_ls' } ``` Failure: ``` E5113: Error while calling lua chunk: /…/lua/vim/lsp.lua:214: bad argument #1 to 'ipairs' (table expected, got nil) stack traceback: [C]: in function 'ipairs' /…/lua/vim/lsp.lua:214: in function 'reuse_client' /…/lua/vim/lsp.lua:629: in function 'start' repro.lua:34: in main chunk ```
* feat(lsp): show server version in `:checkhealth` #31611Peter Lithammer2024-12-18
| | | | | | | | Problem: Language server version information missing from `:checkhealth vim.lsp`. Solution: Store `InitializeResult.serverInfo.version` from the `initialize` response and display for each client in `:checkhealth vim.lsp`.
* vim-patch:a977883: runtime(doc): Fix style in fold.txt (#31617)zeertzjq2024-12-18
| | | | | | | closes: vim/vim#16236 https://github.com/vim/vim/commit/a977883ef336f83102dc0a1edbfc999e6b5c129c Co-authored-by: h-east <h.east.727@gmail.com>
* vim-patch:9.1.0942: a few typos were foundzeertzjq2024-12-18
| | | | | | | | | Problem: a few typos were found Solution: fix them (zeertzjq) closes: vim/vim#16232 https://github.com/vim/vim/commit/d32bf0a06762f9ad08334d67b4d7f235f87f9063
* vim-patch:9.1.0936: cannot highlight completed textzeertzjq2024-12-18
| | | | | | | | | | | | Problem: cannot highlight completed text Solution: (optionally) highlight auto-completed text using the ComplMatchIns highlight group (glepnir) closes: vim/vim#16173 https://github.com/vim/vim/commit/6a38aff218f5b99a1aed7edaa357df24b9092734 Co-authored-by: glepnir <glephunter@gmail.com>
* feat(terminal)!: cursor shape and blink (#31562)Gregory Anders2024-12-17
| | | | | | | | | | | | | | | | | | | | | When a terminal application running inside the terminal emulator sets the cursor shape or blink status of the cursor, update the cursor in the parent terminal to match. This removes the "virtual cursor" that has been in use by the terminal emulator since the beginning. The original rationale for using the virtual cursor was to avoid having to support additional UI methods to change the cursor color for other (non-TUI) UIs, instead relying on the TermCursor and TermCursorNC highlight groups. The TermCursor highlight group is now used in the default 'guicursor' value, which has a new entry for Terminal mode. However, the TermCursorNC highlight group is no longer supported: since terminal windows now use the real cursor, when the window is not focused there is no cursor displayed in the window at all, so there is nothing to highlight. Users can still use the StatusLineTermNC highlight group to differentiate non-focused terminal windows. BREAKING CHANGE: The TermCursorNC highlight group is no longer supported.
* vim-patch:9.1.0934: hard to view an existing buffer in the preview window ↵zeertzjq2024-12-17
| | | | | | | | | | | | | | | | | | | | | | (#31605) Problem: hard to view an existing buffer in the preview window Solution: add the :pbuffer command (Yinzuo Jiang) Similar as `:pedit` and `:buffer` command. `:pbuffer` edits buffer [N] from the buffer list in the preview window. `:pbuffer` can also open special buffer, for example terminal buffer. closes: vim/vim#16222 https://github.com/vim/vim/commit/a2a2fe841ed2efdbb1f8055f752a3a4d0988ae9d Cherry-pick Test_popup_and_previewwindow_dump() changes from patch 9.0.0625. Cherry-pick Run_noroom_for_newwindow_test() changes from patches 8.2.0432 and 9.0.0363. Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
* vim-patch:3920bb4: runtime(doc): document how to minimize fold computation costszeertzjq2024-12-17
| | | | | | | | closes: vim/vim#16224 https://github.com/vim/vim/commit/3920bb4356aa7324a4be1071c87524a2f921d921 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
* vim-patch:0a4e57f: runtime(doc): fix a few minor errors from the last doc ↵zeertzjq2024-12-17
| | | | | | | | | | | | | | updates 1) move the section at :h inclusive-motion-selection-exclusive a few lines below, so that it doesn't live in between the 2 exceptions. 2) remove the tag :h :!-range. It's not accurate (because it is actually a filter) and this command is already described at :h :range! https://github.com/vim/vim/commit/0a4e57f44abc05033f839b4538efee8120f7d967 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:41d6de2: runtime(doc): update the change.txt help filezeertzjq2024-12-17
| | | | | | https://github.com/vim/vim/commit/41d6de2974429f5fc76fbeacc233a1fa66c6f869 Co-authored-by: Antonio Giovanni Colombo <azc100@gmail.com>
* fix(api): generic error messages, not using TRY_WRAP #31596Justin M. Keyes2024-12-16
| | | | | | | | | | | Problem: - API functions using `try_start` directly, do not surface the underlying error message, and instead show generic messages. - Error-handling code is duplicated in the API impl. - Failure modes are not tested. Solution: - Use `TRY_WRAP`. - Add tests.
* fix(Man): completion on MacLewis Russell2024-12-16
| | | | | | | | Problem: `man -w` does not work on recent versions of MacOs. Solution: Make it so an empty result is interpreted as an error unless silent=true
* fix(diagnostic): vim.diagnostic.setqflist() opens loclist on first call #31585Juan Cruz De La Torre2024-12-16
| | | | | | | | | | | | Problem: Regression from de794f2d2409: `vim.diagnostic.setqflist{open=true}` attempts to open the location list instead of the diagnostics quickfix list if it didn't exist before. This is because we are using `qf_id` to decide which to open, but `qf_id=nil` when there is no existing diagnostics quickfix list with a given title ("Diagnostics" by default). Solution: - Revert to using `loclist` to decide which to open. - Add tests.
* fix(messages): no message kind for :undo messages #31590Tomasz N2024-12-16
| | | | | | Problem: cannot handle `:undo` and `:redo` messages in a special way, e.g. replace one by another. Solution: add `undo` kind.
* vim-patch:9.1.0929: filetype: lalrpop files are not recognizedChristian Clason2024-12-16
| | | | | | | | | | | | | | | Problem: filetype: lalrpop files are not recognized Solution: detect '*.lalrpop' files as lalrpop filetype (David Thievon) References: https://github.com/lalrpop/lalrpop closes: vim/vim#16223 https://github.com/vim/vim/commit/5a2e0cf5f11c611c9b01f1bd6e7294edf0dd2bf4 Co-authored-by: David Thievon <pdkfan@gmail.com>
* vim-patch:9.1.0926: filetype: Pixi lock files are not recognizedChristian Clason2024-12-15
| | | | | | | | | | | | | | | Problem: filetype: Pixi lock files are not recognized Solution: detect "pixi.lock" file as yaml filetype (Brandon Maier) Reference: https://pixi.sh/latest/features/lockfile/ closes: vim/vim#16212 https://github.com/vim/vim/commit/7d1bb90dcf711c732a49e0a45e56028a4853a17d Co-authored-by: Brandon Maier <brandon.maier@gmail.com>
* vim-patch:fbe9a69: runtime(doc): Add a reference to |++opt| and |+cmd| at ↵zeertzjq2024-12-15
| | | | | | | | | | `:h :pedit` closes: vim/vim#16217 https://github.com/vim/vim/commit/fbe9a6903a5b66d5b546a5a080726cba50372df5 Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
* vim-patch:ed89206: runtime(doc): add a note about inclusive motions and ↵zeertzjq2024-12-15
| | | | | | | | | | exclusive selection related: vim/vim#16202 https://github.com/vim/vim/commit/ed89206efe404a94e8424ccfe03c978fd93470f1 Co-authored-by: Christian Brabandt <cb@256bit.org>
* feat(ui): sign/statuscolumn can combine highlight attrs #31575luukvbaal2024-12-14
| | | | | | | | Problem: Since e049c6e4c08a, most statusline-like UI elements can combine highlight attrs, except for sign/statuscolumn. Solution: Implement for sign/statuscolumn.
* docs(annotations): added `---@generic` supportColin Kennedy2024-12-13
|
* Revert "fix(Man.lua): trigger completion even without arguments" #31572Justin M. Keyes2024-12-13
| | | This reverts commit 7940ec69136fa992c98aa7b37265fbc2e619232e.
* fix(lsp): reuse client if configs match and no root dirLewis Russell2024-12-13
| | | | | | | | | | | | Problem: An LSP configuration that creates client with no root_dir or workspace_folders can result in vim.lsp.enable attaching to it multiple times. Solution: When checking existing clients, reuse a client if it wasn't initially configured have any workspace_folders. This more closely matches the behaviour we had prior to d9235ef
* fix(man.lua): `:Man <tab>` does not complete #31569Luca Saccarola2024-12-13
| | | closes: #31512
* vim-patch:5c42c77: runtime(netrw): do not pollute search history with symlinksChristian Clason2024-12-13
| | | | | | | | fixes: vim/vim#16206 https://github.com/vim/vim/commit/5c42c7731536418c53273932d7ef76b80b001f38 Co-authored-by: Christian Brabandt <cb@256bit.org>