aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * | | vim-patch:9.0.0248: duplicate code in finding a script in the execution ↵zeertzjq2022-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | stack (#19917) Problem: Duplicate code in finding a script in the execution stack. Solution: Reduce duplicate code. (closes vim/vim#10961) https://github.com/vim/vim/commit/a247142ae45308087b25f91c8af48399c8ac2943
| * | | vim-patch:9.0.0206: redraw flags are not named specifically (#19913)zeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | Problem: Redraw flags are not named specifically. Solution: Prefix "UPD_" to the flags, for UPDate_screen(). https://github.com/vim/vim/commit/a4d158b3c839e96ed98ff87c7b7124ff4518c4ff
| * | | refactor(spell.c): resolve clint errors (#19875)Lewis Russell2022-08-23
| | | | | | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * | | vim-patch:8.2.4842: expand("%:p") is not empty when there is no buffer namezeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | Problem: expand("%:p") is not empty when there is no buffer name. Solution: When ignoring errors still return NULL. (closes vim/vim#10311) https://github.com/vim/vim/commit/211a5bb2353c66684f38527184a258921f95c9d9
| * | | vim-patch:8.2.4841: empty string considered an error for expand()zeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Empty string considered an error for expand() when 'verbose' is set. (Christian Brabandt) Solution: Do not give an error for an empty result. (closes vim/vim#10307) https://github.com/vim/vim/commit/a96edb736d4274fc4aea460800780e06e1510812
| * | | vim-patch:8.2.4749: <script> is not expanded in autocmd contextzeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: <script> is not expanded in autocmd context. Solution: Add the context to the pattern struct. (closes vim/vim#10144) Rename AutoPatCmd to AutoPatCmd_T. https://github.com/vim/vim/commit/eca7c60d68e63001dbe3c8e5d240b0895e607fc3 Omit AutoPatCmd -> AutoPatCmd_T rename as it is inconsistent. Use `.sn_name` instead of `->sn_name` as v8.2.0154 hasn't been ported. Omit acp_script_stx(), use member directly.
| * | | vim-patch:8.2.4741: startup test failszeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Startup test fails. Solution: Avoid an error for verbose expansion. Fix that the "0verbose" command modifier doesn't work. https://github.com/vim/vim/commit/60895f3e36def9beb7d5463e792e5154ad9a7a0a Most code changes has already been ported.
| * | | vim-patch:8.2.4740: when expand() fails there is no error messagezeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | Problem: When expand() fails there is no error message. Solution: When 'verbose' is set give an error message. https://github.com/vim/vim/commit/575445200bd35283191ecd7a0d596b37c5b477a4
| * | | vim-patch:8.2.4726: cannot use expand() to get the script namezeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot use expand() to get the script name. Solution: Support expand('<script>'). (closes vim/vim#10121) https://github.com/vim/vim/commit/6013d0045dec7ca7c0068fbe186c42d754a7368b Use `.sn_name` instead of `->sn_name` as v8.2.0154 hasn't been ported. Cherry-pick builtin.txt expand() doc from latest Vim.
| * | | vim-patch:8.2.1046: insufficient tests for src/buffer.c (#19903)zeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Insufficient tests for src/buffer.c. Solution: Add more tests. Move comments related tests to a separate file. (Yegappan Lakshmanan, closes vim/vim#6325) https://github.com/vim/vim/commit/b7e2483655d9b68df0c7349918027d800051a28a
| * | | vim-patch:8.2.0522: several errors are not tested for (#19901)zeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Several errors are not tested for. Solution: Add tests. (Yegappan Lakshmanan, closes vim/vim#5892) https://github.com/vim/vim/commit/ee4e0c1e9a81cb5d96e0060203a9033c2f28588e Omit Test_range() change: reverted in patch 8.2.0615. Cherry-pick Test_z_no_space_before_xxx() from patch 8.2.0195. Cherry-pick Test_reverse_sort_uniq() change from patch 8.2.0183. Make uniq() error behavior consistent with sort(). Cherry-pick Test_set_ttytype() change from patch 8.1.1826. Cherry-pick quickfix checks from patch 8.1.2373 to test_preview.vim. Test_viminfo_error() is applicable. Cherry-pick E1058 from patch 8.2.0149 and port Test_deep_nest() to Lua.
| * | | vim-patch:8.1.{1915,1921,1953} (#19900)zeertzjq2022-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | vim-patch:8.1.1915: more functions can be used as methods Problem: More functions can be used as methods. Solution: Make various functions usable as a method. https://github.com/vim/vim/commit/1a3a89168d61c2fed91cbca812cf1c6983901b79 Move debugbreak() to the right place. vim-patch:8.1.1921: more functions can be used as methods Problem: More functions can be used as methods. Solution: Make various functions usable as a method. https://github.com/vim/vim/commit/a4208966fb289a505ebdef62bbc37c214069bab4 vim-patch:8.1.1953: more functions can be used as a method Problem: More functions can be used as a method. Solution: Allow more functions to be used as a method. https://github.com/vim/vim/commit/f9f24ce7a0e5988fedf2e2ff751818f9b07510a6 Omit test_termcodes.vim: cannot be used and superseded by later patches. Cherry-pick test_bufline.vim change from patch 8.1.1993.
| * | | vim-patch:8.1.0832: confirm() is not tested (#19896)zeertzjq2022-08-23
| |/ / | | | | | | | | | | | | Problem: confirm() is not tested. Solution: Add a test. (Dominique Pelle, closes vim/vim#3868) https://github.com/vim/vim/commit/2e0500921891e4fec57e97d3c0021aa2d2b4d7ae
| * / vim-patch:8.2.3421: a bit of code is not covered by tests (#19895)zeertzjq2022-08-22
| |/ | | | | | | | | | | | | | | | | Problem: A bit of code is not covered by tests. Solution: Add a few more test cases. (Dominique Pellé, closes vim/vim#8857) https://github.com/vim/vim/commit/d176ca3dde47c11aae0376c31b7e1ba0939c8c6c Cherry-pick Test_trim() change from patch 8.2.0448. Cherry-pick Test_History() change from patch 8.2.1736. Cherry-pick charidx() and trim() type checks from patch 8.2.3135.
| * fix(api): avoid side effects with nvim_parse_cmd (#19890)zeertzjq2022-08-22
| | | | | | | | Save and restore the cursor and last search pattern and do not change search history.
| * vim-patch:8.2.4753: error from setting an option is silently ignored (#19888)zeertzjq2022-08-22
| | | | | | | | | | Problem: Error from setting an option is silently ignored. Solution: Handle option value errors better. Fix uses of N_(). https://github.com/vim/vim/commit/31e5c60a682840959cae6273ccadd9aae48c928d
| * fix(edit.c): indentkeys double indent after "!" #12894Axel Forsman2022-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * vim-patch:8.2.2289: Vim9: 'cpo' can become empty (#19887)zeertzjq2022-08-22
| | | | | | | | | | | | | | | | 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.2031: some tests fail when run under valgrindzeertzjq2022-08-22
| | | | | | | | | | | | Problem: Some tests fail when run under valgrind. Solution: Avoid timing problems. https://github.com/vim/vim/commit/18dc355395f2eac72ab83d984cacd26ae61c791f
| * vim-patch:8.2.2030: some tests fail on Maczeertzjq2022-08-22
| | | | | | | | | | | | | | 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
* | eval/userfunc.c: save the repeat_cmdline along with the redo buffJosh Rahm2022-09-15
|/ | | | | | A user function can clobber the repeat_cmdline, which is used to build the redo buffer, thus, if the redo buffer is saved when calling a userfunc, so should the repeat_cmdline.
* vim-patch:8.2.4334: command line popup menu not positioned correctlyzeertzjq2022-08-22
| | | | | | | 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
* vim-patch:8.2.4328: command line complete matches cleard when typing characterzeertzjq2022-08-22
| | | | | | | 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
* Merge pull request #19864 from lewis6991/decorfixbfredl2022-08-21
|\ | | | | fix(ui): don't allow decor provider with ns_id==0
| * fix(ui): don't allow decor provider with ns_id==0Lewis Russell2022-08-20
| | | | | | | | Fixes #19831
* | vim-patch:9.0.0236: popup menu not removed when 'wildmenu' reset while ↵zeertzjq2022-08-21
| | | | | | | | | | | | | | 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
* | vim-patch:8.2.4325: 'wildmenu' only shows few matches (#19876)zeertzjq2022-08-21
| | | | | | | | | | | | | | | | | | | | 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.
* | fix(api/command): fargs behavior when no arguments are passed (#19862)Javier Lopez2022-08-21
| | | | | | | | | | | | | | 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.
* | vim-patch:9.0.0234: cannot make difference between :normal end and argument ↵zeertzjq2022-08-21
| | | | | | | | | | | | | | | | 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
* | vim-patch:8.2.4754: using cached values after unsetting some environment ↵zeertzjq2022-08-21
| | | | | | | | | | | | | | | | | | | | 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.
* | refactor: make wildmenu code closer to Vim (#19870)zeertzjq2022-08-21
| | | | | | | | This is a small refactor that makes `compl_match_array` static and doesn't change any behavior.
* | vim-patch:8.2.1587: loop for handling keys for the command line is too long ↵zeertzjq2022-08-21
| | | | | | | | | | | | | | | | (#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
* | vim-patch:8.1.1914: command line expansion code is spread out (#19867)zeertzjq2022-08-21
| | | | | | | | | | 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
* | vim-patch:9.0.0231: expanding "**" may loop forever with directory links ↵zeertzjq2022-08-21
| | | | | | | | | | | | | | (#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
* | vim-patch:8.1.1886: command line expansion code is spread out (#19861)zeertzjq2022-08-21
|/ | | | | 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
* vim-patch:8.1.2045: the option.c file is too big (#19854)zeertzjq2022-08-20
| | | | | | | | | | | 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.
* fix(eval): check for v:lua when calling callback (#19855)zeertzjq2022-08-20
| | | This makes callback_call() match call_vim_function() when calling a function.
* vim-patch:8.2.4667: expandcmd() fails on an errorzeertzjq2022-08-20
| | | | | | | 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
* vim-patch:8.2.3623: "$*" is expanded to "nonomatch"zeertzjq2022-08-20
| | | | | | | | | 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.
* Merge pull request #19847 from lewis6991/utfmbLewis Russell2022-08-19
|\ | | | | refactor(drawline.c): factor out utf8 multibyte check
| * refactor(drawline.c): factor out utf8 multibyte checkLewis Russell2022-08-19
| |
* | vim-patch:8.2.3619: cannot use a lambda for 'operatorfunc' (#19846)zeertzjq2022-08-20
| | | | | | | | | | | | | | | | | | | | 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 filebfredl2022-08-19
| | | | | | | | | | | | | | | | | | 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.
* | Merge pull request #19360 from famiu/feat/multibuffer-inccommandbfredl2022-08-19
|\ \ | | | | | | feat: multibuffer preview support for inccommand
| * | feat: multibuffer preview support for inccommandFamiu Haque2022-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.0982: insufficient testing for reading/writing fileszeertzjq2022-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | vim-patch:partial:8.2.0425: code for modeless selection not sufficiently testedzeertzjq2022-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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:9.0.0227: cannot read error message when abort() is calledzeertzjq2022-08-19
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | vim-patch:8.2.3946: when an internal error makes Vim exit the error is not seenzeertzjq2022-08-19
| |/ |/| | | | | | | | | | | | | 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.
* | vim-patch:8.1.1966: some code in options.c fits better elsewhere (#19840)zeertzjq2022-08-19
| | | | | | | | | | | | 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