aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
* vim-patch:c3989f1: runtime(doc): reformat ada_standard_types sectionzeertzjq2024-09-29
| | | | | | | | closes: vim/vim#15759 https://github.com/vim/vim/commit/c3989f184d4dd1ee817c06bb3c04d5471382dd04 Co-authored-by: hokorobi <hokorobi.hokorobi@gmail.com>
* vim-patch:998f018: runtime(doc): include short form for :earlier/:laterzeertzjq2024-09-29
| | | | | | | | fixes: vim/vim#15757 https://github.com/vim/vim/commit/998f018df37088455bd68ad79da3d16bc4ad9bbe Co-authored-by: Christian Brabandt <cb@256bit.org>
* fix(treesitter): specify success status in edit_query return valueRiley Bruins2024-09-28
|
* fix(treesitter): suppress get_parser warnings via opts.errorRiley Bruins2024-09-28
|
* feat(defaults): pretty :help headings #30544Justin M. Keyes2024-09-27
| | | | | | | | | | | | | | Problem: Headings in :help do not stand out visually. Solution: Define a non-standard `@markup.heading.1.delimiter` group and special-case it in `highlight_group.c`. FUTURE: This is a cheap workaround until we have #25718 which will enable: - fully driven by `vimdoc/highlights.scm` instead of using highlight tricks (`guibg=bg guifg=bg guisp=fg`) - better support of "cterm" ('notermguicolors')
* vim-patch:9.1.0744: filetype: notmuch configs are not recognised (#30535)zeertzjq2024-09-27
| | | | | | | | | | | | | | Problem: filetype: notmuch configs are not recognised Solution: Detect more notmuch profile configuration files as dosini filetype (Julio B) Reference: https://notmuchmail.org/doc/latest/man1/notmuch-config.html#configuration closes: vim/vim#15744 https://github.com/vim/vim/commit/1a2870b57aa832500d59c17c8225a64c2b4aa619 Co-authored-by: Julio B <julio.bacel@gmail.com>
* fix(treesitter): EditQuery shows swapfile ATTENTION #30536Justin M. Keyes2024-09-27
| | | | | | | | Problem: EditQuery shows swapfile ATTENTION, but this buffer is not intended for preservation (and the dialog breaks the UX). Solution: Set 'noswapfile' on the buffer before renaming it.
* vim-patch:2c41dad: runtime(doc): Fix typo in :help :command-modifierszeertzjq2024-09-27
| | | | | | | | closes: vim/vim#15734 https://github.com/vim/vim/commit/2c41dad3873e71cdd4076907cf35e985d0d7a0d1 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* vim-patch:d9af78b: runtime(docs): update `:set?` command behavior tablezeertzjq2024-09-27
| | | | | | | | closes: vim/vim#15746 https://github.com/vim/vim/commit/d9af78b9450362847b344f8dc0f68d015b428d03 Co-authored-by: Milly <milly.ca@gmail.com>
* feat(health): highlight headings #30525Justin M. Keyes2024-09-26
| | | | | | | | | | Problem: checkhealth report sections are not visually separated. Solution: Highlight with "reverse". TODO: migrate checkhealth filetype to use treesitter. TODO: default :help should also highlight headings more boldy!
* vim-patch:9.1.0741: No way to get prompt for input()/confirm()zeertzjq2024-09-26
| | | | | | | | | | | | Problem: No way to get prompt for input()/confirm() Solution: add getcmdprompt() function (Shougo Matsushita) (Shougo Matsushita) closes: vim/vim#15667 https://github.com/vim/vim/commit/6908428560a0d6ae27bf7af6fcb6dc362e31926c Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
* perf(treesitter): use `child_containing_descendant()` in `is_ancestor()`Riley Bruins2024-09-25
| | | | | | | | **Problem:** `is_ancestor()` uses a slow, bottom-up parent lookup which has performance pitfalls detailed in #28512. **Solution:** Take `is_ancestor()` from $O(n^2)$ to $O(n)$ by incorporating the use of the `child_containing_descendant()` function
* fix(diagnostic): correct `severity` type on `setqflist`, `setloclist` (#30506)Nathan Smith2024-09-25
| | | fix(diagnostic): correct severity type on setqflist, setloclist
* refactor(lua): vim.keymap.set tests, docs #30511Justin M. Keyes2024-09-25
|
* docs: render @see, @note items in _meta/api.lua #30494Justin M. Keyes2024-09-25
|
* docs: lua error patterns #30240Justin M. Keyes2024-09-24
| | | | Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net> Co-authored-by: Ananth Bhaskararaman <antsub@gmail.com>
* vim-patch:a7229c8: runtime(rmd,rrst): 'fex' option not properly restoredChristian Clason2024-09-24
| | | | | | | | | | Add 'fex' to b:undo_ftplugin variable closes: vim/vim#15728 https://github.com/vim/vim/commit/a7229c8a99129608e9d651441cca6e6d3079ef56 Co-authored-by: John M Devin <john.m.devin@gmail.com>
* feat(paste): unify cancel and error behavior (#30476)zeertzjq2024-09-24
| | | | | | | | | | | | | | | | | | | | | | | | Before this PR, the behavior of nvim_paste is: - When vim.paste() returns false, return false to the client, but treat following chunks normally (i.e. rely on the client cancelling the paste as expected). - When vim.paste() throws an error, still return true to the client, but drain the following chunks in the stream without calling vim.paste(). There are two problems with such behavior: - When vim.paste() errors, the client is still supposed to send the remaining chunks of the stream, even though they do nothing. - Having different code paths for two uncommon but similar situations complicates maintenance. This PR makes both the cancel case and the error case return false to the client and drain the remaining chunks of the stream, which, apart from sharing the same code path, is beneficial whether the client checks the return value of nvim_paste or not: - If the client checks the return value, it can avoid sending the following chunks needlessly after an error. - If the client doesn't check the return value, chunks following a cancelled chunk won't be pasted on the server regardless, which leads to less confusing behavior.
* fix(filetype): handle .in files with no filename (#30487)Tristan Knight2024-09-24
| | | | | | | | | Problem: fnamemodify with the :r flag will not strip extensions if the filename starts with a ".". This means that files named ".in" could cause an infinite loop. Solution: Add early return if the filename was not changed
* Merge #30435 refactor: rename "Dictionary" => "Dict"Justin M. Keyes2024-09-23
|\
| * refactor(api)!: rename Dictionary => DictJustin M. Keyes2024-09-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In the api_info() output: :new|put =map(filter(api_info().functions, '!has_key(v:val,''deprecated_since'')'), 'v:val') ... {'return_type': 'ArrayOf(Integer, 2)', 'name': 'nvim_win_get_position', 'method': v:true, 'parameters': [['Window', 'window']], 'since': 1} The `ArrayOf(Integer, 2)` return type didn't break clients when we added it, which is evidence that clients don't use the `return_type` field, thus renaming Dictionary => Dict in api_info() is not (in practice) a breaking change.
* | fix(vim.fs): dirname() returns "." on mingw/msys2 #30480Justin M. Keyes2024-09-23
|/ | | | | | | | | | Problem: `vim.fs.dirname([[C:\User\XXX\AppData\Local]])` returns "." on mingw/msys2. Solution: - Check for "mingw" when deciding `iswin`. - Use `has("win32")` where possible, it works in "fast" contexts since b02eeb6a7281df0561a021d7ae595c84be9a01be.
* fix(runtime): treat b:undo_ftplugin consistently in Lua ftplugins (#30473)zeertzjq2024-09-23
| | | | - Don't assume b:undo_ftplugin is set when first modifying it. - Don't assume b:undo_ftplugin already contains some resetting.
* vim-patch:be551da: runtime(netrw): remove extraneous closing bracketChristian Clason2024-09-23
| | | | | | | | | fixes: vim/vim#15717 closes: vim/vim#15718 https://github.com/vim/vim/commit/be551dacb87a0542afd8b5c17b89e6749f2dc355 Co-authored-by: Peter Aronoff <peter@aronoff.org>
* feat(fs.lua): add vim.fs.rm()Lewis Russell2024-09-22
| | | | Analogous to the shell `rm` command.
* docs(api): nvim_get_runtime_file preserves 'runtimepath' order #30454Evgeni Chasnovski2024-09-22
|
* vim-patch:a0c14ef: runtime(filetype): tests: Test_filetype_detection() failszeertzjq2024-09-21
| | | | | | | | | Problem: tests: Test_filetype_detection() fails (after 9.1.0738) Solution: Add missing filetype detect patterns for *.SYSx and *.MODx https://github.com/vim/vim/commit/a0c14ef310acac62276b4ee51930d3246b11772e Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:9.1.0738: filetype: rapid files are not recognizedzeertzjq2024-09-21
| | | | | | | | | | | | Problem: filetype: rapid files are not recognized Solution: detect '*.sysx' and '*.modx' as rapid filetype (KnoP-01) closes: vim/vim#15669 https://github.com/vim/vim/commit/fdcb08264d6e8525a07b29c14863adc6ead83913 Co-authored-by: KnoP-01 <knosowski@graeffrobotics.de>
* vim-patch:e6b01cf: runtime(dist): do not output a message if executable is ↵zeertzjq2024-09-21
| | | | | | | | | not found (#30451) closes: vim/vim#15705 https://github.com/vim/vim/commit/e6b01cfe01a2722ec55a011ae04c4c404e88f924 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:50423ab: runtime(java): Optionally recognise _module_ import ↵Christian Clason2024-09-21
| | | | | | | | | | | | | | | | | | | declarations Define "g:java_syntax_previews" and include number 476 in its list to enable this recognition: ------------------------------------------------------------ let g:java_syntax_previews = [476] ------------------------------------------------------------ Reference: https://openjdk.org/jeps/476 closes: vim/vim#15709 https://github.com/vim/vim/commit/50423ab8086c6e51b86548de77d79db8542ae317 Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
* vim-patch:597aadc: runtime(lyrics): support multiple timestamps in syntax scriptChristian Clason2024-09-21
| | | | | | | | | | | | Problem: Multiple timestamps in the same line were not highlighted Solution: Adapt the syntax to support multiple timestamps fixes: vim/vim#15703 closes: vim/vim#15707 https://github.com/vim/vim/commit/597aadcf214cd13bf6a2155bf45173edc03199de Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
* vim-patch:87b6565: runtime(modconf): remove erroneous :endif in ftpluginChristian Clason2024-09-21
| | | | | | | | | | regression introduced in f86568f91848ece0c5da closes: vim/vim#15704 https://github.com/vim/vim/commit/87b65652e806ed5ae999f8b1f46b9306d48c9326 Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* vim-patch:f86568f: runtime(misc): simplify keywordprg in various ftpluginsChristian Clason2024-09-21
| | | | | | | | closes: vim/vim#15696 https://github.com/vim/vim/commit/f86568f91848ece0c5da2178881b3ed858dae799 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
* vim-patch:2307945: runtime(java): Optionally recognise all primitive ↵Christian Clason2024-09-21
| | | | | | | | | | | | | | | | | | | constants in _switch-case_ labels Define "g:java_syntax_previews" and include number 455 in its list to enable this recognition: ------------------------------------------------------------ let g:java_syntax_previews = [455] ------------------------------------------------------------ Reference: https://openjdk.org/jeps/455 closes: vim/vim#15698 https://github.com/vim/vim/commit/23079450a8dea98f9d4e3e74ab57866914b0a813 Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
* vim-patch:41c7bba: runtime(zsh,sh): set and unset compiler in ftpluginChristian Clason2024-09-21
| | | | | | | | closes: vim/vim#15699 https://github.com/vim/vim/commit/41c7bbaf8f567d3a19ab2a6191ec9937fb890220 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
* vim-patch:c18a9d5: runtime(netrw): using inefficient highlight pattern for 'mf'Christian Clason2024-09-21
| | | | | | | | | | | Fixes E872 too many '(' in highlight pattern for `mf` selection fixup for vim/vim#15551 closes: vim/vim#15700 https://github.com/vim/vim/commit/c18a9d5835456e0e47e943b673d631caaebdbea3 Co-authored-by: yasuda <yasuda@kyoto-sr.co.jp>
* fix(treesitter): lint top-level anonymous nodesRiley Bruins2024-09-20
| | | | | | | | | | **Problem:** Top-level anonymous nodes are not being checked by the query linter **Solution:** Check them by adding them to the top-level query This commit also moves a table construction out of the match iterator so it is run less frequently.
* vim-patch:35699f1: runtime(vim): Update base-syntax, improve folding ↵zeertzjq2024-09-20
| | | | | | | | | | | | | | | function matches (#30427) - Allow function command modifiers. - Match function bodies starting with empty lines. Command modifiers reported by @Konfekt. fixes vim/vim#15671 closes: vim/vim#15674 https://github.com/vim/vim/commit/35699f17497dcdcfdd747fedaef28f208ac6eb5f Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* docs(lsp): hover window controls #30347Tristan Knight2024-09-19
|
* fix(health): check more "old" files #30421Justin M. Keyes2024-09-19
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Node.js provider (optional) ~ - ERROR Failed to run healthcheck for "provider.node" plugin. Exception: …/runtime/lua/provider/node/health.lua:9: attempt to call field 'provider_disabled' (a nil value) Perl provider (optional) ~ - ERROR Failed to run healthcheck for "provider.perl" plugin. Exception: …/runtime/lua/provider/perl/health.lua:8: attempt to call field 'provider_disabled' (a nil value) Python 3 provider (optional) ~ - ERROR Failed to run healthcheck for "provider.python" plugin. Exception: …/runtime/lua/provider/python/health.lua:226: attempt to call field 'provider_disabled' (a nil value) Ruby provider (optional) ~ - ERROR Failed to run healthcheck for "provider.ruby" plugin. Exception: …/runtime/lua/provider/ruby/health.lua:9: attempt to call field 'provider_disabled' (a nil value) Solution: Add these files to the runtime sanity check. fix #29302
* refactor!: rename 'jumpoptions' flag "unload" to "clean" (#30418)zeertzjq2024-09-19
| | | Follow-up to #29347
* vim-patch:5036e69: runtime(systemd): allow for overriding systemd ftplugin ↵Enno2024-09-18
| | | | | | | settings (vim/vim#13373) (#30414) closes: vim/vim#13357 https://github.com/vim/vim/commit/5036e698520b2c39e4df5738f026a68ba2e76fef
* feat(tui): builtin UI (TUI) sets client info #30397Justin M. Keyes2024-09-18
| | | | | | | | | | | | Problem: The default builtin UI client does not declare its client info. This reduces discoverability and makes it difficult for plugins to identify the UI. Solution: - Call nvim_set_client_info after attaching, as recommended by `:help dev-ui`. - Also set the "pid" field. - Also change `ui_active()` to return a count. Not directly relevant to this commit, but will be useful later.
* docs: graduate tui.txt to "flow layout" #30413Justin M. Keyes2024-09-18
|
* docs(tui): rename term.txt, nvim_terminal_emulator.txt #30398Justin M. Keyes2024-09-18
| | | | | | | | | | | | Problem: It has long been a convention that references to the builtin terminal UI should mention "tui", not "term", in order to avoid ambiguity vs the builtin `:terminal` feature. The final step was to rename term.txt; let's that step. Solution: - rename term.txt => tui.txt - rename nvim_terminal_emulator.txt => terminal.txt - `gen_help_html.lua`: generate redirects for renamed pages.
* vim-patch:f21d28a: runtime(zathurarc): add double-click-follow to syntax scriptChristian Clason2024-09-18
| | | | | | | | closes: vim/vim#15688 https://github.com/vim/vim/commit/f21d28a5c72987d42d540290e5a77500ab1a4d7c Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
* vim-patch:9.1.0735: filetype: salt files are not recognizedGregory Anders2024-09-17
| | | | | | | | | | | | Problem: filetype: salt files are not recognized Solution: Detect '*.sls' files as filetype salt, include a syntax script (Gregory Anders) closes: vim/vim#15689 https://github.com/vim/vim/commit/89b9bb4ac8ceb701ebecb8c02aca3d047dff9991 Co-authored-by: Gregory Anders <greg@gpanders.com>
* vim-patch:9.1.0734: filetype: jinja files are not recognizedGregory Anders2024-09-17
| | | | | | | | | | | | Problem: filetype: jinja files are not recognized Solution: detect '*.jinja' files a jinja filetype, include jinja syntax script (Gregory Anders) related: vim/vim#15689 https://github.com/vim/vim/commit/202c467bb37b894ada6377d3f2621c103f324757 Co-authored-by: Gregory Anders <greg@gpanders.com>
* docs(eval): update param types of prompt-buffer functions (#30392)glepnir2024-09-16
|
* feat(vim.ui): configurable "gx" / vim.ui.open() toolMatěj Cepl2024-09-16
| | | | | | | | | | | | | | Problem: User cannot configure the tool used by `vim.ui.open` (or `gx`). With netrw this was supported by `g:netrw_browsex_viewer`. Solution: Introduce `opts.cmd`. Users that want to set this globally can monkey-patch `vim.ui.open` in the same way described at `:help vim.paste()`. Fixes https://github.com/neovim/neovim/issues/29488 Co-authored-by: Justin M. Keyes <justinkz@gmail.com>