| Commit message (Collapse) | Author | Age |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: filetype: blueprint files are not recognized
Solution: Detect '*.bp' files as blueprint files, add
a minimal filetype plugin (Bruno Belanyi)
See: https://source.android.com/docs/setup/build
closes: vim/vim#14488
https://github.com/vim/vim/commit/6be7ef5bc734ce6045d6f919f1a8559a3fa7f2fd
Co-authored-by: Bruno BELANYI <bruno@belanyi.fr>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: filetype: xilinx files are not recognized
Solution: Add a few xilinx specific file patterns,
inspect lpr files for being xml/pascal
(Wu, Zhenyu)
closes: vim/vim#14454
https://github.com/vim/vim/commit/614691ceefb2b2470cd9097013ffc140f81d6a71
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: filetype: some TeX files are not recognized
Solution: Add more patterns for TeX files and inspect
a few more files for being TeX files
(Wu, Zhenyu)
closes: vim/vim#14456
https://github.com/vim/vim/commit/61ee833a504ae73bc6b3e2527a81582263f02afd
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| | | |
|
| |/
|/| |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Run the global before_each() before all other before_each(), so that
clear() uses the test ID of the current test, not the previous one.
Don't skip generating test IDs for skipped tests, as that'll make a
skipped test have the same test ID as the previous one.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Patch 9.1.0296 causes too many issues
(Tony Mechelynck, chdiza, CI)
Solution: Back out the change for now
Revert "patch 9.1.0296: regexp: engines do not handle case-folding well"
This reverts commit 7a27c108e0509f3255ebdcb6558e896c223e4d23 it causes
issues with syntax highlighting and breaks the FreeBSD and MacOS CI. It
needs more work.
fixes: vim/vim#14487
https://github.com/vim/vim/commit/c97f4d61cde24030f2f7d2318e1b409a0ccc3e43
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Vim9: heredoc start may be recognized in string.
Solution: Don't skip to closing bracket for invalid list assignment.
(zeertzjq)
closes: vim/vim#14472
https://github.com/vim/vim/commit/1817ccdb107ceeaf5c48fe193da5146682c15ca6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Missing test for what patch v9.1.0285 fixes
Solution: Add a test for cursor movement at buffer boundaries.
(Luuk van Baal)
https://github.com/vim/vim/commit/aa8e22b035dd669cb47c9237f9c9a917ec6a0ec4
vim-patch:9.1.0225: test_matchparen not run in CI
Problem: test_matchparen not run in CI
Solution: add test_matchparen.res to NEW_TESTS_RES in Makefile,
update changed highlighting dump from v9.1.61
https://github.com/vim/vim/commit/059aeac2be1a0d30ff80751215794457c1ef1589
Changes N/A and test result was restored in patch 9.1.0258 (included in #28160).
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
| |
Problem:
Decoration provider `on_line` handler is invoked for diff filler line
below the last buffer line. This does not match the documentation:
"called for each buffer line".
Solution:
Check `end_fill`.
|
|
|
| |
Co-authored-by: Ilia Choly <ilia.choly@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Regex engines do not handle case-folding well
Solution: Correctly calculate byte length of characters to skip
When the regexp engine compares two utf-8 codepoints case insensitively
it may match an adjacent character, because it assumes it can step over
as many bytes as the pattern contains.
This however is not necessarily true because of case-folding, a
multi-byte UTF-8 character can be considered equal to some single-byte
value.
Let's consider the pattern 'ſ' and the string 's'. When comparing and
ignoring case, the single character 's' matches, and since it matches
Vim will try to step over the match (by the amount of bytes of the
pattern), assuming that since it matches, the length of both strings is
the same.
However in that case, it should only step over the single byte
value 's' so by 1 byte and try to start matching after it again. So for the
backtracking engine we need to ensure:
- we try to match the correct length for the pattern and the text
- in case of a match, we step over it correctly
The same thing can happen for the NFA engine, when skipping to the next
character to test for a match. We are skipping over the regstart
pointer, however we do not consider the case that because of
case-folding we may need to adjust the number of bytes to skip over. So
this needs to be adjusted in find_match_text() as well.
A related issue turned out, when prog->match_text is actually empty. In
that case we should try to find the next match and skip this condition.
fixes: vim/vim#14294
closes: vim/vim#14433
https://github.com/vim/vim/commit/7a27c108e0509f3255ebdcb6558e896c223e4d23
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Vim9: comment may be treated as heredoc start.
(Ernie Rael)
Solution: Use skip_var_list() instead of find_name_end().
(zeertzjq)
fixes: vim/vim#14444
closes: vim/vim#14446
https://github.com/vim/vim/commit/9a91d2b72c20f213bbf77f27b7edd01e0e43d5e0
|
|
|
|
|
|
|
|
|
|
| |
Problem: plines_m_win() does not take into account it's "limit_winheight"
argument for filler lines below the last line of the buffer.
(after v9.1.0280)
Solution: Check window height when "limit_winheight" is TRUE.
(Luuk van Baal)
https://github.com/vim/vim/commit/08b0f632c125514fe0ea188c36ac048d7d7929d4
|
|
|
|
|
|
|
| |
Problem: Problems with cursor position when scrolling half a page.
Solution: Rework the cursor logic. (Luuk van Baal)
https://github.com/vim/vim/commit/78c51500f1bb16501521d721d52cb0982f5e70b6
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Wrong doc style for pandoc syntax description,
Test_diff_eob_halfpage() may fail depending on
screen size, using braces in highlight.c when
not necessary
Solution: Fix pandoc documentation, make sure the window
for the test has 7 lines, remove the braces.
https://github.com/vim/vim/commit/a040019be68859f0667ae475de8d67bb755596ed
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
| |
Problem: CI: fails Test_compiler_completion
Solution: Add pandoc compiler
https://github.com/vim/vim/commit/d33cb3f65e112bdb2d57139e9a308b1a9c8ffcc2
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: No pandoc syntax support
Solution: Add pandoc syntax and compiler plugins
(Wu, Zhenyu, Konfekt)
closes: vim/vim#14389
https://github.com/vim/vim/commit/7005b7ee7f282b24378c2a844366cb8616cad5d7
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: zathurarc files not recognized
Solution: Detect '.zathurarc' files as zathurarc filetype,
add zathurarc filetype (Wu, Zhenyu)
closes: vim/vim#14380
https://github.com/vim/vim/commit/72d81a66edd835aeff3f539ccd0f97afb1ebd63c
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: R history files are not recognized
Solution: Detect '.Rhistory' files as r filetype
(Wu, Zhenyu)
closes: vim/vim#14440
https://github.com/vim/vim/commit/fc21b6437ce91368c2d53437177083b8bc375720
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: roc files are not recognized
Solution: Detect '*.roc' files as roc filetype,
add a basic filetype plugin (nat-418)
closes: vim/vim#14416
https://github.com/vim/vim/commit/196b6678c5483217ea5bc7d047b02c915615dae6
Co-authored-by: nat-418 <93013864+nat-418@users.noreply.github.com>
|
| |
|
|
|
|
| |
Without creating new lines, using screen:expect() is faster and avoids
RPC requests.
|
|
|
|
| |
Having unrelated keys between double clicks may make the test flaky as
'mousetime' is more easily reached.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot highlight the Command-line
Solution: Add the MsgArea highlighting group
(Shougo Matsushita)
closes: vim/vim#14327
https://github.com/vim/vim/commit/be2b03c6eecea3eae5d460e3c19ee43b73b29928
Cherry-pick Test_highlight_User() from patch 8.2.1077.
Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Problem: Logic to make sure cursor is in visible part of the screen after
scrolling the text with 'smoothscroll' is scattered, asymmetric
and contains bugs.
Solution: Adjust and create helper function for 'smoothscroll' cursor logic.
(Luuk van Baal)
https://github.com/vim/vim/commit/9148ba8a46baa3934c44164989cdcdec5d01d9e3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'smoothscroll'
Problem: "zb" does not reveal filler lines at the start of a buffer.
Scrolled cursor position with 'smoothscroll' is unpredictable,
and may reset skipcol later if it is not visible (after v9.1.258)
Solution: Replace confusing for loop that reaches final control value too
early with while loop. Set "w_curswant" accordingly so cursor
will be placed in visible part of topline.
(Luuk van Baal)
https://github.com/vim/vim/commit/bd28cae1f1c21c0e3743e3427c98bbd848fad237
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Support for 'smoothscroll' in (half-)page scrolling
broke backward compatibility and can be made to work better.
(after v9.1.215)
Solution: Restore the previous cursor and end-of-buffer behavior for
half-page scrolling and improve 'smoothscroll' support.
(Luuk van Baal)
https://github.com/vim/vim/commit/cb204e688e5c9d56a78b621ef27c35d91860cb09
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/27004.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: keymap files are not recognized
Solution: Detect '*.keymap' files as Device Tree Files
(0xadk)
closes: vim/vim#14434
https://github.com/vim/vim/commit/b78753db5fac879a76da3519101e815451d0d455
Co-authored-by: 0xadk <0xadk@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
| |
Problem: Autocommand may change currect directory after :tcd and :lcd.
Solution: Also clear tp_localdir and w_localdir when using aucmd_win.
(zeertzjq)
closes: vim/vim#14435
https://github.com/vim/vim/commit/9d956ee8eab64a0d412b045305fde5bc03d95d4a
|
|\
| |
| | |
refactor(tests): use more standard colors but with extra colors
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: earthfile files are not recognized
Solution: Detect 'Earthfile' as earthfile
(Gaëtan Lehmann)
closes: vim/vim#14408
https://github.com/vim/vim/commit/28e5e7c48483254604506dbce5eb61396ff65808
Co-authored-by: Gaëtan Lehmann <gaetan.lehmann@gmail.com>
|
| | |
|
| |
| |
| |
| |
| |
| | |
Also close Nvim instance before removing log file, otherwise the Nvim
instance will still write to the log file.
Also adjust log level in libuv_process_spawn(). Ref #27660
|
| |
| |
| |
| | |
Now that Nvim always supports nanotime, sleeping for some milliseconds
is enough.
|
| |
| |
| |
| |
| | |
Now that Nvim always supports nanotime, sleeping for some milliseconds
is actually enough, but for test_stat.vim keeping some longer sleeps may
increase test coverage, so just match the upstream test.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Test for TextChanged is still flaky with ASAN.
Solution: Don't index the result of readfile().
(zeertzjq)
It turns out that with ASAN the file may become empty during a write
even if it's non-empty both before and after the write, in which case
indexing the result of readfile() will error, so use join() instead.
Also don't delete the file halfway the test, just in case it may cause
errors on the next read.
closes: vim/vim#14421
https://github.com/vim/vim/commit/e9ff79a7c9affea970f50de2aa65f62080b55323
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Two tests in test_filechanged.vim are slow.
Solution: Sleep for shorter if the +nanotime feature is available.
(zeertzjq)
closes: vim/vim#14418
https://github.com/vim/vim/commit/83cd2c7bf0c12f05d747dd5fd6abfe103948bf12
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Design
- Enable commenting support only through `gc` mappings for simplicity.
No ability to configure, no Lua module, no user commands. Yet.
- Overall implementation is a simplified version of 'mini.comment'
module of 'echasnovski/mini.nvim' adapted to be a better suit for
core. It basically means reducing code paths which use only specific
fixed set of plugin config.
All used options are default except `pad_comment_parts = false`. This
means that 'commentstring' option is used as is without forcing single
space inner padding.
As 'tpope/vim-commentary' was considered for inclusion earlier, here is
a quick summary of how this commit differs from it:
- **User-facing features**. Both implement similar user-facing mappings.
This commit does not include `gcu` which is essentially a `gcgc`.
There are no commands, events, or configuration in this commit.
- **Size**. Both have reasonably comparable number of lines of code,
while this commit has more comments in tricky areas.
- **Maintainability**. This commit has (purely subjectively) better
readability, tests, and Lua types.
- **Configurability**. This commit has no user configuration, while
'vim-commentary' has some (partially as a counter-measure to possibly
modifying 'commentstring' option).
- **Extra features**:
- This commit supports tree-sitter by computing `'commentstring'`
option under cursor, which can matter in presence of tree-sitter
injected languages.
- This commit comments blank lines while 'tpope/vim-commentary' does
not. At the same time, blank lines are not taken into account when
deciding the toggle action.
- This commit has much better speed on larger chunks of lines (like
above 1000). This is thanks to using `nvim_buf_set_lines()` to set
all new lines at once, and not with `vim.fn.setline()`.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
Some servers don't report progress during initialize unless the client
sets the `workDoneToken`
See https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#initiatingWorkDoneProgress
In particular:
> There is no specific client capability signaling whether a client will
> send a progress token per request. The reason for this is that this is
> in many clients not a static aspect and might even change for every
> request instance for the same request type. So the capability is signal
> on every request instance by the presence of a workDoneToken property.
And:
> Servers can also initiate progress reporting using the
> window/workDoneProgress/create request. This is useful if the server
> needs to report progress outside of a request (for example the server
> needs to re-index a database). The token can then be used to report
> progress using the same notifications used as for client initiated
> progress.
So far progress report functionality was relying entirely on the latter.
Solution:
Set a `workDoneToken`
Closes https://github.com/neovim/neovim/issues/27938
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: console dialog cannot save unnamed buffers
Solution: set bufname before save (glepnir). Define dialog_con_gui
to test for GUI+Console dialog support, use it to skip
the test when the GUI feature has been defined.
Note: The dialog_changed() function will also try to call the
browse_save_fname() function, when FEAT_BROWSE is defined (which is only
defined in a GUI build of Vim). This will eventually lead to a call of
do_browse(), which causes an error message if a GUI is not currently
running (see the TODO: in do_browse()) and will then lead to a failure
in Test_goto_buf_with_onfirm().
Therefore, we must disable the Test_goto_buf_with_onfirm(), when the
dialog_con_gui feature is enabled (which basically means dialog feature
for GUI and Console builds, in contrast to the dialog_con and dialog_gui
feature).
(Previously this wasn't a problem, because the test aborted in the YES
case for the :confirm :b XgotoConf case and did therefore not run into
the browse function call)
closes: vim/vim#14398
https://github.com/vim/vim/commit/df46115fc839c8912ed60646e86a412e5180ba1d
Co-authored-by: glepnir <glephunter@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Ref #21393
- Move default user commands to _defaults.lua as that now contains all
kinds of defaults rather than just default mappings and menus.
- Remove the :aunmenu as there are no menus when _defaults.lua is run.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Dialog for file changed outside of Vim not tested.
Solution: Add a test. Move FileChangedShell test. Add 'L' flag to
feedkeys().
https://github.com/vim/vim/commit/5e66b42aae7c67a3ef67617d4bd43052ac2b73ce
Co-authored-by: Bram Moolenaar <Bram@vim.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Test for TextChanged is flaky with ASAN.
Solution: Wait for the file to be non-empty.
(zeertzjq)
closes: vim/vim#14404
https://github.com/vim/vim/commit/4a65391ca273f2eca84f5ec7bd846693232dfacc
|