| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
Introduced in 4d2c4b90f.
closes: vim/vim#16892
https://github.com/vim/vim/commit/2329bd427a046d1e76ba29100a2e79790fd96011
Co-authored-by: skshetry <18718008+skshetry@users.noreply.github.com>
|
|\
| |
| | |
vim-patch: buffer overflow when expanding long file name
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Buffer overflow when expanding long file name.
Solution: Use a larger buffer and avoid overflowing it. (Yee Cheng Chin,
closes vim/vim#12201)
https://github.com/vim/vim/commit/a77670726e3706973adffc2b118f4576e1f58ea0
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
|
|/
|
|
|
|
|
|
|
| |
Problem: Expanding path with "/**" may overrun end of buffer.
Solution: Use vim_snprintf().
https://github.com/vim/vim/commit/386c24cd262edac66a31add2fd989c96c4c2c952
Co-authored-by: Bram Moolenaar <Bram@vim.org>
|
|
|
|
|
|
|
|
|
| |
and 4d2c4b9 (#32888)
https://github.com/vim/vim/commit/f22580e57c09ef8584fc62140028adf2d043c306
Skip options.txt: included in #30189
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
| |
Most callers of feed() do not expect feed() to dedent.
Now use a literal space in tests where it looks better.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Test may fail because it matches a Lua table address, and the following
whitespace may differ depending on the stringified address length:
test/functional/lua/loop_spec.lua:233: Row 3 did not match.
Expected:
|{3: }|
|{9:Error executing callback:} |
|*{9:uv_idle_t: 0x{MATCH:%w+}} |
|{6:Press ENTER or type command to continue}^ |
Actual:
|{3: }|
|{9:Error executing callback:} |
|*{9:uv_idle_t: 0xd4c2820a00} |
|{6:Press ENTER or type command to continue}^ |
Solution:
Match a variable amount of whitespace.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Given that `vim.snippet.expand()` sets temporary `<tab>`/`<s-tab>`
keymaps there is no way to build "smart-tab" functionality where `<tab>`
chooses the next completion candidate if the popup menu is visible.
Solution:
Set the keymap permanent in `_defaults`.
The downside of this approach is that users of multiple snippet engine's
need to adapt their keymaps to handle all their engines that are in use.
For example:
vim.keymap.set({ 'i', 's' }, "<Tab>", function()
if foreign_snippet.active() then
return "<Cmd>lua require('foreign_snippet').jump()<CR>"
elseif vim.snippet.active({ direction = 1 }) then
return "<Cmd>lua vim.snippet.jump(1)<CR>"
else
return key
end
end, { expr = true })
Upside is that using `vim.keymap.set` to override keymaps is a well
established pattern and `vim.snippet.expand` calls made by nvim itself
or plugins have working keymaps out of the box.
Co-authored-by: Maria José Solano <majosolano99@gmail.com>
|
|
|
|
|
|
|
| |
Problem:
Following symlinks can have surprising behavior and slow performance.
Solution:
Do not set it by default.
|
|
|
|
| |
Keep track of the original indexes of both TAB and K_TAB, so that there
doesn't have to be an extra table and loop for K_TAB.
|
|
|
|
|
|
|
| |
closes: vim/vim#16883
https://github.com/vim/vim/commit/4d2c4b90fb0603c9cc53aa33c43c5840c91cb80e
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cmdline pum not cleared for input() completion.
Solution: Temporary reset RedrawingDisabled in cmdline_pum_cleanup(),
like what is done in wildmenu_cleanup() (zeertzjq).
fixes: vim/vim#16874
closes: vim/vim#16876
https://github.com/vim/vim/commit/1830e787f6ee9828151284c44b494b801c677ee9
No code change is needed in Nvim, as RedrawingDisabled does not prevent
the compositor from removing a grid.
|
|
|
|
|
|
|
|
|
|
| |
Problem: Various list commands end in a newline to go to a new line on
the message grid for the prompt message, which is unwanted
with ext_messages.
Solution: Don't emit a trailing newline with ext_messages for
inputlist(), :tselect and z=.
Co-authored-by: Tomasz N <przepompownia@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
recognized (#32873)
Problem: filetype: config files for container tools are not recognized
Solution: detect the ones that aren't detected yet as toml filetype
(David Mandelberg)
The .containerignore format doesn't look exactly the same as gitignore,
but very close. And .dockerignore is already using gitignore.
References:
https://github.com/containers/common/blob/main/docs/containerignore.5.md
https://github.com/containers/common/blob/main/docs/containers.conf.5.md
https://github.com/containers/storage/blob/main/docs/containers-storage.conf.5.md
https://github.com/containers/image/blob/main/docs/containers-registries.conf.5.md
https://github.com/containers/image/blob/main/docs/containers-registries.conf.d.5.md
I wasn't sure exactly how to interpret what containers.conf(5) was
saying about modules, so I looked at
https://github.com/containers/common/tree/main/pkg/config/testdata/modules
to get examples, and based the detection off those.
closes: vim/vim#16852
https://github.com/vim/vim/commit/7546afbf525861f586ea2deabf71e3a2940abd4d
Co-authored-by: David Mandelberg <david@mandelberg.org>
|
| |
|
|
|
|
|
|
|
| |
Problem: yi' don't highlight last character since
https://github.com/neovim/neovim/commit/8ce504820af04194a41acbe1f4c61cf12bd5feb5.
Solution: Always use `opts.inclusive=true`, since calculation of `"]`
(`b_op_end`) have taken `inclusive` into account.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: [security]: potential data loss with zip.vim and special
crafted zip files (RyotaK)
Solution: use glob '[-]' to protect filenames starting with '-'
Github Advisory:
https://github.com/vim/vim/security/advisories/GHSA-693p-m996-3rmf
https://github.com/vim/vim/commit/f209dcd3defb95bae21b2740910e6aa7bb940531
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
undefined (#32866)
Problem: inside try-block: fn body executed when default arg is
undefined
Solution: When inside a try-block do not execute function body after an
error in evaluating a default argument expression
(Shane Harper).
closes: vim/vim#16865
https://github.com/vim/vim/commit/2d18789aa67cc60072ea0cf21811c403fa0b2c7b
Co-authored-by: Shane Harper <shane@shaneharper.net>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
"umask" is pronounce like "youmask", so having an "an" before it is a
bit strange. In other places in the help, "umask" is not preceded by
either "a" or "an", and sometimes preceded by "the".
Also, "Note" is usually followed either by ":" or "that" in builtin.txt,
so add a ":" after "Note".
closes: 16860
https://github.com/vim/vim/commit/c1c3b5d6a0a3032057bf6de8672cc79100bb73c9
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem:
Nvim tries to use OSC 52 even when no TUIs are attached.
Solution:
On each UIEnter/UILeave event, check that there is a TUI client connected to Nvim's stdout.
|
|
|
|
|
|
|
|
|
|
| |
Problem:
On Windows, the first attempt at finishing up after a terminal process
terminates is delayed by 200ms, even if it would be possible to finish
up immediately.
Solution:
Make the first attempt at finishing up immediately after the process
terminates.
|
|
|
|
|
| |
Problem: Custom inline function duplicated existing functionality
Solution: Used existing plines_m_win function to reduce code duplication
|
| |
|
| |
|
|
|
|
|
|
|
| |
closes: vim/vim#16854
https://github.com/vim/vim/commit/4fa2dd2405a8d11bf1d1cb3553adb6fba53dc19f
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
|
|
|
|
|
| |
This matches the `iter_captures` functionality to the `iter_matches`
functionality, allowing it to specify a match limit and start depth for
the query iterator.
|
| |
|
|
|
|
|
|
|
|
|
| |
(#32853)
closes: vim/vim#16853
https://github.com/vim/vim/commit/23473303b78d598a0f3c2f9370e011045093d3bd
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
| |
syntax script (#32848)
closes: vim/vim#16857
https://github.com/vim/vim/commit/a8aeeeb9aa694f2052e904c3e02e525035e0701f
|
|
|
|
|
|
|
|
|
| |
(#32845)
fixes: vim/vim#16849
https://github.com/vim/vim/commit/0a336ccb57003c44ba303ccc50cf50cb640c2309
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
| |
When a UI detaches it will execute any UILeave events. Autocommands
cannot run in a libuv handler because they will in turn poll the event
loop, which results in recursive loop execution. So we schedule the
callback to detach the UI on the main event queue.
We also have to schedule the exit when the RPC channel is closed to
ensure it does not run until after `remote_ui_disconnect` has run,
otherwise it will hang.
|
|
|
|
| |
* fix(lsp): rename `on_publish_diagnostics` parameter: result->params
* fix(colors): specify local var type to address lint failure
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot disable individual captures and patterns in treesitter queries.
Solution:
* Expose the corresponding tree-sitter API functions for `TSQuery` object.
* Add documentation for `TSQuery`.
* Return the pattern ID from `get_captures_at_pos()` (and hence `:Inspect!`).
|
|
|
|
|
| |
Problem: `InspectTree` error on buffer without ts parser attached.
Solution: show a more correct warning.
|
|
|
|
|
| |
Enable translations in the GCC release job, as it's the fastest.
Although there aren't many tests for translation behavior, this still
allows ensuring that Nvim isn't broken when translations are enabled.
|
|
|
|
|
| |
Problem: The current implementation creates a unique autocommand group for each floating preview window, which is inefficient and can lead to numerous autocommand groups.
Solution: Use a single shared autocommand group with improved window validation to properly clean up LSP floating preview windows.
|
|
|
|
|
| |
Problem: ctx is passed directly to M.trigger. In fact, it is a field of opts.
Solution: wrapped in a table and passed to M.trigger.
|
|\
| |
| | |
ci(deps): bump lua-language-server to 3.13.7
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Unnecessary use of STRCAT() in au_event_disable(). STRCAT()
seeks to the end of new_ei, but here the end is already known.
Solution: Use STRCPY() and add p_ei_len to new_ei. Also fix a typo in a
comment. Add a test that 'eventignore' works in :argdo
(zeertzjq).
closes: vim/vim#16844
https://github.com/vim/vim/commit/969e11a18b145241dc0ab39fc1be7ed814655dfc
Cherry-pick p_ei_len from patch 9.1.0256.
|
|
|
|
|
|
| |
The name of Cmdwin* events were changed to CmdWin* in 8ed2dbf6e2802516501c11e72e5d6d977e6a07f3
without explanation. This commit changes them back.
This doesn't affect the creation or execution of autocommands. It only
affects the listing of autocommands.
|
|\
| |
| | |
vim-patch:9.1.{1186,1191,1194}: filetype: help files in git repos are not detected
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: false positive help filetype detection
Solution: Only detect a file as help if modeline appears either at start
of line or is preceded by whitespace (zeertzjq).
closes: vim/vim#16845
https://github.com/vim/vim/commit/6763b0ee95e7e66ab7992653fbba48691e803e70
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
patch
Problem: Test for patch 9.1.1186 doesn't fail without the patch.
Solution: Set 'nomodeline' in the test (zeertzjq).
closes: vim/vim#16835
https://github.com/vim/vim/commit/d6c7913e24e07c1d0ea099cda85e0014e8627c5c
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: help files in git repos are not detected
Solution: detect */doc/*.txt files as help if they end with a help
modeline, even if 'modeline' is off
Here's how I checked that this would still detect vim's own help files
correctly:
$ find . -type f -path '*/doc/*.txt' \
> -exec awk '{ } ENDFILE { print FILENAME ":" $0; }' '{}' + |
> grep -v 'vim:.*\<\(ft\|filetype\)=help\>'
./src/libvterm/doc/seqs.txt: 23 DECSM 42 = DECNRCM, national/multinational character
closes: vim/vim#16817
https://github.com/vim/vim/commit/16d6fff98ed3a9dfd34a41696b005b0c4c7800f8
Split the pattern into a Lua pattern for the first part and a Vim regex
pattern for the second part, so that if the first part doesn't match
there is no need to use the Vim regex.
Co-authored-by: David Mandelberg <david@mandelberg.org>
|
|\
| |
| | |
feat(checkhealth): group parsers by name and path in output
|
|/
|
|
|
|
|
|
|
| |
Problem:
:checkhealth vim.treesitter sorts parser entries solely by path,
splitting duplicates and reducing clarity.
Solution:
Sort entries first by name, then by path, so that duplicates are grouped.
|