aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
* docs(treesitter): fix doxygenzeertzjq2022-09-08
|
* fix(options): mark `winhighlight` as list style (#19477)ii142022-09-07
| | | | | Also add missing fcs, lcs and winhighlight to list of key-value options for `vim.opt`. Co-authored-by: ii14 <ii14@users.noreply.github.com>
* vim-patch:9.0.0402: javascript module files are not recoginzed (#20108)Christian Clason2022-09-07
| | | | | | Problem: Javascript module files are not recoginzed. Solution: Recognize "*.jsm" files as Javascript. (Brett Holman, closes vim/vim#11069) https://github.com/vim/vim/commit/bb6c4073e79e86ef69c315338e00c12f0d8d6395
* Use weak tables in tree-sitter code (#17117)Thomas Vigouroux2022-09-07
| | | | | | feat(treesitter): use weak tables when possible Also add the defaulttable function to create a table whose values are created when a key is missing.
* fix(diagnostic): remove buf from cache on `BufWipeout` (#20099)Sean Dewar2022-09-06
| | | | | | | | | | | | | | Doing so on `BufDelete` has issues: - `BufDelete` is also fired for listed buffers that are made unlisted. - `BufDelete` is not fired for unlisted buffers that are deleted. This means that diagnostics will be lost for a buffer that becomes unlisted. It also means that if an entry exists for an unlisted buffer, deleting that buffer later will not remove its entry from the cache (and you may see "Invalid buffer id" errors when using diagnostic functions if it was wiped). Instead, remove a buffer from the cache if it is wiped out. This means simply `:bd`ing a buffer will not clear its diagnostics now.
* fix(ts): do not clobber spelloptions (#20095)Lewis Russell2022-09-06
|
* fix(treesitter): don't support legacy syntax in start()Christian Clason2022-09-06
|
* feat(extmarks,ts,spell): full support for spellingThomas Vigouroux2022-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Added 'spell' option to extmarks: Extmarks with this set will have the region spellchecked. - Added 'noplainbuffer' option to 'spelloptions': This is used to tell Neovim not to spellcheck the buffer. The old behaviour was to spell check the whole buffer unless :syntax was set. - Added spelling support to the treesitter highlighter: @spell captures in highlights.scm are used to define regions which should be spell checked. - Added support for navigating spell errors for extmarks: Works for both ephemeral and static extmarks - Added '_on_spell_nav' callback for decoration providers: Since ephemeral callbacks are only drawn for the visible screen, providers must implement this callback to instruct Neovim which regions in the buffer need can be spell checked. The callback takes a start position and an end position. Note: this callback is subject to change hence the _ prefix. - Added spell captures for built-in support languages Co-authored-by: Lewis Russell <lewis6991@gmail.com> Co-authored-by: Björn Linse <bjorn.linse@gmail.com>
* Merge pull request #20039 from zeertzjq/cmod-tabbfredl2022-09-06
|\ | | | | fix(api)!: correctly deal with number before :tab
| * fix(api)!: correctly deal with number before :tabzeertzjq2022-09-02
| | | | | | | | | | | | Now nvim_parse_cmd and nvim_create_user_command use a "tab" value which is the same as the number passed before :tab modifier instead of the number plus 1, and "tab" value is -1 if :tab modifier is not used.
* | Merge pull request #15391 from vigoux/ts-lua-builtinbfredl2022-09-06
|\ \ | | | | | | feat(treesitter): highlighting for core languages, enabled for Lua
| * | feat(treesitter): add vim.treesitter.start(), enable for LuaChristian Clason2022-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add vim.treesitter.start() for starting treesitter highlighting via ftplugin or autocommand (can be extended later for fold, indent, matchpairs, ...) * Add vim.treesitter.stop() for manually stopping treesitter highlighting * Enable treesitter highlighting for Lua if `vim.g.ts_highlight_lua = true` is set in `init.lua`
| * | feat(treesitter): add injectionsChristian Clason2022-09-06
| | |
| * | feat(treesitter): add viml parser and queriesChristian Clason2022-09-06
| | |
| * | feat(treesitter): bundle Lua parser and queriesThomas Vigouroux2022-09-06
| | | | | | | | | | | | | | | parser from https://github.com/MunifTanjim/tree-sitter-lua queries from nvim-treesitter
* | | vim-patch:partial 0daafaa7d99e (#20083)Christian Clason2022-09-06
| | | | | | | | | | | | | | | | | | | | | Update runtime files https://github.com/vim/vim/commit/0daafaa7d99ef500f76b1b12f5fe8153e2fcaea0 skip vim9script ftplugin create userfunc.txt from Neovim content (skip section 3, needs 9.0.0379)
* | | feat(api): add "move" to nvim_input_mousezeertzjq2022-09-04
| | |
* | | feat(tui): support 'mousemoveevent'zeertzjq2022-09-04
| | |
* | | feat(ui-ext): make 'mousemoveevent' a ui_optionzeertzjq2022-09-04
| | |
* | | vim-patch:8.2.4674: cannot force getting MouseMove eventszeertzjq2022-09-04
|/ / | | | | | | | | | | | | | | | | | | Problem: Cannot force getting MouseMove events. Solution: Add the 'mousemoveevent' option with implementaiton for the GUI. (Ernie Rael, closes vim/vim#10044) https://github.com/vim/vim/commit/c4cb544cd5beaa864b3893e4b8d0085393c7dbce This only ports the docs and the option variable. The following commits will actually implement it as a UI option.
* | vim-patch:088e8e344352zeertzjq2022-09-04
| | | | | | | | | | | | | | Update runtime files. https://github.com/vim/vim/commit/088e8e3443520dec91a384081e66445a104810bb Also cherry-pick "partial" tag from a later runtime update.
* | vim-patch:7.4.{1578,1624}zeertzjq2022-09-04
| | | | | | | | | | https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7 https://github.com/vim/vim/commit/03602ec28ed25739e88b2c835adb0662d3720bb2
* | fix(filetype): run filetype.match on StdinReadPost (#20070)Christian Clason2022-09-03
|/ | | | | | | | | | | | | Problem: filetype detection does not run on piped input Solution: add `StdinReadPost` to main filetype.lua autocommand Rationale: legacy filetype detection checked contents by sourcing `scripts.vim` in separate autocommands, including on `StdinReadPost`. For Lua filetype detection, this was moved into the main autocommand, with bundled `scripts.vim` gated behind `g:do_legacy_filetype` (i.e., only user `scripts.vim` are sourced for compatibility by default). Adding `StdinReadPost` to the main autocommand again runs content checks on piped input without requiring code duplication and low-payoff refactoring.
* feat(Man): port to Lua (#19912)Lewis Russell2022-09-02
| | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* vim-patch:9.0.0349: filetype of *.sil files not well detected (#20050)Jonas Strittmatter2022-09-02
| | | | | Problem: Filetype of *.sil files not well detected. Solution: Inspect the file contents to guess the filetype. https://github.com/vim/vim/commit/be807d582499acbe314ead3891481cba6ca136df
* feat(api): add support for :horizontal modifierzeertzjq2022-09-01
|
* vim-patch:9.0.0346: :horizontal modifier not fully supportedzeertzjq2022-09-01
| | | | | | | Problem: :horizontal modifier not fully supported. Solution: Also use :horizontal for completion and user commands. (closes vim/vim#11025) https://github.com/vim/vim/commit/d3de178e5352fedf0f30b979f46a2fcbca24ea40
* vim-patch:9.0.0342: ":wincmd =" equalizes in two directionszeertzjq2022-09-01
| | | | | | | Problem: ":wincmd =" equalizes in two directions. Solution: Make ":vertical wincmd =" equalize vertically only and ":horizontal wincmd =" equalize horizontally only. https://github.com/vim/vim/commit/21c3a80a7fd6b7fc250ce5dc287963511f54b86f
* feat(mapset): support restoring Lua callback (#20024)zeertzjq2022-09-01
| | | | | | | vim-patch:9.0.0341: mapset() does not restore <Nop> mapping properly Problem: mapset() does not restore <Nop> mapping properly. Solution: Use an empty string for <Nop>. (closes vim/vim#11022) https://github.com/vim/vim/commit/92a3d20682d46359bb50a452b4f831659e799155
* feat(lua): vim.ui_attach to get ui events from luabfredl2022-08-31
| | | | Co-authored-by: Famiu Haque <famiuhaque@protonmail.com>
* vim-patch:9b03d3e75b42 (#20013)Christian Clason2022-08-31
| | | | Update runtime files https://github.com/vim/vim/commit/9b03d3e75b4274493bbe76772d7b92238791964c
* Vim 9.0.{0314,0319}: some filetypes are not recognized (#20005)Christian Clason2022-08-30
| | | | | | | | | | | | | * vim-patch:9.0.0314: VDM files are not recognized Problem: VDM files are not recognized. Solution: Add patterns for VDM files. (Alessandro Pezzoni, closes vim/vim#11004) https://github.com/vim/vim/commit/bf26941f40923d331169a4ecb7341608f5d1ca38 * vim-patch:9.0.0319: Godot shader files are not recognized Problem: Godot shader files are not recognized. Solution: Add patterns for "gdshader". (Maxim Kim, closes vim/vim#11006) https://github.com/vim/vim/commit/d5c8f11905abc1bdf3b8864dbc40187855ed9374
* docs(lua): present vim.o as default and vim.opt as special-purpose #19982Christian Clason2022-08-30
| | | | | Problem: People are confused about `vim.o` and `vim.opt` Solution: Clarify that `vim.o` is the default interface, with `vim.opt` specifically meant for interacting with list-style options.
* fix(docs): update lsp.rpc.start docs to match return value changes (#20003)Mathias Fußenegger2022-08-30
| | | Follow up to https://github.com/neovim/neovim/pull/19916
* docs(lsp): replace formatting_sync example in lsp-faq (#19994)Mathias Fußenegger2022-08-30
| | | `formatting_sync` is deprecated
* fix(lsp): clean the diagnostic cache when buffer delete (#19449)Raphael2022-08-29
| | | Co-authored-by: Gregory Anders <greg@gpanders.com>
* Merge pull request #19916 from mfussenegger/lsp-tcpMathias Fußenegger2022-08-29
|\ | | | | | | | | | | | | | | | | Adds TCP support for lsp. Usage example: ``` vim.lsp.start({ name = 'godot', cmd = vim.lsp.rpc.connect('127.0.0.1', 6008) }) ```
| * feat(lsp): add tcp supportMathias Fussenegger2022-08-28
| |
| * refactor(lsp): extract rpc client from rpc.startMathias Fussenegger2022-08-28
| | | | | | | | Makes the previously inner functions re-usable for a TCP client
| * refactor(lsp): encapsulate rpc uv handleMathias Fussenegger2022-08-28
| | | | | | | | | | To prepare for different transports like TCP where the handle won't have a kill method.
| * refactor(lsp): factor out read_loop functionMathias Fussenegger2022-08-28
| |
* | vim-patch:9.0.0285: it is not easy to change the command line from a plugin ↵Shougo2022-08-29
|/ | | | | | | | | | (#19979) vim-patch:9.0.0285: it is not easy to change the command line from a plugin Problem: It is not easy to change the command line from a plugin. Solution: Add setcmdline(). (Shougo Matsushita, closes vim/vim#10869) https://github.com/vim/vim/commit/07ea5f1509fe8dafe3262ed2702b4d0fc99e288b
* docs: fix typos (#19798)dundargoc2022-08-27
| | | | Co-authored-by: adrian5 <adrian5@users.noreply.github.com> Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
* vim-patch:9.0.0279: the tiny version has the popup menu but not 'wildmenu'zeertzjq2022-08-27
| | | | | | | | | | | | | | Problem: The tiny version has the popup menu but not 'wildmenu'. Solution: Graduate the wildmenu feature. https://github.com/vim/vim/commit/5416232707349d5f24294178f47544f2024b73ed N/A patches for version.c: vim-patch:9.0.0281: build failure without the +eval feature Problem: Build failure without the +eval feature. Solution: Add #ifdef. https://github.com/vim/vim/commit/58dcbf1c6586d3873702e035b47829178a91250e
* vim-patch:7dd543246a4c (#19960)Christian Clason2022-08-26
| | | | Update runtime files https://github.com/vim/vim/commit/7dd543246a4c21c4d5a4242a28076706f5abebd4
* Merge pull request #19931 from bfredl/scopedhlbfredl2022-08-26
|\ | | | | feat(highlight)!: use scoped @foo.bar.special groups for tree-sitter highlight
| * fix(treesitter): make it get_captures_at_positionbfredl2022-08-26
| |
| * feat(treesitter): upstream get_hl_groups_at_position()Quentin Rasmont2022-08-26
| | | | | | | | Util from the nvim-treesitter project.
| * feat(treesitter)!: use @foo.bar style highlight groupsbfredl2022-08-26
| | | | | | | | | | | | | | | | | | | | | | | | This removes the support for defining links via vim.treesitter.highlighter.hl_map (never documented, but plugins did anyway), or the uppercase-only `@FooGroup.Bar` to `FooGroup` rule. The fallback is now strictly `@foo.bar.lang` to `@foo.bar` to `@foo`, and casing is irrelevant (as it already was outside of treesitter) For compatibility, define default links to builting syntax groups as defined by pre-existing color schemes
* | refactor: change FALSE/TRUE to false/trueLewis Russell2022-08-26
| | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>