aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | | vim-patch:8.1.1820: using expr->FuncRef() does not workSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Using expr->FuncRef() does not work. Solution: Make FuncRef work as a method. https://github.com/vim/vim/commit/761fdf01c6e307c448cec2684f8b315ba6d1f454
| * | | vim-patch:8.1.1816: cannot use a user defined function as a methodSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot use a user defined function as a method. Solution: Pass the base as the first argument to the user defined function after "->". (partly by FUJIWARA Takuya) https://github.com/vim/vim/commit/fcfe1a9b8950b8b211ab3b24d84b17c6847ea43f
| * | | vim-patch:8.1.1809: more functions can be used as a methodSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | Problem: More functions can be used as a method. Solution: Add has_key(), split(), str2list(), etc. https://github.com/vim/vim/commit/a74e4946de074d2916e3d6004f7fa1810d12dda9
| * | | vim-patch:8.1.1807: more functions can be used as a methodSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: More functions can be used as a method. Solution: Add append(), appendbufline(), assert_equal(), etc. Also add the :eval command. https://github.com/vim/vim/commit/25e42231d3ee27feec2568fa4be2aa2bfba82ae5 :eval is already ported.
| * | | vim-patch:8.1.1803: all builtin functions are globalSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: All builtin functions are global. Solution: Add the method call operator ->. Implemented for a limited number of functions. https://github.com/vim/vim/commit/ac92e25a33c37ec5becbfffeccda136c73b761ac - Note that to *exactly* port hunk @@ -7376,18 +7444,19 from handle_subscript(), we need the :scriptversion patches (I have an open PR for those, but this patch works fine without them anyway). - Port call_internal_func() from v7.4.2058. - Adjust some error messages in tests, as they rely on the Blob patches. - Add a modeline to test_method.vim. Ignore the global_functions and base_method tables and prefer the current GPerf implementation. Instead, add an extra base_arg field to VimLFuncDef that holds the number of the argument to use as the base (1-indexed, so that 0 may be used to refer to functions that cannot be used as methods). This also means we support using any argument as a base from the get-go, rather than just the first (Vim includes this ability in future patches, however). To mark a function as usable as a method, use the "base" key as described in eval.lua.
| * | | vim-patch:8.1.1800: function call functions have too many argumentsSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Function call functions have too many arguments. Solution: Pass values in a funcexe_T struct. https://github.com/vim/vim/commit/c6538bcc1cdd1fb83732f22fdc69bd9bb66f968a Use FUNCEXE_INIT to initialize funcexe_T instances. call_callback() and other Vim listener related stuff is N/A.
| * | | vim-patch:8.1.1638: running tests leaves some files behindSean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Running tests leaves some files behind. Solution: Delete the files. (Ozaki Kiichi, closes vim/vim#4617) https://github.com/vim/vim/commit/3940ec6d41a07f9abbfba7d4db6b49d3d8b43a9a Required for v8.1.1888. N/A patches for version.c: vim-patch:8.1.1912: more functions can be used as methods Problem: More functions can be used as methods. Solution: Make channel and job functions usable as a method. vim/vim@570497a
| * | | test(oldtest): cherry-pick needed test functions from v8.1.1336Sean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | Cherry-pick Test_call() and Test_cindent_func(). Required for v8.1.1911 and v8.1.1915.
| * | | fix(eval): cherry-pick emsg changes from v8.1.0736Sean Dewar2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | v8.1.0736 made some changes for making some emsgs more specific. Includes the change for Test_lambda_fails() in test_lambda.vim. Adjust relevant functionaltests to expect the new emsgs. This patch has been fully ported in my Blob port PR, but it hasn't been merged yet, so just use what we need from it for now. Required for v8.1.1821.
* | | | fix(man.vim): filetype=man is too eager #15488Justin M. Keyes2021-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: "set filetype=man" assumes the user wants :Man features, this does extra stuff like renaming the buffer as "man://". Solution: - old entrypoint was ":set filetype=man", but this is too presumptuous #15487 - make the entrypoints more explicit: 1. when the ":Man" command is run 2. when a "man://" buffer is opened - remove the tricky b:man_sect checks in ftplugin/man.vim and syntax/man.vim - MANPAGER is supported via ":Man!", as documented. fixes #15487
* | | | vim-patch:8.2.3362: buffer overflow when completing long tag name (#15449)Gregory Anders2021-08-25
| | | | | | | | | | | | | | | | | | | | Problem: Buffer overflow when completing long tag name. Solution: Allocate the buffer dynamically. (Gregory Anders, closes vim/vim#8769) https://github.com/vim/vim/commit/489d60996deb5e7c1a3b4633412d54632e6def42
* | | | Merge pull request #15475 from vigoux/bufupdates-pasteBjörn Linse2021-08-25
|\ \ \ \ | | | | | | | | | | Send correct byte updates on visual paste
| * | | | fix(bufupdates): send correct updates for visual pasteThomas Vigouroux2021-08-25
| | |/ / | |/| | | | | | | | | | | | | | | | | | One step further towards stable tree-sitter. Co-authored-by: Björn Linse <bjorn.linse@gmail.com>
* | | | Merge pull request #15466 from vigoux/ts-query-autoThomas Vigouroux2021-08-24
|\ \ \ \ | |/ / / |/| | | feat(ts): add query module in treesitter keys
| * | | feat(ts): add query module in treesitter keysThomas Vigouroux2021-08-23
| | | |
* | | | fix(lsp): enable additional capabilities (#15470)Michael Lingelbach2021-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Declaration, type-definition, and implementation capabilities were previously disabled if the client received table output from the server capabilities. The workDoneProgress capability is sent for many servers for all supported capabilities as part of this table. Default to setting capability to table instead of false.
* | | | vim-patch:6aa5729 (#15463)Christian Clason2021-08-23
| | | | | | | | | | | | | | | | Update Scala syntax file https://github.com/vim/vim/commit/6aa57295cfbe8f21c15f0671e45fd53cf990d404
* | | | build: remove CFLAGS from :version in non-debug builds #15424Gregory Anders2021-08-23
|/ / / | | | | | | A step towards reproducible builds.
* | | fix(doc): example for vim.diff() (#15464)Lewis Russell2021-08-23
| | |
* | | Merge pull request #15434 from Dkendal/feature-lua-treesitter-siblingThomas Vigouroux2021-08-23
|\ \ \ | | | | | | | | feat(treesitter): add next, prev sibling method
| * | | feat(treesitter): add next, prev sibling methodDylan Kendal2021-08-20
| | | | | | | | | | | | | | | | | | | | Add tsnode methods to change to the next, previous, named or unnamed nodes.
* | | | docs: issue templatesJustin M. Keyes2021-08-22
| | | |
* | | | docs: issue templatesJustin M. Keyes2021-08-22
| | | |
* | | | fix(window.c): win_close from other tabpage #15454notomo2021-08-22
| | | | | | | | | | | | Fix #15313
* | | | vim-patch:8.2.3358: structurizr files are not recognized (#15417)Jesse Atkinson2021-08-22
| | | | | | | | | | | | | | | | | | | | Problem: Structurizr files are not recognized. Solution: Recognize the file by contents. (Bastian Venthur, closes vim/vim#8764) https://github.com/vim/vim/commit/dea561111a5761bf99397a246b8baa43e73288de
* | | | docs: make Lua docstrings consistent #15255Gregory Anders2021-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The official developer documentation in in :h dev-lua-doc specifies to use "--@" for special/magic tokens. However, this format is not consistent with EmmyLua notation (used by some Lua language servers) nor with the C version of the magic docstring tokens which use three comment characters. Further, the code base is currently split between usage of "--@", "---@", and "--- @". In an effort to remain consistent, change all Lua magic tokens to use "---@" and update the developer documentation accordingly.
* | | | Merge pull request #15457 from bfredl/oldmapBjörn Linse2021-08-22
|\ \ \ \ | | | | | | | | | | refactor(map): remove extra-allocating map_new/map_free functions
| * | | | refactor(map): remove extra-allocating map_new/map_free functionsBjörn Linse2021-08-22
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note: the reason for removing them is not that there after this refactor is no use of them, but rather that having them available is an anti-pattern: they manange an _extra_ heap allocation which has nothing to do with the functionality of the map itself (khash manages the real buffers internally). In case there happens to be a reason to allocate the map structure itself later, this should be made explicit using xcalloc/xfree calls.
* | | | refactor: replace TRUE/FALSE with true/false #15425dundargoc2021-08-22
| | | |
* | | | fix(doc): move vim.diff doc (#15456)Lewis Russell2021-08-22
| | | | | | | | | | | | ... to prevent bots from overwriting it
* | | | Merge pull request #15451 from bfredl/metamapBjörn Linse2021-08-22
|\ \ \ \ | | | | | | | | | | perf(map): get rid of unnecessary pointer indirections for maps.
| * | | | refactor(api): remove unneccesary indirection around handlesBjörn Linse2021-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | These things are just maps to pointers, no need to perform a huge song and dance around it.
| * | | | refactor(marktree): embed the keymap in the MarkTree structBjörn Linse2021-08-22
| | | | |
| * | | | refactor(map): get rid of spurious subsystem_init() functions due to mapsBjörn Linse2021-08-22
| | | | |
| * | | | refactor(extmark): remove pointer indirection for extmark use of mapsBjörn Linse2021-08-22
| | | | |
| * | | | refactor(syntax): don't use pointer indirected maps for no reasonBjörn Linse2021-08-22
| | | | |
| * | | | perf(map): reduce double pointer indirection to single pointer indirectionBjörn Linse2021-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | the only field of Map(...) was a pointer to a khash_t. make it contain the struct by value instead.
* | | | | feat(api): add lua C bindings for xdiff (#14536)Lewis Russell2021-08-22
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat(api): add lua C bindings for xdiff * chore: opt.hunk_lines -> opt.result_type opt.on_hunk now takes precedence over opt.result_type * chore: fix indents Fix indents * chore: change how priv is managed Assign priv NULL and unconditionally apply XFREE_CLEAR to it when finished.
* | | | docs #15447Justin M. Keyes2021-08-21
| | | | | | | | | | | | | | | | | | | | - update ":help 'hidden'" #15410 - update ":help K" #15398 - try to capture some of the debug steps from #12036 (bpftrace, USDT probes)
* | | | feat(keywordprg): use :terminal for external commands #15398Gregory Anders2021-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Open external 'keywordprg' commands in a :terminal in a new tab. <Esc> is mapped to stop the job and close the buffer. Closes #2995 Closes #2761
* | | | feat(terminal): TermClose: set exit code in v:event.status #15406Gregory Anders2021-08-20
| | | | | | | | | | | | Closes #4713
* | | | Merge pull request #15295 from gpanders/ftdetectBjörn Linse2021-08-20
|\ \ \ \ | |/ / / |/| | | fix: only source package ftdetect files once
| * | | fix: only source package ftdetect files onceGregory Anders2021-08-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ftdetect files in start packages are sourced once from the :runtime command in filetype.vim and once when packages are loaded. Change the package loading logic to only source ftdetect files for opt packages to avoid this duplication.
* | | | docs: regenerate (#15431)github-actions[bot]2021-08-19
| | | | | | | | | | | | Co-authored-by: marvim <marvim@users.noreply.github.com>
* | | | Merge pull request #15429 from bfredl/hl_2Björn Linse2021-08-19
|\ \ \ \ | | | | | | | | | | perf(treesitter): avoid string lookup of highlight name in hot loop
| * | | | perf(treesitter): avoid string lookup of highlight name in hot loopBjörn Linse2021-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | These numbers are guaranteed to be stable even if you do "highlight clear" (all attributes disappear, but not the id to name mapping itself)
* | | | | feat(lsp): allow root_dir to be nil (#15430)Mathias Fußenegger2021-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to the protocol definition `rootPath`, `rootUri` and `workspaceFolders` are allowed to be null. Some language servers utilize this to provide "single file" support. If all three are null, they don't attempt to index a directory but instead only provide capabilities for a single file.
* | | | | feat(lsp): jump to diagnostics by position (#14795)Zi How Poh2021-08-19
|/ / / /
* | | | Merge pull request #15422 from bfredl/syn_name2id_go_brrBjörn Linse2021-08-19
|\ \ \ \ | | | | | | | | | | feat(highlights): some improvements and perf fixes
| * | | | perf(highlight): use a hashtable for highlight group namesBjörn Linse2021-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | syn_name2id and syn_check_group go brr. Note: this has impact mostly when using multiple filetypes, as the old syn_name2id was optimized to return latest added groups quickly (which will be the latest filetype)