aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/screen.lua
Commit message (Collapse)AuthorAge
...
* multigrid: test refactorBjörn Linse2018-12-31
|
* multigrid: rename event to win_pos, make grid firstBjörn Linse2018-12-31
|
* multigrid: add msg_scroll_start and msg_scroll_reset eventsBjörn Linse2018-12-31
|
* multigrid: add multigrid screen testsUtkarsh Maheshwari2018-12-31
|
* multigrid: add multigrid support to test infrastructureBjörn Linse2018-12-31
| | | | make Screen explicitly tied to its session
* docJustin M. Keyes2018-11-28
| | | | | | | | | | - develop.txt is for design/guidelines; architecture/concepts should live elsewhere (currently src/nvim/README.md) - move dev-jargon to intro.txt - replace https://neovim.io/community (deprecated) with https://neovim.io/#chat - <Cmd> avoids CmdlineEnter/Leave https://github.com/vim/vim/issues/2889
* defaults: background=dark #2894 (#9205)Justin M. Keyes2018-11-20
| | | | | | | | | | | | | By historical accident, Nvim defaults to background=light. So on a dark background, `:colorscheme default` looks completely wrong. The "smart" logic that Vim uses is confusing for anyone who uses Vim on multiple platforms, so rather than mimic that, pick the (hopefully) most common default. - Since Neovim is dark-powered, we assume most users have dark backgrounds. - Most of the GUIs tend to have a dark background by default. ref #6289
* tests: improve robustness of immediate successes in screen testsBjörn Linse2018-10-15
|
* ui: reserve the right to split a screen redraw into multiple batches.Björn Linse2018-10-02
|
* ui: rename ext_newgrid to ext_linegridBjörn Linse2018-10-01
|
* shell/logging: Fix E730 with verbose system({List}) #9009Justin M. Keyes2018-09-21
| | | | | | | | ref https://github.com/neovim/neovim/issues/9001#issuecomment-421843790 Steps to reproduce: :set verbose=9 :call system(['echo']) E730: using List as a String
* startup: don't erase screen on `:hi Normal` during startupBjörn Linse2018-09-20
| | | | | | | | | NB: existing `color default` test was actually enough to trigger the bug, when ext_newgrid=false is used. I created the `:hi Normal` test as I thought the builtin colors wouldn't set Normal (unless 'bg' is changed) But as the root cause actually comes from `:hi Normal`, it makes sense to still add the separate test (if `color default` here gets optimized to become a no-op, or something).
* screen.lua: extend snapshot_util() to work with extension stateBjörn Linse2018-09-03
| | | | | Simplify handling of attributes: collect new attributes in the same pass as screen lines are rendered, instead of using two passes.
* tests: introduce screen:expect{...} formBjörn Linse2018-08-27
|
* cursor_shape: use attribute ids instead of syntax idsBjörn Linse2018-08-13
| | | | | As attribute ids is the convention in the UI protocol Also remove non-threadsafe calls in tui.c to syntax module.
* test: assert scroll region state for clearBjörn Linse2018-07-24
| | | | some clients assume this, so tests should check it
* ui: add tests for hlstate extensionBjörn Linse2018-07-21
|
* ui: use line-based rather than char-based updates in screen.cBjörn Linse2018-07-21
| | | | | | | | | | | | | Add ext_newgrid and ext_hlstate extensions. These use predefined highlights and line-segment based updates, for efficiency and simplicity.. The ext_hlstate extension in addition allows semantic identification of builtin and syntax highlights. Reimplement the old char-based updates in the remote UI layer, for compatibility. For the moment, this is still the default. The bulitin TUI uses the new line-based protocol. cmdline uses curwin cursor position when ext_cmdline is active.
* tests/screen.lua: treat "resize" like any other eventBjörn Linse2018-07-11
| | | | Saves ~10 seconds in UI tests
* ui/tui: highlighting refactorBjörn Linse2018-02-11
| | | | | | | | Make HlAttr contain highlighting state for both color modes (cterm and rgb). This allows us to implement termguicolors completely in the TUI. Simplify some logic duplicated between ui.c and screen.c. Also avoid some superfluous highlighting reset events.
* ui: forward relevant option updates to UIs (#7520)Björn Linse2017-12-12
| | | also make termguicolors mutable after startup
* ui: fix glitch with both ext_cmdline and cmd_wildmenuBjörn Linse2017-12-06
|
* functests: Fix typoZyX2017-06-28
|
* functests: Fix screen.lua supplying dedent additional argumentZyX2017-06-21
|
* test: api: Do not truncate errors <1 MB.Justin M. Keyes2017-04-23
|
* ui: use an array for mode stylesBjörn Linse2017-04-21
|
* ui: add tests for new cursor shape modesBjörn Linse2017-04-21
|
* test: helpers.execute() => helpers.feed_command()Justin M. Keyes2017-04-11
|
* tests: short form `screen:except(func)` expects condition only. #6440Björn Linse2017-04-06
| | | | | | - Use this to properly test cursor shape events. - tests: update screen_basic_spec to use `screen:expect` short form. Clearer than using `screen:wait` directy.
* 'guicursor': enabled=false if 'guicursor' is emptyJustin M. Keyes2017-04-04
| | | | | Closes #6429 Closes #6430
* api/cursor_style_set: mode descriptionsJustin M. Keyes2017-04-01
|
* 'guicursor': Empty means "block cursor in all modes".Justin M. Keyes2017-04-01
| | | | Also: update default 'guicursor' to match the documentation.
* tui: 'guicursor' shape #6044Matthieu Coudron2017-04-01
| | | | Closes #2583
* coverity/133845: Negative array index read. (FP)Justin M. Keyes2017-01-23
| | | | | | | | `find_command(s->ca.cmdchar) >= 0` was established near the start of normal_execute(). And `unshift_special(&s->ca);` "should" not ever result in s->ca.cmdchar containing a multibyte char. So only an assert() is needed here.
* tui: Enable mode-sensitive cursor by default.Justin M. Keyes2017-01-20
| | | | | | | | | | | | | | Also give NVIM_TUI_ENABLE_CURSOR_SHAPE more granularity: 0 = do not change cursor shape 1 = non-blinking ("steady") cursor with mode-sensitive shape 2 = blinking cursor with mode-sensitive shape Note: blink state is not changed for Konsole, instead user's terminal preference makes the decision. (Can't do that for xterm-likes, DECSCUSR forces us to choose blink-state.) This is a temporary step until the TUI respects 'guicursor' Ref: https://github.com/neovim/neovim/issues/2583#issuecomment-272988384
* Merge pull request #5963 from jamessan/screen-expect-clarityJames McCoy2017-01-18
|\ | | | | test: screen: Assert expected row count matches configured screen height
| * test: screen: Assert expected row count matches configured screen heightJames McCoy2017-01-18
| | | | | | | | | | | | | | | | | | | | When there is a difference in expected vs. actual row count, the user gets a confusing message about being unable to string concat a nil value from screen:expect. This assert makes it clear what the problem is rather than requiring people to dig through the code of screen:expect to determine what happened.
* | test: nvim_ui_attach() with huge dimensions. (#5974)Justin M. Keyes2017-01-18
|/ | | | | | | Also: - Attempt to constrain wall-of-text in screen.lua. - Windows: Enable screen_basic_spec.lua Closes #2180
* os/shell: Throttle :! output, pulse "..." message.Justin M. Keyes2016-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | Periodically skip :! spam. This is a "cheat" that works for all UIs and greatly improves responsiveness when :! spams MB or GB of output: :!yes :!while true; do date; done :!git grep '' :grep -r '' * After ~10KB of data is seen from a single :! invocation, output will be skipped for ~1s and three dots "..." will pulse in the bottom-left. Thereafter the behavior alternates at every: * 10KB received * ~1s throttled This also avoids out-of-memory which could happen with large :! outputs. Note: This commit does not change the behavior of execute(':!foo'). execute(':!foo') returns the string ':!foo^M', it captures *only* Vim messages, *not* shell command output. Vim behaves the same way. Use system('foo') for capturing shell command output. Closes #1234 Helped-by: oni-link <knil.ino@gmail.com>
* add cmdline mode to modechange of RPC and testschemzqm2016-11-30
| | | | | | | | use set_cursor_shape_bar for cmdline mode fix test of screen_basic_spec.lua & screen.lua comment fix
* ui: add tests for ui_mode_changeBjörn Linse2016-11-25
| | | | | Also fix snapshot_util() to work even if default_attr_ids is not a proper lua array.
* api/ui: add tests for popupmenu_external eventsBjörn Linse2016-08-29
| | | | update screen.lua to use new style nvim_ui_attach
* tests: add note to expect() message about snapshot_util()Björn Linse2016-08-14
|
* functests: Check logs in lua codeZyX2016-06-10
| | | | | | It is otherwise impossible to determine which test failed sanitizer/valgrind check. test/functional/helpers.lua module return was changed so that tests which do not provide after_each function to get new check will automatically fail.
* cmdline: Redraw the cmdline after processing eventsBjörn Linse2016-05-24
| | | | | | | vim-patch:7.4.1603 TODO(bfredl): if we allow events in HITRETURN and ASKMORE states, we need to add the necessary redraws as well.
* test: Screen also checks 'special' when testing attribute equalityAdnoC2016-05-17
|
* test: Add a test for the new guisp highlighting feature.KillTheMule2016-05-17
| | | | Screen.lua needed a little cosmetical adjustment to print out the color nicely.
* test: Fix tests failingAdnoC2016-05-17
|
* Update lua client to 0.0.1-24Thiago de Arruda2016-04-13
| | | | | The new version of the lua client uses libmpack as a backend, and some test scripts had to be updated to reflect that.
* Tests: fix according to lualintMarco Hinz2016-02-29
|