aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Merge pull request #17020 from seandewar/vim-8.1.2342Sean Dewar2022-02-05
|\ | | | | vim-patch:8.1.{2342,2343,2356,2357},8.2.0233: `rand` and `srand`
| * vim-patch:8.2.0233: crash when using garbagecollect() in between rand()Sean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | Problem: Crash when using garbagecollect() in between rand(). Solution: Redesign the rand() and srand() implementation. (Yasuhiro Matsumoto, closes vim/vim#5587, closes vim/vim#5588) https://github.com/vim/vim/commit/4f645c54efe33d7a11e314676e503118761f08a7 Omit test_srand_seed. Unmacroify SHUFFLE_XOSHIRO128STARSTAR and SPLITMIX32 while we're at it (leave ROTL alone as it's fairly innocent).
| * vim-patch:8.1.2357: no test with wrong argument for rand()Sean Dewar2022-02-05
| | | | | | | | | | | | Problem: No test with wrong argument for rand(). Solution: Add a test case. https://github.com/vim/vim/commit/68e9e5f7fccb8038cf0ca5b5d95c85a923152f46
| * vim-patch:8.1.2356: rand() does not use the best algorithmSean Dewar2022-02-05
| | | | | | | | | | | | | | Problem: rand() does not use the best algorithm. Solution: use xoshiro128** instead of xorshift. (Kaito Udagawa, closes vim/vim#5279) https://github.com/vim/vim/commit/f8c1f9200c4b50969a8191a4fe0b0d09edb38979
| * vim-patch:8.1.2343: using time() for srand() is not very randomSean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Using time() for srand() is not very random. Solution: use /dev/urandom if available https://github.com/vim/vim/commit/07e4a197953d12902fb97beb48830a5323a52280 Use os_open and os_close. time_settime is N/A, so some parts of the test are disabled. There's maybe a very, very, very, very small chance the /dev/urandom test fails, but it shouldn't matter. :P
| * vim-patch:8.1.2342: random number generator in Vim script is slowSean Dewar2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Random number generator in Vim script is slow. Solution: Add rand() and srand(). (Yasuhiro Matsumoto, closes vim/vim#1277) https://github.com/vim/vim/commit/06b0b4bc27077013e9b4b48fd1d9b33e543ccf99 Add missing method call usage to builtin.txt. vim_time and test_settime is N/A. Add a modeline to test_random.vim. Use typval_T* over listitem_T* vars so we don't need to use TV_LIST_ITEM_TV all over the place... Remove NULL list checks (tv_list_len covers this).
* | vim-patch:8.2.4298: divide by zero with huge tabstop valuezeertzjq2022-02-05
|/ | | | | | Problem: Divide by zero with huge tabstop value. Solution: Reject tabstop value that overflows to zero. https://github.com/vim/vim/commit/fc88df42f1ae64bcc4d6cbc0fbd3445f8c59afdf
* Merge pull request #17275 from bfredl/keysethlbfredl2022-02-05
|\ | | | | refactor(api): use a keyset for highlight dicts
| * refactor(api): use a keyset for highlight dictsBjörn Linse2022-02-02
| |
* | test(old): add test_expand.vimzeertzjq2022-02-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes expand_spec.lua and copies test_expand.vim from Vim at version v8.1.2278. The rest of patch 8.1.2278 were already applied in #15952, so this marks that patch as fully ported. vim-patch:8.1.2278: using "cd" with "exe" may fail Problem: Using "cd" with "exe" may fail. Solution: Use chdir() instead. https://github.com/vim/vim/commit/3503d7c94a6c8c2a5ca1665d648d0cb81afcc863
* | Merge pull request #17288 from zeertzjq/vim-8.2.1128zeertzjq2022-02-04
|\ \ | | | | | | vim-patch:8.2.1128: the write message mentions characters, but it's bytes
| * | vim-patch:8.2.1128: the write message mentions characters, but it's byteszeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | Problem: The write message mentions characters, but it's actually bytes. Solution: Change "C" to "B" and "characters" to "bytes". https://github.com/vim/vim/commit/3f40ce78f5c178d15871bd784ed878c78f0b8a44
* | | vim-patch:8.1.2133: some tests fail when run as rootzeertzjq2022-02-04
|/ / | | | | | | | | | | | | | | Problem: Some tests fail when run as root. Solution: Add CheckNotRoot and use it. (James McCoy, closes vim/vim#5020) https://github.com/vim/vim/commit/07282f01da06c158bab4787adc89ec15d7eeb202 Skip test_terminal.vim and test_viminfo.vim: N/A
* | vim-patch:8.2.3583: the "gd" and "gD" commands do not update search statszeertzjq2022-02-04
| | | | | | | | | | | | | | Problem: The "gd" and "gD" commands do not update search stats. (Gary Johnson) Solution: Clear search stats. https://github.com/vim/vim/commit/0c71114aede81a209b7efc126b4bf19f11d58955
* | test(old): fix test order in test_search_stat.vimzeertzjq2022-02-04
| | | | | | | | Also avoid unnecessary divergences from upstream and add a modeline.
* | Merge pull request #17272 from zeertzjq/vim-8.1.0846zeertzjq2022-02-04
|\ \ | | | | | | vim-patch:8.1.{0846,0878,0884,2358},8.2.{0305,0352,0687,3797}
| * | vim-patch:8.2.0687: some tests do not work on FreeBSDzeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | | | | Problem: Some tests do not work on FreeBSD. Solution: Enable modeline. Use WaitFor() in more cases. (Ozaki Kiichi, closes vim/vim#6036) https://github.com/vim/vim/commit/41d4299f26cc98e253f9c63f8adc9dbb9d49ed5c
| * | vim-patch:8.2.0352: FreeBSD: test for sourcing utf-8 is skippedzeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | | | | | | | Problem: FreeBSD: test for sourcing utf-8 is skipped. Solution: Run the matchadd_conceal test separately to avoid that setting 'term' to "ansi" causes problems for other tests. (Ozaki Kiichi, closes vim/vim#5721) https://github.com/vim/vim/commit/36ddf9383181f93b080eb26121bdff37e394d2db
| * | vim-patch:8.2.0305: relativenumber test fails on some systemszeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | Problem: Relativenumber test fails on some systems. (James McCoy) Solution: Clear the command line. https://github.com/vim/vim/commit/8040a7147f5b896a702d1684e7831df107490f45
| * | vim-patch:8.1.2358: tests fail on Cirrus CI for FreeBSDzeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Tests fail on Cirrus CI for FreeBSD. Solution: Fix a test and skip some. (Christian Brabandt, closes vim/vim#5281) https://github.com/vim/vim/commit/9134f1ecd41207045db3cb47f0269497980395ad Skip test_normal.vim: already applied in #11483.
| * | vim-patch:8.1.0884: double check for bsd systemszeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | Problem: Double check for bsd systems. Solution: Delete the old line. https://github.com/vim/vim/commit/af630d4f7f8daa7edbda0b607d32d39a5feae9d9
| * | vim-patch:8.1.0878: test for has('bsd') fails on some BSD systemszeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | Problem: Test for has('bsd') fails on some BSD systems. Solution: Adjust the uname match. (James McCoy, closes vim/vim#3909) https://github.com/vim/vim/commit/a02e3f65c52a2c8c987e7dcac5df1f8db9a7b0de
| * | vim-patch:8.1.0846: not easy to recognize the system Vim runs onzeertzjq2022-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Not easy to recognize the system Vim runs on. Solution: Add more items to the features list. (Ozaki Kiichi, closes vim/vim#3855) https://github.com/vim/vim/commit/39536dd557e847e80572044c2be319db5886abe3 Some doc changes have already been applied. Some others are N/A. "moon" was removed in patch 8.2.0427 so I did not add it.
* | | fix(api/nvim_win_call): share common win_execute logicSean Dewar2022-02-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have to be sure that the bugs fixed in the previous patches also apply to nvim_win_call. Checking v8.1.2124 and v8.2.4026 is especially important as these patches were only applied to win_execute, but nvim_win_call is also affected by the same bugs. A lot of win_execute's logic can be shared with nvim_win_call, so factor it out into a common macro to reduce the possibility of this happening again.
* | | vim-patch:8.2.4028: ml_get error with :doautoall and Visual areaSean Dewar2022-02-03
| | | | | | | | | | | | | | | | | | | | | | | | Problem: ml_get error with :doautoall and Visual area. (Sean Dewar) Solution: Disable Visual mode while executing autocommands. https://github.com/vim/vim/commit/cb1956d6f2aece8ad93e19e5d4c7e0b5e405f056 This should also fix #16937 for nvim_buf_call, so test for it.
* | | vim-patch:8.2.4026: ml_get error with specific win_execute() commandSean Dewar2022-02-03
| | | | | | | | | | | | | | | | | | Problem: ml_get error with specific win_execute() command. (Sean Dewar) Solution: Check cursor and Visual area are OK. https://github.com/vim/vim/commit/e664a327014f4aa8baf8549a34a4caab2f3116a3
* | | vim-patch:8.2.4018: ml_get error when win_execute redraws with Visual selectionSean Dewar2022-02-03
|/ / | | | | | | | | | | | | | | | | | | | | Problem: ml_get error when win_execute redraws with Visual selection. Solution: Disable Visual area temporarily. (closes vim/vim#9479) https://github.com/vim/vim/commit/18f4740f043b353abe47b7a00131317052457686 {switch_to/restore}_win_for_buf is N/A (marked as such in v8.0.0860; currently only used in Vim's if_py). Add a modeline to test_execute_func.vim.
* | Merge pull request #16818 from zeertzjq/vim-8.2.3454zeertzjq2022-02-03
|\ \ | | | | | | vim-patch:8.2.{3454,3455,3497,3540,3581,3678}: some "p" and "gp" patches
| * | vim-patch:8.2.3678: illegal memory accesszeertzjq2022-01-29
| | | | | | | | | | | | | | | | | | Problem: Illegal memory access. Solution: Ignore changed indent when computing byte offset. https://github.com/vim/vim/commit/85be8563fe5aff686e9e30d6afff401ccd976f2a
| * | vim-patch:8.2.3581: reading character past end of linezeertzjq2022-01-29
| | | | | | | | | | | | | | | | | | Problem: Reading character past end of line. Solution: Correct the cursor column. https://github.com/vim/vim/commit/0b5b06cb4777d1401fdf83e7d48d287662236e7e
| * | vim-patch:8.2.3540: the mark '] is wrong after put with a countzeertzjq2022-01-29
| | | | | | | | | | | | | | | | | | Problem: The mark '] is wrong after put with a count. (Naohiro Ono) Solution: Use the right line number. (closes vim/vim#8956) https://github.com/vim/vim/commit/f47ebf1e1a0a6473b10fb4c92c9c6427aab4dc91
| * | vim-patch:8.2.3497: put test fails when run by itselfzeertzjq2022-01-29
| | | | | | | | | | | | | | | | | | Problem: Put test fails when run by itself. Solution: Source check.vim. (Dominique Pellé, closes vim/vim#8990) https://github.com/vim/vim/commit/a9173d06f7ca320fc84f4ffa993861d21710bc41
| * | vim-patch:8.2.3455: using a count with "gp" leaves '] in wrong positionzeertzjq2022-01-29
| | | | | | | | | | | | | | | | | | Problem: Using a count with "gp" leaves '] in wrong position. (Naohiro Ono) Solution: Correct the mark position. (closes vim/vim#8899) https://github.com/vim/vim/commit/56858e4ed4e338e15821767b8303b06099e40384
| * | vim-patch:8.2.3454: using a count with "gp" leave cursor in wrong positionzeertzjq2022-01-29
| | | | | | | | | | | | | | | | | | | | | Problem: Using a count with "gp" leave cursor in wrong position. (Naohiro Ono) Solution: Count the inserted lines. (closes vim/vim#8899) https://github.com/vim/vim/commit/23003e51e18371afda4420d9e171a3dcba5a31cc
* | | Merge pull request #17226 from dundargoc/refactor/remove-redundant-codezeertzjq2022-02-03
|\ \ \ | |_|/ |/| | vim-patch:8.2.4241: some type casts are redundant
| * | vim-patch:8.2.4241: some type casts are redundantDundar Göc2022-01-30
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Some type casts are redundant. Solution: Remove the type casts. (closes vim/vim#9643) https://github.com/vim/vim/commit/420fabcd4ffeaf79082a6e43db91e1d363f88f27 This is not a literal port but an equivalent one.
* | | Merge pull request #17245 from zeertzjq/vim-8.2.3219zeertzjq2022-02-02
|\ \ \ | | | | | | | | vim-patch:8.2.3219: :find searches non-existing directories
| * | | vim-patch:8.2.3219: :find searches non-existing directorieszeertzjq2022-02-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: :find searches non-existing directories. Solution: Check the path is not "..". Update help. (Christian Brabandt, closes vim/vim#8612, closes vim/vim#8533) https://github.com/vim/vim/commit/7a4ca32175bef0f9a177052796bd9addd10dc218 Change STRNCAT to STRLCAT as clint doesn't like the former. Include a typo fix from https://github.com/vim/vim/commit/2f0936cb9a2eb026acac03e6a8fd0b2a5d97508b#diff-7e9292cae1f2ba70dd5b17d2d162693a91044ada6ac99e9c3e8917f32878c097
* | | | vim-patch:8.2.4283: using a variable for the return value is not neededzeertzjq2022-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Using a variable for the return value is not needed. Solution: Return the value directly. (closes vim/vim#9687) https://github.com/vim/vim/commit/73257149d759a8e6ddbe555d2b5aa37b6cb8db8b Also move down variable declarations in changedir_func(). vim_chdirfile() doesn't need change.
* | | | vim-patch:8.2.3947: unnecessary check for NULL pointerzeertzjq2022-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Unnecessary check for NULL pointer. Solution: Remove the check. (closes vim/vim#9434) https://github.com/vim/vim/commit/f38aad85cf8e4e930c96cb843bc136949c8dbd29 Reorder the two if branches to match upstream.
* | | | Merge pull request #16879 from zeertzjq/vim-8.2.3966zeertzjq2022-02-02
|\ \ \ \ | | | | | | | | | | vim-patch:8.2.3966: when using feedkeys() abbreviations may be blocked
| * | | | vim-patch:8.2.3966: when using feedkeys() abbreviations may be blockedzeertzjq2022-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: When using feedkeys() abbreviations may be blocked. Solution: Reset tb_no_abbr_cnt when running out of characters. (closes vim/vim#9448) https://github.com/vim/vim/commit/b37a65e4bf08c4eec4fa5b81a5efc3945fca44de
* | | | | Merge pull request #17187 from lewis6991/masterbfredl2022-02-01
|\ \ \ \ \ | |/ / / / |/| | | | feat(highlight): ns=0 to set :highlight namespace
| * | | | feat(highlight): ns=0 to set :highlight namespaceLewis Russell2022-02-01
| |/ / / | | | | | | | | | | | | Passing ns=0 to nvim_set_hl will alter the `:highlight` namespace.
* | | | Merge pull request #17113 from zeertzjq/vim-8.2.2569zeertzjq2022-02-01
|\ \ \ \ | |/ / / |/| | | feat(statusline): support multibyte fillchar
| * | | feat(statusline): support multibyte fillcharzeertzjq2022-01-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes a partial port of Vim patch 8.2.2569 and some changes to nvim_eval_statusline() to allow a multibyte fillchar. Literally every line of C code touched by that patch has been refactored in Nvim, and that patch contains some irrelevant foldcolumn tests I'm not sure how to port (as Nvim's foldcolumn behavior has diverged from Vim's).
* | | | vim-patch:8.2.4274: Basic and form filetype detection is incomplete (#17259)Christian Clason2022-02-01
| | | | | | | | | | | | | | | | | | | | Problem: Basic and form filetype detection is incomplete. Solution: Add a separate function for .frm files. (Doug Kearns, closes vim/vim#9675) https://github.com/vim/vim/commit/c570e9cf68c0fe30366e82c96be460047dd659b9
* | | | vim-patch:8.2.4273: the EBCDIC support is outdatedzeertzjq2022-02-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The EBCDIC support is outdated. Solution: Remove the EBCDIC support. https://github.com/vim/vim/commit/424bcae1fb0f69e0aef5e0cf84fd771cf34a0fb7 Also remove a comment in buf_init_chartab() as it is for enc_dbcs only. Skip test_expr.vim: the check was already removed when patch 7.4.2265 was first ported.
* | | | Merge pull request #17254 from zeertzjq/vim-8.2.3787zeertzjq2022-02-01
|\ \ \ \ | | | | | | | | | | vim-patch:8.2.{3787,3932,3934,3935,3938}: text formatting patches
| * | | | refactor(indent_c.c): add const qualifierszeertzjq2022-01-31
| | | | |