aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
...
* | fix(lsp): reduce diagnostics and add more types (#23948)Lewis Russell2023-06-07
| |
* | feat(scripts): add lsp_types.lua (#23750)max3975742023-06-07
| |
* | refactor(defaults): do not use C specific default values for options (#22500)Gregory Anders2023-06-06
| | | | | | | | | | | | | | | | | | | | The options 'path', 'include', and 'define' all use C-specific default values. This may have made sense a long time ago when Vim was mostly used just for writing C, but this is no longer the case, and we have ample support for filetype specific configuration. Make the default values of these options empty and move the C-specific values into a filetype plugin where they belong. Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* | feat(health): fold successful healthchecks #22866Alexandre Teoi2023-06-06
| | | | | | | | | | | | | | | | Problem: checkhealth can be noisy, but we don't want to omit info. Solution: Fold OK results by default, if 'foldenable' is enabled. Resolves #22796
* | refactor!: rename "playground" => "dev" #23919Justin M. Keyes2023-06-06
| | | | | | | | | | | | | | | | | | | | | | | | Problem: "playground" is new jargon that overlaps with existing concepts: "dev" (`:help dev`) and "view" (also "scratch" `:help scratch-buffer`) . Solution: We should consistently use "dev" as the namespace for where "developer tools" live. For purposes of a "throwaway sandbox object", we can use the name "view". - Rename `TSPlayground` => `TSView` - Rename `playground.lua` => `dev.lua`
* | fix: version-range < and <= #23539Gianmaria Bajo2023-06-06
|/ | | | | | | | | vim.version.range() couldn't parse them correctly. For example, vim.version.range('<0.9.0'):has('0.9.0') returned `true`. fix: range:has() accepts vim.version() So that it's possible to compare a range with: vim.version.range(spec):has(vim.version())
* fix(editorconfig): check that buffer is valid (#23922)Gregory Anders2023-06-05
| | | Fixes: https://github.com/neovim/neovim/issues/23921
* fix(lsp): use only utf-16 in default client positionEncodings (#23903)Gregory Anders2023-06-05
| | | | The Nvim client does not yet support multiple offset encodings for clients in the same buffer. Until it does, stick to utf-16 by default.
* defaults: shortmess+=C #23907Justin M. Keyes2023-06-05
| | | | | | | | | Problem: Completion messages such as "scanning tags" are noisy and generally not useful on most systems. Most users probably aren't aware that this is configurable. Solution: Set `shortmess+=C`.
* refactor(lsp): use LPeg for watchfiles matching (#23788)Jon Huhn2023-06-05
|
* fix(lsp): set extra info only when it has a value (#23868)Raphael2023-06-05
|
* fix(lsp): restore marks after apply_text_edits() #14630Folke Lemaitre2023-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | PROBLEM: Whenever any text edits are applied to the buffer, the `marks` part of those lines will be lost. This is mostly problematic for code formatters that format the whole buffer like `prettier`, `luafmt`, ... When doing atomic changes inside a vim doc, vim keeps track of those changes and can update the positions of marks accordingly, but in this case we have a whole doc that changed. There's no simple way to update the positions of all marks from the previous document state to the new document state. SOLUTION: * save marks right before `nvim_buf_set_lines` is called inside `apply_text_edits` * check if any marks were lost after doing `nvim_buf_set_lines` * restore those marks to the previous positions TEST CASE: * have a formatter enabled * open any file * create a couple of marks * indent the whole file to the right * save the file Before this change: all marks will be removed. After this change: they will be preserved. Fixes #14307
* fix(events)!: trigger CursorMoved later on switching window (#23711)zeertzjq2023-06-04
|
* feat(lsp): set kind in select call for codelens #23889Artyom Andreev2023-06-03
|
* vim-patch:9.0.1601: filetype detection fails for *.conf file without ↵Christian Clason2023-06-04
| | | | | | | | | | | | comments (#23896) Problem: Filetype detection fails for *.conf file without comments. (Dmitrii Tcyganok) Solution: Use "conf" filetype as a fallback for an empty .conf file. (closes vim/vim#12487, closes vim/vim#12483) https://github.com/vim/vim/commit/664fd12aa27a3c6bd19cfa474c4630d6c03fcc61 Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* perf(iter): make ListIter.totable more efficient (#23714)Lewis Russell2023-06-03
|
* feat(lua): rename vim.loop -> vim.uv (#22846)Lewis Russell2023-06-03
|
* docs(iter): add emmylua type to iter module (#23845)Sebastian Lyng Johansen2023-06-03
|
* docs: small fixes (#23619)dundargoc2023-06-02
| | | | | | Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com> Co-authored-by: Gustavo Ferreira <gustavo.ferreira@imaginecurve.com> Co-authored-by: Kai Moschcau <mail@kmoschcau.de> Co-authored-by: Lampros <hauahx@gmail.com>
* feat(:source): source current ft=lua buffer as Lua code (#23802)zeertzjq2023-06-02
|
* fix(health): stop job properly on timeout (#23877)zeertzjq2023-06-02
|
* feat(lsp): include positionEncodings in default client capabilitiesGregory Anders2023-06-01
|
* feat(lsp): set client offset_encoding if server supports positionEncodingGregory Anders2023-06-01
| | | | | | If the server sends the positionEncoding capability in its initialization response, automatically set the client's offset_encoding to use the value provided.
* fix(lsp): add param assert in client_is_stopped (#23857)Raphael2023-06-01
|
* feat(lsp)!: promote LspRequest to a full autocmd and enrich with additional ↵jdrouhard2023-05-30
| | | | | | | | | | | | | | | | | | | | | data (#23694) BREAKING CHANGE: LspRequest is no longer a User autocmd but is now a first class citizen. LspRequest as a User autocmd had limited functionality. Namely, the only thing you could do was use the notification to do a lookup on all the clients' requests tables to figure out what changed. Promoting the autocmd to a full autocmd lets us set the buffer the request was initiated on (so people can set buffer-local autocmds for listening to these events). Additionally, when used from Lua, we can pass additional metadata about the request along with the notification, including the client ID, the request ID, and the actual request object stored on the client's requests table. Users can now listen for these events and act on them proactively instead of polling all of the requests tables and looking for changes.
* fix(lsp): fix dynamic registration of code actions (#23826)Folke Lemaitre2023-05-30
|
* vim-patch:9.0.1591: some "gomod" files are not recognized (#23820)Omar El Halabi2023-05-30
| | | | | | | Problem: Some "gomod" files are not recognized. Solution: Check for "go.mod" file name before checking out the contents. (Omar El Halabi, closes vim/vim#12462) https://github.com/vim/vim/commit/c9fbd2560f24180d2efa40028ed68427341d2d99
* vim-patch:9.0.1587: Corn config files are not recognized (#23807)Christian Clason2023-05-29
| | | | | | | | Problem: Corn config files are not recognized. Solution: Add a pattern for Corn config files. (Jake Stanger, closes vim/vim#12449) https://github.com/vim/vim/commit/05843e89601c03389a2d7978e7e16aec641a3dc4 Co-authored-by: Jake Stanger <mail@jstanger.dev>
* fix(ftplugin): source Lua files after Vimscript files per directory (#23801)Christian Clason2023-05-28
| | | | | | Problem: Lua ftplugins in runtime take precedence over Vimscript ftplugins in user configs (even in `after/`). Solution: Source ftplugins separately per directory, first Vimscript then Lua.
* vim-patch:9.0.1584: not all meson files are recognized (#23797)Christian Clason2023-05-28
| | | | | | | | Problem: Not all meson files are recognized. Solution: Add "meson.options". (Liam Beguin, closes vim/vim#12444) https://github.com/vim/vim/commit/1ba0b9e36f36926a7675b31efeda7d3e495c9157 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* feat(lsp): initial support for dynamic capabilities (#23681)Folke Lemaitre2023-05-28
| | | | | | | | | | | | - `client.dynamic_capabilities` is an object that tracks client register/unregister - `client.supports_method` will additionally check if a dynamic capability supports the method, taking document filters into account. But only if the client enabled `dynamicRegistration` for the capability - updated the default client capabilities to include dynamicRegistration for: - formatting - rangeFormatting - hover - codeAction - hover - rename
* test(extmarks): add test for virt_text_hide with 'smoothscroll' (#23791)zeertzjq2023-05-28
|
* fix: function was renamed (#23772)Matthieu Coudron2023-05-26
|
* vim-patch:9.0.1580: CI: indent test hangs on FreeBSD (#23768)zeertzjq2023-05-26
| | | | | | | | | Problem: CI: indent test hangs on FreeBSD. Solution: Set 'nomore' when running the indent tests. (Ozaki Kiichi, closes vim/vim#12446) https://github.com/vim/vim/commit/9f3afe7a70d50447424b8d7404aae0d641cd827c Co-authored-by: ichizok <gclient.gaap@gmail.com>
* feat(term): enable reflow by default (#21124)Christian Clason2023-05-24
| | | | | | | | | libvterm v0.3 supports reflow of terminal buffer when Nvim is resized Since v0.3 is now a required dependency, enable it by default to find (and fix) possible issues. Note: Neovim's scrollback buffer does not support reflow (yet), so lines vanishing into the buffer due to a too small window will be restored without reflow.
* docs: update api.txt and add inline virtual text to news.txttom-anders2023-05-22
|
* Merge pull request #23670 from famiu/refactor/deprecate_opt_apibfredl2023-05-21
|\ | | | | refactor(options): deprecate nvim[_buf|_win]_[gs]et_option
| * refactor(options): deprecate nvim[_buf|_win]_[gs]et_optionLewis Russell2023-05-21
| | | | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: famiu <famiuhaque@protonmail.com>
* | fix(treesitter): update highlights for query (#23699)Christian Clason2023-05-21
| | | | | | captures for `; extends` and `; inherits`
* | docs(luv): update to HEADChristian Clason2023-05-21
|/
* feat(fs): expose join_paths as `vim.fs.joinpath` (#23685)Christian Clason2023-05-20
| | | This is a small function but used a lot in some plugins.
* fix(lsp): don't register didChangeWatchedFiles when capability not set (#23689)Jon Huhn2023-05-20
| | | | | | | Some LSP servers (tailwindcss, rome) are known to request registration for `workspace/didChangeWatchedFiles` even when the corresponding client capability does not advertise support. This change adds an extra check in the `client/registerCapability` handler not to start a watch unless the client capability is set appropriately.
* vim-patch:9.0.1565: json lines files are not recognized (#23677)Christian Clason2023-05-19
| | | | | | | | Problem: Json lines files are not recognized. Solution: Add a pattern to detect "jsonl" files. (issue vim/vim#7520) https://github.com/vim/vim/commit/6fadbc1e8c1f4c5b03eb6a78aeb023ca2c2a9a7d Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(treesitter): allow foldexpr without highlights (#23672)Lewis Russell2023-05-18
| | | Ref nvim-treesitter/nvim-treesitter#4748
* feat(treesitter): improved logging (#23638)Lewis Russell2023-05-17
| | | | | | - Add bindings to Treesitter ts_parser_set_logger and ts_parser_logger - Add logfile with path STDPATH('log')/treesitter.c - Rework existing LanguageTree loggin to use logfile - Begin implementing log levels for vim.g.__ts_debug
* fix(treesitter): correctly calculate bytes for text sources (#23655)Lewis Russell2023-05-16
| | | Fixes #20419
* fix(treesitter): update c queriesChristian Clason2023-05-15
|
* fix(treesitter): update vimdoc and vimscript queriesChristian Clason2023-05-15
|
* build(deps): update lua parser and queriesChristian Clason2023-05-15
|
* vim-patch:b7398fe41c9e (#23627)Christian Clason2023-05-15
| | | | | | | Update runtime files https://github.com/vim/vim/commit/b7398fe41c9e1e731d058105a34158871ee83e3f Co-authored-by: Bram Moolenaar <Bram@vim.org>