Dundar Goc
d77ec8a5c6
ci: remove unnecessary file ci/script.sh
...
It only runs run_tests.sh and checks coverage, which can be replaced by
just moving the coverage check to ci/run_tests.sh.
2022-07-11 17:16:55 +02:00
Dundar Goc
bb1a464467
ci: remove unnecessary file run_lint.sh
...
It's a leftover artifact that currently just acts as an unnecessary
intermediary script that calls the Makefile. It can be replaced by just
calling the Makefile directly.
2022-07-11 16:41:06 +02:00
zeertzjq
5c3bbb67e7
vim-patch:8.2.3363: when :edit reuses the current buffer the alternate file 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.
2022-07-11 20:55:26 +08:00
Rishikesh Vaishnav
ac10c0f418
fix(lsp): abort pending changes after flush when debouncing ( #19314 )
...
Issuing a server request triggers `changetracking.flush` so as to
make sure we're not operating on a stale state. This immediately
triggers notification of any pending changes (as a result of debouncing)
to the server. However, this happens in addition to the notification
that is waiting on the debounce delay. Because we `nil`
`buf_state.pending_change` when it is called, the fix is to
also check that this is non-`nil` when it is called and exit if it is,
as this being `nil` would mean that it originates from a pending change
that has already been flushed out.
2022-07-11 12:48:02 +02:00
Mathias Fußenegger
95c65a6b22
feat(lsp): defaults: tagfunc, omnifunc ( #19003 )
...
set `tagfunc` to `vim.lsp.tagfunc` and `omnifunc` to `vim.lsp.omnifunc` if empty when attaching a server
2022-07-10 17:26:43 +02:00
zeertzjq
67b26a39f0
Merge pull request #19305 from zeertzjq/vim-8.2.3530
...
vim-patch:8.2.{3530,3531}: ":buf \{a}" fails while ":edit \{a}" works
2022-07-10 20:20:06 +08:00
zeertzjq
5e53740350
Merge pull request #18774 from zeertzjq/float-height-width-fix
...
Fix some floating window height and width bugs
2022-07-10 17:59:32 +08:00
zeertzjq
5105f713bd
test(float_spec): make indent more consistent
2022-07-10 17:24:29 +08:00
zeertzjq
63f6ecd419
fix(float): fix mouse drag position if float window turned to a split
2022-07-10 17:24:29 +08:00
zeertzjq
63f63dd2b7
fix(float): fix glitch when making float window with border a split
2022-07-10 17:24:29 +08:00
zeertzjq
99e8298711
fix(float): fix float window with winbar cannot have screen height
2022-07-10 17:24:29 +08:00
zeertzjq
f7d6f472f7
fix(float): fix float window border drawing with winbar
2022-07-10 17:24:29 +08:00
Christian Clason
2966cfe21f
fix(lsp): pcall nvim_del_augroup_by_name ( #19302 )
...
fixup for #19283
2022-07-10 11:19:26 +02:00
zeertzjq
3d77ea2762
Merge pull request #19307 from zeertzjq/vim-8.2.1053
...
vim-patch:7.4.1724,8.2.1053: insufficient testing for 'statusline' and 'tabline'
2022-07-10 17:13:17 +08:00
zeertzjq
fe2b281292
vim-patch:8.2.1053: insufficient testing for 'statusline' and 'tabline'
...
Problem: Insufficient testing for 'statusline' and 'tabline'.
Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#6333 )
https://github.com/vim/vim/commit/832adf9bb8cd39d8e982d8a35ed8a6d39b974494
2022-07-10 16:15:17 +08:00
zeertzjq
59355653f6
vim-patch:7.4.1724
...
Problem: Tabline test fails in GUI.
Solution: Remove 'e' from 'guioptions'.
https://github.com/vim/vim/commit/73cd8fb3e87e4b29dfc489f58e56dee1839c18e5
Add missing file header.
2022-07-10 16:12:58 +08:00
tomial
8f36e538cc
fix(l10n): add folded line indicator translations from vim ( #19286 )
2022-07-10 12:36:43 +08:00
zeertzjq
b3b85186ed
vim-patch:8.2.3531: command line completion test fails on MS-Windows
...
Problem: Command line completion test fails on MS-Windows.
Solution: Do not test with "\{" on MS-Windows.
https://github.com/vim/vim/commit/39c47c310487b72bc78ff197b5a068a0bcf830de
2022-07-10 10:58:12 +08:00
zeertzjq
45d2644205
vim-patch:8.2.3530: ":buf \{a}" fails while ":edit \{a}" works
...
Problem: ":buf \{a}" fails while ":edit \{a}" works.
Solution: Unescape "\{". (closes vim/vim#8917 )
https://github.com/vim/vim/commit/21c1a0c2f10575dbb72fa873d33f0c1f6e170aa7
2022-07-10 10:56:37 +08:00
Christian Clason
d606c39a9c
vim-patch:9.0.0049: csv and tsv files are not recognized ( #19300 )
...
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
2022-07-10 01:14:07 +02:00
Justin M. Keyes
eb9155e557
Merge #19267 require() in --startuptime
2022-07-10 01:04:11 +02:00
zeertzjq
880de9a489
test(old): align defaults to Vim after every test ( #19301 )
...
This can avoid divergences from Vim in some small places.
2022-07-10 06:59:58 +08:00
Justin M. Keyes
797007997c
test: --startuptime
2022-07-09 15:45:02 -07:00
zeertzjq
d6a1e71881
vim-patch:8.1.1038: Arabic support excludes Farsi ( #19285 )
...
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.
2022-07-10 06:01:49 +08:00
ii14
2c739431e8
feat(lua): measure require in --startuptime
2022-07-09 22:12:06 +02:00
Gregory Anders
782f726136
refactor: remove functions marked for deprecation in 0.8 ( #19299 )
2022-07-09 18:42:49 +02:00
Raphael
6b1a8f23d7
refactor(lua): replace vim.cmd use with API calls ( #19283 )
...
Signed-off-by: Raphael <glephunter@gmail.com >
2022-07-09 18:40:32 +02:00
zeertzjq
7dbe6b1a46
Merge pull request #19296 from zeertzjq/vim-8.2.2902
...
vim-patch:8.2.{2902,2917}: spellfile functionality not fully tested
2022-07-09 20:59:49 +08:00
zeertzjq
7b72e61cf8
vim-patch:8.2.2917: spellfile functionality not fully tested
...
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
2022-07-09 20:33:00 +08:00
zeertzjq
eb60a9be97
vim-patch:8.2.2902: spellfile functionality not fully tested
...
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.
2022-07-09 20:33:00 +08:00
zeertzjq
022e994ab8
Merge pull request #19294 from zeertzjq/vim-8.2.0332
...
vim-patch:8.2.{0332,0396}: insufficient tests for cmdline
2022-07-09 18:34:48 +08:00
zeertzjq
65359e5657
vim-patch:8.2.0396: cmdexpand.c insufficiently tested
...
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.
2022-07-09 17:33:49 +08:00
zeertzjq
12f0ef669d
vim-patch:8.2.0332: some code in ex_getln.c not covered by tests
...
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
2022-07-09 16:31:19 +08:00
zeertzjq
798acbca1b
Merge pull request #19284 from zeertzjq/vim-8.2.0274
...
vim-patch:8.2.{0274,0325}
2022-07-09 16:25:16 +08:00
zeertzjq
cf4aa6095f
vim-patch:8.2.0325: ex_getln.c code not covered by tests
...
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.
2022-07-08 23:11:12 +08:00
zeertzjq
0d0a6aff6b
vim-patch:8.2.0274: hang with combination of feedkeys(), Ex mode and :global
...
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
2022-07-08 23:11:12 +08:00
Nicolas Hillegeer
45ba2e147f
fix(tui): add fixups for hterm family #19078
...
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 >
2022-07-08 06:06:27 -07:00
zeertzjq
b999de2eb0
Merge pull request #19278 from zeertzjq/vim-8.2.0132
...
vim-patch:8.2.{0132,0136,0151}: detecting a script was already sourced is unreliable
2022-07-08 20:12:58 +08:00
zeertzjq
a6803f3adf
test: add a test for what Vim patch 8.2.0151 fixes
2022-07-08 14:18:16 +08:00
zeertzjq
159a0b651f
vim-patch:8.2.0151: detecting a script was already sourced is unreliable
...
Problem: Detecting a script was already sourced is unreliable.
Solution: Do not use the inode number.
https://github.com/vim/vim/commit/978d170bdce9c0a47e6683cd7c288bc2706f3fff
2022-07-08 14:17:22 +08:00
zeertzjq
eafa09de7d
vim-patch:8.2.0136: stray ch_logfile() call
...
Problem: Stray ch_logfile() call.
Solution: Remove it. (closes vim/vim#5503 )
https://github.com/vim/vim/commit/ed5adff1e6da412732514d82363005f85fe22e04
2022-07-08 11:11:22 +08:00
zeertzjq
a890c019a3
vim-patch:8.2.0132: script may be re-used when deleting and creating a new one
...
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
2022-07-08 11:11:22 +08:00
zeertzjq
ca64b589cd
vim-patch:8.1.{1524,1544}: tests are silently skipped ( #19276 )
...
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
2022-07-08 08:26:25 +08:00
Christian Clason
72877bb17d
feat(runtime)!: enable filetype.lua by default ( #19216 )
...
* 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.)
2022-07-07 18:53:47 +02:00
Christian Clason
0950275b8c
refactor(lua): git-blame-ignore stylua update PR ( #19273 )
...
https://github.com/neovim/neovim/pull/19264
2022-07-07 18:32:53 +02:00
Christian Clason
aa4f9c5341
refactor(lua): reformat with stylua 0.14.0 ( #19264 )
...
* reformat Lua runtime to make lint CI pass
* reduce max line length to 100
2022-07-07 18:27:18 +02:00
Wsevolod
34d41baf8a
feat(tui): try terminfo for [re]set_cursor_color OSC #19255
2022-07-07 02:09:11 -07:00
Christian Clason
55e81b0fe8
vim-patch:5ed11535e069 ( #19256 )
...
Update runtime files
https://github.com/vim/vim/commit/5ed11535e0695163cec71033b98bb97356cf0113
2022-07-07 08:15:33 +02:00
zeertzjq
6b72ee1f15
Merge pull request #19263 from zeertzjq/vim-8.2.3674
...
vim-patch:8.2.{3674,4399}: problems after ml_get error
2022-07-07 08:35:29 +08:00
zeertzjq
8ce60ddd07
vim-patch:8.2.4399: crash after ml_get error
...
Problem: Crash after ml_get error.
Solution: When returning "???" flush the line and set ml_line_lnum.
https://github.com/vim/vim/commit/f9435e49ef8032e80d38e31e950e4a9b75387533
2022-07-07 08:10:53 +08:00