aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * | | | feat(shada): restore Blob globals properlySean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As Strings and Blobs are encoded as msgpack BINs, the current ShaDa implementation will restore global Blob variables as Strings (or msgpack special dicts if they contain NULs). Encode an additional element with Blob globals to differentiate them from Strings so that we can restore them with the correct type. Adjust variables_spec.lua's autotest() to also check for proper type.
| * | | | feat(msgpack): convert Blobs to BIN stringsSean Dewar2021-09-15
| | | | |
| * | | | feat(json): convert Blobs to array of byte valuesSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | Similiar to how Vim does it, but to be consistent with how Nvim encodes lists, add a space after every comma.
| * | | | feat(api): convert Blobs to API stringsSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | Note that these are not NUL-terminated; the API supports this.
| * | | | feat(nlua): convert Blobs to stringsSean Dewar2021-09-15
| | | | |
| * | | | vim-patch:8.1.0736: code for Blob not sufficiently testedSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Code for Blob not sufficiently tested. Solution: Add more tests. Fix uncovered crash. Add test_null_blob(). https://github.com/vim/vim/commit/c0f5a78c15b194f23bedb82e6825e34f481e6532 eval0 and ex_echo's emsg-specific changes have already been ported. These tests uncover another crash that was fixed in v8.1.0738.
| * | | | vim-patch:8.1.0735: cannot handle binary dataSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot handle binary data. Solution: Add the Blob type. (Yasuhiro Matsumoto, closes vim/vim#3638) https://github.com/vim/vim/commit/6e5ea8d2a995b32bbc5972edc4f827b959f2702f Nvim-specific Blob conversions are implemented in future commits. Refactor write_blob() to use a FileDescriptor, as f_writefile() was refactored to use one (does not apply to read_blob()). Use var_check_lock() in f_add() for Blobs from v8.1.0897. Add a modeline to test_blob.vim and fix some doc typos. Include if_perl.txt's VIM::Blob() documentation. Interestingly, this function already worked before this port, as it just returns a Blob string literal, not an actual Blob object. N/A patches for version.c: vim-patch:8.1.0741: viminfo with Blob is not tested Problem: Viminfo with Blob is not tested. Solution: Extend the viminfo test. Fix reading a blob. Fixed storing a special variable value. https://github.com/vim/vim/commit/8c8b8bb56c724cc1bfc3d8520eec33f2d399697c vim-patch:8.1.1022: may use NULL pointer when out of memory Problem: May use NULL pointer when out of memory. (Coverity) Solution: Check for blob_alloc() returning NULL. https://github.com/vim/vim/commit/e142a9467a7f6845a426d8db6efedf246d3c13ac
* | | | | test(oldtest): re-order test_eval_stuff tests to match VimSean Dewar2021-09-16
| | | | |
* | | | | fix(eval): add the vimscript-1 feature to has()Sean Dewar2021-09-16
|/ / / / | | | | | | | | | | | | | | | | Include Test_string_concat_scriptversion1 to test that has('vimscript-1') works (excluding the :scriptversion 1 bit).
* / / / fix(:source): copy curbuf lines to memory before sourcing #15111Sean Dewar2021-09-15
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | It's possible for weirdness to happen if curbuf is modified while sourcing from it via :source (with no arguments). For example: - Deleting lines from or wiping curbuf can cause internal error E315 to be thrown from ml_get. - Changing the curbuf to another buffer while sourcing can cause lines from the new curbuf to then be sourced instead.
* | | fix(:source, nvim_exec): handle Vimscript line continuations #14809Sean Dewar2021-09-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Anonymous :source (no args) and nvim_exec() don't support Vimscript line continuations. Solution: Factor out the concat logic into concat_continued_line() and a CONCAT_CONTINUED_LINES macro for simple concatenations where lines are fetched individually. Closes #14807
* | | Merge #15657 vim-patch:8.1.1195,8.2.{3417,3419}Justin M. Keyes2021-09-14
|\ \ \
| * | | vim-patch:8.2.3419: a failing debug expression may make Vim unusableSean Dewar2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | Problem: A failing debug expression may make Vim unusable. Solution: Suppress error messages. (closes vim/vim#8848) https://github.com/vim/vim/commit/0325d3967ce7d0fd35bc1472fd476b911b895b76
| * | | vim-patch:8.2.3417: Vim9: a failing debug expression aborts script sourcingSean Dewar2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim9: a failing debug expression aborts script sourcing. Solution: Do not let expression failure abort script sourcing. (closes vim/vim#8848) https://github.com/vim/vim/commit/072f1c68884a1e2d468a0f39e27fc28168fb4b03 Vim9script is N/A, exclude Test_Debugger_breakadd_expr. Move debuggy struct to before generated header inclusion so eval_expr_restore prototype works. Add CheckRunVimInTerminal to Test_Debugger_breakadd. Cherry-pick Test_Debugger_breakadd changes from v8.2.1440, v8.2.1736.
| * | | vim-patch:8.1.1195: Vim script debugger functionality needs cleanupSean Dewar2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim script debugger functionality needs cleanup. Solution: Move debugger code to a separate file. Add more tests. (Yegappan Lakshmanan, closes vim/vim#4285) https://github.com/vim/vim/commit/eead75c5e8e1f965548c55ee3a9388b2cb3afc36 Good to have for eval_expr_restore in v8.2.3417. Doesn't actually add any tests.
* | | | docs: third-party licenses, TEST_COLORS, system() #15665Justin M. Keyes2021-09-14
| |/ / |/| |
* | | refactor: format files with uncrustify #15663dundargoc2021-09-14
| | |
* | | fix: "redundant cast to the same type" #15662dundargoc2021-09-14
| | | | | | | | | Apply "redundant cast to the same type" fix from clangd.
* | | refactor: format tui/input.c with uncrustify (#15661)dundargoc2021-09-14
| | |
* | | refactor: format tui.c with uncrustify (#15640)dundargoc2021-09-14
|/ /
* | refactor: replace TRUE/FALSE with true/false #15647dundargoc2021-09-13
| |
* | vim-patch:8.2.3432: octave/Matlab filetype detection does not work properly ↵Christian Clason2021-09-13
| | | | | | | | | | | | | | (#15652) Problem: Octave/Matlab filetype detection does not work properly. Solution: Update the patterns used for matching. (Doug Kearns) https://github.com/vim/vim/commit/ca0627df69c29508f6f797bef27a1f5fa9a447d3
* | vim-patch:8.2.3368: not all Racket files are recognized (#15643)Christian Clason2021-09-12
| | | | | | | | | | Problem: Not all Racket files are recognized. Solution: Also recognize .rktl and .rktd files. (Doug Kearns) https://github.com/vim/vim/commit/9cd91a1e8816d727fbdbf0b3062288e15abc5f4d
* | vim-patch:8.2.3374: Pyret files are not recognized (#15642)Christian Clason2021-09-12
| | | | | | | | | | Problem: Pyret files are not recognized. Solution: Recognize .arr files as Pyret. (Doug Kearns) https://github.com/vim/vim/commit/eb05d05f8a049b32ba1b992074534ca4763e46b3
* | Merge pull request #15550 from jasonccox/vim-8.2.3385Christian Clason2021-09-12
|\ \ | | | | | | vim-patch:8.2.3385,8.2.3393
| * | vim-patch:8.2.3393: escaping for fish shell is skipping some charactersJason Cox2021-09-02
| | | | | | | | | | | | | | | | | | | | | Problem: Escaping for fish shell is skipping some characters. Solution: Escape character after backslash if needed. (Jason Cox, closes vim/vim#8827) https://github.com/vim/vim/commit/6631597452d4644f485a09e4036d117e5f91de70
| * | vim-patch:8.2.3385: escaping for fish shell does not work properlyJason Cox2021-09-02
| | | | | | | | | | | | | | | | | | Problem: Escaping for fish shell does not work properly. Solution: Insert a backslash before a backslash. (Jason Cox, closes vim/vim#8810) https://github.com/vim/vim/commit/6e82351130ddb8d13cf3748b47f07cae77886fc7
* | | Merge pull request #14770 from andrew-pa/fix13403Björn Linse2021-09-12
|\ \ \ | | | | | | | | Fix relative float positioning
| * | | fix(windowing): positioning of relative floatsandrew-pa2021-09-08
| | | | | | | | | | | | | | | | | | | | | | | | Fix relative floating windows so that they open in the correct position relative to each other. Also make sure that their positions are correct immediately after creation without a redraw.
* | | | Merge #14611 from seandewar/vim-8.1.1116Justin M. Keyes2021-09-11
|\ \ \ \ | | | | | | | | | | vim-patch:8.1.{1116,1188,1190,1355,1722,2035,2036,2038,2043},8.2.{0886,2309}
| * | | | fix(get_showbreak_value): remove FUNC_ATTR_UNUSEDSean Dewar2021-09-11
| | | | |
| * | | | vim-patch:8.2.2309: 0o777 not recognized as octalSean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: 0o777 not recognized as octal. Solution: Use vim_isodigit(). (Ken Takata, closes vim/vim#7633, closes vim/vim#7631) https://github.com/vim/vim/commit/c37b655443e0a11a77a9f0707e3259ab4b8b3dda :scriptversion is N/A.
| * | | | vim-patch:8.2.0886: cannot use octal numbers in scriptversion 4Sean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot use octal numbers in scriptversion 4. Solution: Add the "0o" notation. (Ken Takata, closes vim/vim#5304) https://github.com/vim/vim/commit/c17e66c5c0acd5038f1eb3d7b3049b64bb6ea30b :scriptversion is N/A. Cherry-pick latest str2nr() doc changes from v8.1.2035. Cherry-pick various mentions of the 0o prefix from: - v8.2.2324 - https://github.com/vim/vim/commit/2346a6378483c9871016f9fc821ec5cbea638f13 - https://github.com/vim/vim/commit/11e3c5ba820325b69cb56f70e13c21d7b8808d33 - https://github.com/vim/vim/commit/82be4849eed0b8fbee45bc8da99b685ec89af59a Patch used ascii_isbdigit() by mistake, which was fixed in v8.2.2309. Make STR2NR_OOCT work the same as STR2NR_OCT when forcing. In Vim, STR2NR_FORCE | STR2NR_OOCT isn't handled, and doesn't actually force anything. Rather than abort(), make it work as STR2NR_OCT. This means STR2NR_FORCE | STR2NR_OCT works the same as STR2NR_FORCE | STR2NR_OOCT and STR2NR_FORCE | STR2NR_OCT | STR2NR_OOCT.
| * | | | vim-patch:8.1.2043: not sufficient testing for quoted numbersSean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Not sufficient testing for quoted numbers. Solution: Add a few more test cases. https://github.com/vim/vim/commit/ea8dcf8346f488786023fd03ec1c013cda243040 :scriptversion is N/A. Already added more quote tests in the port of v8.1.2036.
| * | | | vim-patch:8.1.2036: the str2nr() tests failSean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The str2nr() tests fail. Solution: Add missing part of patch. https://github.com/vim/vim/commit/1ac90b4fa63414d56750559506a3e076df6923b0 Add extra tests for quoted numbers in vim_str2nr_spec.lua, as the included ones in this patch are somewhat lacking.
| * | | | vim-patch:8.1.2035: recognizing octal numbers is confusingSean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Recognizing octal numbers is confusing. Solution: Introduce scriptversion 4: do not use octal and allow for single quote inside numbers. https://github.com/vim/vim/commit/60a8de28d11595f4df0419ece8afa7d6accc9fbd :scriptversion is N/A. Cherry-pick Test_readfile_binary() from v8.1.0742. Note that this patch was missing vim_str2nr() changes, and so fails the tests; this was fixed in v8.1.2036.
| * | | | vim-patch:8.1.1722: error when scriptversion is 2 a making a dictionary accessSean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Error when scriptversion is 2 a making a dictionary access. Solution: Parse the subscript even when not evaluating the sub-expression. (closes vim/vim#4704) https://github.com/vim/vim/commit/61343f0c44c8e71df04918d033e0a744c0b7f8aa :scriptversion is N/A.
| * | | | vim-patch:8.1.1355: obvious mistakes are accepted as valid expressionsSean Dewar2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Obvious mistakes are accepted as valid expressions. Solution: Be more strict about parsing numbers. (Yasuhiro Matsumoto, closes vim/vim#3981) https://github.com/vim/vim/commit/16e9b85113e0b354ece1cb4f5fcc7866850f3685 Update vim_str2nr_spec.lua to add more tests that use strict = true.
* | | | | vim-patch:partial 53f7fccc9413 (#15631)Christian Clason2021-09-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * vim-patch:partial 53f7fccc9413 Update runtime files https://github.com/vim/vim/commit/53f7fccc9413c9f770694b56f40f242d383b2d5f omit macros/hanoi/hanoi.vim omit spell/tet/main.aap omit tools/shtags.1 omit tools/xcmdsrv_client.c skip doc/pattern.txt (requires 8.2.3110; 8.2.{1665,1872}) skip doc/map.txt (requires 8.2.3228)
* | | | | refactor(syntax.c): format with uncrustify #15627dundargoc2021-09-11
| | | | |
* | | | | feat(api): win_viewport also sends line_count #15613Yatao Li2021-09-10
| | | | |
* | | | | docs: extmarks indexing #15311Justin M. Keyes2021-09-10
| | | | | | | | | | | | | | | | | | | | ref #11456
* | | | | docs: extmarks indexing #15311Javier López2021-09-10
| | | | | | | | | | | | | | | | | | | | fix #11456
* | | | | docs: extmark indexing #12742Patrice Peterson2021-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extmarks mostly use api-indexing, except for nvim_buf_get_extmarks(), which uses api-indexing with inclusive ranges. ref #11456
* | | | | vim-patch:8.2.3389: cannot stop insert mode completion without side effects ↵zeertzjq2021-09-10
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | #15538 Problem: Cannot stop insert mode completion without side effects. Solution: Add CTRL-X CTRL-Z. (closes vim/vim#8821) https://github.com/vim/vim/commit/dca29d9cf46cd1d4d4519211c7af78b6b1c56960
* | | | Merge #15626 vim-patch:8.1.{2281,2283},8.2.{2903,3391,3397}Justin M. Keyes2021-09-10
|\ \ \ \
| * | | | vim-patch:8.2.3397: no test for what 8.2.3391 fixesSean Dewar2021-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: No test for what 8.2.3391 fixes. Solution: Add a test. (Yegappan Lakshmanan, closes vim/vim#8828) https://github.com/vim/vim/commit/03d257998b6343fc91f9dfd5ffc92eebe98d4d24
| * | | | vim-patch:8.2.3391: crash with combination of 'linebreak' and other optionsSean Dewar2021-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash with combination of 'linebreak' and other options. Solution: Avoid n_extra to become negative. (Christian Brabandt, closes vim/vim#8817) https://github.com/vim/vim/commit/20e0c3d27bda770542c1c0e4c81fd6443c12f3a6
| * | | | vim-patch:8.2.2903: cursor position wrong on wrapped line with 'signcolumn'Sean Dewar2021-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cursor position wrong on wrapped line with 'signcolumn'. Solution: Don't add space for showbreak twice. (Christian Brabandt, closes vim/vim#8262) https://github.com/vim/vim/commit/a06e345af5b8261c072c95b0446e67cfda439848 Add a modeline to test_display.vim. This introduced a regression fixed by v8.2.3391.
| * | | | vim-patch:8.1.2281: 'showbreak' cannot be set for one windowSean Dewar2021-09-10
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: 'showbreak' cannot be set for one window. Solution: Make 'showbreak' global-local. https://github.com/vim/vim/commit/ee85702c10495041791f728e977b86005c4496e8 Change in oneleft() is N/A as the relevant condition was removed (has_mbyte is always true for Nvim, so the condition was always false; see commit 73dc9e9). Use wp over curwin for curs_columns(). Required for v8.2.2903 (otherwise test fails as it'll leave the global option set). N/A patches for version.c: vim-patch:8.1.2283: missed on use of p_sbr Problem: Missed on use of p_sbr. Solution: Add missing p_sbr change. https://github.com/vim/vim/commit/91e22eb6e09ec384496fccde812072033fd9e616 Already ported in commit 43a874a.