aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
...
* Merge #8519 feat: name, test ids, sockets in stdpath(state)Justin M. Keyes2022-06-17
|\
| * feat(server): instance "name", store pipes in stdpath(state)Justin M. Keyes2022-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: - Unix sockets are created in random /tmp dirs. - /tmp is messy, unclear when OSes actually clear it. - The generated paths are very ugly. This adds friction to reasoning about which paths belong to which Nvim instances. - No way to provide a human-friendly way to identify Nvim instances in logs or server addresses. Solution: - Store unix sockets in stdpath('state') - Allow --listen "name" and serverstart("name") to given a name (which is appended to a generated path). TODO: - is stdpath(state) the right place?
* | fix(treesitter): new iter if foldedkevinhwang912022-06-16
| |
* | vim-patch:8.2.5110: icon filetype not recognized from the first line (#18987)Christian Clason2022-06-16
| | | | | | | | | | Problem: Icon filetype not recognized from the first line. Solution: Add a check for the first line. (Doug Kearns) https://github.com/vim/vim/commit/bf6614643f656d38d220c04befdcb1d35774853a
* | fix(lua): highlight.on_yank can close timer in twice #18976notomo2022-06-15
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Steps to reproduce: 1. setting `vim.highlight.on_yank` ``` vim.api.nvim_create_autocmd({ "TextYankPost" }, { pattern = { "*" }, callback = function() vim.highlight.on_yank({ timeout = 200 }) end, }) ``` 2. repeat typing `yeye` ... 3. causes the following error. ``` Error executing vim.schedule lua callback: vim/_editor.lua:0: handle 0x01e96970 is already closing stack traceback: [C]: in function 'close' vim/_editor.lua: in function '' vim/_editor.lua: in function <vim/_editor.lua:0> ``` 📝 Test result before fix: [----------] Global test environment setup. [----------] Running tests from test/functional/lua/highlight_spec.lua [ RUN ] vim.highlight.on_yank does not show errors even if buffer is wiped before timeout: 15.07 ms OK [ RUN ] vim.highlight.on_yank does not show errors even if executed between timeout and clearing highlight: 15.07 ms ERR test/helpers.lua:73: Expected objects to be the same. Passed in: (string) 'Error executing vim.schedule lua callback: vim/_editor.lua:0: handle 0x02025260 is already closing stack traceback: [C]: in function 'close' vim/_editor.lua: in function '' vim/_editor.lua: in function <vim/_editor.lua:0>' Expected: (string) ''
* vim-patch:8c1b8cb2e0b5 (#18966)Christian Clason2022-06-15
| | | | Update runtime files https://github.com/vim/vim/commit/8c1b8cb2e0b52d0853f85c2096a2f22dbc57a788
* docs: fix typos (#18866)dundargoc2022-06-15
| | | | | | | docs: fix typos and similarly insignificant changes Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: smjonas <jonas.strittmatter@gmx.de> Co-authored-by: kanreki <32443233+kanreki@users.noreply.github.com>
* vim-patch:6ba83ba9ee29 (#18948)Christian Clason2022-06-14
| | | | Update runtime files. https://github.com/vim/vim/commit/6ba83ba9ee292f68aa0b218b3eef42db31c0b632
* feat(lsp): sort codelens if multiple item per line (#18951)rhcher2022-06-13
|
* feat: cmdheight=0 #16251Shougo2022-06-13
| | | | | | | | | Fix https://github.com/neovim/neovim/issues/1004 Limitation: All outputs need hit-enter prompt. Related: https://github.com/neovim/neovim/pull/6732 https://github.com/neovim/neovim/pull/4382
* refactor(api): update vimdocbfredl2022-06-12
|
* vim-patch:partial:63f32603789d (#18916)Christian Clason2022-06-10
| | | | | | | Update runtime files https://github.com/vim/vim/commit/63f32603789d1a27c559fc440325955fd0b8b500 skip translations skip user manual rewrite
* feat(filetype): remove side effects from vim.filetype.match (#18894)Gregory Anders2022-06-09
| | | | | | | | Many filetypes from filetype.vim set buffer-local variables, meaning vim.filetype.match cannot be used without side effects. Instead of setting these buffer-local variables in the filetype detection functions themselves, have vim.filetype.match return an optional function value that, when called, sets these variables. This allows vim.filetype.match to work without side effects.
* vim-patch:8.2.5066: lcs-leadmultispacezeertzjq2022-06-09
| | | | https://github.com/vim/vim/commit/aca12fd89b082dd9cc12ae085a84f1805747bbdf
* feat(autocmds): retrieve lua callback (#18642)kylo2522022-06-09
| | | add a new `callback` field to `nvim_get_autocmds`
* fix(diagnostic): check for negative column value (#18868)mohsen2022-06-08
|
* fix(eval/f_getmatches): return empty list for invalid win argument (#18893)Sean Dewar2022-06-07
| | | | | Slight inaccuracy in v8.1.1084's port. Like Vim, it should return [], not 0. Ref #18890
* vim-patch:partial:016188fd8a30 (#18890)Christian Clason2022-06-07
| | | | | | | Update runtime files. https://github.com/vim/vim/commit/016188fd8a30cfbaca3faa0daea9a47138dc5c4b omit changes from doc/builtin.txt (needs 8.2.1536, 8.2.4981) skip user manual rewrite for Vim9script
* refactor(runtime): port remaining patterns from filetype.vim to filetype.lua ↵Jonas Strittmatter2022-06-06
| | | | (#18814)
* docs: documenting struct members inline #18783Javier Lopez2022-06-06
| | | | | | | | Without the proper comments, doxygen doesn't understand the comment belongs to the struct member: https://www.doxygen.nl/manual/docblocks.html#memberdoc [skip ci]
* fix(lsp): fix multi client handling in code action (#18869)Mathias Fußenegger2022-06-05
| | | Fixes https://github.com/neovim/neovim/issues/18860
* Merge pull request #18864 from bfredl/optcutbfredl2022-06-05
|\ | | | | perf(tests): don't invoke nvim_get_all_options_info until needed
| * perf(tests): don't invoke nvim_get_all_options_info until neededbfredl2022-06-05
| | | | | | | | | | This call alone is responible of 40 000 000 out of 80 000 000 individual alloc/free calls in the test suite.
* | fix(startup): nvim with --clean should not load user rpluginsbfredl2022-06-04
|/ | | | | runtime rplugins such like legacy script providers are not affected by this change.
* vim-patch:partial:cfa8f9a3f285 (#18858)Christian Clason2022-06-04
| | | | | | | | Update runtime files https://github.com/vim/vim/commit/cfa8f9a3f285060152ebbdbf86fbc7aecf1dd756 skip syntax/vim.vim (needs 8.2.4770) skip doc/syntax.vim (needs several colorscheme patches) skip further rewrite of manual
* fix(lsp): set buflisted before switching to buffer (#18854)zeertzjq2022-06-04
|
* vim-patch:8.2.5054: no good filetype for conf files similar to dosini (#18851)Christian Clason2022-06-04
| | | | | Problem: No good filetype for conf files similar to dosini. Solution: Add the confini filetype. (closes vim/vim#10510) https://github.com/vim/vim/commit/635f48010dcf6d97f3a65b4785e1726ad386d3eb
* docs: fix typos (#18269)dundargoc2022-06-04
| | | | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: Dan Sully <dan+github@sully.org> Co-authored-by: saher <msaher.shair@gmail.com> Co-authored-by: Stephan Seitz <stephan.seitz@fau.de> Co-authored-by: Benedikt Müller <d12bb@posteo.de> Co-authored-by: Andrey Mishchenko <mishchea@gmail.com> Co-authored-by: Famiu Haque <famiuhaque@protonmail.com> Co-authored-by: Oliver Marriott <hello@omarriott.com>
* fix(filetype): fix typo in starsetf function (#18856)Gregory Anders2022-06-03
|
* feat(lsp): send didChangeConfiguration after init (#18847)Mathias Fußenegger2022-06-03
| | | | | | | Most LSP servers require the notification to correctly load the settings and for those who don't it doesn't cause any harm. So far this is done in lspconfig, but with the addition of vim.lsp.start it should be part of core.
* feat(lsp): add a start function (#18631)Mathias Fußenegger2022-06-03
| | | | | | | | | | | | A alternative/subset of https://github.com/neovim/neovim/pull/18506 that should be forward compatible with a potential project system. Configuration of LSP clients (without lspconfig) now looks like this: vim.lsp.start({ name = 'my-server-name', cmd = {'name-of-language-server-executable'}, root_dir = vim.fs.dirname(vim.fs.find({'setup.py', 'pyproject.toml'}, { upward = true })[1]), })
* Merge pull request #18730 from bfredl/apiconvertbfredl2022-06-02
|\ | | | | convert API types using mpack instead of msgpack
| * refactor(api): use a unpacker based on libmpack instead of msgpack-cbfredl2022-06-02
| | | | | | | | | | | | | | | | | | | | Currently this is more or less a straight off reimplementation, but this allow further optimizations down the line, especially for avoiding memory allocations of rpc objects. Current score for "make functionaltest; make oldtest" on a -DEXITFREE build: is 117 055 352 xfree(ptr != NULL) calls (that's NUMBERWANG!).
* | fix(treesitter): correct region for string parser (#18794)Christian Clason2022-06-02
|/ | | fixes injections for string parsers after https://github.com/neovim/neovim/commit/eab4d03a3264b2afaf803ed839fa25bc4e7acedd
* fix(lua): stop pending highlight.on_yank timer, if any (#18824)Wsevolod2022-06-02
| | | | | When yanking another range while previous yank is still highlighted, the pending timer could clear the highlight almost immediately (especially when using larger `timeout`, i.e. 2000)
* fix(lsp): adjust offset encoding in lsp.buf.rename() (#18829)Fredrik Ekre2022-06-01
| | | | | | | | Fix a bug in lsp.buf.rename() where the range returned by the server in textDocument/prepareRename was interpreted as a byte range directly, instead of taking the negotiated offset encoding into account. This caused the placeholder value in vim.ui.input to be incorrect in some cases, for example when non-ascii characters are used earlier on the same line.
* fix(checkhealth): skip vim.health #18816Javier Lopez2022-06-01
| | | | | | | | | | | | | | | | | | Problem: https://github.com/neovim/neovim/pull/18720#issuecomment-1142614996 The vim.health module is detected as a healthcheck, which produces spurious errors: vim: require("vim.health").check() ======================================================================== - ERROR: Failed to run healthcheck for "vim" plugin. Exception: function health#check, line 20 Vim(eval):E5108: Error executing lua [string "luaeval()"]:1: attempt to call field 'check' (a nil value) stack traceback: [string "luaeval()"]:1: in main chunk Solution: Skip vim.health when discovering healthchecks.
* refactor: correct comments and assertions about mapping rhs <Nop> (#18821)zeertzjq2022-06-01
| | | | | | | | Also avoid referring to mappings as "keymaps" in commands and docs. *map_empty_rhs* *map-empty-rhs* You can create an empty {rhs} by typing nothing after a single CTRL-V (you have to type CTRL-V two times). Unfortunately, you cannot do this in a vimrc file.
* feat(fs): add vim.fs.normalize()Gregory Anders2022-05-31
|
* feat(fs): add vim.fs.find()Gregory Anders2022-05-31
| | | | | This is a pure Lua implementation of the Vim findfile() and finddir() functions without the special syntax.
* feat(fs): add vim.fs.dir()Gregory Anders2022-05-31
| | | | | This function is modeled after the path.dir() function from Penlight and the luafilesystem module.
* feat(fs): add vim.fs.basename()Gregory Anders2022-05-31
|
* feat(fs): add vim.fs.dirname()Gregory Anders2022-05-31
|
* feat(fs): add vim.fs.parents()Gregory Anders2022-05-31
| | | | | vim.fs.parents() is a Lua iterator that returns the next parent directory of the given file or directory on each iteration.
* refactor(checkhealth)!: rename to vim.health, move logic to Lua #18720Javier Lopez2022-05-31
| | | | | | | | | - Complete function: There was lots of unnecessary C code for the complete function, therefore moving it to Lua and use all the plumbing we have in place to retrieve the results. - Moving the module: It's important we keep nvim lua modules name spaced, avoids conflict with plugins, luarocks, etc.
* Merge pull request #18194 from famiu/feat/usercmd_previewbfredl2022-05-31
|\ | | | | feat: user command "preview" (like inccommand)
| * feat: add preview functionality to user commandsFamiu Haque2022-05-31
| | | | | | | | Adds a Lua-only `preview` flag to user commands which allows the command to be incrementally previewed like `:substitute` when 'inccommand' is set.
* | Merge pull request #18219 from kessejones/filetype-luaGregory Anders2022-05-31
|\ \ | | | | | | feat(filetype): add more filetype patterns to Lua
| * | feat(filetype): convert more patterns to filetype.luaChristian Clason2022-05-30
| | |
* | | fix(lsp): include cancellable in progress message table (#18809)Chris Kipp2022-05-31
| | | | | | | | | | | | | | | | | | | | | | | | Currently the `title`, `message` and `percentage` is stored for a progress, but there is also an optional `cancellable` that comes in with both the `WorkDoneProgressBegin` and also `WorkDoneProgressReport`. This change also stores that value so that a plugin can access it when they do a lookup in `client.messages`.