aboutsummaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAge
...
* | feat(tui): run TUI as external processhlpr982022-12-31
| |
* | test: add test for setting &columns from modeline with tabpageszeertzjq2022-12-30
| |
* | test(tui_spec): don't use nested terminal for resize at startup (#21583)zeertzjq2022-12-29
|/
* test(lsp): add a screen:expect() between insert() and feed_command() (#21577)zeertzjq2022-12-29
| | | | The insert() and feed_command() type a lot of text, with only one screen:expect() call after the feed_command() it may time out.
* test: remove unused variable (#21552)Raphael2022-12-29
|
* feat(highlight): add DiagnosticOk (and associated) highlight groups (#21286)Oliver Marriott2022-12-28
| | | | | | The existing groups, Error, Hint, Info, Warn cover many use cases, but neglect the occasion where a diagnostic message should communicate a non-informative (not a Hint or Info) event. DiagnosticOk covers this with a generic green colorscheme.
* fix(statusline): make nvim_eval_statusline() work with %S (#21553)zeertzjq2022-12-27
|
* fix(win_close): remove float grid after closing buffer (#21551)zeertzjq2022-12-27
| | | | It is not safe to remove the float grid when autocommands can still be triggered, as autocommands may use the float grid.
* fix(statusline): don't show showcmd when not enough space (#21550)zeertzjq2022-12-27
|
* fix(showcmd): assert failure with cmdheight=0 (#21536)zeertzjq2022-12-26
|
* vim-patch:9.0.1061: cannot display 'showcmd' somewhere elseLuuk van Baal2022-12-26
| | | | | | | | | Problem: Cannot display 'showcmd' somewhere else. Solution: Add the 'showcmdloc' option. (Luuk van Baal, closes vim/vim#11684) https://github.com/vim/vim/commit/ba936f6f4e85cc1408bc3967f9fd7665d948909b Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
* fix(mappings): use all buckets in second round of unmap (#21534)zeertzjq2022-12-26
|
* vim-patch:9.0.1092: search error message doesn't show used pattern (#21518)zeertzjq2022-12-24
| | | | | | | | | Problem: Search error message doesn't show used pattern. Solution: Pass the actually used pattern to where the error message is given. (Rob Pilling, closes vim/vim#11742) https://github.com/vim/vim/commit/e86190e7c1297da29d0fc2415fdeca5ecae8d2ba Co-authored-by: Rob Pilling <robpilling@gmail.com>
* fix(options): restore exists() behavior for options (#21510)zeertzjq2022-12-23
| | | | | Duplicating get_option_value() logic for an obscure future refactor isn't really worthwhile, and findoption() isn't used anywhere else outside the options code.
* test(lua/fs_spec): fix vim.fs.dir() test (#21503)zeertzjq2022-12-22
|
* fix(ci): skip test on windows (#21502)Lewis Russell2022-12-22
|
* test(unit): use file:close() properly (#21505)zeertzjq2022-12-22
|
* Merge pull request #21402 from lewis6991/feat/fs_lsLewis Russell2022-12-22
|\
| * feat(fs): add opts argument to vim.fs.dir()Lewis Russell2022-12-20
| | | | | | | | Added option depth to allow recursively searching a directory tree.
* | refactor(tui): use nvim_echo() for verbose terminfobfredl2022-12-20
| | | | | | | | | | | | This is needed for #18375 for the obvious reasons. note: verbose_terminfo_event is only temporarily needed until the full TUI process refactor is merged.
* | test(exrc): add tests for .nvimrc and .nvim.lua (#21478)Munif Tanjim2022-12-20
| |
* | fix(lsp): token_edit.data might be null on deletion (#21462)tiagovla2022-12-19
| |
* | fix(diagnostic): clear stale cache on reset (#21454)Mathias Fußenegger2022-12-17
| | | | | | | | | | | | | | | | | | | | | | | | | | The BufWipeout autocmd is not 100% reliable and may leave stale entries in the cache. This is sort of a hack/workaround to ensure `vim.diagnostic.reset` calls don't fail if there are stale cache entries but instead clears them Fixes errors like Error executing vim.schedule lua callback: /usr/share/nvim/runtime/lua/vim/diagnostic.lua:1458: Invalid buffer id: 22 stack traceback: [C]: in function 'nvim_exec_autocmds' /usr/share/nvim/runtime/lua/vim/diagnostic.lua:1458: in function 'reset'
* | Merge pull request #21393 from folke/highlight_showChristian Clason2022-12-17
|\ \ | | | | | | | | | feat(lsp): add function to get semantic tokens at cursor feat: `vim.inspect_pos()`, `vim.show_pos()` and `:Inspect[!]`
| * | feat: `vim.inspect_pos`, `vim.show_pos`, `:Inspect`Folke Lemaitre2022-12-17
| |/
* | fix(api): "emsg_silent" should imply "silent" in nvim_cmd (#21438)zeertzjq2022-12-16
| |
* | fix(lua): always return nil values in vim.tbl_get when no resultsWilliam Boman2022-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While `return` and `return nil` are for most intents and purposes identical, there are situations where they're not. For example, calculating the amount of values via the `select()` function will yield varying results: ```lua local function nothing() return end local function null() return nil end select('#', nothing()) -- 0 select('#', null()) -- 1 ``` `vim.tbl_get` currently returns both nil and no results, which makes it unreliable to use in certain situations without manually accounting for these discrepancies.
* | fix(terminal): fix 'mousescroll' not respected in terminal mode (#21415)zeertzjq2022-12-14
|/
* Merge pull request #21375 from nojnhuh/highlight-testbfredl2022-12-12
|\ | | | | fix(tests): initialize Screen.colors in API highlight tests
| * fix(tests): initialize Screen.colors in API highlight testsJon Huhn2022-12-10
| |
* | feat(lsp): highlight semantic token modifiers (#21390)Christian Clason2022-12-12
| | | | | | | | | | | | | | | | Apply semantic token modifiers as separate extmarks with corresponding highlight groups (e.g., `@readonly`). This is a low-effort PR to enable the most common use cases (applying, e.g., italics or backgrounds on top of type highlights; language-specific fallbacks like `@global.lua` are also available). This can be replaced by more complicated selector-style themes later on.
* | perf(lsp): update semantic tokens algorithm for parsing modifiers (#21383)jdrouhard2022-12-12
| | | | | | | | | | | | | | | | Instead of testing for every possible modifier type, only test bits up to the highest set in the token array. Saves many bit ops and comparisons when there are no modifiers or when the highest set bit is a lower bit than the highest possible in the legend on average. Can be further simplified when non-luaJIT gets the full bit module (see #21222)
* | fix(diff): handle long lines without crashing (#21389)Lewis Russell2022-12-12
| | | | | | Fixes https://github.com/neovim/neovim/issues/21388
* | fix: vim.opt_local:append ignoring global option value (#21382)Phelipe Teles2022-12-12
| | | | | | Closes https://github.com/neovim/neovim/issues/18225
* | docs #20986Justin M. Keyes2022-12-11
| | | | | | | | | | | | - https://github.com/neovim/tree-sitter-vimdoc v1.2.4 eliminates most errors in pi_netrw.txt, so we can remove that workaround from ignore_parse_error(). - improved codeblock
* | vim-patch:8.2.2870: CmdlineChange event triggered twice for CTRL-R (#21361)zeertzjq2022-12-11
|/ | | | | | | | | | | Problem: CmdlineChange event triggered twice for CTRL-R. Solution: Return CMDLINE_NOT_CHANGED from cmdline_insert_reg(). (closes vim/vim#8219) https://github.com/vim/vim/commit/796139ae3ac89e27ee96dce3c7fdb87d8c839f53 Cherry-pick Test_cmdline_map_cmdlineChanged() from patch 8.2.2851. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(api): set correct curbuf when temporarily changing curwin (#21371)zeertzjq2022-12-10
| | | This is the same code change as https://github.com/vim/vim/commit/6c87bbb4e45515e70ac1728cabd1451063bf427d
* fix(lsp): ignore null responses for semanticTokens request (#21364)fsouza2022-12-10
| | | | | | | | The spec indicates that the response may be `null`, but it doesn't really say what a `null` response means. Since neovim raises an error if the response is `null`, I figured that ignoring it would be the safest bet. Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net>
* fix(events): skip WinScrolled for newly-created float windows (#21333)zeertzjq2022-12-10
| | | | | Unlike split windows, creating a new floating window does not cause other windows to resize, so it doesn't make much sense to trigger WinScrolled or WinResized when creating a new floating window.
* fix(lsp): followup fixes for semantic tokens support (#21357)jdrouhard2022-12-09
| | | | | | | | | | | | | | | | 1. The algorithm for applying edits was slightly incorrect. It needs to preserve the original token list as the edits are applied instead of mutating it as it iterates. From the spec: Semantic token edits behave conceptually like text edits on documents: if an edit description consists of n edits all n edits are based on the same state Sm of the number array. They will move the number array from state Sm to Sm+1. 2. Schedule the semantic token engine start() call in the client._on_attach() function so that users who schedule_wrap() their config.on_attach() functions (like nvim-lspconfig does) can still disable semantic tokens by deleting the semanticTokensProvider from their server capabilities.
* test: convert another test in test_matchadd_conceal.vim to Lua (#21353)zeertzjq2022-12-09
|
* test(undo_spec): add more tests for writing in Insert modezeertzjq2022-12-09
|
* vim-patch:9.0.1036: undo misbehaves when writing from an insert mode mappingzeertzjq2022-12-09
| | | | | | | | | Problem: Undo misbehaves when writing from an insert mode mapping. Solution: Sync undo when writing. (closes vim/vim#11674) https://github.com/vim/vim/commit/3f8f82772313af9f2417b06651f30988b63e1c96 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(chansend): sending lines to terminal in reverse order on Windows #19315Enan Ajmain2022-12-08
| | | | | | | Problem: `chansend()` on Windows sends lines in reverse order. Cause: Using \n instead of \r\n for newlines on Windows. Solution: on Windows, use CRLF newline characters. Fixes #18501
* vim-patch:9.0.1030: using freed memory with the cmdline popup menuzeertzjq2022-12-09
| | | | | | | | | Problem: Using freed memory with the cmdline popup menu. Solution: Clear the popup menu when clearing the matches. (closes vim/vim#11677) https://github.com/vim/vim/commit/038e6d20e680ce8c850d07f6b035c4e1904c1201 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* feat(lsp): initial support for semantic token highlightingJohn Drouhard2022-12-08
| | | | | | * credit to @smolck and @theHamsta for their contributions in laying the groundwork for this feature and for their work on some of the helper utility functions and tests
* refactor(test): create an lsp-specific helpers.lua fileJohn Drouhard2022-12-08
| | | | * move the code for creating fake rpc servers there
* test(lsp): call clear() before willSave tests (#21336)zeertzjq2022-12-08
| | | Otherwise these two tests cannot run alone and may fail on CI.
* feat(lsp): support willSave & willSaveWaitUntil capability (#21315)Mathias Fußenegger2022-12-08
| | | | | `willSaveWaitUntil` allows servers to respond with text edits before saving a document. That is used by some language servers to format a document or apply quick fixes like removing unused imports.
* vim-patch:9.0.1025: WinScrolled is not triggered when filler lines change ↵zeertzjq2022-12-07
| | | | | | | | | | | (#21325) Problem: WinScrolled is not triggered when filler lines change. Solution: Add "topfill" to the values that WinScrolled triggers on. (closes vim/vim#11668) https://github.com/vim/vim/commit/3fc84dc2c7efecd7c14ce341cd777475058936fd Cherry-pick StopVimInTerminal() from patch 9.0.1010.