aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* docs(luacats): support backtick captured generic typeJames Trew2024-05-07
| | | | | | | | | | | | Problem: While LuaCATS's generics system are still considered WIP by luals, they currently support type captured generics. See "Capture with Backtick" example: https://luals.github.io/wiki/annotations/#generic Solution: Add support for it in the LuaCATS grammar
* fix(lsp): enable() does not activate inlay hints on open buffers #28629Yi Ming2024-05-07
| | | | | | | | | | | Problem: inlay_hint `enable(<no args>)` does not activate inlay hints on open buffers. If a buffer does not have a corresponding `bufstate` in `bufstates`, then `enable` all buffers will not take effect on it. Solution: Make the effective range determined by the loaded buffers. Fix #28624
* vim-patch:8d8cb45756cb (#28657)zeertzjq2024-05-07
| | | | | | | | | | | | | | | | | | | | | runtime(sh,zsh): clear $MANPAGER in ftplugin before shelling out Say you use Vim and set MANPAGER='vim -M +MANPAGER --not-a-term -'; then :{Zs,S}hKeywordPrg (or K) will crap out and spew terminal garbage into less when bash's "help" fails. This was introduced by 2f25e40b1 (runtime: configure keywordpg for some file types (vim/vim#5566), 2023-08-23) and may be present in other files touched by that commit. Make the "man" invocation sensible by unsetting MANPAGER in the environment. Note that changing MANPAGER for `:terminal` is not needed; Vim within Vim is perfectly fine. closes: vim/vim#14679 https://github.com/vim/vim/commit/8d8cb45756cb7e6fda17013b8347be3a11b29610 Co-authored-by: D. Ben Knoble <ben.knoble+github@gmail.com>
* build(deps): bump tree-sitter-query to v0.3.0Christian Clason2024-05-07
| | | | add support for supertype nodes (used in Haskell)
* revert: default LSP mappings (#28649)Gregory Anders2024-05-06
| | | | | | | | | Revert the default LSP mappings before the 0.10 release as these might need some further consideration. In particular, it's not clear if "c" prefixed maps in Normal mode are acceptable as defaults since they interfere with text objects or operator ranges. We will re-introduce default mappings at the beginning of the 0.11 release cycle, this reversion is only for the imminent 0.10 release.
* refactor(snippet): rename exit() => stop() #28628Justin M. Keyes2024-05-06
|
* vim-patch:53753f6a4925 (#28647)zeertzjq2024-05-06
| | | | | | | | | | runtime(doc): Fix typos in help documents closes: vim/vim#14720 https://github.com/vim/vim/commit/53753f6a49253cdb3f98f6461d3de3b07ed67451 Co-authored-by: h-east <h.east.727@gmail.com> Co-authored-by: Christian Clason <c.clason@uni-graz.at>
* fix(treesitter): update queriesChristian Clason2024-05-05
|
* build(deps): bump tree-sitter to v0.22.6Christian Clason2024-05-05
|
* build: use libvterm commit with generated *.inc filesdundargoc2024-05-05
| | | | This allows us to skip generating them during our build process.
* fix(defaults): diagnostic mappings descriptions #28646Evgeni Chasnovski2024-05-05
|
* docs: fix lua type warnings (#28633)Maria José Solano2024-05-05
|
* vim-patch:ad4881cb3c04 (#28636)zeertzjq2024-05-04
| | | | | | | runtime(doc): correct getscriptinfo() example (vim/vim#14718) When "sid" is specified, it returns a List with a single item. https://github.com/vim/vim/commit/ad4881cb3c04048242f69dc77af2dde889c9beea
* fix(treesitter): escape "\" in :InspectTree #28613Riley Bruins2024-05-03
| | | Some parsers for, e.g., LaTeX or PHP have anonymous nodes like `"\"` or `"\text"` that behave wonkily (especially the first example) in the `InspectTree` window, so this PR escapes them by adding another backslash in front of them
* docs: deduplicate information in deprecated.txtdundargoc2024-05-03
| | | | | | Refer to `deprecated.txt` in `news.txt` in the deprecated section and order `deprecated.txt` according to which version a feature was deprecated in.
* build: simplify policy-setting for dependenciesdundargoc2024-05-03
| | | | | Passing `CMAKE_POLICY_DEFAULT_CMP0092=NEW` to all dependencies is simpler than setting it manually in each file.
* fix(lsp): replace bug-prone ternary operation #28627Yi Ming2024-05-03
| | | ref #28624
* build: remove `lintdoc` from `lint` targetdundargoc2024-05-03
| | | | | `lintdoc` takes too long to be part of `lint`. It may be reintroduced once it's possible to only run lintdoc on files that have been changed.
* fix(vim.json): properly treat luanil options as booleans (#28622)zeertzjq2024-05-03
| | | Note: Upstream doesn't have this. It's an Nvim addition.
* fix(vim.ui)!: change open() to return `result|nil, errmsg|nil` #28612Justin M. Keyes2024-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | reverts e0d92b9cc20b58179599f53dfa74ca821935a539 #28502 Problem: `vim.ui.open()` has a `pcall()` like signature, under the assumption that this is the Lua idiom for returning result-or-error. However, the `result|nil, errmsg|nil` pattern: - has precedent in: - `io.open` - `vim.uv` (`:help luv-error-handling`) - has these advantages: - Can be used with `assert()`: ``` local result, err = assert(foobar()) ``` - Allows LuaLS to infer the type of `result`: ``` local result, err = foobar() if err then ... elseif result then ... end ``` Solution: - Revert to the `result|nil, errmsg|nil` pattern. - Document the pattern in our guidelines.
* perf(extmarks): better track whether namespace has extmarks (#28615)zeertzjq2024-05-03
| | | | | | This avoids redraw when adding/removing an empty namespace for a window. This also avoids marktree traversal when clearing a namespace that has already been cleared, which is added as a benchmark.
* fix(api): use correct buffer for "range" in nvim__redraw (#28614)luukvbaal2024-05-03
|
* build: improve git-cliff CHANGELOG outputdundargoc2024-05-02
| | | | | | | | - Sort sections according to custom preference instead of alphabetically. It is ordered according to "most relevant" to "least relevant" to users. - Sort commits alphabetically - Don't uppercase the first letter of the commit message
* Merge #28101 nvim__redrawJustin M. Keyes2024-05-02
|\
| * feat(api): add nvim__redraw for more granular redrawingLuuk van Baal2024-05-02
| | | | | | | | | | | | | | | | | | | | | | Experimental and subject to future changes. Add a way to redraw certain elements that are not redrawn while Nvim is waiting for input, or currently have no API to do so. This API covers all that can be done with the :redraw* commands, in addition to the following new features: - Immediately move the cursor to a (non-current) window. - Target a specific window or buffer to mark for redraw. - Mark a buffer range for redraw (replaces nvim__buf_redraw_range()). - Redraw the 'statuscolumn'.
| * refactor: add win_T argument to setcursor_mayforce()Luuk van Baal2024-05-02
| |
* | feat(lsp): inlay_hint.is_enabled({filter}) #28523Yi Ming2024-05-02
|/ | | vim.diagnostic.enable and vim.diagnostic.is_enabled() use the same pattern.
* feat(lsp): vim.lsp.inlay_hint.enable(nil) applies to all buffers #28543Yi Ming2024-05-02
| | | | | | | | | | | | | | | | | | Problem: Inlay hints `enable()` does not fully implement the `:help dev-lua` guidelines: Interface conventions ~ - When accepting a buffer id, etc., 0 means "current buffer", nil means "all buffers". Likewise for window id, tabpage id, etc. - Examples: |vim.lsp.codelens.clear()| |vim.diagnostic.enable()| Solution: Implement globally enabling inlay hints. * refactor(lsp): do not rely on `enable` to create autocmds * refactor(lsp): make `bufstates` a defaulttable * refactor(lsp): make `bufstate` inherit values from `globalstate` * feat(lsp): `vim.lsp.inlay_hints` now take effect on all buffers by default * test(lsp): add basic tests for enable inlay hints for all buffers * test(lsp): add test cases cover more than one buffer
* vim-patch:9.1.0390: filetype: inko files are not recognizedChristian Clason2024-05-02
| | | | | | | | | | | | | | | | Problem: filetype: inko files are not recognized Solution: Detect '*.inko' as ink filetype (Yorick Peterse) See: - https://github.com/inko-lang/inko.vim - https://inko-lang.org/ closes: vim/vim#14699 https://github.com/vim/vim/commit/a01968448a0bdf04d9e4a822d32732a304849238 Co-authored-by: Yorick Peterse <git@yorickpeterse.com>
* vim-patch:9.1.0389: filetype: templ files are not recognizedChristian Clason2024-05-02
| | | | | | | | | | | | | | | | Problem: filetype: templ files are not recognized Solution: Detect '*.templ' files as filetype templ (Tristan Knight) See: - https://github.com/a-h/templ - https://templ.guide/ closes: vim/vim#14697 https://github.com/vim/vim/commit/54e79157c536c631b2f9b3dfefec30b9b966ed97 Co-authored-by: tris203 <admin@snappeh.com>
* docs(CONTRIBUTING): mention process of changing ft detection (#28598)zeertzjq2024-05-02
|
* test: override XDG_STATE_HOME as well (#28604)zeertzjq2024-05-02
| | | This prevents tested Nvim from affecting ~/.local/state/
* vim-patch:9.1.0388: cursor() and getregion() don't handle v:maxcol well (#28602)zeertzjq2024-05-02
| | | | | | | | | Problem: cursor() and getregion() don't handle v:maxcol well. Solution: Add special handling for v:maxcol like setpos() does. (zeertzjq) closes: vim/vim#14698 https://github.com/vim/vim/commit/2ffdae79487cb7e323383eda9ae96c2e9d1625bd
* ci: don't try to label backport PR if it was not createddundargoc2024-05-02
|
* docs: add `hl-SnippetTabstop` tagEvgeni Chasnovski2024-05-02
|
* fix(colorscheme): add missing LSP groupsEvgeni Chasnovski2024-05-02
|
* vim-patch:9.1.0386: filetype: stylus files not recognizedChristian Clason2024-05-02
| | | | | | | | | | | | | Problem: filetype: stylus files not recognized Solution: Detect '*.styl' and '*.stylus' as stylus filetype, include indent, filetype and syntax plugin (Philip H) closes: vim/vim#14656 https://github.com/vim/vim/commit/2d919d2744a99c9bb9e79984e85b8e8f5ec14c07 Co-authored-by: Philip H <47042125+pheiduck@users.noreply.github.com>
* fix(ui): avoid recursiveness and invalid memory access #28578luukvbaal2024-05-01
| | | | | | | | Problem: Calling :redraw from vim.ui_attach() callback results in recursive cmdline/message events. Solution: Avoid recursiveness where possible and replace global "call_buf" with separate, temporary buffers for each event so that when a Lua callback for one event fires another event, that does not result in invalid memory access.
* ci: improve default backport pull request titledundargoc2024-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | `[Backport release-x.y]` will no longer be part of the pull request title. This means the PR titles will go from looking like ``` [Backport release-0.9] fix(languagetree): remove double recursion in LanguageTree:parse ``` to ``` fix(languagetree): remove double recursion in LanguageTree:parse ``` The benefit of this is that pull requests merged with the "Squash and Merge" strategy (which uses the PR title as the commit message), will still follow the conventional commits specification. This will help tools that rely on conventional commits such as git-cliff. The `backport` label is added to backported PRs to help distinguish between backport PRs with regular PRs in the "Pull Requests" tab on github. To reduce confusion with the `backport` label, the label to trigger the backporting has been changed from `backport release-x.y` to `ci:backport release-x.y`. This is also more consistent with other labels that trigger a CI job which all use the `ci:` prefix.
* ci: update vim_patches.yml to follow conventional commitsdundargoc2024-05-01
| | | | | | | | | | | | | | This will change the commits messages from ``` version.c: update [skip ci] ``` to ``` docs: update version.c [skip ci] ```
* revert: "feat(extmarks): subpriorities (relative to declaration order) ↵Gregory Anders2024-05-01
| | | | | | | | | | | | (#27131)" (#28585) This reverts commit 15e77a56b711102fdc123e15b3f37d49bc0b1df1. Subpriorities were added in https://github.com/neovim/neovim/pull/27131 as a mechanism for enforcing query order when using iter_matches in the Tree-sitter highlighter. However, iter_matches proved to have too many complications to use in the highlighter so we eventually reverted back to using iter_captures (https://github.com/neovim/neovim/pull/27901). Thus, subpriorities are no longer needed and can be removed.
* vim-patch:9.1.0383: filetype: .out files recognized as tex filesChristian Clason2024-05-01
| | | | | | | | | | | | Problem: filetype: .out files recognized as tex files Solution: Do not set an explicit filetype until it is clear what this should be (shane.xb.qian) closes: vim/vim#14670 https://github.com/vim/vim/commit/e35478bc9d48189322432248105d3b24e0efb3d0 Co-authored-by: shane.xb.qian <shane.qian@foxmail.com>
* vim-patch:9.1.0382: filetype: Kbuild files are not recognizedChristian Clason2024-05-01
| | | | | | | | | | | | Problem: Kbuild files are not recognized. Solution: Detect Kbuild files as make files. (Bruno Belanyi) closes: vim/vim#14676 https://github.com/vim/vim/commit/5cbc9a69e529361e1725f422b8cd6157fe0adc33 Co-authored-by: Bruno BELANYI <bruno@belanyi.fr>
* docs: format vim_diff.txt for "flow" layout #28584Justin M. Keyes2024-04-30
|
* docs(api): sort unreleased nvim__ functions last #28580Justin M. Keyes2024-04-30
|
* feat(diagnostic): revert default behaviour of goto_next/prev()Lewis Russell2024-04-30
| | | | | | | | | | | | | | | | | Follow-up to #28490 Problem: The new behaviour of goto_next/prev() of navigating to the next highest severity doesn't work well when diagnostic providers have different interpretations of severities. E.g. the user may be blocked from navigating to a useful LSP warning, due to some linter error. Solution: The behaviour of next highest severity is now a hidden option `_highest = true`. We can revisit how to integrate this behaviour during the 0.11 cycle.
* fix(api): mark nvim__complete_set as experimental #28579Justin M. Keyes2024-04-30
| | | | | | | | Problem: nvim_complete_set was added in 5ed55ff14c8b7e346811cb6228bf63fb5106bae9 but needs more bake time. Solution: Rename it, mark it as experimental.
* docs: misc #24163Justin M. Keyes2024-04-30
| | | | | | | | | | - Also delete old perl scripts which are not used since 8+ years ago. fix #23251 fix #27367 ref https://github.com/neovim/neovim/issues/2252#issuecomment-1902662577 Helped-by: Daniel Kongsgaard <dakongsgaard@gmail.com> Co-authored-by: Kevin Pham <keevan.pham@gmail.com>
* test(old): restore default 'grepprg' and 'grepformat' (#28574)zeertzjq2024-04-30
| | | This prevents test failure when "rg" is executable.
* docs: various fixes (#28208)dundargoc2024-04-30
| | | | | | | | | | Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com> Co-authored-by: Famiu Haque <famiuhaque@proton.me> Co-authored-by: Gregory Anders <greg@gpanders.com> Co-authored-by: Guilherme Soares <guilhermesoares1970@gmail.com> Co-authored-by: Jannik Buhr <jannik.m.buhr@gmail.com> Co-authored-by: thomaswuhoileong <72001875+thomaswuhoileong@users.noreply.github.com> Co-authored-by: tom-anders <13141438+tom-anders@users.noreply.github.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>