aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* vim-patch:8.2.3944: insert mode completion functions are too longzeertzjq2022-08-24
| | | | | | | | | Problem: Insert mode completion functions are too long. Solution: Split up into multiple functions. (Yegappan Lakshmanan, closes vim/vim#9431) https://github.com/vim/vim/commit/5d2e007ccbfbd749a1f201d06965b8811ff50e6e Cherry-pick can_cindent_get() -> get_can_cindent() from patch 8.1.2062.
* vim-patch:8.2.3937: Insert mode completion function is too longzeertzjq2022-08-24
| | | | | | | | | Problem: Insert mode completion function is too long. Solution: Refactor into multiple functions. (Yegappan Lakshmanan, closes vim/vim#9423) https://github.com/vim/vim/commit/edc6f103907a004b9e2265e232dc8be8bc594601 Cherry-pick a typo fix from patch 8.2.3637.
* fix(path): path_is_url returns false for "foo:/" #19797sigmaSd2022-08-23
| | | | | | | | | | | | | | | Problem: path_to_url() returns false for single-slash URIs ("foo:/" vs "foo://"). This is not compliant with the URI spec. https://url.spec.whatwg.org/#url-representation LSP in particular allows single-slash URIs. Solution: Relax path_to_url() to accept single-slash URIs. This is not fully compliant (only ":" is required by the spec), but it is hopefully good enough without causing false-positives in typical text files. ref https://url.spec.whatwg.org/#windows-drive-letter ref https://github.com/neovim/neovim/pull/19773 ref https://github.com/neovim/neovim/pull/19773#issuecomment-1214763769
* fix(cmdline): do not trigger completion at wrong time (#19920)zeertzjq2022-08-24
| | | Cherry-picked from Vim patches 8.2.4339, 9.0.0238.
* 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>
* doc(CONTRIBUTING): update #19891Lewis Russell2022-08-23
| | | | | | - add section for managing includes via IWYU - recommend clangd over ctags - tidy up links - remove ./scripts/check-includes.py
* fix(inspect): escape identifiers that are lua keywords (#19898)Simon Wachter2022-08-23
| | | A lua keyword is not a valid table identifier
* Merge pull request #19905 from zeertzjq/vim-8.2.4726zeertzjq2022-08-23
|\ | | | | vim-patch:8.2.{4726,4740,4741,4749,4841,4842}: expand('<script>')
| * 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.
* test: add test for using :normal to stop Visual mode in cmdwin (#19904)zeertzjq2022-08-23
|
* 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.
* Merge pull request #19886 from zeertzjq/vim-8.2.2030zeertzjq2022-08-22
|\ | | | | vim-patch:8.2.{2030,2031}: some tests fail
| * 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
* Merge pull request #19885 from zeertzjq/vim-8.2.4328zeertzjq2022-08-22
|\ | | | | vim-patch:8.2.{4328,4334}: wildmenu tests
| * 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.
* vim-patch:e80086446cc2 (#19848)Christian Clason2022-08-20
| | | | | | | | | * vim-patch:e80086446cc2 Update runtime files https://github.com/vim/vim/commit/e80086446cc20856ed8359bc8dc87c4d430da4c8 Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
* 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.
* Merge pull request #19852 from zeertzjq/vim-8.2.3623zeertzjq2022-08-20
|\ | | | | vim-patch:8.2.{3623,4667}: expandcmd() fixes
| * 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.