| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Using freed memory when searching for pattern in path.
Solution: Make a copy of the line.
https://github.com/vim/vim/commit/409510c588b1eec1ae33511ae97a21eb8e110895
Cherry-pick Test_def_search() -> Test_macro_search() from patch 8.2.0369
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Various Ex commands not sufficiently tested.
Solution: Add more test cases. (Yegappan Lakshmanan, closes vim/vim#5673)
https://github.com/vim/vim/commit/818fc9ad143911b2faa0d7cee86724aa70a02080
Needs to assert E170 instead of E580 because patch 8.2.3486 has been
ported but patch 8.2.1183 hasn't.
|
| |
| |
| |
| |
| |
| | |
Problem: Some Ex code not covered by tests.
Solution: Add test cases. (Yegappan Lakshmanan, closes vim/vim#5659)
https://github.com/vim/vim/commit/406cd90f1963ca60813db91c413eef4b1b78ee44
|
| |
| |
| |
| |
| |
| | |
Problem: Prompt for s///c in Ex mode can be wrong.
Solution: Position the cursor before showing the prompt. (closes vim/vim#8073)
https://github.com/vim/vim/commit/e5b0b98a90acf420bb611fc99534982c98d0645b
|
| |
| |
| |
| |
| |
| | |
Problem: Some code not covered by tests.
Solution: Add test cases. (Yegappan Lakshmanan, closes vim/vim#5649)
https://github.com/vim/vim/commit/bc2b71d44a0b90b6aeb3534a76912fccbe5577df
|
| | |
|
| |
| |
| |
| |
| |
| | |
Problem: :helptags and some other functionality not tested.
Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#5567)
https://github.com/vim/vim/commit/e20b9ececa37a81c0340a78f61e57fa1bf46b06d
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Problem: Still a timer test that is flaky on Mac.
Solution: Loop with a sleep instead of one fixed sleep.
https://github.com/vim/vim/commit/315244d85b9b8faae549b1700e8cc2e45eaa68ea
|
| |
| |
| |
| |
| |
| | |
Problem: Still a timer test that is flaky on Mac.
Solution: Adjust the sleep times.
https://github.com/vim/vim/commit/413c04e8d515f604a17b90295c86a0fd547518ba
|
| |
| |
| |
| |
| |
| | |
Problem: Timer test sometimes fails on Mac.
Solution: Show more info when it fails.
https://github.com/vim/vim/commit/427dddf014fea1326ea7f8c0951b0667dc037409
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Another failing timer test.
Solution: Assert that timers are finished by the end of the test. Rename
test functions to make them easier to find.
https://github.com/vim/vim/commit/9a2fddcf04192a643dc97601d689c27f5bc5184f
Use test_garbagecollect_now() in Test_timer_retain_partial() like Vim.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Insufficient code coverage for ex_docmd.c functions.
Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#5618)
https://github.com/vim/vim/commit/9f6277bdde97b7767ded43a0b5a2023eb601b3b7
Cherry-pick Test_window_only() from patch 8.2.0203.
Cherry-pick a memory leak fix from patch 8.2.0399.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
vim-patch:8.2.0212: missing search/substitute pattern hardly tested
Problem: Missing search/substitute pattern hardly tested.
Solution: Add test_clear_search_pat() and tests. (Yegappan Lakshmanan,
closes vim/vim#5579)
https://github.com/vim/vim/commit/07ada5ff2fd8f22ed3233ae5c4ddf87c7b3f56fe
vim-patch:8.2.0250: test_clear_search_pat() is unused
Problem: test_clear_search_pat() is unused.
Solution: Remove the function. (Yegappan Lakshmanan, closes vim/vim#5624)
https://github.com/vim/vim/commit/4f5776c17cd86f904a7e2f92db297c73e28939b7
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
is set (#19306)
Problem: When :edit reuses the current buffer the alternate file is set to
the same buffer.
Solution: Only set the alternate file when not reusing the buffer.
(closes vim/vim#8783)
https://github.com/vim/vim/commit/b8bd2e6ebab03baf2672067067a599df69a278c0
Cherry-pick Test_cmdline_expand_special() from patches 8.2.{0243,2873}.
Move Test_cmd_backtick() to the right place.
|
|\ \
| | |
| | | |
vim-patch:8.2.{3530,3531}: ":buf \{a}" fails while ":edit \{a}" works
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Command line completion test fails on MS-Windows.
Solution: Do not test with "\{" on MS-Windows.
https://github.com/vim/vim/commit/39c47c310487b72bc78ff197b5a068a0bcf830de
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: ":buf \{a}" fails while ":edit \{a}" works.
Solution: Unescape "\{". (closes vim/vim#8917)
https://github.com/vim/vim/commit/21c1a0c2f10575dbb72fa873d33f0c1f6e170aa7
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Insufficient testing for 'statusline' and 'tabline'.
Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#6333)
https://github.com/vim/vim/commit/832adf9bb8cd39d8e982d8a35ed8a6d39b974494
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Tabline test fails in GUI.
Solution: Remove 'e' from 'guioptions'.
https://github.com/vim/vim/commit/73cd8fb3e87e4b29dfc489f58e56dee1839c18e5
Add missing file header.
|
|/ / |
|
| |
| |
| |
| |
| |
| | |
Problem: Csv and tsv files are not recognized.
Solution: Add patterns fo csv and tsv files. (Leandro Lourenci,
closes vim/vim#10680)
https://github.com/vim/vim/commit/99af91e5820c78a196c9272cd8ce5aa5be7bf374
|
|\ \ |
|
| | | |
|
| | |
| | |
| | | |
This can avoid divergences from Vim in some small places.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Arabic support excludes Farsi.
Solution: Add Farsi support to the Arabic support. (Ali Gholami Rudi,
Ameretat Reith)
https://github.com/vim/vim/commit/dc4fa190e7b9d6ba49416ce875d2192c4444d3eb
Omit Test_shape_final_to_medial(): removed in later patches.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Spellfile functionality not fully tested.
Solution: Add tests for SFX with removal of characters, spelling
suggestions with NOBREAK and others. (Dominique Pellé,
closes vim/vim#8293)
https://github.com/vim/vim/commit/bb162367ac77db877586086d7456685f2aeb8754
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Spellfile functionality not fully tested.
Solution: Add tests for CIRCUMFIX, NOBREAK and others. (Dominique Pellé,
closes vim/vim#8283)
https://github.com/vim/vim/commit/5a6cfb3ff2f2f422a3732f3855616c89dd19c19d
Reorder test_spellfile.vim to match upstream.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Cmdexpand.c insufficiently tested.
Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#5789)
https://github.com/vim/vim/commit/24ebd83e030e1c6f9a6be1f06232756ba4d00a8c
Map Q to gQ before every test since a test uses :mapclear.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Some code in ex_getln.c not covered by tests.
Solution: Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#5710)
https://github.com/vim/vim/commit/d30ae2fc4acb3861fc7dc9618c1f90eee997d412
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Ex_getln.c code not covered by tests.
Solution: Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#5702)
https://github.com/vim/vim/commit/578fe947e3ad0cc7313c798cf76cc43dbf9b4ea6
Cherry-pick Test_Ex_global() from patch 8.2.0293.
Test_rightleftcmd() fails if incsearch is enabled, so disable it.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Hang with combination of feedkeys(), Ex mode and :global.
(Yegappan Lakshmanan)
Solution: Add the pending_exmode_active flag.
https://github.com/vim/vim/commit/9e2bcb5d23138d45a0b6f9c1542b5facc807efe7
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem
-------
In #19040, I reported two things that started happening somewhen in the
last three months when using neovim in hterm (the Chrome Secure Shell
terminal):
1. Under certain circumstances, the window title (set by nvim
[i0]) would appear over the line I was typing, corrupting the screen.
2. If I changed my $TERM from xterm-256color to the new hterm-256color
(available since ncurses >=20210320), the window title corruption
was gone, but pane scrolling was broken.
Both problems are due to changes in the termcap files, their source of
truth being the ncurses project. See "Timeline of ncurses changes" below
for details.
Cause: title corruption
-----------------------
The title corruption when using hterm + TERM=xterm-256color can be
explained by event #4 (ncurses 2022-03-12) in the ncurses timeline:
The xterm-256color termcap file gained status line termcodes in ncurses
2022-03-12. These termcodes are used by Neovim to set the title when.
hterm does not have a status line. Due to ncurses versions earlier than
2022-03-12 missing the xterm status line capability, Neovim manually
fixed up [t0] the terminfo file if $TERM was xterm-256color. So if
before Neovim manually added fsl/tsl capabilties, and after they were
in the termcap file, why did hterm suddenly start getting corruption?
The answer is that the termcodes for these capabilties are different
when Neovim fixes them up, versus the one in the new termcap database:
fsl=\E[0$} // from xterm-256color
tsl=\E[2$~\E[1$}\E[%i%p1%d` // from xterm-256color
fsl=\x07 // patched by Neovim
tsl=\x1b]0; // patched by Neovim
hterm ignores the latter, but corrupts the screen with the former.
Solution: Make hterm users set hterm-256color, which lacks the new
fsl/tsl codes. Also, to reduce superfluous work, stop patching in this
capability when hterm is detected (even if hterm would ignore the
patched version).
Cause: pane corruption
----------------------
The pane corruption when using hterm + TERM=hterm-256color, but NOT when
using hterm + TERM=xterm-256color can be explained by:
- Neovim uses DECSLRM when available [p1] for performant scrolling.
- Both the hterm-256color and xterm-256color termcap databases
advertise support for DECSLRM (ncurses timeline #1, #2 and #3).
- hterm does not support DESCLRM [p2] (note: it does support DESCTBM for
top/bottom scrolling, but it's broken [p3] and not used by Neovim)
- xterm-alikes that are not real xterm generally don't support DECSLRM
either, so Neovim patches it out [p4].
When using hterm-256color, hterm is no longer considered an xterm-alike
by Neovim. As a result, DECSLRM is not cleared. hterm does not support
it, so corruption ensues.
This is a problem with the hterm-256color termcap file, but we're stuck
with it so the best we can do is patch over it.
Timeline of ncurses changes
---------------------------
1. 2019-05-19: Part of the DECSLRM capability (smglr AKA set_lr_margin)
added to vt420+lrmm, which xterm-256color inherits [n1]
2. 2021-03-20: hterm-256color added, inheriting xterm-256colors. [n2]
3. 2021-09-25: The *parm versions of smglr (AKA set_lr_margin) were
added to vt420+lrmm [n3]. Namely:
1. smglp AKA set_left_margin_parm, and
2. smgrp AKA set_right_margin_parm
4. 2022-03-12: (new) codes for fsl, bsl and tsl added to xterm (add
dec+sl to xterm-new, per patch #371 -TD) [n4]
Fixes #19040.
[i0]: https://github.com/neovim/neovim/blob/3a4fa22badc5595afc0a994ead965ff32ccf6c76/src/nvim/tui/tui.c#L1377
[t0]: https://github.com/neovim/neovim/blob/3a4fa22badc5595afc0a994ead965ff32ccf6c76/src/nvim/tui/tui.c#L1728,L1729
[p1]: https://github.com/neovim/neovim/blob/3a4fa22badc5595afc0a994ead965ff32ccf6c76/src/nvim/tui/tui.c#L1196
[p2]: https://bugs.chromium.org/p/chromium/issues/detail?id=1175065&q=component%3APlatform%3EApps%3EDefault%3EHterm
[p3]: https://bugs.chromium.org/p/chromium/issues/detail?id=1298796&q=component%3APlatform%3EApps%3EDefault%3EHterm
[p4]: https://github.com/neovim/neovim/blob/3a4fa22badc5595afc0a994ead965ff32ccf6c76/src/nvim/tui/tui.c#L1740-L1752
[n1]: https://github.com/mirror/ncurses/commit/8f6d94b8d6211a2323caef53fa4c96c475ec9a6#diff-01544c577762d3308a1d232aa7afc79acf64b9a5057f88a004df82fda89549b7R2742
[n2]: https://github.com/mirror/ncurses/commit/c2650100f80134924eda8f22cd7cc1d1d919ee3d#diff-01544c577762d3308a1d232aa7afc79acf64b9a5057f88a004df82fda89549b7R5907
[n3]: https://github.com/mirror/ncurses/commit/f6b436c4fb50275df43ea10ba9c744fe195a327d#diff-01544c577762d3308a1d232aa7afc79acf64b9a5057f88a004df82fda89549b7R2842
[n4]: https://github.com/mirror/ncurses/commit/8bf8c836fe2c28238adbd62e71f03272efe155ad#diff-01544c577762d3308a1d232aa7afc79acf64b9a5057f88a004df82fda89549b7R4828
Signed-off-by: Nicolas Hillegeer <nicolas@hillegeer.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Detecting a script was already sourced is unreliable.
Solution: Do not use the inode number.
https://github.com/vim/vim/commit/978d170bdce9c0a47e6683cd7c288bc2706f3fff
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Stray ch_logfile() call.
Solution: Remove it. (closes vim/vim#5503)
https://github.com/vim/vim/commit/ed5adff1e6da412732514d82363005f85fe22e04
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Script may be re-used when deleting and creating a new one.
Solution: When the inode matches, also check the file name.
https://github.com/vim/vim/commit/ca33eb256eb910af05e8c9852bc9f716cece1f5c
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is a port of these two patches combined:
vim-patch:8.1.1524: tests are silently skipped
Problem: Tests are silently skipped.
Solution: Throw an exception for skipped tests in more places.
https://github.com/vim/vim/commit/b0f94c1ff34d27d33aa9f96204985ea29c2eb0a1
vim-patch:8.1.1544: some balloon tests don't run when they can
Problem: Some balloon tests don't run when they can.
Solution: Split GUI balloon tests off into a separate file. (Ozaki Kiichi,
closes vim/vim#4538) Change the feature check into a command for
consistency.
https://github.com/vim/vim/commit/b46fecd3454399f8ebdc5055302e4bfc5a10f98b
Omit test_lua.vim: previous patches are N/A
Omit test_memory_usage.vim: previous patches are N/A
Omit test_textprop.vim: previous patches are N/A
Omit test_winbar.vim: previous patches are N/A
Omit test_termcodes.vim: mostly N/A
Skip Test_mouse_positon() because it uses test_setmouse().
Cannot throw error in a Test_nocatch_ test.
Use latest `CheckFeature clipboard_working` for test_quotestar.vim
|
|/ /
| |
| |
| |
| |
| | |
* revert to filetype.vim by setting `g:do_legacy_filetype`
* skip either filetype.lua or filetype.vim via `g:did_load_filetypes`
(Running both is no longer required and therefore no longer supported.)
|
| | |
|
| |
| |
| |
| |
| |
| | |
Problem: Crash after ml_get error.
Solution: When returning "???" flush the line and set ml_line_lnum.
https://github.com/vim/vim/commit/f9435e49ef8032e80d38e31e950e4a9b75387533
|
| |
| |
| |
| |
| |
| | |
Problem: When ml_get_buf() fails it messes up IObuff.
Solution: Return a local pointer. (closes vim/vim#9214)
https://github.com/vim/vim/commit/96e7a5928e1e7a350cd6c6d0b9376305190046e7
|
|\ \
| | |
| | | |
feat(tui): recognize keypad keys when using kitty keyboard protocol
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Command line test fails.
Solution: Also beep when cmdline win can't be opened because of locks.
Make the test not beep. Make the test pass on MS-Windows.
https://github.com/vim/vim/commit/be99042b03edf7b8156c9adbc23516bfcf2cec0f
|