| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
| |
which is both unexpected and different from the Vim behaviour.
Indent was triggered once by the '!' check in insert_execute(), and
inserting the char was correctly skipped, but then triggered again in
insert_check() (provided that cindent was not being ignored after manual
indentation, i.e. `can_cindent == true`).
While this is the smallest fix, another solution would be to remove
VimState#check and instead move that to *_enter()/-_execute(), since the
control flow is pretty unnecessarily convoluted as is. That would also
have the benefit of differing less from the Vim source code.
|
|
|
|
|
|
|
|
| |
Problem: Vim9: 'cpo' can become empty.
Solution: Use empty_option instead of an empty string. Update quickfix
buffer after restoring 'cpo'. (closes vim/vim#7608)
https://github.com/vim/vim/commit/e5a2dc87fd9d63dfd0d9c379e363ee8b8c05b14c
Omit test as it is Vim9 script.
|
|\
| |
| | |
vim-patch:8.2.{2030,2031}: some tests fail
|
| |
| |
| |
| |
| |
| | |
Problem: Some tests fail when run under valgrind.
Solution: Avoid timing problems.
https://github.com/vim/vim/commit/18dc355395f2eac72ab83d984cacd26ae61c791f
|
|/
|
|
|
|
|
| |
Problem: Some tests fail on Mac.
Solution: Avoid Mac test failures. Add additional test for wildmenu.
(Yegappan Lakshmanan, closes vim/vim#7341)
https://github.com/vim/vim/commit/4b2ce1297e6e991bf6a674f9465d26d28e648de7
|
|\
| |
| | |
vim-patch:8.2.{4328,4334}: wildmenu tests
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Command line popup menu not positioned correctly.
Solution: Also use vim_strsize() on the existing text. (Naruhiko Nishino,
closes vim/vim#9727)
https://github.com/vim/vim/commit/68cc2b8a37197872e737fb61244069e13b7227a2
|
|/
|
|
|
|
|
| |
Problem: Command line complete matches cleard when typing character.
(Dominique Pellé)
Solution: Only remove a popup menu if there is one.
https://github.com/vim/vim/commit/73a16c22a4703cb9a7becdf459ce62bd894980d7
|
|\
| |
| | |
fix(ui): don't allow decor provider with ns_id==0
|
| |
| |
| |
| | |
Fixes #19831
|
| |
| |
| |
| |
| |
| |
| | |
visible (#19882)
Problem: Popup menu not removed when 'wildmenu' reset while it is visible.
Solution: Do not check p_wmnu, only pum_visible(). (closes vim/vim#10953)
https://github.com/vim/vim/commit/b82a2ab8ad7af52a327cdba013ec433f7caf550d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: 'wildmenu' only shows few matches.
Solution: Add the "pum" option: use a popup menu to show the matches.
(Yegappan Lakshmanan et al., closes vim/vim#9707)
https://github.com/vim/vim/commit/3908ef5017a6b4425727013588f72cc7343199b9
Omit p_wmnu check in cmdline_pum_active() as it can cause problems.
Omit vim_strchr() flags as that isn't really better than bitmasks.
Omit key translations and document it in vim_diff.txt.
|
| |
| |
| |
| |
| |
| |
| | |
Problem: A command defined with `nargs="?"` returns `fargs={""}` to
a Lua callback when executed with no arguments, which is inconsistent
with how`nargs="*"` behaves.
Solution: Pass `fargs={}` for no argument with `nargs="?"` as well.
|
| |
| |
| |
| |
| |
| |
| |
| | |
char (#19879)
Problem: Cannot make difference between the end of :normal and a character
in its argument.
Solution: Add the "typebuf_was_empty" flag. (closes vim/vim#10950)
https://github.com/vim/vim/commit/8d69637133e17370491b83da8657a15b991c2f76
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
variables (#19872)
Problem: Still using cached values after unsetting some known environment
variables.
Solution: Take care of the side effects. (closes vim/vim#10194)
https://github.com/vim/vim/commit/7714231bb5b15f7c85453f3945c108478de1d08a
Cherry-pick vim_setenv_ext() from patch 8.2.0200.
|
| |
| |
| |
| | |
This is a small refactor that makes `compl_match_array` static and
doesn't change any behavior.
|
| |
| |
| |
| |
| |
| |
| |
| | |
(#19868)
Problem: Loop for handling keys for the command line is too long.
Solution: Move wild menu handling to separate functions. (Yegappan
Lakshmanan, closes vim/vim#6856)
https://github.com/vim/vim/commit/eadee486c70946ad0e1746d77898d6f4f4acc817
|
| |
| |
| |
| |
| | |
Problem: Command line expansion code is spread out.
Solution: Move set_one_cmd_context(). (Yegappan Lakshmanan, closes vim/vim#4855)
https://github.com/vim/vim/commit/d019039ccd7cbeae8923db20383a241d7fc77e2c
|
| |
| |
| |
| |
| |
| |
| | |
(#19866)
Problem: Expanding "**" may loop forever with directory links.
Solution: Check for being interrupted. (closes vim/vim#10946)
https://github.com/vim/vim/commit/57e95179abdd851cb2d0c06d4f973575a768e3bb
|
|/
|
|
|
| |
Problem: Command line expansion code is spread out.
Solution: Move the code to cmdexpand.c. (Yegappan Lakshmanan, closes vim/vim#4831)
https://github.com/vim/vim/commit/66b51420e0c8d49bcf6786b792c938d6099e3393
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: The option.c file is too big.
Solution: Split off the code dealing with strings. (Yegappan Lakshmanan,
closes vim/vim#4937)
https://github.com/vim/vim/commit/dac1347b4d9c1a1aef6aa73fdea08a9d1077d6ea
Cherry-pick set_string_option_direct_in_win() from patch 8.1.1405.
Cherry-pick shift_line() comment change from patch 8.1.2096.
Move 'clipboard' default parsing to didset_string_options().
Reorder option flags to put Nvim-only flags at the end.
|
|
|
|
|
|
|
|
|
| |
* vim-patch:e80086446cc2
Update runtime files
https://github.com/vim/vim/commit/e80086446cc20856ed8359bc8dc87c4d430da4c8
Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
|
|
|
| |
This makes callback_call() match call_vim_function() when calling a function.
|
|\
| |
| | |
vim-patch:8.2.{3623,4667}: expandcmd() fixes
|
| |
| |
| |
| |
| |
| |
| | |
Problem: expandcmd() fails on an error.
Solution: On failure return the command unmodified. (yegappan Lakshmanan,
closes vim/vim#10063)
https://github.com/vim/vim/commit/5018a836c030988944a9bbe2fd2e538bf5261a72
|
|/
|
|
|
|
|
|
|
| |
Problem: "$*" is expanded to "nonomatch".
Solution: Only add "set nonomatch" when using a csh-like shell. (Christian
Brabandt, closes vim/vim#9159, closes vim/vim#9153)
https://github.com/vim/vim/commit/8b8d829faf04fe3706c04f7f7000054acd3254e7
Cherry-pick a line from patch 8.2.0522.
|
|\
| |
| | |
refactor(drawline.c): factor out utf8 multibyte check
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Cannot use a lambda for 'operatorfunc'.
Solution: Support using a lambda or partial. (Yegappan Lakshmanan,
closes vim/vim#8775)
https://github.com/vim/vim/commit/777175b0df8c5ec3cd30d19a2e887e661ac209c8
Omit duplicate docs. It's removed in patch 8.2.3623.
Nvim doesn't seem to need callback_set() as it was omitted when patch 8.1.1437
was first ported.
|
|\ \
| | |
| | | |
refactor: move statusline code from buffer.c and [draw]screen.c to new file
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
problem: code for drawing statusline is arbitrarily spreadout between drawscreen.c, screen.c and buffer.c
solution: move it to a new file statusline.c
- rename archaic internal name "status match" to public name "wildmenu"
- showruler() does not show the ruler. it show anything which displays
info about the cursor. Rename it accordingy.
|
| |
| |
| |
| |
| |
| |
| |
| | |
fix(filetype): only pass first 100 and last lines to contents check
sufficient for current content checks and avoids performance issues for
buffers with a large number of lines
fixes #19817
|
| |
| |
| |
| |
| |
| |
| | |
docs(lua): update vim.{go,bo,wo} documentation
* document indexing by buffer/window handle
* correct wrapper information (`nvim_buf_{g,s}et_value` now)
* make clear what is considered "invalid key" (consistently)
|
|\ \
| | |
| | | |
feat: multibuffer preview support for inccommand
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Allows preview callbacks to modify multiple buffers in order to show the
preview. Previously, if multiple buffers were modified, only the current
buffer would have its state restored. After this change, all buffers
have their state restored after preview.
Closes #19103.
|
|\ \ \
| | | |
| | | | |
vim-patch:8.2.{partial:0425,0982}: insufficient tests
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Insufficient testing for reading/writing files.
Solution: Add more tests. (Yegappan Lakshmanan, closes vim/vim#6257)
Add "ui_delay" to test_override() and use it for the CTRL-O test.
https://github.com/vim/vim/commit/b340baed9f7fc1c19a0742e2214d54982190c15e
Omit test_override().
Reorder test_writefile.vim to match Vim.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Code for modeless selection not sufficiently tested.
Solution: Add tests. Move mouse code functionality to a common script file.
(Yegappan Lakshmanan, closes vim/vim#5821)
https://github.com/vim/vim/commit/515545e11f523d14343b1e588dc0b9bd3d362bc2
Skip termcode tests for now.
|
|\ \ \
| |_|/
|/| | |
vim-patch:8.2.3946,9.0.0227: internal error improvements
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Cannot read error message when abort() is called.
Solution: Output a newline before calling abort().
https://github.com/vim/vim/commit/213e70e284b0975dd34525e94e59e26811097c72
Add emsg_not_now() check to make code equivalent.
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Problem: When an internal error makes Vim exit the error is not seen.
Solution: Add the error to the test output.
https://github.com/vim/vim/commit/1c67f3a9779b99bed7aacb3108abbb649445d3ed
Add emsg_not_now() check to make code equivalent.
|
| |
| |
| |
| |
| |
| | |
Problem: Some code in options.c fits better elsewhere.
Solution: Move functions from options.c to other files. (Yegappan
Lakshmanan, closes vim/vim#4889)
https://github.com/vim/vim/commit/e677df8d93772a705f40a94f3c871aee78fe4d99
|
|\ \ |
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: The screen.c file is much too big.
Solution: Split it in three parts. (Yegappan Lakshmanan, closes vim/vim#4943)
https://github.com/vim/vim/commit/7528d1f6b5422750eb778dfb550cfd0b0e540964
This is an approximation vim-patch 8.1.2057. Applying the patch directly
isn't feasible since our version of screen.c has diverged too much,
however we still introduce drawscreen.c and drawline.c:
- screen.c is now a much smaller file used for low level screen functions
- drawline.c contains everything needed for win_line()
- drawscreen.c contains everything needed for update_screen()
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| | |
|
| |
| |
| |
| |
| | |
This reverts commit c4c74c3883aa3122c0c877ca8dd7b26beb5cc4aa.
LibUV already gives an error for this, so this isn't needed.
|
|\ \
| | |
| | | |
fix(api): make nvim_set_hl(ns=0, ...) redraw screen properly
|
| | |
| | |
| | |
| | | |
fixes #18160
|
| | |
| | |
| | |
| | | |
replaces deprecated LGTM workflow:
https://github.blog/2022-08-15-the-next-step-for-lgtm-com-github-code-scanning/
|
|\ \ \
| | | |
| | | | |
fix(winhl): do not crash when unsetting winhl in just opened window
|