| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
`command` was already resolved via a `completionItem/resolve` request
but only if `additionalTextEdits` were also present, and the
`resolveSupport` capability wasn't listed.
Closes https://github.com/neovim/neovim/issues/32406
|
|
|
|
|
|
|
|
|
| |
Problem: set winbar on a floating window which only have one row will
cause crash.
Solution: when new floating window only have one room don't copy winbar
from target window"
Fix #19464
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: cannot loop through completion menu with fuzzy and nosort in
'completeopt'
(Tomasz N)
Solution: Reset cur to zero and update compl_shown_match when
'completeopt' contains "nosort" but not "noselect"
(glepnir)
fixes: vim/vim#16624
closes: vim/vim#16629
https://github.com/vim/vim/commit/c0b7ca406ba18640c56e2746d6f6d03549d53072
Co-authored-by: glepnir <glephunter@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Problem: 'smoothscroll' gets stuck with 'listchars' "eol".
Solution: Count size of 'listchars' "eol" in line size when scrolling.
(zeertzjq)
related: neovim/neovim#32405
closes: vim/vim#16627
https://github.com/vim/vim/commit/2c47ab8fcd7188fa87053c757ea86b0d846c06c1
|
|
|
|
| |
Co-authored-by: Gregory Anders <greg@gpanders.com>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
|
|
|
|
| |
Problem: When expanding a completion item that contains a multi-line word, the word is not deleted correctly.
Solution: If the word contains a line break, delete the text from Context.cursor to the current cursor position.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: autotrigger option of vim.lsp.completion.enable() would trigger
all clients, as long as it matched at least one client's
triggerCharacters.
Solution: trigger only the clients with triggerCharacters matching the
character. overtriggering still happens if any client returns
isIncomplete=true (this case is more involved).
Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net>
|
|
|
|
|
|
| |
Problem: Error thrown when for invalid line number which may be accessed
in an `on_detach` callback at which point line count is
intentionally set to 0.
Solution: Move empty memline check to before line number check.
|
|
|
|
|
|
|
| |
Problem: Number and statuscolumn highlighting for virtual lines does
not take always take on numhl highlights.
Solution: Apply the appropriate numhl highlight to the number/statuscolumn
of virtual lines, fetching the numhl highlight of the line above
for `virt_line_above == false` lines.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vim-patch:partial:9.1.1084: Unable to persistently ignore events in a window and its buffers
Problem: Unable to persistently ignore events in a window and its buffers.
Solution: Add 'eventignorewin' option to ignore events in a window and buffer
(Luuk van Baal)
Add the window-local 'eventignorewin' option that is analogous to
'eventignore', but applies to a certain window and its buffers. Identify
events that should be allowed in 'eventignorewin', adapt "auto_event"
and "event_tab" to encode this information. Window context is not passed
onto apply_autocmds_group(), and when to ignore an event is a bit
ambiguous when "buf" is not "curbuf", rather than a large refactor, only
ignore an event when all windows into "buf" are ignoring the event.
https://github.com/vim/vim/commit/b7147f8236c962cd74d1ce028d9106f1c449ea6c
vim-patch:9.1.1102: tests: Test_WinScrolled_Resized_eiw() uses wrong filename
Problem: tests: Test_WinScrolled_Resized_eiw() uses wrong filename
(Luuk van Baal, after v9.1.1084)
Solution: Rename the filename to something more unique
https://github.com/vim/vim/commit/bfc7719e48ffc365ee0a1bd1888120d26b6365f0
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: CI: uses Ubuntu 22.04 runners
Solution: Switch to Ubuntu 24.04 runners, make a few adjustments for
different $TMPDIR (Drew Vogel)
closes: vim/vim#16442
https://github.com/vim/vim/commit/f0ed0e6f6304d2eb6f43866126912c139778257d
Co-authored-by: Drew Vogel <dvogel@github>
|
|
|
| |
Also change job tests to use `nvim` instead of random programs like `ping`.
|
|\ |
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: matchparen plugin test wrongly named
(zeertzjq)
Solution: rename test_matchparen to test_plugin_matchparen
to be consistent with the other plugin tests
related: vim/vim#16599
https://github.com/vim/vim/commit/7de6b1bb5687b94369dda82a9648109d7d6832b7
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
| |
Problem:
On Windows, spawning the `nvim --embed` server with `detach=true` breaks
various `tt.setup_child_nvim` tests.
Solution:
Make this behavior opt-in with an env var, temporarily.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Cannot detach the current UI.
Solution:
- Introduce `:detach`.
- Introduce `Channel.detach`.
Co-authored-by: bfredl <bjorn.linse@gmail.com>
|
|
|
|
|
|
| |
Problem: `get_option_value` returns caller owned `Object`s but the
corresponding C apis do not marked `FUNC_API_RET_ALLOC` properly.
Solution: add `FUNC_API_RET_ALLOC` to the C apis.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Match both | separators and link to the Delimiter highlight group.
fixes vim/vim#16584
closes: vim/vim#16590
https://github.com/vim/vim/commit/f30eb4a17084eea741a9eb09ba47dd501412283d
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: timeout might be a bit too small
Solution: increase the test timeout from 30 to 45 seconds
related: vim/vim#16599
https://github.com/vim/vim/commit/ec7a4e4d69d17821292048bfa85801fcfa476228
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
| |
Problem: Test may run into timeout when using valgrind.
Solution: Use a longer timeout when using valgrind.
https://github.com/vim/vim/commit/7c2beb48ef46cf5f1ed7e8512ef5a7c9099e5ae4
Co-authored-by: Bram Moolenaar <Bram@vim.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#32388)
Problem: tests: plugin tests are named inconsistently
Solution: group them under a common 'plugin' prefix
related: vim/vim#16599
https://github.com/vim/vim/commit/934d9ab3a25066d403678c91fd99ce9ce738d95f
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: The behavior of the visual search mappings aren't consistent
with their normal mode counterparts.
- The count isn't considered
- Searching with an empty selection will match every character in the
buffer
- Searching backwards only jumps back when the cursor is positioned at
the start of the selection.
Solution:
- Issue `n` `v:count1` times
- Error out and exit visual mode when the selection is empty
- Detect when the cursor is not at the start of the selection, and
adjust the count accordingly
Also, use the search register instead of the more error-prone approach
of feeding the entire search string as an expression
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
`vim.tbl_get(tbl, nil, 1)` returns `tbl` itself. In this case, `keys` is not
empty, but `ipairs` skips the iteration:
local keys = { nil, 1 }
assert(#keys == 2)
for i, k in ipairs(keys) do
assert(false, 'unreachable')
end
Solution:
Use `select("#", ...)` and `select(i, ...)` to ensure consistency for count and
iteration.
|
|
|
|
|
|
|
| |
Problem:
cmdline abort state may be reset when intermediate states are received.
Solution:
Reset after `self:_wait()`.
|
|
|
| |
Also remove a hack in the multigrid "with winbar" test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: cmmt files are not recognized
Solution: detect '*.cmmt' as trace32 filetype
(Christian Sax)
"*.cmmt" files use the same syntax as regular TRACE32 scripts,
but are intended as a kind of script template.
closes: vim/vim#16598
https://github.com/vim/vim/commit/746fe54d4f16ad1c5694cccc8bc8d93a97c050e1
Co-authored-by: Christoph Sax <c_sax@mailbox.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: completion doesn't work with multi lines
(Łukasz Jan Niemier)
Solution: handle linebreaks in completion code as expected
(glepnir)
fixes: vim/vim#2505
closes: vim/vim#15373
https://github.com/vim/vim/commit/76bdb82527a13b5b2baa8f7d7ce14b4d5dc05b82
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
blockwise mode
Problem: setreg() doesn't correctly handle mbyte chars in blockwise
mode
Solution: use mb_ptr2len_len function pointer (Yee Cheng Chin)
setreg() will automatically calculate the width when a blockwise mode is
specified, but it does not properly calculate the line widths of mbyte
characters when value is passed as newline-terminated string. It does
work when value is passed as a list of lines though.
Fix this by properly using the mbyte function pointer to increment the
loop counter.
closes: vim/vim#16596
https://github.com/vim/vim/commit/a17f8bfb282805ee8ded014089d3094ef6dbf913
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
|
|
|
|
|
|
|
|
| |
Problem:
Deadly signal messages mention "Vim", and add redundant newlines.
Solution:
- Update the messages.
- Don't add an extra newline.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: has('bsd') is true for GNU/Hurd
Solution: exclude GNU/Hurd from BSD feature flag
(Zhaoming Luo)
GNU/Hurd, like Mac OS X, is a BSD-based system. It should exclude
has('bsd') feature just like what Mac OS X does. The __GNU__ pre-defined
macro indicates it's compiled for GNU/Hurd.
closes: vim/vim#16580
https://github.com/vim/vim/commit/a41dfcd55b1744b44a47d2fc3feb5d5f6207a556
Co-authored-by: Zhaoming Luo <zhmingluo@163.com>
|
|
|
|
|
|
|
|
|
| |
Problem: BeOS code is not maintained and probably unused.
Solution: Remove the BeOS code. (Emir Sari, closes vim/vim#5817)
https://github.com/vim/vim/commit/041c7107f23d3b49ab62c1d7e36af90421db8b63
Co-authored-by: Bram Moolenaar <Bram@vim.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: Mill files are not recognized
Solution: detect '*.mill' files as scala filetype
(author)
In the past [Mill](https://mill-build.org/mill/index.html) build files
were always `build.sc` and treated as Scala files. However as the 0.12.x
series of mill you can create a `build.mill` file. You can see a lot of
examples of this if you search
[GitHub](https://github.com/search?q=build.mill&type=code). This small
change just ensures that if you have a `*.mill` file it treats it as a
Scala file.
closes: vim/vim#16585
https://github.com/vim/vim/commit/9c8f9b10fcb177fb07684626b49118dd2d2540b5
Co-authored-by: Chris Kipp <ckipp@pm.me>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#32343)
Problem: Syntax engine interpreted contains=TOP as matching nothing
inside included files, since :syn-include forces HL_CONTAINED
on for every included item. After 8.2.2761, interprets
contains=TOP as contains=@INCLUDED, which is also not correct
since it doesn't respect exclusions, and doesn't work if there
is no @INCLUDED cluster.
Solution: revert patch 8.2.2761, instead track groups that have had
HL_CONTAINED forced, and interpret contains=TOP and
contains=CONTAINED using this. (Theodore Dubois)
fixes: vim/vim#11277
closes: vim/vim#16571
https://github.com/vim/vim/commit/f50d5364d790619a3b982a3ad3658b5a10daf511
Co-authored-by: Theodore Dubois <tblodt@icloud.com>
|
| |
|
|
|
|
|
|
|
|
| |
Now `:InspectTree` will show missing nodes as e.g. `(MISSING identifier)`
or `(MISSING ";")` rather than just `(identifier)` or `";"`. This is
doable because the `MISSING` keyword is now valid query syntax.
Co-authored-by: Christian Clason <c.clason@uni-graz.at>
|
|
|
|
| |
Before #31525 the prompts had a trailing space.
Also add a test for #7857.
|
|
|
| |
Follow-up to #27358.
|
|
|
|
| |
They are no longer necessary after #31562, as busy_start and busy_stop
are no longer emitted by terminal buffers with visible cursor.
|
|
|
|
|
| |
Problem: getchar_spec may fail when screen:expect_unchanged() doesn't
wait long enough.
Solution: Add poke_eventloop() before screen:expect_unchanged().
|
|
|
|
|
|
|
|
|
|
| |
Problem: 'diffopt' "linematch" cannot be used with {n} less than 10
digits (after v9.1.1022)
Solution: Fix off-by-one error when checking for digit (zeertzjq)
closes: vim/vim#16577
https://github.com/vim/vim/commit/ccd7f454fcac2f99085d4f50e79c111c02741166
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: no sanitize check when running linematch
Solution: add sanitize check before applying the linematch algorithm,
similar to diff_find_change() (Jonathon)
closes: vim/vim#16446
https://github.com/vim/vim/commit/ca307efe486670b76563a4a287bc94dace57fb74
Co-authored-by: Jonathon <jonathonwhite@protonmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: linematch option value not completed
(after v9.1.1009)
Solution: Update diffoption completion values
related: vim/vim#9661
closes: vim/vim#16437
https://github.com/vim/vim/commit/9162e636b31dcac57876cbdec15a683cedd9760e
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: diff feature can be improved
Solution: include the linematch diff alignment algorithm
(Jonathon)
closes: vim/vim#9661
https://github.com/vim/vim/commit/7c7a4e6d1ad50d5b25b42aa2d5a33a8d04a4cc8a
Co-authored-by: Jonathon <jonathonwhite@protonmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#32317)
Problem: Strange error when heredoc marker starts with "trim".
Solution: Check for whitespace after "trim" or "eval" (zeertzjq)
For :python3 etc., a heredoc marker that starts with a lower-case letter
is valid, and when it starts with "trim" it works in a script but not in
a function, and this PR makes it works in a function.
For :let, a heredoc marker that starts with a lower-case letter is not
valid, but when it starts with "trim" or "eval" the error can be a bit
confusing in a function, and this PR make it less confusing.
closes: vim/vim#16574
https://github.com/vim/vim/commit/449c2e5454735fe1cfc8c21b2c6880d6bdf4cd6e
|