aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* feat(diagnostic): add support for tagsLewis Russell2023-03-30
| | | | | | The LSP spec supports two tags that can be added to diagnostics: unnecessary and deprecated. Extend vim.diagnostic to be able to handle these.
* Merge pull request #22791 from lewis6991/refactor/loadermiscLewis Russell2023-03-30
|\ | | | | refactor(loader): changes
| * refactor(loader): simplify tracking logicLewis Russell2023-03-26
| |
| * feat(vim.fs): improve normalizeLewis Russell2023-03-26
| | | | | | | | | | | | - Add options argument with an option to expand env vars - Resolve '//' -> '/' - Use in vim.loader
| * refactor(loader): add typing for package.loadersLewis Russell2023-03-26
| |
| * refactor(loader): remove BufWritePost autocmdLewis Russell2023-03-26
| |
| * refactor(loader): use vim.fsLewis Russell2023-03-26
| |
* | fix(autocmd): handle recursion for force set (#22820)Lewis Russell2023-03-30
| |
* | feat: add `vim.treesitter.language.get_filetypes()` (#22643)Lewis Russell2023-03-30
| |
* | fix(filetype): avoid recursive FileType autocmds (#22813)Lewis Russell2023-03-29
| |
* | build(deps): switch to Launchpad for libvterm and libtermkey (#22811)Christian Clason2023-03-29
| | | | | | | | | | | | Problem: www.leonerd.org.uk is sometimes unreachable Solution: switch to Launchpad URLs for libvterm (official page) and libtermkey (source mirror for Ubuntu package)
* | vim-patch:9.0.1430: Livebook files are not recognized (#22808)Christian Clason2023-03-29
| | | | | | | | | | | | | | | | | | Problem: Livebook files are not recognized. Solution: Add a pattern for Livebook files. (Mathias Jean Johansen, closes vim/vim#12203) https://github.com/vim/vim/commit/64002035178ac3e0d9ab7269d1bf06c6ede5a854 Co-authored-by: Mathias Jean Johansen <mathias@mjj.io>
* | fix(api): Use local LastSet structure in nvim_get_option_info (#22741)Michal Liszcz2023-03-29
| | | | | | | | | | | | | | | | | | | | fix(api): use local LastSet structure in nvim_get_option_info * nvim_get_option_info is deprecated. It is always using the global LastSet information as reported in #15232. * nvim_get_option_info2 is added. The new function additionally accepts an 'opts' table {scope, buf, win} allowing to specify the option scope and query local options from another buffer or window.
* | Merge pull request #22759 from dundargoc/build/wintoolsdundargoc2023-03-28
|\ \
| * | build: download wintools executables separatelydundargoc2023-03-28
| | | | | | | | | | | | | | | | | | | | | The wintools executables are stored in a zip file, making it inconvenient to bump these during releases. Instead, unpack the executables in the deps repository and download each executable separately.
| * | build: drop curl.exe on Windowsdundargoc2023-03-28
|/ / | | | | | | | | Curl is already shipped by default on Windows 10 starting from versions 1803. As we already require version 1809 we can safely remove it.
* / vim-patch:9.0.1429: invalid memory access when ending insert mode (#22792)zeertzjq2023-03-27
|/ | | | | | | | Problem: Invalid memory access when ending insert mode. Solution: Check if the insert_skip value is valid. https://github.com/vim/vim/commit/1a08a3e2a584889f19b84a27672134649b73da58 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* feat(lua): add `vim.loader`Folke Lemaitre2023-03-26
| | | feat: new faster lua loader using byte-compilation
* test: fix flaky watchfiles tests (#22637)Jon Huhn2023-03-26
|
* test: use exec_capture() in more places (#22787)zeertzjq2023-03-26
| | | | | | | Problem: Using `meths.exec2("code", { output = true })` is too verbose. Solution: Use exec_capture() in more places.
* vim-patch:9.0.1428: cursor in wrong position when leaving insert mode (#22786)zeertzjq2023-03-26
| | | | | | | | | Problem: Cursor in wrong position when leaving insert mode. Solution: Update the w_valid flags. Position the cursor also when not redrawing. (closes vim/vim#12137) https://github.com/vim/vim/commit/c174c2e58c9e24a75b189e01143e6d057b84e96e Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix: snprintf buffer overflow detected by -D_FORTIFY_SOURCE=3 (#22780)Andreas Schneider2023-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Wrong buffer size argument passed to snprintf() in set_cmdarg(): Thread no. 1 (24 frames) #8 snprintf at /usr/include/bits/stdio2.h:54 #9 set_cmdarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7044 #10 apply_autocmds_group at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1843 #11 apply_autocmds_exarg at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/autocmd.c:1549 #12 readfile at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:617 #13 buf_reload at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:5038 #14 buf_check_timestamp at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4952 #15 check_timestamps at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/fileio.c:4678 #16 ex_checktime at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_cmds2.c:765 #17 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 #18 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 #19 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 #20 ex_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/eval.c:7727 #21 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1620 #22 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 #23 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 #24 do_ucmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/usercmd.c:1661 #25 execute_cmd0 at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:1612 #26 do_one_cmd at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:2275 #27 do_cmdline at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/ex_docmd.c:584 #28 nv_colon at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:4058 #29 normal_execute at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:1172 #30 state_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/state.c:88 #31 normal_enter at /usr/src/debug/neovim-0.8.2-2.fc38.x86_64/src/nvim/normal.c:471 Solution: Subtract the offset from the buffer size. Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
* Merge pull request #22762 from bfredl/hl2ctermbfredl2023-03-25
|\ | | | | fix(api): make nvim_get_hl return 'cterm' attrs properly
| * fix(api): make nvim_get_hl return 'cterm' attrs properlybfredl2023-03-23
| |
* | feat(api): nvim_exec2(), deprecate nvim_exec() #19032Evgeni Chasnovski2023-03-25
| | | | | | | | | | | | | | Problem: The signature of nvim_exec() is not extensible per ":help api-contract". Solution: Introduce nvim_exec2() and deprecate nvim_exec().
* | feat(lsp): render markdown in docs hover #22766Roberto Pommella Alegro2023-03-25
| | | | | | | | | | | | | | | | | | | | | | Problem: LSP docs hover (textDocument/hover) doesn't handle HTML escape seqs in markdown. Solution: Convert common HTML escape seqs to a nicer form, to display in the float. closees #22757 Signed-off-by: Kasama <robertoaall@gmail.com>
* | docs(test): using cmake directly (without make) #22781dundargoc2023-03-25
| |
* | docs: how to debug TUI using gdb/lldb #22771Ryan Jenkins2023-03-25
| | | | | | docs: Add info to the `Debug: TUI` docs about gdb/lldb usage
* | fix(lsp): add missing silent check in lsp hover handler (#22763)Micah Halter2023-03-25
| | | | | | Fixup to #21531.
* | docs: more details about vim.region (#21116)Jakub Łuczyński2023-03-25
| |
* | refactor(PVS/V1048): remove duplicated assignments (#21873)Lucas Merritt2023-03-25
| |
* | vim-patch:9.0.1426: indent wrong after "export namespace" in C++ (#22777)zeertzjq2023-03-25
| | | | | | | | | | | | | | | | | | Problem: Indent wrong after "export namespace" in C++. Solution: Skip over "inline" and "export" in any order. (Virginia Senioria, closes vim/vim#12134, closes vim/vim#12133) https://github.com/vim/vim/commit/99e4ab2a1e577ddb29030c09c308b67e16fd51c4 Co-authored-by: Virginia Senioria <91khr@users.noreply.github.com>
* | fix(treesitter): add missing deprecateLewis Russell2023-03-24
| |
* | feat(treesitter)!: deprecate top level indexes to modules (#22761)Lewis Russell2023-03-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following top level Treesitter functions have been moved: - vim.treesitter.inspect_language() -> vim.treesitter.language.inspect() - vim.treesitter.get_query_files() -> vim.treesitter.query.get_files() - vim.treesitter.set_query() -> vim.treesitter.query.set() - vim.treesitter.query.set_query() -> vim.treesitter.query.set() - vim.treesitter.get_query() -> vim.treesitter.query.get() - vim.treesitter.query.get_query() -> vim.treesitter.query.get() - vim.treesitter.parse_query() -> vim.treesitter.query.parse() - vim.treesitter.query.parse_query() -> vim.treesitter.query.parse() - vim.treesitter.add_predicate() -> vim.treesitter.query.add_predicate() - vim.treesitter.add_directive() -> vim.treesitter.query.add_directive() - vim.treesitter.list_predicates() -> vim.treesitter.query.list_predicates() - vim.treesitter.list_directives() -> vim.treesitter.query.list_directives() - vim.treesitter.query.get_range() -> vim.treesitter.get_range() - vim.treesitter.query.get_node_text() -> vim.treesitter.get_node_text()
* | vim-patch:9.0.1425: "wat" and "wast" files are one filetype (#22774)Christian Clason2023-03-24
| | | | | | | | | | | | | | | | | | Problem: "wat" and "wast" files are one filetype. Solution: Add a separate filetype for "wat" files. (Amaan Qureshi, closes vim/vim#12165) https://github.com/vim/vim/commit/3ea62381c527395ae701715335776f427d22eb7b Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
* | build: set CMAKE_C_STANDARD to 99 for all dependenciesdundargoc2023-03-24
| | | | | | | | | | | | | | Older gcc versions (4.x) require passing --std=c99 compiler flag to prevent warnings from being emitted. Instead of setting it for each dependency, it's easier to just pass the CMAKE_C_STANDARD flag to all dependencies. This also prevents the scenario of us forgetting to set it if we add new dependencies.
* | ci: use "ci" as the commit type for dependabot updatesdundargoc2023-03-24
| |
* | build(deps): bump actions/stale from 7 to 8dependabot[bot]2023-03-23
| | | | | | | | | | | | Bumps [actions/stale](https://github.com/actions/stale) from 7 to 8. - [Release notes](https://github.com/actions/stale/releases) - [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/stale/compare/v7...v8)
* | ci(labeler): don't automatically add "lua" label (#22765)zeertzjq2023-03-23
| | | | | | | | | | The labeler adds "lua" label to too many files. When there is already a "treesitter" or "lsp" label, a "lua" label isn't useful. Instead it's better to add the label manually to PRs for general Lua support.
* | build(win): export extern symbols for use in FFI #22756luukvbaal2023-03-23
| | | | | | | | | | Makes `extern` variables accessible through ffi on Windows. Follow-up to https://github.com/neovim/neovim/pull/15999
* | fix(treesitter): annotationsLewis Russell2023-03-23
|/ | | | | | - Begin using `@package` in place of `@private` for functions that are accessed internally but outside their defined class. - Rename Node -> TSP.Node
* feat(api): add nvim_get_hl (#22693)Null Chilly2023-03-23
| | | | | Problem: no way of getting all highlight group definitions in a namespace. Solution: add `nvim_get_hl()`, deprecate `nvim_get_hl_by_name()` and `nvim_get_hl_by_id()`.
* fix(lsp): Jump to tag locations reliably when :ltag is used (#22750)meredith2023-03-23
|
* Merge #22736 from justinmk/gsplitJustin M. Keyes2023-03-22
|\ | | | | feat(vim.gsplit): gain features of vim.split
| * refactor(vim.gsplit): remove "keepsep"Justin M. Keyes2023-03-22
| | | | | | | | string.gmatch() is superior, use that instead.
| * fix(vim.version): prerelease compareJustin M. Keyes2023-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: semver specifies that digit sequences in a prerelease string should be compared as numbers, not lexically: https://semver.org/#spec-item-11 > Precedence for two pre-release versions with the same major, minor, > and patch version MUST be determined by comparing each dot separated > identifier from left to right until a difference is found as follows: > 1. Identifiers consisting of only digits are compared numerically. > 2. Identifiers with letters or hyphens are compared lexically in ASCII sort order. > 3. Numeric identifiers always have lower precedence than non-numeric identifiers. > 4. A larger set of pre-release fields has a higher precedence than a smaller set, if all of the preceding identifiers are equal. Example: 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11 < 1.0.0-rc.1 < 1.0.0. Solution: cmp_prerel() treats all digit sequences in a prerelease string as numbers. This doesn't _exactly_ match the spec, which specifies that only dot-delimited digit sequences should be treated as numbers...
| * feat(vim.gsplit): gain features of vim.splitJustin M. Keyes2023-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: - vim.split has more features than vim.gsplit. - Cannot inspect the "separator" segments of vim.split or vim.gsplit. Solution: - Move common implementation from vim.split into vim.gsplit. - TODO: deprecate vim.split in favor of vim.totable(vim.gsplit())? - Introduce `keepsep` parameter. Related: 84f66909e4008a57da947f1640bfc24da5e41a72
* | fix(api): vim.filetype.get_option() (#22753)Lewis Russell2023-03-22
|/ | | | - Fix a bug in the cache - Set some buffer options on the dummy buffer
* refactor: do more in TRY_WRAPLewis Russell2023-03-22
|
* Merge pull request #22743 from bfredl/luaequalsbfredl2023-03-22
|\ | | | | feat(lua): allow `:=expr` as a shorter version of `:lua =expr`