Problem: Docs and tests for :const can be improved.
Solution: Improve documentation, add a few more tests. (Ryuichi Hayashida,
closesvim/vim#4551)
1c196e7b17
<Paste> is a 3-byte sequence and the beginning one or two bytes can appear at
the very end of the typeahead buffer. When this happens, we were exiting from
`vgetorpeek()` instead of reading more characters to see the complete sequence.
I think this should fix#7994 -- at least partially. Before this change, when I
paste exactly 64 characters into a freshly booted instance, I get what I pasted
plus the literal text "<Paste>" at the end. Nvim also stays in nopaste mode.
The attached test case fails in this manner without the code change.
Fix#7994
Problem: Virtual edit replace with multi-byte fails at end of line. (Lukas
Werling)
Solution: use ins_char() to add the character. (Christian Brabandt,
closesvim/vim#3114) Rename PCHAR() to PBYTE() to avoid mistakes like
this.
630afe889a
Problem: Cannot use a lambda for the skip argument to searchpair().
Solution: Evaluate a partial, funcref and lambda. (LemonBoy, closesvim/vim#1454,
closesvim/vim#2265)
48570488f1
* screen: Fix to draw signs with combining characters.
The buffer size for signs can be too small, because the upper length
limit of a sign can be 56 bytes. If combining characters are only two
bytes in size, this reduces to 32 bytes.
* screen: Adjust buffer size to maximal sign column count
vim-patch:8.0.0908: cannot set terminal size with options
vim-patch:8.0.0909: channel test fails
vim-patch:8.0.0920: cursor wrong after switching altscreen in terminal
vim-patch:8.0.0923: crash in GUI when terminal job exits
vim-patch:8.0.0924: terminal window not updated after using term_sendkeys()
vim-patch:8.0.0926: when job in terminal window ends topline is wrong
vim-patch:8.0.0927: if a terminal job sends a blank title "running" is not shown
vim-patch:8.0.0929: :term without argument does not work
vim-patch:8.0.0936: mode() returns wrong value for a terminal window
vim-patch:8.0.0938: scrolling in terminal window is inefficient
vim-patch:8.0.0939: Test_terminal_env is flaky
vim-patch:8.0.0940: Test_terminal_scrape_multibyte is flaky
vim-patch:8.0.0942: using freed memory with ":terminal"
vim-patch:8.0.0943: MS-Windows: Test_terminal_scrape_multibyte may fail
vim-patch:8.0.0957: a terminal job can deadlock when sending many keys
vim-patch:8.0.0958: terminal test fails on Windows when winpty dll is missing
vim-patch:8.0.0959: build failure on MS-Windows
vim-patch:8.0.0963: terminal test fails on MacOS
vim-patch:8.0.0964: channel write buffer does not work with poll()
vim-patch:8.0.0965: not restoring cursor shape after it was set in a terminal
vim-patch:8.0.0968: crash when switching terminal modes
vim-patch:8.0.0973: initial info about blinking cursor is wrong
vim-patch:8.0.0977: cannot send lines to a terminal job on MS-Windows
vim-patch:8.0.0978: writing to terminal job is not tested
vim-patch:8.0.0979: terminal noblock test fails on MS-Windows
vim-patch:8.0.0981: cursor in terminal window blinks by default
vim-patch:8.0.0982: cannot use a terminal when 'encoding' is non-utf8 multi-byte
vim-patch:8.0.0984: terminal blinking cursor not correct in the GUI
vim-patch:8.0.0985: libvterm has its own idea of character width
vim-patch:8.0.0987: terminal: second byte of double-byte char wrong
vim-patch:8.0.0990: with DBCS 'encoding' wrong pasting register into terminal
vim-patch:8.0.0991: using wrong character conversion for DBCS
vim-patch:8.0.0992: terminal title is wrong when 'encoding' is DBCS
vim-patch:8.0.0994: MS-Windows: cursor in terminal blinks undesirably
vim-patch:8.0.0995: terminal tests fail on Mac
vim-patch:8.0.1009: Xterm cursor blinking status may be inverted
vim-patch:8.0.1011: terminal test fails with Athena and Motif
vim-patch:8.0.1015: missing update to terminal test
vim-patch:8.0.1034: sending buffer lines to terminal doesn't work on MS-Windows
vim-patch:8.0.1036: ++eof argument for terminal only available on MS-Windows
vim-patch:8.0.1049: shell on Mac can't handle long text
vim-patch:8.0.1052: term_start() does not allow in_io, out_io and err_io options
vim-patch:8.0.1054: terminal test fails on MS-Windows
vim-patch:8.0.1057: terminal scrape test waits too long
vim-patch:8.0.1058: terminal redirection test is flaky
vim-patch:8.0.1070: terminal test is flaky on Mac
vim-patch:8.0.1075: MS-Windows: mouse does not work in terminal
vim-patch:8.0.1076: term_start() does not take callbacks
vim-patch:8.0.1080: memory leak for eof_chars terminal option and buffer name
vim-patch:8.0.1081: memory leak for the channel write queue
vim-patch:8.0.1083: leaking memory in input part of channel
vim-patch:8.0.1087: Test_terminal_cwd is flaky
vim-patch:8.0.1095: terminal multibyte escrape test is flaky
vim-patch:8.0.1101: channel write fails if writing to log fails
vim-patch:8.0.1103: converting cterm color fails for grey ramp
vim-patch:8.0.1106: terminal colors wrong on an MS-Windows console
vim-patch:8.0.1116: terminal test fails on MS-Windows
vim-patch:8.0.1117: Test_terminal_no_cmd hangs on MS-Windows with GUI
vim-patch:8.0.1126: endless resize when terminal showing in two buffers
vim-patch:8.0.1131: not easy to trigger an autocommand for new terminal window
vim-patch:8.0.1149: libvterm colors differ from xterm
vim-patch:8.0.1167: Motif: typing in terminal window is slow
vim-patch:8.0.1173: terminal window is not redrawn after CTRL-L
vim-patch:8.0.1177: in a terminal window the popup menu is not cleared
vim-patch:8.0.1213: setting 'mzschemedll' has no effect
vim-patch:8.0.1261: program in terminal window gets NL instead of CR
vim-patch:8.0.1277: terminal window CR-NL conversions may cause problems
vim-patch:8.0.1286: occasional crash when using a channel
vim-patch:8.0.1296: checking the same condition twice
vim-patch:8.0.1315: build still fails on Mac
vim-patch:8.0.1316: build still still fails on Mac
vim-patch:8.0.1317: accessing freed memory in term_wait()
vim-patch:8.0.1323: mouse events in a terminal window may cause endless loop
vim-patch:8.0.1328: trouble when using ":term ++close" with autocmd
vim-patch:8.0.1340: MS-Windows: cannot build GUI without IME
vim-patch:8.0.1342: cannot build with Motif and multi-byte
vim-patch:8.0.1347: MS-Windows: build broken by misplaced curly
vim-patch:8.0.1359: libvterm ANSI colors can not always be recognized
vim-patch:8.0.1360: the Terminal highlighting doesn't work in a terminal
vim-patch:8.0.1362: terminal window colors wrong when using Terminal highlighting
vim-patch:8.0.1368: cannot drag status or separator of new terminal window
vim-patch:8.0.1376: cursor in terminal not always updated
vim-patch:8.0.1381: ch_readraw() waits for NL if channel mode is NL
vim-patch:8.0.1429: crash when calling term_start() with empty argument
vim-patch:8.0.1430: crash when term_start() fails
vim-patch:8.0.1462: missing yet another file in patch
vim-patch:8.0.1476: screen isn't always updated right away
vim-patch:8.0.1477: redraw flicker when moving the mouse outside of terminal window
vim-patch:8.0.1484: reduntant conditions
vim-patch:8.0.1515: BufWinEnter event fired when opening hidden terminal
vim-patch:8.0.1521: Shift-Tab does not work in a terminal window
vim-patch:8.0.1533: libterm doesn't support requesting fg and bg color
vim-patch:8.0.1537: xxd does not skip NUL lines when using ebcdic
vim-patch:8.0.1542: terminal screen dump does not include cursor position
vim-patch:8.0.1546: using feedkeys() in a terminal may trigger mappings
vim-patch:8.0.1552: may leak file descriptors when executing job
vim-patch:8.0.1576: Perl VIM::Buffers() does not find every buffer
vim-patch:8.0.1594: :conform qall not tested with active terminal window
vim-patch:8.0.1598: cannot select text in a terminal with the mouse
vim-patch:8.0.1605: terminal test is a bit flaky
vim-patch:8.0.1611: CTRL-W in system terminal does not go to job
vim-patch:8.0.1615: term_dumpload() does not use the right colors
vim-patch:8.0.1623: terminal kill tests are flaky
vim-patch:8.0.1628: channel log doesn't mention exiting
vim-patch:8.0.1629: Mac: getpagesize() is deprecated
vim-patch:8.0.1631: testing with Vim running in terminal is a bit flaky
vim-patch:8.0.1632: in a terminal dump NUL and space are different
vim-patch:8.0.1636: no test for term_dumpload() and term_dumpdiff()
vim-patch:8.0.1637: no test for term_dumpdiff() options argument
vim-patch:8.0.1638: popup test fails depending on environment variable
vim-patch:8.0.1640: Test_cwd() is flaky
vim-patch:8.0.1642: running Vim in terminal fails with two windows
vim-patch:8.0.1643: terminal API tests fail
vim-patch:8.0.1644: terminal API tests still fail
vim-patch:8.0.1645: test for terminal response to escape sequence may fail
vim-patch:8.0.1648: resource fork tool doesn't work on Python 3
vim-patch:8.0.1652: term_dumpwrite() does not output composing characters
vim-patch:8.0.1656: no option to have xxd produce upper case variable names
vim-patch:8.0.1657: crash when reading a channel
vim-patch:8.0.1662: showing dump diff doesn't mention both file names
vim-patch:8.0.1664: test failure because of not allocating enough space
vim-patch:8.0.1667: terminal window tests are flaky
vim-patch:8.0.1670: terminal window tests are still a bit flaky
vim-patch 8.0.1671: crash when passing non-dict argument as env to job_start()
vim-patch:8.0.1673: terminal window tests are still a bit flaky
vim-patch:8.0.1680: memory allocated by libvterm is not profiled
vim-patch:8.0.1681: the format attribute fails with MinGW
vim-patch:8.0.1684: ml_get errors when using terminal window for shell command
vim-patch:8.0.1690: not easy to run one test with gvim instead of vim
vim-patch:8.0.1691: xxd test sometimes fails
vim-patch:8.0.1694: terminal API test is a bit flaky
vim-patch:8.0.1695: xxd test not run on MS-Windows
vim-patch:8.0.1703: in the tutor 'showcmd' is not set
vim-patch:8.0.1709: some non-C89 code may slip through
vim-patch:8.0.1714: term_setsize() does not give an error in a normal buffer
vim-patch:8.0.1715: terminal buffer can be 1 more than 'terminalscroll' lines
vim-patch:8.0.1716: test for term_setsize() does not give a good error message
vim-patch:8.0.1718: terminal scrollback test fails on MS-Windows
vim-patch:8.0.1720: when a timer is running a terminal window may not close
vim-patch:8.0.1721: no test for using the 'termsize' option
vim-patch:8.0.1724: declarations cannot be halfway a block
vim-patch:8.0.1728: condition always false, useless code
vim-patch:8.0.1746: MS-Windows: channel tests fail
vim-patch:8.0.1761: job in terminal window with no output channel is killed
vim-patch:8.0.1762: terminal debug logging is a bit complicated
vim-patch:8.0.1775: MS-Windows: warning for unused variable
vim-patch:8.0.1780: test fails because Vim in a terminal uses wrong 'encoding'
vim-patch:8.0.1795: lose contact with jobs when :gui forks
vim-patch:8.0.1796: GUI: click on tab fails when the focus is in a terminal
vim-patch:8.0.1801: MS-Windows: redirecting terminal output does not work
vim-patch:8.0.1802: MS-Windows: terminal test fails
vim-patch:8.0.1814: crash with terminal window and with 'lazyredraw' set
vim-patch:8.0.1818: lines remove from wrong buffer when using terminal window
vim-patch:8.0.1820: terminal window redirecting stdout does not show stderr
vim-patch:8.0.1821: cursor in terminal window moves when pressing CTRL-W
vim-patch:8.0.1823: test for terminal stdout redirection is flaky
vim-patch:8.0.1830: switching to Terminal-Normal mode does not redraw
vim-patch:8.0.1838: cursor in wrong pos when switching to Terminal-Normal mode
vim-patch:8.0.1841: HP-UX does not have setenv()
vim-patch:8.0.1846: Python interface is incompatible with lldb
vim-patch:8.0.1848: 'termwinscroll' does not work properly
vim-patch:8.1.0013: using freed memory when changing terminal cursor color
vim-patch:8.1.0015: cursor color wrong when closing a terminal window
vim-patch:8.1.0016: possible crash in term_wait()
vim-patch:8.1.0026: terminal test fails with very tall terminal
vim-patch:8.1.0029: terminal test fails on MS-Windows when "wc" exists
vim-patch:8.1.0031: terminal test aucmd_on_close if flaky
vim-patch:8.1.0033: keys to stop Vim in terminal are wrong
vim-patch:8.1.0076: command getting cleared with CTRL-W : in a terminal window
vim-patch:8.1.0082: in terminal window, typing : at more prompt, inserts ':'
vim-patch:8.1.0088: terminal test for stdout and stderr is a bit flaky
vim-patch:8.1.0094: help text "usage:" is not capatalized
vim-patch:8.1.0106: build fails when HAVE_DATE_TIME is undefined
vim-patch:8.1.0171: typing CTRL-W n in a terminal window causes ml_get error
vim-patch:8.1.0182: Unicode standard was updated
vim-patch:8.1.0210: still a few K&R function declarations
vim-patch:8.1.0227: spaces instead of tabs in makefile
vim-patch:8.1.0238: 'buftype' is cleared when using ":term ++hidden cat"
vim-patch:8.1.0243: using :term ++close ++hidden closes a window
vim-patch:8.1.0263: channel log doesn't show part of channel
vim-patch:8.1.0283: missing test dump
vim-patch:8.1.0326: screen dump does not consider NUL and space equal
vim-patch:8.1.0329: using inputlist() during startup results in garbage
vim-patch:8.1.0358: crash when using term_dumpwrite() after the job finished
vim-patch:8.1.0520: screen diff test sometimes fails
vim-patch:8.1.0530: channel and terminal tests that start a server can be flaky
vim-patch:8.1.0600: channel test is flaky
vim-patch:8.1.0626: MS-Windows: no resize to fit parent when using --windowid
vim-patch:8.1.0633: crash when out of memory while opening a terminal window
vim-patch:8.1.0712: MS-Windows build instructions are a bit outdated
vim-patch:8.1.0766: various problems when using Vim on VMS
vim-patch:8.1.0785: depending on the configuration some functions are unused
vim-patch:8.1.0821: xxd "usage" output and other arguments not tested
vim-patch:8.1.0854: xxd does not work with more than 32 bit addresses
vim-patch:8.1.0855: cannot build xxd with MSVC 10
vim-patch:8.1.0893: terminal test is a bit flaky
vim-patch:8.1.0966: one terminal test is flaky
vim-patch:8.1.1125: libvterm does not handle the window position report
vim-patch:8.1.1169: writing coverage info in a separate dir is not needed
vim-patch:8.1.1464: only 4-digit rgb termresponse is recognized
vim-patch:8.1.1468: the generated desktop files may be invalid
vim-patch:8.1.1480: desktop file check doesn't run on CI
vim-patch:8.1.1481: length for two-digit rgb termresponse is off by one
vim-patch:8.1.1482: no test for wincol() depending on the 'number' option
vim-patch:8.1.1487: older msgfmt cannot generate proper .desktop file
vim-patch:8.1.1500: wrong shell command when building with VIMDLL and "! in 'go'
vim-patch:8.1.1503: sound test fails on Travis
vim-patch:8.1.1504: sound test still fails on Travis
vim-patch:8.1.1506: syntax error in Travis config
vim-patch:8.1.1507: sound test still fails on Travis
vim-patch:8.1.1512: ch_evalexpr() hangs when used recursively
vim-patch:8.1.1514: MS-Windows: wrong shell command with ! in 'guioptions'
vim-patch:8.1.1529: libcanberra is linked with even when not used
vim-patch:8.1.1531: clipboard type name is inconsistent
vim-patch:8.1.1532: build fails
vim-patch:8.1.1533: GUI build fails on Mac
vim-patch:8.1.1556: command for failing screenshot does not include directory
vim-patch:8.1.1557: compiler warning for unused variables in tiny version
vim-patch:8.1.1566: error message when terminal closes in another tab
vim-patch:8.1.1578: MS-Windows: pathdef.c should depend on build options
vim-patch:8.1.1582: cannot build with +textprop but without +timers
vim-patch:8.0.0947: entering terminal using C-O C-W C-W goes to Insert mode
vim-patch:8.1.1490: when a single test fails the exit code is not set
vim-patch:8.1.1492: MS-Windows: when "!" is in 'guioptions' ":!start" fails
vim-patch:8.0.1162: shared script for tests cannot be included twice
vim-patch:8.1.1530: Travis config is not optimal
There might be an existing job already - maybe due to some other test,
but in this case there was only one failure in the test run.
```
[----------] Running tests from C:/projects/neovim/test/functional\api\proc_spec.lua
[ RUN ] api nvim_get_proc_children returns child process ids: ERR
test\functional\helpers.lua:392:
retry() attempts: 450
C:/projects/neovim/test/functional\api\proc_spec.lua:22: Expected objects to be the same.
Passed in:
(number) 2
Expected:
(number) 1
stack traceback:
test\functional\helpers.lua:392: in function 'retry'
C:/projects/neovim/test/functional\api\proc_spec.lua:21: in function <C:/projects/neovim/test/functional\api\proc_spec.lua:17>
```
https://ci.appveyor.com/project/neovim/neovim/builds/25461215/job/8ns204v6091iy9rs?fullLog=true#L2672
- allow for passing in BUSTED_ARGS via env
- quote values of TEST_TAG/TEST_FILTER
Previously TEST_FILTER="'foo bar'" was required.
This allows for:
make functionaltest TEST_FILE=test/functional/terminal/tui_spec.lua \
BUSTED_ARGS="--no-keep-going --shuffle" \
TEST_FILTER="TUI background color handles"
* RunTests.cmake: BUILD_DIR for Xtest files, isolated TMPDIR
Assume relative path for given TEST_PATH.
The package argument is case sensitive, which is important to handle
X_FIND_REQUIRED properly, i.e. error out early if it is not found:
CMake Error at /usr/share/cmake-3.14/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find Unibilium (missing: UNIBILIUM_LIBRARY UNIBILIUM_INCLUDE_DIR)
Otherwise it would continue until:
CMake Error: The following variables are used in this project, but they
are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the
CMake files:
UNIBILIUM_INCLUDE_DIR (ADVANCED)
Quickly checked via `rg 'find_package_handle_standard|find_package.*REQUIRED' -I | sort`.
Ref: https://gitlab.kitware.com/cmake/cmake/issues/19413
Problem: Using one item array size declaration is misleading.
Solution: Instead of using "[1]" and actually using a larger array, use
"[]". This is to verify that this C99 feature works for all
compilers.
f3a411783c
The following patch is N/A because Neovim requires C99.
vim-patch:8.0.1735: flexible array member feature not supported by HP-UX
Fails often on CI (OSX), e.g.:
```
1 FAILED:
Found errors in Test_cursorhold_insert():
function RunTheTest[37]..Test_cursorhold_insert line 9: Expected 1 but got 0
```
> Compiler: clang Xcode: xcode10.1 C
The test could be adjusted to re-try the timer a few times, but I do not
think it's really worth it currently, and that the test should be marked
as flaky instead.
* ci/before_install.sh: do not (try to) upgrade pip
It is not necessary usually (for our use case(s)), and rather good to
have this (implicitly) pinned.
* Simplify/improve Python info output
* Use pyenv-global to activate/use Python 2.7/7.7
* simplify pip-install of neovim, also for osx
This restores missing coverage again.
Move it to process_spawn in os/pty_process_unix.c, since it seems to
break printargs-test on Windows/AppVeyor otherwise (#10248).
Problem: setline() does not work on startup. (Manuel Ortega)
Solution: Do not check for ml_mfp to be set for the current buffer.
(Christian Brabandt)
9d954207e2
Problem: Cannot change a line in a buffer other than the current one.
Solution: Add setbufline(). (Yasuhiro Matsumoto, Ozaki Kiichi, closesvim/vim#1953)
b31cf2bb0b