aboutsummaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAge
...
* | 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
|/
* feat(Man): port to Lua (#19912)Lewis Russell2022-09-02
| | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* feat(api): add support for :horizontal modifierzeertzjq2022-09-01
|
* fix(lua): make ui_attach()/ui_detach() take effect immediately (#20037)zeertzjq2022-09-01
|
* 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
* Merge pull request #16396 from bfredl/luaeventbfredl2022-08-31
|\ | | | | feat(lua): vim.ui_attach to get ui events from lua
| * feat(lua): vim.ui_attach to get ui events from luabfredl2022-08-31
| | | | | | | | Co-authored-by: Famiu Haque <famiuhaque@protonmail.com>
* | refactor(mappings)!: mapblock_fill_dict() use API Dictionary (#20020)zeertzjq2022-08-31
| | | | | | | | | | | | | | | | | | | | | | This introduces the following breaking changes: - nvim_get_keymap now always returns a LuaRef object as "callback" for a Lua mapping regardless of how it is called. The LuaRef object can be called from Lua and Vim script, but is lost over RPC. - maparg() now returns a Funcref instead of a ref number as "callback" for a Lua mapping. The Funcref can be called from Lua and Vim script, but is lost over RPC. This may also make nvim_get_keymap faster, but make maparg() slower.
* | fix(api): nvim_set_hl bail out on invalid group name (#20021)zeertzjq2022-08-31
|/
* vim-patch:8.2.3102: test for crash fix does not fail without the fix (#20018)zeertzjq2022-08-31
| | | | | | | Problem: Test for crash fix does not fail without the fix. Solution: Adjust the test sequence. (closes vim/vim#8506) https://github.com/vim/vim/commit/3777d6e32b22f0a70b774760c24160079e303bad Cherry-pick CheckUnix from patch 8.2.1432.
* fix(exceptions): restore `did_throw` (#20000)Sean Dewar2022-08-30
| | | | | | | | | | | | | | | | | | `!did_throw` doesn't exactly imply `!current_exception`, as `did_throw = false` is sometimes used to defer exception handling for later (without forgetting the exception). E.g: uncaught exception handling in `do_cmdline()` may be deferred to a different call (e.g: when `try_level > 0`). In #7881, `current_exception = NULL` in `do_cmdline()` is used as an analogue of `did_throw = false`, but also causes the pending exception to be lost, which also leaks as `discard_exception()` wasn't used. It may be possible to fix this by saving/restoring `current_exception`, but handling all of `did_throw`'s edge cases seems messier. Maybe not worth diverging over. This fix also uncovers a `man_spec.lua` bug on Windows: exceptions are thrown due to Windows missing `man`, but they're lost; skip these tests if `man` isn't executable.
* fix(highlight): set the window namespace when redrawing statuslinebfredl2022-08-30
|
* feat(tui): recognize sidescroll events (#19992)zeertzjq2022-08-30
| | | | | | Ref https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h3-Other-buttons This works in xterm and kitty. CSI < 66 ; x ; y M sequence is for ScrollWheelLeft. CSI < 67 ; x ; y M sequence is for ScrollWheelRight.
* fix(redraw): handle switching to a tabpage with larger p_ch valuebfredl2022-08-29
|
* 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
| |
* | fix(events): triggered WinScrolled when only skipcol changed (#19972)zeertzjq2022-08-29
| | | | | | | | | | | | | | | | | | fix(events): trigger WinScrolled when only skipcol changed vim-patch:9.0.0304: WinScrolled is not triggered when only skipcol changes Problem: WinScrolled is not triggered when only skipcol changes. Solution: Add w_last_skipcol and use it. (closes vim/vim#10998) https://github.com/vim/vim/commit/670ab0334b536e12d84810de88e73b7bcb01346d
* | fix(keywordprg): default to :help if set to empty string (#19983)zeertzjq2022-08-29
|/
* fix(treesitter): make it get_captures_at_positionbfredl2022-08-26
|
* 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
* fix(tests): use pending_c_parser when neededbfredl2022-08-25
|
* feat(treesitter): upstream node_length() as a node methodQuentin Rasmont2022-08-25
| | | | Util from the nvim-treesitter project.
* feat(treesitter): upstream get_root_for_node() as a node methodQuentin Rasmont2022-08-25
| | | | Util from the nvim-treesitter project.
* feat(treesitter): upstream get_named_children() as a node methodQuentin Rasmont2022-08-25
| | | | Util from the nvim-treesitter project.
* feat(treesitter): add ability to retreive a tree/node given a rangeQuentin Rasmont2022-08-25
|
* feat(treesitter): upstream is_parent()Quentin Rasmont2022-08-25
| | | | | Util from the nvim-treesitter project. Renamed is_parent to is_ancestor for clarity.
* vim-patch:8.2.0911: crash when opening a buffer for the cmdline window failszeertzjq2022-08-25
| | | | | | | | | | Problem: Crash when opening a buffer for the cmdline window fails. (Chris Barber) Solution: Check do_ecmd() succeeds. Reset got_int if "q" was used at the more prompt. (closes vim/vim#6211) https://github.com/vim/vim/commit/9b7cce28d568f0622d77c6c9878c2d4770c3b164 Make code match latest Vim instead.
* fix(usercmd): also check for whitespace after escaped character (#19942)zeertzjq2022-08-25
|
* test(treesitter): make internal lang test pending when necessaryThomas Vigouroux2022-08-24
|
* feat(lua): add vim.iconv (#18286)Lewis Russell2022-08-24
| | | Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
* Merge pull request #19496 from vigoux/ts_internal_langThomas Vigouroux2022-08-24
|\ | | | | feat(treesitter): allow customizing language symbol name
| * feat(treesitter): allow customizing language symbol nameThomas Vigouroux2022-08-22
| |
* | feat(eval)!: make Vim functions return inner window width and height (#19743)zeertzjq2022-08-24
| | | | | | | | | | | | | | | | | | In non-multigrid UI the only change is that the returned height now excludes winbar, and this is compatible with Vim. In multigrid UI this means the return value of these functions now reflect the space available for buffer lines in a window. No change in nvim_win_get_height() and nvim_win_get_width().
* | fix(path): path_is_url returns false for "foo:/" #19797sigmaSd2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: path_to_url() returns false for single-slash URIs ("foo:/" vs "foo://"). This is not compliant with the URI spec. https://url.spec.whatwg.org/#url-representation LSP in particular allows single-slash URIs. Solution: Relax path_to_url() to accept single-slash URIs. This is not fully compliant (only ":" is required by the spec), but it is hopefully good enough without causing false-positives in typical text files. ref https://url.spec.whatwg.org/#windows-drive-letter ref https://github.com/neovim/neovim/pull/19773 ref https://github.com/neovim/neovim/pull/19773#issuecomment-1214763769
* | fix(cmdline): do not trigger completion at wrong time (#19920)zeertzjq2022-08-24
| | | | | | Cherry-picked from Vim patches 8.2.4339, 9.0.0238.
* | vim-patch:9.0.0206: redraw flags are not named specifically (#19913)zeertzjq2022-08-23
| | | | | | | | | | Problem: Redraw flags are not named specifically. Solution: Prefix "UPD_" to the flags, for UPDate_screen(). https://github.com/vim/vim/commit/a4d158b3c839e96ed98ff87c7b7124ff4518c4ff
* | vim-patch:8.2.4726: cannot use expand() to get the script namezeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | Problem: Cannot use expand() to get the script name. Solution: Support expand('<script>'). (closes vim/vim#10121) https://github.com/vim/vim/commit/6013d0045dec7ca7c0068fbe186c42d754a7368b Use `.sn_name` instead of `->sn_name` as v8.2.0154 hasn't been ported. Cherry-pick builtin.txt expand() doc from latest Vim.
* | test: add test for using :normal to stop Visual mode in cmdwin (#19904)zeertzjq2022-08-23
| |
* | vim-patch:8.2.1046: insufficient tests for src/buffer.c (#19903)zeertzjq2022-08-23
| | | | | | | | | | | | Problem: Insufficient tests for src/buffer.c. Solution: Add more tests. Move comments related tests to a separate file. (Yegappan Lakshmanan, closes vim/vim#6325) https://github.com/vim/vim/commit/b7e2483655d9b68df0c7349918027d800051a28a
* | vim-patch:8.2.0522: several errors are not tested for (#19901)zeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Several errors are not tested for. Solution: Add tests. (Yegappan Lakshmanan, closes vim/vim#5892) https://github.com/vim/vim/commit/ee4e0c1e9a81cb5d96e0060203a9033c2f28588e Omit Test_range() change: reverted in patch 8.2.0615. Cherry-pick Test_z_no_space_before_xxx() from patch 8.2.0195. Cherry-pick Test_reverse_sort_uniq() change from patch 8.2.0183. Make uniq() error behavior consistent with sort(). Cherry-pick Test_set_ttytype() change from patch 8.1.1826. Cherry-pick quickfix checks from patch 8.1.2373 to test_preview.vim. Test_viminfo_error() is applicable. Cherry-pick E1058 from patch 8.2.0149 and port Test_deep_nest() to Lua.
* | vim-patch:8.1.0832: confirm() is not tested (#19896)zeertzjq2022-08-23
|/ | | | | Problem: confirm() is not tested. Solution: Add a test. (Dominique Pelle, closes vim/vim#3868) https://github.com/vim/vim/commit/2e0500921891e4fec57e97d3c0021aa2d2b4d7ae
* fix(api): avoid side effects with nvim_parse_cmd (#19890)zeertzjq2022-08-22
| | | | Save and restore the cursor and last search pattern and do not change search history.
* fix(edit.c): indentkeys double indent after "!" #12894Axel Forsman2022-08-21
| | | | | | | | | | | | | which is both unexpected and different from the Vim behaviour. Indent was triggered once by the '!' check in insert_execute(), and inserting the char was correctly skipped, but then triggered again in insert_check() (provided that cindent was not being ignored after manual indentation, i.e. `can_cindent == true`). While this is the smallest fix, another solution would be to remove VimState#check and instead move that to *_enter()/-_execute(), since the control flow is pretty unnecessarily convoluted as is. That would also have the benefit of differing less from the Vim source code.
* vim-patch:8.2.4334: command line popup menu not positioned correctlyzeertzjq2022-08-22
| | | | | | | Problem: Command line popup menu not positioned correctly. Solution: Also use vim_strsize() on the existing text. (Naruhiko Nishino, closes vim/vim#9727) https://github.com/vim/vim/commit/68cc2b8a37197872e737fb61244069e13b7227a2
* vim-patch:8.2.4328: command line complete matches cleard when typing characterzeertzjq2022-08-22
| | | | | | | Problem: Command line complete matches cleard when typing character. (Dominique Pellé) Solution: Only remove a popup menu if there is one. https://github.com/vim/vim/commit/73a16c22a4703cb9a7becdf459ce62bd894980d7
* vim-patch:8.2.4325: 'wildmenu' only shows few matches (#19876)zeertzjq2022-08-21
| | | | | | | | | | Problem: 'wildmenu' only shows few matches. Solution: Add the "pum" option: use a popup menu to show the matches. (Yegappan Lakshmanan et al., closes vim/vim#9707) https://github.com/vim/vim/commit/3908ef5017a6b4425727013588f72cc7343199b9 Omit p_wmnu check in cmdline_pum_active() as it can cause problems. Omit vim_strchr() flags as that isn't really better than bitmasks. Omit key translations and document it in vim_diff.txt.
* fix(api/command): fargs behavior when no arguments are passed (#19862)Javier Lopez2022-08-21
| | | | | | | Problem: A command defined with `nargs="?"` returns `fargs={""}` to a Lua callback when executed with no arguments, which is inconsistent with how`nargs="*"` behaves. Solution: Pass `fargs={}` for no argument with `nargs="?"` as well.