aboutsummaryrefslogtreecommitdiff
path: root/test/functional/terminal
Commit message (Collapse)AuthorAge
* 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.
* :terminal Enter/Leave should not increment jumplistJustin M. Keyes2018-02-07
| | | | | | | | | | | The old behavior is probably not justified, for the usual reason: terminal buffers may have interactive processes, so cursor placement is arbitrary, therefore tracking it in the jumplist is useless (or worse). N.B.: per the docstring for `checkpcmark()` it looks like we were calling `checkpcmark()` and `setpcmark()` in the wrong order. closes #3723
* tui: final_column_wrap(): fix row calculationJustin M. Keyes2018-01-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #7572 closes #7579 closes #7628 ASAN report: ==9500==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6040000024c0 at pc 0x00000187d2ca bp 0x7fc3c6e58d10 sp 0x7fc3c6e58d08 READ of size 8 at 0x6040000024c0 thread T1 0 0x187d2c9 in ugrid_put /home/vagrant/neovim/build/../src/nvim/ugrid.c:107:17 1 0x1850adf in tui_put /home/vagrant/neovim/build/../src/nvim/tui/tui.c:1012:10 2 0x18a6ce6 in ui_bridge_put_event /home/vagrant/neovim/build/src/nvim/auto/ui_events_bridge.generated.h:154:3 3 0xa4dcda in multiqueue_process_events /home/vagrant/neovim/build/../src/nvim/event/multiqueue.c:150:7 4 0xa478bf in loop_poll_events /home/vagrant/neovim/build/../src/nvim/event/loop.c:63:3 5 0x185451c in tui_main /home/vagrant/neovim/build/../src/nvim/tui/tui.c:362:12 6 0x18a3080 in ui_thread_run /home/vagrant/neovim/build/../src/nvim/ui_bridge.c:106:3 7 0x7fc3caaac6b9 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x76b9) 8 0x7fc3c9ca33dc in clone /build/glibc-bfm8X4/glibc-2.23/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:109 0x6040000024c0 is located 0 bytes to the right of 48-byte region [0x604000002490,0x6040000024c0) allocated by thread T1 here: 0 0x50e048 in malloc (/home/vagrant/neovim/build/bin/nvim+0x50e048) 1 0xf7ab71 in try_malloc /home/vagrant/neovim/build/../src/nvim/memory.c:87:15 2 0xf7ad99 in xmalloc /home/vagrant/neovim/build/../src/nvim/memory.c:121:15 3 0x187937b in ugrid_resize /home/vagrant/neovim/build/../src/nvim/ugrid.c:32:17 4 0x184be58 in tui_resize /home/vagrant/neovim/build/../src/nvim/tui/tui.c:770:3 5 0x18a3dc8 in ui_bridge_resize_event /home/vagrant/neovim/build/src/nvim/auto/ui_events_bridge.generated.h:4:3 6 0xa4dcda in multiqueue_process_events /home/vagrant/neovim/build/../src/nvim/event/multiqueue.c:150:7 7 0xa478bf in loop_poll_events /home/vagrant/neovim/build/../src/nvim/event/loop.c:63:3 8 0x185451c in tui_main /home/vagrant/neovim/build/../src/nvim/tui/tui.c:362:12 9 0x18a3080 in ui_thread_run /home/vagrant/neovim/build/../src/nvim/ui_bridge.c:106:3 10 0x7fc3caaac6b9 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x76b9) Thread T1 created by T0 here: 0 0x4655ed in __interceptor_pthread_create (/home/vagrant/neovim/build/bin/nvim+0x4655ed) 1 0x1ad87b0 in uv_thread_create /home/vagrant/neovim/.deps/build/src/libuv/src/unix/thread.c:75 2 0x184b9aa in tui_start /home/vagrant/neovim/build/../src/nvim/tui/tui.c:159:10 3 0x188dd4c in ui_builtin_start /home/vagrant/neovim/build/../src/nvim/ui.c:125:3 4 0xe6d399 in main /home/vagrant/neovim/build/../src/nvim/main.c:457:5 5 0x7fc3c9bbc82f in __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:291
* win: enable tests in ex_terminal_specJan Edmund Lazo2018-01-06
|
* ui: forward relevant option updates to UIs (#7520)Björn Linse2017-12-12
| | | also make termguicolors mutable after startup
* tui: flush -V3 ('verbose' >= 3) info ASAPJustin M. Keyes2017-12-05
|
* test/tui: -V3log logs terminfo valuesJustin M. Keyes2017-12-05
|
* test: macOS 10.13: unibilium cannot find "xterm" terminfoJustin M. Keyes2017-12-05
| | | | | On some macOS versions we can't find the terminfo for whatever reason, so just skip the test if it fails.
* test: tui_spec: narrower scope for timeout tweaksJustin M. Keyes2017-12-05
|
* test: tui_spec.lua: use robust settingsJustin M. Keyes2017-11-27
|
* tui: expose terminal type in 'term' optionJustin M. Keyes2017-11-27
| | | | | | | | | | Since "builtin" terminfo definitions were implemented (7cbf52db1bdf), the decisions made by tui.c and terminfo.c are more relevant. Exposing that decision in the 'term' option helps with troubleshooting. Also: remove code that allowed setting t_Co. `:set t_Co=…` has never worked; the highlight_spec test asserting that nvim_set_option('t_Co') _does_ work makes no sense, and should not have worked.
* defaults: scrollback=10000 (#7556)Justin M. Keyes2017-11-14
|
* Merge pull request #7545 from jamessan/test-fixesJames McCoy2017-11-12
|\ | | | | Fix test failures found in Debian builds, closes #7522
| * tests: terminal: Assert for SIGWINCH handling before continuingJames McCoy2017-11-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes test failures like test/functional/terminal/cursor_spec.lua @ 62: terminal cursor with number column is positioned correctly when focused ./test/functional/ui/screen.lua:302: Row 2 did not match. Expected: |{7: 1 }tty ready | |*{7: 2 }{1: } | |{7: 3 } | |{7: 4 } | |{7: 5 } | |{7: 6 } | |{3:-- TERMINAL --} | Actual: |{7: 1 }tty ready | |*{7: 2 }rows: 6, cols: 46 | |{7: 3 }{1: } | |{7: 4 } | |{7: 5 } | |{7: 6 } | |{3:-- TERMINAL --} |
| * tui_spec: Convert nil to "" before formatting itJames McCoy2017-11-12
| | | | | | | | | | | | | | This fixes an apparent difference in behavior between Lua and LuaJIT. Lua fails to format nil: test/functional/terminal/tui_spec.lua:381: bad argument #2 to 'format' (string expected, got nil)
* | :terminal : fix crash on resize (#7547)Justin M. Keyes2017-11-13
|/ | | | | | closes #7538 Fix wrong window references from #7440 Remove some eager resizing. Still mostly doesn't address #4997.
* test/win: partially disable :terminal resize test (#7453)Justin M. Keyes2017-10-29
|
* test: :terminal + numberwidth=9Justin M. Keyes2017-10-28
|
* terminal: Account for number column (#5310)Sam Wilson2017-10-27
|
* test: FocusGained: retry() cmdline-mode testJustin M. Keyes2017-09-09
|
* test: ex_terminal_spec.lua: retry flaky test (#7245)Justin M. Keyes2017-09-07
| | | https://api.travis-ci.org/jobs/271833660/log.txt
* test: FocusGained: press-enter promptJustin M. Keyes2017-09-05
|
* test: FocusGained: let UI settle before sending inputJustin M. Keyes2017-09-05
| | | | | This significantly increases the likelihood that the :echo'd text will be included in the next UI flush, instead of being lost.
* eventloop: restore redraw in cmdline K_EVENT handlerJustin M. Keyes2017-09-05
| | | | Restores behavior from commit: 02e86ef04cc1
* test: FocusGained/FocusLostJustin M. Keyes2017-09-05
|
* test: use global_helpers.uname() instead of calling to nvim UUTJustin M. Keyes2017-09-05
|
* Repair tui_spec functional testsDrew Neil2017-08-21
|
* Repair ex_terminal_spec functional testsDrew Neil2017-08-21
|
* test/win: give up on this oneJustin M. Keyes2017-08-16
|
* test/win: place cursor at edge to tickle SIGWINCHJustin M. Keyes2017-08-16
|
* test: tty-test.c: keep `tty_out` handle aroundJustin M. Keyes2017-08-16
| | | | | Now the window_split_tab_spec.lua test seems to work. Also do some cleanup.
* win/test: enable more :terminal testsJustin M. Keyes2017-08-16
| | | | | | To deal with SIGWINCH limitations on Windows, change some resize tests to _shrink_ the screen width. ... But this didn't work, so still ignoring those tests on Windows.
* test: tty-test.c: restore win32 SIGWINCH handlerJustin M. Keyes2017-08-16
|
* test: cleanupJustin M. Keyes2017-08-16
|
* win/pty: log errorserw72017-08-16
|
* win/test: tty-test: print screen size explicitly with CTRL-Qerw72017-08-16
| | | | | tty-test.exe causes abnormal termination with low repeatability, try changing it so as not to use SIGWINCH.
* win: support :terminalerw72017-08-16
|
* test: tui_spec: Remove unused is_linux variableJames McCoy2017-07-07
|
* tui: Correct commentary on tmux colour tests.Jonathan de Boyne Pollard2017-06-03
|
* tui: Add built-in terminfo entry for VTE.Jonathan de Boyne Pollard2017-06-03
| | | | | Also slightly refactor the way in which GNOME/MATE Terminal pretending to be xterm is detected.
* tui: Add st to the always 256-colour capable list.Jonathan de Boyne Pollard2017-06-03
| | | | Also comment and augment some terminal colour tests.
* tui: Correct a copy and paste error in stterm tests.Jonathan de Boyne Pollard2017-06-03
| | | | The test decsription was correct; the test was not.
* tui: Update colour tests some more.Jonathan de Boyne Pollard2017-06-03
|
* tui: Update colour tests.Jonathan de Boyne Pollard2017-06-03
|
* tui: Also fix "linux*" terminfo entries. #6673Jonathan de Boyne Pollard2017-05-04
| | | | | | | | | | | The terminfo entry for linux only advertises 8 colours, but nvim tries to make it display 16 colours anyway, resulting in erroneous SGR control sequences for colours 8 and above. The Linux kernel terminal emulator itself has actually understood the 256-colour control sequences since version 4.8 and the 16-colour control sequences since version 4.9. Thus we apply the same terminfo fixup as we apply for *xterm* and *256*, to emit the 16-colour and 256-colour control sequences even if terminfo's setaf and setab do not advertise them.
* Merge #6539 'More cursor shape modes'Justin M. Keyes2017-04-21
|\
| * tests: detect invalid helpers.sleepBjörn Linse2017-04-21
| |
| * ui: add tests for new cursor shape modesBjörn Linse2017-04-21
| |
* | 'scrollback': Allow :setlocal -1 on normal buffersJustin M. Keyes2017-04-20
|/ | | | Avoids a spurious :loadview error.
* win: default shellxescape, shellxquote to emptyRui Abreu Ferreira2017-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling cmd.exe in Windows follows a very different pattern from Vim. The primary difference is that Vim does a nested call to cmd.exe, e.g. the following call in Vim system('echo a 2>&1') spawns the following processes "C:\Program Files (x86)\Vim\vim80\vimrun" -s C:\Windows\system32\cmd.exe /c (echo a 2^>^&1 ^>C:\Users\dummy\AppData\Local\Temp\VIoC169.tmp 2^>^&1) C:\Windows\system32\cmd.exe /c C:\Windows\system32\cmd.exe /c (echo a 2^>^&1 ^>C:\Users\dummy\AppData\Local\Temp\VIo3C6C.tmp 2^>^&1) C:\Windows\system32\cmd.exe /c (echo a 2>&1 >C:\Users\dummy\AppData\Local\Temp\VIo3C6C.tmp 2>&1) The escaping with ^ is needed because cmd.exe calls itself and needs to preserve the special metacharacters for the last call. However in nvim no nested call is made, system('') spawns a single cmd.exe process. Setting shellxescape to "" disables escaping with ^. The previous default for shellxquote=( wrapped any command in parenthesis, in Vim this is more meaningful due to the use of tempfiles to store the output and redirection (also see &shellquote). There is a slight benefit in having the default be empty because some expressions that run in console will not run within parens e.g. due to unbalanced double quotes system('echo "a b')