Compare commits

..

2823 Commits

Author SHA1 Message Date
zeertzjq
1fa3de1ce8 patch 8.2.3952: first line not redrawn when adding lines to an empty buffer
Problem:    First line not redrawn when adding lines to an empty buffer.
Solution:   Adjust the argument to appended_lines(). (closes #9439,
            closes #9438)
2021-12-31 12:19:22 +00:00
Bram Moolenaar
04fb916684 Update runtime files 2021-12-30 20:24:12 +00:00
Bram Moolenaar
d293981d2b patch 8.2.3951: Vim9: memory leak when text after a nested function
Problem:    Vim9: memory leak when text after a nested function.
Solution:   Free the function if text is found after "enddef".
2021-12-30 17:09:05 +00:00
Bram Moolenaar
94f3192b03 patch 8.2.3950: going beyond the end of the line with /\%V
Problem:    Going beyond the end of the line with /\%V.
Solution:   Check for valid column in getvcol().
2021-12-30 15:29:18 +00:00
Bram Moolenaar
4c13e5e676 patch 8.2.3949: using freed memory with /\%V
Problem:    Using freed memory with /\%V.
Solution:   Get the line again after getvvcol().
2021-12-30 14:49:43 +00:00
Bram Moolenaar
cfe3af284a patch 8.2.3948: Vim9: failure with partial with unknown argument count
Problem:    Vim9: failure with partial with unknown argument count.
Solution:   Do not copy argument types if there aren't any.
2021-12-30 13:59:20 +00:00
zeertzjq
f38aad85cf patch 8.2.3947: unnecessary check for NULL pointer
Problem:    Unnecessary check for NULL pointer.
Solution:   Remove the check. (closes #9434)
2021-12-30 13:45:57 +00:00
Bram Moolenaar
1c67f3a977 patch 8.2.3946: when an internal error makes Vim exit the error is not seen
Problem:    When an internal error makes Vim exit the error is not seen.
Solution:   Add the error to the test output.
2021-12-30 13:32:09 +00:00
Bram Moolenaar
13789bf103 patch 8.2.3945: Vim9: partial variable argument types are wrong
Problem:    Vim9: partial variable argument types are wrong, leading to a
            crash.
Solution:   When adjusting the argument count also adjust the argument types.
            (closes #9433)
2021-12-30 13:29:00 +00:00
Yegappan Lakshmanan
5d2e007ccb patch 8.2.3944: insert mode completion functions are too long
Problem:    Insert mode completion functions are too long.
Solution:   Split up into multiple functions. (Yegappan Lakshmanan,
            closes #9431)
2021-12-30 11:40:53 +00:00
Bram Moolenaar
491669701c patch 8.2.3943: compiler warning from gcc for uninitialized variable
Problem:    Compiler warning from gcc for uninitialized variable.
Solution:   Initialize variable. (closes #9429)
2021-12-30 10:51:45 +00:00
Bram Moolenaar
8e7cc6b920 patch 8.2.3942: Coverity reports a possible memory leak
Problem:    Coverity reports a possible memory leak.
Solution:   Free the array if allocation fails.
2021-12-30 10:32:25 +00:00
dbivolaru
ab16ad33ba patch 8.2.3941: SIGTSTP is not handled
Problem:    SIGTSTP is not handled.
Solution:   Handle SIGTSTP like pressing CTRL-Z. (closes #9422)
2021-12-29 19:41:47 +00:00
Bram Moolenaar
94fb8274ca patch 8.2.3940: match highlight disappears when doing incsearch for ":s/pat"
Problem:    Match highlight disappears when doing incsearch for ":s/pat".
Solution:   Only use line limit for incsearch highlighting. (closes #9425)
2021-12-29 19:22:44 +00:00
Yegappan Lakshmanan
5a664fe57f patch 8.2.3939: MS-Windows: fnamemodify('', ':p') does not work
Problem:    MS-Windows: fnamemodify('', ':p') does not work.
Solution:   Do not consider an empty string a full path. (Yegappan Lakshmanan,
            closes #9428, closes #9427)
2021-12-29 18:16:21 +00:00
Bram Moolenaar
ba26367fea patch 8.2.3938: line comment start is also found in a string
Problem:    Line comment start is also found in a string.
Solution:   Skip line comments in a string.
2021-12-29 18:09:13 +00:00
Yegappan Lakshmanan
edc6f10390 patch 8.2.3937: Insert mode completion function is too long
Problem:    Insert mode completion function is too long.
Solution:   Refactor into multiple functions. (Yegappan Lakshmanan,
            closes #9423)
2021-12-29 17:38:46 +00:00
Sean Dewar
ccc1644f95 patch 8.2.3936: no proper test for maintaining change mark in diff mode
Problem:    No proper test for maintaining change mark in diff mode.
Solution:   Run the test with internal and external diff. (Sean Dewar,
            closes #9424)
2021-12-29 16:44:48 +00:00
Bram Moolenaar
5d20fbf2e7 patch 8.2.3935: CTRL-U in Insert mode does not fix the indent
Problem:    CTRL-U in Insert mode does not fix the indent.
Solution:   Fix the indent when 'cindent' is set.
2021-12-29 16:05:31 +00:00
Bram Moolenaar
5ea5f37372 patch 8.2.3934: repeating line comment is undesired for "O" command
Problem:    Repeating line comment is undesired for "O" command.
Solution:   Do not copy line comment leader for "O". (closes #9426)
2021-12-29 15:15:47 +00:00
Richard Doty
3d0abad5bf patch 8.2.3933: after ":cd" fails ":cd -" is incorrect
Problem:    After ":cd" fails ":cd -" is incorrect.
Solution:   Set the previous directory only after successfully changing
            directory. (Richard Doty, closes #9419, closes #8983)
2021-12-29 14:39:08 +00:00
Bram Moolenaar
264d3ddac0 patch 8.2.3932: C line comment not formatted properly
Problem:    C line comment not formatted properly.
Solution:   If a line comment follows after "#if" the next line is not the end
            of a paragraph.
2021-12-29 14:09:32 +00:00
Bram Moolenaar
febb78fa17 patch 8.2.3931: Coverity reports a memory leak
Problem:    Coverity reports a memory leak.
Solution:   Free memory in case of failure.
2021-12-29 11:59:53 +00:00
Bram Moolenaar
c97f9a55bd patch 8.2.3930: getcmdline() argument has a misleading type
Problem:    getcmdline() argument has a misleading type.
Solution:   Use the correct type, even though the value is not used.
2021-12-28 20:59:56 +00:00
Bram Moolenaar
10c75c4a09 patch 8.2.3929: using unititialized variable
Problem:    Using unititialized variable.
Solution:   Set the option flags to zero for a terminal option.
2021-12-28 20:53:30 +00:00
Bram Moolenaar
11ceb7d949 patch 8.2.3928: heredoc test fails
Problem:    Heredoc test fails.
Solution:   Correct order of function arguments.
2021-12-28 20:49:56 +00:00
Bram Moolenaar
8c697e3698 patch 8.2.3927: Vim9: double free when using lambda
Problem:    Vim9: double free when using lambda.
Solution:   Don't free both cmdline and line_to_free.
2021-12-28 20:18:50 +00:00
Bram Moolenaar
92f246e4f9 patch 8.2.3926: build failure without the 'autochdir' option
Problem:    Build failure without the 'autochdir' option. (John Marriott)
Solution:   Add #ifdefs.
2021-12-28 20:03:43 +00:00
Bram Moolenaar
06f6095623 patch 8.2.3925: diff mode confused by NUL bytes
Problem:    Diff mode confused by NUL bytes.
Solution:   Handle NUL bytes differently. (Christian Brabandt, closes #9421,
            closes #9418)
2021-12-28 18:30:05 +00:00
Bram Moolenaar
7473a84cf9 patch 8.2.3924: Vim9: no error if something follows :enddef
Problem:    Vim9: no error if something follows :enddef in a nested function.
Solution:   Give an error.  Move common code to a function.
2021-12-28 17:55:26 +00:00
Bram Moolenaar
4bf1006cae patch 8.2.3923: Vim9: double free with split argument list in nested function
Problem:    Vim9: double free if a nested function has a line break in the
            argument list.
Solution:   Set cmdlinep when freeing the previous line.
2021-12-28 17:23:12 +00:00
ichizok
8bb3fe4d4d patch 8.2.3922: cannot build with dynamic Ruby 3.1
Problem:    Cannot build with dynamic Ruby 3.1.
Solution:   Add "_EXTRA" variables for CI.  Add missing functions. (Ozaki
            Kiichi, closes #9420)
2021-12-28 15:51:45 +00:00
Lewis Russell
d9da86e94e patch 8.2.3921: the way xdiff is used is inefficient
Problem:    The way xdiff is used is inefficient.
Solution:   Use hunk_func instead of the out_line callback. (Lewis Russell,
            closes #9344)
2021-12-28 13:54:41 +00:00
Bram Moolenaar
90c317f224 patch 8.2.3920: restoring directory after using another window is inefficient
Problem:    Restoring directory after using another window is inefficient.
Solution:   Only restore the directory for win_execute().  Apply 'autochdir'
            only when needed.
2021-12-28 13:15:05 +00:00
Bram Moolenaar
8b6256f6ec patch 8.2.3919: Vim9: wrong argument for append() results in two errors
Problem:    Vim9: wrong argument for append() results in two errors.
Solution:   Check did_emsg.  Also for setline().  Adjust the help for
            appendbufline().
2021-12-28 11:24:49 +00:00
Bram Moolenaar
be4e223ead patch 8.2.3918: function list test fails
Problem:    Function list test fails.
Solution:   Adjust the test for the new location of the function list.
2021-12-27 21:42:57 +00:00
Bram Moolenaar
a4d131d110 Update runtime files 2021-12-27 21:33:07 +00:00
Bram Moolenaar
1cae5a0a03 patch 8.2.3917: the eval.txt help file is way too big
Problem:    The eval.txt help file is way too big.
Solution:   Move the builtin function details to a separate file.
2021-12-27 21:28:34 +00:00
Bram Moolenaar
8dac2acd6a patch 8.2.3916: no error for passing an invalid line number to append()
Problem:    No error for passing an invalid line number to append().
Solution:   In Vim9 script check for a non-negative number. (closes #9417)
2021-12-27 20:57:06 +00:00
Bram Moolenaar
4b28ba3245 patch 8.2.3915: illegal memory access when completing with invalid bytes
Problem:    illegal memory access when completing with invalid bytes.
Solution:   Avoid going over the end of the completion text.
2021-12-27 19:28:37 +00:00
Dominique Pelle
af4a61a85d patch 8.2.3914: various spelling mistakes in comments
Problem:    Various spelling mistakes in comments.
Solution:   Fix the mistakes. (Dominique Pellé, closes #9416)
2021-12-27 17:21:41 +00:00
Bram Moolenaar
5da36052a4 patch 8.2.3913: help for expressions does not mention Vim9 syntax
Problem:    Help for expressions does not mention Vim9 syntax.
Solution:   Add the rules for Vim9 to the expression help.  Rename functions
            to match the help.
2021-12-27 15:39:57 +00:00
Bram Moolenaar
bf7ff61af4 patch 8.2.3912: the ins_complete() function is much too long
Problem:    The ins_complete() function is much too long.
Solution:   Split it up into multiple functions. (Yegappan Lakshmanan,
            closes #9414)
2021-12-27 12:52:07 +00:00
Bram Moolenaar
ef8f04b1d1 patch 8.2.3911: Vim9: type check for filter() does not accept unknown
Problem:    Vim9: type check for filter() does not accept unknown.
Solution:   Also accept unknown for the return type. (closes #9413)
2021-12-27 12:29:19 +00:00
Bram Moolenaar
23018f2d4b patch 8.2.3910: when compare function of sort() fails it does not abort
Problem:    When the compare function of sort() produces and error then sort()
            does not abort.
Solution:   Check if did_emsg was incremented.
2021-12-27 11:54:37 +00:00
Bram Moolenaar
bbdd3fb804 patch 8.2.3909: Containerfile using prefix name not recognized
Problem:    Containerfile using prefix name not recognized.
Solution:   Recognize Containerfile.*.
2021-12-27 10:35:52 +00:00
Yegappan Lakshmanan
27708e6c7b patch 8.2.3908: cannot use a script-local function for 'foldtext'
Problem:    Cannot use a script-local function for 'foldtext'.
Solution:   Expand "s:" and "<SID>". (Yegappan Lakshmanan, closes #9411)
2021-12-26 21:54:43 +00:00
Bram Moolenaar
c553a21e18 patch 8.2.3907: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move error messages to errors.h.  Avoid duplicates.
2021-12-26 20:20:34 +00:00
Bram Moolenaar
1f318c6eac patch 8.2.3906: Vim9 help still contains "under development" warnings
Problem:    Vim9 help still contains "under development" warnings.
Solution:   Remove the explicit warning.
2021-12-26 18:09:31 +00:00
Bram Moolenaar
c88ac94a0b patch 8.2.3905: Dockerfile using prefix name not recognized
Problem:    Dockerfile using prefix name not recognized.
Solution:   Recognize Dockerfile.*. (closes #9410)
2021-12-26 17:31:35 +00:00
Bram Moolenaar
7319981f21 patch 8.2.3904: Vim9: skip expression type is not checked at compile time
Problem:    Vim9: skip expression type is not checked at compile time.
Solution:   Add argument type checks.
2021-12-26 17:18:14 +00:00
Bram Moolenaar
71c41255f6 patch 8.2.3903: "gM" does not count tabs as expected
Problem:    "gM" does not count tabs as expected.
Solution:   Use linetabsize() instead of mb_string2cells(). (closes #9409)
2021-12-26 15:00:07 +00:00
Bram Moolenaar
9c23f9bb5f patch 8.2.3902: Vim9: double free with nested :def function
Problem:    Vim9: double free with nested :def function.
Solution:   Pass "line_to_free" from compile_def_function() and make sure
            cmdlinep is valid.
2021-12-26 14:23:22 +00:00
Bram Moolenaar
71eb3ad579 patch 8.2.3901: Vim9: Cannot set 'cpo' in main .vimrc if using Vim9 script
Problem:    Vim9: Cannot set 'cpo' in main .vimrc if using Vim9 script.
Solution:   Do not restore 'cpo' at the end of the main .vimrc.
2021-12-26 12:07:30 +00:00
Yegappan Lakshmanan
8bb65f230d patch 8.2.3900: it is not easy to use a script-local function for an option
Problem:    It is not easy to use a script-local function for an option.
Solution:   recognize s: and <SID> at the start of the expression. (Yegappan
            Lakshmanan, closes #9401)
2021-12-26 10:51:39 +00:00
Bram Moolenaar
ec86520f94 patch 8.2.3899: Vim9: test for map() on string fails
Problem:    Vim9: test for map() on string fails.
Solution:   Expect string return type.
2021-12-25 22:10:42 +00:00
Bram Moolenaar
fb9dcb080b patch 8.2.3898: Vim9: not sufficient testing for variable initialization
Problem:    Vim9: not sufficient testing for variable initialization.
Solution:   Add another test case.
2021-12-25 22:00:49 +00:00
Bram Moolenaar
1802405d71 patch 8.2.3897: Vim9: second argument of map() and filter() not checked
Problem:    Vim9: the second argument of map() and filter() is not checked at
            compile time.
Solution:   Add more specific type check for the second argument.
2021-12-25 21:43:28 +00:00
Bram Moolenaar
db8e5c21b9 patch 8.2.3896: Vim9: no test for nested function not available later
Problem:    Vim9: no test for nested function not available later.
Solution:   Add a test.
2021-12-25 19:58:22 +00:00
Bram Moolenaar
ae1068afde patch 8.2.3895: Vim9: confusing error when using function() with a number
Problem:    Vim9: confusing error when using function() with a number.
Solution:   Check for a function or string argument.
2021-12-25 19:43:44 +00:00
Bram Moolenaar
223d0a6bc8 patch 8.2.3894: Vim9: no proper type check for first argument of call()
Problem:    Vim9: no proper type check for first argument of call().
Solution:   Add specific type check.
2021-12-25 19:29:21 +00:00
Bram Moolenaar
5cd647935d patch 8.2.3893: Vim9: many local variables are initialized with an instruction
Problem:    Vim9: many local variables are initialized with an instruction.
Solution:   Initialize local variables to zero to avoid the instructions.
2021-12-25 18:23:24 +00:00
Bram Moolenaar
35cfd793aa patch 8.2.3892: when modifyOtherKeys is used CTRL-C is not recognized
Problem:    When modifyOtherKeys is used CTRL-C is not recognized.
Solution:   Check for uppercase C as well, fix minimum length.
2021-12-25 15:13:18 +00:00
Yegappan Lakshmanan
7f4a628efe patch 8.2.3891: github CI: workflows may overlap
Problem:    Github CI: workflows may overlap.
Solution:   Cancel previous workflows when starting a new one. (Yegappan
            Lakshmanan, closes #9400)
2021-12-25 11:20:30 +00:00
Bram Moolenaar
d787e40fdb patch 8.2.3890: Vim9: type check for using v: variables is basic
Problem:    Vim9: type check for using v: variables is basic.
Solution:   Specify a more precise type.
2021-12-24 21:36:12 +00:00
Yegappan Lakshmanan
e7f4abd38b patch 8.2.3889: duplicate code for translating script-local function name
Problem:    Duplicate code for translating script-local function name.
Solution:   Move the code to get_scriptlocal_funcname(). (Yegappan Lakshmanan,
            closes #9393)
2021-12-24 20:47:38 +00:00
Nir Lichtman
73a024209c patch 8.2.3888: the argument list may contain duplicates
Problem:    The argument list may contain duplicates.
Solution:   Add the :argdedeupe command. (Nir Lichtman, closes #6235)
2021-12-24 20:28:03 +00:00
Bram Moolenaar
806da5176e patch 8.2.3887: E1135 is used for two different errors
Problem:    E1135 is used for two different errors.
Solution:   Renumber one error.
2021-12-24 19:54:52 +00:00
Bram Moolenaar
b6db146762 patch 8.2.3886: can define autocmd for every event by using "au!"
Problem:    Can define autocmd for every event by using "au!".
Solution:   Check if a command is present also for "au!".
2021-12-24 19:24:47 +00:00
Bram Moolenaar
679140c56b patch 8.2.3885: arglist test fails
Problem:    Arglist test fails.
Solution:   Adjust for locking the arglist for ":all".
2021-12-24 18:58:46 +00:00
Bram Moolenaar
6f98371532 patch 8.2.3884: crash when clearing the argument list while using it
Problem:    Crash when clearing the argument list while using it.
Solution:   Lock the argument list for ":all".
2021-12-24 18:11:27 +00:00
Bram Moolenaar
5937c7505f patch 8.2.3883: crash when switching to other regexp engine fails
Problem:    Crash when switching to other regexp engine fails.
Solution:   Check for regprog being NULL.
2021-12-24 16:46:14 +00:00
Bram Moolenaar
fa3b72348d Update runtime files 2021-12-24 13:18:38 +00:00
zeertzjq
d3f00f54bf patch 8.2.3882: more duplicated code in f_getreginfo()
Problem:    More duplicated code in f_getreginfo().
Solution:   Also use getreg_get_regname(). (closes #9398)
2021-12-24 12:02:43 +00:00
h-east
6073f13f55 patch 8.2.3881: QNX: crash when compiled with GUI but using terminal
Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check the gui.in_use flag. (Hirohito Higashi, closes #9391)
2021-12-24 11:57:06 +00:00
Bram Moolenaar
70a120b72b patch 8.2.3880: Solution filter files are not recognized
Problem:    Solution filter files are not recognized.
Solution:   Add pattern *.slnf and use json. (Doug Kearns)
2021-12-24 11:33:56 +00:00
Bram Moolenaar
51e64b2789 patch 8.2.3879: getreg() and getregtype() contain dead code
Problem:    getreg() and getregtype() contain dead code.
Solution:   Remove the needless check. (closes #9392)  Also refactor to put
            common code in a shared function.
2021-12-24 10:48:30 +00:00
Bram Moolenaar
310091d20f patch 8.2.3878: Vim9: debugger tries to read more lines than there are
Problem:    Vim9: debugger tries to read more lines than there are.
Solution:   Check the number of lines. (closes #9394)
2021-12-23 21:14:37 +00:00
Bram Moolenaar
28fbbeac70 patch 8.2.3877: function does not abort after a type error in compare
Problem:    Function does not abort after a type error in compare
Solution:   Check getting number fails. (closes #9384)
2021-12-22 21:40:33 +00:00
zeertzjq
f2f0bddf30 patch 8.2.3876: 'cindent' does not recognize inline namespace
Problem:    'cindent' does not recognize inline namespace.
Solution:   Skip over "inline" to find "namespace". (closes #9383)
2021-12-22 20:55:30 +00:00
Bram Moolenaar
b4168fd917 patch 8.2.3875: gcc complains about buffer overrun
Problem:    gcc complains about buffer overrun.
Solution:   Use mch_memmove() instead of STRCPY(). (John Marriott)
2021-12-22 20:29:09 +00:00
James McCoy
a80aad7174 patch 8.2.3874: cannot highlight the number column for a sign
Problem:    Cannot highlight the number column for a sign.
Solution:   Add the "numhl" argument. (James McCoy, closes #9381)
2021-12-22 19:45:28 +00:00
Bram Moolenaar
82b3b4c6cf patch 8.2.3873: go.mod files are not recognized
Problem:    go.mod files are not recognized.
Solution:   Check for the file name. (closes #9380)
2021-12-22 19:19:08 +00:00
Bram Moolenaar
080182216e patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specific
Problem:    Vim9: finddir() and uniq() return types can be more specific.
Solution:   Adjust the return type.
2021-12-22 18:45:37 +00:00
Yegappan Lakshmanan
f973eeb491 patch 8.2.3871: list.c contains code for dict and blob
Problem:    List.c contains code for dict and blob.
Solution:   Refactor to put code where it belongs. (Yegappan Lakshmanan,
            closes #9386)
2021-12-22 18:19:26 +00:00
Nir Lichtman
1aeccdb464 patch 8.2.3870: MS-Windows: wrong dir when using right-click context menu
Problem:    MS-Windows: wrong working directory when opening two files with
            right-click context menu. (Gabriel Dupras)
Solution:   Use the working directory and pass it on to the process creation.
            (Nir Lichtman, closes #9382, closes #8874)
2021-12-22 15:21:15 +00:00
Bram Moolenaar
fa46ead31a patch 8.2.3869: Vim9: type checking for "any" is inconsistent
Problem:    Vim9: type checking for "any" is inconsistent.
Solution:   Always use a runtime type check for using "any" for a more
            specific type.
2021-12-22 13:18:39 +00:00
Bram Moolenaar
1b5f7a6202 patch 8.2.3868: Vim9: function test fails
Problem:    Vim9: function test fails.
Solution:   Add missing changes.  Add test for earlier patch.
2021-12-21 13:30:42 +00:00
Yegappan Lakshmanan
d92813a598 patch 8.2.3867: implementation of some list functions too complicated
Problem:    Implementation of some list functions too complicated.
Solution:   Refactor do_sort_uniq(), f_count() and extend() (Yegappan
            Lakshmanan, closes #9378)
2021-12-21 13:19:42 +00:00
Bram Moolenaar
59618fed4c patch 8.2.3866: Vim9: type checking global variables is inconsistent
Problem:    Vim9: type checking global variables is inconsistent.
Solution:   Use the "unknown" type in more places.
2021-12-21 12:32:17 +00:00
Bram Moolenaar
0d807107b6 patch 8.2.3865: Vim9: compiler complains about using "try" as a struct member
Problem:    Vim9: compiler complains about using "try" as a struct member.
Solution:   Rename "try" to "tryref".
2021-12-21 09:42:09 +00:00
Bram Moolenaar
6f79e614b2 patch 8.2.3864: cannot disable requesting key codes from xterm
Problem:    Cannot disable requesting key codes from xterm.
Solution:   Add the 'xtermcodes' option, default on.
2021-12-21 09:12:23 +00:00
Bram Moolenaar
8d95d7091d patch 8.2.3863: various build flags accidentally enabled
Problem:    Various build flags accidentally enabled.
Solution:   Revert several lines in Makefile.
2021-12-20 22:12:53 +00:00
Bram Moolenaar
dab17a0689 patch 8.2.3862: crash on exit with EXITFREE and using win_execute()
Problem:    Crash on exit with EXITFREE and using win_execute().
Solution:   Also save and restore tp_topframe. (issue #9374)
2021-12-20 21:35:59 +00:00
Bram Moolenaar
39713d3acb patch 8.2.3861: list of distributed files is outdated
Problem:    List of distributed files is outdated.
Solution:   Add new files.
2021-12-20 15:53:13 +00:00
Bram Moolenaar
dc7c366f3a patch 8.2.3860: Vim9: codecov struggles with the file size
Problem:    Vim9: codecov struggles with the file size.
Solution:   Split vim9compile.c into four files.
2021-12-20 15:04:29 +00:00
Bram Moolenaar
a99fb23842 patch 8.2.3859: Vim9: some code lines not tested
Problem:    Vim9: some code lines not tested.
Solution:   Add a few specific tests.
2021-12-20 12:25:03 +00:00
Bram Moolenaar
003312b1d2 patch 8.2.3858: Vim9: not enough tests
Problem:    Vim9: not enough tests.
Solution:   Add tests for :try/:catch and :redir. Add missing type check.
2021-12-20 10:55:35 +00:00
Bram Moolenaar
2f9f4ccfc8 patch 8.2.3857: Vim9: inconsistent error for using function()
Problem:    Vim9: inconsistent error for using function().
Solution:   Use a runtime type check for the result of function().
            (closes #8492)
2021-12-20 09:36:27 +00:00
Bram Moolenaar
fea43e44c0 patch 8.2.3856: Vim9: not enough tests
Problem:    Vim9: not enough tests.
Solution:   Run more expression tests also with Vim9. Fix an uncovered
            problem.
2021-12-19 21:34:05 +00:00
Yegappan Lakshmanan
bc404bfb32 patch 8.2.3855: illegal memory access when displaying a blob
Problem:    Illegal memory access when displaying a blob.
Solution:   Append a NUL at the end. (Yegappan Lakshmanan, closes #9372)
2021-12-19 19:19:31 +00:00
Bram Moolenaar
86b3ab4fa0 patch 8.2.3854: Vim9: inconsistent arguments for test functions
Problem:    Vim9: inconsistent arguments for test functions.
Solution:   When :def function and script have different arguments use a list
            with two items instead of a separate function.
2021-12-19 18:33:23 +00:00
Bram Moolenaar
700e6b1662 patch 8.2.3853: Vim9: not enough tests
Problem:    Vim9: not enough tests.
Solution:   Run more existing tests for Vim9 script.
2021-12-19 17:27:06 +00:00
Bram Moolenaar
f47c5a8e2d patch 8.2.3852: Vim9: not enough tests
Problem:    Vim9: not enough tests.
Solution:   Also run existing tests for Vim9 script.  Make errors more
            consistent.
2021-12-19 15:17:21 +00:00
Bram Moolenaar
265f811f5a patch 8.2.3851: Vim9: overhead when comparing string, dict or function
Problem:    Vim9: overhead when comparing string, dict or function.
Solution:   Call the intented compare function directly.  Refactor to avoid
            duplicated code.
2021-12-19 12:33:05 +00:00
Bram Moolenaar
2de5371a75 patch 8.2.3850: illegal memory access when displaying a partial
Problem:    Illegal memory access when displaying a partial.
Solution:   Terminate the string with a NUL. (closes #9371)
2021-12-19 11:06:35 +00:00
Yegappan Lakshmanan
389b72196e patch 8.2.3849: functions implementing reduce and map are too long
Problem:    Functions implementing reduce and map are too long.
Solution:   Use a function for each type of value.  Add a few more test cases
            and add to the help. (Yegappan Lakshmanan, closes #9370)
2021-12-19 10:35:15 +00:00
rbtnn
0ccb5842f5 patch 8.2.3848: cannot use reduce() for a string
Problem:    Cannot use reduce() for a string.
Solution:   Make reduce() work with a string. (Naruhiko Nishino, closes #9366)
2021-12-18 18:33:46 +00:00
Bram Moolenaar
605ec91e5a patch 8.2.3847: illegal memory access when using a lambda with an error
Problem:    Illegal memory access when using a lambda with an error.
Solution:   Avoid skipping over the NUL after a string.
2021-12-18 16:54:31 +00:00
zeertzjq
60618c8f1a patch 8.2.3846: no error when using control character for 'lcs' or 'fcs'
Problem:    No error when using control character for 'lcs' or 'fcs'.
Solution:   Use char2cells() to check the width. (closes #9369)
2021-12-18 15:32:46 +00:00
Dominique Pelle
0dc4d8eaec patch 8.2.3845: Vim9: test fails when the channel feature is missing
Problem:    Vim9: test fails when the channel feature is missing.
Solution:   Check for the channel feature. (Dominique Pellé, closes #9368)
2021-12-18 12:40:52 +00:00
Bram Moolenaar
44a8977de4 patch 8.2.3844: Vim9: no type error if assigning func(number) to func(string)
Problem:    Vim9: no type error if assigning a value with type func(number) to
            a variable of type func(string).
Solution:   Use check_type_maybe(): return MAYBE if a runtime type check is
            useful.  (issue #8492)
2021-12-18 12:31:33 +00:00
James McCoy
647ab4cede patch 8.2.3843: dep3patch files are not recognized
Problem:    Dep3patch files are not recognized.
Solution:   Recognize dep3patch files by their location and content. (James
            McCoy, closes #9367)
2021-12-17 20:52:57 +00:00
Bram Moolenaar
422085f1c8 patch 8.2.3842: Vim9: can change locked list and list items
Problem:    Vim9: can change locked list and list items.
Solution:   Check that a list and list item isn't locked.
2021-12-17 20:36:15 +00:00
Bram Moolenaar
71b7685092 patch 8.2.3841: Vim9: outdated TODO items, disabled tests that work
Problem:    Vim9: outdated TODO items, disabled tests that work.
Solution:   Remove TODO items, run tests that work now.  Check that a dict
            item isn't locked.
2021-12-17 20:15:38 +00:00
rbtnn
ddc80aff57 patch 8.2.3840: useless test for negative index in check functions
Problem:    Useless test for negative index in check functions.
Solution:   Remove the test for negative index. (Naruhiko Nishino,
            closes #9364)
2021-12-17 18:01:31 +00:00
Dominique Pelle
354b23a9f8 patch 8.2.3839: using \z() with \z1 not tested for syntax highlighting
Problem:    Using \z() with \z1 not tested for syntax highlighting.
Solution:   Add a test. (Dominique Pellé, closes #9365)
2021-12-17 17:32:29 +00:00
Yegappan Lakshmanan
db1a410b61 patch 8.2.3838: cannot use script-local function for setting *func options
Problem:    Cannot use script-local function for setting *func options.
Solution:   Use the script context. (Yegappan Lakshmanan, closes #9362)
2021-12-17 16:21:20 +00:00
Bram Moolenaar
d2ff705af3 patch 8.2.3837: QNX: crash when compiled with GUI but using terminal
Problem:    QNX: crash when compiled with GUI but using terminal.
Solution:   Check gui.in_use is set. (Hirohito Higashi, closes #9363)
2021-12-17 16:00:04 +00:00
Bram Moolenaar
02929a372e patch 8.2.3836: Vim9: comment after expression not skipped to find NL
Problem:    Vim9: comment after expression not skipped to find NL.
Solution:   After evaluating an expression look for a newline after a #
            comment.
2021-12-17 14:46:12 +00:00
Bram Moolenaar
259f443a93 patch 8.2.3835: the inline-function example does not work
Problem:    The inline-function example does not work.
Solution:   Drop ":let".  Add EX_EXPR_ARG to CMD_var. (issue #9352)
2021-12-17 12:45:22 +00:00
Bram Moolenaar
deda6441e4 patch 8.2.3834: Test_out_cb often fails on Mac
Problem:    Test_out_cb often fails on Mac.
Solution:   Increase the timeout with every retry.
2021-12-17 11:44:33 +00:00
ichizok
c3f91c0648 patch 8.2.3833: error from term_start() not caught by try/catch
Problem:    Error from term_start() not caught by try/catch.
Solution:   save and restore did_emsg when applying autocommands. (Ozaki
            Kiichi, closes #9361)
2021-12-17 09:44:33 +00:00
Bram Moolenaar
994a0a298b patch 8.2.3832: test fails because of changed error message
Problem:    Test fails because of changed error message.
Solution:   Adjust the expected error message.
2021-12-16 21:11:26 +00:00
Bram Moolenaar
23e72369ff patch 8.2.3831: opfunc test fails when missing feature changes function name
Problem:    Opfunc test fails when missing feature changes function name.
            (Dominique Pellé)
Solution:   Check the relevant screen line instead of using a screendump.
            (closes #9360)
2021-12-16 21:07:35 +00:00
Bram Moolenaar
e124204c4f patch 8.2.3830: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more error messages to errors.h.
2021-12-16 20:56:57 +00:00
Bram Moolenaar
94c785d235 patch 8.2.3829: no error when setting a func option to script-local function
Problem:    No error when setting a func option to a script-local function.
Solution:   Give an error if the name starts with "s:". (closes #9358)
2021-12-16 19:45:47 +00:00
Bram Moolenaar
8103527da7 patch 8.2.3828: when opening a terminal from a timer first typed char is lost
Problem:    when opening a terminal from a timer the first typed character
            is lost. (Virginia Senioria)
Solution:   When opening a terminal while waiting for a character put K_IGNORE
            in the input buffer.
2021-12-16 18:02:07 +00:00
Bram Moolenaar
f79cbf6512 patch 8.2.3827: huntr badge does not really fit in the list
Problem:    Huntr badge does not really fit in the list.
Solution:   Move the link to Huntr to the issue template.
2021-12-16 16:14:11 +00:00
Bram Moolenaar
b15cf44c1d patch 8.2.3826: Vim9: using "g:Func" as funcref doesn't work in :def function
Problem:    Vim9: using "g:Func" as a funcref does not work in a :def
            function.
Solution:   Include "g:" in the function name. (closes #9336)
2021-12-16 15:49:43 +00:00
Bram Moolenaar
52797bae17 patch 8.2.3825: various comments could be improved
Problem:    Various comments could be improved.
Solution:   Improve the comments.
2021-12-16 14:45:13 +00:00
Bram Moolenaar
0e6adf8a29 Update runtime files 2021-12-16 14:41:10 +00:00
Yegappan Lakshmanan
6df0f2759d patch 8.2.3824: no ASAN support for MSVC
Problem:    No ASAN support for MSVC.
Solution:   Add ASAN support and fix a coupld of uncovered problems. (Yegappan
            Lakshmanan, closes #9357)
2021-12-16 13:06:10 +00:00
Bram Moolenaar
6ecf58b0d7 patch 8.2.3823: test for visual replace is in wrong function
Problem:    Test for visual replace is in wrong function.
Solution:   Move it to another function.
2021-12-16 10:05:41 +00:00
Bram Moolenaar
2d877599ee patch 8.2.3822: leaking memory in map() and filter(), no string in Vim9
Problem:    Leaking memory in map() and filter(), cannot use a string argument
            in Vim9 script.
Solution:   Fix the leak, adjust the argument check, also run the tests as
            Vim9 script. (Yegappan Lakshmanan, closes #9354)
2021-12-16 08:21:09 +00:00
Bram Moolenaar
19569ca6d8 patch 8.2.3821: ASAN test run fails
Problem:    ASAN test run fails.
Solution:   Use asan_symbolize-13 instead of asan_symbolize-11.
2021-12-15 21:29:19 +00:00
Bram Moolenaar
8ee6028de3 patch 8.2.3820: "vrc" does not replace composing characters
Problem:    "vrc" does not replace composing characters, while "rc" does.
Solution:   Check the byte length including composing characters.
            (closes #9351)
2021-12-15 21:08:50 +00:00
Bram Moolenaar
427f065a88 patch 8.2.3819: test fails because error message changed
Problem:    Test fails because error message changed.
Solution:   Update screendumps.
2021-12-15 19:46:59 +00:00
rbtnn
c479ce032f patch 8.2.3818: cannot filter or map characters in a string
Problem:    Cannot filter or map characters in a string.
Solution:   Make filter() and map() work on a string. (Naruhiko Nishino,
            closes #9327)
2021-12-15 19:14:54 +00:00
Bram Moolenaar
f87dac04c3 patch 8.2.3817: Vim9: Not using NL as command end does not work for :autocmd
Problem:    Vim9: Not using NL as command end does not work for :autocmd.
Solution:   Only ignore NL for commands with an expression argument.
2021-12-15 17:53:40 +00:00
Mike Williams
1821d1498c patch 8.2.3816: compiler warning for posible loss of data on MS-Windows
Problem:    Compiler warning for posible loss of data on MS-Windows.
Solution:   Add type cast. (Mike Williams, closes #9349)
2021-12-15 16:38:33 +00:00
Bram Moolenaar
ce7eada12e patch 8.2.3815: Vim9: cannot have a multi-line dict inside a block
Problem:    Vim9: cannot have a multi-line dict inside a block.
Solution:   Do not split the command at a line break, handle NL characters
            as white space.
2021-12-15 15:41:44 +00:00
Bram Moolenaar
cfabad9bcf patch 8.2.3814: .csx files and .sln files are not recognized
Problem:    .csx files and .sln files are not recognized.
Solution:   Add filetype patterns. (Doug Kearns)
2021-12-15 13:30:43 +00:00
Bram Moolenaar
a5d78d1f11 patch 8.2.3813: confusing error when using :cc without error list
Problem:    confusing error when using :cc without error list. (Gary Johnson)
Solution:   Give the "no errors" error.
2021-12-15 12:28:22 +00:00
Bram Moolenaar
57bc2333b1 patch 8.2.3812: Vim9: leaking memory in numbered function test
Problem:    Vim9: leaking memory in numbered function test.
Solution:   Skip "g:" when checking for numbered function.  Clean up after
            errors properly.
2021-12-15 12:06:43 +00:00
Bram Moolenaar
7c0fb80030 patch 8.2.3811: the opfunc error test fails on a slow machine
Problem:    The opfunc error test fails on a slow machine.
Solution:   Use WaitForAssert().
2021-12-14 20:26:53 +00:00
Bram Moolenaar
b334137acf patch 8.2.3810: Vim9: expr4 test fails on MS-Windows
Problem:    Vim9: expr4 test fails on MS-Windows.
Solution:   Do not give an error for a missing function name when skipping.
2021-12-14 18:57:45 +00:00
Bram Moolenaar
7509ad8b0f patch 8.2.3809: Vim9: crash when garbage collecting a nested partial
Problem:    Vim9: crash when garbage collecting a nested partial. (Virginia
            Senioria)
Solution:   Set references in all the funcstacks. (closes #9348)
2021-12-14 18:14:37 +00:00
Bram Moolenaar
919c12c19a patch 8.2.3808: Vim9: obsolete TODO items
Problem:    Vim9: obsolete TODO items
Solution:   Remove the comments.
2021-12-14 14:29:16 +00:00
Bram Moolenaar
f8a79fc346 patch 8.2.3807: Vim9: can call import with star directly
Problem:    Vim9: can call import with star directly.
Solution:   Check that the import used star.
2021-12-14 12:06:16 +00:00
Bram Moolenaar
c2958585f6 patch 8.2.3806: terminal focus test fails sometimes
Problem:    Terminal focus test fails sometimes.
Solution:   Run the test function before others.
2021-12-14 11:16:31 +00:00
Quentin Hibon
8176be1598 patch 8.2.3805: i3config files are not recognized
Problem:    i3config files are not recognized.
Solution:   Add patterns to match i3config files. (Quentin Hibon,
            closes #7969)
2021-12-14 09:34:41 +00:00
Bram Moolenaar
6206877c51 patch 8.2.3804: script context not set when copying 'swf' and 'ts'
Problem:    Script context not set when copying 'swf' and 'ts'.
Solution:   Use COPY_OPT_SCTX with the right argument. (closes #9347)
2021-12-14 09:01:38 +00:00
Bram Moolenaar
829c8e87e2 patch 8.2.3803: GUI: crash with 'writedelay' set using a terminal window
Problem:    Crash when 'writedelay' is set and using a terminal window to
            execute a shell command.
Solution:   Check that "tl_vterm" isn't NULL. (closes #9346)
2021-12-14 08:41:38 +00:00
Bram Moolenaar
0407d27034 patch 8.2.3802: terminal in two windows test fails on some systems
Problem:    Terminal in two windows test fails on some systems.
Solution:   Wait a bit between commands.
2021-12-13 22:17:44 +00:00
Bram Moolenaar
3194e5bf87 patch 8.2.3801: if a terminal shows in two windows, only one is redrawn
Problem:    If a terminal shows in two windows, only one is redrawn.
Solution:   Reset the dirty row range only after redrawing all windows.
            (closes #9341)
2021-12-13 21:59:09 +00:00
Bram Moolenaar
6840a0ffe8 patch 8.2.3800: when cross compiling the output of "uname" cannot be set
Problem:    When cross compiling the output of "uname" cannot be set. (Ben
            Reeves)
Solution:   Use cache variables. (closes #9338)
2021-12-13 20:37:59 +00:00
Bram Moolenaar
80d60910ff patch 8.2.3799: edit test hangs or fails
Problem:    Edit test hangs or fails.
Solution:   Do not rethrow an exception when inside try/catch.
2021-12-13 19:14:52 +00:00
Bram Moolenaar
3b309f11db patch 8.2.3798: a :def callback function postpones an error message
Problem:    A :def callback function postpones an error message.
Solution:   Display the error after calling the function. (closes #9340)
2021-12-13 18:19:55 +00:00
Bram Moolenaar
1e78deb077 patch 8.2.3797: no good reason to limit the message history in tiny version
Problem:    No good reason to limit the message history in the tiny version.
Solution:   Always use 200.
2021-12-13 14:40:53 +00:00
Bram Moolenaar
851f86b951 patch 8.2.3796: the funcexe_T struct members are not named consistently
Problem:    The funcexe_T struct members are not named consistently.
Solution:   Prefix "fe_" to all the members.
2021-12-13 14:26:44 +00:00
Bram Moolenaar
739f13a55b patch 8.2.3795: too many #ifdefs
Problem:    Too many #ifdefs.
Solution:   Graduate the jumplist feature.
2021-12-13 13:12:53 +00:00
Bram Moolenaar
33b968dc60 patch 8.2.3794: Vim9: cannot find script-local func using "s:"
Problem:    Vim9: cannot find script-local func using "s:". (Yegappan
            Lakshmanan)
Solution:   Skip the "s:".
2021-12-13 11:31:04 +00:00
Bram Moolenaar
ef082e12df patch 8.2.3793: using "g:Func" as a funcref does not work in script context
Problem:    Using "g:Func" as a funcref does not work in script context
            because "g:" is dropped.
Solution:   Keep "g:" in the name.  Also add parenthesis to avoid confusing
            operator prececence. (closes #9336)
2021-12-12 21:02:03 +00:00
Yegappan Lakshmanan
04ef1fb13d patch 8.2.3792: setting *func options insufficiently tested
Problem:    Setting *func options insufficiently tested.
Solution:   Impove tests. (Yegappan Lakshmanan, closes #9337)
2021-12-12 20:08:05 +00:00
Bram Moolenaar
d2439e0443 patch 8.2.3791: build error with +cindent but without +smartindent
Problem:    Build error with +cindent but without +smartindent.
Solution:   Move declaration of "do_cindent". (John Marriott)
2021-12-12 19:10:44 +00:00
Bram Moolenaar
3bb79dc191 patch 8.2.3790: test for term_gettitle() fails in some environments
Problem:    Test for term_gettitle() fails in some environments.
Solution:   Make the digits after "VIM" optional. (Kenta Sato, closes #9334)
2021-12-12 18:50:19 +00:00
ichizok
fa9a8e0fd1 patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Problem:    Test_window_minimal_size can fail on a slow machine.
Solution:   Do not rely on timers firing at the expected time. (Ozaki Kiichi,
            closes #9335)
2021-12-12 16:42:09 +00:00
Yegappan Lakshmanan
6ae8fae869 patch 8.2.3788: lambda for option that is a function may be freed
Problem:    Lambda for option that is a function may be garbage collected.
Solution:   Set a reference in the funcref. (Yegappan Lakshmanan,
            closes #9330)
2021-12-12 16:26:44 +00:00
Bram Moolenaar
6e371ecb27 patch 8.2.3787: no proper formatting of a C line comment after a statement
Problem:    No proper formatting of a C line comment after a statement.
Solution:   Find the start of the line comment, insert the comment leader and
            indent the comment properly.
2021-12-12 14:16:39 +00:00
Bram Moolenaar
9a4ec5a626 Use text area for environment in the bug template. 2021-12-12 11:44:11 +00:00
Bram Moolenaar
4e30b5c3bc Update issue template. 2021-12-12 11:34:22 +00:00
Bram Moolenaar
4f16e9de98 patch 8.2.3786: test fails because of using Vim9 syntax in legacy function
Problem:    Test fails because of using Vim9 syntax in legacy function.
Solution:   Add "call".
2021-12-11 18:46:29 +00:00
ichizok
48c0196378 patch 8.2.3785: running CI on MacOS with gcc is not useful
Problem:    Running CI on MacOS with gcc is not useful.
Solution:   Only use clang. (Ozaki Kiichi, closes #9326)  Also build with
            normal features.
2021-12-11 17:34:19 +00:00
Bram Moolenaar
7b1463bca3 patch 8.2.3784: the help for options is outdated
Problem:    The help for options is outdated.
Solution:   Include all the recent changes.
2021-12-11 17:24:39 +00:00
Bram Moolenaar
2ef9156b42 patch 8.2.3783: confusing error for using a variable as a function
Problem:    Confusing error for using a variable as a function.
Solution:   If a function is not found but there is a variable, give a more
            useful error. (issue #9310)
2021-12-11 16:14:07 +00:00
Bram Moolenaar
052ff291d7 patch 8.2.3782: Vim9: no error if a function shadows a script variable
Problem:    Vim9: no error if a function shadows a script variable.
Solution:   Check the function doesn't shadow a variable. (closes #9310)
2021-12-11 13:54:46 +00:00
Bram Moolenaar
a416861c64 patch 8.2.3781: the option window script is outdated
Problem:    The option window script is outdated.
Solution:   Add several changes.
2021-12-11 12:33:52 +00:00
Bakudankun
29f3a45915 patch 8.2.3780: ":cd" works differently on MS-Windows
Problem:    ":cd" works differently on MS-Windows.
Solution:   Add the 'cdhome' option. (closes #9324)
2021-12-11 12:28:08 +00:00
Bram Moolenaar
205f29c3e9 patch 8.2.3779: using freed memory when defining a user command recursively
Problem:    Using freed memory when defining a user command from a user
            command.
Solution:   Do not use the command pointer after executing the command.
            (closes #9318)
2021-12-10 21:46:09 +00:00
Bram Moolenaar
9537e37b11 patch 8.2.3778: lambda debug test fails in some configurations
Problem:    Lambda debug test fails in some configurations.
Solution:   Check feature in a legacy function.
2021-12-10 21:05:53 +00:00
=?UTF-8?q?Bj=C3=B6rn=20Linse?=
1daedc8381 patch 8.2.3777: spell file write error not checked
Problem:    Spell file write error not checked.
Solution:   Check writing the prefix conditions. (Bjorn Linse, closes #9323)
2021-12-10 20:39:17 +00:00
Bram Moolenaar
f8e9eb8e17 patch 8.2.3776: when a tags file line is long a tag may not be found
Problem:    When a tags file line is long a tag may not be found.
Solution:   When increasing the buffer size read the same line again.
2021-12-10 20:15:15 +00:00
Bram Moolenaar
9fffef9f35 patch 8.2.3775: Vim9: lambda compiled without outer context when debugging
Problem:    Vim9: lambda compiled without outer context when debugging.
Solution:   When compiling a lambda for debugging also compile it without.
            (closes #9302)
2021-12-10 16:55:58 +00:00
Bram Moolenaar
b711814cb6 patch 8.2.3774: test for command line height fails
Problem:    Test for command line height fails.
Solution:   Use another way to handle window size change.
2021-12-10 13:40:08 +00:00
Bram Moolenaar
8a7374f8c4 patch 8.2.3773: wrong window size when a modeline changes 'columns'
Problem:    Wrong window size when a modeline changes 'columns' and there is
            more than one tabpage. (Michael Soyka)
Solution:   Adjust the frames of all tabpages. (closes #9315)
2021-12-10 12:11:09 +00:00
Bram Moolenaar
ff39a650b2 patch 8.2.3772: timer info test fails on slow machine
Problem:    Timer info test fails on slow machine.
Solution:   Use WaitForAssert().
2021-12-10 10:57:08 +00:00
Bram Moolenaar
dd297bc11d patch 8.2.3771: Vim9: accessing freed memory when checking type
Problem:    Vim9: accessing freed memory when checking type.
Solution:   Make a copy of a function type.
2021-12-10 10:37:38 +00:00
ichizok
dee78e1ce8 patch 8.2.3770: new compiler warnings from clang-12 and clang-13
Problem:    New compiler warnings from clang-12 and clang-13.
Solution:   Adjust CI and suppress some warnings. (Ozaki Kiichi, closes #9314)
2021-12-09 21:08:01 +00:00
Gregory Anders
4c8c634365 patch 8.2.3769: zig files are not recognized
Problem:    Zig files are not recognized.
Solution:   Add *.zig. (Gregory Anders, closes #9313)
2021-12-09 20:54:21 +00:00
Bram Moolenaar
95b2dd0c00 patch 8.2.3768: timer_info() has the wrong repeat value in a timer callback
Problem:    timer_info() has the wrong repeat value in a timer callback.
Solution:   Do not add one to the repeat value when in the callback.
            (closes #9294)
2021-12-09 18:42:57 +00:00
Bram Moolenaar
e8a92b6166 patch 8.2.3767: crash when using NULL partial
Problem:    Crash when using NULL partial.
Solution:   Check for NULL.
2021-12-09 17:44:01 +00:00
Bram Moolenaar
c4ec338fb8 patch 8.2.3766: converting a funcref to a string leaves out "g:"
Problem:    Converting a funcref to a string leaves out "g:", causing the
            meaning of the name depending on the context.
Solution:   Prepend "g:" for a global function.
2021-12-09 16:40:18 +00:00
Bram Moolenaar
dcb53be441 patch 8.2.3765: Vim9: cannot use a lambda for 'opfunc' and others
Problem:    Vim9: cannot use a lambda for 'opfunc' and others.
Solution:   Convert the lambda to a string.
2021-12-09 14:23:43 +00:00
Bram Moolenaar
d0fb907253 patch 8.2.3764: cannot see any text when window was made zero lines
Problem:    Cannot see any text when window was made zero lines or zero
            columns.
Solution:   Ensure there is at least one line and column. (fixes #9307)
2021-12-09 11:57:22 +00:00
Bram Moolenaar
e50507126f patch 8.2.3763: when editing the cmdline a callback may cause a scroll up
Problem:    When editing the command line a FocusLost callback may cause the
            screen to scroll up.
Solution:   Do not redraw at the last line but at the same place where the
            command line was before. (closes #9295)
2021-12-09 10:51:05 +00:00
Yegappan Lakshmanan
56150da687 patch 8.2.3762: if quickfix buffer is wiped out getqflist() still returns it
Problem:    If the quickfix buffer is wiped out getqflist() still returns its
            number.
Solution:   Use zero if the buffer is no longer present. (Yegappan Lakshmanan,
            closes #9306)
2021-12-09 09:27:06 +00:00
Bram Moolenaar
a48d4e44a2 patch 8.2.3761: focus change is not passed on to a terminal window
Problem:    Focus change is not passed on to a terminal window.
Solution:   If the current window is a terminal and focus events are enabled
            send a focus event escape sequence to the terminal.
2021-12-08 22:13:38 +00:00
Bram Moolenaar
48873aebc0 patch 8.2.3760: not automatically handling gnome terminal mouse like xterm
Problem:    Not automatically handling gnome terminal mouse like xterm.
Solution:   Default 'ttymouse' to "xterm" and recognize Focus events.
            (issue #9296)
2021-12-08 21:00:24 +00:00
Yegappan Lakshmanan
78a61068cf patch 8.2.3759: quickfix buffer becomes hidden while still in a window
Problem:    Quickfix buffer becomes hidden while still in a window.
Solution:   Check if the closed window is the last window showing the quickfix
            buffer. (Yegappan Lakshmanan, closes #9303, closes #9300)
2021-12-08 20:03:31 +00:00
Yegappan Lakshmanan
2172bff364 patch 8.2.3758: options that take a function insufficiently tested
Problem:    Options that take a function insufficiently tested.
Solution:   Add additional tests and enhance existing tests. (Yegappan
            Lakshmanan, closes #9298)
2021-12-08 10:46:21 +00:00
erw7
f7f7aaf8aa patch 8.2.3757: an overlong highlight group name is silently truncated
Problem:    An overlong highlight group name is silently truncated.
Solution:   Give an error if the name is too long. (closes #9289)
2021-12-07 21:29:20 +00:00
Yegappan Lakshmanan
4dc24eb5ad patch 8.2.3756: might crash when callback is not valid
Problem:    might crash when callback is not valid.
Solution:   Check for valid callback. (Yegappan Lakshmanan, closes #9293)
2021-12-07 12:23:57 +00:00
Bram Moolenaar
92c33eb273 patch 8.2.3755: Coverity warns for using a buffer in another scope
Problem:    Coverity warns for using a buffer in another scope.
Solution:   Declare the buffer in a common scope.
2021-12-07 11:03:39 +00:00
Bram Moolenaar
ecabb51107 patch 8.2.3754: undesired changing of the indent of the first formatted line
Problem:    Undesired changing of the indent of the first formatted line.
Solution:   Do not indent the first formatted line.
2021-12-06 19:51:01 +00:00
Bram Moolenaar
3e55a973b5 Add Huntr badge. 2021-12-06 15:13:31 +00:00
Bram Moolenaar
2336c376d5 patch 8.2.3753: Vim9: function unreferenced while called is never deleted
Problem:    Vim9: function unreferenced while called is never deleted.
Solution:   Delete a function when no longer referenced.
2021-12-06 15:06:54 +00:00
h-east
8603be338a patch 8.2.3752: build error when using Photon GUI
Problem:    Build error when using Photon GUI.
Solution:   Adjust #ifdef. (closes #9288)
2021-12-06 11:24:09 +00:00
Yegappan Lakshmanan
6409553b6e patch 8.2.3751: cannot assign a lambda to an option that takes a function
Problem:    Cannot assign a lambda to an option that takes a function.
Solution:   Automatically convert the lambda to a string. (Yegappan
            Lakshmanan, closes #9286)
2021-12-06 11:03:55 +00:00
Bram Moolenaar
40bcec1bac patch 8.2.3750: error messages are everywhere
Problem:    Error messages are everywhere.
Solution:   Move more error messages to errors.h and adjust the names.
2021-12-05 22:19:27 +00:00
Bram Moolenaar
4700398e38 Update runtime files 2021-12-05 21:54:04 +00:00
Bram Moolenaar
12f3c1b77f patch 8.2.3749: error messages are everywhere
Problem:    Error messages are everywhere.
Solution:   Move more error messages to errors.h and adjust the names.
2021-12-05 21:46:34 +00:00
Bram Moolenaar
e5710a02cb patch 8.2.3748: giving an error for an empty sign argument breaks a plugin
Problem:    Giving an error for an empty sign argument breaks a plugin.
Solution:   Do not give an error.
2021-12-05 19:10:04 +00:00
Bram Moolenaar
0bac5fc5e1 patch 8.2.3747: cannot remove highlight from an existing sign
Problem:    Cannot remove highlight from an existing sign. (James McCoy)
Solution:   Only reject empty argument for a new sign.
2021-12-05 17:45:49 +00:00
Bram Moolenaar
c7d5fc8622 patch 8.2.3746: cannot disassemble function starting with "debug" or "profile"
Problem:    Cannot disassemble function starting with "debug" or "profile".
Solution:   Check for white space following. (closes #9273)
2021-12-05 17:20:24 +00:00
Dominique Pelle
f661cee847 patch 8.2.3745: autochdir test fails without the +channel feature
Problem:    Autochdir test fails without the +channel feature.
Solution:   Remove the ch_logfile() call. (Dominique Pellé, closes #9281)
2021-12-05 13:40:01 +00:00
Dominique Pelle
f645ee47c8 patch 8.2.3744: E854 is not tested; some spelling suggestions are not tested
Problem:    E854 is not tested; some spelling suggestions are not tested.
Solution:   Add a couple of tests. (Dominique Pellé, closes #9279)
2021-12-05 13:21:18 +00:00
Bram Moolenaar
5e18ccc60b patch 8.2.3743: ":sign" can add a highlight group without a name
Problem:    ":sign" can add a highlight group without a name.
Solution:   Give an error if the group name is missing. (closes #9280)
2021-12-05 13:02:50 +00:00
Dominique Pelle
f589fd3e10 patch 8.2.3742: dec mouse test fails without gnome terminfo entry
Problem:    Dec mouse test fails without gnome terminfo entry.
Solution:   Check if there is a gnome entry. Also fix 'acd' test on
            MS-Windows. (Dominique Pellé, closes #9282)
2021-12-05 12:39:21 +00:00
Bram Moolenaar
e031fe90cf patch 8.2.3741: using freed memory in open command
Problem:    Using freed memory in open command.
Solution:   Make a copy of the current line.
2021-12-05 12:06:24 +00:00
Bram Moolenaar
c7269f8627 patch 8.2.3740: memory left allocated on exit when using Tcl
Problem:    Memory left allocated on exit when using Tcl.
Solution:   Call Tcl_Finalize().
2021-12-05 11:36:23 +00:00
Bram Moolenaar
dea4a61637 patch 8.2.3739: in wrong directory when using win_execute() with 'acd' set
Problem:    In wrong directory when using win_execute() with 'acd' set.
Solution:   Restore the directory when returning to the window. (closes #9276)
2021-12-04 22:03:34 +00:00
Bram Moolenaar
23bdef2571 patch 8.2.3738: screen is cleared when a FocusLost autocommand triggers
Problem:    Screen is cleared when a FocusLost autocommand triggers.
Solution:   Do not redraw when at the hit-enter or more prompt. (closes #9274)
2021-12-04 17:20:27 +00:00
Dominique Pelle
8dea145e39 patch 8.2.3737: test fails without the 'autochdir' option
Problem:    Test fails without the 'autochdir' option.
Solution:   Check that the option is available. (Dominique Pellé, closes #9272)
2021-12-04 15:12:40 +00:00
Bram Moolenaar
853a7692d1 patch 8.2.3736: test fails without the channel feature
Problem:    Test fails without the channel feature. (Dominique Pellé)
Solution:   Source the check.vim script. (closes #9277)
2021-12-04 15:00:23 +00:00
Yegappan Lakshmanan
7645da568c patch 8.2.3735: cannot use a lambda for 'imactivatefunc'
Problem:    Cannot use a lambda for 'imactivatefunc'.
Solution:   Add lambda support for 'imactivatefunc' and 'imstatusfunc'.
            (Yegappan Lakshmanan, closes #9275)
2021-12-04 14:02:30 +00:00
Bram Moolenaar
01a4dcbcee patch 8.2.3734: Vim9: crash when no pattern match found
Problem:    Vim9: crash when no pattern match found.
Solution:   Check for error.
2021-12-04 13:15:10 +00:00
Bram Moolenaar
b579f6ebbf patch 8.2.3733: Vim9: using "legacy" before range does not work
Problem:    Vim9: using "legacy" before range does not work.
Solution:   Skip over range before parsing command. (closes #9270)
2021-12-04 11:57:00 +00:00
Bram Moolenaar
cd2f8f0e00 patch 8.2.3732: "set! termcap" test fails
Problem:    "set! termcap" test fails.
Solution:   Account for keys without a t_xx entry.
2021-12-03 21:18:14 +00:00
Bram Moolenaar
15a24f0898 patch 8.2.3731: "set! termcap" shows codes in one column, but not keys
Problem:    "set! termcap" shows codes in one column, but not keys.
Solution:   Also use one column for keys. (closes #9258)
2021-12-03 20:43:24 +00:00
Bram Moolenaar
800b01b0c8 patch 8.2.3730: "/etc/Muttrc.d/README" gets filetype muttrc
Problem:    "/etc/Muttrc.d/README" gets filetype muttrc.
Solution:   Move the Muttrc.d pattern down, add exception for *.rc files.
2021-12-03 19:24:41 +00:00
Matt Dunford
6f42cb6e51 patch 8.2.3729: no support for squirrels
Problem:    No support for squirrels. (closes #9259)
Solution:   Recognize nuts.
2021-12-03 17:44:26 +00:00
kuuote
04b7b4bf7f patch 8.2.3728: internal error when passing range() to list2blob()
Problem:    Internal error when passing range() to list2blob().
Solution:   Materialize the list first. (closes #9262)
2021-12-03 13:57:00 +00:00
Bram Moolenaar
c14b57c079 patch 8.2.3727: in a gnome terminal keys are recognized as mouse events
Problem:    In a gnome terminal keys are recognized as mouse events.
Solution:   Only recognize DEC mouse events when four numbers are following.
            (closes #9256)
2021-12-03 13:20:29 +00:00
Bram Moolenaar
c903695be5 patch 8.2.3726: README file in a config directory gets wrong filetype
Problem:    README file in a config directory gets wrong filetype.
Solution:   Match README before patterns that match everything in a directory.
2021-12-03 11:44:03 +00:00
Yegappan Lakshmanan
8658c759f0 patch 8.2.3725: cannot use a lambda for 'completefunc' and 'omnifunc'
Problem:    Cannot use a lambda for 'completefunc' and 'omnifunc'.
Solution:   Implement lambda support. (Yegappan Lakshmanan, closes #9257)
2021-12-03 11:09:29 +00:00
Bram Moolenaar
021ef351c2 patch 8.2.3724: build error for missing error message in small build
Problem:    Build error for missing error message in small build.
Solution:   Correct #ifdef.
2021-12-02 20:44:42 +00:00
Bram Moolenaar
acdc911e4e patch 8.2.3723: when using 'linebreak' a text property starts too early
Problem:    When using 'linebreak' a text property starts too early.
Solution:   Decrement "bcol" when looking for property start. (closes #9242)
2021-12-02 19:46:57 +00:00
Bram Moolenaar
5e86964bf4 patch 8.2.3722: Amiga: superfluous messages for freeing lots of yanked text
Problem:    Amiga: superfluous messages for freeing lots of yanked text.
Solution:   Assume that the machine isn't that slow these days.
2021-12-02 18:55:16 +00:00
Bram Moolenaar
9ac38129b6 patch 8.2.3721: using memory freed by losing the clipboard selection
Problem:    Using memory freed by losing the clipboard selection. (Dominique
            Pellé)
Solution:   Check y_array is still valid after calling changed_lines().
            (closes #9253)
2021-12-02 18:42:33 +00:00
Bram Moolenaar
69c76171f1 patch 8.2.3720: Vim9: Internal error when invoking closure in legacy context
Problem:    Vim9: Internal error when invoking closure in legacy context.
Solution:   Give a more appropriate error message. (closes #9251)
2021-12-02 16:38:52 +00:00
Bram Moolenaar
f8bc0ce267 patch 8.2.3719: MS-Windows: test sometimes runs into existing swap file
Problem:    MS-Windows: test sometimes runs into existing swap file.
Solution:   Use a different file name.
2021-12-02 12:30:22 +00:00
Bram Moolenaar
3569c0de67 patch 8.2.3718: compiler warns for unused variable without +textprop
Problem:    Compiler warns for unused variable without the +textprop feature.
            (John Marriott)
Solution:   Adjust #ifdefs.
2021-12-02 11:34:21 +00:00
Bram Moolenaar
db9ff9ab5d patch 8.2.3717: Vim9: error for constant list size is only given at runtime
Problem:    Vim9: error for constant list size is only given at runtime.
Solution:   Give the error at compile time if possible.
2021-12-01 17:38:01 +00:00
Bram Moolenaar
e4eed8c6db patch 8.2.3716: Vim9: range without a command is not compiled
Problem:    Vim9: range without a command is not compiled.
Solution:   Add the ISN_EXECRANGE byte code.
2021-12-01 15:22:56 +00:00
Bram Moolenaar
f0e496a85a patch 8.2.3715: Vim9: valgrind reports spurious problems for a test
Problem:    Vim9: valgrind reports spurious problems for a test.
Solution:   Move the test to the set that is known to fail.
2021-12-01 12:41:31 +00:00
DungSaga
7e5503c17a patch 8.2.3714: some unused assignments and ugly code in xxd
Problem:    Some unused assignments and ugly code in xxd.
Solution:   Leave out assignments.  Use marcro for fprintf(). (closes #9246)
2021-12-01 11:24:52 +00:00
Christian Brabandt
0b226f60be patch 8.2.3713: MS-Windows: no error if vimgrep pattern is not matching
Problem:    MS-Windows: No error message if vimgrep pattern is not matching.
Solution:   Give an error message. (Christian Brabandt, closes #9245,
            closes #8762)
2021-12-01 10:54:24 +00:00
Yegappan Lakshmanan
05e59e3a9f patch 8.2.3712: cannot use Vim9 lambda for 'tagfunc'
Problem:    Cannot use Vim9 lambda for 'tagfunc'.
Solution:   Make it work, add more tests. (Yegappan Lakshmanan, closes #9250)
2021-12-01 10:30:07 +00:00
Bram Moolenaar
56a8ffdb6e patch 8.2.3711: Vim9: memory leak when compiling :elseif fails
Problem:    Vim9: memory leak when compiling :elseif fails.
Solution:   Cleanup ppconst.
2021-12-01 10:10:22 +00:00
Bram Moolenaar
3d2e031d4f patch 8.2.3710: Vim9: backtick expression expanded for :global
Problem:    Vim9: backtick expression expanded for :global.
Solution:   Check the following command.
2021-12-01 09:27:20 +00:00
Bram Moolenaar
fad2742d53 patch 8.2.3709: Vim9: backtick expression expanded when not desired
Problem:    Vim9: backtick expression expanded when not desired.
Solution:   Only expand a backtick expression for commands that expand their
            argument.  Remove a few outdated TODO comments.
2021-11-30 21:58:19 +00:00
Bram Moolenaar
69535d8a0a patch 8.2.3708: Vim9: test fails with different error
Problem:    Vim9: test fails with different error.
Solution:   Correct the error number.
2021-11-30 21:39:39 +00:00
Bram Moolenaar
90770b746e patch 8.2.3707: Vim9: constant expression of elseif not recognized
Problem:    Vim9: constant expression of elseif not recognized.
Solution:   Set instruction count before generating the expression.
2021-11-30 20:57:38 +00:00
Bram Moolenaar
42eba04522 patch 8.2.3706: text property highlighting is used on Tab
Problem:    Text property highlighting is used on Tab.
Solution:   Only set in_linebreak when not on a Tab. (closes #9242)
2021-11-30 20:22:49 +00:00
Bram Moolenaar
eba3b7f664 patch 8.2.3705: cannot pass a lambda name to function() or funcref()
Problem:    Cannot pass a lambda name to function() or funcref(). (Yegappan
            Lakshmanan)
Solution:   Handle a lambda name differently.
2021-11-30 18:25:08 +00:00
Bram Moolenaar
ab36e6ae7b patch 8.2.3704: Vim9: cannot use a list declaration in a :def function
Problem:    Vim9: cannot use a list declaration in a :def function.
Solution:   Make it work.
2021-11-30 16:14:49 +00:00
Bram Moolenaar
53ba95e4f0 patch 8.2.3703: most people call F# "fsharp" and not "fs"
Problem:    Most people call F# "fsharp" and not "fs".
Solution:   Rename filetype "fs" to "fsharp".
2021-11-30 13:02:58 +00:00
Bram Moolenaar
98cb90ef86 patch 8.2.3702: first key in dict is seen as curly expression and fails
Problem:    First key in dict is seen as curly expression and fails.
Solution:   Ignore failure of curly expression. (closes #9247)
2021-11-30 11:56:22 +00:00
Bram Moolenaar
c750d91a07 patch 8.2.3701: Vim9: invalid LHS is not possible
Problem:    Vim9: invalid LHS is not possible.
Solution:   Remove unreachable error message.
2021-11-29 22:02:12 +00:00
Bram Moolenaar
6b839ac775 patch 8.2.3700: text property highlighting continues over breakindent
Problem:    Text property highlighting continues over breakindent.
Solution:   Stop before the end column. (closes #9242)
2021-11-29 21:12:35 +00:00
Bram Moolenaar
651fca85c7 patch 8.2.3699: the +title feature adds a lot of #ifdef but little code
Problem:    The +title feature adds a lot of #ifdef but little code.
Solution:   Graduate the +title feature.
2021-11-29 20:39:38 +00:00
Bram Moolenaar
0c359af5c0 patch 8.2.3698: match highlighting continues over breakindent
Problem:    Match highlighting continues over breakindent.
Solution:   Stop before the end column. (closes #9242)
2021-11-29 19:18:57 +00:00
Bram Moolenaar
0b74d00693 patch 8.2.3697: cannot drag a popup without a border
Problem:    Cannot drag a popup without a border.
Solution:   Add the "dragall" option. (closes #9218)
2021-11-29 17:38:02 +00:00
Bram Moolenaar
7f2c341664 patch 8.2.3696: Vim9: error for invalid assignment when skipping
Problem:    Vim9: error for invalid assignment when skipping.
Solution:   Do not check white space when skipping. (closes #9243)
2021-11-29 16:01:49 +00:00
Bram Moolenaar
5c1ec439f0 patch 8.2.3695: confusing error for missing key
Problem:    Confusing error for missing key.
Solution:   Use the actualy key for the error. (closes #9241)
2021-11-29 13:44:55 +00:00
Bram Moolenaar
af377e34b0 patch 8.2.3694: cannot use quotes in the count of an Ex command
Problem:    Cannot use quotes in the count of an Ex command.
Solution:   Add getdigits_quoted().  Give an error when misplacing a quote in
            a range. (closes #9240)
2021-11-29 12:12:43 +00:00
Bram Moolenaar
293eb9ba46 patch 8.2.3693: Coverity warns for possibly using a NULL pointer
Problem:    Coverity warns for possibly using a NULL pointer.
Solution:   Check for NULL and give an error.
2021-11-29 10:36:19 +00:00
Bram Moolenaar
38453528c3 patch 8.2.3692: Vim9: cannot use :func inside a :def function
Problem:    Vim9: cannot use :func inside a :def function.
Solution:   Make it work.
2021-11-28 22:00:12 +00:00
Bram Moolenaar
f566666e88 patch 8.2.3691: build failure with small features
Problem:    Build failure with small features.
Solution:   Add #ifdef. (Dominique Pellé)
2021-11-28 21:33:36 +00:00
Bram Moolenaar
06bffe836c patch 8.2.3690: Vim9: "filter #pat# cmd" does not work
Problem:    Vim9: "filter #pat# cmd" does not work.
Solution:   Do not see #pat# as a comment.
2021-11-28 20:24:17 +00:00
Bram Moolenaar
3ccb579516 patch 8.2.3689: ex_let_one() is too long
Problem:    ex_let_one() is too long.
Solution:   Split into multiple functions.
2021-11-28 19:53:42 +00:00
Christian Brabandt
2e0f3ecb70 patch 8.2.3688: the window title is not updated when dragging the scrollbar
Problem:    The window title is not updated when dragging the scrollbar.
Solution:   Call maketitle(). (Christian Brabandt, closes #9238, closes #5383)
2021-11-28 18:41:05 +00:00
Bram Moolenaar
59f4f9505a patch 8.2.3687: blockwise insert does not handle autoindent properly
Problem:    Blockwise insert does not handle autoindent properly when tab is
            inserted.
Solution:   Adjust text column for indent before computing column.
            (closes #9229)
2021-11-27 22:47:43 +00:00
Bram Moolenaar
3d14c0f2b9 patch 8.2.3686: filetype detection often mixes up Forth and F#
Problem:    Filetype detection often mixes up Forth and F#.
Solution:   Add a function to inspect the file contents. (Doug Kearns)
2021-11-27 17:22:07 +00:00
Bram Moolenaar
c07f11e42f patch 8.2.3685: Visual studio project files are not recognized
Problem:    Visual studio project files are not recognized.
Solution:   Use the xml file type. (Doug Kearns)
2021-11-27 14:31:47 +00:00
Bram Moolenaar
e9b0b40b79 patch 8.2.3684: blockwise insert does not handle autoindent properly
Problem:    Blockwise insert does not handle autoindent properly.
Solution:   Adjust text column for indent. (closes #9229)
2021-11-27 13:28:24 +00:00
Bram Moolenaar
279d733dfb patch 8.2.3683: Vim9: cannot use in :...do commands
Problem:    Vim9: cannot use  in :...do commands.
Solution:   Add EX_EXPAND to the commands. (closes #9232)
2021-11-27 11:42:50 +00:00
Bram Moolenaar
6304be625c Update runtime files. 2021-11-27 10:57:26 +00:00
Bram Moolenaar
7824fc80f6 patch 8.2.3682: Vim9: assigning to a script variable drops the type
Problem:    Vim9: assigning to a script variable drops the required type.
Solution:   Lookup the type of the variable and use it. (closes #9219)
2021-11-26 17:36:51 +00:00
Bram Moolenaar
bfc5786a61 patch 8.2.3681: cannot drag popup window after click on a status line
Problem:    Cannot drag popup window after click on a status line. (Sergey
            Vlasov)
Solution:   Reset on_status_line. (closes #9221)
2021-11-26 15:57:40 +00:00
DungSaga
d1d8a595bd patch 8.2.3680: repeated code in xxd
Problem:    Repeated code in xxd.
Solution:   Change exit_on_ferror() to getc_or_die(). (closes #9226)
2021-11-26 13:59:27 +00:00
Doug Kearns
7329cfab36 patch 8.2.3679: objc file detected as Octave
Problem:    objc file detected as Octave. (Antony Lee)
Solution:   Detect objc by preprocessor lines. (Doug Kearns, closes #9223,
            closes #9220)
2021-11-26 13:01:41 +00:00
Bram Moolenaar
85be8563fe patch 8.2.3678: illegal memory access
Problem:    Illegal memory access.
Solution:   Ignore changed indent when computing byte offset.
2021-11-25 20:40:11 +00:00
Bram Moolenaar
4d07253a48 patch 8.2.3677: after a put the '] mark is on the last byte
Problem:    After a put the '] mark is on the last byte of a multi-byte
            character.
Solution:   Move it to the first byte. (closes #9047)
2021-11-25 19:31:15 +00:00
Bram Moolenaar
309ce25189 patch 8.2.3676: unused runtime file
Problem:    Unused runtime file.
Solution:   Remove rgb.txt.
2021-11-25 15:11:03 +00:00
Bram Moolenaar
ba8c92687d patch 8.2.3675: using freed memory when vim_strsave() fails
Problem:    Using freed memory when vim_strsave() fails.
Solution:   Clear "last_sourcing_name".  Check for msg_source() called
            recursively. (closes #8217)
2021-11-25 14:43:18 +00:00
Bram Moolenaar
96e7a5928e patch 8.2.3674: when ml_get_buf() fails it messes up IObuff
Problem:    When ml_get_buf() fails it messes up IObuff.
Solution:   Return a local pointer. (closes #9214)
2021-11-25 13:52:37 +00:00
Bram Moolenaar
0bd8d05638 patch 8.2.3673: crash when allocating signal stack fails
Problem:    Crash when allocating signal stack fails.
Solution:   Only using sourcing info when available. (closes #9215)
2021-11-25 13:39:28 +00:00
Bram Moolenaar
71b36206be patch 8.2.3672: build failure with unsigned char
Problem:    Build failure with unsigned char.
Solution:   Use int instead of char.
2021-11-25 13:26:19 +00:00
Bram Moolenaar
34c20ff85b patch 8.2.3671: restarting Insert mode in prompt buffer too often
Problem:    Restarting Insert mode in prompt buffer too often when a callback
            switches windows and comes back. (Sean Dewar)
Solution:   Do not set "restart_edit" when already in Insert mode.
2021-11-25 13:04:48 +00:00
Bram Moolenaar
8af87bd6b1 patch 8.2.3670: error checks repeated several times
Problem:    Error checks repeated several times.
Solution:   Move the checks to functions. (closes #9213)
2021-11-25 11:16:50 +00:00
Bram Moolenaar
bd228fd097 patch 8.2.3669: buffer overflow with long help argument
Problem:    Buffer overflow with long help argument.
Solution:   Use snprintf().
2021-11-25 10:50:12 +00:00
Yegappan Lakshmanan
bb277fd89f patch 8.2.3668: messages may be corrupted
Problem:    Messages may be corrupted.
Solution:   Use another buffer instead of IObuff. (Yegappan Lakshmanan,
            closes #9195)
2021-11-24 20:28:31 +00:00
Bram Moolenaar
510d8e6056 patch 8.2.3667: building libvterm fails with MSVC
Problem:    Building libvterm fails with MSVC.
Solution:   Don't use C99 construct.
2021-11-24 19:55:46 +00:00
Bram Moolenaar
7da341560e patch 8.2.3666: libvterm is outdated
Problem:    Libvterm is outdated.
Solution:   Include patches from revision 769 to revision 789.
2021-11-24 19:30:55 +00:00
Yegappan Lakshmanan
19916a8c89 patch 8.2.3665: cannot use a lambda for 'tagfunc'
Problem:    Cannot use a lambda for 'tagfunc'.
Solution:   Use 'tagfunc' like 'opfunc'. (Yegappan Lakshmanan, closes #9204)
2021-11-24 16:32:55 +00:00
Bram Moolenaar
e413ea04b7 patch 8.2.3664: cannot adjust sign highlighting for 'cursorline'
Problem:    Cannot adjust sign highlighting for 'cursorline'.
Solution:   Add CursorLineSign and CursorLineFold highlight groups.
            (Gregory Anders, closes #9201)
2021-11-24 16:20:13 +00:00
presuku
1f2453fec6 patch 8.2.3663: using %S in printf() does not work correctly
Problem:    Using %S in printf() does not work correctly.
Solution:   Fix the problem and add more tests. (closes #9208)
2021-11-24 15:32:57 +00:00
Bram Moolenaar
cf1e0239ce patch 8.2.3662: illegal memory access if malloc() fails
Problem:    Illegal memory access if malloc() fails.
Solution:   Check 'foldmethod' is not empty. (closes #9207)
2021-11-24 15:13:26 +00:00
Bram Moolenaar
8bc07e800c patch 8.2.3661: test for put with large count fails
Problem:    Test for put with large count fails.
Solution:   Adjust the counts in the test.
2021-11-24 14:59:17 +00:00
Bram Moolenaar
9b0e82f35e patch 8.2.3660: overflow check uses wrong number
Problem:    Overflow check uses wrong number.
Solution:   Divide by ten.
2021-11-24 13:40:29 +00:00
Bram Moolenaar
03725c5795 patch 8.2.3659: integer overflow with large line number
Problem:    Integer overflow with large line number.
Solution:   Check for overflow. (closes #9202)
2021-11-24 12:17:53 +00:00
DungSaga
48608b4a4b patch 8.2.3658: duplicate code in xxd
Problem:    Duplicate code in xxd.
Solution:   Merge duplicated code. Add more tests. (closes #9192)
2021-11-24 11:18:07 +00:00
Bram Moolenaar
112bed0cbe patch 8.2.3657: Vim9: debug text misses one line of return statement
Problem:    Vim9: debug text misses one line of return statement.
Solution:   Add a line when not at a debug instruction. (closes #9137)
2021-11-23 22:16:34 +00:00
Bram Moolenaar
65259b5c6a patch 8.2.3656: Vim9: no error for an evironment variable by itself
Problem:    Vim9: no error for an evironment variable by itself.
Solution:   Give a "without effect" error. (closes #9166)
2021-11-23 14:52:06 +00:00
Mike Williams
cc9d725bbb patch 8.2.3655: compiler warning for using size_t for int
Problem:    Compiler warning for using size_t for int.
Solution:   Add a type cast. (Mike Williams, closes #9199)
2021-11-23 12:35:57 +00:00
Chris Dalton
ee93e327ba patch 8.2.3654: GTK: a touch-drag does not update the selection
Problem:    GTK: a touch-drag does not update the selection.
Solution:   Add GDK_BUTTON1_MASK to the state. (Chris Dalton, close #9196,
            closes #9194)
2021-11-23 12:27:48 +00:00
Milly
b771b6b5fe patch 8.2.3653: terminal ANSI colors may be wrong
Problem:    Terminal ANSI colors may be wrong.
Solution:   Initialize the color type. (closes #9198, closes #9197)
2021-11-23 12:07:25 +00:00
Yegappan Lakshmanan
e021662f39 patch 8.2.3652: can only get text properties one line at a time
Problem:    Can only get text properties one line at a time.
Solution:   Add options to prop_list() to use a range of lines and filter by
            types. (Yegappan Lakshmanan, closes #9138)
2021-11-23 11:46:32 +00:00
Bram Moolenaar
04b568b38f patch 8.2.3651: Vim9: no error for :lock or :unlock with unknown variable
Problem:    Vim9: no error for :lock or :unlock with unknown variable.
Solution:   Give an error. (closes #9188)
2021-11-22 21:58:41 +00:00
Bram Moolenaar
3b3755fe19 patch 8.2.3650: Vim9: for loop variable can be a list member
Problem:    Vim9: for loop variable can be a list member.
Solution:   Check for valid variable name. (closes #9179)
2021-11-22 20:10:18 +00:00
Bram Moolenaar
7a53f29c03 patch 8.2.3649: Vim9: error for variable declared in while loop
Problem:    Vim9: error for variable declared in while loop.
Solution:   Do not keep the first variable. (closes #9191)
2021-11-22 18:31:02 +00:00
Bram Moolenaar
4671e88d7d patch 8.2.3648: "verbose pwd" is incorrect after dropping files on Vim
Problem:    "verbose pwd" is incorrect after dropping files on Vim.
Solution:   Set the chdir reason to "drop".
2021-11-22 17:21:48 +00:00
Dusan Popovic
ce59b9f292 patch 8.2.3647: GTK: when using ligatures the cursor is drawn wrong
Problem:    GTK: when using ligatures the cursor is drawn wrong.
Solution:   Clear more characters when ligatures are used. (Dusan Popovic,
            closes #9190)
2021-11-22 17:18:44 +00:00
Bram Moolenaar
c449271f4e patch 8.2.3646: using <sfile> in a function gives an unexpected result
Problem:    Using <sfile> in a function gives an unexpected result.
Solution:   Give an error in a Vim9 function. (issue #9189)
2021-11-22 15:37:15 +00:00
Bram Moolenaar
7d5b8becc3 patch 8.2.3645: Vim9: The "no effect" error is not given for all registers
Problem:    Vim9: The "no effect" error is not given for all registers.
Solution:   Include any character following '@'. (closes #8779)
2021-11-22 15:05:46 +00:00
Bram Moolenaar
2228cd72cf patch 8.2.3644: count for 'operatorfunc' in Visual mode is not redone
Problem:    Count for 'operatorfunc' in Visual mode is not redone.
Solution:   Add the count to the redo buffer. (closes #9174)
2021-11-22 14:16:08 +00:00
zeertzjq
a3f83feb63 patch 8.2.3643: header for source file is outdated
Problem:    Header for source file is outdated.
Solution:   Make the header more accurate. (closes #9186)
2021-11-22 12:47:39 +00:00
Bram Moolenaar
73448a27a8 patch 8.2.3642: list of distributed files is outdated
Problem:    List of distributed files is outdated.
Solution:   Rename term.h to termdefs.h.
2021-11-22 12:06:06 +00:00
DungSaga
581f41adb3 patch 8.2.3641: xxd code has duplicate expressions
Problem:    Xxd code has duplicate expressions.
Solution:   Refactor to avoid duplication. (closes #9185)
2021-11-22 11:57:31 +00:00
Bram Moolenaar
88a4205f1c Update runtime files 2021-11-21 21:13:36 +00:00
Bram Moolenaar
eea32afdb8 patch 8.2.3640: freeze when calling term_wait() in a close callback
Problem:    Freeze when calling term_wait() in a close callback.
Solution:   Set a "closing" flag to tell term_wait() to return. (closes #9152)
2021-11-21 14:51:13 +00:00
Volodymyr Kot
7f0c4b418e patch 8.2.3639: line commented out accidentally
Problem:    Line commented out accidentally.
Solution:   Uncomment. (Volodymyr Kot, closes #9172)
2021-11-21 12:27:13 +00:00
ii14
4785fe02bb patch 8.2.3638: getcompletion() always passes zero as position
Problem:    getcompletion() always passes zero as position to custom
            completion function.
Solution:   Pass the pattern length. (closes #9173)
2021-11-21 12:13:56 +00:00
Dominique Pelle
923dce2b07 patch 8.2.3637: typos in test files
Problem:    Typos in test files.
Solution:   Correct the typos. (Dominique Pellé, closes #9175)
2021-11-21 11:36:04 +00:00
Bram Moolenaar
2c23670300 patch 8.2.3636: Coverity warns for unreachable code
Problem:    Coverity warns for unreachable code.
Solution:   Remove unreachable else block.
2021-11-21 11:15:49 +00:00
Dusan Popovic
3c19b50500 patch 8.2.3635: GTK: composing underline does not show
Problem:    GTK: composing underline does not show.
Solution:   Include composing character in pango call. A few more
            optimizations for ligatures.  (Dusan Popovic, closes #9171,
            closes #9147)
2021-11-20 22:03:30 +00:00
Bram Moolenaar
d604d78e7b patch 8.2.3634: error for already defined function uses wrong line number
Problem:    Error for already defined function uses wrong line number.
Solution:   Set SOURCING_LNUM before giving the error message. (closes #9085)
2021-11-20 21:46:20 +00:00
Bram Moolenaar
a755fdbe80 patch 8.2.3633: Vim9: line number of lambda is off by one
Problem:    Vim9: line number of lambda is off by one.
Solution:   Add one to the line number. (closes #9083)
2021-11-20 21:35:41 +00:00
Yamagi
9cd9385db7 patch 8.2.3632: GTK3: undercurl does not get removed properly
Problem:    GTK3: undercurl does not get removed properly.
Solution:   Set the cairo cursor first. (closes #9170)
2021-11-20 20:42:29 +00:00
Bram Moolenaar
c8a9fe541d patch 8.2.3631: "syntax enable" does not work properly in Vim9 context
Problem:    "syntax enable" does not work properly in Vim9 context.
Solution:   Also handle Vim9 context. (closes #9161)
2021-11-20 19:50:59 +00:00
presuku
d85fccdfed patch 8.2.3630: printf() with %S does not handle multi-byte correctly
Problem:    Printf() with %S does not handle multi-byte correctly.
Solution:   Count cells instead of bytes. (closes #9169, closes #7486)
2021-11-20 19:38:31 +00:00
mityu
a119812437 patch 8.2.3629: command completion in cmdline window uses global commands
Problem:    Command completion in cmdline window uses global user commands,
            not local commands for the window where it was opened from.
Solution:   Use local commands. (closes #9168)
2021-11-20 19:13:39 +00:00
Bram Moolenaar
87fd0924e2 patch 8.2.3628: looking terminal colors is a bit slow
Problem:    Looking terminal colors is a bit slow.
Solution:   Cache the terminal colors. (closes #9130, closes #9058)
2021-11-20 13:47:45 +00:00
Bram Moolenaar
cdf5fdb294 patch 8.2.3627: difficult to know where the text starts in a window
Problem:    difficult to know where the text starts in a window. (Sergey
            Vlasov)
Solution:   Add the "textoff" entry in the result of getwininfo().
            (closes #9163)
2021-11-20 11:14:24 +00:00
Bram Moolenaar
b8e642f7ac patch 8.2.3626: "au! event" cannot be followed by another command
Problem:    "au!" and "au! event" cannot be followed by another command as
            documented.
Solution:   When a bar is found set nextcmd.
2021-11-20 10:38:25 +00:00
Bram Moolenaar
2de9b7c7c8 patch 8.2.3625: illegal memory access when C-indenting
Problem:    Illegal memory access when C-indenting.
Solution:   Also set the cursor column.
2021-11-19 19:41:13 +00:00
Bram Moolenaar
3ad695328f patch 8.2.3624: when renaming a terminal buffer status text is not updated
Problem:    When renaming a terminal buffer the status text is not updated.
Solution:   Clear the cached status text when renaming a terminal buffer.
            (closes #9162)
2021-11-19 17:01:08 +00:00
Christian Brabandt
8b8d829faf patch 8.2.3623: "$*" is expanded to "nonomatch"
Problem:    "$*" is expanded to "nonomatch".
Solution:   Only add "set nonomatch" when using a csh-like shell. (Christian
            Brabandt, closes #9159, closes #9153)
2021-11-19 12:37:36 +00:00
zeertzjq
64be6aa3a5 patch 8.2.3622: "verbose pwd" shows confusing info
Problem:    "verbose pwd" shows confusing info when :lcd does not change
            directory.
Solution:   Clear last_chdir_reason also when the directory does not change.
            (closes #9160)
2021-11-19 11:59:08 +00:00
Bram Moolenaar
1d69ef410a patch 8.2.3621: build failure
Problem:    Build failure.
Solution:   Add missing change.
2021-11-19 11:35:32 +00:00
Bram Moolenaar
b3a29558ee patch 8.2.3620: memory leak reported in libtlib
Problem:    Memory leak reported in libtlib.
Solution:   Call del_curterm() when cleaning up memory.  Rename term.h to
            termdefs.h to avoid a name clash.
2021-11-19 11:28:04 +00:00
Yegappan Lakshmanan
777175b0df patch 8.2.3619: cannot use a lambda for 'operatorfunc'
Problem:    Cannot use a lambda for 'operatorfunc'.
Solution:   Support using a lambda or partial. (Yegappan Lakshmanan,
            closes #8775)
2021-11-18 22:08:57 +00:00
Bram Moolenaar
851c7a699a patch 8.2.3618: getcwd() is unclear about how 'autochdir' is used
Problem:    getcwd() is unclear about how 'autochdir' is used.
Solution:   Update the help for getcwd().  Without any arguments always return
            the actual current directory. (closes #9142)
2021-11-18 20:47:31 +00:00
Bram Moolenaar
0526815c15 patch 8.2.3617: ":verbose pwd" does not mention 'autochdir' was applied
Problem:    ":verbose pwd" does not mention 'autochdir' was applied.
Solution:   Remember the last chdir was done by 'autochdir'.  (issue #9142)
2021-11-18 18:53:45 +00:00
Shougo Matsushita
3cad470385 patch 8.2.3616: arglist test does not clear the argument list consistently
Problem:    Arglist test does not clear the argument list consistently.
Solution:   Call Reset_arglist(). (Shougo Matsushita, closes #9154)
2021-11-18 15:37:29 +00:00
Christian Brabandt
818ff25cd1 patch 8.2.3615: wrong indent in first line if re-formatting with indent expr
Problem:    When re-formatting with an indent expression the first line of a
            paragraph may get the wrong indent. (Martin F. Krafft)
Solution:   Apply the correct indenting function for the first line.
            (Christian Brabandt, closes #9150, closes #9056)
2021-11-18 13:56:37 +00:00
Bakudankun
6555500bcf patch 8.2.3614: zindex of popup windows not used when redrawing popup menu
Problem:    zindex of popup windows not used when redrawing popup menu.
Solution:   Check the zindex when redrawing the popup menu.  (closes #9129,
            closes #9089)
2021-11-17 20:40:16 +00:00
Bram Moolenaar
e015d99abb patch 8.2.3613: :find test fails
Problem:    :find test fails.
Solution:   Put length check inside if block.
2021-11-17 19:01:53 +00:00
Bram Moolenaar
64066b9acd patch 8.2.3612: using freed memory with regexp using a mark
Problem:    Using freed memory with regexp using a mark.
Solution:   Get the line again after getting the mark position.
2021-11-17 18:22:56 +00:00
Bram Moolenaar
615ddd5342 patch 8.2.3611: crash when using CTRL-W f without finding a file name
Problem:    Crash when using CTRL-W f without finding a file name.
Solution:   Bail out when the file name length is zero.
2021-11-17 18:00:31 +00:00
Bram Moolenaar
a062006b9d patch 8.2.3610: crash when ModeChanged triggered too early
Problem:    Crash when ModeChanged triggered too early.
Solution:   Trigger ModeChanged after setting VIsual.
2021-11-17 16:52:40 +00:00
Bram Moolenaar
3075a45592 patch 8.2.3609: internal error when ModeChanged is triggered recursively
Problem:    Internal error when ModeChanged is triggered when v:event is
            already in use.
Solution:   Save and restore v:event if needed.
2021-11-17 15:51:52 +00:00
Egor Zvorykin
125ffd21f9 patch 8.2.3608: users who type "q:" instead of ":q" are confused
Problem:    Users who type "q:" instead of ":q" are confused.
Solution:   Add an autocmd to give a message that explains this is the
            command-line window. (Egor Zvorykin, closes #9146)
2021-11-17 14:01:14 +00:00
presuku
9459b8d461 patch 8.2.3607: GTK3 screen updating is slow
Problem:    GTK3 screen updating is slow.
Solution:   Remove some of the GTK3-specific code. (closes #9052)
2021-11-16 20:03:56 +00:00
Bram Moolenaar
d3682c5f28 patch 8.2.3606: file missing from list of distributed files
Problem:    File missing from list of distributed files.
Solution:   Add the file.
2021-11-16 19:20:56 +00:00
Bram Moolenaar
519cc559b0 Update runtime files 2021-11-16 19:18:26 +00:00
Bram Moolenaar
728104da6c Add missing change to version.c 2021-11-16 17:50:34 +00:00
Yegappan Lakshmanan
2a16dc6613 patch 8.2.3605: cannot clear and unlinke a highlight group with hlset()
Problem:    Cannot clear and unlinke a highlight group with hlset() in a
            single call.
Solution:   Add the "force" option. (Yegappan Lakshmanan, closes #9117)
2021-11-16 17:19:30 +00:00
Bram Moolenaar
c143fa0778 patch 8.2.3604: not all sudoers files are recognized
Problem:    Not all sudoers files are recognized.
Solution:   Add a file pattern. (Doug Kearns, closes #1192)
2021-11-16 16:38:42 +00:00
Bram Moolenaar
b1b163efd7 patch 8.2.3603: fish filetype not recognized
Problem:    Fish filetype not recognized.
Solution:   Add a file pattern and match script line. (Doug Kearns)
2021-11-16 15:28:10 +00:00
K.Takata
1be7e21583 patch 8.2.3602: Python3 test fails with Python 3.10 on MS-Windows
Problem:    Python3 test fails with Python 3.10 on MS-Windows.
Solution:   Adjust the expected error. (Ken Takata, closes #9118)
2021-11-16 13:08:56 +00:00
ichizok
fa53722367 patch 8.2.3601: check for overflow in put count does not work well
Problem:    Check for overflow in put count does not work well.
Solution:   Improve the overflow check. (Ozaki Kiichi, closes #9102)
2021-11-16 12:50:46 +00:00
Bram Moolenaar
314b773abb patch 8.2.3600: filetype test fails
Problem:    Filetype test fails.
Solution:   Add missint change.
2021-11-16 11:53:13 +00:00
Bram Moolenaar
782b4bbc16 patch 8.2.3599: not all gdbinit files are recognized
Problem:    Not all gdbinit files are recognized.
Solution:   Add "gdbinit". (Doug Kearns)
2021-11-16 11:10:11 +00:00
zainin
0818ab82e7 patch 8.2.3598: RouterOS filetype is not recognized
Problem:    RouterOS filetype is not recognized.
Solution:   Add file and script patterns. (closes #9097)
2021-11-15 21:44:11 +00:00
Bram Moolenaar
36968af155 patch 8.2.3597: Vim seems to hang when writing a long text to a terminal
Problem:    Vim seems to hang when writing a very long text to a terminal
            window.
Solution:   Limit the amount of text based on 'termwinscroll'. (issue #9080)
2021-11-15 17:13:11 +00:00
Yegappan Lakshmanan
733b124a90 patch 8.2.3596: crash when using :pedit in Vim9 script
Problem:    Crash when using :pedit in Vim9 script.
Solution:   Move check for arguments to after checking there are arguments.
            (Yegappan Lakshmanan, closes #9134, closes #9135)
2021-11-15 11:22:09 +00:00
Bram Moolenaar
0d5a12ea04 patch 8.2.3595: check for signed overflow might not work everywhere
Problem:    Check for signed overflow might not work everywhere.
Solution:   Limit to 32 bit int. (closes #9043, closes #9067)
2021-11-14 14:05:18 +00:00
Bram Moolenaar
786e05beb5 patch 8.2.3594: xxd code is a bit difficult to understand
Problem:    Xxd code is a bit difficult to understand.
Solution:   Move some lines to a separate function. (closes #9037)
2021-11-14 13:46:05 +00:00
Bram Moolenaar
7f13b24ab6 patch 8.2.3593: directory is wrong after executing "lcd" with win_execute()
Problem:    Directory is wrong after executing "lcd" with win_execute().
Solution:   Correct the directory when going back to the original window.
            (closes #9132)
2021-11-14 11:41:31 +00:00
Dominique Pelle
6a950a6007 patch 8.2.3592: Test_hlset fails when terminal has many columns
Problem:    Test_hlset fails when terminal has many columns.
Solution:   Set the number of columns to 80. (Dominique Pellé, closes #9101,
            closes #9100)
2021-11-13 18:44:37 +00:00
naohiro ono
23beefed73 patch 8.2.3591: no event is triggered when closing a window
Problem:    No event is triggered when closing a window.
Solution:   Add the WinClosed event. (Naohiro Ono, closes #9110)
2021-11-13 12:38:49 +00:00
Drew Vogel
a0fca17251 patch 8.2.3590: test for v:colornames sometimes fails
Problem:    Test for v:colornames sometimes fails. (Dominique Pellé)
Solution:   Check features.  Clear v:colornames between tests. (Drew Vogel,
            closes #9105, closes #9073)
2021-11-13 10:50:01 +00:00
Bram Moolenaar
5300be620c patch 8.2.3589: failure when "term_rows" of term_start() is an unusual value
Problem:    Failure when the "term_rows" argument of term_start() is an
            unusual value.
Solution:   Limit to range of zero to 1000. (closes #9116)
2021-11-13 10:27:40 +00:00
Bram Moolenaar
606efc7df4 patch 8.2.3588: break statement is never reached
Problem:    Break statement is never reached.
Solution:   Rely on return value of set_chars_option() not changing.
            (closes #9103)
2021-11-12 19:52:47 +00:00
Bram Moolenaar
0a15c7676b patch 8.2.3587: compiler test fails with backslash file separator
Problem:    Compiler test fails with backslash file separator.
Solution:   Accept slash and backslash.
2021-11-12 16:09:54 +00:00
Bram Moolenaar
326e7da609 patch 8.2.3586: command completion test fails
Problem:    Command completion test fails.
Solution:   Add new argument to expected output
2021-11-12 16:06:03 +00:00
Bram Moolenaar
8813739673 patch 8.2.3585: crash when passing float to "term_rows" of term_start()
Problem:    Crash when passing float to "term_rows" in the options argument of
            term_start(). (Virginia Senioria)
Solution:   Bail out if the argument is not a number. (closes #9116)
2021-11-12 16:01:15 +00:00
Bram Moolenaar
58ef8a31d7 patch 8.2.3584: "verbose set efm" reports location of the :compiler command
Problem:    "verbose set efm" reports the location of the :compiler command.
            (Gary Johnson)
Solution:   Add the "-keepscript" argument to :command and use it when
            defining CompilerSet.
2021-11-12 11:25:11 +00:00
Bram Moolenaar
0c71114aed patch 8.2.3583: the "gd" and "gD" commands do not update search stats
Problem:    The "gd" and "gD" commands do not update search stats. (Gary
            Johnson)
Solution:   Clear search stats.
2021-11-12 10:30:04 +00:00
Bram Moolenaar
113cb513f7 Update runtime files 2021-11-07 20:27:04 +00:00
Bram Moolenaar
15d9890eee patch 8.2.3582: reading uninitialized memory when giving spell suggestions
Problem:    Reading uninitialized memory when giving spell suggestions.
Solution:   Check that preword is not empty.
2021-11-04 15:46:05 +00:00
Bram Moolenaar
0b5b06cb47 patch 8.2.3581: reading character past end of line
Problem:    Reading character past end of line.
Solution:   Correct the cursor column.
2021-11-04 15:10:11 +00:00
Christian Brabandt
aaec1d4fb1 patch 8.2.3580: gj does not move properly with a wide character
Problem:    gj does not move properly with a wide character.
Solution:   Move one to the right. (Christian Brabandt, closes #8702)
2021-11-04 13:28:29 +00:00
Christian Brabandt
4b2c804767 patch 8.2.3579: CI sometimes fails for MinGW
Problem:    CI sometimes fails for MinGW.
Solution:   Use backslashes in HandleSwapExists(). (Christian Brabandt,
            closes #9078)
2021-11-03 22:31:44 +00:00
Bram Moolenaar
b32aa8a6a1 Add missing piece of patch 8.2.3578 2021-11-03 22:25:06 +00:00
Yegappan Lakshmanan
d1a8d658e1 patch 8.2.3578: manipulating highlighting is complicated
Problem:    Manipulating highlighting is complicated.
Solution:   Add the hlget() and hlset() functions. (Yegappan Lakshmanan,
            closes #9039)
2021-11-03 21:56:45 +00:00
Bram Moolenaar
0f0044125c patch 8.2.3577: overflow check fails with 32 ints
Problem:    Overflow check fails with 32 ints.
Solution:   Only test with 64 bit ints.
2021-11-03 13:43:16 +00:00
Sean Dewar
a63780b977 patch 8.2.3576: some functions are not documented for use with a method
Problem:    Some functions are not documented for use with a method.
Solution:   Add examples.  Fix that sign_unplacelist() only takes one
            argument. (Sean Dewar, closes #9081)
2021-11-03 13:15:47 +00:00
Bram Moolenaar
e551ccfb93 patch 8.2.3575: overflow check still fails when sizeof(int) == sizeof(long)
Problem:    Overflow check still fails when sizeof(int) == sizeof(long).
Solution:   Use a float to check the result.
2021-11-02 23:11:00 +00:00
Bram Moolenaar
8a1962d135 patch 8.2.3574: divide by zero
Problem:    Divide by zero.
Solution:   Don't check for overflow if multiplicand is zero.
2021-11-02 22:48:49 +00:00
Bram Moolenaar
69b3072d98 patch 8.2.3573: cannot decide whether to skip test that fails with 64 bit
Problem:    Cannot decide whether to skip test that fails with 64 bit ints.
            (closes #9072)
Solution:   Add v:sizeofint, v:sizeoflong and v:sizeofpointer.  Improve the
            check for multiply overflow.
2021-11-02 21:39:49 +00:00
zeertzjq
7a33ebfc5b patch 8.2.3572: memory leak when closing window and using "multispace"
Problem:    Memory leak when closing window and using "multispace" in
            'listchars'.
Solution:   Free the memory. (closes #9071)
2021-11-02 20:56:07 +00:00
Bram Moolenaar
e2f66064d1 patch 8.2.3571: some unicode control characters are considered printable
Problem:    Some unicode control characters are considered printable.
Solution:   Make 0x2060 - 0x2069 not printable.
2021-11-02 20:24:38 +00:00
Bram Moolenaar
ec6e63079d patch 8.2.3570: Test_very_large_count fails on 32bit systems
Problem:    Test_very_large_count fails on 32bit systems.
Solution:   Bail out when using 32 bit numbers. (closes #9072)
2021-11-01 22:58:43 +00:00
Christian Brabandt
fd916d654d patch 8.2.3569: error for :let when vimrc is Vim 9 script
Problem:    Error for :let when vimrc is Vim 9 script.
Solution:   Prepend :legacy in the code for converting arguments. (Christian
            Brabandt, closes #9068, closes #9077)
2021-11-01 22:44:33 +00:00
Dominique Pelle
8753c1dd2c patch 8.2.3568: ctrl-hat test fails with Athena and Motif
Problem:    Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
Solution:   Run the test only with GTK. (Dominique Pellé, closes #9069)
2021-10-31 20:19:17 +00:00
Dominique Pelle
9cd063e319 patch 8.2.3567: CTRL-I in Insert mode is not tested
Problem:    CTRL-I in Insert mode is not tested
Solution:   Add a test case. (Dominique Pellé, closes #8866)
2021-10-28 21:06:05 +01:00
Gary Johnson
44db603f69 patch 8.2.3566: build failure on old systems when using nano timestamp
Problem:    Build failure on old systems when using nano timestamp.
Solution:   Define _BSD_SOURCE, _SVID_SOURCE and _DEFAULT_SOURCE. (Gary
            Johnson, closes #9054)
2021-10-28 20:49:06 +01:00
Bram Moolenaar
2446ec9b56 patch 8.2.3565: Makefile dependencies are outdated
Problem:    Makefile dependencies are outdated. (Gary Johnson)
Solution:   Run "make depend" and add missing dependencies.
2021-10-26 12:00:01 +01:00
Bram Moolenaar
777e7c21b7 patch 8.2.3564: invalid memory access when scrolling without valid screen
Problem:    Invalid memory access when scrolling without a valid screen.
Solution:   Do not set VALID_BOTLINE in w_valid.
2021-10-25 17:07:04 +01:00
Bram Moolenaar
2a52196b78 patch 8.2.3563: build failure with +eval but without GUI or +termguicolors
Problem:    Build failure with +eval but without GUI or +termguicolors
Solution:   Adjust #ifdef. (John Marriott)
2021-10-25 10:30:14 +01:00
Drew Vogel
e30d10253f patch 8.2.3562: cannot add color names
Problem:    Cannot add color names.
Solution:   Add the v:colornames dictionary. (Drew Vogel, closes #8761)
2021-10-24 20:35:07 +01:00
James McCoy
3c5904d2a5 patch 8.2.3561: cscope has a complicated way of giving an error message
Problem:    Cscope has a complicated way of giving an error message.
Solution:   Use semsg(). (James McCoy, closes #9038)
2021-10-24 14:50:07 +01:00
Bram Moolenaar
844fb64a60 patch 8.2.3560: using freed memory with lambda
Problem:    Using freed memory with lambda.
Solution:   Do not free lines early, keep them until the expression is
            finished.
2021-10-23 13:32:30 +01:00
Bram Moolenaar
ee56f3f119 patch 8.2.3559: loop variable recreated every time
Problem:    Loop variable recreated every time.
Solution:   Keep the loop variable when looping.
2021-10-23 12:34:27 +01:00
Bram Moolenaar
079ba76ae7 Update runtime files 2021-10-23 12:08:41 +01:00
Bram Moolenaar
06ca48a40f patch 8.2.3558: Vim9: asserting the wrong variable
Problem:    Vim9: asserting the wrong variable.
Solution:   Don't use Foo, use Goo.
2021-10-23 10:25:21 +01:00
Bram Moolenaar
5fe07d2e08 patch 8.2.3557: Vim9: cannot call imported funcref at script level
Problem:    Vim9: cannot call imported funcref at script level.
Solution:   Check for an imported function. (closes #9007)
2021-10-22 22:17:53 +01:00
Bram Moolenaar
841c225b9e patch 8.2.3556: filler lines are incorrect for other window in diff mode
Problem:    Filler lines are incorrect for other window in diff mode after
            making a change.
Solution:   Copy filler lines from the current window. (closes #8809)
2021-10-22 20:56:55 +01:00
=?UTF-8?q?Magnus=20Gro=C3=9F?=
25def2c8b8 patch 8.2.3555: ModeChanged is not triggered on every mode change
Problem:    ModeChanged is not triggered on every mode change.
Solution:   Also trigger on minor mode changes. (Maguns Gross, closes #8999)
2021-10-22 18:56:39 +01:00
DungSaga
a2ffb43520 patch 8.2.3554: xxd has various way to exit
Problem:    Xxd has various way to exit.
Solution:   Add function to print error and exit. (closes #9035)
2021-10-22 15:55:31 +01:00
Bram Moolenaar
5a5c111e79 patch 8.2.3553: xxd test fails on MS-Windows
Problem:    Xxd test fails on MS-Windows.
Solution:   Split shell command in two.
2021-10-22 15:11:37 +01:00
DungSaga
47810464aa patch 8.2.3552: xxd revert does not handle end of line correctly
Problem:    Xxd revert does not handle end of line correctly.
Solution:   Check for newline first. (closes #9034)
2021-10-22 12:55:42 +01:00
itchyny
94e7d345c1 patch 8.2.3551: checking first character of url twice
Problem:    Checking first character of url twice.
Solution:   Only check once. (closes #9026)
2021-10-21 18:01:13 +01:00
Shougo Matsushita
ae38a9db77 patch 8.2.3550: completion() does not work properly
Problem:    completion() does not work properly.
Solution:   Set xp_line and add WILD_HOME_REPLACE. (Shougo Matsushita,
            closes #9016)
2021-10-21 11:39:53 +01:00
zeertzjq
b811de5d49 patch 8.2.3549: mistakes in test comments
Problem:    Mistakes in test comments.
Solution:   Fix the comments. (closes #9029)
2021-10-21 10:50:44 +01:00
Bram Moolenaar
d68a004485 patch 8.2.3548: GTK GUI crashen when reading from stdin
Problem:    GTK GUI crashen when reading from stdin.
Solution:   Do not overwrite the NUL after the string. (closes #9028)
2021-10-20 23:08:11 +01:00
Bram Moolenaar
1d30fde3c9 patch 8.2.3547: opening the quickfix window triggers BufWinEnter twice
Problem:    Opening the quickfix window triggers BufWinEnter twice. (Yorick
            Peterse)
Solution:   Only trigger BufWinEnter with "quickfix". (closes #9022)
2021-10-20 21:58:42 +01:00
zeertzjq
09f7723d5a patch 8.2.3546: build failure without the +eval feature
Problem:    Build failure without the +eval feature.
Solution:   Add #ifdef. (closes #9025)
2021-10-20 17:21:24 +01:00
zeertzjq
94358a1e6e patch 8.2.3545: setcellwidths() may make 'listchars' or 'fillchars' invalid
Problem:    setcellwidths() may make 'listchars' or 'fillchars' invalid.
Solution:   Check the value and give an error. (closes #9024)
2021-10-20 11:01:15 +01:00
itchyny
051a40c8d9 patch 8.2.3544: Unix: may leak file descriptor using non-existing directory
Problem:    Unix: may leak file descriptor when using a non-existing
            directory.
Solution:   Always close the file. (closes #9023)
2021-10-20 10:00:05 +01:00
Bram Moolenaar
8b0e62c93b patch 8.2.3543: swapname has double slash when 'directory' ends in it
Problem:    Swapname has double slash when 'directory' ends in double slash.
            (Shane Smith)
Solution:   Remove the superfluous slash. (closes #8876)
2021-10-19 22:12:25 +01:00
Bram Moolenaar
c5935a859e patch 8.2.3542: too many comments are old style
Problem:    Too many comments are old style.
Solution:   Change comments to // style. (closes #9021)
2021-10-19 20:48:52 +01:00
Bram Moolenaar
731fba1081 patch 8.2.3541: compiler warning for unused variable in tiny version
Problem:    Compiler warning for unused variable in tiny version.
Solution:   Add #ifdef. (John Marriott)
2021-10-19 20:24:34 +01:00
Bram Moolenaar
f47ebf1e1a patch 8.2.3540: the mark '] is wrong after put with a count
Problem:    The mark '] is wrong after put with a count. (Naohiro Ono)
Solution:   Use the right line number. (closes #8956)
2021-10-19 20:08:45 +01:00
Bram Moolenaar
604e207e27 patch 8.2.3539: GTK3: with 'rightleft' set scrollbar may move unintentionally
Problem:    GTK3: with 'rightleft' set scrollbar may move unintentionally.
Solution:   Ignore events while moving the scrollbar thumb. (closes #8958)
2021-10-19 14:22:03 +01:00
Yegappan Lakshmanan
d43d8e28db patch 8.2.3538: else-if indenting is confusing
Problem:    Else-if indenting is confusing.
Solution:   Add curly brackets. (Yegappan Lakshmanan, closes #9017)
2021-10-19 13:44:52 +01:00
naohiro ono
75c30e96cf patch 8.2.3537: mode() does not return the right value in 'operatorfunc'
Problem:    mode() does not return the right value in 'operatorfunc'.
Solution:   Reset finish_op while calling 'operatorfunc'.
2021-10-19 11:15:41 +01:00
Yegappan Lakshmanan
ad6b90c33c patch 8.2.3536: the do_highlight() function is way too long
Problem:    The do_highlight() function is way too long.
Solution:   Split it into several functions. (Yegappan Lakshmanan,
            closes #9011)
2021-10-18 22:13:57 +01:00
Dominique Pelle
9b0b844d25 patch 8.2.3535: if-else indenting is confusing
Problem:    If-else indenting is confusing.
Solution:   Add curly brackets and indent. (Dominique Pellé, closes #9010)
2021-10-18 20:56:39 +01:00
Bram Moolenaar
944eeb44fb patch 8.2.3534: autoread test is a bit flaky
Problem:    Autoread test is a bit flaky.
Solution:   Wait a brief moment before overwriting the file.
2021-10-18 14:37:13 +01:00
DungSaga
375c35a63f patch 8.2.3533: inefficient code in xxd
Problem:    Inefficient code in xxd.
Solution:   Don't use "p" when "hextype" is non-zero. (closes #9013)
2021-10-18 13:16:03 +01:00
Bram Moolenaar
e08aee60ab patch 8.2.3532: the previous '' mark is restored after moving the cursor
Problem:    The previous '' mark is restored after moving the cursor to the
            original jump position. (Tony Chen)
Solution:   Forget the previous position after checking. (closes #8985)
2021-10-17 21:53:58 +01:00
Bram Moolenaar
39c47c3104 patch 8.2.3531: command line completion test fails on MS-Windows
Problem:    Command line completion test fails on MS-Windows.
Solution:   Do not test with "\{" on MS-Windows.
2021-10-17 18:05:26 +01:00
Bram Moolenaar
21c1a0c2f1 patch 8.2.3530: ":buf \{a}" fails while ":edit \{a}" works
Problem:    ":buf \{a}" fails while ":edit \{a}" works.
Solution:   Unescape "\{". (closes #8917)
2021-10-17 17:20:23 +01:00
Atsushi SUGAWARA
34a364877f patch 8.2.3529: xxd usage output is incomplete
Problem:    Xxd usage output is incomplete.
Solution:   Add "bytes" to "-g" flag. (Atsushi Sugawara, closes #8944)
2021-10-17 16:09:08 +01:00
Bram Moolenaar
f4d8b76d30 patch 8.2.3528: 'thesaurus' and 'thesaurusfunc' do not have the same scope
Problem:    'thesaurus' and 'thesaurusfunc' do not have the same scope.
Solution:   Make 'thesaurusfunc' global-local.
2021-10-17 14:13:09 +01:00
Bram Moolenaar
9d4b8caf9e patch 8.2.3527: gcc complains about uninitialized variable
Problem:    Gcc complains about uninitialized variable. (Tony Mechelynck)
Solution:   Initialize it.
2021-10-17 11:33:47 +01:00
Bram Moolenaar
40bd5a1540 patch 8.2.3526: tests have clumsy check for X11 based GUI
Problem:    Tests have clumsy check for X11 based GUI.
Solution:   Add CheckX11BasedGui.
2021-10-16 21:58:27 +01:00
Bram Moolenaar
d4c4bfa007 patch 8.2.3525: option variable name does not match option name
Problem:    Option variable name does not match option name. (Christ van
            Willigen)
Solution:   Rename the variable.
2021-10-16 21:14:11 +01:00
Dusan Popovic
4eeedc09fe patch 8.2.3524: GUI: ligatures are not used
Problem:    GUI: ligatures are not used.
Solution:   Add the 'guiligatures' option. (Dusan Popovic, closes #8933)
2021-10-16 20:52:05 +01:00
DungSaga
c89c91cafd patch 8.2.3523: duplicated code in xxd
Problem:    Duplicated code in xxd.
Solution:   Remove duplicated lines. (closes #8972)
2021-10-16 19:07:46 +01:00
Bram Moolenaar
93ff6720fe patch 8.2.3522: cannot use \x and \u when setting 'listchars'
Problem:    Cannot use \x and \u when setting 'listchars'.
Solution:   Support hex and unicode in hex form. (closes #9006)
2021-10-16 17:51:40 +01:00
Bram Moolenaar
abdcfd1c83 patch 8.2.3521: options completion test fails
Problem:    Options completion test fails.
Solution:   Add 'thesaurusfunc' to the results.
2021-10-16 16:48:27 +01:00
Yegappan Lakshmanan
160e994d76 patch 8.2.3520: cannot define a function for thesaurus completion
Problem:    Cannot define a function for thesaurus completion.
Solution:   Add 'thesaurusfunc'. (Yegappan Lakshmanan, closes #8987,
            closes 8950)
2021-10-16 15:41:29 +01:00
Bram Moolenaar
2286304cdb Update runtime files 2021-10-16 15:23:36 +01:00
Aman Verma
28b6a3bef6 patch 8.2.3519: TOML files are not recognized
Problem:    TOML files are not recognized.
Solution:   Add filetype patterns for TOML. (Aman Verma, closes #8984)
2021-10-16 13:44:04 +01:00
Bram Moolenaar
f08b0eb869 patch 8.2.3518: Test_xrestore sometimes fails
Problem:    Test_xrestore sometimes fails.
Solution:   Mark the test as flayky.  Move marking test as flaky to the test
            instead of listing them in runtest.
2021-10-16 13:00:14 +01:00
Christian Brabandt
db3b44640d patch 8.2.3517: TextChanged does not trigger after TextChangedI
Problem:    TextChanged does not trigger after TextChangedI.
Solution:   Store the tick separately for TextChangedI. (Christian Brabandt,
            closes #8968, closes #8932)
2021-10-16 11:58:55 +01:00
Milly
7b5f45be21 patch 8.2.3516: terminal window does not have transparent background
Problem:    Terminal window does not have transparent background when
            'termguicolors' is used.
Solution:   Fix the background color. (closes #2361, closes #9002)
2021-10-15 22:25:43 +01:00
ichizok
def69dffb3 patch 8.2.3515: nano time test fails on Mac and FreeBSD
Problem:    Nano time test fails on Mac and FreeBSD.
Solution:   Also check nano time when not on Linux. (Ozaki Kiichi,
            closes #9000)
2021-10-15 17:23:12 +01:00
Bram Moolenaar
eaa006dae3 patch 8.2.3514: autoread test with nano second time sometimes fails
Problem:    Autoread test with nano second time sometimes fails.
Solution:   Mark the test as being flaky.
2021-10-15 17:09:50 +01:00
Bram Moolenaar
a2cff1dbc9 patch 8.2.3513: using freed memory when using a timer and searching
Problem:    Using freed memory when using a timer and searching. (Dominique
            Pellé)
Solution:   Allocated mr_pattern.
2021-10-15 12:51:29 +01:00
Bram Moolenaar
accf4ed352 patch 8.2.3512: timestamp test fails on some systems
Problem:    Timestamp test fails on some systems.
Solution:   Sleep for a short while.
2021-10-15 00:38:02 +01:00
Bram Moolenaar
a06758dd38 patch 8.2.3511: Vim9: entry for loop variable is created every round
Problem:    Vim9: entry for loop variable is created every round.
Solution:   Only create the entry once. (closes #8996)
2021-10-15 00:18:37 +01:00
Leah Neukirchen
0a7984af56 patch 8.2.3510: changes are only detected with one second accuracy
Problem:    Changes are only detected with one second accuracy.
Solution:   Use the nanosecond time if possible.  (Leah Neukirchen,
            closes #8873, closes #8875)
2021-10-14 21:27:55 +01:00
Bram Moolenaar
340dd0fbe4 patch 8.2.3509: undo file is not synced
Problem:    Undo file is not synced. (Sami Farin)
Solution:   Sync the undo file if 'fsync' is set. (Christian Brabandt,
            closes #8879, closes #8920)
2021-10-14 17:52:23 +01:00
Bram Moolenaar
051a8a375f patch 8.2.3508: Vim9: bad separators for "g" and "s" insufficiently tested
Problem:    Vim9: bad separators for "g" and "s" insufficiently tested.
Solution:   Add a few more test cases.
2021-10-14 16:53:42 +01:00
Bram Moolenaar
75aa92a162 patch 8.2.3507: generating proto files may fail
Problem:    Generating proto files may fail.
Solution:   Define __attribute().
2021-10-14 16:27:19 +01:00
Bram Moolenaar
c0abac67d7 patch 8.2.3506: Vim9: special cases for "g" and "s" insufficiently tested
Problem:    Vim9: special cases for "g" and "s" insufficiently tested.
Solution:   Add a few more test cases.
2021-10-13 21:17:05 +01:00
Bram Moolenaar
3be69bf539 patch 8.2.3505: Vim9: build failure without the +eval feature
Problem:    Vim9: build failure without the +eval feature.
Solution:   Add #ifdef.
2021-10-13 15:37:15 +01:00
Bram Moolenaar
7f32092b91 patch 8.2.3504: Vim9: warning for signed vs unsigned
Problem:    Vim9: warning for signed vs unsigned.
Solution:   Add type cast.
2021-10-13 15:28:28 +01:00
Bram Moolenaar
7b82926892 patch 8.2.3503: Vim9: using g:pat:cmd is confusing
Problem:    Vim9: using g:pat:cmd is confusing.
Solution:   Do not recognize g: as the :global command.  Also for s:pat:repl.
            (closes #8982)
2021-10-13 15:04:34 +01:00
Bram Moolenaar
fff10d9a76 patch 8.2.3502: cannot enter password in shell command
Problem:    Cannot enter password in shell command.
Solution:   Revert patch 8.2.2919.
2021-10-13 10:05:30 +01:00
Eric Pruitt
e519eb41c1 patch 8.2.3501: tmux filetype dection is incomplete
Problem:    tmux filetype dection is incomplete
Solution:   Also use tmux for files having text after .conf. (Eric Pruitt,
            closes #8971)
2021-10-12 13:58:23 +01:00
Christian Brabandt
3a724290c5 patch 8.2.3500: Github CI fails to install clang
Problem:    Github CI fails to install clang.
Solution:   Install llvm-11 explicitly. (Christian Brabandt, closes #8993)
2021-10-12 12:02:49 +01:00
Bram Moolenaar
3d031a0ae7 patch 8.2.3499: GUI geometry startup test fails
Problem:    GUI geometry startup test fails.
Solution:   Check string values instead of numbers
2021-10-11 22:57:34 +01:00
James McCoy
37f341d723 patch 8.2.3498: recover test may fail on some systems
Problem:    Recover test may fail on some systems.
Solution:   Adjust the little endian and 64 bit detection. (James McCoy,
            closes #8941)
2021-10-11 21:04:37 +01:00
Dominique Pelle
a9173d06f7 patch 8.2.3497: put test fails when run by itself
Problem:    Put test fails when run by itself.
Solution:   Source check.vim. (Dominique Pellé, closes #8990)
2021-10-11 20:26:55 +01:00
James McCoy
a5d4f3b09d patch 8.2.3496: crypt test fails if xxd was not installed yet
Problem:    Crypt test fails on MS-Windows if xxd was not installed yet.
Solution:   Use the just built xxd executable if it exists. (James McCoy,
            closes #8929)
2021-10-11 16:27:03 +01:00
Bram Moolenaar
b376aa2da4 patch 8.2.3495: GUI geometry startup test fails on some systems
Problem:    GUI geometry startup test fails on some systems. (Drew Vogel)
Solution:   Add tolerance to the size check. (closes #8815)
2021-10-11 16:08:32 +01:00
Bram Moolenaar
b07626d4af patch 8.2.3494: illegal memory access in utf_head_off
Problem:    Illegal memory access in utf_head_off.
Solution:   Check cursor position when reselecting the Visual area.
            (closes #8963)
2021-10-11 15:40:43 +01:00
Bram Moolenaar
cddd5ac911 patch 8.2.3493: large count test fails on MS-Windows
Problem:    Large count test fails on MS-Windows.
Solution:   Skip the test on MS-Windows.
2021-10-10 13:54:01 +01:00
Bram Moolenaar
eeed1c7ae0 patch 8.2.3492: crash when pasting too many times
Problem:    Crash when pasting too many times.
Solution:   Limit the size to what fits in an int. (closes #8962)
2021-10-10 12:35:17 +01:00
Bram Moolenaar
6e77b88df6 patch 8.2.3491: xpm2 filetype dection is not so good
Problem:    xpm2 filetype dection is not so good.
Solution:   Adjust the check for xpm2. (closes #8914)
2021-10-09 16:29:43 +01:00
=?UTF-8?q?Dundar=20G=C3=B6c?=
3826c0513b patch 8.2.3490: superfluous return statements
Problem:    Superfluous return statements.
Solution:   Remove superfluous return statements from void functions.
            (closes #8977)
2021-10-09 15:39:25 +01:00
Bram Moolenaar
35a319b77f patch 8.2.3489: ml_get error after search with range
Problem:    ml_get error after search with range.
Solution:   Limit the line number to the buffer line count.
2021-10-09 13:58:55 +01:00
snxx
26190b2701 patch 8.2.3488: issue template is not easy to use
Problem:    Issue template is not easy to use.
Solution:   Use a yaml template. (closes #8928)
2021-10-09 12:50:20 +01:00
Bram Moolenaar
826bfe4bbd patch 8.2.3487: illegal memory access if buffer name is very long
Problem:    Illegal memory access if buffer name is very long.
Solution:   Make sure not to go over the end of the buffer.
2021-10-08 18:39:28 +01:00
Bram Moolenaar
cce81e9673 patch 8.2.3486: illegal memory access with invalid sequence of commands
Problem:    Illegal memory access with invalid sequence of commands.
Solution:   Do not call leave_block() when not in a try block. (closes #8966)
            Reset did_emsg so that exception is shown as an error.
2021-10-06 22:08:11 +01:00
Zdenek Dohnal
edd7a476fb patch 8.2.3485: Python 3 test fails with Python 3.10
Problem:    Python 3 test fails with Python 3.10.
Solution:   Adjust expected error message. (zdohnal Dohnal, closes #8969)
2021-10-06 19:39:16 +01:00
Bram Moolenaar
e275ba4fc9 patch 8.2.3484: crash when going through spell suggestions
Problem:    Crash when going through spell suggestions.
Solution:   Limit the text length for finding suggestions to the original
            length.  Do not update buffers when exiting. (closes #8965)
2021-10-06 13:41:07 +01:00
Bram Moolenaar
e2982d6911 patch 8.2.3483: #ifdef for using sysinfo() is incomplete
Problem:    #ifdef for using sysinfo() is incomplete.
Solution:   Also check for HAVE_SYSINFO. Make autoconf check use TRY_LINK.
            (closes #8952)
2021-10-06 11:27:21 +01:00
Bram Moolenaar
78e0fa4cf4 patch 8.2.3482: reading beyond end of line ending in quote and backslash
Problem:    Reading beyond end of line ending in quote and backslash.
Solution:   Check for non-NUL after backslash. (closes #8964)
2021-10-05 21:58:53 +01:00
James McCoy
2e258bd79f patch 8.2.3481: failures when char is unsigned
Problem:    Failures when char is unsigned.
Solution:   Use int8_T.  Make a CI run with unsigned char. (James McCoy,
            closes #8936)
2021-10-05 19:44:04 +01:00
Dominique Pelle
949de97da3 patch 8.2.3480: test does not fail without the fix for a crash
Problem:    Test does not fail without the fix for a crash.
Solution:   Write the bad code in a file and source it. (Dominique Pellé,
            closes #8961)
2021-10-05 19:28:01 +01:00
Bram Moolenaar
7c25a7c0a1 patch 8.2.3479: crash when calling job_start with an invalid argument
Problem:    Crash when calling job_start with an invalid argument. (Virginia
            Senioria)
Solution:   Clear the first item in argv. (closes #8957)
2021-10-05 19:19:35 +01:00
Bram Moolenaar
f67d3fb736 patch 8.2.3478: still crash with error in :catch and also in :finally
Problem:    Still crash with error in :catch and also in :finally.
Solution:   Only call finish_exception() once. (closes #8954)
2021-10-05 11:22:27 +01:00
Bram Moolenaar
6d19798774 patch 8.2.3477: startup test fails on MS-Windows
Problem:    Startup test fails on MS-Windows.
Solution:   Skip the test if not on Unix.
2021-10-05 01:19:53 +01:00
Bram Moolenaar
d3710cf01e patch 8.2.3476: renaming a buffer on startup may cause using freed memory
Problem:    Renaming a buffer on startup may cause using freed memory.
Solution:   Check if the buffer is used in a window. (closes #8955)
2021-10-04 23:13:13 +01:00
kuuote
08d7b1c828 patch 8.2.3475: expression register set by not executed put command
Problem:    Expression register set by not executed put command.
Solution:   Do not set the register if the command is skipped. (closes #8909)
2021-10-04 22:17:36 +01:00
h-east
965d2edbce patch 8.2.3474: some places use "Vimscript" instead of "Vim script"
Problem:    Some places use "Vimscript" instead of "Vim script".
Solution:   Consistently use "Vim script". (Hirohito Higashi, closes #8910)
2021-10-04 21:51:57 +01:00
Bram Moolenaar
6e64922492 Update runtime files 2021-10-04 21:32:54 +01:00
Bram Moolenaar
78aa5ffe31 patch 8.2.3473: some files with tcl syntax are not recognized
Problem:    Some files with tcl syntax are not recognized.
Solution:   Add a few file patterns. (Doug Kearns
2021-10-04 20:41:45 +01:00
Bram Moolenaar
9af9fd6ab6 patch 8.2.3472: other crashes with empty search pattern not tested
Problem:    Other crashes with empty search pattern not tested.
Solution:   Add a few more test lines. (Dominique Pellé)
2021-10-04 20:09:19 +01:00
Bram Moolenaar
d8d957de86 patch 8.2.3471: crash when using CTRL-T after an empty search pattern
Problem:    Crash when using CTRL-T after an empty search pattern.
Solution:   Bail out when there is no previous search pattern. (closes #8953)
2021-10-04 19:47:35 +01:00
Bram Moolenaar
a684a68409 patch 8.2.3470: crash with error in :catch and also in :finally
Problem:    Crash with error in :catch and also in :finally.
Solution:   Only discard an exception if there is one. (closes #8954)
2021-10-04 18:52:19 +01:00
Bram Moolenaar
50c5689342 patch 8.2.3469: some files with json syntax are not recognized
Problem:    Some files with json syntax are not recognized.
Solution:   Add a few file patterns. (Emiliano Ruiz Carletti, closes #8947)
2021-10-03 20:11:20 +01:00
Bram Moolenaar
c6376c7984 patch 8.2.3468: problem with :cd when editing file in non-existent directory
Problem:    Problem with :cd when editing file in non-existent directory. (Yee
            Cheng Chin)
Solution:   Prepend the current directory to get the full path. (closes #8903)
2021-10-03 19:29:48 +01:00
Bram Moolenaar
5a9357d0bf patch 8.2.3467: CursorHoldI event interferes with "CTRL-G U"
Problem:    CursorHoldI event interferes with "CTRL-G U". (Naohiro Ono)
Solution:   Restore the flag for "CTRL-G U" after triggering CursorHoldI.
            (closes #8937)
2021-10-03 16:22:05 +01:00
zeertzjq
cc8cd44533 patch 8.2.3466: completion submode not indicated for virtual replace
Problem:    Completion submode not indicated for virtual replace.
Solution:   Add submode to "Rv". (closes #8945)
2021-10-03 15:19:14 +01:00
zeertzjq
27fef59dd1 patch 8.2.3465: cannot detect insert scroll mode
Problem:    Cannot detect insert scroll mode.
Solution:   Add "scroll" to complete_info(). (closes #8943)
2021-10-03 12:01:27 +01:00
Chris Aumann
8b8c0ed657 patch 8.2.3464: nginx files are not recognized
Problem:    nginx files are not recognized.
Solution:   Add several file patterns. (Chris Aumann, closes #8922)
2021-10-03 11:46:09 +01:00
Bram Moolenaar
72d2fa69e5 patch 8.2.3463: pattern matching with ModeChanged not tested
Problem:    Pattern matching with ModeChanged not tested.
Solution:   Add a few more test lines. (issue #8856)
2021-10-02 21:48:15 +01:00
Bram Moolenaar
d85931e673 patch 8.2.3462: ModeChanged only uses one character for new_mode and old_mode
Problem:    The ModeChanged event only uses one character for the new_mode and
            old_mode values.
Solution:   Pass one as first argument to mode(). (issue #8856)
2021-10-02 16:55:39 +01:00
Bram Moolenaar
72406a4bd2 patch 8.2.3461: cannot distinguish Normal and Terminal-Normal mode
Problem:    Cannot distinguish Normal and Terminal-Normal mode.
Solution:   Make mode() return "nt" for Terminal-Normal mode. (issue #8856)
2021-10-02 16:34:55 +01:00
=?UTF-8?q?Dundar=20G=C3=B6c?=
dfa5e464d4 patch 8.2.3460: some type casts are not needed
Problem:    Some type casts are not needed.
Solution:   Remove unnecessary type casts. (closes #8934)
2021-10-02 11:26:51 +01:00
Yegappan Lakshmanan
51491adfa8 patch 8.2.3459: Vim9: need more tests for empty string arguments
Problem:    Vim9: need more tests for empty string arguments.
Solution:   Add more tests.  Also use empty argument with menu_info() to get
            the top-level menu names. (Yegappan Lakshmanan, closes #8925)
2021-09-30 19:00:00 +01:00
Bram Moolenaar
be01090efa patch 8.2.3458: not all dictdconf files are recognized
Problem:    Not all dictdconf files are recognized.
Solution:   Adjust the pattern. (Doug Kearns)
2021-09-26 22:11:52 +01:00
Bram Moolenaar
b16ff292ad patch 8.2.3457: MS-Windows Vim9: test executed and fails
Problem:    MS-Windows Vim9: test executed and fails.
Solution:   Add extra check for not being on MS-Windows.
2021-09-26 20:14:39 +01:00
Yegappan Lakshmanan
f8dbd58666 patch 8.2.3456: Vim9: not all functions are tested with empty string argument
Problem:    Vim9: Not all functions are tested with an empty string argument.
Solution:   Add tests with empty strings. (Yegappan Lakshmanan, closes #8915)
2021-09-26 19:04:05 +01:00
Bram Moolenaar
56858e4ed4 patch 8.2.3455: using a count with "gp" leaves '] in wrong position
Problem:    Using a count with "gp" leaves '] in wrong position. (Naohiro Ono)
Solution:   Correct the mark position. (closes #8899)
2021-09-22 16:43:59 +02:00
Bram Moolenaar
23003e51e1 patch 8.2.3454: using a count with "gp" leave cursor in wrong position
Problem:    Using a count with "gp" leave cursor in wrong position. (Naohiro
            Ono)
Solution:   Count the inserted lines. (closes #8899)
2021-09-22 16:37:07 +02:00
Bram Moolenaar
40fa12aea3 patch 8.2.3453: autocmd not executed when editing a directory
Problem:    Autocmd not executed when editing a directory ending in a path
            separator inside try block.
Solution:   Return NOTDONE instead of FAIL. (closes #8885)
2021-09-22 14:18:13 +02:00
Bram Moolenaar
da0b497c6e Correct Spanish translations 2021-09-21 21:04:01 +02:00
Bram Moolenaar
34cc7d8c03 Update runtime files 2021-09-21 20:09:51 +02:00
Steven Penny
690c524ce6 patch 8.2.3452: MPD files are not recognized
Problem:    MPD files are not recognized.
Solution:   Recognize MPD files as XML. (Steven Penny, closes #8893)
2021-09-21 19:37:01 +02:00
Zdenek Dohnal
770ddbe159 patch 8.2.3451: not all apache files are recognized
Problem:    Not all apache files are recognized.
Solution:   Adjust the filetype pattern. (Zdenek Dohnal, closes #8882)
2021-09-20 20:57:31 +02:00
Bram Moolenaar
18fefddcb0 patch 8.2.3450: coveralls action fails
Problem:    Coveralls action fails.
Solution:   Disable it for now.
2021-09-19 17:55:16 +02:00
Yasuhiro Matsumoto
c04f62346b patch 8.2.3449: sort fails if the sort compare function returns 999
Problem:    Sort fails if the sort compare function returns 999.
Solution:   Adjust value to -1 / 0 / 1. (Yasuhiro Matsumoto, closes #8884)
2021-09-19 17:01:39 +02:00
Bram Moolenaar
1d34189ecb patch 8.2.3448: :endtry after function call that throws not found
Problem:    :endtry after function call that throws not found.
Solution:   Do check for following :endtry if an exception is being thrown.
            (closes #8889)
2021-09-18 15:25:52 +02:00
Yegappan Lakshmanan
d2b98ab4ec patch 8.2.3447: a couple of declarations are not ANSI C
Problem:    A couple of declarations are not ANSI C.
Solution:   Put argument type inside (). (Yegappan Lakshmanan, closes #8890)
2021-09-18 12:15:08 +02:00
Yegappan Lakshmanan
820d5525ca patch 8.2.3446: not enough tests for empty string arguments
Problem:    Not enough tests for empty string arguments.
Solution:   Add tests, fix type check. (Yegappan Lakshmanan, closes #8881)
2021-09-17 21:07:35 +02:00
Bram Moolenaar
542ffe16a1 patch 8.2.3445: on Solaris longVersion may be declared twice
Problem:    On Solaris longVersion may be declared twice. (Vladimir Marek)
Solution:   Always declare longVersion in version.c
2021-09-17 20:45:30 +02:00
Bram Moolenaar
644b49fa0f patch 8.2.3444: concealed text not revealed when leaving insert mode
Problem:    concealed text not revealed when leaving insert mode. (Michael
            Soyka)
Solution:   Check if concealing changed when leaving insert mode.
            (closes #8880)
2021-09-16 22:32:15 +02:00
Bram Moolenaar
3dfe2e0fb8 patch 8.2.3443: Vim9: memory leak when and/or fails
Problem:    Vim9: memory leak when and/or fails.
Solution:   Also clear the growarray when the length is zero.
2021-09-16 20:14:51 +02:00
Bram Moolenaar
1a7ee4dd11 patch 8.2.3442: Vim9: || and && are not handled at compile time
Problem:    Vim9: || and && are not handled at compile time when possible.
Solution:   When using constants generate fewer instructions.
2021-09-16 16:15:07 +02:00
Christian Brabandt
ee2cbcd99c patch 8.2.3441: MS-Windows: vimtutor can't handle path with spaces
Problem:    MS-Windows: vimtutor can't handle path with spaces.
Solution:   Add double quotes. (Christian Brabandt, closes #8871)
2021-09-15 12:53:40 +02:00
Bram Moolenaar
f2a8bafa4b patch 8.2.3440: recover test fails if there is an old swap file
Problem:    Recover test fails if there is an old swap file.
Solution:   Delete old swap files.
2021-09-14 22:58:23 +02:00
Christian Brabandt
78eb9cce91 patch 8.2.3439: deleted lines go to wrong yank register
Problem:    Deleted lines go to wrong yank register.
Solution:   Reset y_append when not calling get_yank_register(). (Christian
            Brabandt, closes #8872)
2021-09-14 18:55:51 +02:00
Yegappan Lakshmanan
5dfe467432 patch 8.2.3438: cannot manipulate blobs
Problem:    Cannot manipulate blobs.
Solution:   Add blob2list() and list2blob(). (Yegappan Lakshmanan,
            closes #8868)
2021-09-14 17:54:30 +02:00
Mike Williams
f5785cf059 patch 8.2.3437: compiler warnings for 32/64 bit usage
Problem:    Compiler warnings for 32/64 bit usage.
Solution:   Add type casts. (Mike Williams, closes #8870)
2021-09-13 22:17:38 +02:00
Bram Moolenaar
a29856fcdc patch 8.2.3436: check for optional bool type has confusing return type
Problem:    Check for optional bool type has confusing return type.
Solution:   Explicitly return OK.
2021-09-13 21:36:27 +02:00
Bram Moolenaar
b1b6f4de2b patch 8.2.3435: Vim9: dict is not passed to dict function
Problem:    Vim9: dict is not passed to dict function.
Solution:   Keep the dict used until a function call.
2021-09-13 18:25:54 +02:00
Bram Moolenaar
28e591dd50 patch 8.2.3434: function prototype for trigger_modechanged() is incomplete
Problem:    Function prototype for trigger_modechanged() is incomplete.
Solution:   Add "void".
2021-09-12 21:00:14 +02:00
Bram Moolenaar
bdcba24d85 patch 8.2.3433: :delcommand does not take a -buffer option
Problem:    :delcommand does not take a -buffer option.
Solution:   Add the -buffer option.
2021-09-12 20:58:02 +02:00
Bram Moolenaar
ca0627df69 patch 8.2.3432: octave/Matlab filetype detection does not work properly
Problem:    Octave/Matlab filetype detection does not work properly.
Solution:   Update the patterns used for matching. (Doug Kearns)
2021-09-12 17:03:08 +02:00
naohiro ono
dfe04dbff5 patch 8.2.3431: completion for :disas sorts local functions first
Problem:    Completion for :disas sorts local functions first.
Solution:   Sort local functions last, like with :delfunc. (Naohiro Ono,
            closes #8860)
2021-09-12 15:45:10 +02:00
=?UTF-8?q?Magnus=20Gro=C3=9F?=
f1e8876fa2 patch 8.2.3430: no generic way to trigger an autocommand on mode change
Problem:    No generic way to trigger an autocommand on mode change.
Solution:   Add the ModeChanged autocommand event. (Magnus Gross, closes #8856)
2021-09-12 13:39:55 +02:00
Bram Moolenaar
464393a696 patch 8.2.3429: leaking memory when assigning to list or dict
Problem:    Leaking memory when assigning to list or dict.
Solution:   Free the list or dict type before overwriting it.
2021-09-11 23:07:44 +02:00
Bram Moolenaar
35a9a00afc patch 8.2.3428: using freed memory when replacing
Problem:    Using freed memory when replacing. (Dhiraj Mishra)
Solution:   Get the line pointer after calling ins_copychar().
2021-09-11 21:14:20 +02:00
Bram Moolenaar
b3bf33a7b2 patch 8.2.3427: double free when list is copied
Problem:    Double free when list is copied.
Solution:   Allocate the type when making a copy. (closes #8862)
            Clear the type for flattennew().  Avoid a memory leak when
            flattennew() fails.
2021-09-11 20:20:38 +02:00
Bram Moolenaar
4b4b1b84ee patch 8.2.3426: crash when deleting a listener in a listener callback
Problem:    Crash when deleting a listener in a listener callback. (Naohiro
            Ono)
Solution:   Mark the listener and delete it later.
2021-09-11 15:06:44 +02:00
Bram Moolenaar
56e14698b4 patch 8.2.3425: warning for using uninitialized variable
Problem:    Warning for using uninitialized variable.
Solution:   Initialize it. (John Marriott)
2021-09-11 12:15:09 +02:00
zeertzjq
f14b8ba137 patch 8.2.3424: a sequence of spaces is hard to see in list mode
Problem:    A sequence of spaces is hard to see in list mode.
Solution:   Add the "multispace" option to 'listchars'. (closes #8834)
2021-09-10 16:58:30 +02:00
Bram Moolenaar
07802044b9 patch 8.2.3423: Vim9: list += list creates a new list in :def function
Problem:    Vim9: list += list creates a new list in :def function.
Solution:   Append to the existing list.
2021-09-09 23:01:14 +02:00
Bram Moolenaar
efc084e335 patch 8.2.3422: Vim9: no failure if return type differs from returned var
Problem:    Vim9: no failure if return type differs from returned variable.
Solution:   Copy type when copying a list. (closes #8847)
2021-09-09 22:30:52 +02:00
Bram Moolenaar
6c391a74fe Update runtime files 2021-09-09 21:55:11 +02:00
Dominique Pelle
d176ca3dde patch 8.2.3421: a bit of code is not covered by tests
Problem:    A bit of code is not covered by tests.
Solution:   Add a few more test cases. (Dominique Pellé, closes #8857)
2021-09-09 20:45:34 +02:00
Christian Brabandt
6b9efdde78 patch 8.2.3420: _REENTRANT defined more than once
Problem:    _REENTRANT defined more than once.
Solution:   Fix configure script. (Christian Brabandt, closes #8852)
2021-09-09 17:14:50 +02:00
Bram Moolenaar
0325d3967c patch 8.2.3419: a failing debug expression may make Vim unusable
Problem:    A failing debug expression may make Vim unusable.
Solution:   Suppress error messages. (closes #8848)
2021-09-09 12:34:19 +02:00
Christian Brabandt
070ac3433b patch 8.2.3418: garbage collection while evaluating may cause trouble
Problem:    Garbage collection while evaluating may cause trouble.
Solution:   Disable garbage collection while evaluating an expression.
            (Christian Brabandt, issue #8848)
2021-09-09 12:12:03 +02:00
Bram Moolenaar
072f1c6888 patch 8.2.3417: Vim9: a failing debug expression aborts script sourcing
Problem:    Vim9: a failing debug expression aborts script sourcing.
Solution:   Do not let expression failure abort script sourcing. (closes #8848)
2021-09-08 20:40:34 +02:00
Bram Moolenaar
36f691f5f1 patch 8.2.3416: second error is reported while exception is being thrown
Problem:    Second error is reported while exception is being thrown.
Solution:   Do not check for trailing characters when already aborting.
            (closes #8842)
2021-09-08 15:33:30 +02:00
Yegappan Lakshmanan
fc3b775055 patch 8.2.3415: Vim9: not all function argument types are properly checked
Problem:    Vim9: Not all function argument types are properly checked.
Solution:   Add and improve argument type checks. (Yegappan Lakshmanan,
            closes #8839)
2021-09-08 14:57:42 +02:00
Bram Moolenaar
80c88eac5a patch 8.2.3414: fullcommand() gives wrong name with buffer-local user command
Problem:    fullcommand() gives the wrong name if there is a buffer-local user
            command. (Naohiro Ono)
Solution:   Use a separate function to get the user command name.
            (closes #8840)
2021-09-08 14:29:46 +02:00
Bram Moolenaar
a9e3d56087 patch 8.2.3413: Vim9: too many characters are allowed in import name
Problem:    Vim9: too many characters are allowed in import name.
Solution:   Disallow ':' and '#', check for white space. (closes #8845)
2021-09-08 12:31:35 +02:00
Bram Moolenaar
af2d5d2ce2 patch 8.2.3412: Vim9: importing the wrong file
Problem:    Vim9: importing the wrong file.
Solution:   Correct the file name.  Delete the file afterwards.
2021-09-07 22:35:34 +02:00
Bram Moolenaar
6853c38b78 patch 8.2.3411: Vim9: crash when using base name of import
Problem:    Vim9: crash when using base name of import. (Naohiro Ono)
Solution:   Check the import flags. (closes #8843)
2021-09-07 22:12:19 +02:00
Bram Moolenaar
89a54b413a patch 8.2.3410: crash with linebreak, listchars and large tabstop
Problem:    Crash with linebreak, listchars and large tabstop.
Solution:   Account for different size listchars for a tab. (closes #8841)
2021-09-07 20:45:31 +02:00
Bram Moolenaar
65b6056659 patch 8.2.3409: reading beyond end of line with invalid utf-8 character
Problem:    Reading beyond end of line with invalid utf-8 character.
Solution:   Check for NUL when advancing.
2021-09-07 19:26:53 +02:00
Bram Moolenaar
ddfc05100a patch 8.2.3408: can delete a numbered function
Problem:    Can delete a numbered function. (Naohiro Ono)
Solution:   Disallow deleting a numbered function. (closes #8760)
2021-09-06 20:56:56 +02:00
Bram Moolenaar
3b31851356 patch 8.2.3407: using uninitialized memory with "let g:['bar'] = 2"
Problem:    Using uninitialized memory with "let g:['bar'] = 2".
Solution:   Initialize v_type of a new dict item.
2021-09-06 19:19:45 +02:00
Bram Moolenaar
3ae5fc9a6a patch 8.2.3406: on some systems tests fail without _REENTRANT
Problem:    On some systems tests fail without _REENTRANT. (Elimar
            Riesebieter)
Solution:   Add -D_REENTRANT in configure. (closes #7402)
2021-09-06 18:57:30 +02:00
Bram Moolenaar
ec1b0968aa patch 8.2.3405: cannot have a comment line in a {} block of a user command
Problem:    Cannot have a comment line in a {} block of a user command.
Solution:   Continue after the line break. (closes #8837)
2021-09-06 17:10:59 +02:00
Bram Moolenaar
01dd6c3732 patch 8.2.3404: Vim9: no error for white space before "("
Problem:    Vim9: no error for white space before "(".
Solution:   Give an error, like in a compiled function.
2021-09-05 16:36:23 +02:00
Bram Moolenaar
2ddb89f8a9 patch 8.2.3403: memory leak for :retab with invalid argument
Problem:    Memory leak for :retab with invalid argument.
Solution:   Free the memory.  Make error messages consistent.
2021-09-04 21:20:41 +02:00
Bram Moolenaar
b7081e135a patch 8.2.3402: invalid memory access when using :retab with large value
Problem:    Invalid memory access when using :retab with large value.
Solution:   Check the number is positive.
2021-09-04 18:47:28 +02:00
Bram Moolenaar
10c83dde55 patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()
Problem:    Vim9: cannot use a negative count with finddir() and findfile().
Solution:   Adjust the return type. (closes #8776)
2021-09-04 14:49:56 +02:00
Dominique Pelle
7f2dd1e90c patch 8.2.3400: ":z!" is not supported
Problem:    ":z!" is not supported.
Solution:   Make ":z!" work and add tests. (Dominique Pellé, closes #8836)
            Use display height instead of current window height.
2021-09-04 13:44:01 +02:00
Bram Moolenaar
deba5eb195 patch 8.2.3399: Octave files are not recognized
Problem:    Octave files are not recognized.
Solution:   Detect Octave files. (Doug Kearns)
2021-09-03 19:21:36 +02:00
Dominique Pelle
af631f61bc patch 8.2.3398: html text objects are not fully tested
Problem:    Html text objects are not fully tested.
Solution:   Add tests for dbcs encoding and different number of backslashes.
            (Dominique Pellé, closes #8831)
2021-09-03 16:50:16 +02:00
Yegappan Lakshmanan
03d257998b patch 8.2.3397: no test for what 8.2.3391 fixes
Problem:    No test for what 8.2.3391 fixes.
Solution:   Add a test. (Yegappan Lakshmanan, closes #8828)
2021-09-02 20:05:26 +02:00
Bram Moolenaar
87e1587b8a patch 8.2.3396: when libcall() fails invalid pointer may be used
Problem:    When libcall() fails invalid pointer may be used.
Solution:   Initialize the string to NULL. (Yasuhiro Matsumoto, closes #8829)
2021-09-02 19:53:07 +02:00
Bram Moolenaar
26a4484da2 patch 8.2.3395: Vim9: expression breakpoint not checked in :def function
Problem:    Vim9: expression breakpoint not checked in :def function.
Solution:   Always compile a function for debugging if there is an expression
            breakpoint. (closes #8803)
2021-09-02 18:49:06 +02:00
Bram Moolenaar
04626c243c patch 8.2.3394: filler lines are wrong when changing text in diff mode
Problem:    Filler lines are wrong when changing text in diff mode.
Solution:   Don't change the filler lines on every change.  Check
            scrollbinding when updating the filler lines. (closes #8809)
2021-09-01 16:02:07 +02:00
Bram Moolenaar
6631597452 patch 8.2.3393: escaping for fish shell is skipping some characters
Problem:    Escaping for fish shell is skipping some characters.
Solution:   Escape character after backslash if needed. (Jason Cox,
            closes #8827)
2021-09-01 14:31:51 +02:00
Bram Moolenaar
b4d82e2a8d patch 8.2.3392: augroup completion escapes regexp pattern characters
Problem:    augroup completion escapes regexp pattern characters.
Solution:   Do not escape the augroup name. (closes #8826)
2021-09-01 13:03:39 +02:00
Bram Moolenaar
20e0c3d27b patch 8.2.3391: crash with combination of 'linebreak' and other options
Problem:    Crash with combination of 'linebreak' and other options.
Solution:   Avoid n_extra to become negative. (Christian Brabandt,
            closes #8817)
2021-08-31 20:57:55 +02:00
Christian Brabandt
ba02e4720f patch 8.2.3390: included xdiff code is outdated
Problem:    Included xdiff code is outdated.
Solution:   Sync with xdiff in git 2.33. (Christian Brabandt, closes #8431)
2021-08-31 20:46:39 +02:00
zeertzjq
dca29d9cf4 patch 8.2.3389: cannot stop insert mode completion without side effects
Problem:    Cannot stop insert mode completion without side effects.
Solution:   Add CTRL-X CTRL-Z. (closes #8821)
2021-08-31 19:12:51 +02:00
Bram Moolenaar
4eaef9979f patch 8.2.3388: fnamemodify('path/..', ':p') differs from using 'path/../'
Problem:    fnamemodify('path/..', ':p') differs from using 'path/../'.
Solution:   Include the "/.." in the directory name. (closes #8808)
2021-08-30 21:26:16 +02:00
Dominique Pelle
de05ae7158 patch 8.2.3387: compiler warning for non-static function
Problem:    Compiler warning for non-static function.
Solution:   Make the function static. (Dominique Pellé, closes #8816)
2021-08-30 19:57:34 +02:00
Dominique Pelle
a918712626 patch 8.2.3386: using uninitialized memory
Problem:    Using uninitialized memory.
Solution:   Initialize the rm_ic field. (Dominique Pellé, closes #8800)
2021-08-29 22:12:56 +02:00
Bram Moolenaar
89a9c159f2 Update runtime files 2021-08-29 21:55:35 +02:00
Jason Cox
6e82351130 patch 8.2.3385: escaping for fish shell does not work properly
Problem:    Escaping for fish shell does not work properly.
Solution:   Insert a backslash before a backslash. (Jason Cox, closes #8810)
2021-08-29 12:36:49 +02:00
Hu Jialun
9dcd349ca8 patch 8.2.3384: cannot disable modeline for an individual file
Problem:    Cannot disable modeline for an individual file.
Solution:   Recognize "nomodeline" in a modeline. (Hu Jialun, closes #8798)
2021-08-28 20:42:50 +02:00
naohiro ono
9aecf79c45 patch 8.2.3383: Vim9: completion for :disassemble adds parenthesis
Problem:    Vim9: completion for :disassemble adds parenthesis.
Solution:   Don't add parenthesis. (Naohiro Ono, closes #8802)
2021-08-28 15:56:06 +02:00
Bram Moolenaar
c8103b4c25 patch 8.2.3382: crash when getting the type of a NULL partial
Problem:    Crash when getting the type of a NULL partial.
Solution:   Check for NULL. (closes #8260)
2021-08-28 14:58:44 +02:00
Bram Moolenaar
5c56da4de8 patch 8.2.3381: crash when using NULL list with sign functions
Problem:    Crash when using NULL list with sign functions.
Solution:   Handle a NULL list like an empty list. (issue #8260)
2021-08-28 14:42:25 +02:00
Bram Moolenaar
60b6e6f6cc patch 8.2.3380: crash when using NULL string for funcref()
Problem:    Crash when using NULL string for funcref().
Solution:   Check for NULL argument. (issue #8260)
2021-08-28 12:49:27 +02:00
Bram Moolenaar
271906bc06 patch 8.2.3379: crash when using NULL job
Problem:    Crash when using NULL job.
Solution:   Copy static string into buffer. (issue #8260)
2021-08-28 12:30:12 +02:00
Albert Liu
6024c0427c patch 8.2.3378: MS-Windows: completing environment variables with % is wrong
Problem:    MS-Windows: completing environment variables with % is wrong.
Solution:   Only complete environment variables with $. (Albert Liu,
            closes #8791)
2021-08-27 20:59:35 +02:00
Bram Moolenaar
47016f5772 patch 8.2.3377: Vim9: :disass completion does not understand "s:"
Problem:    Vim9: :disass completion does not understand "s:".
Solution:   Expand "s:" to a pattern. (closes #8780)
2021-08-26 16:39:58 +02:00
Bram Moolenaar
4799cef85c patch 8.2.3376: Vim9: no warning that "@r" does not do anything
Problem:    Vim9: no warning that "@r" does not do anything.
Solution:   Give a "no effect" error. (closes #8779)
2021-08-25 22:37:36 +02:00
Bram Moolenaar
df9070e300 patch 8.2.3375: using uninitialized memory
Problem:    Using uninitialized memory.
Solution:   Initialize textprop_save_len.
2021-08-25 17:31:37 +02:00
Bram Moolenaar
eb05d05f8a patch 8.2.3374: Pyret files are not recognized
Problem:    Pyret files are not recognized.
Solution:   Recognize .arr files as Pyret. (Doug Kearns)
2021-08-25 17:10:39 +02:00
Bram Moolenaar
49b93049c6 patch 8.2.3373: text property test fails on MS-Windows
Problem:    text property test fails on MS-Windows.
Solution:   Set fileformat to "unix"
2021-08-25 17:02:00 +02:00
Bram Moolenaar
cdd8a5e6fe patch 8.2.3372: line2byte() value wrong when adding a text property
Problem:    line2byte() value wrong when adding a text property. (Yuto Kimura)
Solution:   Adjust length for text property. (closes #8772)  Also fix it for
            deleting a line.
2021-08-25 16:40:03 +02:00
Bram Moolenaar
5ca5cc6412 patch 8.2.3371: Vim9: :$ENV cannot be followed by ->func() in next line
Problem:    Vim9: :$ENV cannot be followed by ->func() in next line.
Solution:   Use "$ENV" as the start of an expression. (closes #8790)
2021-08-24 21:56:03 +02:00
Bram Moolenaar
60faf8656e patch 8.2.3370: Vim9: no check for white space before type in declaration
Problem:    Vim9: no check for white space before type in declaration.
            (Naohiro Ono)
Solution:   Check for white space like in a compiled function. (closes #8785)
2021-08-23 22:22:45 +02:00
Bram Moolenaar
6b36d2a16d patch 8.2.3369: auto formatting after "cw" leaves cursor in wrong spot
Problem:    Auto formatting after "cw" leaves cursor in wrong spot.
Solution:   Do not auto-format after the delete. (closes #8789)
2021-08-23 21:19:01 +02:00
Bram Moolenaar
9cd91a1e88 patch 8.2.3368: not all Racket files are recognized
Problem:    Not all Racket files are recognized.
Solution:   Also recognize .rktl and .rktd files. (Doug Kearns)
2021-08-23 20:48:43 +02:00
Bram Moolenaar
73170917f1 patch 8.2.3367: Vim9: :@r executing a register is inconsistent
Problem:    Vim9: :@r executing a register is inconsistent.
Solution:   Use "@r" as the start of an expression. (issue #8779)
2021-08-22 22:44:11 +02:00
Bram Moolenaar
093165c899 patch 8.2.3366: Vim9: debugging elseif does not stop before condition
Problem:    Vim9: debugging elseif does not stop before condition.
Solution:   Move debug statement to after the jump. (closes #8781)
2021-08-22 13:35:31 +02:00
Bram Moolenaar
bf5f287833 patch 8.2.3365: Vim9: cannot use option for all operations
Problem:    Vim9: cannot use option for all operations.
Solution:   Recognize more operations. (closes #8779)
2021-08-21 20:50:35 +02:00
rbtnn
bebf06954e patch 8.2.3364: Vim9: crash when :for is skipped
Problem:    Vim9: crash when :for is skipped.
Solution:   Skip more code generation. (Naruhiko Nishino, closes #8777)
2021-08-21 17:26:50 +02:00
Bram Moolenaar
b8bd2e6eba patch 8.2.3363: when :edit reuses the current buffer the alternate file is set
Problem:    When :edit reuses the current buffer the alternate file is set to
            the same buffer.
Solution:   Only set the alternate file when not reusing the buffer.
            (closes #8783)
2021-08-21 17:13:14 +02:00
Gregory Anders
489d60996d patch 8.2.3362: buffer overflow when completing long tag name
Problem:    Buffer overflow when completing long tag name.
Solution:   Allocate the buffer dynamically. (Gregory Anders, closes #8769)
2021-08-21 16:21:19 +02:00
rbtnn
d895b1d918 patch 8.2.3361: Vim9: crash with nested :while
Problem:    Vim9: crash with nested :while.
Solution:   Handle skipping better. (Naruhiko Nishino, closes #8778)
2021-08-20 20:54:25 +02:00
naohiro ono
5aec755b67 patch 8.2.3360: user function completion fails with dict function
Problem:    User function completion fails with dict function.
Solution:   Do not stop sequencing through the list if user functions when
            encountering an empty name. (Naohiro Ono, closes #8765,
            closes #8774)
2021-08-19 21:20:41 +02:00
Bram Moolenaar
c66f645b80 patch 8.2.3359: Vim9: error for type when variable is not set
Problem:    Vim9: error for type when variable is not set.
Solution:   Give a specific error for a NULL function. (closes #8773)
2021-08-19 21:08:30 +02:00
Bastian Venthur
dea561111a patch 8.2.3358: structurizr files are not recognized
Problem:    Structurizr files are not recognized.
Solution:   Recognize the file by contents. (Bastian Venthur, closes #8764)
2021-08-17 23:44:54 +02:00
Bram Moolenaar
02f8694a6b patch 8.2.3357: crash when 'virtualedit' is set and window is narrow
Problem:    Crash when 'virtualedit' is set and window is narrow. ()
Solution:   Check that width is not zero. (closes #8767)
2021-08-17 22:14:29 +02:00
Yegappan Lakshmanan
ccfb7c6758 patch 8.2.3356: adding many text properties requires a lot of function calls
Problem:    Adding many text properties requires a lot of function calls.
Solution:   Add the prop_add_list() function. (Yegappan Lakshmanan,
            closes #8751)
2021-08-16 21:39:09 +02:00
Bram Moolenaar
434df7a401 patch 8.2.3355: MS-Windows: compiler warning for 64-32 bit conversion
Problem:    MS-Windows: compiler warning for 64-32 bit conversion.
Solution:   Add type casts.
2021-08-16 21:15:32 +02:00
Bram Moolenaar
92755bba30 patch 8.2.3354: build failure with +byte_offset but without +textprop
Problem:    Build failure with +byte_offset but without +textprop. (John
            Marriott)
Solution:   Adjust the #ifdef.
2021-08-15 22:18:04 +02:00
Bram Moolenaar
cd6b4f3001 patch 8.2.3353: Vim9: type of argument for negate not checked at compile time
Problem:    Vim9: type of argument for negate not checked at compile time.
Solution:   Add a compile time check.
2021-08-15 20:36:28 +02:00
Bram Moolenaar
4bba16d252 patch 8.2.3352: Vim9: error for nested :enddef has wrong line number
Problem:    Vim9: error for nested :enddef has wrong line number.
Solution:   Compute the line number.
2021-08-15 19:28:05 +02:00
Bram Moolenaar
b033ee2ddf patch 8.2.3351: Vim9: using a function by name may delete it
Problem:    Vim9: using a function by name may delete it. (Naohiro Ono)
Solution:   Increment the reference count when using a function by name.
            (closes #8760)
2021-08-15 16:08:36 +02:00
Bram Moolenaar
a401bba080 patch 8.2.3350: text properties test fails on MS-Windows
Problem:    Text properties test fails on MS-Windows.
Solution:   Set fileformat to unix.
2021-08-15 15:04:41 +02:00
Bram Moolenaar
5cebca27b8 patch 8.2.3349: eval test for scriptversion fails
Problem:    Eval test for scriptversion fails.
Solution:   Fix off-by-one error.
2021-08-15 14:39:13 +02:00
Bram Moolenaar
14c7530c4f patch 8.2.3348: line2byte() returns wrong value after adding textprop
Problem:    line2byte() returns wrong value after adding textprop. (Yuto
            Kimura)
Solution:   Reduce the length by the size of the text property. (closes #8759)
2021-08-15 14:28:40 +02:00
Bram Moolenaar
dd9de50f42 patch 8.2.3347: check for legacy script is incomplete
Problem:    Check for legacy script is incomplete. (Naohiro Ono)
Solution:   Also check the :legacy modifier.  Use for string concatenation
            with "." and others (issue #8756)
2021-08-15 13:49:42 +02:00
Bram Moolenaar
2596a4e763 patch 8.2.3346: Vim9: no error for using "." for concatenation after ":vim9cmd"
Problem:    Vim9: no error for using "." for concatenation after ":vim9cmd".
            (Naohiro Ono)
Solution:   Check for Vim9 script syntax. (closes #8756)
2021-08-14 21:35:40 +02:00
Bram Moolenaar
6aa57295cf Update runtime files 2021-08-14 21:25:52 +02:00
Dominique Pelle
bfb2bb16bc patch 8.2.3345: some code not covered by tests
Problem:    Some code not covered by tests.
Solution:   Add a few more tests. (Dominique Pellé, closes #8757)
2021-08-14 21:11:51 +02:00
Bram Moolenaar
d2e9ccee90 patch 8.2.3344: vimscript test fails
Problem:    Vimscript test fails.
Solution:   Have test verify first error instead of second
2021-08-14 15:16:00 +02:00
Bram Moolenaar
4830c211a4 patch 8.2.3343: Vim9: autoload test fails
Problem:    Vim9: autoload test fails.
Solution:   Adjust the way the second message is avoided
2021-08-14 14:59:27 +02:00
Bram Moolenaar
b521766c56 patch 8.2.3342: test for :let errors fails
Problem:    Test for :let errors fails.
Solution:   Adjust the test and how to avoid a second error message.
2021-08-14 14:27:30 +02:00
Bram Moolenaar
88c89c7722 patch 8.2.3341: Vim9: function call aborted despite try/catch
Problem:    Vim9: function call aborted despite try/catch. (Naohiro Ono)
Solution:   Ignore error caught by try/catch. (closes #8755)
2021-08-14 14:01:05 +02:00
Bram Moolenaar
78a9c2e670 patch 8.2.3340: accessing uninitialized pointer
Problem:    Accessing uninitialized pointer.
Solution:   Set pointer to NULL.
2021-08-13 20:12:13 +02:00
Bram Moolenaar
aacc966c5d patch 8.2.3339: Vim9: cannot lock a member in a local dict
Problem:    Vim9: cannot lock a member in a local dict.
Solution:   Get the local dict from the stack and pass it to get_lval().
2021-08-13 19:40:51 +02:00
Bram Moolenaar
89071cb6a1 patch 8.2.3338: Vim9: no type check when assigning a list range
Problem:    Vim9: no type check when assigning a list range. (Naohiro Ono)
Solution:   Check the member type. (closes #8750)
2021-08-13 18:20:09 +02:00
Bram Moolenaar
069f90852f patch 8.2.3337: completing "call g:" returns entries with just "g:"
Problem:    Completing "call g:" returns entries with just "g:". (Naohiro Ono)
Solution:   Skip empty strings returned by get_user_func_name(). (closes #8753)
2021-08-13 17:48:25 +02:00
Bram Moolenaar
92f05f21af patch 8.2.3336: behavior of negative index in list change changed
Problem:    Behavior of negative index in list change changed. (Naruhiko
            Nishino)
Solution:   Only change it for Vim9 script. (closes #8749)
2021-08-12 21:12:56 +02:00
Bram Moolenaar
ef98257593 patch 8.2.3335: Vim9: not enough tests run with Vim9
Problem:    Vim9: not enough tests run with Vim9.
Solution:   Run a few more tests in Vim9 script and :def function.  Fix that
            items(), keys() and values9) return zero for a NULL dict.
            Make join() return an empty string for a NULL list.  Make sort()
            return an empty list for a NULL list.
2021-08-12 19:27:57 +02:00
Bram Moolenaar
bd77aa9274 patch 8.2.3334: Vim9: not enough tests run with Vim9
Problem:    Vim9: not enough tests run with Vim9.
Solution:   Run a few more tests in Vim9 script and :def function. Fix
            islocked().  Fix error for locking local variable.
2021-08-12 17:06:05 +02:00
Bram Moolenaar
3e9c0b9608 patch 8.2.3333: Vim9: not enough tests run with Vim9
Problem:    Vim9: not enough tests run with Vim9.
Solution:   Run a few more tests in Vim9 script and :def function.
2021-08-12 10:39:10 +02:00
Bram Moolenaar
4f0884d6e2 patch 8.2.3332: Vim9: cannot assign to range in list
Problem:    Vim9: cannot assign to range in list.
Solution:   Implement overwriting a list range.
2021-08-11 21:49:23 +02:00
Bram Moolenaar
ed7cb2df35 patch 8.2.3331: Coverity warns for using value without boundary check
Problem:    Coverity warns for using value without boundary check.
Solution:   Add a boundary check.
2021-08-11 17:13:54 +02:00
Bram Moolenaar
7deb4115ef patch 8.2.3330: Coverity reports using uninitialized field
Problem:    Coverity reports using uninitialized field.
Solution:   Initialize the field early.
2021-08-11 17:01:45 +02:00
Bram Moolenaar
16e63e6d35 patch 8.2.3329: v_lock not set when getting value of environment variable
Problem:    v_lock not set when getting value of environment variable.
Solution:   Set v_lock to zero.
2021-08-11 16:47:26 +02:00
Bram Moolenaar
b85d3627d9 patch 8.2.3328: Coverity error for not checking return value
Problem:    Coverity error for not checking return value.
Solution:   Check value is not negative.
2021-08-11 15:54:59 +02:00
Zdenek Dohnal
ba9c23e776 patch 8.2.3327: no check for sysconf() failing
Problem:    No check for sysconf() failing.
Solution:   If sysconf() fails use SIGSTKSZ for the signal stack size.
            (Zdenek Dohnal, closes #8743)
2021-08-11 14:20:05 +02:00
Bram Moolenaar
6e48b84c5f patch 8.2.3326: Vim9: no error passing an empty list of the wrong type
Problem:    Vim9: no error passing an empty list of the wrong type.
Solution:   Use ISN_SETTYPE also for "list<any>". (closes #8732)
2021-08-10 22:52:02 +02:00
Bram Moolenaar
52eb372a04 patch 8.2.3325: digraph test fails when LC_ALL is set to "C"
Problem:    Digraph test fails when LC_ALL is set to "C".
Solution:   When restoring 'encoding' set it to "utf-8". (closes #8742)
2021-08-10 21:39:20 +02:00
Bram Moolenaar
917c46abe5 patch 8.2.3324: Vim9: Cannot use :silent with :endwhile
Problem:    Vim9: Cannot use :silent with :endwhile.
Solution:   Allow for using the :silent modifier. (closes #8737)
2021-08-10 19:53:01 +02:00
Bram Moolenaar
b6f55bb5b4 patch 8.2.3323: Vim9: Cannot use :silent with :endwhile
Problem:    Vim9: Cannot use :silent with :endwhile.
Solution:   Allow for using the :silent modifier. (closes #8737)
2021-08-10 10:23:27 +02:00
Bram Moolenaar
b56c4419d4 patch 8.2.3322: Vim9: checking type of dict does not check member type
Problem:    Vim9: checking type of dict does not check member type.
Solution:   When getting the type of a typval use dv_type and lv_type.
            (closes #8732)
2021-08-09 22:22:27 +02:00
Dominique Pelle
bd9e796125 patch 8.2.3321: some code is not tested
Problem:    Some code is not tested.
Solution:   Add some more tests. (Dominique Pellé, closes #8735)
2021-08-09 21:04:44 +02:00
Yegappan Lakshmanan
8ee52affe7 patch 8.2.3320: some local functions are not static
Problem:    Some local functions are not static.
Solution:   Add "static".  Move snprintf() related code to strings.c.
            (Yegappan Lakshmanan, closes #8734)
2021-08-09 19:59:06 +02:00
James McCoy
eed9616120 patch 8.2.3319: Coverity action on github does not work
Problem:    Coverity action on github does not work.
Solution:   Remove undefined $SRCDIR. (James McCoy, closes #8739)
2021-08-09 13:20:38 +02:00
Bram Moolenaar
ed8b099fd2 patch 8.2.3318: Vim9: cannot ignore quotes in number at the command line
Problem:    Vim9: cannot ignore quotes in number at the command line.
Solution:   Use in_vim9script() so that after ":vim9" quotes are ignored.
2021-08-08 19:56:28 +02:00
Bram Moolenaar
33ea9fd4d8 patch 8.2.3317: Vim9: No error for missing white space before return type
Problem:    Vim9: No error for missing white space before return type.
Solution:   Check for white space. (closes #8733)
2021-08-08 19:07:37 +02:00
Bram Moolenaar
80a070c361 patch 8.2.3316: float test fails
Problem:    Float test fails.
Solution:   Add missing change.
2021-08-08 15:51:10 +02:00
Bram Moolenaar
2950065e18 patch 8.2.3315: cannot use single quote in a float number for readability
Problem:    Cannot use single quote in a float number for readability.
Solution:   Support single quotes like in numbers. (closes #8713)
2021-08-08 15:43:34 +02:00
Bram Moolenaar
267359902c patch 8.2.3314: behavior of exists() in a :def function is unpredictable
Problem:    Behavior of exists() in a :def function is unpredictable.
Solution:   Add exists_compiled().
2021-08-08 14:43:22 +02:00
gmntroll
9e2fa4bb9e patch 8.2.3313: unused code in win_exchange() and frame_remove()
Problem:    Unused code in win_exchange() and frame_remove().
Solution:   Remove the code. (closes #8728)
2021-08-07 22:35:52 +02:00
Bram Moolenaar
e525bdda3a patch 8.2.3312: Vim9: after "if false" line breaks in expression not skipped
Problem:    Vim9: after "if false" line breaks in expression not skipped.
Solution:   Do parse the expression. (closes #8723)
2021-08-07 18:12:40 +02:00
Bram Moolenaar
dae453f339 patch 8.2.3311: Vim9: check for DO_NOT_FREE_CNT is very slow
Problem:    Vim9: check for DO_NOT_FREE_CNT is very slow.
Solution:   Move to a separate function so it can be skipped by setting
            $TEST_SKIP_PAT.
2021-08-07 17:20:16 +02:00
Bram Moolenaar
4270d8b762 patch 8.2.3310: Vim9: unpack assignment does not mention source of type error
Problem:    Vim9: unpack assignment does not mention source of type error.
Solution:   Mention the argument number. (closes #8719)
2021-08-07 16:30:42 +02:00
Bram Moolenaar
fbeefb1b87 patch 8.2.3309: Vim9: divide by zero causes a crash
Problem:    Vim9: divide by zero causes a crash.
Solution:   Give an error message. (closes #8727)
2021-08-07 15:50:23 +02:00
Bram Moolenaar
6ce46b9963 patch 8.2.3308: Vim9: no runtime check for argument type with varargs only
Problem:    Vim9: no runtime check for argument type if a function only has
            varargs.
Solution:   Also check argument types if uf_va_type is set. (closes #8715)
2021-08-07 15:35:36 +02:00
Bram Moolenaar
7de6262373 patch 8.2.3307: Vim9: :echoconsole cannot access local variables
Problem:    Vim9: :echoconsole cannot access local variables.
Solution:   Handle like other :echo commands. (closes #8708)
2021-08-07 15:05:47 +02:00
Bram Moolenaar
1b154ea121 patch 8.2.3306: unexpected "No matching autocommands"
Problem:    Unexpected "No matching autocommands".
Solution:   Do not give the message when aborting.  Mention the arguments in
            the message. (closes #8690)
2021-08-07 13:59:43 +02:00
rbtnn
8493499880 patch 8.2.3305: Vim9: :finally in skipped block not handled correctly
Problem:    Vim9: :finally in skipped block not handled correctly.
Solution:   Check whether :finally is in a skipped block. (Naruhiko Nishino,
            closes #8724)
2021-08-07 13:26:53 +02:00
rbtnn
c611941c60 patch 8.2.3304: popup window title with wide characters is truncated
Problem:    Popup window title with wide characters is truncated.
Solution:   Use vim_strsize() instead of MB_CHARLEN(). (Naruhiko Nishino,
            closes #8721)
2021-08-07 13:08:45 +02:00
Dominique Pelle
3276f5846f patch 8.2.3303: some structures could be smaller
Problem:    Some structures could be smaller.
Solution:   Rearrange members to reduce size. (Dominique Pellé, closes #8725)
2021-08-07 12:44:41 +02:00
Bram Moolenaar
d57a6bd98c patch 8.2.3302: Coverity is not run from github
Problem:    Coverity is not run from github.
Solution:   Add a coverity script. (James McCoy, closes #8714)
2021-08-07 12:32:20 +02:00
Yegappan Lakshmanan
cbae580283 patch 8.2.3301: memory allocation functions don't have their own place
Problem:    Memory allocation functions don't have their own place.
Solution:   Move memory allocation functions to alloc.c.  (Yegappan
            Lakshmanan, closes #8717)
2021-08-06 21:51:55 +02:00
Yegappan Lakshmanan
11328bc7df patch 8.2.3300: Lua: can only execute on Vim command at a time
Problem:    Lua: can only execute on Vim command at a time.  Not easy to get
            the Vim version.
Solution:   Make vim.command() accept multiple lines.  Add vim.version().
            (Yegappan Lakshmanan, closes #8716)
2021-08-06 21:34:38 +02:00
Bram Moolenaar
5671f3f076 patch 8.2.3299: Vim9: exists() does not handle much at compile time
Problem:    Vim9: exists() does not handle much at compile time.
Solution:   Handle variable names. (closes #8688)
2021-08-05 22:48:11 +02:00
Bram Moolenaar
6f6d58c380 patch 8.2.3298: build failure with small features
Problem:    Build failure with small features.
Solution:   Add #ifdef.
2021-08-05 21:17:32 +02:00
Bram Moolenaar
63b9173693 patch 8.2.3297: cannot use all commands inside a {} block
Problem:    Cannot use all commands inside a {} block after :command and
            :autocmd.
Solution:   Do consider \n to separate commands. (closes #8620)
2021-08-05 20:40:03 +02:00
Bram Moolenaar
af647e76ca patch 8.2.3296: Vim9: cannot add a number to a float
Problem:    Vim9: cannot add a number to a float.
Solution:   Accept a number if the destination is a float. (closes #8703)
2021-08-05 19:01:17 +02:00
zeertzjq
4f33bc20d7 patch 8.2.3295: 'cursorline' should not apply to 'breakindent'
Problem:    'cursorline' should not apply to 'breakindent'.
Solution:   Make 'cursorline' apply to 'breakindent' and 'showbreak'
            consistently. (closes #8684)
2021-08-05 17:57:02 +02:00
Bram Moolenaar
1b6acf02b7 patch 8.2.3294: Lua: memory leak when adding dict item fails
Problem:    Lua: memory leak when adding dict item fails.
Solution:   Free the typval and the dict item.
2021-08-05 16:47:08 +02:00
Andy Gozas
6a230c6b32 patch 8.2.3293: finding completions may cause an endless loop
Problem:    Finding completions may cause an endless loop.
Solution:   Use a better way to check coming back where the search started.
            (Andy Gozas, closes #8672, closes #8671)
2021-08-05 16:23:27 +02:00
Christian Brabandt
bc67e5a0a4 patch 8.2.3292: underscore in very magic pattern causes a hang
Problem:    Underscore in very magic pattern causes a hang.  Pattern with \V
            are case sensitive. (Yutao Yuan)
Solution:   Adjust condition for magicness and advance pointer. (Christian
            Brabandt, closes #8707, closes #8704, closes #8705)
2021-08-05 15:24:59 +02:00
Bram Moolenaar
4a01159da2 patch 8.2.3291: Coverity warns for not checking return value
Problem:    Coverity warns for not checking return value.
Solution:   If dict_add() fails give an error message.
2021-08-05 15:11:08 +02:00
Zdenek Dohnal
9fe17d473a patch 8.2.3290: Vim9: compiling dict may use pointer after free
Problem:    Vim9: compiling dict may use pointer after free and leak memory on
            failure.
Solution:   Pass a pointer to generate_PUSHS().  (Zdenek Dohnal, closes #8699)
2021-08-04 22:30:52 +02:00
Bram Moolenaar
f18e8a969a patch 8.2.3289: compiler warning for unused variable with small features
Problem:    Compiler warning for unused variable with small features.
Solution:   Rearrange #ifdefs.
2021-08-04 21:16:50 +02:00
Yegappan Lakshmanan
9dc4bef897 patch 8.2.3288: cannot easily access namespace dictionaries from Lua
Problem:    Cannot easily access namespace dictionaries from Lua.
Solution:   Add vim.g, vim.b, etc. (Yegappan Lakshmanan, closes #8693,
            from NeoVim)
2021-08-04 21:12:52 +02:00
Bram Moolenaar
57942237c1 patch 8.2.3287: channel events not handled in BufEnter autocommand
Problem:    Channel events not handled in BufEnter autocommand.
Solution:   Decrement dont_parse_messages earlier. (Tim Pope, closes #8697)
2021-08-04 20:54:55 +02:00
Bram Moolenaar
d61f2f772a patch 8.2.3286: win_enter_ext() has too many boolean arguments
Problem:    win_enter_ext() has too many boolean arguments.
Solution:   use one flags argument with defined values.
2021-08-04 20:26:19 +02:00
Gregory Anders
dd097bdc13 patch 8.2.3285: scdoc filetype is not recognized
Problem:    Scdoc filetype is not recognized.
Solution:   Add filetype detection. (Gregory Anders, closes #8701)
2021-08-04 20:00:27 +02:00
Sean Dewar
80d7395dcf patch 8.2.3284: no error for insert() or remove() changing a locked blob
Problem:    No error for insert() or remove() changing a locked blob.
Solution:   Check a blob is not locked before changing it. (Sean Dewar,
            closes #8696)
2021-08-04 19:25:54 +02:00
Christian Clason
0eec851942 patch 8.2.3283: Julia filetype is not recognized
Problem:    Julia filetype is not recognized
Solution:   Add filetype detection. (Christian Clason, closes #8700)
2021-08-04 17:03:59 +02:00
Bram Moolenaar
41a3485dd6 patch 8.2.3282: Vim9: error about using -complete without -nargs is confusing
Problem:    Vim9: error about using -complete without -nargs is confusing.
Solution:   Change the wording.
2021-08-04 16:09:24 +02:00
Bram Moolenaar
23e2e11515 patch 8.2.3281: Vim9: TODO items in tests can be taken care of
Problem:    Vim9: TODO items in tests can be taken care of.
Solution:   Update test for now working functionality. (closes #8694)
2021-08-03 21:16:18 +02:00
Gary Johnson
51ad850f5f patch 8.2.3280: 'virtualedit' local to buffer is not the best solution
Problem:    'virtualedit' local to buffer is not the best solution.
Solution:   Make it window-local. (Gary Johnson, closes #8685)
2021-08-03 18:33:08 +02:00
Bram Moolenaar
2c70711e3f patch 8.2.3279: Vim9: cannot use block in cmdline window
Problem:    Vim9: cannot use block in cmdline window.
Solution:   Add EX_CMDWIN to the CMD_block flags. (closes #8689)
2021-08-02 22:26:56 +02:00
Bram Moolenaar
7bf9a07bd7 patch 8.2.3278: Vim9: error when adding 1 to float
Problem:    Vim9: error when adding 1 to float.
Solution:   Accept t_number_bool. (closes #8687)
2021-08-02 21:55:15 +02:00
Bram Moolenaar
c3160727b9 patch 8.2.3277: Vim9: compiled has() does not work properly
Problem:    Vim9: compiled has() does not work properly.
Solution:   Fix check for has() vs exists().
2021-08-02 21:12:05 +02:00
Bram Moolenaar
bb7ee7abe1 patch 8.2.3276: Vim9: exists() can only be evaluated at runtime
Problem:    Vim9: exists() can only be evaluated at runtime.
Solution:   Evaluate at compile time for option name literals. (closes #8437)
2021-08-02 20:06:50 +02:00
Bram Moolenaar
35578168be patch 8.2.3275: optimizer can use hints about ga_grow() normally succeeding
Problem:    Optimizer can use hints about ga_grow() normally succeeding.
Solution:   Use GA_GROW_FAILS() and GA_GROW_OK() in several places. (Dominique
            Pellé, issue #8635)
2021-08-02 19:10:38 +02:00
Bram Moolenaar
952d9d827e patch 8.2.3274: macro for printf format check can be simplified
Problem:    Macro for printf format check can be simplified.
Solution:   Add ATTRIBUTE_FORMAT_PRINTF(). (Dominique Pellé, issue #8635)
2021-08-02 18:07:18 +02:00
Bram Moolenaar
1321257317 patch 8.2.3273: autocmd test fails
Problem:    Autocmd test fails.
Solution:   Require white space before the "{" that starts a block.
2021-08-01 22:01:30 +02:00
Bram Moolenaar
e041dde7bb patch 8.2.3272: cannot use id zero with prop_find()
Problem:    Cannot use id zero with prop_find(). (Naohiro Ono)
Solution:   Also accept id zero.
2021-08-01 21:30:12 +02:00
Bram Moolenaar
e4db17fb6e patch 8.2.3271: Vim9: cannot use :command or :au with block in :def function
Problem:    Vim9: cannot use :command or :au with a block in a :def function.
Solution:   Recognize the start of the block.
2021-08-01 21:19:43 +02:00
Bram Moolenaar
0d4d9ee9bb patch 8.2.3270: prop_find() finds property with ID -2
Problem:    prop_find() finds property with ID -2.
Solution:   Use a separate flag to indicate an ID was specified. (issue #8674)
2021-08-01 19:28:15 +02:00
Bram Moolenaar
f78da4f9d6 patch 8.2.3269: Vim9: wrong argument check for partial
Problem:    Vim9: wrong argument check for partial. (Naohiro Ono)
Solution:   Handle getting return type without arguments. Correct the minimal
            number of arguments for what is included in the partial.
            (closes #8667)
2021-08-01 15:40:31 +02:00
Bram Moolenaar
73b8b0ae3a patch 8.2.3268: cannot use a block with :autocmd like with :command
Problem:    Cannot use a block with :autocmd like with :command.
Solution:   Add support for a {} block after :autocmd. (closes #8620)
2021-08-01 14:52:32 +02:00
Bram Moolenaar
6db660bed9 patch 8.2.3267: Vim9: crash when disassembling using deleted script variable
Problem:    Vim9: crash when disassembling a function that uses a deleted
            script variable.
Solution:   Check the variable still exists. (closes #8683)
2021-08-01 14:08:54 +02:00
Bram Moolenaar
e97976baa7 patch 8.2.3266: Vim9: assignment with two indexes may check next line
Problem:    Vim9: assignment with two indexes may check next line.
Solution:   Limit the number of lines to avoid checking the next line when
            assiging to a LHS subscript. (closes #8660)
2021-08-01 13:17:17 +02:00
Christian Brabandt
78ba933d18 patch 8.2.3265: smartcase does not work correctly in very magic pattern
Problem:    Smartcase does not work correctly in very magic pattern.
Solution:   Take the magicness into account when skipping over regexp items.
            (Christian Brabandt, closes #8682, closes #7845)
2021-08-01 12:44:37 +02:00
Bram Moolenaar
f24f51d030 patch 8.2.3264: Vim9: assign test fails
Problem:    Vim9: assign test fails.
Solution:   Add missing change.
2021-08-01 12:01:49 +02:00
Bram Moolenaar
f5d52c90e0 patch 8.2.3263: Vim9: "..=" does not accept same types as the ".." operator
Problem:    Vim9: "..=" does not accept same types as the ".." operator.
Solution:   Convert value to string like ".." does. (issue #8664)
2021-07-31 22:51:10 +02:00
Bram Moolenaar
9e0ee59019 patch 8.2.3262: build failure when ABORT_ON_INTERNAL_ERROR is defined
Problem:    Build failure when ABORT_ON_INTERNAL_ERROR is defined.
Solution:   Adjust how estack_len_before is used.
2021-07-31 22:17:28 +02:00
Bram Moolenaar
1780f08ba4 patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is number
Problem:    Vim9: when compiling repeat(123, N) return type is number.
Solution:   Make return type a string. (closes #8664)
2021-07-31 22:03:59 +02:00
Bram Moolenaar
335c8c7b20 patch 8.2.3260: build failure with small features
Problem:    Build failure with small features.
Solution:   Add #ifdef.
2021-07-31 21:44:35 +02:00
Bram Moolenaar
620c959c6c patch 8.2.3259: when 'indentexpr' causes an error did_throw may hang
Problem:    When 'indentexpr' causes an error the did_throw flag may remain
            set.
Solution:   Reset did_throw and show the error. (closes #8677)
2021-07-31 21:32:31 +02:00
Bram Moolenaar
78db17c6f3 patch 8.2.3258: error messages have the wrong text
Problem:    Error messages have the wrong text.
Solution:   Adjust the error message.
2021-07-31 19:12:58 +02:00
Bram Moolenaar
8e3fc135e8 patch 8.2.3257: calling prop_find() with -1 for ID gives errornous error
Problem:    Calling prop_find() with -1 for ID gives errornous error. (Naohiro
            Ono)
Solution:   When passing -1 use -2. (closes #8674)
2021-07-31 18:33:57 +02:00
Bram Moolenaar
bf634a0a8b patch 8.2.3256: executable test may fail on new Ubuntu system
Problem:    Executable test may fail on new Ubuntu system.
Solution:   Consider /usr/bin/cat and /bin/cat the same.
2021-07-31 17:20:04 +02:00
Connor Lane Smith
b9115da4be patch 8.2.3255: ci" finds following string but ci< and others don't
Problem:    ci" finds following string but ci< and others don't.
Solution:   When not inside an object find the start. (Connor Lane Smit,
            closes #8670)
2021-07-31 13:31:42 +02:00
Yegappan Lakshmanan
28d8421bfb patch 8.2.3254: win_gettype() does not recognize a quickfix window
Problem:    win_gettype() does not recognize a quickfix window.
Solution:   Add "quickfix" and "loclist". (Yegappan Lakshmanan, closes #8676)
2021-07-31 12:43:23 +02:00
Bram Moolenaar
890ee4e2be patch 8.2.3253: channel test fails randomly
Problem:    Channel test fails randomly.
Solution:   Add a sleep after sending the "echoerr" command. (Michael Soyka)
2021-07-30 21:56:10 +02:00
Yegappan Lakshmanan
4a15504e91 patch 8.2.3252: duplicated code for adding buffer lines
Problem:    Duplicated code for adding buffer lines.
Solution:   Move code to a common function.  Also move map functions to map.c.
            (Yegappan Lakshmanan, closes #8665)
2021-07-30 21:32:45 +02:00
Bram Moolenaar
0f5575d0a7 patch 8.2.3251: listing builtin_gui as an available terminal is confusing
Problem:    Listing builtin_gui as an available terminal is confusing.
Solution:   Do not list builtin_gui. (Christian Brabandt, closes #8669,
            closes #8661)
2021-07-30 21:18:03 +02:00
Christian Brabandt
1790be6cb6 patch 8.2.3250: MS-Windows: cannot build with libsodium
Problem:    MS-Windows: cannot build with libsodium.
Solution:   Change FEAT_SODIUM into HAVE_SODIUM. (Christian Brabandt,
            closes #8668, closes #8663)
2021-07-30 20:51:59 +02:00
Bram Moolenaar
60dc8274e9 patch 8.2.3249: Vim9: error for re-imported function with default argument
Problem:    Vim9: error for re-imported function with default argument.
Solution:   Do not check argument type if it is still unknown. (closes #8653)
2021-07-29 22:48:54 +02:00
Bram Moolenaar
921ba52926 patch 8.2.3248: Vim9: error message for wrong input uses wrong line number
Problem:    Vim9: error message for wrong input uses wrong line number.
Solution:   Use the line number of the start of the command. (issue #8653)
2021-07-29 22:25:05 +02:00
Bram Moolenaar
77ab4e28a2 patch 8.2.3247: using uninitialized memory when checking for crypt method
Problem:    Using uninitialized memory when checking for crypt method.
Solution:   Check the header length before using the salt and seed.
2021-07-29 21:23:50 +02:00
Bram Moolenaar
77111e2bfc patch 8.2.3246: memory use after free
Problem:    Memory use after free.
Solution:   When clearing a string option set the pointer to "empty_option".
2021-07-29 21:11:30 +02:00
Bram Moolenaar
131530a54d patch 8.2.3245: the crypt key may appear in a swap partition
Problem:    The crypt key may appear in a swap partition.
Solution:   When using xchaha20 use sodium_mlock(). (Christian Brabandt,
            closes #8657)
2021-07-29 20:37:49 +02:00
Yegappan Lakshmanan
41114a2a27 patch 8.2.3244: Lua 5.3 print() with a long string crashes
Problem:    Lua 5.3 print() with a long string crashes.
Solution:   Use a growarray instead of a Lua buffer. (Yegappan Lakshmanan,
            closes #8655)
2021-07-29 20:22:14 +02:00
msoyka-of-wharton
83cd0156e0 patch 8.2.3243: MS-Windows: "edit with multiple Vim" choice is less useful
Problem:    MS-Windows: the "edit with multiple Vim" choice is not that
            useful.
Solution:   Change it to "Edit with multiple tabs". (Michael Soyka,
            closes #8645)
2021-07-29 19:18:33 +02:00
Bram Moolenaar
0732932553 patch 8.2.3242: Vim9: valgrind reports leaks in builtin function test
Problem:    Vim9: valgrind reports leaks in builtin function test.
Solution:   Do not start a job.
2021-07-28 22:44:08 +02:00
Bram Moolenaar
6e850a6900 patch 8.2.3241: Vim9: memory leak when function reports an error
Problem:    Vim9: memory leak when function reports an error.
Solution:   Clear the return value.
2021-07-28 22:21:23 +02:00
Bram Moolenaar
2a4bd00cef patch 8.2.3240: Lua print() does not work properly
Problem:    Lua print() does not work properly.
Solution:   Put back lua_pop().
2021-07-28 21:48:59 +02:00
Bram Moolenaar
81530e3603 patch 8.2.3239: Vim9: no error using heredoc for a number variable
Problem:    Vim9: no error using heredoc for a number variable.
Solution:   Add a type check. (closes #8627)
2021-07-28 21:25:49 +02:00
Bram Moolenaar
d47c39775b patch 8.2.3238: Vim9: error message does not indicate the location
Problem:    Vim9: error message does not indicate the location.
Solution:   Add the relevant text. (issue #8634)
2021-07-28 20:52:13 +02:00
Bram Moolenaar
53f7fccc94 Update runtime files 2021-07-28 20:10:16 +02:00
Bram Moolenaar
327d3ee455 patch 8.2.3237: when a builtin function gives an error processing continues
Problem:    When a builtin function gives an error processing continues.
Solution:   In Vim9 script return FAIL in get_func_tv().
2021-07-28 19:34:14 +02:00
zeertzjq
eaf3f36168 patch 8.2.3236: mode() does not indicate using CTRL-O in Select mode
Problem:    mode() does not indicate using CTRL-O in Select mode.
Solution:   Use "vs" and similar. (closes #8640)
2021-07-28 16:51:53 +02:00
Bram Moolenaar
6868634abd patch 8.2.3235: cannot use lambda in {} block in user command
Problem:    Cannot use lambda in {} block in user command. (Martin Tournoij)
Solution:   Do not go over the end of the lambda.
2021-07-28 15:54:54 +02:00
Bram Moolenaar
78e006b9b0 patch 8.2.3234: crash when printing long string with Lua
Problem:    Crash when printing long string with Lua.
Solution:   Remove lua_pop(). (Martin Tournoij, closes #8648)
2021-07-28 15:07:01 +02:00
Martin Tournoij
e2390c7f32 patch 8.2.3233: prop_list() and prop_find() do not indicate the buffer
Problem:    prop_list() and prop_find() do not indicate the buffer for the
            used type.
Solution:   Add "type_bufnr" to the results. (closes #8647)
2021-07-28 13:30:16 +02:00
Yegappan Lakshmanan
7e6a2a64f0 patch 8.2.3232: system() does not work without a second argument
Problem:    system() does not work without a second argument.
Solution:   Do not require a second argument. (Yegappan Lakshmanan,
            closes #8651, closes #8650)
2021-07-28 11:51:48 +02:00
Bram Moolenaar
9088784972 patch 8.2.3231: build failure with small features
Problem:    Build failure with small features.
Solution:   Adjust #ifdef.
2021-07-27 22:35:42 +02:00
Bram Moolenaar
f723701de0 patch 8.2.3230: Vim9: type error when function return type is not known yet
Problem:    Vim9: type error when function return type is not known yet.
Solution:   When return type is unknown, use "any". (closes #8644)
2021-07-27 22:21:44 +02:00
Yegappan Lakshmanan
4490ec4e83 patch 8.2.3229: Vim9: runtime and compile time type checks are not the same
Problem:    Vim9: runtime and compile time type checks are not the same.
Solution:   Add more runtime type checks for builtin functions. (Yegappan
            Lakshmanan, closes #8646)
2021-07-27 22:00:44 +02:00
Bram Moolenaar
5d7c2df536 patch 8.2.3228: cannot use a simple block for the :command argument
Problem:    Cannot use a simple block for the :command argument. (Maarten
            Tournoij)
Solution:   Recognize a simple {} block. (issue #8623)
2021-07-27 21:17:32 +02:00
Gary Johnson
53ba05b090 patch 8.2.3227: 'virtualedit' can only be set globally
Problem:    'virtualedit' can only be set globally.
Solution:   Make 'virtualedit' global-local. (Gary Johnson, closes #8638)
2021-07-26 22:19:10 +02:00
h-east
29b857150c patch 8.2.3226: new digraph functions use old naming scheme
Problem:    New digraph functions use old naming scheme.
Solution:   Use the digraph_ prefix. (Hirohito Higashi, closes #8580)
2021-07-26 21:54:04 +02:00
Bram Moolenaar
ccb148ac63 patch 8.2.3225: incsearch highlighting is attempted halfway a mapping
Problem:    Incsearch highlighting is attempted halfway a mapping.
Solution:   Only do incsearch highlighting if keys were typed or there is no
            more typeahead.
2021-07-26 21:11:32 +02:00
Bram Moolenaar
678b207fb1 patch 8.2.3224: cannot call script-local function after :vim9cmd
Problem:    Cannot call script-local function after :vim9cmd. (Christian J.
            Robinson)
Solution:   Skip over "<SNR>123".
2021-07-26 21:10:11 +02:00
Bram Moolenaar
ff34bee3a2 patch 8.2.3223: Vim: using {} block in autoloade omnifunc fails
Problem:    Vim: using {} block in autoloade omnifunc fails.
Solution:   Allow using {} block when text is locked. (closes #8631)
2021-07-25 20:27:06 +02:00
Bram Moolenaar
3c77b6a1ce patch 8.2.3222: Vim9: cannot used loop variable later as lambda argument
Problem:    Vim9: cannot used loop variable later as lambda argument.
Solution:   When not in function context check the current block ID.
            (closes #8637)
2021-07-25 18:07:00 +02:00
Yegappan Lakshmanan
a764e73d4f patch 8.2.3221: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks. (Yegappan Lakshmanan, closes #8632)
2021-07-25 15:57:32 +02:00
Dominique Pelle
2ec28aec9d patch 8.2.3220: Test_term_setansicolors() fails in some configurations
Problem:    Test_term_setansicolors() fails in some configurations.
Solution:   Check available features. (Dominique Pellé, closes #8636)
2021-07-25 15:41:44 +02:00
Christian Brabandt
7a4ca32175 patch 8.2.3219: :find searches non-existing directories
Problem:    :find searches non-existing directories.
Solution:   Check the path is not "..".  Update help. (Christian Brabandt,
            closes #8612, closes #8533)
2021-07-25 15:08:05 +02:00
Christian Brabandt
8a4c812ede patch 8.2.3218: when using xchaha20 crypt undo file is not removed
Problem:    When using xchaha20 crypt undo file is not removed.
Solution:   Reset 'undofile' and delete the file. (Christian Brabandt,
            closes #8630, closes #8467)
2021-07-25 14:36:05 +02:00
Bram Moolenaar
3ed0d93796 patch 8.2.3217: build failure
Problem:    Build failure.
Solution:   Add missing changes.
2021-07-25 14:21:11 +02:00
Bram Moolenaar
2eb6fc3b52 patch 8.2.3216: Vim9: crash when using variable in a loop at script level
Problem:    Vim9: crash when using variable in a loop at script level.
Solution:   Do not clear the variable if a function was defined.
            Do not create a new entry in sn_var_vals every time.
            (closes #8628)
2021-07-25 14:13:53 +02:00
Yegappan Lakshmanan
5bca906b30 patch 8.2.3215: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks. Sort the argument lists.
            (Yegappan Lakshmanan, closes #8626)
2021-07-24 21:33:26 +02:00
Christian Brabandt
7d60384a00 patch 8.2.3214: MS-Windows: passing /D does not set the install location
Problem:    MS-Windows: passing /D does not set the install location.
Solution:   Adjust how the installer uses $VIM. Update the documentation.
            (Christian Brabandt, closes #8605)
2021-07-24 21:19:42 +02:00
Dominique Pelle
9c9472ff49 patch 8.2.3213: NOCOMPOUNDSUGS entry in spell file not tested
Problem:    NOCOMPOUNDSUGS entry in spell file not tested.
Solution:   Add a test. (Dominique Pellé, closes #8624)
2021-07-24 20:51:13 +02:00
Dominique Pelle
5a9e5845e1 patch 8.2.3212: Vim9: execution speed can be improved
Problem:    Vim9: execution speed can be improved.
Solution:   Use __builtin_expect() to have the compiler produce better code.
            (Dominique Pellé, closes #8613)
2021-07-24 19:32:12 +02:00
Yegappan Lakshmanan
7973de35ba patch 8.2.3211: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks. Fix type check for matchaddpos().
            (Yegappan Lakshmanan, closes #8619)
2021-07-24 16:16:15 +02:00
Bram Moolenaar
dd0b287c1e patch 8.2.3210: Vim9: searchpair() sixth argument is compiled
Problem:    Vim9: searchpair() sixth argument is compiled. (Yegappan
            Lakshmanan)
Solution:   Only compile the fifth argument.
2021-07-24 15:44:30 +02:00
Bram Moolenaar
88421d6dc8 patch 8.2.3209: Vim9: lambda doesn't find block-local variable
Problem:    Vim9: lambda doesn't find block-local variable.
Solution:   Adjust how a script-local variable is found. (closes #8614)
2021-07-24 14:14:52 +02:00
Martin Tournoij
1a3e5747b7 patch 8.2.3208: dynamic library load error does not mention why it failed
Problem:    Dynamic library load error does not mention why it failed.
Solution:   Add the error message. (Martin Tournoij, closes #8621)
2021-07-24 13:57:29 +02:00
Bram Moolenaar
5a234eb18e patch 8.2.3207: Vim9: crash when compiling string fails
Problem:    Vim9: crash when compiling string fails. (Yegappan Lakshmanan)
Solution:   Adjust the type stack length.
2021-07-24 13:18:48 +02:00
Yegappan Lakshmanan
0ad871dc4d patch 8.2.3206: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks. (Yegappan Lakshmanan, closes #8611)
2021-07-23 20:37:56 +02:00
Bram Moolenaar
1b862c466b patch 8.2.3205: Coverity reports a null pointer dereference
Problem:    Coverity reports a null pointer dereference.
Solution:   Change the logic to avoid Coverity gets confused.
2021-07-23 19:30:19 +02:00
Bram Moolenaar
c9e7e344ed patch 8.2.3204: display garbled when 'cursorline' is set and lines wrap
Problem:    Display garbled when 'cursorline' is set and lines wrap. (Gabriel
            Dupras)
Solution:   Avoid inserting lines twice.
2021-07-22 21:33:03 +02:00
Bram Moolenaar
cd268017cf patch 8.2.3203: Vim9: compiled string expression causes type error
Problem:    Vim9: compiled string expression causes type error. (Yegappan
            Lakshmanan)
Solution:   Remove the string type from the stack.
2021-07-22 19:11:08 +02:00
Bram Moolenaar
5dd839ce20 patch 8.2.3202: Vim9: tests are only executed for legacy script
Problem:    Vim9: tests are only executed for legacy script.
Solution:   Run more tests also for Vim9 script.  Fix uncovered problems.
2021-07-22 18:48:53 +02:00
Bram Moolenaar
2b59df00d8 patch 8.2.3201: crash in test
Problem:    Crash in test.
Solution:   Initialize "where".
2021-07-22 15:14:25 +02:00
Bram Moolenaar
7a3fe3e180 patch 8.2.3200: Vim9: hard to guess where a type error is given
Problem:    Vim9: hard to guess where a type error is given.
Solution:   Add the function name where possible. (closes #8608)
2021-07-22 14:58:47 +02:00
Bram Moolenaar
a74901929e patch 8.2.3199: Vim9: execution speed can be improved
Problem:    Vim9: execution speed can be improved.
Solution:   Make the break counter static.
2021-07-22 12:26:14 +02:00
Maxim Kim
f674b358fc patch 8.2.3198: cannot use 'formatlistpat' for breakindent
Problem:    Cannot use 'formatlistpat' for breakindent.
Solution:   Use a negative list indent. (Maxim Kim, closes #8594)
2021-07-22 11:46:59 +02:00
Bram Moolenaar
d8e44476d8 patch 8.2.3197: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move a few more error messages to errors.h.
2021-07-21 22:20:33 +02:00
Bram Moolenaar
05bd9785fd patch 8.2.3196: Vim9: bool expression with numbers only fails at runtime
Problem:    Vim9: bool expression with numbers only fails at runtime.
Solution:   Check constant to be bool at compile time. (closes #8603)
2021-07-21 21:37:28 +02:00
Bram Moolenaar
c4c5642513 patch 8.2.3195: Vim9: unclear error when passing too many arguments to lambda
Problem:    Vim9: unclear error when passing too many arguments to lambda.
Solution:   Pass the expression itself instead of "[expression]".
            (closes #8604)
2021-07-21 20:38:46 +02:00
Yegappan Lakshmanan
cd9172077b patch 8.2.3194: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks, simplify some. (Yegappan
            Lakshmanan, closes #8598)
2021-07-21 19:09:09 +02:00
Bram Moolenaar
189663bdac patch 8.2.3193: screenpos() is wrong when 'display' is "lastline"
Problem:    screenpos() is wrong when the last line is partially visible and
            'display' is "lastline".
Solution:   Also compute the position for a partially visible line.
            (closes #8599)
2021-07-21 18:04:56 +02:00
Bram Moolenaar
11d7e62f1d patch 8.2.3192: build failure with small version
Problem:    Build failure with small version (Tony Mechelynck).
Solution:   Remove stray #ifdef.
2021-07-20 22:29:19 +02:00
Bram Moolenaar
63cb6567f0 patch 8.2.3191: Vim9: not enough code is tested
Problem:    Vim9: not enough code is tested.
Solution:   Use CheckLegacyAndVim9Success() in more places.  Fix uncovered
            problems.
2021-07-20 22:21:59 +02:00
Bram Moolenaar
e29a27f6f8 patch 8.2.3190: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move error messages to errors.h and give them a clear name.
2021-07-20 21:07:36 +02:00
Bram Moolenaar
9fa5dabedc patch 8.2.3189: Vim9: error when using "try|"
Problem:    Vim9: error when using "try|".
Solution:   Allow for "|" right after a command.
2021-07-20 19:18:44 +02:00
Yegappan Lakshmanan
83494b4ac6 patch 8.2.3188: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks, also at runtime. (Yegappan
            Lakshmanan, closes #8587)
2021-07-20 17:51:51 +02:00
Bram Moolenaar
9bb0dad0d8 patch 8.2.3187: Vim9: popup timer callback is not compiled
Problem:    Vim9: popup timer callback is not compiled.
Solution:   Compile the callback when creating the timer.
2021-07-19 22:19:29 +02:00
Bram Moolenaar
605793500b patch 8.2.3186: Vim9: not all failures for import tested
Problem:    Vim9: not all failures for import tested
Solution:   Test more import failures
2021-07-19 21:45:07 +02:00
Bram Moolenaar
ac2cd2b08f patch 8.2.3185: Vim9: start of inline function found in comment line
Problem:    Vim9: start of inline function found in comment line.
Solution:   Do not check for inline function in comment line. (closes #8589)
2021-07-19 21:04:23 +02:00
mityu
6106504e9e patch 8.2.3184: cannot add a digraph with a leading space
Problem:    Cannot add a digraph with a leading space.  It is not easy to list
            existing digraphs.
Solution:   Add setdigraph(), setdigraphlist(), getdigraph() and
            getdigraphlist(). (closes #8580)
2021-07-19 20:07:21 +02:00
Bram Moolenaar
98c2eaed27 patch 8.2.3183: duplicate error numbers
Problem:    Duplicate error numbers.
Solution:   Adjust the error numbers.
2021-07-19 10:38:49 +02:00
Bram Moolenaar
885971e2f5 patch 8.2.3182: Vim9: crash when using removing items from a constant list
Problem:    Vim9: crash when using removing items from a constant list.
            (Yegappan Lakshmanan)
Solution:   When a list was allocated with items copy them.
2021-07-18 22:25:29 +02:00
Dominique Pelle
9ff9c7b974 patch 8.2.3181: Vim9: builtin function test fails without channel feature
Problem:    Vim9: builtin function test fails without channel feature.
Solution:   Add feature checks. (Dominique Pellé, closes #8586)  Make feature
            checks more consistent.
2021-07-18 21:44:37 +02:00
Bram Moolenaar
f6488547e3 patch 8.2.3180: Vim9: memory leak when concatenating to an imported string
Problem:    Vim9: memory leak when concatenating to an imported string.
Solution:   Clear the destination.
2021-07-18 21:24:50 +02:00
Bram Moolenaar
24e9316560 patch 8.2.3179: Vim9: cannot assign to an imported variable at script level
Problem:    Vim9: cannot assign to an imported variable at script level.
Solution:   Lookup imported items when assigning.
2021-07-18 20:40:33 +02:00
Bram Moolenaar
4db572eeb2 patch 8.2.3178: Vim9: the file name of an :import cannot be an expression
Problem:    Vim9: the file name of an :import cannot be an expression.
Solution:   Accept an expression that results in a string.  Do not support
            :import in a function.
2021-07-18 18:21:38 +02:00
Bram Moolenaar
ad2d4969e1 patch 8.2.3177: Vim9: can not use "for _ in expr" at script level
Problem:    Vim9: can not use "for _ in expr" at script level.
Solution:   Skip assignment if the loop variable is "_".
2021-07-18 17:08:50 +02:00
Bram Moolenaar
0c35752d04 patch 8.2.3176: Vim9: no type error for comparing number with string
Problem:    Vim9: no type error for comparing number with string.
Solution:   Add a runtime type check. (closes #8571)
2021-07-18 14:43:43 +02:00
Bram Moolenaar
c6ba2f9dde patch 8.2.3175: Vim9: using illegal pointer with nested lambdas.
Problem:    Vim9: using illegal pointer with inline function inside a lambda.
Solution:   Clear eval_tofree_cmdline when advancing to the next line.
            (closes #8578)
2021-07-18 13:42:29 +02:00
Bram Moolenaar
47bc9c3337 patch 8.2.3174: Vim9: "legacy undo" finds "undo" variable
Problem:    Vim9: "legacy undo" finds "undo" variable.
Solution:   Do not pass lookup function to find_ex_command(). (closes #8563)
2021-07-17 21:24:56 +02:00
Yegappan Lakshmanan
a9a7c0c602 patch 8.2.3173: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add more type checks. (Yegappan Lakshmanan, closes #8581)
2021-07-17 19:11:07 +02:00
Bram Moolenaar
20c370d9f2 patch 8.2.3172: MzScheme test fails
Problem:    MzScheme test fails. (Christian Brabandt)
Solution:   Correct function name.
2021-07-16 10:39:28 +02:00
Bram Moolenaar
f5f1b59d3b patch 8.2.3171: another illegal memory access in test
Problem:    Another illegal memory access in test.
Solution:   Check pointer is after the start of the line.
2021-07-15 23:44:54 +02:00
Bram Moolenaar
d8cee76b49 patch 8.2.3170: Illegal memory access in test
Problem:    Illegal memory access in test.
Solution:   Check pointer is not before the start of the line.
2021-07-15 23:15:59 +02:00
Bram Moolenaar
5245beb37c patch 8.2.3169: Vim9: cannot handle nested inline function
Problem:    Vim9: cannot handle nested inline function.
Solution:   Check for nested inline function. (closes #8575)
2021-07-15 22:03:50 +02:00
Bram Moolenaar
378697ac58 patch 8.2.3168: Vim9: type error for constant of type any
Problem:    Vim9: type error for constant of type any.
Solution:   Do add a runtime type check if a constant has type any.
            (closes #8570)
2021-07-15 19:23:18 +02:00
Bram Moolenaar
547f94f330 patch 8.2.3167: get E12 in a job callback when searching for tags
Problem:    Get E12 in a job callback when searching for tags. (Andy Stewart)
Solution:   Use the sandbox only for executing a command, not for searching.
            (closes #8511)
2021-07-15 18:14:56 +02:00
Bram Moolenaar
b5841b99e6 patch 8.2.3166: Vim9: nested autoload call error overruled by "Unknown error"
Problem:    Vim9: nested autoload call error overruled by "Unknown error".
Solution:   Check need_rethrow before giving an "Unknown error".
            (closes #8568)
2021-07-15 18:09:53 +02:00
Bram Moolenaar
9e60e899ee patch 8.2.3165: Vim9: in a || expression the error line number may be wrong
Problem:    Vim9: in a || expression the error line number may be wrong.
Solution:   Save and restore the line number when checking the type.
            (closes #8569)
2021-07-15 15:40:58 +02:00
Bram Moolenaar
0894e0d808 patch 8.2.3164: MS-Windows: reported version lacks patchlevel
Problem:    MS-Windows: reported version lacks patchlevel, causing some update
            tools to update too often. (Klaus Frank)
Solution:   Add the patchlevel to the version. (Christian Brabandt)
2021-07-15 14:14:30 +02:00
Wei-Chung Wen
1557b16dad patch 8.2.3163: location list window may open a wrong file
Problem:    Location list window may open a wrong file.
Solution:   Also update the qf_ptr field. (Wei-Chung Wen, closes #8565,
            closes #8566)
2021-07-15 13:13:39 +02:00
Yegappan Lakshmanan
1a71d31bf3 patch 8.2.3162: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add more type checks. (Yegappan Lakshmanan, closes #8560)
2021-07-15 12:49:58 +02:00
Bram Moolenaar
c816a2c226 patch 8.2.3161: Vim9: no error when reltime() has invalid arguments
Problem:    Vim9: no error when reltime() has invalid arguments.
Solution:   Add an error. (closes #8562)
2021-07-14 21:00:41 +02:00
Christian Brabandt
4a0b85ad01 patch 8.2.3160: 'breakindent' does not work well for bulleted lists
Problem:    'breakindent' does not work well for bulleted and numbered lists.
Solution:   Add the "list" entry to 'breakindentopt'. (Christian Brabandt,
            closes #8564, closes #1661)
2021-07-14 20:00:27 +02:00
Bram Moolenaar
5bea41dea3 patch 8.2.3159: cursor displayed in wrong position after deleting line
Problem:    Cursor displayed in wrong position after deleting line.
Solution:   When deleting lines do not approximate botline. (fixes #8559)
2021-07-13 22:21:44 +02:00
Bram Moolenaar
1840a7b4e3 patch 8.2.3158: strange error message when using islocked() with a number
Problem:    Strange error message when using islocked() with a number.
            (Yegappan Lakshmanan)
Solution:   Check that the name is empty.
2021-07-13 20:32:29 +02:00
Christian Brabandt
16e26a3116 patch 8.2.3157: crypt test may fail on MS-Windows
Problem:    Crypt test may fail on MS-Windows.
Solution:   Ignore "[unix]" in the file message. (Christian Brabandt,
            closes #8561)
2021-07-13 19:09:12 +02:00
Dominique Pelle
ee41052ccb patch 8.2.3156: Vim9: term_getansicolors() test fails without +termguicolors
Problem:    Vim9: term_getansicolors() test fails without +termguicolors.
Solution:   Add a check for the feature. (Dominique Pellé, closes #8555)
2021-07-12 22:15:24 +02:00
Dominique Pelle
042414fa00 patch 8.2.3155: some option related code not covered by tests
Problem:    Some option related code not covered by tests.
Solution:   Add a few test cases. (Dominique Pellé, closes #8552)
2021-07-12 21:43:19 +02:00
Yegappan Lakshmanan
841e498c5d patch 8.2.3154: Vim9: some type checks for builtin functions fail
Problem:    Vim9: some type checks for builtin functions fail.
Solution:   Correct the type checks. (Yegappan Lakshmanan, closes #8551,
            closes #8550)
2021-07-11 22:04:25 +02:00
Tsuyoshi CHO
7b7a118e74 patch 8.2.3153: URLs with a dash in the scheme are not recognized
Problem:    URLs with a dash in the scheme are not recognized.
Solution:   Allow for a scheme with a dash, but not at the start or end.
            (Tsuyoshi CHO, closes #8299)
2021-07-11 21:51:17 +02:00
Bram Moolenaar
11005b078d patch 8.2.3152: Vim9: accessing "s:" results in an error
Problem:    Vim9: accessing "s:" results in an error.
Solution:   Do not try to lookup a script variable for "s:". (closes #8549)
2021-07-11 20:59:00 +02:00
Bram Moolenaar
ffcfddc759 patch 8.2.3151: Vim9: profiling fails if nested function is also profiled
Problem:    Vim9: profiling fails if nested function is also profiled.
Solution:   Use the compile type from the outer function. (closes #8543)
2021-07-11 20:22:30 +02:00
Yegappan Lakshmanan
c72bdd28ac patch 8.2.3150: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add more type checks. (Yegappan Lakshmanan, closes #8545)
2021-07-11 19:44:18 +02:00
Bram Moolenaar
cc7eb2aa7a patch 8.2.3149: some plugins have a problem with the error check
Problem:    Some plugins have a problem with the error check for using
            :command with -complete but without -nargs.
Solution:   In legacy script only give a warning message.
2021-07-11 19:12:04 +02:00
Bram Moolenaar
5231224e11 patch 8.2.3148: Vim9: function arg type check does not handle base offset
Problem:    Vim9: function arg type check does not handle base offset.
Solution:   Take the base offset into account when checking builtin function
            argument types.
2021-07-11 18:23:19 +02:00
Bram Moolenaar
648594eaf7 patch 8.2.3147: Vim9: profiling does not work with a nested function
Problem:    Vim9: profiling does not work with a nested function.
Solution:   Also compile a nested function without profiling. (closes #8543)
            Handle that compiling may cause the table of compiled functions to
            change.
2021-07-11 17:55:01 +02:00
Bram Moolenaar
c03fe66ade patch 8.2.3146: Vim9: line number wrong for :execute argument
Problem:    Vim9: line number wrong for :execute argument.
Solution:   Use the line number of the :execute command itself. (closes #8537)
2021-07-11 16:52:45 +02:00
Bram Moolenaar
4ece152ad6 patch 8.2.3145: Vim9: profile test fails without profile feature
Problem:    Vim9: profile test fails without profile feature.
Solution:   Check the profile feature is present.
2021-07-11 16:31:51 +02:00
Bram Moolenaar
0f1227f7d5 patch 8.2.3144: Vim9: no error when using an invalid value for a line number
Problem:    Vim9: no error when using an invalid value for a line number.
Solution:   Give an error if the string value is not recognized.
            (closes #8536)
2021-07-11 16:01:58 +02:00
Bram Moolenaar
d9162550aa patch 8.2.3143: Vim9: wrong context if lambda called from profiled function
Problem:    Vim9: A lambda may be compiled with the wrong context if it is
            called from a profiled function.
Solution:   Compile the lambda with and without profiling. (closes #8543)
2021-07-11 15:26:13 +02:00
Bram Moolenaar
1aeddeb8bd patch 8.2.3142: Vim9: type check for has_key() argument is too strict
Problem:    Vim9: type check for has_key() argument is too strict.
Solution:   Also allow for a number key argument. (closes #8542)
2021-07-11 14:55:49 +02:00
Martin Tournoij
de69a7353e patch 8.2.3141: no error when using :complete for :command without -nargs
Problem:    No error when using :complete for :command without -nargs.
Solution:   Give an error. (Martin Tournoij, closes #8544, closes #8541)
2021-07-11 14:28:25 +02:00
Bram Moolenaar
482d2f37a5 patch 8.2.3140: MS-Windows: ipv6 channel test is very flaky also without GUI
Problem:    MS-Windows: ipv6 channel test is very flaky also without the GUI.
Solution:   Skip the test also without the GUI.
2021-07-10 22:21:40 +02:00
Yegappan Lakshmanan
a2438132a6 patch 8.2.3139: functions for string manipulation are spread out
Problem:    Functions for string manipulation are spread out.
Solution:   Move string related functions to a new source file. (Yegappan
            Lakshmanan, closes #8470)
2021-07-10 21:29:18 +02:00
Bram Moolenaar
31e21766d6 patch 8.2.3138: debugger test fails
Problem:    Debugger test fails.
Solution:   Adjust eval command.
2021-07-10 20:43:59 +02:00
Bram Moolenaar
c323527d67 patch 8.2.3137: Vim9: no error when a line only has a variable name
Problem:    Vim9: no error when a line only has a variable name.
Solution:   Give an error when an expression is evaluated without an effect.
            (closes #8538)
2021-07-10 19:42:03 +02:00
Dominique Pelle
fe3418abe0 patch 8.2.3136: no test for E187 and "No swap file"
Problem:    No test for E187 and "No swap file".
Solution:   Add a test. (Dominique Pellé, closes #8540)
2021-07-10 17:59:48 +02:00
Yegappan Lakshmanan
5b73992d8f patch 8.2.3135: Vim9: builtin function arguments not checked at compile time
Problem:    Vim9: builtin function arguments not checked at compile time.
Solution:   Add more type checks. (Yegappan Lakshmanan, closes #8539)
2021-07-10 13:15:41 +02:00
Bram Moolenaar
9da32e4d57 patch 8.2.3134: crash when using typename() on a function reference
Problem:    Crash when using typename() on a function reference. (Naohiro Ono)
Solution:   Initialize pointer to NULL. (closes #8531)
2021-07-09 19:53:57 +02:00
Bram Moolenaar
90fba5627b patch 8.2.3133: Vim9: memory leak when add() fails
Problem:    Vim9: memory leak when add() fails.
Solution:   Allocate listitem_T after type check.
2021-07-09 19:17:55 +02:00
Bram Moolenaar
6bcb18253a patch 8.2.3132: compiler warns for size_t to colnr_T conversion.
Problem:    Compiler warns for size_t to colnr_T conversion. (Randall W.
            Morris)
Solution:   Add a type cast.
2021-07-09 15:54:00 +02:00
Bram Moolenaar
981217c11f patch 8.2.3131: MS-Windows: ipv6 channel test is very flaky in the GUI
Problem:    MS-Windows: ipv6 channel test is very flaky in the GUI.
Solution:   Skip the test.
2021-07-08 22:20:50 +02:00
Bram Moolenaar
b885a7c72c patch 8.2.3130: Vim9: import test fails
Problem:    Vim9: import test fails.
Solution:   Rename directory back to "import", use "p" to avoid an error when
            the directory already exists.
2021-07-08 22:02:11 +02:00
Bram Moolenaar
c967d57aa9 patch 8.2.3129: Vim9: imported uninitialized list does not get type checked
Problem:    Vim9: imported uninitialized list does not get type checked.
Solution:   Get type from imported variable.
2021-07-08 21:38:50 +02:00
Bram Moolenaar
f055d45023 patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Problem:    Vim9: uninitialzed list does not get type checked.
Solution:   Set the type when initializing the variable. (closes #8529)
2021-07-08 20:57:24 +02:00
Bram Moolenaar
f32f099761 patch 8.2.3127: Vim9: no error when adding number to list of string
Problem:    Vim9: no error when adding number to list of string.
Solution:   Check the value type. (closes #8529)
2021-07-08 20:53:40 +02:00
Bram Moolenaar
d4ab807d62 patch 8.2.3126: Vim9: for loop error reports wrong line number
Problem:    Vim9: for loop error reports wrong line number.
Solution:   Save and restore the line number when evaluating the expression.
            (closes #8514)
2021-07-08 19:22:12 +02:00
=?UTF-8?q?Dundar=20G=C3=B6c?=
09f688c33a patch 8.2.3125: variables are set but not used
Problem:    Variables are set but not used.
Solution:   Move the declarations to the block where they are used.
            (closes #8527)
2021-07-08 18:05:00 +02:00
Bram Moolenaar
deb108ba0a patch 8.2.3124: Vim9: no error for white space between option and "=9"
Problem:    Vim9: no error for white space between option and "=9".
Solution:   Check for extraneous white space. (issue #8408)
2021-07-08 17:35:36 +02:00
Bram Moolenaar
1594f31345 patch 8.2.3123: Vim9: confusing error when using white space after option
Problem:    Vim9: confusing error when using white space after option, before
            one of "!&<".
Solution:   Give a specific error. (issue #8408)
2021-07-08 16:40:13 +02:00
Bram Moolenaar
30441bb3d5 patch 8.2.3122: with 'nowrap' cursor position is unexected in narrow window
Problem:    With 'nowrap' cursor position is unexected in narrow window.
            (Leonid V.  Fedorenchik)
Solution:   Put cursor on the last non-empty line. (closes #8525)
2021-07-08 13:19:31 +02:00
Bram Moolenaar
41fb723ee9 patch 8.2.3121: 'listchars' "exceeds" character appears in foldcolumn
Problem:    'listchars' "exceeds" character appears in foldcolumn. Window
            separator is missing. (Leonid V.  Fedorenchik)
Solution:   Only draw the "exceeds" character in the text area.  Break the
            loop when not drawing the text. (closes #8524)
2021-07-08 12:40:05 +02:00
Bram Moolenaar
db86472770 patch 8.2.3120: crypt with sodium test fails on MS-Windows
Problem:    Crypt with sodium test fails on MS-Windows.
Solution:   Make the tests pass. (closes #8428)
2021-07-08 11:37:50 +02:00
Bram Moolenaar
6a9e5c69cf patch 8.2.3119: compiler warning for unused argument
Problem:    Compiler warning for unused argument.
Solution:   Add UNUSED.
2021-07-07 22:13:08 +02:00
Bram Moolenaar
5ede5b231e patch 8.2.3118: Vim9: "any" type not handled correctly in for loop
Problem:    Vim9: "any" type not handled correctly in for loop.
Solution:   Change compile time check into runtime check. (closes #8516)
2021-07-07 21:55:25 +02:00
Bram Moolenaar
efc5db5215 patch 8.2.3117: Vim9: type not properly checked in for loop
Problem:    Vim9: type not properly checked in for loop.
Solution:   Have items() return a list of lists.  Add runtime type checks.
            (closes #8515)
2021-07-07 21:21:30 +02:00
Bram Moolenaar
90df4b9d42 Update runtime files 2021-07-07 20:26:08 +02:00
Bram Moolenaar
303215d60c patch 8.2.3116: Vim9: crash when debugging a function with line continuation
Problem:    Vim9: crash when debugging a function with line continuation.
Solution:   Check for a NULL pointer. (closes #8521)
2021-07-07 20:10:43 +02:00
Bram Moolenaar
b5098060f4 patch 8.2.3115: Coverity complains about free_wininfo() use
Problem:    Coverity complains about free_wininfo() use.
Solution:   Add a condition that "wip2" is not equal to "wip". (Neovim #14996)
2021-07-07 19:26:19 +02:00
=?UTF-8?q?Ola=20S=C3=B6der?=
599a6e5b36 patch 8.2.3114: Amiga-like systems: build error using stat()
Problem:    Amiga-like systems: build error using stat().
Solution:   Only build swapfile_process_running() on systems where it is
            actually used. (Ola Söder, closes #8519)
2021-07-06 20:15:46 +02:00
Bram Moolenaar
442b29c968 patch 8.2.3113: no error when for loop variable shadows script variable
Problem:    No error when for loop variable shadows script variable.
Solution:   Check for the error. (closes #8512)
2021-07-05 22:23:00 +02:00
Bram Moolenaar
5cb09620c1 patch 8.2.3112: in rare cases the cursor may be somewhere in a folded line
Problem:    With concealing enabled and indirectly closing a fold the cursor
            may be somewhere in a folded line when it is not on the first line
            of the fold.
Solution:   Check if he cursor is somewhere in the folded text.
2021-07-05 22:03:04 +02:00
Bram Moolenaar
404557e6a6 patch 8.2.3111: Vim9: confusing error with extra whitespace before colon
Problem:    Vim9: confusing error with extra whitespace before colon.
Solution:   Check for colon after white space. (closes #8513)
2021-07-05 21:41:48 +02:00
Bram Moolenaar
04db26b360 patch 8.2.3110: a pattern that matches the cursor position is complicated
Problem:    A pattern that matches the cursor position is bit complicated.
Solution:   Use a dot to indicate the cursor line and column. (Christian
            Brabandt, closes #8497, closes #8179)
2021-07-05 20:15:23 +02:00
Bram Moolenaar
f6d877975b patch 8.2.3109: check for $DISPLAY never fails
Problem:    Check for $DISPLAY never fails.
Solution:   Use eval().
2021-07-05 17:49:02 +02:00
Bram Moolenaar
d6fa7bd5b9 patch 8.2.3108: test for remote_foreground() fails
Problem:    Test for remote_foreground() fails. (Elimar Riesebieter)
Solution:   Check that $DISPLAY is set. (Christian Brabandt)
2021-07-05 14:10:04 +02:00
Bram Moolenaar
22f85d0459 patch 8.2.3107: Vim9: error for arguments while type didn't specify arguments
Problem:    Vim9: error for arguments while type didn't specify arguments.
Solution:   Do not update that type to check when no argument count is
            specified. (closes #8492)
2021-07-04 23:29:30 +02:00
Bram Moolenaar
6977dba04b patch 8.2.3106: Vim9: confusing line number reported for error
Problem:    Vim9: confusing line number reported for error.
Solution:   Use the start line number for the store instruction.
            (closes #8488)
2021-07-04 22:48:12 +02:00
Bram Moolenaar
97f227d9c9 patch 8.2.3105: Vim9: type of partial is wrong when it has arguments
Problem:    Vim9: type of partial is wrong when it has arguments.
Solution:   Subtract arguments from the count. (issue #8492)
2021-07-04 20:20:52 +02:00
Bram Moolenaar
b7480cd893 patch 8.2.3104: Vim9: unspecified function type causes type error
Problem:    Vim9: unspecified function type causes type error.
Solution:   Don't check type when min_argcount is negative. (issue #8492)
2021-07-04 18:28:15 +02:00
Bram Moolenaar
f33cae6050 patch 8.2.3103: swap test may fail on some systems
Problem:    Swap test may fail on some systems when jobs take longer to exit.
Solution:   Use different file names.
2021-07-04 17:36:54 +02:00
Bram Moolenaar
3777d6e32b patch 8.2.3102: test for crash fix does not fail without the fix
Problem:    Test for crash fix does not fail without the fix.
Solution:   Adjust the test sequence. (closes #8506)
2021-07-04 17:23:25 +02:00
Bram Moolenaar
26e88ec8e2 patch 8.2.3101: missing function prototype for vim_round()
Problem:    Missing function prototype for vim_round().
Solution:   Add the prototype
2021-07-04 17:21:04 +02:00
Bram Moolenaar
67b17a6fc6 patch 8.2.3101: missing function prototype for vim_round()
Problem:    Missing function prototype for vim_round().
Solution:   Add the prototype.
2021-07-04 16:50:55 +02:00
Bram Moolenaar
7a40ff00ed patch 8.2.3100: Vim9: no error when using type with unknown number of args
Problem:    Vim9: no error when using type with unknown number of arguments.
Solution:   Do not ignore argument count of -1. (closes #8492)
2021-07-04 15:54:08 +02:00
Bram Moolenaar
4197828dc6 patch 8.2.3099: Vim9: missing catch/finally not reported at script level
Problem:    Vim9: missing catch/finally not reported at script level.
Solution:   Give an error. (closes #8487)
2021-07-04 14:47:30 +02:00
Bram Moolenaar
999db2346b patch 8.2.3098: popup window test is flaky on MS-Windows with GUI
Problem:    Popup window test is flaky on MS-Windows with GUI.
Solution:   Skip the check in this situation.
2021-07-04 14:00:55 +02:00
Bram Moolenaar
1d97efce0c patch 8.2.3097: crash when using "quit" at recovery prompt
Problem:    Crash when using "quit" at recovery prompt and autocommands are
            triggered.
Solution:   Block autocommands when creating an empty buffer to use as the
            current buffer. (closes #8506)
2021-07-04 13:27:11 +02:00
Dominique Pelle
6c72fd51a8 patch 8.2.3096: temp files remain after running tests
Problem:    Temp files remain after running tests.
Solution:   Delete the right files. (Dominique Pellé, closes #8509)
2021-07-04 12:30:06 +02:00
Bram Moolenaar
b17ab86e7b patch 8.2.3095: with 'virtualedit' set to "block" block selection is wrong
Problem:    With 'virtualedit' set to "block" block selection is wrong after
            using "$".  (Marco Trosi)
Solution:   Compute the longest selected line. (closes #8495)
2021-07-03 22:15:17 +02:00
Dominique Pelle
c60e959cba patch 8.2.3094: Test_popup_atcursor_pos() fails without the conceal feature
Problem:    Test_popup_atcursor_pos() fails without the conceal feature.
Solution:   Add a check for the conceal feature. (Dominique Pellé,
            closes #8505)
2021-07-03 21:41:38 +02:00
Bram Moolenaar
fb773a3e0a patch 8.2.3093: tablabel_tooltip test fails with Athena
Problem:    tablabel_tooltip test fails with Athena. (Dominique Pellé)
Solution:   Skip the test when using Athena. (closes #8508)
2021-07-03 21:37:59 +02:00
Dominique Pelle
74509239df patch 8.2.3092: Vim9: builtin function test fails without +channel feature
Problem:    Vim9: builtin function test fails without the +channel feature.
Solution:   Check the +channel feature is supported. (Dominique Pellé,
            closes #8507)
2021-07-03 19:27:37 +02:00
Bram Moolenaar
e28d9b3bd4 patch 8.2.3091: Vim9: default argument expr. cannot use previous argument
Problem:    Vim9: default argument expression cannot use previous argument
Solution:   Correct argument index. (closes #8496)
2021-07-03 18:56:53 +02:00
Bram Moolenaar
00aaa512d5 patch 8.2.3090: in rare cases the cursor may be somewhere in a folded line
Problem:    With concealing enabled and indirectly closing a fold the cursor
            may be somewhere in a folded line.
Solution:   Recompute the cursor position when the cursor line can be
            concealed. (closes #8480)
2021-07-03 18:04:11 +02:00
Bram Moolenaar
20cc528320 patch 8.2.3089: garbage collection has useless code
Problem:    Garbage collection has useless code.
Solution:   Bail out when aborting. (closes #8504)
2021-07-03 16:33:16 +02:00
Bram Moolenaar
9cee4a1c9c patch 8.2.3088: with 'virtualedit' set to "block" Visual highlight is wrong
Problem:    With 'virtualedit' set to "block" Visual highlight is wrong after
            using "$".  (Marco Trosi)
Solution:   Do not set w_old_cursor_lcol to MAXCOL. (closes #8495)
2021-07-03 15:08:37 +02:00
Bram Moolenaar
fcde67c99f patch 8.2.3087: Gemtext files are not recognized
Problem:    Gemtext files are not recognized.
Solution:   Recognize .gmi and .gemini files. (closes #8427)
2021-07-03 13:51:44 +02:00
Bram Moolenaar
6fc0161682 patch 8.2.3086: Vim9: breakpoint on "for" does not work
Problem:    Vim9: breakpoint on "for" does not work.
Solution:   Use the right line number in ISN_DEBUG. (closes #8486)
2021-07-03 13:36:31 +02:00
Izhak Jakov
acbb4b5720 patch 8.2.3085: JSONC files are not recognized
Problem:    JSONC files are not recognized.
Solution:   Recognize .jsonc files. (Izhak Jakov, closes #8500)
2021-07-03 13:09:37 +02:00
Yegappan Lakshmanan
a26f56f675 patch 8.2.3084: Vim9: builtin function argument types are not checked
Problem:    Vim9: builtin function argument types are not checked at compile
            time.
Solution:   Add argument types. (Yegappan Lakshmanan, closes #8503)
2021-07-03 11:58:12 +02:00
Christian Brabandt
72463f883c patch 8.2.3083: crash when passing null string to charclass()
Problem:    Crash when passing null string to charclass().
Solution:   Bail out when string pointer is NULL. (Christian Brabandt,
            closes #8498, closes #8260)
2021-07-02 20:19:31 +02:00
Bram Moolenaar
b836f631db patch 8.2.3082: a channel command "echoerr" does not show anything
Problem:    A channel command "echoerr" does not show anything.
Solution:   Do not use silent errors when using an "echoerr" command.
            (closes #8494)
2021-07-01 22:11:28 +02:00
Alisue
11a632d60b patch 8.2.3081: cannot catch errors in a channel command
Problem:    Cannot catch errors in a channel command.
Solution:   Instead of skipping the error make it silent. (closes #8477)
2021-06-30 22:01:02 +02:00
Yegappan Lakshmanan
576cb75ceb patch 8.2.3080: recover test fails on 32bit systems
Problem:    Recover test fails on 32bit systems. (Ondřej Súkup)
Solution:   Detect 32/64 bit systems. (Yegappan Lakshmanan, closes #8485,
            closes #8479)
2021-06-30 21:30:10 +02:00
Mike Williams
a3d1b29bd3 patch 8.2.3079: Powershell core not supported by default
Problem:    Powershell core not supported by default.
Solution:   Set option defaults for "pwsh". (Mike Williams, closes #8481)
2021-06-30 20:56:00 +02:00
Bram Moolenaar
834193afd7 patch 8.2.3078: Vim9: profile test fails
Problem:    Vim9: profile test fails.
Solution:   Make throw in :catch jump to :finally.
2021-06-30 20:39:15 +02:00
Bram Moolenaar
d3d8feeb89 patch 8.2.3077: Vim9: an error in a catch block is not reported
Problem:    Vim9: an error in a catch block is not reported.
Solution:   Put the "in catch" flag in the try stack. (closes #8478)
2021-06-30 19:54:43 +02:00
Bram Moolenaar
3f987b5917 patch 8.2.3076: Vim9: using try in catch block causes a hang
Problem:    Vim9: using try in catch block causes a hang.
Solution:   Save and restore the ec_in_catch flag. (closes #8478)
2021-06-30 12:02:24 +02:00
=?UTF-8?q?J=C3=BCrgen=20Weigert?=
80b2ba3e96 patch 8.2.3075: xxd always reports an old version string
Problem:    Xxd always reports an old version string. (Åsmund Ervik)
Solution:   Update the version string with the last known change date.
            (Jürgen Weigert, closes #8475)
2021-06-29 20:36:25 +02:00
Bram Moolenaar
ea042677ab patch 8.2.3074: popup_atcursor() uses wrong position with concealing
Problem:    popup_atcursor() uses wrong position with concealing.
Solution:   Keep w_wcol in conceal_check_cursor_line(). (closes #8476)
2021-06-29 20:22:32 +02:00
Bram Moolenaar
4067bd3604 patch 8.2.3073: when cursor is move for block append wrong text is inserted
Problem:    When cursor is move for block append wrong text is inserted.
Solution:   Calculate an offset. (Christian Brabandt, closes #8433,
            closes #8288)
2021-06-29 18:54:35 +02:00
Bram Moolenaar
7d7bcc6ba0 patch 8.2.3072: "zy" does not work well when "virtualedit' is "block"
Problem:    The "zy" command does not work well when 'virtualedit' is set to
            "block". (Johann Höchtl)
Solution:   Make endspaces zero. (Christian Brabandt, closes #8468,
            closes #8448)
2021-06-28 21:54:27 +02:00
Mike Williams
127950241e patch 8.2.3071: shell options are not set properly for PowerShell
Problem:    Shell options are not set properly for PowerShell.
Solution:   Use better option defaults. (Mike Willams, closes #8459)
2021-06-28 20:53:58 +02:00
Yegappan Lakshmanan
ffec6dd16a patch 8.2.3070: not enough testing for shell use
Problem:    Not enough testing for shell use.
Solution:   Add a bit more testing. (Yegappan Lakshmanan, closes #8469)
2021-06-27 22:09:59 +02:00
Bram Moolenaar
108010aa47 patch 8.2.3069: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move some error messages to errors.h.  Use clearer names.
2021-06-27 22:03:33 +02:00
Christian Brabandt
d887297ad0 patch 8.2.3068: Unicode tables are slightly outdated
Problem:    Unicode tables are slightly outdated.
Solution:   Update the tables for Unicode release 13. (Christian Brabandt
            closes #8430)
2021-06-27 21:30:14 +02:00
Bram Moolenaar
1d1ce613cd patch 8.2.3067: building fails with Athena
Problem:    Building fails with Athena. (Elimar Riesebieter)
Solution:   Adjust #ifdefs and add the 'drop_file' feature.
2021-06-27 19:02:52 +02:00
Bram Moolenaar
17d868b8b2 patch 8.2.3066: Vim9: debugging lambda does not work
Problem:    Vim9: debugging lambda does not work.
Solution:   Use the compile type of the function when compiling a lambda.
            (closes #8412)
2021-06-27 16:29:53 +02:00
Bram Moolenaar
577dc93da9 patch 8.2.3065: Vim9: error when sourcing script twice and reusing function
Problem:    Vim9: error when sourcing script twice and reusing a function
            name.
Solution:   Check if the function is dead. (closes #8463)
2021-06-27 15:35:40 +02:00
Bram Moolenaar
4d8f476176 Update runtime files 2021-06-27 15:18:56 +02:00
Bram Moolenaar
e65081d1b5 patch 8.2.3064: Vim9: in script cannot set item in uninitialized list
Problem:    Vim9: in script cannot set item in uninitialized list.
Solution:   When a list is NULL allocate an empty one. (closes #8461)
2021-06-27 15:04:05 +02:00
Bram Moolenaar
65aee0b714 patch 8.2.3063: crash when switching 'cryptmethod' to xchaha20 with undo file
Problem:    Crash when switching 'cryptmethod' to xchaha20 with an existing
            undo file. (Martin Tournoij)
Solution:   Disable reading undo file when decoding can't be done inplace.
            (issue #8467)
2021-06-27 14:08:24 +02:00
Bram Moolenaar
4cd5c52d64 patch 8.2.3062: internal error when adding several text properties
Problem:    Internal error when adding several text properties.
Solution:   Do not handle text properties when deleting a line for splitting a
            data block. (closes #8466)
2021-06-27 13:04:00 +02:00
Yegappan Lakshmanan
054794c20f patch 8.2.3061: testing the shell option is incomplete and spread out
Problem:    Testing the shell option is incomplete and spread out.
Solution:   Move shell tests to one file and increase coverage. (Yegappan
            Lakshmanan, closes #8464)
2021-06-27 12:07:49 +02:00
Bram Moolenaar
98f9a5f4cb patch 8.2.3060: Vim9: cannot use ternary operator in parenthesis
Problem:    Vim9: cannot use ternary operator in parenthesis.
Solution:   Do not use "=~" for a default argument value.  (closes #8462)
2021-06-26 22:22:38 +02:00
Bram Moolenaar
e3ffaa6b7c patch 8.2.3059: Vim9: memory leak when using lambda
Problem:    Vim9: memory leak when using lambda.
Solution:   Do not store the default value strings when skipping.
2021-06-26 22:17:35 +02:00
Bram Moolenaar
015cf10311 patch 8.2.3058: Vim9: cannot use ternary operator in parenthesis
Problem:    Vim9: cannot use ternary operator in parenthesis.
Solution:   Do not use "==" for a default argument value.  (closes #8462)
2021-06-26 21:52:02 +02:00
Bram Moolenaar
307dec4567 patch 8.2.3057: Vim9: debugger test fails with normal features and +terminal
Problem:    Vim9: debugger test fails with normal features and +terminal.
            (Dominique Pellé)
Solution:   Adjust the INSTRUCTIONS macro. (closes #8460)
2021-06-26 21:21:03 +02:00
Bram Moolenaar
14ded11fca patch 8.2.3056: Vim9: using default value in lambda gives confusing error
Problem:    Vim9: using default value in lambda gives confusing error.
Solution:   Pass "default_args" on the first pass to get the arguments.
            (closes #8455)
2021-06-26 19:25:49 +02:00
Bram Moolenaar
3a3b10e87a patch 8.2.3055: strange error for assigning to "x.key" on non-dictionary
Problem:    Strange error for assigning to "x.key" on non-dictionary.
Solution:   Add a specific error message. (closes #8451)
2021-06-26 15:00:59 +02:00
Bram Moolenaar
4d5dfe2083 patch 8.2.3054: Vim9: unpack assignment using "_" after semicolon fails
Problem:    Vim9: unpack assignment using "_" after semicolon fails.
Solution:   Drop the expression result. (closes #8453)
2021-06-26 13:59:29 +02:00
Bram Moolenaar
13e45d14ba patch 8.2.3053: Vim9: cannot assign to @@ in :def function
Problem:    Vim9: cannot assign to @@ in :def function
Solution:   Handle '@' like '"'.
2021-06-26 13:28:35 +02:00
Bram Moolenaar
ce024c3e20 patch 8.2.3052: Vim9: "legacy call" does not work
Problem:    Vim9: "legacy call" does not work.
Solution:   Do not skip "call" after "legacy". (closes #8454)
2021-06-26 13:00:49 +02:00
Bram Moolenaar
444d878324 patch 8.2.3051: Vim9: for loop with one list variable does not work
Problem:    Vim9: for loop with one list variable does not work.
Solution:   Use a separate flag for unpacking a list. (closes #8452)
2021-06-26 12:40:56 +02:00
Austin Gatlin
f3caeb63d6 patch 8.2.3050: cannot recognize elixir files
Problem:    Cannot recognize elixir files.
Solution:   Recognize Elixir-specific files.  Check if an .ex file is Euphoria
            or Elixir. (Austin Gatlin, closes #8401, closes #8446)
2021-06-26 12:02:55 +02:00
Kevin Locke
6582e230a0 patch 8.2.3049: JSON patch file not recognized
Problem:    JSON patch file not recognized.
Solution:   Recognize json-patch as json. (Kevin Locke, closes #8450)
2021-06-25 21:54:25 +02:00
Bram Moolenaar
22480d147f patch 8.2.3048: strange error for white space after ++ command
Problem:    Strange error for white space after ++ command.
Solution:   Check for white space explicitly. (closes #8440)
2021-06-25 21:31:09 +02:00
Bram Moolenaar
f3d30842dc patch 8.2.3047: increment and decrement don't allow for next command
Problem:    Increment and decrement don't allow for next command.
Solution:   Allow for comment and next command. (closes #8442)
2021-06-25 19:29:30 +02:00
ola.soder@axis.com
b420ac9d20 patch 8.2.3046: Amiga MorphOS: Term mode is set using DOS packets
Problem:    Amiga MorphOS: Term mode is set using DOS packets.
Solution:   Use the same way of setting term mdoe on all next gen Amiga-like
            systems.  (Ola Söder, closes #8445)
2021-06-24 21:43:31 +02:00
Christian Brabandt
98703d7f6c patch 8.2.3045: minor typos
Problem:    Minor typos.
Solution:   Fix the typos. (Christian Brabandt, closes #8441)
2021-06-24 19:55:27 +02:00
ola.soder@axis.com
3a62b14077 patch 8.2.3044: Amiga MorphOS and AROS: process ID is not valid
Problem:    Amiga MorphOS and AROS: process ID is not valid.
Solution:   Use FindTask to return something which is unique to all processes.
            (Ola Söder, closes #8444)
2021-06-24 18:50:30 +02:00
ola.soder@axis.com
d415d26913 patch 8.2.3043: Amiga: cannot get the shell size on MorphOS and AROS
Problem:    Amiga: cannot get the shell size on MorphOS and AROS.
Solution:   Use control sequences. (Ola Söder, closes #8438)
2021-06-23 22:05:27 +02:00
Bram Moolenaar
6738fd2000 patch 8.2.3042: swap file test fails
Problem:    Swap file test fails.
Solution:   Check for a very high process ID instead of one, which should be
            running.
2021-06-23 21:44:06 +02:00
Bram Moolenaar
44dea9da4b patch 8.2.3041: detecting if the process of a swap file is running fails
Problem:    Detecting if the process of a swap file is running fails if the
            process is owned by another user.
Solution:   Check for the ESRCH error. (closes #8436)
2021-06-23 21:13:20 +02:00
Yegappan Lakshmanan
18d46587b9 patch 8.2.3040: GUI: dropping files not tested
Problem:    GUI: dropping files not tested.
Solution:   Add test_gui_drop_files() and tests. (Yegappan Lakshmanan,
            closes #8434)
2021-06-23 20:46:52 +02:00
Bram Moolenaar
8cec9273d2 patch 8.2.3039: Vim9: breakpoint at a comment line does not work
Problem:    Vim9: breakpoint at a comment line does not work.
Solution:   Add the comment line number to the debug instruction.
            (closes #8429)
2021-06-23 20:20:53 +02:00
ola.soder@axis.com
cc65040986 patch 8.2.3038: Amiga built-in version string doesn't include build date
Problem:    Amiga built-in version string doesn't include build date.
Solution:   Add the build date if available. (Ola Söder, closes #8437)
2021-06-23 15:52:46 +02:00
ichizok
8ce3ca8961 patch 8.2.3037: configure reports libcanberra when checking for libsodium
Problem:    Configure reports libcanberra when checking for libsodium.
Solution:   Adjust the message. (Ozaki Kiichi, closes #8435)
2021-06-23 15:41:52 +02:00
Yegappan Lakshmanan
7237cab8f1 patch 8.2.3036: Vim9: builtin function arguments not checked at compile time
Problem:    Vim9: builtin function arguments not checked at compile time.
Solution:   Add more argument type specs. Check arguments to test_setmouse()
            and test_gui_mouse_event(). (Yegappan Lakshmanan, closes #8425)
2021-06-22 19:52:27 +02:00
Bram Moolenaar
831bdf8622 patch 8.2.3035: Vim9: crash when calling :def function with partial
Problem:    Vim9: crash when calling :def function with partial and return
            type is not set.
Solution:   When the return type is not set handle like the return type is
            unknown. (closes #8422)
2021-06-22 19:32:17 +02:00
Christian Brabandt
ef7be8348f patch 8.2.3034: installing packages on github CI sometimes fails
Problem:    Installing packages on github CI sometimes fails.
Solution:   Update package information first. (Christian Brabandt,
            closes #8432)
2021-06-22 18:21:19 +02:00
Bram Moolenaar
419a40ac96 patch 8.2.3033: no error when using alpha delimiter with :global
Problem:    No error when using alpha delimiter with :global.
Solution:   Check the delimiter like with :substitute. (closes #8415)
2021-06-21 21:55:18 +02:00
Christian Brabandt
226b28b961 patch 8.2.3032: build problems with MSVC, other crypt issues with libsodium
Problem:    Build problems with MSVC, other crypt issues with libsodium.
Solution:   Adjust MSVC makefile. Disable swap file only when 'key' is set.
            Adjust error message used when key is wrong.  Fix Coverity issues.
            (Christian Brabandt, closes #8420, closes #8411)
2021-06-21 21:08:08 +02:00
Bram Moolenaar
22f17a29cd patch 8.2.3031: no error if a function name starts with an underscore
Problem:    No error if a function name starts with an underscore. (Naohiro
            Ono)
Solution:   In Vim9 script disallow a function name starting with an
            underscore, as is mentioned in the help. (closes #8414)
2021-06-21 20:48:58 +02:00
Dominique Pelle
cb54bc6562 patch 8.2.3030: Coverity reports a memory leak
Problem:    Coverity reports a memory leak.
Solution:   Fix the leak and a few typos. (Dominique Pellé, closes #8418)
2021-06-21 20:15:37 +02:00
Bram Moolenaar
035bd1c99f patch 8.2.3029: Vim9: crash when using operator and list unpack assignment
Problem:    Vim9: crash when using operator and list unpack assignment.
            (Naohiro Ono)
Solution:   Get variable value before operation. (closes #8416)
2021-06-21 19:44:11 +02:00
Yegappan Lakshmanan
f1e7449d56 patch 8.2.3028: GUI mouse events not tested
Problem:    GUI mouse events not tested.
Solution:   Add test_gui_mouse_event().  Add mouse tests. Also add a few
            viminfo tests. (Yegappan Lakshmanan, closes #8407)
2021-06-21 18:44:26 +02:00
Bram Moolenaar
2ac4b2536a patch 8.2.3027: Vim9: breakpoint in compiled function not always checked
Problem:    Vim9: breakpoint in compiled function not always checked.
Solution:   Check for breakpoint when calling compiled function from compiled
            function.
2021-06-20 20:09:42 +02:00
Bram Moolenaar
4f8f54280f patch 8.2.3026: Vim9: cannot set breakpoint in compiled function
Problem:    Vim9: cannot set breakpoint in compiled function.
Solution:   Check for breakpoint when calling a function.
2021-06-20 19:28:14 +02:00
shane.xb.qian
0d5e1ec37f patch 8.2.3025: not enough tests for quickfix end_col and end_lnum
Problem:    Not enough tests for quickfix end_col and end_lnum.
Solution:   Add a few more test cases. (Shane-XB-Qian, closes #8409)
2021-06-20 16:31:00 +02:00
Bram Moolenaar
2fb1b89d72 patch 8.2.3024: execute() function test fails
Problem:    execute() function test fails.
Solution:   Adjust test for different error.
2021-06-20 15:03:15 +02:00
Bram Moolenaar
ca81f0e834 patch 8.2.3023: Vim9: arguments for execute() not checked at compile time
Problem:    Vim9: arguments for execute() not checked at compile time.
Solution:   Add a function to check the argument types.
2021-06-20 14:41:01 +02:00
Christian Brabandt
f573c6e1ed patch 8.2.3022: available encryption methods are not strong enough
Problem:    Available encryption methods are not strong enough.
Solution:   Add initial support for xchaha20. (Christian Brabandt,
            closes #8394)
2021-06-20 14:02:16 +02:00
Bram Moolenaar
208f0b48b2 patch 8.2.3021: spaces allowed between option name and "!", "?", etc.
Problem:    Spaces allowed between option name and "!", "?", etc.
Solution:   Disallow spaces in Vim9 script, it was not documented.
            (closes #8408)
2021-06-20 12:40:08 +02:00
=?UTF-8?q?Dundar=20G=C3=B6c?=
2fb7495686 patch 8.2.3020: unreachable code
Problem:    Unreachable code.
Solution:   Remove the code. (closes #8406)
2021-06-19 21:38:25 +02:00
thinca
6864efa596 patch 8.2.3019: location list only has the start position.
Problem:    Location list only has the start position.
Solution:   Make it possible to add an end position. (Shane-XB-Qian,
            closes #8393)
2021-06-19 20:45:20 +02:00
Yegappan Lakshmanan
ad52f96a2d patch 8.2.3018: 'quickfixtextfunc' formatting is lost when switching buffers
Problem:    Formatting using quickfixtextfunc is lost when updating location
            lists for different buffers.  (Yorick Peterse)
Solution:   Use the right window for the locaiton list. (Yegappan Lakshmanan,
            closes #8400, closes #8403)
2021-06-19 18:22:53 +02:00
Bram Moolenaar
59b50c3bee patch 8.2.3017: Vim9: debugger shows too many lines
Problem:    Vim9: debugger shows too many lines.
Solution:   Truncate at a comment, "enddef", etc. (closes #8392)
2021-06-17 22:27:48 +02:00
Bram Moolenaar
fae55a9cb0 patch 8.2.3016: confusing error when expression is followed by comma
Problem:    Confusing error when expression is followed by comma.
Solution:   Give a different error for trailing text. (closes #8395)
2021-06-17 22:08:30 +02:00
Bram Moolenaar
74f4a965bc patch 8.2.3015: Vim9: Assigning to @# requires a string
Problem:    Vim9: Assigning to @# requires a string. (Naohiro Ono)
Solution:   Accent a number or a string. (closes #8396)
2021-06-17 21:03:07 +02:00
Dominique Pelle
6e9695525e patch 8.2.3014: Coverity warns for freeing static string
Problem:    Coverity warns for freeing static string.
Solution:   Do not assign static string to pointer. (Dominique Pellé,
            closes #8397)
2021-06-17 13:53:41 +02:00
Bram Moolenaar
4cea536bdf patch 8.2.3013: Vim: when debugging only first line of command is displayed
Problem:    Vim: when debugging only the first line of a command using line
            continuation is displayed.
Solution:   Find the next command and concatenate lines until that one.
            (closes #8392)
2021-06-16 22:24:40 +02:00
Christian Brabandt
29f0dc3689 patch 8.2.3012: when 'rightleft' is set the line number is drawn reversed
Problem:    When 'rightleft' is set the line number is sometimes drawn
            reversed.
Solution:   Adjust how space is handled. (Christian Brabandt, closes #8389,
            closes #8391)
2021-06-16 19:28:34 +02:00
Bram Moolenaar
6bc30b05e6 patch 8.2.3011: Vim9: cannot get argument values during debugging
Problem:    Vim9: cannot get argument values during debugging.
Solution:   Lookup names in the list of arguments.  Put debug instruction
            halfway for command.
2021-06-16 19:19:55 +02:00
Yegappan Lakshmanan
41a7f82dea patch 8.2.3010: not enough testing for viminfo code
Problem:    Not enough testing for viminfo code.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8390)
2021-06-16 15:53:17 +02:00
Bram Moolenaar
b90ac5e96e patch 8.2.3009: startup test may hang
Problem:    Startup test may hang.
Solution:   Do not run the test in the GUI.
2021-06-16 10:59:36 +02:00
Bram Moolenaar
55b6b60b69 patch 8.2.3008: startup test may hang
Problem:    Startup test may hang.
Solution:   Add quit command in the script.
2021-06-15 23:05:59 +02:00
Bram Moolenaar
61a417b7c1 patch 8.2.3007: Vim9: test for void value fails
Problem:    Vim9: test for void value fails.
Solution:   Adjust expected error.  Do not make a copy of void.
2021-06-15 22:54:28 +02:00
Bram Moolenaar
a97c36310f patch 8.2.3006: crash when echoing a value very early
Problem:    Crash when echoing a value very early. (Naruhiko Nishino)
Solution:   Do not use a NUL to truncate the message, make a copy.
            (closes #8388)
2021-06-15 22:39:11 +02:00
Bram Moolenaar
f57b43c230 patch 8.2.3005: Vim9: using a void value does not give a proper error message
Problem:    Vim9: using a void value does not give a proper error message.
Solution:   Give a clear error message. (clodes #8387)
2021-06-15 22:13:27 +02:00
Bram Moolenaar
8ac681a280 patch 8.2.3004: Vim9: error for missing colon given while skipping
Problem:    Vim9: error for missing colon given while skipping.
Solution:   Do not give the error when skipping. (closes #8385)
2021-06-15 20:06:34 +02:00
Bram Moolenaar
968a5b62ff patch 8.2.3003: Vim9: closure compiled with wrong compile type
Problem:    Vim9: closure compiled with wrong compile type.
Solution:   Use COMPILE_TYPE() when calling a function. (closes #8384)
2021-06-15 19:32:40 +02:00
Dominique Pelle
affd0bc626 patch 8.2.3002: Vim doesn't abort on a fatal Tcl error
Problem:    Vim doesn't abort on a fatal Tcl error.
Solution:   Change emsg() to iemsg(). (Dominique Pellé, closes #8383)
2021-06-15 19:09:43 +02:00
Bram Moolenaar
caf1a2f296 patch 8.2.3001: Vim9: memory leak when compilation fails
Problem:    Vim9: memory leak when compilation fails.
Solution:   Free the list of variable names.
2021-06-15 11:27:21 +02:00
Bram Moolenaar
3b814af7e1 patch 8.2.3000: Vim9: warning for uninitialized variable
Problem:    Vim9: warning for uninitialized variable.
Solution:   Add initialization. (John Marriott)
2021-06-15 10:22:17 +02:00
Bram Moolenaar
47f6db9089 patch 8.2.2999: balloon sometimes does not hide with GTK 3
Problem:    Balloon sometimes does not hide with GTK 3.
Solution:   Also listen to GDK_LEAVE_NOTIFY. (Johannes Stezenbach)
2021-06-14 22:08:46 +02:00
Bram Moolenaar
1b0a9dd413 patch 8.2.2998: Vim9: disassemble test fails
Problem:    Vim9: disassemble test fails.
Solution:   Add missing call to lookup_debug_var().
2021-06-14 21:32:21 +02:00
Bram Moolenaar
26d711645c patch 8.2.2997: Vim9: disassemble test fails
Problem:    Vim9: disassemble test fails.
Solution:   Adjust expected output.
2021-06-14 21:08:56 +02:00
Bram Moolenaar
b69c6fb7b4 patch 8.2.2996: Vim9: when debugging cannot inspect local variables
Problem:    Vim9: when debugging cannot inspect local variables.
Solution:   Make local variables available when debugging.
2021-06-14 20:40:37 +02:00
Zdenek Dohnal
90478f35a8 patch 8.2.2995: linker errors with dynamic Python 3.10
Problem:    Linker errors with dynamic Python 3.10.
Solution:   Add a couple of library entries. (Zdenek Dohnal, closes #8381,
            closes #8356)
2021-06-14 15:08:30 +02:00
Yegappan Lakshmanan
2d6d718dde patch 8.2.2994: various code is not fully tested
Problem:    Various code is not fully tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8378)
2021-06-13 21:52:48 +02:00
Bram Moolenaar
5ffefbb35a patch 8.2.2993: 'fileencodings' default value should depend on 'encoding'
Problem:    'fileencodings' default value should depend on 'encoding'. (Gary
            Johnson)
Solution:   When 'encoding' is "utf-8" use a different default value for
            'fileencodings'.
2021-06-13 20:27:36 +02:00
Bram Moolenaar
2346a63784 Update runtime files 2021-06-13 19:02:49 +02:00
Bram Moolenaar
4ee9d8e04d patch 8.2.2992: Vim9: completion for :disassemble is incomplete
Problem:    Vim9: completion for :disassemble is incomplete.
Solution:   Recognize the "debug" and "profile" arguments.
2021-06-13 18:38:48 +02:00
Bram Moolenaar
e70e12b32f patch 8.2.2991: Vim9: no completion for :vim9 and :legacy
Problem:    Vim9: no completion for :vim9 and :legacy.
Solution:   Expand argument as a command. (closes #8377)
2021-06-13 17:20:08 +02:00
kompowiec2
2e66b0d137 patch 8.2.2990: Jupyter Notebook files are not recognized
Problem:    Jupyter Notebook files are not recognized.
Solution:   Recognize *.ipynb. (closes #8375)
2021-06-13 17:03:06 +02:00
Bram Moolenaar
c2dec4cac4 patch 8.2.2989: Vim9: memory leak when debugging a :def function
Problem:    Vim9: memory leak when debugging a :def function.
Solution:   Free the debug instructions.
2021-06-13 15:39:00 +02:00
Bram Moolenaar
c3a27bbd53 patch 8.2.2988: Vim9: debugger test fails
Problem:    Vim9: debugger test fails.
Solution:   Get the debugger instructions when needed.
2021-06-13 15:16:01 +02:00
Bram Moolenaar
6d1792d408 patch 8.2.2987: build failure with normal features
Problem:    Build failure with normal features.
Solution:   Remove #define.
2021-06-13 14:33:20 +02:00
Bram Moolenaar
d9f31c13d2 patch 8.2.2986: build failure without the profile feature
Problem:    Build failure without the profile feature.
Solution:   Add #ifdef.
2021-06-13 14:15:29 +02:00
Bram Moolenaar
e99d422bbd patch 8.2.2985: Vim9: a compiled function cannot be debugged
Problem:    Vim9: a compiled function cannot be debugged.
Solution:   Add initial debugging support.
2021-06-13 14:01:26 +02:00
Bram Moolenaar
e6174fd58d patch 8.2.2984: Vim9: test fails because of missing return statement
Problem:    Vim9: Test fails because of missing return statement.
Solution:   When type is unknown set type to void.
2021-06-12 18:30:56 +02:00
Bram Moolenaar
4a27aefe3b Add links to discussion forums. 2021-06-12 16:12:16 +02:00
Bram Moolenaar
a993153538 patch 8.2.2983: Vim9: an inline function requires specifying the return type
Problem:    Vim9: an inline function requires specifying the return type.
Solution:   Make the return type optional.
2021-06-12 15:58:16 +02:00
Bram Moolenaar
7423577180 patch 8.2.2982: Vim9: future commands are not reserved yet
Problem:    Vim9: future commands are not reserved yet.
Solution:   Add commands to be implemented later.  Make "this" a reserved
            name.
2021-06-12 14:53:05 +02:00
James McCoy
6654ca702c patch 8.2.2981: recovery test is not run on big-endian systems
Problem:    Recovery test is not run on big-endian systems.
Solution:   Make it work on big-endian systems. (James McCoy, closes #8368)
2021-06-12 14:05:41 +02:00
Bram Moolenaar
0b71955552 patch 8.2.2980: popup window test is a bit flaky
Problem:    Popup window test is a bit flaky.
Solution:   Add a redraw command.
2021-06-12 13:59:03 +02:00
Yegappan Lakshmanan
5958549760 patch 8.2.2979: not all options code is covered by tests
Problem:    Not all options code is covered by tests.
Solution:   Add more tests for options. (Yegappan Lakshmanan, closes #8369)
2021-06-12 13:46:41 +02:00
Bram Moolenaar
744aecf877 patch 8.2.2978: warning for uninitialized variable
Problem:    Warning for uninitialized variable.
Solution:   Set return value to FAIL.
2021-06-12 12:33:48 +02:00
Bram Moolenaar
22db0d549f patch 8.2.2977: crash when using a null function reference
Problem:    Crash when using a null function reference. (Naohiro Ono)
Solution:   Check for an invalid function name. (closes #8367)
2021-06-12 12:16:55 +02:00
Bram Moolenaar
8de901e1f1 patch 8.2.2976: build failure without the +eval feature
Problem:    Build failure without the +eval feature.
Solution:   Add #ifdefs.
2021-06-11 22:21:24 +02:00
Bram Moolenaar
f0a4069e3d patch 8.2.2975: Vim9: can only use an autoload function name as a string
Problem:    Vim9: can only use an autoload function name as a string.
Solution:   Load the autoload script when encountered. (closes #8124)
2021-06-11 22:05:47 +02:00
Bram Moolenaar
4f13527598 patch 8.2.2974: Greek spell checking uses wrong case folding
Problem:    Greek spell checking uses wrong case folding.
Solution:   Fold capital sigma depending on whether it is at the end of a
            word or not. (closes #299)
2021-06-11 19:07:40 +02:00
Yegappan Lakshmanan
3044324e8d patch 8.2.2973: fix for recovery and diff mode not tested
Problem:    Fix for recovery and diff mode not tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8352)
2021-06-10 21:52:15 +02:00
Bram Moolenaar
7b4f76c030 patch 8.2.2972: "%bd" tries to delete popup window buffers, which fails
Problem:    "%bd" tries to delete popup window buffers, which fails. (Ralf
            Schandl)
Solution:   Do not try to delete a popup window buffer. (closes #8349)
2021-06-10 21:07:48 +02:00
Christian Brabandt
544a38e44d patch 8.2.2971: cannot yank a block without trailing spaces
Problem:    Cannot yank a block without trailing spaces.
Solution:   Add the "zy" command. (Christian Brabandt, closes #8292)
2021-06-10 19:39:11 +02:00
Zdenek Dohnal
31e299c08f patch 8.2.2970: Python configure check uses deprecated command
Problem:    Python configure check uses deprecated command.
Solution:   Use sysconfig instead of distutils if possible. (Zdenek Dohnal,
            closes #8354)
2021-06-10 18:50:55 +02:00
Bram Moolenaar
a42e6e0082 patch 8.2.2969: subtracting from number option fails when result is zero
Problem:    Subtracting from number option fails when result is zero. (Ingo
            Karkat)
Solution:   Reset the string value when using the numeric value.
            (closes #8351)
2021-06-10 18:43:25 +02:00
Bram Moolenaar
54656015d3 patch 8.2.2968: Vim9: memory leak
Problem:    Vim9: memory leak
Solution:   Unreference pt_outer of partial.
2021-06-09 20:50:46 +02:00
Bram Moolenaar
c04f2a4cd4 patch 8.2.2967: Vim9: crash when using two levels of partials
Problem:    Vim9: crash when using two levels of partials.
Solution:   Add outer_ref_T and use it in the execution context.
2021-06-09 19:30:03 +02:00
Bram Moolenaar
e3f50ad640 patch 8.2.2966: ml_get errors after recovering a file
Problem:    ml_get errors after recovering a file. (Yegappan Lakshmanan)
Solution:   Fix the cursor position after deleting lines.
2021-06-09 12:33:40 +02:00
Bram Moolenaar
b55d618f19 patch 8.2.2965: Vim9: crash when calling function that failed to compile
Problem:    Vim9: crash when calling function that failed to compile.
Solution:   Fail when trying to call the function. (closes #8344)
2021-06-08 22:01:53 +02:00
Bram Moolenaar
a733042b12 patch 8.2.2964: Vim9: hang when using space after ->
Problem:    Vim9: hang when using space after ->. (Naohiro Ono)
Solution:   Skip over white space to find the function name. (closes #8341)
2021-06-08 20:46:45 +02:00
Bram Moolenaar
445f11d5bc patch 8.2.2963: GUI: mouse move may start Visual mode with a popup visible
Problem:    GUI: mouse move may start Visual mode with a popup visible.
Solution:   Add special code for mouse move. (closes #8318)
2021-06-08 20:13:31 +02:00
K.Takata
dc73b4b75d patch 8.2.2962: MS-Windows command line arguments have wrong encoding
Problem:    MS-Windows command line arguments have wrong encoding.
Solution:   Always use utf-8 in get_cmd_argsW(). (Ken Takata, closes #8347)
2021-06-08 18:32:36 +02:00
Bram Moolenaar
c41badb748 patch 8.2.2961: keys typed during a :normal command are discarded
Problem:    Keys typed during a :normal command are discarded.
Solution:   Concatenate saved typeahead and typed kesy. (closes #8340)
2021-06-07 22:04:52 +02:00
Yegappan Lakshmanan
8cf02e5cf8 patch 8.2.2960: swap file recovery not sufficiently tested
Problem:    Swap file recovery not sufficiently tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8339)
2021-06-07 20:41:22 +02:00
Dominique Pelle
2f9c209ba0 patch 8.2.2959: sound_playfile() is not tested on MS-Windows
Problem:    sound_playfile() is not tested on MS-Windows.
Solution:   Make it work and enable the test. (Dominique Pellé, closes #8338)
2021-06-07 20:28:45 +02:00
Bram Moolenaar
f7a023e580 patch 8.2.2958: function list test fails
Problem:    Function list test fails.
Solution:   Add newly added function to the list.  Fix typo.
2021-06-07 18:50:01 +02:00
Bram Moolenaar
3a7503c34c patch 8.2.2957: using getchar() in Vim9 script is problematic
Problem:    Using getchar() in Vim9 script is problematic.
Solution:   Add getcharstr(). (closes #8343)
2021-06-07 18:29:17 +02:00
Bram Moolenaar
f05d2fc539 patch 8.2.2956: Vim9: need to plan for future additions
Problem:    Vim9: need to plan for future additions.
Solution:   Reserve commands for future use: :type, :class, :enum.
2021-06-06 22:02:16 +02:00
Bram Moolenaar
e729ce294f patch 8.2.2955: Vim9: using filter in compiled command does not work
Problem:    Vim9: using filter in compiled command does not work.
Solution:   Generate EXEC including the command modifier.
2021-06-06 21:38:09 +02:00
Brennon M
6db7b6375a patch 8.2.2954: short file name extension for Scala not recognized
Problem:    Short file name extension for Scala not recognized.
Solution:   Recognize *.sc. (closes #8337)
2021-06-06 20:15:53 +02:00
Bram Moolenaar
518df27ebe patch 8.2.2953: Vim9: leaking memory when using heredoc script
Problem:    Vim9: leaking memory when using heredoc script.
Solution:   Free the first line.
2021-06-06 17:34:13 +02:00
Yegappan Lakshmanan
99285550a9 patch 8.2.2952: recover test fails on big endian systems
Problem:    Recover test fails on big endian systems.
Solution:   Disable the failing test on big endian systems. (Yegappan
            Lakshmanan, closes #8335)
2021-06-06 17:12:46 +02:00
Bram Moolenaar
2067733b5c patch 8.2.2951: Vim9: cannot use heredoc for :python, :lua, etc.
Problem:    Vim9: cannot use heredoc in :def function for :python, :lua, etc.
Solution:   Concatenate the heredoc lines and pass them in the ISN_EXEC_SPLIT
            instruction.
2021-06-06 17:02:53 +02:00
Dominique Pelle
c64ed2b714 patch 8.2.2950: sound code not fully tested
Problem:    Sound code not fully tested.
Solution:   Add more sound tests. (Dominique Pellé, closes #8332)
2021-06-06 15:07:09 +02:00
Bram Moolenaar
3cfa5b16b0 patch 8.2.2949: tests failing because no error for float to string conversion
Problem:    Tests failing because there is no error for float to string
            conversion.
Solution:   Change the check for failure to check for correct result.  Make
            some conversions strict in Vim9 script.
2021-06-06 14:14:39 +02:00
Bram Moolenaar
7a2217bedd patch 8.2.2948: substitute() accepts a number but not a float expression
Problem:    Substitute() accepts a number but not a float expression.
Solution:   Also accept a float. (closes #8331)
2021-06-06 12:33:49 +02:00
Bram Moolenaar
f5bfa8faa7 patch 8.2.2947: build failure without the channel feature
Problem:    Build failure without the channel feature.
Solution:   Add back #ifdef. (John Marriott)
2021-06-06 12:07:54 +02:00
Bram Moolenaar
2752360646 patch 8.2.2946: Vim9: substitute expression cannot be a List
Problem:    Vim9: substitute expression cannot be a List in a :def function.
Solution:   Use typval2string(). (closes #8330)
2021-06-05 21:36:19 +02:00
Yegappan Lakshmanan
59b262362f patch 8.2.2945: some buffer related code is not tested
Problem:    Some buffer related code is not tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8320)
2021-06-05 20:59:22 +02:00
Bram Moolenaar
1328bde9d4 patch 8.2.2944: Vim9: no error when using job or channel as a string
Problem:    Vim9: no error when using job or channel as a string.
Solution:   Be more strict about conversion to string. (closes #8312)
2021-06-05 20:51:38 +02:00
Bram Moolenaar
c6d71532dd patch 8.2.2943: Vim9: check for argument count ignores default values
Problem:    Vim9: check for argument count ignores default values.
Solution:   Take default argument values into account.
2021-06-05 18:49:38 +02:00
Bram Moolenaar
8da6d6db34 patch 8.2.2942: Vim9: error when calling function with too few arguments
Problem:    Vim9: internal error when calling function with too few arguments
Solution:   Check for argument count to be too few. (closes #8325)
2021-06-05 18:15:09 +02:00
Bram Moolenaar
b288ba9f1d patch 8.2.2941: Vim9: using does not handle a list of strings
Problem:    Vim9: using  does not handle a list of strings.
Solution:   Convert a list to a string and escape each item. (closes #8310)
2021-06-05 17:10:55 +02:00
K.Takata
4f2417ffee patch 8.2.2940: MS-Windows: cannot see the size when resizing
Problem:    MS-Windows: cannot see the size of the text area when resizing the
            gvim window.
Solution:   Show a tooltip with the text size. (Ken Takata, closes #8326)
2021-06-05 16:25:32 +02:00
Bram Moolenaar
84e9ade826 patch 8.2.2939: GTK: righthand scrollbar does not show with split window
Problem:    GTK: righthand scrollbar does not show with split window.
Solution:   Adjust padding when two scrollbars are used. (Matt Wozniski,
            closes #8324)
2021-06-05 16:07:37 +02:00
Bram Moolenaar
21492743e8 patch 8.2.2938: after using motion force from feedkeys() it sticks
Problem:    After using motion force from feedkeys() it may not be reset.
Solution:   Clear motion_force in clearop(). (closes #8323)
2021-06-04 21:57:57 +02:00
Dominique Pelle
56cddb3879 patch 8.2.2937: popup test fails if rightleft feature not enabled
Problem:    Popup test fails if rightleft feature not enabled.
Solution:   Check that the rightleft feature is available. (Dominique Pellé,
            closes #8321)
2021-06-04 21:09:55 +02:00
Bram Moolenaar
5fa9b24440 patch 8.2.2936: Vim9: converting number to bool uses wrong stack offset
Problem:    Vim9: converting number to bool uses wrong stack offset. (Salman
            Halim)
Solution:   Include the offset in the 2BOOL command.
2021-06-04 21:00:32 +02:00
Bram Moolenaar
6c4c404c58 patch 8.2.2935: calculating register width is not always needed
Problem:    Calculating register width is not always needed. (Christian
            Brabandt)
Solution:   Only calculate the width when the type is MBLOCK.
2021-06-04 19:17:07 +02:00
Bram Moolenaar
24951a67c2 patch 8.2.2934: ASAN error when using text from the clipboard
Problem:    ASAN error when using text from the clipboard.
Solution:   Get width of each character.
2021-06-04 18:33:49 +02:00
Bram Moolenaar
6e0b553fa1 patch 8.2.2933: when 'clipboard' is "unnamed" zp does not work correctly
Problem:    When 'clipboard' is "unnamed" zp and zP do not work correctly.
Solution:   Pass -1 to str_to_reg() and fix computing the character width
            instead of using the byte length. (Christian Brabandt,
            closes #8301, closes #8317)
2021-06-04 17:11:47 +02:00
Bram Moolenaar
4f3c57f798 patch 8.2.2932: select mode test fails
Problem:    Select mode test fails.
Solution:   Do not always reset the held mouse button.
2021-06-03 22:11:08 +02:00
Bram Moolenaar
5072b47a22 patch 8.2.2931: Vim9: line continuation comment uses legacy syntax
Problem:    Vim9: line continuation comment still uses legacy syntax in one
            place.
Solution:   Check for #\ instead of "\ earlier. (closes #8316)
2021-06-03 21:56:10 +02:00
Bram Moolenaar
85eee5b969 patch 8.2.2930: when a popup is visible a mouse move my restart Visual mode
Problem:    When a popup is visible a mouse move my restart Visual mode.
Solution:   Reset held_button when ending Visual mode. (closes #8318)
2021-06-03 20:34:57 +02:00
Bram Moolenaar
0a808598e4 patch 8.2.2929: accidentally enable tcl by default
Problem:    Accidentally enable tcl by default.
Solution:   Revert change to Makefile
2021-06-02 19:22:45 +02:00
Yegappan Lakshmanan
01c798c31a patch 8.2.2928: the evalfunc.c file is too big
Problem:    The evalfunc.c file is too big.
Solution:   Move float related functionality to a separate file. (Yegappan
            Lakshmanan, closes #8287)
2021-06-02 17:07:18 +02:00
Bram Moolenaar
a83d06026d patch 8.2.2927: test commented out because it fails with ASAN
Problem:    Test commented out because it fails with ASAN.
Solution:   Only skip the test when running with ASAN.
2021-06-02 16:49:32 +02:00
Bram Moolenaar
c3cb1c92a3 patch 8.2.2926: Vim9: no good error for using :legacy in a :def function
Problem:    Vim9: no good error for using :legacy in a :def function.
Solution:   Give an explicit error where :legacy is not working.
            (closes #8309)
2021-06-02 16:47:53 +02:00
Bram Moolenaar
0f37e3561d patch 8.2.2925: Vim9: line continuation comment uses legacy syntax
Problem:    Vim9: line continuation comment uses legacy syntax.
Solution:   Check for #\ instead of "\. (closes #8295)
2021-06-02 15:28:15 +02:00
K.Takata
a2e468fcac patch 8.2.2924: superfluous extern declaration
Problem:    Superfluous extern declaration.
Solution:   Delete the declaration. (Ken Takata, closes #8307)
2021-06-02 15:08:50 +02:00
K.Takata
eecf2b35a1 patch 8.2.2923: EBCDIC build is broken
Problem:    EBCDIC build is broken.
Solution:   Move sortFunctions() to evalfunc.c. (Ken Takata, closes #8306)
2021-06-02 14:56:39 +02:00
K.Takata
eeec254878 patch 8.2.2922: computing array length is done in various ways
Problem:    Computing array length is done in various ways.
Solution:   Use ARRAY_LENGTH everywhere. (Ken Takata, closes #8305)
2021-06-02 13:28:16 +02:00
Bram Moolenaar
b54abeeafb patch 8.2.2921: E704 for script local variable is not backwards compatible
Problem:    E704 for script local variable is not backwards compatible.
            (Yasuhiro Matsumoto)
Solution:   Only give the error in Vim9 script.  Also check for function-local
            variable.
2021-06-02 11:49:23 +02:00
Bram Moolenaar
6f1d2aa437 patch 8.2.2920: still a way to shadow a builtin function
Problem:    Still a way to shadow a builtin function. (Yasuhiro Matsumoto)
Solution:   Check the key when using extend(). (issue #8302)
2021-06-01 21:21:55 +02:00
Bram Moolenaar
6a43b37b76 patch 8.2.2919: using ":!command" does not work if it uses posix_spawn()
Problem:    Using ":!command" does not work if the command uses posix_spawn().
Solution:   Do not call ioctl() with TIOCSCTTY. (Felipe Contreras)
2021-06-01 20:48:40 +02:00
Bram Moolenaar
3d9c4eefe6 patch 8.2.2918: builtin function can be shadowed by global variable
Problem:    Builtin function can be shadowed by global variable.
Solution:   Check for builtin function before variable. (Yasuhiro Matsumoto,
            closes #8302)
2021-05-31 22:15:26 +02:00
Dominique Pelle
bb162367ac patch 8.2.2917: spellfile functionality not fully tested
Problem:    Spellfile functionality not fully tested.
Solution:   Add tests for SFX with removal of characters, spelling
            suggestions with NOBREAK and others. (Dominique Pellé,
            closes #8293)
2021-05-31 20:04:07 +02:00
Yegappan Lakshmanan
2ac7184d34 patch 8.2.2916: operators are not fully tested
Problem:    Operators are not fully tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8290)
2021-05-31 19:23:01 +02:00
K.Takata
ef8706fb84 patch 8.2.2915: MS-Windows: when using "default" for encoding utf-8 is used
Problem:    MS-Windows: when using "default" for encoding utf-8 is used.
Solution:   Use the system encoding. (Ken Takata, closes #8300)
2021-05-31 18:40:49 +02:00
Christian Brabandt
2fa9384ca1 patch 8.2.2914: cannot paste a block without adding padding
Problem:    Cannot paste a block without adding padding.
Solution:   Add "zp" and "zP" which paste without adding padding. (Christian
            Brabandt, closes #8289)
2021-05-30 22:17:25 +02:00
Bram Moolenaar
d2ea7cf10a Update runtime files 2021-05-30 20:54:13 +02:00
Wez Furlong
6ef5ab5904 patch 8.2.2913: MS-Windows conpty supports using mouse events
Problem:    MS-Windows conpty supports using mouse events.
Solution:   When enabling the mouse enable mouse input and disable quick edit
            mode. (Wez Furlong, closes #8280)
2021-05-30 19:29:41 +02:00
K.Takata
f883d9027c patch 8.2.2912: MS-Windows: most users expect using Unicode
Problem:    MS-Windows: most users expect using Unicode.
Solution:   Default 'encoding' to utf-8 on MS-Windows. (Ken Takata,
            closes #3907)
2021-05-30 18:04:19 +02:00
Bram Moolenaar
e71c0ebe2c patch 8.2.2911: pattern "\%V" does not match all of block selection
Problem:    Pattern "\%V" does not match all of block selection. (Rick Howe)
Solution:   Use the value of vi_curswant. (closes #8285)
2021-05-30 16:43:11 +02:00
Bram Moolenaar
0b49648486 patch 8.2.2910: test for cmdline window and terminal fails on MS-Windows
Problem:    Test for cmdline window and terminal fails on MS-Windows.
Solution:   Skip the test on MS-Windows.
2021-05-30 14:21:57 +02:00
Bram Moolenaar
e0a7658bc8 patch 8.2.2909: build error with non-Unix system
Problem:    Build error with non-Unix system.
Solution:   Always include limits.h.
2021-05-30 14:02:05 +02:00
Bram Moolenaar
e5b4486c42 patch 8.2.2908: crash when using a terminal popup window from cmdline window
Problem:    Crash when using a terminal popup window from the cmdline window.
Solution:   Instead of checking cmdwin_type call cmdwin_is_active().
            (closes #8286)
2021-05-30 13:54:03 +02:00
Dominique Pelle
28cf44f761 patch 8.2.2907: memory leak when running out of memory
Problem:    Memory leak when running out of memory.
Solution:   Free the allocated memory. (Dominique Pellé, closes #8284)
2021-05-29 22:34:19 +02:00
Bram Moolenaar
a5787c3742 patch 8.2.2906: ASAN reports errors for test_startup
Problem:    ASAN reports errors for test_startup for unknown reasons.
Solution:   Temporarily disable the new test.
2021-05-29 22:25:17 +02:00
Christian Brabandt
1d3a14ecf0 patch 8.2.2905: no error when defaults.vim cannot be loaded
Problem:    No error when defaults.vim cannot be loaded.
Solution:   Add an error message. (Christian Brabandt, closes #8248)
2021-05-29 19:53:50 +02:00
Bram Moolenaar
74ede80aeb patch 8.2.2904: "g$" causes scroll if half a double width char is visible
Problem:    "g$" causes scroll if half a double width char is visible.
Solution:   Advance to the last fully visible character. (closes #8254)
2021-05-29 19:18:01 +02:00
Bram Moolenaar
a06e345af5 patch 8.2.2903: cursor position wrong on wrapped line with 'signcolumn'
Problem:    Cursor position wrong on wrapped line with 'signcolumn'.
Solution:   Don't add space for showbreak twice. (Christian Brabandt,
            closes #8262)
2021-05-29 17:56:37 +02:00
Dominique Pelle
5a6cfb3ff2 patch 8.2.2902: spellfile functionality not fully tested
Problem:    Spellfile functionality not fully tested.
Solution:   Add tests for CIRCUMFIX, NOBREAK and others. (Dominique Pellé,
            closes #8283)
2021-05-29 17:29:33 +02:00
Bram Moolenaar
3e72dcad8b patch 8.2.2901: some operators not fully tested
Problem:    Some operators not fully tested.
Solution:   Add a few test cases. (Yegappan Lakshmanan, closes #8282)
2021-05-29 16:30:12 +02:00
Bram Moolenaar
1174b018a6 patch 8.2.2900: QuitPre is triggered before :wq writes the file
Problem:    QuitPre is triggered before :wq writes the file, which is
            different from other commands.
Solution:   Trigger QuitPre after writing the file. (closes #8279)
2021-05-29 14:30:43 +02:00
K.Takata
f89be8de14 patch 8.2.2899: Appveyor script does not detect nmake failure
Problem:    Appveyor script does not detect nmake failure.
Solution:   Explicitly check for executable. (Ken Takata, closes #8281)
2021-05-29 12:42:47 +02:00
Bram Moolenaar
3552e74289 patch 8.2.2898: QuitPre and ExitPre not triggered when GUI window is closed
Problem:    QuitPre and ExitPre not triggered when GUI window is closed.
Solution:   Call before_quit_autocmds(). (closes #8242)
2021-05-29 12:21:58 +02:00
Bram Moolenaar
d0edaf9dc2 patch 8.2.2897: Vim9: can use reserved words at the script level
Problem:    Vim9: can use reserved words at the script level.
Solution:   Check variable names for reserved words. (closes #8253)
2021-05-28 21:06:08 +02:00
Dominique Pelle
dc3275a1ac patch 8.2.2896: spellfile functionality not fully tested
Problem:    Spellfile functionality not fully tested.
Solution:   Add tests for CHECKCOMPOUNDPATTERN and COMMON. (Dominique Pellé,
            closes #8270)
2021-05-28 18:32:12 +02:00
mityu
4ac198c61c patch 8.2.2895: Vim9: random characters appear in some error messages
Problem:    Vim9: random characters appear in some error messages.
Solution:   Pass the correct pointer. (closes #8277)
2021-05-28 17:52:40 +02:00
K.Takata
2c4a1d0a61 patch 8.2.2894: MS-Windows: using enc_locale() for strftime() might not work
Problem:    MS-Windows: using enc_locale() for strftime() might not work.
Solution:   Use wcsftime(). (Ken Takata, closes #8271)
2021-05-28 15:49:34 +02:00
Ralf Schandl
bc869874fe patch 8.2.2893: multi-byte text in popup title shows up wrong
Problem:    Multi-byte text in popup title shows up wrong.
Solution:   Use the character width instead of the byte length. (Ralf Schandl,
            closes #8267, closes #8264)
2021-05-28 14:12:14 +02:00
mityu
89dcb4dce3 patch 8.2.2892: error message contains random characters
Problem:    Error message contains random characters.
Solution:   Pass the right pointer to error_white_both(). (closes #8272,
            closes #8263)
2021-05-28 13:50:17 +02:00
ichizok
543467136f patch 8.2.2891: cannot build with Perl 5.34
Problem:    Cannot build with Perl 5.34.
Solution:   Add Perl_SvTRUE_common(). (Ozaki Kiichi, closes #8266,
            closes #8250)
2021-05-27 18:05:14 +02:00
Bram Moolenaar
840f91f110 patch 8.2.2890: text property duplicated when data block splits
Problem:    Text property duplicated when data block splits.
Solution:   Do not continue text prop from previous line. (closes #8261)
2021-05-26 22:32:10 +02:00
K.Takata
c512599b22 patch 8.2.2889: typo and verbose comment in Makefiles
Problem:    Typo and verbose comment in Makefiles.
Solution:   Fix typo. Use @#. (Ken Takata, closes #8252)
2021-05-26 21:49:18 +02:00
Bram Moolenaar
7d840e9ac7 patch 8.2.2888: Vim9: "k" command recognized in Vim9 script
Problem:    Vim9: "k" command recognized in Vim9 script.
Solution:   Do not recognize "k" or "s" and "d" with flags.
2021-05-26 21:10:11 +02:00
Bram Moolenaar
4c8e8c6e19 patch 8.2.2887: crash when passing null string to fullcommand()
Problem:    Crash when passing null string to fullcommand().
Solution:   Check for NULL pointer. (closes #8256)
2021-05-26 19:49:09 +02:00
Yegappan Lakshmanan
34fcb69724 patch 8.2.2886: various pieces of code not covered by tests
Problem:    Various pieces of code not covered by tests.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8255)
2021-05-25 20:14:00 +02:00
Bram Moolenaar
872bee557e patch 8.2.2885: searching for \%'> does not match linewise end of line
Problem:    searching for \%'> does not match linewise end of line. (Tim Chase)
Solution:   Match end of line if column is MAXCOL. (closes #8238)
2021-05-24 22:56:15 +02:00
Dominique Pelle
1e469c72ee patch 8.2.2884: not enough cscope code is covered by tests
Problem:    Not enough cscope code is covered by tests.
Solution:   Add a few test cases. (Dominique Pellé, closes #8246)
2021-05-24 19:37:26 +02:00
matveyt
e97c7c962c patch 8.2.2883: MS-Windows manifest file name is misleading
Problem:    MS-Windows manifest file name is misleading.
Solution:   Rename the file. (closes #8241)
2021-05-24 18:48:27 +02:00
Bram Moolenaar
15bbb8f4f3 patch 8.2.2882: Vim9: memory leak when lambda has an error
Problem:    Vim9: memory leak when lambda has an error.
Solution:   Free the list of argument types on failure.
2021-05-24 15:45:29 +02:00
Yegappan Lakshmanan
611728f806 patch 8.2.2881: various pieces of code not covered by tests
Problem:    Various pieces of code not covered by tests.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8245)
2021-05-24 15:15:47 +02:00
glacambre
ad5c178a19 patch 8.2.2880: unified diff fails if actually used
Problem:    Unified diff fails if actually used.
Solution:   Invoke :diffupdate in the test.  Fix the check for working external
            diff. (Ghjuvan Lacambre, Christian Brabandt, closes #8197)
2021-05-24 14:20:53 +02:00
Marcin Szamotulski
f5409dbf66 patch 8.2.2879: file extension .hsig not recognized
Problem:    File extension .hsig not recognized.
Solution:   Use Haskell filetype for .hsig files. (Marcin Szamotulski,
            closes #8236)
2021-05-23 11:18:50 +02:00
Bram Moolenaar
b777da9be8 patch 8.2.2878: Vim9: for loop list unpack only allows for one "_"
Problem:    Vim9: for loop list unpack only allows for one "_".
Solution:   Drop the value when the variable is "_". (closes #8232)
2021-05-22 21:40:39 +02:00
Yegappan Lakshmanan
1e615669c0 patch 8.2.2877: insufficient tests for popup menu rightleft
Problem:    Insufficient tests for popup menu rightleft.
Solution:   Add tests. (Yegappan Lakshmanan, closes #8235)
2021-05-22 17:12:46 +02:00
Bram Moolenaar
23c0192166 patch 8.2.2876: configure cannot detect Python 3.10
Problem:    Configure cannot detect Python 3.10.
Solution:   Use sys.version_info. (closes #8233)
2021-05-21 11:43:58 +02:00
=?UTF-8?q?Luka=20Marku=C5=A1i=C4=87?=
5cf94577cf patch 8.2.2875: cancelling inputlist() after a digit does not return zero
Problem:    Cancelling inputlist() after a digit does not return zero.
Solution:   Always return zero when cancelling. (closes #8231)
2021-05-20 21:14:20 +02:00
matveyt
4eb1914e1b patch 8.2.2874: MS-Windows: screen redraws too often
Problem:    MS-Windows: screen redraws too often.
Solution:   Do not redraw when peeking for a character. (closes #8230,
            closes #8211)
2021-05-20 11:54:10 +02:00
Yegappan Lakshmanan
46aa6f93ac patch 8.2.2873: not enough tests for writing buffers
Problem:    Not enough tests for writing buffers.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8229)
2021-05-19 17:15:04 +02:00
Dominique Pelle
56c9fd0107 patch 8.2.2872: Python tests fail without the channel feature
Problem:    Python tests fail without the channel feature.
Solution:   Add a feature check. (Dominique Pellé, closes #8226)
2021-05-19 00:16:14 +02:00
Dominique Pelle
4781d6fd86 patch 8.2.2871: unnessary VIM_ISDIGIT() calls, badly indented code
Problem:    Unnessary VIM_ISDIGIT() calls, badly indented code.
Solution:   Call skipdigits() on the next character.  Improve indenting.
            (Dominique Pellé, closes #8227)
2021-05-18 21:46:31 +02:00
Bram Moolenaar
796139ae3a patch 8.2.2870: CmdlineChange event triggered twice for CTRL-R
Problem:    CmdlineChange event triggered twice for CTRL-R.
Solution:   Return CMDLINE_NOT_CHANGED from cmdline_insert_reg().
            (closes #8219)
2021-05-18 21:38:45 +02:00
Bram Moolenaar
485b627100 patch 8.2.2869: using unified diff is not tested
Problem:    Using unified diff is not tested.
Solution:   Test all cases also with unified diff. (issue #8197)
2021-05-18 19:19:03 +02:00
Bram Moolenaar
cbe178e3dc patch 8.2.2868: Vim9: when executing compiled expression trylevel is changed
Problem:    Vim9: When executing a compiled expression the trylevel at start
            is changed but not restored. (closes #8214)
Solution:   Restore the trylevel at start.
2021-05-18 17:49:59 +02:00
Bram Moolenaar
082a3bf961 patch 8.2.2867: build failure
Problem:    Build failure.
Solution:   Add missing part of the change.
2021-05-18 15:32:11 +02:00
Bram Moolenaar
ecb664501d patch 8.2.2866: Vim9: memory leak when using inline function
Problem:    Vim9: memory leak when using inline function.
Solution:   Remember what strings to free.
2021-05-18 15:09:18 +02:00
Bram Moolenaar
d87c21a918 patch 8.2.2865: skipping over function body fails
Problem:    Skipping over function body fails.
Solution:   Do not define the function when skipping.
2021-05-18 13:40:33 +02:00
Bram Moolenaar
074f84c01f patch 8.2.2864: Vim9: crash when using inline function
Problem:    Vim9: crash when using inline function.
Solution:   Check for NULL pointer. Make using inline function work inside
            lambda. (closes #8217)
2021-05-18 11:47:44 +02:00
Bram Moolenaar
965c04486c patch 8.2.2863: removing a text property does not redraw optimally
Problem:    Removing a text property does not redraw optimally.
Solution:   Only redraw the lines that mithg actually have been changed.
2021-05-17 00:22:06 +02:00
Bram Moolenaar
fc643e6016 patch 8.2.2862: removing a text property causes the whole window to be redawn
Problem:    Removing a text property causes the whole window to be redawn.
Solution:   Use changed_lines_buf() to only redraw the affected lines.
2021-05-17 00:15:18 +02:00
Bram Moolenaar
3b1373b193 patch 8.2.2861: Vim9: "legacy return" is not recognized as a return statement
Problem:    Vim9: "legacy return" is not recognized as a return statement.
Solution:   Specifically check for a return command. (closes #8213)
2021-05-17 00:01:42 +02:00
Bram Moolenaar
1764faa386 patch 8.2.2860: adding a text property causes the whole window to be redawn
Problem:    Adding a text property causes the whole window to be redawn.
Solution:   Use changed_lines_buf() to only redraw the affected lines.
2021-05-16 20:18:57 +02:00
Bram Moolenaar
dcfc311198 patch 8.2.2859: Tcl test fails because of changed error message
Problem:    Tcl test fails because of changed error message.
Solution:   Adjust the expected error message.
2021-05-16 20:06:59 +02:00
Bram Moolenaar
6b02b38ed0 patch 8.2.2858: test fails because of changed error message
Problem:    Test fails because of changed error message.
Solution:   Adjust the expected error message.
2021-05-16 16:19:37 +02:00
Bram Moolenaar
ff65288aa8 patch 8.2.2857: Vim9: exception in ISN_INSTR caught at wrong level
Problem:    Vim9: exception in ISN_INSTR caught at wrong level.
Solution:   Set the starting trylevel in exec_instructions(). (closes #8214)
2021-05-16 15:24:49 +02:00
Bram Moolenaar
3ec3217f04 Update runtime files 2021-05-16 12:39:47 +02:00
Bram Moolenaar
50157ef1c2 patch 8.2.2856: get readonly error for device that can't be written to
Problem:    Get readonly error for device that can't be written to.
Solution:   Check for being able to write first. (closes #8205)
2021-05-15 23:21:05 +02:00
Bram Moolenaar
0820f4de58 patch 8.2.2855: white space after "->" does not give E274
Problem:    White space after "->" does not give E274.
Solution:   Do not skip white space in legacy script. (closes #8212)
2021-05-15 20:06:58 +02:00
shadmansaleh
30e3de21fc patch 8.2.2854: custom statusline cannot contain % items
Problem:    Custom statusline cannot contain % items.
Solution:   Add "%{% expr %}". (closes #8190)
2021-05-15 17:23:28 +02:00
Bram Moolenaar
d832c3c56e patch 8.2.2853: window is not updated after using <Cmd> mapping
Problem:    Window is not updated after using <Cmd> mapping.
Solution:   So jump to cmdline_changed but skip autocommand.
2021-05-15 15:09:06 +02:00
Natanael Copa
761ead497f patch 8.2.2852: configure can add --as-needed a second time
Problem:    Configure can add --as-needed a second time.
Solution:   Only add --as-needed if not already there.  (Natanael Copa,
            closes #8189, closes #8181)
2021-05-15 14:25:37 +02:00
Bram Moolenaar
847fe7d750 patch 8.2.2851: using <Cmd> mapping on the command line triggers CmdlineChanged
Problem:    Using <Cmd> mapping on the command line triggers CmdlineChanged.
            (Naohiro Ono)
Solution:   Jump to cmdline_not_changed if the command line didn't change.
            (closes #8208)
2021-05-15 13:19:16 +02:00
obcat
71c6f7a665 patch 8.2.2850: recalling commands from history is not tested
Problem:    Recalling commands from history is not tested.
Solution:   Add tests. (closes #8194)
2021-05-13 20:23:10 +02:00
Yegappan Lakshmanan
36f96a5151 patch 8.2.2849: bufwrite not sufficiently tested
Problem:    Bufwrite not sufficiently tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #8192)
2021-05-13 18:33:16 +02:00
Dominique Pelle
fe8ebdbe5c patch 8.2.2848: crash whn calling partial
Problem:    Crash whn calling partial.
Solution:   Check for NULL pointer. (Dominique Pellé, closes #8202)
2021-05-13 14:55:55 +02:00
Dominique Pelle
588cf7547b patch 8.2.2847: Perl not tested sufficiently
Problem:    Perl not tested sufficiently.
Solution:   Add test.  Also test W17. (Dominique Pellé, closes #8193)
2021-05-10 23:49:39 +02:00
Bram Moolenaar
68db996b62 patch 8.2.2846: Vim9: "echo Func()" does not give an error for using void
Problem:    Vim9: "echo Func()" does not give an error for a function without
            a return value.
Solution:   Give an error.  Be more specific about why a value is invalid.
2021-05-09 23:19:22 +02:00
Bram Moolenaar
918b08957c patch 8.2.2845: MS-Windows: warning for signed/unsigned comparison
Problem:    MS-Windows: warning for signed/unsigned comparison.
Solution:   Add type cast.
2021-05-08 20:09:24 +02:00
Bram Moolenaar
24f720998f patch 8.2.2844: Vim9: memory leak when using searchpair()
Problem:    Vim9: memory leak when using searchpair().
Solution:   Free the v_instr field.
2021-05-07 20:43:54 +02:00
Bram Moolenaar
f06ab6ba38 patch 8.2.2843: Vim9: skip argument to searchpairpos() is not compiled
Problem:    Vim9: skip argument to searchpairpos() is not compiled.
Solution:   Handle like searchpair().  Also for search() and searchpos().
2021-05-07 19:44:21 +02:00
Bram Moolenaar
f18332fb9e patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Problem:    Vim9: skip argument to searchpair() is not compiled.
Solution:   Add VAR_INSTR.
2021-05-07 17:55:55 +02:00
matveyt
e08795e1ec patch 8.2.2841: MS-Windows: cursor wrong when 'lz' and 'stl' are set
Problem:    MS-Windows: cursor in wrong position when 'lazyredraw' and
            'statusline' are set.
Solution:   Call compute_cmdrow(). (closes #8170, closes #8184)
2021-05-07 15:00:17 +02:00
Bram Moolenaar
261417b872 patch 8.2.2840: Vim9: member operation not fully tested
Problem:    Vim9: member operation not fully tested.
Solution:   Add a few tests.
2021-05-06 21:04:55 +02:00
Natanael Copa
5631836975 patch 8.2.2839: default redirection missing "ash" and "dash"
Problem:    Default redirection missing "ash" and "dash".
Solution:   Recognize "ash" and "dash". (Natanael Copa, closes #8180)
2021-05-06 18:46:35 +02:00
Liam Beguin
e3e598e82b patch 8.2.2838: file extension .wrap not recognized
Problem:    File extension .wrap not recognized.
Solution:   Use dosini filetype for .wrap files. (Liam Beguin, closes #8177)
2021-05-06 17:45:22 +02:00
Dominique Pelle
6d37e8e3ba patch 8.2.2837: various code lines not covered by tests
Problem:    Various code lines not covered by tests.
Solution:   Add test cases. (Dominique Pellé, closes #8178)
2021-05-06 17:36:55 +02:00
Bram Moolenaar
b7c978154e patch 8.2.2836: build failure without the +quickfix feature
Problem:    Build failure without the +quickfix feature. (John Marriott)
Solution:   Add #ifdef.
2021-05-05 22:51:39 +02:00
Bram Moolenaar
dc3e2e65c9 patch 8.2.2835: Vim9: leaking memory in :cexpr
Problem:    Vim9: leaking memory in :cexpr.
Solution:   Also free the command line copy.
2021-05-05 22:40:56 +02:00
Bram Moolenaar
5f7d4c049e patch 8.2.2834: Vim9: :cexpr does not work with local variables
Problem:    Vim9: :cexpr does not work with local variables.
Solution:   Compile :cexpr.
2021-05-05 21:31:39 +02:00
Bram Moolenaar
3a00659db7 patch 8.2.2833: two key command cancelled by moving mouse when using popup
Problem:    Two key command cancelled by moving mouse when using popup.
            (Sergey Vlasov)
Solution:   Ignore K_MOUSEMOVE in plain_vgetc().
2021-05-05 19:58:17 +02:00
Bram Moolenaar
1ad72c8eb6 patch 8.2.2832: operator cancelled by moving mouse when using popup
Problem:    Operator cancelled by moving mouse when using popup. (Sergey
            Vlasov)
Solution:   Do not trigger an operator for a mouse move events. (closes #8176)
2021-05-04 21:56:28 +02:00
Bram Moolenaar
0279510444 patch 8.2.2831: Vim9: expandcmd() not tested
Problem:    Vim9: expandcmd() not tested.
Solution:   Add a test.
2021-05-03 21:40:26 +02:00
Bram Moolenaar
ad43199572 patch 8.2.2830: terminal colors are not updated when 'background' is set
Problem:    Terminal colors are not updated when 'background' is set.
Solution:   Call term_update_colors() for all terminals. (Marcin Szamotulski,
            closes #8171, closes #8150)
2021-05-03 20:40:38 +02:00
Bram Moolenaar
df36514a64 patch 8.2.2829: some comments are not correct or clear
Problem:    Some comments are not correct or clear.
Solution:   Adjust the comments.  Add test for cursor position.
2021-05-03 20:01:45 +02:00
Bram Moolenaar
97a6c6a1fb patch 8.2.2828: Coverity complains about not checking rename() return value
Problem:    Coverity complains about not checking the rename() return value.
Solution:   Add "(void)", can't do anything in case of a failure.
2021-05-03 19:49:51 +02:00
Dominique Pelle
5f8ed7408a patch 8.2.2827: test file was not deleted
Problem:    Test file was not deleted.
Solution:   Uncomment the delete() call. (Dominique Pellé, closes #8172)
2021-05-03 19:08:37 +02:00
Bram Moolenaar
551c1aed65 patch 8.2.2826: compiler warnings for int to size_t conversion
Problem:    Compiler warnings for int to size_t conversion. (Randall W.
            Morris)
Solution:   Add type casts.
2021-05-03 18:57:05 +02:00
Dominique Pelle
2bf6034e5c patch 8.2.2825: code in checkreadonly() not fully tested
Problem:    Code in checkreadonly() not fully tested.
Solution:   Add more tests. (Dominique Pellé, closes #8169)
2021-05-02 20:16:24 +02:00
Bram Moolenaar
1bb0da25a6 patch 8.2.2824: MS-Windows: build failure with MSVC
Problem:    MS-Windows: build failure with MSVC.
Solution:   Adjust the list of distributed files.  Add hint about python.
            Adjust path for reading runtime files.
2021-05-02 19:15:05 +02:00
Bram Moolenaar
4c295027a4 Update runtime files 2021-05-02 17:19:11 +02:00
Bram Moolenaar
5f628a12e5 patch 8.2.2823: MS-Windows: launching Vim from installer doesn't open README
Problem:    MS-Windows: launching Vim from installer doesn't open README.
Solution:   Adjust the quotes.
2021-05-02 13:59:46 +02:00
Bram Moolenaar
4a22897591 patch 8.2.2822: MS-Windows: unnessarily loading libraries when unregistering
Problem:    MS-Windows: unnessarily loading libraries when unregistering OLE.
Solution:   Also skip loading libraries when invoked with "-unregister".  Run
            Vim for README.txt with user privileges.
2021-05-01 22:41:39 +02:00
Bram Moolenaar
3d0e7a956a patch 8.2.2821: MS-Windows: unnessarily loading libraries when registering OLE
Problem:    MS-Windows: unnessarily loading libraries when registering OLE.
Solution:   Skip loading libraries when invoked with "-register".
2021-05-01 17:46:03 +02:00
Bram Moolenaar
b6c2e9a010 patch 8.2.2820: session file may divide by zero
Problem:    Session file may divide by zero.
Solution:   Avoid writing difide by zero. (closes #8162)
2021-04-30 21:37:51 +02:00
Bram Moolenaar
4934ed34c3 patch 8.2.2819: finishing an abbreviation with multi-byte char may not work
Problem:    Finishing an abbreviation with a multi-byte char may not work.
Solution:   Escape K_SPECIAL in the typed character. (closes #8160)
2021-04-30 19:43:11 +02:00
Bram Moolenaar
aeed2a6359 patch 8.2.2818: no jump added when opening terminal in current window
Problem:    No jump added to jumplist when opening terminal in current window.
Solution:   Call setpcmark(). (closes #8158)
2021-04-29 20:18:45 +02:00
Bram Moolenaar
227c58a486 patch 8.2.2817: Vim9: script sourcing continues after an error
Problem:    Vim9: script sourcing continues after an error.
Solution:   Make an error in any command in "vim9script" abort sourcing.
2021-04-28 20:40:44 +02:00
Bram Moolenaar
03717bf6a2 patch 8.2.2816: Vim9: comment below expression in lambda causes problems
Problem:    Vim9: comment below expression in lambda causes problems.
Solution:   Use a single space for empty and comment lines. (closes #8156)
2021-04-28 20:00:40 +02:00
Bram Moolenaar
b80d2fb0e7 patch 8.2.2815: status line flickers when redrawing popup menu info
Problem:    Status line flickers when redrawing popup menu info.
Solution:   Do not redraw the status line when the focus is in the popup
            window. (issue #8144)
2021-04-27 20:06:57 +02:00
Bram Moolenaar
b06b50dfa0 patch 8.2.2814: Vim9: unused variable
Problem:    Vim9: unused variable. (John Marriott)
Solution:   Adjust #ifdef.
2021-04-26 21:39:25 +02:00
Yegappan Lakshmanan
bb01a1ef3a patch 8.2.2813: cannot grep using fuzzy matching
Problem:    Cannot grep using fuzzy matching.
Solution:   Add the "f" flag to :vimgrep. (Yegappan Lakshmanan, closes #8152)
2021-04-26 21:17:52 +02:00
Bram Moolenaar
5930ddcd25 patch 8.2.2812: Vim9: still crash when using substitute expression
Problem:    Vim9: still crash when using substitute expression.
Solution:   Put the instruction list in the stack frame. (closes #8154)
2021-04-26 20:32:59 +02:00
Bram Moolenaar
b98cec28d9 patch 8.2.2811: Vim9: error for missing white space doesn't say where
Problem:    Vim9: error for missing white space doesn't say where it is
            missing
Solution:   Mention the command. (closes #8149)
2021-04-25 16:35:55 +02:00
Bram Moolenaar
d386e923c7 patch 8.2.2810: Vim9: crash when calling a function in a substitute expression
Problem:    Vim9: crash when calling a function in a substitute expression.
Solution:   Set the instructions back to the substitute expression
            instrunctions. (closes #8148)
2021-04-25 14:48:49 +02:00
Bram Moolenaar
dc4c2309f2 patch 8.2.2809: Vim9: :def function compilation fails when using :legacy
Problem:    Vim9: :def function compilation fails when using :legacy.
Solution:   Reset CMOD_LEGACY when compiling a function. (closes #8137)
2021-04-25 13:54:42 +02:00
Bram Moolenaar
730bf30020 patch 8.2.2808: Vim9: increment and decrement not sufficiently tested
Problem:    Vim9: increment and decrement not sufficiently tested.
Solution:   Add assertions.
2021-04-24 20:43:56 +02:00
Bram Moolenaar
340c59ec6f patch 8.2.2807: build fails with tiny features
Problem:    Build fails with tiny features.
Solution:   Use a dummy function for ex_incdec().
2021-04-24 20:37:03 +02:00
Bram Moolenaar
bdc0f1c698 patch 8.2.2806: Vim9: using "++nr" as a command might not work
Problem:    Vim9: using "++nr" as a command might not work.
Solution:   Do not recognize "++" and "--" in a following line as addition or
            subtraction.
2021-04-24 19:08:24 +02:00
Bram Moolenaar
96cf4ba8fb patch 8.2.2805: Vim9: cannot use legacy syntax in Vim9 script
Problem:    Vim9: cannot use legacy syntax in Vim9 script.
Solution:   Add the :legacy command.
2021-04-24 14:15:41 +02:00
Bram Moolenaar
7ba1e4d363 patch 8.2.2804: setting buffer local mapping with mapset() changes global
Problem:    Setting buffer local mapping with mapset() changes global mapping.
Solution:   Only set the local mapping. (closes #8143)
2021-04-24 13:12:38 +02:00
Bram Moolenaar
e0c03c8e10 patch 8.2.2803: flicker when the popup menu has an info popup
Problem:    Flicker when the popup menu has an info popup.
Solution:   Avoid drawing over the popup when it's going to be redrawn in the
            same position. (closes #8131)  Also avoid redrawing the scrollbar.
2021-04-23 21:01:34 +02:00
Bram Moolenaar
a6aa16423f patch 8.2.2802: Vim9: illegal memory access
Problem:    Vim9: illegal memory access.
Solution:   Check for comment before checking for white space. (closes #8142)
2021-04-23 19:32:23 +02:00
Bram Moolenaar
f6d9935a13 patch 8.2.2801: free Pascal makefile not recognized
Problem:    Free Pascal makefile not recognized.
Solution:   Add the fpcmake filetype. (Doug Kearns)
2021-04-23 18:06:48 +02:00
Bram Moolenaar
9f28416e54 patch 8.2.2800: after a timer displays text a hit-enter prompt is given
Problem:    After a timer displays text a hit-enter prompt is given.
Solution:   Reset msg_didany and need_wait_return. (closes #8136)
2021-04-22 21:39:30 +02:00
Bram Moolenaar
11e3c5ba82 Update runtime files 2021-04-21 18:09:37 +02:00
Bram Moolenaar
459fbdbf92 patch 8.2.2799: Vim9: type casts don't fully work at the script level
Problem:    Vim9: type casts don't fully work at the script level.
Solution:   Implement the missing piece.
2021-04-21 17:57:26 +02:00
Bram Moolenaar
a369c3d9c1 patch 8.2.2798: Vim9: redir to variable with append does not accept an index
Problem:    Vim9: redir to variable with append does not accept an index.
Solution:   Make the appending work.
2021-04-21 16:00:10 +02:00
Bram Moolenaar
2d5f385cee patch 8.2.2797: Search highlight disappears in the Visual area
Problem:    Search highlight disappears in the Visual area.
Solution:   Combine the search attributes. (closes #8134)
2021-04-21 15:11:42 +02:00
Bram Moolenaar
753bcf8c7d patch 8.2.2796: Vim9: redir to variable does not accept an index
Problem:    Vim9: redir to variable does not accept an index.
Solution:   Make the index work.
2021-04-21 14:24:24 +02:00
Bram Moolenaar
169502fb0b patch 8.2.2795: Coverity warns for not using return value
Problem:    Coverity warns for not using return value.
Solution:   Check the return value of compiling the substitute expression.
2021-04-21 12:19:35 +02:00
Bram Moolenaar
16678eb50f patch 8.2.2794: Linux users don't know how to get ncurses
Problem:    Linux users don't know how to get ncurses.
Solution:   Add the name of the package. (closes #8132)
2021-04-21 11:57:59 +02:00
Bram Moolenaar
d23f8bde5c patch 8.2.2793: MS-Windows: string literals are writable with MSVC
Problem:    MS-Windows: string literals are writable with MSVC.
Solution:   Add the /GF compiler flag.  Make mch_write() safer. (Ken Takata,
            closes #8133)
2021-04-21 11:30:48 +02:00
Bram Moolenaar
9ce47ec0b6 patch 8.2.2792: Vim9: :disas shows instructions for default args but no text
Problem:    Vim9: :disas shows instructions for default args but no text.
Solution:   Show the expression test above the default argument instructions.
            (closes #8129)
2021-04-20 22:16:39 +02:00
Bram Moolenaar
5c787fb792 patch 8.2.2791: Vim9: memory leak when using \=expr in :substitute
Problem:    Vim9: memory leak when using \=expr in :substitute.
Solution:   Do not allocate a new instruction list.
2021-04-20 21:49:35 +02:00
Bram Moolenaar
63276685f9 patch 8.2.2790: filetype test fails
Problem:    filetype test fails
Solution:   Also update the scripts detection
2021-04-20 21:14:09 +02:00
Bram Moolenaar
8238f08838 patch 8.2.2789: Vim9: using \=expr in :substitute does not handle jumps
Problem:    Vim9: using \=expr in :substitute does not handle jumps.
Solution:   Start with instruction count zero. (closes #8128)
2021-04-20 21:10:48 +02:00
Bram Moolenaar
3f88e71fa2 patch 8.2.2788: Raku is now the only name what once was called perl6
Problem:    Raku is now the only name what once was called perl6.
Solution:   Adjust the filetype detection. (closes #8120)
2021-04-20 20:21:23 +02:00
Bram Moolenaar
6d4c1c7ba8 patch 8.2.2787: MS-Windows: crash when using :echoconsole
Problem:    MS-Windows: crash when using :echoconsole.
Solution:   Do not write a NUL when it's already there.
2021-04-20 10:33:28 +02:00
Bram Moolenaar
4f2df37a0d patch 8.2.2786: Vim9: memory leak when using :s with expression
Problem:    Vim9: memory leak when using :s with expression.
Solution:   Clean up the instruction list.
2021-04-19 21:06:31 +02:00
Bram Moolenaar
2d1c57ed3d patch 8.2.2785: Vim9: cannot redirect to local variable
Problem:    Vim9: cannot redirect to local variable.
Solution:   Compile :redir when redirecting to a variable.
2021-04-19 20:50:03 +02:00
Bram Moolenaar
4c13721482 patch 8.2.2784: Vim9: cannot use \=expr in :substitute
Problem:    Vim9: cannot use \=expr in :substitute.
Solution:   Compile the expression into instructions and execute them when
            invoked.
2021-04-19 16:48:48 +02:00
Bram Moolenaar
e8209b91b9 patch 8.2.2783: duplicate code for setting byte in blob, blob test may fail
Problem:    Duplicate code for setting byte in blob, blob test may fail.
Solution:   Call blob_set_append().  Test sort failure with "N".
2021-04-18 16:08:52 +02:00
Bram Moolenaar
39211cba72 patch 8.2.2782: Vim9: blob operations not fully tested
Problem:    Vim9: blob operations not fully tested.
Solution:   Make more blob tests run in Vim9 script.  Fix filter().  Make
            insert() give an error for a null blob, like add().
2021-04-18 15:48:04 +02:00
Bram Moolenaar
b7c21afef1 patch 8.2.2781: add() silently skips when adding to null list or blob
Problem:    Add() silently skips when adding to null list or blob.
Solution:   Give an error in Vim9 script.  Allocate blob when it is NULL like
            with list and dict.
2021-04-18 14:12:31 +02:00
Bram Moolenaar
d551d6c268 patch 8.2.2780: Vim9: for loop over blob doesn't work
Problem:    Vim9: for loop over blob doesn't work.
Solution:   Make it work.
2021-04-18 13:15:58 +02:00
Bram Moolenaar
f7e92aae15 patch 8.2.2779: memory access error in remove() for blob
Problem:    Memory access error in remove() for blob.
Solution:   Adjust length for memmove().
2021-04-17 21:22:49 +02:00
Bram Moolenaar
d23b714d8b patch 8.2.2778: problem restoring 'packpath' in session
Problem:    Problem restoring 'packpath' in session.
Solution:   Let "skiprtp" also apply to 'packpath'.
2021-04-17 21:04:34 +02:00
Bram Moolenaar
51e933261b patch 8.2.2777: Vim9: blob operations not tested in all ways
Problem:    Vim9: blob operations not tested in all ways.
Solution:   Run tests with CheckLegacyAndVim9Success().  Make blob assign with
            index work.
2021-04-17 20:44:56 +02:00
Bram Moolenaar
0995c81f2f patch 8.2.2776: :mksession uses current value of 'splitbelow' and 'splitright'
Problem:    :mksession uses current value of 'splitbelow' and 'splitright'
            even though "options" is not in 'sessionoptions'. (Maxim Kim)
Solution:   Save and restore the values, instead of setting to the current
            value. (closes #8119)
2021-04-17 18:38:54 +02:00
Bram Moolenaar
c70fe460b0 patch 8.2.2775: Vim9: wrong line number used for some commands
Problem:    Vim9: wrong line number used for some commands.
Solution:   For :exe, :echo and the like use the line number of the start of
            the command.  When calling a function set the line number in the
            script context.
2021-04-17 17:59:19 +02:00
Bram Moolenaar
6c7cc347af patch 8.2.2774: Vim9: cannot import an existing name even when using "as"
Problem:    Vim9: cannot import an existing name even when using "as".
Solution:   Do not check for an existing name when using "as". (closes #8113)
2021-04-17 16:38:50 +02:00
Bram Moolenaar
56994d2158 Update runtime files. 2021-04-17 16:31:09 +02:00
Bram Moolenaar
112a006417 patch 8.2.2773: PSL filetype not recognized
Problem:    PSL filetype not recognized.
Solution:   Add a filetype pattern. (Daniel Kho, closes #8117)
2021-04-17 14:06:39 +02:00
Bram Moolenaar
635bd60804 patch 8.2.2772: problems when restoring 'runtimepath' from a session file
Problem:    Problems when restoring 'runtimepath' from a session file.
Solution:   Add the "skiprtp" item in 'sessionoptions'.
2021-04-16 19:58:22 +02:00
Bram Moolenaar
aa1959bd5e patch 8.2.2771: Vim9: assignment not recognized if declaration was skipped
Problem:    Vim9: assignment not recognized if declaration was skipped.
Solution:   Also recognized an assignment if the variable does not exist.
            (closes #8108)
2021-04-15 22:13:39 +02:00
Bram Moolenaar
fe090eb58f patch 8.2.2770: Vim9: type of loop variable is not used
Problem:    Vim9: type of loop variable is not used.
Solution:   Parse and check the variable type. (closes #8107)
2021-04-15 21:48:32 +02:00
Bram Moolenaar
6bc00699c5 patch 8.2.2769: Modula-3 config files are not recognized
Problem:    Modula-3 config files are not recognized.
Solution:   Add filetype patterns. (Doug Kearns)
2021-04-15 14:29:17 +02:00
Bram Moolenaar
f387f5dfbc patch 8.2.2768: Vim9: memory leak with blob range error
Problem:    Vim9: memory leak with blob range error.
Solution:   Jump to end instead of returning.
2021-04-15 13:42:21 +02:00
Bram Moolenaar
bd6406f15d patch 8.2.2767: compiler warning for unused argument
Problem:    Compiler warning for unused argument.
Solution:   Remove the argument.
2021-04-14 21:30:06 +02:00
Bram Moolenaar
b141926890 patch 8.2.2766: test failure
Problem:    Test failure.
Solution:   Add change to Vim9 compilation error message.
2021-04-14 20:54:07 +02:00
Bram Moolenaar
0e3ff19196 patch 8.2.2765: Vim9: not all blob operations work
Problem:    Vim9: not all blob operations work.
Solution:   Run more tests also with Vim9 script and :def functions.  Fix what
            doesn't work.
2021-04-14 20:35:23 +02:00
Bram Moolenaar
b47bed2f7a patch 8.2.2764: memory leak when default function argument is allocated
Problem:    Memory leak when default function argument is allocated.
Solution:   Free the expression result.
2021-04-14 17:06:43 +02:00
Bram Moolenaar
a3589a0d6c patch 8.2.2763: Vim9: cannot use type in for loop unpack at script level
Problem:    Vim9: cannot use type in for loop unpack at script level.
Solution:   Advance over the type name.
2021-04-14 13:30:46 +02:00
Bram Moolenaar
f62d73933a patch 8.2.2762: Vim9: function line truncated when compiling
Problem:    Vim9: function line truncated when compiling.
Solution:   Copy the line before processing it. (closes #8101)
2021-04-14 12:40:00 +02:00
Bram Moolenaar
2e240bd428 patch 8.2.2761: using "syn include" does not work properly
Problem:    Using "syn include" does not work properly.
Solution:   Don't add current_syn_inc_tag to topgrp. (Jaehwang Jerry Jung,
            closes #8104)
2021-04-14 11:15:08 +02:00
Bram Moolenaar
f6a8d420a8 patch 8.2.2760: Vim9: no error for changing a for loop variable
Problem:    Vim9: no error for changing a for loop variable.
Solution:   Make the loop variable read-only. (issue #8102)
2021-04-13 21:48:03 +02:00
Bram Moolenaar
f2253963c2 patch 8.2.2759: Vim9: for loop infers type of loop variable
Problem:    Vim9: for loop infers type of loop variable.
Solution:   Do not get the member type. (closes #8102)
2021-04-13 20:53:13 +02:00
Bram Moolenaar
f48b2fa33c patch 8.2.2758: Vim9: wrong line number for autoload function with wrong name
Problem:    Vim9: wrong line number for autoload function with wrong name.
Solution:   Set and restore SOURCING_LNUM. (closes #8100)
2021-04-12 22:02:36 +02:00
Bram Moolenaar
68452177ca patch 8.2.2757: Vim9: blob tests for legacy and Vim9 script are separate
Problem:    Vim9: blob tests for legacy and Vim9 script are separate.
Solution:   Add CheckLegacyAndVim9Success().  Make blob index assign work.
2021-04-12 21:21:02 +02:00
Bram Moolenaar
cfc3023cb6 patch 8.2.2756: Vim9: blob index and slice not implemented yet
Problem:    Vim9: blob index and slice not implemented yet.
Solution:   Implement blob index and slice.
2021-04-11 20:26:34 +02:00
Bram Moolenaar
af8ea0d066 patch 8.2.2755: Vim9: no error for using a number in a condition
Problem:    Vim9: no error for using a number in a condition.
Solution:   Also use ISN_COND2BOOL if the type is t_number_bool.
            (closes #7644)
2021-04-11 18:24:46 +02:00
Bram Moolenaar
09f067fca3 patch 8.2.2754: :sleep! does not always hide the cursor
Problem:    :sleep! does not always hide the cursor.
Solution:   Add the cursor_is_asleep flag. (Jeremy Lerner, closes #8097,
            closes #7998)
2021-04-11 13:29:18 +02:00
Bram Moolenaar
f93bbd0262 patch 8.2.2753: Vim9: cannot ignore an item in assignment unpack
Problem:    Vim9: cannot ignore an item in assignment unpack.
Solution:   Allow using an underscore.
2021-04-10 22:35:43 +02:00
Bram Moolenaar
e8e3078184 patch 8.2.2752 2021-04-10 21:46:05 +02:00
Bram Moolenaar
fed9e830fc patch 8.2.2751: Coverity warns for using NULL pointer
Problem:    Coverity warns for using NULL pointer.
Solution:   Check for NULL in calling function.
2021-04-10 21:38:38 +02:00
Bram Moolenaar
da479c7597 patch 8.2.2750: Vim9: error for using underscore in nested function
Problem:    Vim9: error for using underscore in nested function.
Solution:   Do not consider "_" already defined. (closes #8096)
2021-04-10 21:01:38 +02:00
Bram Moolenaar
fe95b94ffa patch 8.2.2749: Vim9: test for error can be a bit flaky
Problem:    Vim9: test for error can be a bit flaky.
Solution:   Increase the wait time a bit.
2021-04-10 20:52:43 +02:00
Bram Moolenaar
c429769776 patch 8.2.2748: Vim9: memory leak when calling :def function fails
Problem:    Vim9: memory leak when calling :def function fails.
Solution:   Jump to failed_early instead of returning.
2021-04-10 20:46:48 +02:00
Bram Moolenaar
bb8a7ce0a1 patch 8.2.2747: Vim9: not always an error for too many function arguments
Problem:    Vim9: not always an error for too many function arguments.
Solution:   Check for getting too many arguments.
2021-04-10 20:10:26 +02:00
Bram Moolenaar
87795939d0 patch 8.2.2746: check for duplicate arguments does not work
Problem:    Check for duplicate arguments does not work.
Solution:   Correct condition.
2021-04-10 18:21:30 +02:00
Bram Moolenaar
51e7e78de7 patch 8.2.2745: Vim9: missing part of the argument change
Problem:    Vim9: missing part of the argument change.
Solution:   Add missing changes.
2021-04-10 17:46:52 +02:00
Bram Moolenaar
962c43bf0d patch 8.2.2744: Vim9: no way to explicitly ignore an argument
Problem:    Vim9: no way to explicitly ignore an argument.
Solution:   Use the underscore as the name for an ignored argument.
2021-04-10 17:18:09 +02:00
Bram Moolenaar
599410cb3c patch 8.2.2743: Vim9: function state stuck when compiling with ":silent!"
Problem:    Vim9: function state stuck when compiling with ":silent!".
Solution:   Check for uf_def_status to be UF_COMPILING.
2021-04-10 14:03:43 +02:00
Bram Moolenaar
701cc6ca9e patch 8.2.2742: Vim9: when compiling a function fails it is cleared
Problem:    Vim9: when compiling a function fails it is cleared.
Solution:   Keep the function lines, prevent execution with a different
            status. (closes #8093)
2021-04-10 13:33:48 +02:00
Bram Moolenaar
1088b69451 patch 8.2.2741: Vim9: Partial call does not check right arguments
Problem:    Vim9: Partial call does not check right arguments.
Solution:   Adjust the offset for whether the partial is before or after the
            arguments. (closes #8091)
2021-04-09 22:12:44 +02:00
Bram Moolenaar
2a38908b05 patch 8.2.2740: Vim9: lambda with varargs doesn't work
Problem:    Vim9: lambda with varargs doesn't work.
Solution:   Make "...name" work.  Require type to be a list.
2021-04-09 20:24:31 +02:00
Bram Moolenaar
767034c5b8 patch 8.2.2739: Vim9: a lambda accepts too many arguments at the script level
Problem:    Vim9: a lambda accepts too many arguments at the script level.
Solution:   Do not set uf_varargs in Vim9 script.
2021-04-09 17:24:52 +02:00
Bram Moolenaar
dcae51facc patch 8.2.2738: extending a list with itself can give wrong result
Problem:    Extending a list with itself can give wrong result.
Solution:   Remember the item before where the insertion happens and skip to
            after the already inserted items. (closes #1112)
2021-04-08 20:10:10 +02:00
Bram Moolenaar
d8db838392 patch 8.2.2737: status line not updated when local 'statusline' option set
Problem:    Status line not updated when local 'statusline' option set.
Solution:   Check the 'statusline' option of each window.
2021-04-08 18:27:53 +02:00
Bram Moolenaar
175a41c13f patch 8.2.2736: Vim9: for loop over string is a bit slow
Problem:    Vim9: for loop over string is a bit slow.
Solution:   Avoid using strlen().
2021-04-08 18:05:03 +02:00
Bram Moolenaar
fa5963880d patch 8.2.2735: Vim9: function reference found with prefix, not without
Problem:    Vim9: function reference found with prefix, not without.
Solution:   Also find function reference without prefix.
2021-04-07 21:58:16 +02:00
Bram Moolenaar
15e5e53ef2 patch 8.2.2734: Vim9: cannot use legacy script-local var from :def function
Problem:    Vim9: cannot use legacy script-local var from :def function.
Solution:   Do not insist on using "s:" prefix. (closes #8076)
2021-04-07 21:21:13 +02:00
Bram Moolenaar
130cbfc312 Update runtime files 2021-04-07 21:07:20 +02:00
Bram Moolenaar
125ed2745c patch 8.2.2733: detecting Lua version is not reliable
Problem:    Detecting Lua version is not reliable.
Solution:   Add "vim.lua_version". (Ozaki Kiichi, closes #8080)
2021-04-07 20:11:12 +02:00
Bram Moolenaar
e5b0b98a90 patch 8.2.2732: prompt for s///c in Ex mode can be wrong
Problem:    Prompt for s///c in Ex mode can be wrong.
Solution:   Position the cursor before showing the prompt. (closes #8073)
2021-04-07 19:42:57 +02:00
Bram Moolenaar
8dddc1f0e2 patch 8.2.2731: Mac: SF symbols are not displayed properly
Problem:    Mac: SF symbols are not displayed properly.
Solution:   Add custom range to list of double-width characters. (Yee Cheng
            Chin, closes #8077)
2021-04-07 19:00:25 +02:00
Bram Moolenaar
c9605f0595 patch 8.2.2730: Coverity complains about not restoring character
Problem:    Coverity complains about not restoring character.
Solution:   Also restore the character in case of an error.
2021-04-06 21:29:32 +02:00
Bram Moolenaar
643ce6c0c6 patch 8.2.2729: Vim9: wrong error message for referring to legacy script var
Problem:    Vim9: wrong error message for referring to legacy script variable.
Solution:   Do allow referring to a variable in legacy script without "s:" if
            it exists at compile time. (closes #8076)
2021-04-06 21:17:27 +02:00
Bram Moolenaar
e3d1f4c982 patch 8.2.2728: special key names don't work if 'isident' is cleared
Problem:    Special key names don't work if 'isident' is cleared.
Solution:   Add vim_isNormalIDc() and use it for special key names.
            (closes #2389)
2021-04-06 20:21:59 +02:00
Bram Moolenaar
e9b8b78e04 patch 8.2.2727: function test fails
Problem:    Function test fails.
Solution:   Adjust expected error number.
2021-04-06 20:18:29 +02:00
Bram Moolenaar
86cdb8a4bd patch 8.2.2726: confusing error message with white space before comma
Problem:    Confusing error message with white space before comma in the
            arguments of a function declaration.
Solution:   Give a specific error message. (closes #2235)
2021-04-06 19:01:03 +02:00
Bram Moolenaar
e8c4660a55 patch 8.2.2725: Vim9: message about compiling is wrong when using try/catch
Problem:    Vim9: message about compiling is wrong when using try/catch.
Solution:   Store the compiling flag with the message. (closes #8071)
2021-04-05 22:27:37 +02:00
Bram Moolenaar
0d351a04e1 patch 8.2.2724: Vim9: concatenating to list in dict not tested
Problem:    Vim9: concatenating to list in dict not tested.
Solution:   Add a test. (issue #8068)
2021-04-05 21:05:26 +02:00
Bram Moolenaar
58fb7c39a0 patch 8.2.2723: assignment test fails
Problem:    Assignment test fails.
Solution:   Adjust error number.
2021-04-05 20:59:41 +02:00
Bram Moolenaar
b9c0cd897a patch 8.2.2722: Vim9: crash when using LHS with double index
Problem:    Vim9: crash when using LHS with double index.
Solution:   Handle lhs_dest which is "dest_expr". (closes #8068)
            Fix confusing error message for missing dict item.
2021-04-05 20:51:00 +02:00
Bram Moolenaar
2927c07b0e patch 8.2.2721: Vim9: cannot have a linebreak inside a lambda
Problem:    Vim9: cannot have a linebreak inside a lambda.
Solution:   Compile the expression before the arguments.
2021-04-05 19:41:21 +02:00
Bram Moolenaar
01ac0a1f66 patch 8.2.2720: GTK menu tooltip moves the cursor
Problem:    GTK menu tooltip moves the cursor.
Solution:   Position the cursor after displaying the tooltip.  Do not show the
            tooltip when editing the command line.
2021-04-05 18:20:45 +02:00
Bram Moolenaar
e42939af87 patch 8.2.2719: Vim9: appending to dict item doesn't work in a :def function
Problem:    Vim9: appending to dict item doesn't work in a :def function.
Solution:   Implement assignment with operator on indexed item.
2021-04-05 17:11:17 +02:00
Bram Moolenaar
0865b15bc6 patch 8.2.2718: Vim9: no explicit test for using a global function without g:
Problem:    Vim9: no explicit test for using a global function without the g:
            prefix.
Solution:   Add a test case.
2021-04-05 15:38:51 +02:00
Bram Moolenaar
ce5b06a6a9 patch 8.2.2717: GTK menu items don't show a tooltip
Problem:    GTK menu items don't show a tooltip.
Solution:   Add a callback to show the tooltip. (Leonid V. Fedorenchik,
            closes #8067, closes #7810)
2021-04-05 14:13:20 +02:00
Bram Moolenaar
0b94e297af patch 8.2.2716: the equivalent class regexp is missing some characters
Problem:    The equivalent class regexp is missing some characters.
Solution:   Update the list of equivalent characters. (Dominique Pellé,
            closes #8029)
2021-04-05 13:59:53 +02:00
Bram Moolenaar
886e5e737d patch 8.2.2715: Vim9: tests fail without the channel feature
Problem:    Vim9: tests fail without the channel feature. (Dominique Pellé)
Solution:   Check for the channel feature. (closes #8063)
2021-04-05 13:36:34 +02:00
Bram Moolenaar
409da842db patch 8.2.2714: filetype pattern ending in star is too far up
Problem:    Filetype pattern ending in star is too far up.
Solution:   Move down to where patterns ending in star belong. (closes #8065)
2021-04-05 13:10:43 +02:00
Bram Moolenaar
68ffe8cade patch 8.2.2713: folding code not sufficiently tested
Problem:    Folding code not sufficiently tested.
Solution:   Add a few more test cases. (Yegappan Lakshmanan, closes #8064)
2021-04-05 12:47:25 +02:00
Bram Moolenaar
f2dd9cb995 patch 8.2.2712: memory leak when adding to a blob fails
Problem:    Memory leak when adding to a blob fails.
Solution:   Clear the second typval before returning.
2021-04-04 21:55:23 +02:00
Bram Moolenaar
3c49e74e18 patch 8.2.2711: "gj" in a closed fold does not move out of the fold
Problem:    "gj" in a closed fold does not move out of the fold. (Marco Hinz)
Solution:   Add a check for being in a closed fold. (closes #8062)
2021-04-04 21:26:04 +02:00
Bram Moolenaar
90193e6140 patch 8.2.2710: Vim9: not all tests cover script and :def function
Problem:    Vim9: not all tests cover script and :def function.
Solution:   Run tests in both if possible. Fix differences.
2021-04-04 20:49:50 +02:00
Bram Moolenaar
26af8e54ff patch 8.2.2709: the GTK GUI has a gap next to the scrollbar
Problem:    The GTK GUI has a gap next to the scrollbar.
Solution:   Calculate the scrollbar padding for GTK. (closes #8027)
2021-04-04 15:57:12 +02:00
Bram Moolenaar
3a6aadb328 patch 8.2.2708: test sometimes fails waiting for shell in terminal
Problem:    Test sometimes fails waiting for shell in terminal.
Solution:   Use WaitForAssert() so we can see the actual job status.  Use
            Run_shell_in_terminal().
2021-04-04 15:28:59 +02:00
Bram Moolenaar
ceb0619433 patch 8.2.2707: adding a lot of completions can still be a bit slow
Problem:    Adding a lot of completions can still be a bit slow.
Solution:   Add the check for CP_FAST. (Ben Jackson)
2021-04-04 15:05:22 +02:00
Bram Moolenaar
a7511c0f4f patch 8.2.2706: Vim9: wrong line number reported for boolean operator
Problem:    Vim9: wrong line number reported for boolean operator.
Solution:   Use the line number before skipping over line break.
            (closes #8058)
2021-04-03 21:47:07 +02:00
Bram Moolenaar
77709b194c patch 8.2.2705: Vim9: misleading reported line number for wrong type
Problem:    Vim9: misleading reported line number for wrong type.
Solution:   Remember and use the line number at the start. (closes #8059)
2021-04-03 21:01:01 +02:00
Bram Moolenaar
440cf096fa patch 8.2.2704: adding a lot of completions can be a bit slow
Problem:    Adding a lot of completions can be a bit slow.
Solution:   Use fast_breakcheck() instead of ui_breakcheck() when adding a
            list of completions. (Ben Jackson, closes #8061)
2021-04-03 20:13:30 +02:00
Bram Moolenaar
6e50ec2f0a patch 8.2.2703: Vim9: memory leak when failing on locked variable
Problem:    Vim9: memory leak when failing on locked variable.
Solution:   Free the memory.
2021-04-03 19:32:44 +02:00
Bram Moolenaar
c17ba791a9 patch 8.2.2702: compiler completion test fails when more scripts are added
Problem:    Compiler completion test fails when more scripts are added.
Solution:   Add a more generic pattern.
2021-04-03 19:07:05 +02:00
Bram Moolenaar
26f201345d patch 8.2.2701: order of removing FORTIFY_SOURCE is wrong
Problem:    Order of removing FORTIFY_SOURCE is wrong.
Solution:   Use the more specific pattern first.
2021-04-03 17:33:52 +02:00
Bram Moolenaar
6437475ffb patch 8.2.2700: nested autocmd test fails sometimes
Problem:    Nested autocmd test fails sometimes.
Solution:   Wait for the job to finish.
2021-04-03 17:22:29 +02:00
Bram Moolenaar
c48f2dc0be patch 8.2.2699: Lua test fails
Problem:    Lua test fails.
Solution:   Fix condition. (Yegappan Lakshmanan, closes #8060)
2021-04-03 17:18:52 +02:00
Bram Moolenaar
b9c6b6fb73 patch 8.2.2698: Lua test fails on MS-Windows
Problem:    Lua test fails on MS-Windows.
Solution:   Fall back to old method if "lua -v" doesn't work.
2021-04-03 15:35:50 +02:00
Bram Moolenaar
0df6030145 patch 8.2.2697: function list test fails
Problem:    Function list test fails.
Solution:   Add missing function. (Yegappan Lakshmanan)
2021-04-03 15:15:47 +02:00
Bram Moolenaar
f65ed86f6f patch 8.2.2696: Lua test fails with Lua 5.4.3 and later
Problem:    Lua test fails with Lua 5.4.3 and later.
Solution:   Check for different error messages. (Yegappan Lakshmanan,
            closes #8050)
2021-04-03 14:13:33 +02:00
Bram Moolenaar
1e6bbfb560 patch 8.2.2695: cursor position reset with nested autocommands
Problem:    Cursor position reset with nested autocommands.
Solution:   Only check and reset line numbers for not nested autocommands.
            (closes #5820)
2021-04-03 13:19:26 +02:00
Bram Moolenaar
5b8cabfef7 patch 8.2.2694: when 'matchpairs' is empty every character beeps
Problem:    When 'matchpairs' is empty every character beeps. (Marco Hinz)
Solution:   Bail out when no character in 'matchpairs' was found.
            (closes #8053)  Add assert_nobeep().
2021-04-02 18:55:57 +02:00
Bram Moolenaar
dcf29ac87f patch 8.2.2693: Vim9: locked script variable can be changed
Problem:    Vim9: locked script variable can be changed.
Solution:   Check legacy script variable for being locked. (issue #8031)
2021-04-02 14:44:02 +02:00
Bram Moolenaar
f5906aa780 patch 8.2.2692: Vim9: locked script variable can be changed
Problem:    Vim9: locked script variable can be changed.
Solution:   Check for locked value. (closes #8031)
2021-04-02 14:35:15 +02:00
Bram Moolenaar
3fa5e64e0e patch 8.2.2691: autoconf may mess up compiler flags
Problem:    Autoconf may mess up compiler flags.
Solution:   Handle removing FORTIFY_SOURCE a bit better. (Vladimir Lomov,
            closes #8049)
2021-04-02 13:30:59 +02:00
Bram Moolenaar
ef38bcf051 patch 8.2.2690: PowerShell files are not recognized
Problem:    PowerShell files are not recognized.
Solution:   Recognize several PowerShell extension. (Heath Stewart,
            closes #8051)
2021-04-02 13:00:15 +02:00
Bram Moolenaar
160a2b4dac patch 8.2.2689: tiny build fails
Problem:    Tiny build fails.
Solution:   Add #ifdef around use of p_stl.
2021-04-01 21:57:46 +02:00
Bram Moolenaar
ca51cc0a33 patch 8.2.2688: Vim9: crash when using s: for script variable
Problem:    Vim9: crash when using s: for script variable.
Solution:   Pass the end pointer. (closes #8045)
2021-04-01 21:38:53 +02:00
Bram Moolenaar
d877a5700f patch 8.2.2687: Vim9: cannot use "const" for global variable in :def function
Problem:    Vim9: cannot use "const" for global variable in :def function.
Solution:   Do allow using :const for a global variable. (closes #8030)
2021-04-01 19:42:48 +02:00
Bram Moolenaar
ce0b75711a patch 8.2.2686: status line is not updated when going to cmdline mode
Problem:    Status line is not updated when going to cmdline mode.
Solution:   Redraw status lines if 'statusline' is set and going to status
            line mode. (based on patch from Justin M. Keyes et al.,
            closes #8044)
2021-04-01 18:47:14 +02:00
Bram Moolenaar
49c51b825a patch 8.2.2685: custom statusline not drawn correctly with WinBar
Problem:    Custom statusline not drawn correctly with WinBar.
Solution:   Also adjust the column for the custom status line. (Yee Cheng
            Chin, closes #8047)
2021-04-01 16:16:18 +02:00
Bram Moolenaar
5c504f680e patch 8.2.2684: not enough folding code is tested
Problem:    Not enough folding code is tested.
Solution:   Add more test cases. (Yegappan Lakshmanan, closes #8046)
2021-04-01 13:39:51 +02:00
Bram Moolenaar
b91d3f857f patch 8.2.2683: build failure without the +eval feature
Problem:    Build failure without the +eval feature.
Solution:   Add #ifdef.
2021-04-01 13:17:50 +02:00
Bram Moolenaar
529fb5a5f6 patch 8.2.2682: Vim9: cannot find Name.Func from "import * as Name"
Problem:    Vim9: cannot find Name.Func from "import * as Name". (Alexander
            Goussas)
Solution:   When no variable found try finding a function. (closes #8045)
            Check that the function was exported.
2021-04-01 12:57:57 +02:00
Bram Moolenaar
12be734faf patch 8.2.2681: Vim9: test fails for redeclaring script variable
Problem:    Vim9: test fails for redeclaring script variable.
Solution:   It's OK to assign to an existing script variable in legacy.
2021-03-31 21:47:33 +02:00
Bram Moolenaar
e535db86e7 patch 8.2.2680: Vim9: problem defining a script variable from legacy function
Problem:    Vim9: problem defining a script variable from legacy function.
Solution:   Check if the script is Vim9, not the current syntax.
            (closes #8032)
2021-03-31 21:07:24 +02:00
Bram Moolenaar
dad4473f02 Update runtime files. 2021-03-31 20:07:33 +02:00
Bram Moolenaar
ae0f151ddf patch 8.2.2679: status line missing for non-current window with winbar
Problem:    Winbar drawn over status line for non-current window with winbar
            if frame is zero height. (Leonid V. Fedorenchik)
Solution:   Do not draw the window if the frame height is zero. (closes #8037)
2021-03-30 22:12:12 +02:00
Bram Moolenaar
82820d9bf1 patch 8.2.2678: test for 'autoshelldir' does not reset the option
Problem:    Test for 'autoshelldir' does not reset the option.
Solution:   Reset the option after testing.
2021-03-30 20:54:28 +02:00
Bram Moolenaar
38a3bfa9a2 patch 8.2.2677: Vim9: cannot use only some of the default arguments
Problem:    Vim9: cannot use only some of the default arguments.
Solution:   Use v:none to use default argument value.  Remove
            uf_def_arg_idx[], use JUMP_IF_ARG_SET. (closes #6504)
2021-03-29 22:14:55 +02:00
Bram Moolenaar
9ea7e55ab9 patch 8.2.2676: missing error message
Problem:    Missing error message.
Solution:   Add new error message.
2021-03-29 21:06:04 +02:00
Bram Moolenaar
8b9abfd86c patch 8.2.2675: directory change in a terminal window shell is not followed
Problem:    Directory change in a terminal window shell is not followed.
Solution:   Add the 'autoshelldir' option. (closes #6290)
2021-03-29 20:49:05 +02:00
Bram Moolenaar
9dbe701fe1 patch 8.2.2674: Motif: cancelling the font dialog resets the font
Problem:    Motif: cancelling the font dialog resets the font.
Solution:   When no font is selected to not change the font. (closes #7825,
            closes #8035)  Fix compiler warnings.
2021-03-29 20:10:26 +02:00
Bram Moolenaar
3215466af9 patch 8.2.2673: Vim9: script-local funcref can have lower case name
Problem:    Vim9: script-local funcref can have lower case name.
Solution:   Require an upper case name.
2021-03-28 21:14:06 +02:00
Bram Moolenaar
b2cb6c8bbd patch 8.2.2672: Vim9: cannot use :lockvar and :unlockvar in compiled script
Problem:    Vim9: cannot use :lockvar and :unlockvar in compiled script.
Solution:   Implement locking support.
2021-03-28 20:38:34 +02:00
Bram Moolenaar
f6bdd82c7e patch 8.2.2671: error for line number in legacy script
Problem:    Error for line number in legacy script.
Solution:   Check for number type.
2021-03-28 16:26:41 +02:00
Bram Moolenaar
b2ac7d0663 patch 8.2.2670: Vim9: error for append(0, text)
Problem:    Vim9: error for append(0, text).
Solution:   Check for negative number. (closes #8022)
2021-03-28 15:46:16 +02:00
Bram Moolenaar
df749a2b9c patch 8.2.2669: command line completion does not work after "vim9"
Problem:    Command line completion does not work after "vim9".
Solution:   Include the "9". (Naohiro Ono, closes #8025)
2021-03-28 15:29:43 +02:00
Bram Moolenaar
f49a1fcdb9 patch 8.2.2668: Vim9: omitting "call" for "confirm()" does not give an error
Problem:    Vim9: omitting "call" for "confirm()" does not give an error.
Solution:   Do not recognize a modifier followed by "(".
2021-03-27 22:20:21 +01:00
Bram Moolenaar
24f21fdfca patch 8.2.2667: prop_find() cannot find item matching both id and type
Problem:    prop_find() cannot find item matching both id and type.
Solution:   Add the "both" argument. (Naohiro Ono, closes #8019)
2021-03-27 22:07:29 +01:00
Bram Moolenaar
c580943965 patch 8.2.2666: Vim9: not enough function arguments checked for string
Problem:    Vim9: not enough function arguments checked for string.
Solution:   Check in ch_logfile(), char2nr() and others.
2021-03-27 21:23:30 +01:00
Bram Moolenaar
7b45d46cf7 patch 8.2.2665: test failures
Problem:    Test failures.
Solution:   Check more specific feature.  Add missing change.
2021-03-27 19:09:02 +01:00
Bram Moolenaar
32105ae88f patch 8.2.2664: Vim9: not enough function arguments checked for string
Problem:    Vim9: not enough function arguments checked for string.
Solution:   Check in balloon functions.  Refactor function arguments.
2021-03-27 18:59:25 +01:00
Bram Moolenaar
79efa2e3b3 patch 8.2.2663: Vim9: leaking memory when inline function has an error
Problem:    Vim9: leaking memory when inline function has an error.
Solution:   Free the partially allocated function.
2021-03-27 15:40:11 +01:00
Bram Moolenaar
7007e31bde patch 8.2.2662: there is no way to avoid some escape sequences
Problem:    There is no way to avoid some escape sequences.
Solution:   Suppress escape sequences when the --not-a-term argument is used.
            (Gary Johnson)
2021-03-27 12:11:33 +01:00
Bram Moolenaar
bb5d87c850 patch 8.2.2661: leaking memory when looping over a string
Problem:    Leaking memory when looping over a string.
Solution:   Free the memory.
2021-03-26 22:15:26 +01:00
Bram Moolenaar
ccc25aa285 patch 8.2.2660: Vim9: no error for declaration with trailing text
Problem:    Vim9: no error for declaration with trailing text.
Solution:   Give an error. (closes #8014)
2021-03-26 21:27:52 +01:00
Bram Moolenaar
c61cb8bfe1 patch 8.2.2659: eval test fails because for loop on string works
Problem:    Eval test fails because for loop on string works.
Solution:   Check looping over function reference fails.
2021-03-26 20:56:45 +01:00
Bram Moolenaar
74e54fcb44 patch 8.2.2658: :for cannot loop over a string
Problem:    :for cannot loop over a string.
Solution:   Accept a string argument and iterate over its characters.
2021-03-26 20:41:29 +01:00
Bram Moolenaar
522eefd9a2 patch 8.2.2657: Vim9: error message for declaring variable in for loop
Problem:    Vim9: error message for declaring variable in for loop.
Solution:   Clear variables when entering block again. (closes #8012)
2021-03-26 18:49:22 +01:00
Bram Moolenaar
a2b3e7dc92 patch 8.2.2656: some command line arguments and regexp errors not tested
Problem:    Some command line arguments and regexp errors not tested.
Solution:   Add a few test cases. (Dominique Pellé, closes #8013)
2021-03-26 17:24:34 +01:00
Bram Moolenaar
0a1a6a1aa4 patch 8.2.2655: The -w command line argument doesn't work
Problem:    The -w command line argument doesn't work.
Solution:   Don't set 'window' when set with the -w argument. (closes #8011)
2021-03-26 14:14:18 +01:00
Bram Moolenaar
ff87140046 patch 8.2.2654: Vim9: getting a character from a string can be slow
Problem:    Vim9: getting a character from a string can be slow.
Solution:   Avoid a function call to get the character byte size. (#8000)
2021-03-26 13:34:05 +01:00
Bram Moolenaar
3a0f092ac0 patch 8.2.2653: build failure
Problem:    Build failure.
Solution:   Add missing changes.
2021-03-25 22:22:30 +01:00
Bram Moolenaar
fa984418e7 patch 8.2.2652: Vim9: can use command modifier without an effect
Problem:    Vim9: can use command modifier without an effect.
Solution:   Give an error for a misplaced command modifier.  Fix error message
            number.
2021-03-25 22:15:28 +01:00
Bram Moolenaar
a91a71322d patch 8.2.2651: Vim9: restoring command modifiers happens after jump
Problem:    Vim9: restoring command modifiers happens after jump.
Solution:   Move the restore instruction to before the jump. (closes #8006)
            Also handle for and while.
2021-03-25 21:12:15 +01:00
Bram Moolenaar
2fecb53115 patch 8.2.2650: Vim9: command modifiers not handled in nested function
Problem:    Vim9: command modifiers not handled in nested function.
Solution:   Keep function-local info in a structure and save it on the stack.
2021-03-24 22:00:56 +01:00
Bram Moolenaar
1ff89deeaa patch 8.2.2649: Vim9: some wincmd arguments cause a white space error
Problem:    Vim9: some wincmd arguments cause a white space error.
Solution:   Insert a space before the count. (closes #8001)
2021-03-24 20:08:12 +01:00
Bram Moolenaar
c54f347d63 patch 8.2.2648: terminal resize test sometimes hangs
Problem:    Terminal resize test sometimes hangs.
Solution:   Wait for the shell to display a prompt and other output.
2021-03-23 19:22:12 +01:00
Bram Moolenaar
f4a2ed0714 patch 8.2.2647: terminal test sometimes hangs
Problem:    Terminal test sometimes hangs.
Solution:   Wait for the shell to display a prompt.
2021-03-23 16:25:09 +01:00
Bram Moolenaar
f28f2ac425 patch 8.2.2646: Vim9: error for not using string doesn't mentionargument
Problem:    Vim9: error for not using string doesn't mention argument.
Solution:   Add argument number.
2021-03-22 22:21:26 +01:00
Bram Moolenaar
49f1e9ec3e patch 8.2.2645: using inline function is not properly tested
Problem:    Using inline function is not properly tested.
Solution:   Add test cases, esp. for errors.  Minor code improvements.
2021-03-22 20:49:02 +01:00
Bram Moolenaar
da1dbed0df patch 8.2.2644: prop_clear() causes a screen update even when nothing changed
Problem:    prop_clear() causes a screen update even when nothing changed.
Solution:   Only redraw when a property was cleared. (Dominique Pellé)
2021-03-22 19:43:34 +01:00
Bram Moolenaar
1f448d906b patch 8.2.2643: various code not covered by tests
Problem:    Various code not covered by tests.
Solution:   Add a few more test. (Yegappan Lakshmanan, closes #7995)
2021-03-22 19:37:06 +01:00
Bram Moolenaar
e98f60a591 patch 8.2.2642: Vim9: no clear error for wrong inline function
Problem:    Vim9: no clear error for wrong inline function.
Solution:   Check for something following the "{".
2021-03-22 18:22:30 +01:00
Bram Moolenaar
2cec027af4 patch 8.2.2641: display test fails because of lacking redraw
Problem:    Display test fails because of lacking redraw.
Solution:   Add a redraw command.
2021-03-22 17:30:47 +01:00
Bram Moolenaar
f1387285e2 patch 8.2.2640: screenstring() returns non-existing composing characters
Problem:    screenstring() returns non-existing composing characters.
Solution:   Only use composing characters if there is a base character.
2021-03-22 17:11:15 +01:00
Bram Moolenaar
5ea79a2599 patch 8.2.2639: build failure when fsync() is not available
Problem:    Build failure when fsync() is not available.
Solution:   Add #ifdef.
2021-03-22 16:45:35 +01:00
Bram Moolenaar
4c86830fc5 patch 8.2.2638: cannot write a message to the terminal from the GUI
Problem:    Cannot write a message to the terminal from the GUI.
Solution:   Add :echoconsole and use it in the test runner. (issue #7975)
2021-03-22 16:19:45 +01:00
Bram Moolenaar
09f8b3a022 patch 8.2.2637: prop_remove() causes a redraw even when nothing changed
Problem:    prop_remove() causes a redraw even when nothing changed.
Solution:   Only redraw if a property was removed.
2021-03-21 22:29:54 +01:00
Bram Moolenaar
67da21a147 patch 8.2.2636: memory leak when compiling inline function
Problem:    Memory leak when compiling inline function.
Solution:   Free the prefetched line.
2021-03-21 22:12:34 +01:00
Bram Moolenaar
7a6eaa06f9 patch 8.2.2635: Vim9: cannot define an inline function
Problem:    Vim9: cannot define an inline function.
Solution:   Make an inline function mostly work.
2021-03-21 20:53:29 +01:00
Bram Moolenaar
f90c855c71 patch 8.2.2634: 'tagfunc' does not indicate using a pattern
Problem:    'tagfunc' does not indicate using a pattern.
Solution:   Add the "r" flag. (Andy Massimino, closes #7982)
2021-03-21 14:49:57 +01:00
Bram Moolenaar
196a1f7409 patch 8.2.2633: multi-byte 'fillchars' for folding do not show properly
Problem:    Multi-byte 'fillchars' for folding do not show properly.
Solution:   Handle multi-byte characters correctly. (Yegappan Lakshmanan,
            closes #7983, closes #7955)
2021-03-21 14:39:19 +01:00
Bram Moolenaar
c5cf369e95 patch 8.2.2632: not all command line arguments are tested
Problem:    Not all command line arguments are tested.
Solution:   Add tests for -D and -serverlist. (Dominique Pellé, closes #7992)
2021-03-20 22:16:56 +01:00
Bram Moolenaar
a0c8aea479 patch 8.2.2631: commands from winrestcmd() do not always work properly
Problem:    Commands from winrestcmd() do not always work properly. (Leonid V.
            Fedorenchik)
Solution:   Repeat the size commands twice. (closes #7988)
2021-03-20 19:55:35 +01:00
Bram Moolenaar
592f57f5fe patch 8.2.2630: hard to see where a test gets stuck
Problem:    Hard to see where a test gets stuck.
Solution:   Print the executed test function. (Dominique Pellé, closes #7975)
2021-03-20 16:44:25 +01:00
Bram Moolenaar
a0399efa72 patch 8.2.2629: Vim9: error for #{{ is not desired
Problem:    Vim9: error for #{{ is not desired.
Solution:   Adjust the checks. (closes #7990)
2021-03-20 15:00:01 +01:00
Bram Moolenaar
5c7a299c16 patch 8.2.2628: Vim9: #{ can still be used at the script level
Problem:    Vim9: #{ can still be used at the script level.
Solution:   Give an error for #{ like in a :def function.
2021-03-20 13:29:38 +01:00
Bram Moolenaar
4355894869 patch 8.2.2627: no need to check for BSD after checking for not root
Problem:    No need to check for BSD after checking for not root.
Solution:   Remove CheckNotBSD. (Ozaki Kiichi, closes #7989)
2021-03-20 12:49:15 +01:00
Bram Moolenaar
240014321b patch 8.2.2626: GTK3: error when starting up and -geometry is given
Problem:    GTK3: error when starting up and -geometry is given. (Dominique
            Pellé)
Solution:   Use another function to get the monitor if the window has not been
            created yet. (closes #7978)
2021-03-20 12:36:46 +01:00
Bram Moolenaar
af125866db patch 8.2.2625: rss files not recognized
Problem:    Rss files not recognized.
Solution:   Recognize .rss as XML. (Kivin Locke, closes #7987)
2021-03-19 20:27:40 +01:00
Bram Moolenaar
74b99f6ab6 patch 8.2.2624: atom files not recognized
Problem:    Atom files not recognized.
Solution:   Recognize .atom as XML. (Kivin Locke, closes #7986)
2021-03-19 20:19:12 +01:00
Bram Moolenaar
17709e280a patch 8.2.2623: some tests fail when run as root
Problem:    Some tests fail when run as root.
Solution:   Use CheckNotRoot.
2021-03-19 14:38:12 +01:00
Bram Moolenaar
a555e6fcb6 patch 8.2.2622: GTK: error when starting up and -geometry is given
Problem:    GTK: error when starting up and -geometry is given. (Dominique
            Pellé)
Solution:   Use another function to get the monitor if the window has not been
            created yet. (closes #7978)
2021-03-18 22:28:57 +01:00
Bram Moolenaar
108cf0153c patch 8.2.2621: typval2type() cannot handle recursive structures
Problem:    typval2type() cannot handle recursive structures.
Solution:   Use copyID. (closes #7979)
2021-03-18 22:15:04 +01:00
Bram Moolenaar
4b3e1964d8 patch 8.2.2620: Vim9: Using #{ for a dictionary gives strange errors
Problem:    Vim9: Using #{ for a dictionary gives strange errors.
Solution:   Give an error when using #{ for a comment after a command.
2021-03-18 21:37:55 +01:00
Bram Moolenaar
5f91e74bf9 patch 8.2.2619: Vim9: no test for return type of lambda
Problem:    Vim9: no test for return type of lambda.
Solution:   Add a test.
2021-03-17 21:29:29 +01:00
Bram Moolenaar
3f32788000 patch 8.2.2618: Vim9: cannot use a normal list name to store function refs
Problem:    Vim9: cannot use a normal list name to store function refs.
Solution:   Allow a lower case name if it is indexed.
2021-03-17 20:56:38 +01:00
Bram Moolenaar
8863bda25d patch 8.2.2617: Vim9: script variable in block not found by function
Problem:    Vim9: script variable in a block scope not found by a nested
            function.
Solution:   Copy the block scope IDs before compiling the function.
2021-03-17 18:42:08 +01:00
Bram Moolenaar
3e1916947d patch 8.2.2616: Vim9: if 'cpo' is change in Vim9 script it may be restored
Problem:    Vim9: if 'cpo' is change in Vim9 script it may be restored.
Solution:   Apply the changes to 'cpo' to the restored value.
2021-03-17 17:46:00 +01:00
Bram Moolenaar
a4c81bea38 patch 8.2.2615: test is sourcing the wrong file
Problem:    Test is sourcing the wrong file.
Solution:   Correct the file name.
2021-03-17 15:23:16 +01:00
Bram Moolenaar
c970e4225b patch 8.2.2614: Vim9: function is deleted while executing
Problem:    Vim9: function is deleted while executing.
Solution:   increment the call count, when more than zero do not delete the
            function but mark it as dead. (closes #7977)
2021-03-17 15:03:04 +01:00
Bram Moolenaar
6ccfd99b92 patch 8.2.2613: new test throws exception
Problem:    New test throws exception.
Solution:   Adjust the function cleanup.
2021-03-17 13:39:33 +01:00
Bram Moolenaar
18b7d86d7f patch 8.2.2612: col('.') may get outdated column value
Problem:    col('.') may get outdated column value.
Solution:   Add a note to the help how to make this work and add a test for
            it. (closes #7971)
2021-03-17 13:28:05 +01:00
Bram Moolenaar
f8c52e8d08 patch 8.2.2611: conditions for startup tests are not exactly right
Problem:    Conditions for startup tests are not exactly right.
Solution:   Check for type of GUI instead of MS-Windows. (Ozaki Kiichi,
            closes #7976)
2021-03-17 12:27:23 +01:00
Bram Moolenaar
1e448465e1 patch 8.2.2610: mouse click test fails when using remote connection
Problem:    Mouse click test fails when using remote connection.
Solution:   Use a larger 'mousetime'. (Dominique Pellé, closes #7968)
2021-03-16 21:17:16 +01:00
Bram Moolenaar
3214812997 patch 8.2.2609: test disabled on MS-Windows even though it should work
Problem:    Test disabled on MS-Windows even though it should work.
Solution:   Restore the condition for skipping the test. (Ken Takata,
            closes #7970)
2021-03-16 13:23:30 +01:00
Bram Moolenaar
f4fcedc59d patch 8.2.2608: character input not fully tested
Problem:    Character input not fully tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes #7963)
2021-03-15 18:36:20 +01:00
Bram Moolenaar
02b4d9b18a patch 8.2.2607: strcharpart() cannot include composing characters
Problem:    strcharpart() cannot include composing characters.
Solution:   Add the {skipcc} argument.
2021-03-14 19:46:45 +01:00
Bram Moolenaar
70ce8a1561 patch 8.2.2606: strchars() defaults to counting composing characters
Problem:    strchars() defaults to counting composing characters.
Solution:   Add strcharlen() which ignores composing characters.
2021-03-14 19:02:09 +01:00
Bram Moolenaar
0289a093a4 patch 8.2.2605: Vim9: string index and slice does not include composing chars
Problem:    Vim9: string index and slice does not include composing chars.
Solution:   Include composing characters. (issue #6563)
2021-03-14 18:40:19 +01:00
Bram Moolenaar
240309c9bf patch 8.2.2604: GUI-specific command line arguments not tested
Problem:    GUI-specific command line arguments not tested.
Solution:   Add tests for several arguments. (Dominique Pellé, closes #7962)
2021-03-14 16:20:37 +01:00
Bram Moolenaar
77b10ffad4 patch 8.2.2603: Vim9: no effect if user command is also a function
Problem:    Vim9: no effect if user command is also a function.
Solution:   Check for paren following. (closes #7960)
2021-03-14 13:21:35 +01:00
Bram Moolenaar
2e34c34be1 patch 8.2.2602: Vim9: continue doesn't work if :while is very first command
Problem:    Vim9: continue doesn't work if :while is very first command.
            (Yegappan Lakshmanan)
Solution:   Add one to the continue instruction index.
2021-03-14 12:13:33 +01:00
Bram Moolenaar
6bce5856b5 patch 8.2.2601: memory usage test often fails on FreeBSD
Problem:    Memory usage test often fails on FreeBSD.
Solution:   Increase multiplier for upper limit.
2021-03-13 22:11:51 +01:00
Bram Moolenaar
93e1cae739 patch 8.2.2600: Vim9: crash when putting an unknown type in a dictionary
Problem:    Vim9: crash when putting an unknown type in a dictionary.
            (Yegappan Lakshmanan)
Solution:   Handle a NULL type pointer.
2021-03-13 21:24:56 +01:00
Bram Moolenaar
edba70703b patch 8.2.2599: build failure
Problem:    Build failure.
Solution:   Add missing change.
2021-03-13 21:14:18 +01:00
Bram Moolenaar
6508880d6c patch 8.2.2598: Vim9: :open does not need to be supported
Problem:    Vim9: :open does not need to be supported.
Solution:   Do not support :open in Vim9 script.
2021-03-13 21:07:21 +01:00
Bram Moolenaar
cb4e80fab9 patch 8.2.2597: Vim9: "import * as" does not work at script level
Problem:    Vim9: "import * as" does not work at script level.
Solution:   Implement using an imported namespace.
2021-03-13 20:57:19 +01:00
Bram Moolenaar
41cd80335c patch 8.2.2596: :doautocmd may confuse scripts listening to WinEnter
Problem:    :doautocmd may confuse scripts listening to WinEnter.
Solution:   Do the current buffer last. (closes #7958)
2021-03-13 15:47:56 +01:00
Bram Moolenaar
9e813b3dea patch 8.2.2595: setting 'winminheight' may cause 'lines' to change
Problem:    Setting 'winminheight' may cause 'lines' to change.
Solution:   Also take minimal height of other tabpages into account. (#7899)
2021-03-13 14:29:05 +01:00
Bram Moolenaar
0756f757ed patch 8.2.2594: alternate buffer added to session file even when it's hidden
Problem:    Alternate buffer added to session file even when it's hidden.
Solution:   Check the 'buflisted' option. (closes #7951)
2021-03-13 13:52:33 +01:00
Bram Moolenaar
0de8e2d6a3 patch 8.2.2593: list of distributed files is incomplete
Problem:    List of distributed files is incomplete.
Solution:   Add a file and rename another.
2021-03-13 13:30:03 +01:00
Bram Moolenaar
c8cdf0f80b Update runtime files. 2021-03-13 13:28:13 +01:00
Bram Moolenaar
6fd367a97c patch 8.2.2592: code coverage could be improved
Problem:    Code coverage could be improved.
Solution:   Add a few more tests. (Dominique Pellé, closes #7957)
2021-03-13 13:14:04 +01:00
Bram Moolenaar
c80f647512 patch 8.2.2591: Poke files are not recognized
Problem:    Poke files are not recognized.
Solution:   Add a filetype entry. (Matt Ihlenfield)
2021-03-12 22:16:41 +01:00
Bram Moolenaar
12bce95887 patch 8.2.2590: Vim9: default argument value may cause internal error
Problem:    Vim9: default argument value may cause internal error.
Solution:   Hide later function arguments when compiling the expression.
            (closes #7948)
2021-03-11 20:04:04 +01:00
Bram Moolenaar
776b954622 patch 8.2.2589: recover test hangs in the GUI
Problem:    Recover test hangs in the GUI.
Solution:   Add g:skipped_reason to skip a _nocatch_ test.
2021-03-10 22:27:48 +01:00
Bram Moolenaar
23b32a8d6b patch 8.2.2588: build failure with tiny features
Problem:    Build failure with tiny features.
Solution:   Add #ifdef.  Run recover test separately.
2021-03-10 21:55:46 +01:00
Bram Moolenaar
6635ae1437 patch 8.2.2587: recover test fails on FreeBSD
Problem:    Recover test fails on FreeBSD.
Solution:   Check for Linux.
2021-03-10 21:46:39 +01:00
Bram Moolenaar
f52f0606ed patch 8.2.2586: process id may be invalid
Problem:    Process id may be invalid.
Solution:   Use sysinfo.uptime to check for recent reboot. (suggested by Hugo
            van der Sanden, closes #7947)
2021-03-10 21:26:37 +01:00
Bram Moolenaar
c23555de34 patch 8.2.2585: Vim9: illegal memory access
Problem:    Vim9: illegal memory access.
Solution:   Check byte right after "null", not one more.
2021-03-10 19:04:07 +01:00
Bram Moolenaar
d345fb9216 patch 8.2.2584: Vim9: type error for assigning "any" to a list
Problem:    Vim9: type error for assigning the result of list concatenation to
            a list.
Solution:   Do not consider concatenation result in a constant. (closes #7942)
2021-03-10 18:43:09 +01:00
Bram Moolenaar
7ad67d1150 patch 8.2.2583: Vim9: cannot compare result of getenv() with null
Problem:    Vim9: cannot compare result of getenv() with null.
Solution:   Make the return type of getenv() "any". (closes #7943)
2021-03-10 16:08:26 +01:00
Bram Moolenaar
ffb7dcdb77 patch 8.2.2582: Vim9: screendump test fails on MS-Windows
Problem:    Vim9: screendump test fails on MS-Windows.
Solution:   Use :function instead of :def.
2021-03-10 14:00:18 +01:00
Bram Moolenaar
37294bd6a2 patch 8.2.2581: Vim9: sourcing Vim9 script triggers a redraw
Problem:    Vim9: sourcing Vim9 script triggers a redraw.
Solution:   Do not let setting/restoring 'cpoptions' cause a redraw.
            (closes #7920)
2021-03-10 13:40:08 +01:00
Bram Moolenaar
e3ffcd9902 patch 8.2.2580: Vim9: checking vararg type may be wrong
Problem:    Vim9: checking vararg type is wrong when function is auto-loaded.
Solution:   Use the member type. (closes #7933)
2021-03-08 21:47:13 +01:00
Bram Moolenaar
d00a7fb81a patch 8.2.2579: Vim9: crash in garbagecollect after for loop
Problem:    Vim9: crash in garbagecollect after for loop.
Solution:   Do not set a reference in script item when the name was cleared.
            (closes #7935)
2021-03-08 20:47:14 +01:00
Bram Moolenaar
86c3a2162c patch 8.2.2578: Lua cannot handle a passed in lambda
Problem:    Lua cannot handle a passed in lambda.
Solution:   Handle VAR_PARTIAL. (Prabir Shrestha, closes #7937, closes #7936)
2021-03-08 19:50:24 +01:00
Bram Moolenaar
9355ae4149 patch 8.2.2577: compiler warning for type conversion
Problem:    Compiler warning for type conversion.
Solution:   Add a typecast. (Mike Williams)
2021-03-08 19:04:05 +01:00
Bram Moolenaar
608d78fb45 patch 8.2.2576: Vim9: defining a :func function checks for white space
Problem:    Vim9: defining a :func function checks for white space after a
            comma in the arguments.
Solution:   Only check for white space in a :def function. (closes #7930)
2021-03-06 22:33:12 +01:00
Bram Moolenaar
6914e87d3c patch 8.2.2575: Vim9: a function name with "->" in the next line doesn't work
Problem:    Vim9: a function name with "->" in the next line doesn't work.
Solution:   Recognize a function name by itself. (closes #7770)
2021-03-06 21:01:09 +01:00
Bram Moolenaar
04947cc6ed patch 8.2.2574: Vim9: crash when calling partial with wrong function
Problem:    Vim9: crash when calling partial with wrong function.
Solution:   Check argument types of called function. (closes #7912)
2021-03-06 19:26:46 +01:00
Bram Moolenaar
a974953443 patch 8.2.2573: Vim9: using inalid pointer for error message
Problem:    Vim9: using inalid pointer for error message.
Solution:   Use the right pointer. (closes #7921)
2021-03-06 18:18:19 +01:00
Bram Moolenaar
18062fcad6 patch 8.2.2572: Vim9: crash when getting the types for a legacy function
Problem:    Vim9: crash when getting the types for a legacy function.
Solution:   Initialize the type list growarray. (closes #7929)
2021-03-05 21:35:47 +01:00
Bram Moolenaar
8c801b374b patch 8.2.2571: test may leave file behind
Problem:    Test may leave file behind.
Solution:   Delete the temporary file.  Don't profile in the running Vim
            instance.
2021-03-05 20:58:22 +01:00
Bram Moolenaar
f9a65505d1 patch 8.2.2570: tests fail when run as root
Problem:    Tests fail when run as root.
Solution:   Add a comment mentioning the expected failure. (issue #7919)
2021-03-05 20:47:44 +01:00
Bram Moolenaar
008bff967f patch 8.2.2569: 'fillchars' "stl" and "stlnc" items must be single byte
Problem:    'fillchars' "stl" and "stlnc" items must be single byte.
Solution:   Accept multi-byte characters. (Christian Wellenbrock, Yegappan
            Lakshmanan, closes #7927)
2021-03-04 21:55:58 +01:00
Bram Moolenaar
6057748a1a patch 8.2.2568: second time a preview popup is opened highlight is not set
Problem:    Second time a preview popup is opened highlight is not set.
            (Gabriel Dupras)
Solution:   Apply 'previewpopup' after getting the file. (closes #7928)
2021-03-04 21:35:07 +01:00
Bram Moolenaar
6c3843ca8a patch 8.2.2567: Vim9: no error if variable is defined for existing function
Problem:    Vim9: no error if variable is defined for existing function.
Solution:   Check if name isn't already in use. (closes #7897)
2021-03-04 12:38:21 +01:00
Bram Moolenaar
2e2d758902 patch 8.2.2566: Vim9: Function name is not recognized
Problem:    Vim9: Function name is not recognized.
Solution:   Change lookup_scriptvar() to also find function names.
            (closes #7770)
2021-03-03 21:22:41 +01:00
Bram Moolenaar
f76ec1eeb5 patch 8.2.2565: Vim9: "..=" not always recognized
Problem:    Vim9: "..=" not always recognized.
Solution:   Do not consider "..=" to be string concatenation. (closes #7905)
2021-03-03 17:58:16 +01:00
Bram Moolenaar
51b477f74f patch 8.2.2564: focus events end Insert mode if 'esckeys' is not set
Problem:    Focus events end Insert mode if 'esckeys' is not set.
Solution:   Do not enable focus events when 'esckeys' is off. (closes #7926)
2021-03-03 15:24:28 +01:00
Bram Moolenaar
4fa1175765 patch 8.2.2563: cannot use multibyte characters for folding in 'fillchars'
Problem:    Cannot use multibyte characters for folding in 'fillchars'.
Solution:   Port pull request 11568 to Vim. (Yegappan Lakshmanan,
            closes #7924)
2021-03-03 13:26:02 +01:00
Bram Moolenaar
37096afd3f patch 8.2.2562: GUI: star register changed when 'clipboard is "unnamedplus"
Problem:    GUI: star register changed when 'clipboard is "unnamedplus". (Ingo
            Karkat)
Solution:   Do not change the star register when 'clipboard' contains
            "unnamedplus" and not "unnamed". (closes #1516)
2021-03-02 19:04:11 +01:00
Bram Moolenaar
3dc3474f00 patch 8.2.2561: not all textprop code is covered by tests
Problem:    Not all textprop code is covered by tests.
Solution:   Add a few more test cases. (Dominique Pellé, closes #7908)
2021-03-02 13:36:47 +01:00
Bram Moolenaar
39d4cab494 patch 8.2.2560: setting 'winminheigt' does not take tabline into account
Problem:    Setting 'winminheigt' does not take tabline into account.
Solution:   Subtract the tabline from the available height. (closes #7899)
2021-03-01 21:02:46 +01:00
Bram Moolenaar
3650fd7098 patch 8.2.2559: MS-Windows: guifont test fails on Windows XP
Problem:    MS-Windows: guifont test fails on Windows XP.
Solution:   Check windowsversion().
2021-02-28 23:13:40 +01:00
Bram Moolenaar
057e84afe5 patch 8.2.2558: no error if a lambda argument shadows a variable
Problem:    No error if a lambda argument shadows a variable.
Solution:   Check that the argument name shadows a local, argument or script
            variable. (closes #7898)
2021-02-28 16:55:11 +01:00
Bram Moolenaar
087b5ff35d patch 8.2.2557: compiler warning for shadowd variable
Problem:    Compiler warning for shadowd variable.
Solution:   Declare "p" only once.
2021-02-27 23:39:22 +01:00
Bram Moolenaar
0a84284e60 patch 8.2.2556: Vim9: :import with "as" not fully supported
Problem:    Vim9: :import with "as" not fully supported.
Solution:   Implement "as" for more cases.
2021-02-27 22:41:19 +01:00
Bram Moolenaar
3f1e9f000f patch 8.2.2555: Vim9: missing test for 8.2.2553
Problem:    Vim9: missing test for 8.2.2553.
Solution:   Add a simple test.
2021-02-27 22:36:43 +01:00
Bram Moolenaar
0f2a5cc68b patch 8.2.2554: Vim9: exporting a final is not tested
Problem:    Vim9: exporting a final is not tested.
Solution:   Add a test.
2021-02-27 22:33:21 +01:00
Bram Moolenaar
9faec4e3d4 Update runtime files. 2021-02-27 16:38:07 +01:00
Bram Moolenaar
0abc6e471a patch 8.2.2553: Vim9: Cannot put "|" after "{"
Problem:    Vim9: Cannot put "|" after "{".
Solution:   Add the EX_TRLBAR flag. (issue #7904)
2021-02-26 22:21:23 +01:00
Bram Moolenaar
9f646c2e11 patch 8.2.2552: Vim9: no reason to consider "{{{{{{{{" a command
Problem:    Vim9: no reason to consider "{{{{{{{{" a command.
Solution:   Just use "{". (issue #7904)
2021-02-26 21:56:47 +01:00
Bram Moolenaar
d0bce504ec patch 8.2.2551: MS-Windows: colors test file is not installed
Problem:    MS-Windows: colors test file is not installed.
Solution:   Also copy runtime/colors/tools. (Ken Takata, closes #7902)
2021-02-26 20:25:35 +01:00
Bram Moolenaar
0e62a6742b patch 8.2.2550: signal stack size is wrong with latest glibc 2.34
Problem:    Signal stack size is wrong with latest glibc 2.34.
Solution:   Use sysconf(_SC_SIGSTKSZ) if available. (Zdenek Dohnal, closes
            #7895)
2021-02-25 17:17:56 +01:00
Bram Moolenaar
1bd3cb2019 patch 8.2.2549: crash after using "g:" in a for loop
Problem:    Crash after using "g:" in a for loop.
Solution:   Increment the reference count. (closes #7892)
2021-02-24 12:27:31 +01:00
Bram Moolenaar
7d41410a45 patch 8.2.2548: May get stuck in the cmdline window using :normal
Problem:    May get stuck in the cmdline window using :normal.
Solution:   Have nv_esc() return K_IGNORE.
2021-02-23 19:39:20 +01:00
Bram Moolenaar
2c6553498e patch 8.2.2547: "%" command not accurate for big files
Problem:    "%" command not accurate for big files.
Solution:   Make it more accurate for files up to 21M lines. (Dominique Pellé,
            closes #7889)
2021-02-23 19:32:03 +01:00
Bram Moolenaar
21a83bd53d patch 8.2.2546: typo in mouse key name
Problem:    Typo in mouse key name.
Solution:   Fix the typo. (issue #4725)
2021-02-23 19:19:58 +01:00
Bram Moolenaar
eba13e4ea2 patch 8.2.2545: errors and crash when terminal window is zero height
Problem:    Errors and crash when terminal window is zero height. (Leonid V.
            Fedorenchik)
Solution:   Do not resize when width or height is zero. (closes #7890)
2021-02-23 17:47:23 +01:00
Bram Moolenaar
bc327ccc3d patch 8.2.2544: Vim9: error for argument when checking for lambda
Problem:    Vim9: error for argument when checking for lambda.
Solution:   Respect the skip flag. (closes #7887)
2021-02-23 12:05:46 +01:00
Bram Moolenaar
9cb577a682 patch 8.2.2543: Vim9: a return inside try/catch does not restore properly
Problem:    Vim9: a return inside try/catch does not restore exception state
            properly.
Solution:   When there is no ":finally" jump to ":endtry". (closes #7882)
2021-02-22 22:45:10 +01:00
Bram Moolenaar
41f0895c6e patch 8.2.2542: highlight of char beyond line end is not correct
Problem:    Highlight of char beyond line end is not correct. (Chuan Wei Foo)
Solution:   Fix counting NUL as one cell.  Draw one more character if the EOL
            is part of the match. (closes #7883)
2021-02-22 22:13:49 +01:00
Bram Moolenaar
6bfc475f71 patch 8.2.2541: popup_create() does not allow boolean for "cursorline"
Problem:    Popup_create() does not allow boolean for "cursorline".
Solution:   Use dict_get_bool(). (issue #7869)
2021-02-21 23:12:18 +01:00
Bram Moolenaar
b4893b8450 patch 8.2.2540: Vim9: no error for using script var name for argument
Problem:    Vim9: no error for using script var name for argument.
Solution:   Check for this error. (closes #7868)
2021-02-21 22:20:24 +01:00
Bram Moolenaar
7e82c5f338 patch 8.2.2539: Vim9: return from finally block causes a hang
Problem:    Vim9: return from finally block causes a hang.
Solution:   Store both the finally and endtry indexes. (closes #7885)
2021-02-21 21:32:45 +01:00
Bram Moolenaar
21578271bb patch 8.2.2538: crash when using Python list iterator
Problem:    Crash when using Python list iterator.
Solution:   Increment the list reference count. (closes #7886)
2021-02-21 19:12:47 +01:00
Bram Moolenaar
027c4ab4d2 patch 8.2.2537: Vim9: crash when map() fails
Problem:    Vim9: crash when map() fails.
Solution:   Clear typval before using it. (closes #7884)
2021-02-21 16:20:18 +01:00
Bram Moolenaar
dc167465f8 patch 8.2.2536: Coverity complains about unchecked return value
Problem:    Coverity complains about unchecked return value.
Solution:   Add (void).
2021-02-20 20:26:16 +01:00
Bram Moolenaar
723ef5db98 patch 8.2.2535: MS-Windows: cannot run all vim9 tests
Problem:    MS-Windows: cannot run all vim9 tests.
Solution:   Make test_vim9 target work.
2021-02-20 20:13:42 +01:00
Bram Moolenaar
a1070eae77 patch 8.2.2534: missing test coverage
Problem:    Missing test coverage.
Solution:   Improve test coverage for completion with different encodings,
            mapset(), and term function failures. (Dominique Pellé,
            closes #7877)
2021-02-20 19:21:36 +01:00
Bram Moolenaar
5b5ae29bd3 patch 8.2.2533: Vim9: cannot use a range with :unlet
Problem:    Vim9: cannot use a range with :unlet.
Solution:   Implement ISN_UNLETRANGE.
2021-02-20 17:04:02 +01:00
Bram Moolenaar
ada1d870b4 patch 8.2.2532: Vim9: confusing error if :k is used with a range
Problem:    Vim9: confusing error if :k is used with a range.
Solution:   Give an error about the range. (issue #7874)
2021-02-20 08:16:51 +01:00
Bram Moolenaar
10b9421f3b patch 8.2.2531: Vim9: the :k command is obscure
Problem:    Vim9: the :k command is obscure.
Solution:   Disallow using :k, can use :mark instead. (closes #7874)
2021-02-19 21:42:57 +01:00
Bram Moolenaar
12d265315f patch 8.2.2530: Vim9: not enough testing for profiling
Problem:    Vim9: not enough testing for profiling.
Solution:   Add a test with nested functions and a lambda.  Fix profiling
            for calling a compiled function.
2021-02-19 19:13:21 +01:00
Bram Moolenaar
d3f8a9ee65 patch 8.2.2529: Vim9: Not possible to use legacy and Vim9 script in one file
Problem:    Vim9: Not possible to use legacy and Vim9 script in one file.
Solution:   Vim9: allow for "if false" before :vim9script. (closes #7851)
2021-02-17 21:57:03 +01:00
Bram Moolenaar
c7dac8534e patch 8.2.2528: Vim9: crash when compiling lambda fails
Problem:    Vim9: crash when compiling lambda fails.
Solution:   Bail out after compilation fails. (closes #7862)
2021-02-17 18:49:11 +01:00
Bram Moolenaar
064095012c patch 8.2.2527: Vim9: lambda return type is not determined at script level
Problem:    Vim9: lambda return type is not determined at script level.
Solution:   Compile the lambda to get the return type. (closes #7843)
2021-02-17 17:00:27 +01:00
Bram Moolenaar
527ed38cfa patch 8.2.2526: build failure
Problem:    Build failure.
Solution:   Change lookup_scriptvar() arguments.
2021-02-17 15:05:45 +01:00
Bram Moolenaar
e0890d678d patch 8.2.2525: Vim9: only local variables checked for a name
Problem:    Vim9: only local variables checked for a name.
Solution:   Also check arguments and script variables. (closes #7838)
2021-02-17 14:52:14 +01:00
Bram Moolenaar
3aca5a6fbc patch 8.2.2524: cannot change the characters displayed in the foldcolumn
Problem:    Cannot change the characters displayed in the foldcolumn.
Solution:   Add fields to 'fillchars'. (Yegappan Lakshmanan, Matthieu Coudron,
            closes #7860)
2021-02-17 13:14:07 +01:00
Bram Moolenaar
c0fcb6e0b1 patch 8.2.2523: Svelte filetype not recognized
Problem:    Svelte filetype not recognized.
Solution:   Add a detection rule. (Brian Ryall, closes #7858)
2021-02-17 12:29:17 +01:00
Bram Moolenaar
9bbd883b35 patch 8.2.2522: Beancount filetype not recognized
Problem:    Beancount filetype not recognized.
Solution:   Add a detection rule. (Brian Ryall, closes #7859)
2021-02-17 12:25:49 +01:00
Bram Moolenaar
333bd56422 patch 8.2.2521: some compilers can't handle pointer initialization
Problem:    Some compilers can't handle pointer initialization. (John
            Marriott)
Solution:   Use a local struct and assign it afterwards.
2021-02-16 22:22:13 +01:00
Bram Moolenaar
04ea7e9049 patch 8.2.2520: missing tests for 'listchars'
Problem:    Missing tests for 'listchars'.
Solution:   Add a few more checks. (Yegappan Lakshmanan, closes #7854)
2021-02-16 21:14:33 +01:00
Bram Moolenaar
b8554304c3 patch 8.2.2519: Vim9: no reason to keep strange Vi behavior
Problem:    Vim9: no reason to keep strange Vi behavior.
Solution:   ":3" and ":3|" both go to line 3. ":|" does not print the line.
            (closes #7840)
2021-02-15 21:30:30 +01:00
Bram Moolenaar
eed9d46293 patch 8.2.2518: 'listchars' should be window-local
Problem:    'listchars' should be window-local.
Solution:   Make 'listchars' global-local. (Yegappan Lakshmanan, Marco Hinz,
            closes #5206, closes #7850)
2021-02-15 20:38:25 +01:00
Bram Moolenaar
7c5b3c0369 patch 8.2.2517: Vim9: fix for s390 not tested on other systems
Problem:    Vim9: fix for s390 not tested on other systems.
Solution:   Add a test.
2021-02-14 22:40:57 +01:00
Bram Moolenaar
4afa77419f patch 8.2.2516: test failure on s390
Problem:    Test failure on s390. (analyses by James McCoy)
Solution:   Only set the try_finally label when not skipping.
2021-02-14 16:34:59 +01:00
Bram Moolenaar
6281815ecc patch 8.2.2515: memory access error when truncating an empty message
Problem:    Memory access error when truncating an empty message.
Solution:   Check for an empty string. (Dominique Pellé, closes #7841)
2021-02-14 15:37:30 +01:00
Bram Moolenaar
2379f87eb4 patch 8.2.2514: Vim9: build error in tiny version
Problem:    Vim9: build error in tiny version.
Solution:   Add #ifdef.
2021-02-14 14:07:34 +01:00
Bram Moolenaar
9979fcd72e patch 8.2.2513: Vim9: missing part of :vim9cmd change
Problem:    Vim9: missing part of :vim9cmd change.
Solution:   Use command modifier in in_vim9script().
2021-02-14 13:30:01 +01:00
Bram Moolenaar
03dfde2b5f patch 8.2.2512: Vim9: compiling error test sometimes fails
Problem:    Vim9: compiling error test sometimes fails.
Solution:   use WaitForAssert() instead of sleeping for a bit. (Dominique
            Pellé, closes #7837)
2021-02-14 13:17:22 +01:00
Bram Moolenaar
39f3b14110 patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
Problem:    Vim9: cannot use Vim9 script syntax in some places.
Solution:   Add the :vim9cmd command modifier. Incompatible: Makes ":vim9"
            mean ":vim9cmd" instead of ":vim9script".
2021-02-14 12:57:36 +01:00
Bram Moolenaar
10ccfb2a17 patch 8.2.2510: internal error when popup with mask is zero height or width
Problem:    Internal error when popup with mask is zero height or width.
Solution:   Bail out if width or height is zero. (closes #7831)
2021-02-13 21:31:18 +01:00
Bram Moolenaar
8d4be89011 patch 8.2.2509: tests fail on s390 build
Problem:    Tests fail on s390 build.
Solution:   Initialize trycmd_T.
2021-02-13 18:33:02 +01:00
Bram Moolenaar
a98f8a2305 patch 8.2.2508: cannot change the character displayed in non existing lines
Problem:    Cannot change the character displayed in non existing lines.
Solution:   Add the "eob" item to 'fillchars'. (closes #7832, closes #3820)
2021-02-13 18:24:23 +01:00
Bram Moolenaar
942db23c9c Update runtime files 2021-02-13 18:14:48 +01:00
Bram Moolenaar
0fa09676c2 patch 8.2.2507: github build may fail if Ubuntu 20.04 is used
Problem:    Github build may fail if Ubuntu 20.04 is used.  Installing rust is
            not needed.
Solution:   Specify ubuntu-18.04 instead of latest. Update "pip" instead of
            installing rust. (Ozaki Kiichi, closes #7820)
2021-02-13 17:08:33 +01:00
Bram Moolenaar
c150c09ec4 patch 8.2.2506: Vim9: :continue does not work correctly in a :try block
Problem:    Vim9: :continue does not work correctly in a :try block
Solution:   Add the TRYCLEANUP instruction. (closes #7827)
2021-02-13 15:02:46 +01:00
Bram Moolenaar
31842cd077 patch 8.2.2505: Vim9: crash after defining function with invalid return type
Problem:    Vim9: crash after defining function with invalid return type.
Solution:   Clear function growarrays.  Fix memory leak.
2021-02-12 22:10:21 +01:00
Bram Moolenaar
44ec21c467 patch 8.2.2504: Vim9: crash when using an argument from a closure
Problem:    Vim9: crash when using an argument from a closure.
Solution:   Check if gen_load_outer is NULL. (closes #7821)
2021-02-12 21:50:57 +01:00
Bram Moolenaar
d9d7789b6f patch 8.2.2503: Vim9: a caught error may leave something on the stack
Problem:    Vim9: a caught error may leave something on the stack.
Solution:   Drop items from the stack if needed. (closes #7826)
2021-02-12 21:32:47 +01:00
Bram Moolenaar
ca753ec862 patch 8.2.2502: a few github actions are failing
Problem:    A few github actions are failing.
Solution:   Install setuptools-rust. (closes #7823)
2021-02-12 19:48:51 +01:00
Bram Moolenaar
f785aa1354 patch 8.2.2501: not always clear where an error is reported
Problem:    Not always clear where an error is reported.
Solution:   Add the where_T structure and pass it around. (closes #7796)
2021-02-11 21:19:34 +01:00
Bram Moolenaar
0bcadf14aa patch 8.2.2500: build fails without the GUI feature
Problem:    Build fails without the GUI feature.
Solution:   Add #ifdef.
2021-02-11 19:18:58 +01:00
Bram Moolenaar
3b678047bc patch 8.2.2499: "vim -g --version" does not redirect output
Problem:    "vim -g --version" does not redirect output.
Solution:   Reset gui.starting when showing version info. (closes #7815)
2021-02-11 19:08:05 +01:00
Bram Moolenaar
5affc03468 patch 8.2.2498: no test for what 8.2.2494 fixes
Problem:    No test for what 8.2.2494 fixes.
Solution:   Add a simple change to test the fix. (closes #7818)
2021-02-11 18:36:30 +01:00
Bram Moolenaar
418a29f0ff patch 8.2.2497: no error when using more than one character for a register
Problem:    No error when using more than one character for a register name.
Solution:   In Vim9 script check for a single character string. (closes #7814)
            Fix that VAR_BOOL and VAR_SPECIAL are not considered equal.
2021-02-10 22:23:41 +01:00
Bram Moolenaar
5202929dab patch 8.2.2496: insufficien testing for text jumping fix
Problem:    Insufficien testing for text jumping fix.
Solution:   Add another test case.
2021-02-10 21:20:30 +01:00
Bram Moolenaar
8f33ebfade patch 8.2.2495: text jumps up and down when moving the cursor
Problem:    Text jumps up and down when moving the cursor in a small window
            with wrapping text and 'scrolloff' set.
Solution:   Adjust the computation of w_skipcol. (partly by Ghjuvan Lacambre,
            closes #7813)
2021-02-10 21:10:12 +01:00
Bram Moolenaar
3ff656f6b4 patch 8.2.2494: ":rviminfo!" clears most of oldfiles
Problem:    ":rviminfo!" clears most of oldfiles.
Solution:   Add VIF_ONLY_CURBUF to read_viminfo(). (closes #1781)
2021-02-10 19:22:15 +01:00
Bram Moolenaar
f3fa18468c patch 8.2.2493: text property for text left of window shows up
Problem:    Text property for text left of window shows up.
Solution:   Check if the text property ends before the current column.
            (closes #7806)
2021-02-10 17:20:28 +01:00
Bram Moolenaar
b17ec4d427 patch 8.2.2492: command line buffer name cannot be translated
Problem:    Command line buffer name cannot be translated.
Solution:   Add _(). (Gabriel Dupras, closes #7812)
2021-02-10 16:45:24 +01:00
Bram Moolenaar
82db31c104 patch 8.2.2491: popup window for text property may show in first screen line
Problem:    Popup window for text property may show in first screen line.
Solution:   If the text position is invisible do not show the popup window.
            (closes #7807)
2021-02-10 14:56:11 +01:00
Bram Moolenaar
4223d43c0f patch 8.2.2490: 'wrap' option is always reset when starting diff mode
Problem:    'wrap' option is always reset when starting diff mode.
Solution:   Add the "followwrap" item in 'diffopt'. (Rick Howe, closes #7797)
2021-02-10 13:18:17 +01:00
Bram Moolenaar
963ffa0a5a patch 8.2.2489: current buffer is wrong after deletebufline() fails
Problem:    current buffer is wrong after deletebufline() fails to delete a
            line in another buffer.
Solution:   Restore the current buffer.
2021-02-09 20:02:55 +01:00
Bram Moolenaar
a853089479 patch 8.2.2488: json_encode() gives generic argument error
Problem:    json_encode() gives generic argument error.
Solution:   Mention the type that can't be encoded. (issue #7802)
2021-02-08 21:53:09 +01:00
Bram Moolenaar
4549dad874 patch 8.2.2487: terminal shows garbage after double-wide character
Problem:    Terminal shows garbage after double-wide character with a
            combining character. (Kyoichiro Yamada)
Solution:   Libvterm: do not add the width of the combining character to the
            glyph width. (closes #7801)
2021-02-08 21:29:48 +01:00
Bram Moolenaar
ba98fb54ae patch 8.2.2486: Vim9: some errors for white space do not show context
Problem:    Vim9: some errors for white space do not show context.
Solution:   Include the text at the error.
2021-02-07 18:06:29 +01:00
Bram Moolenaar
0123cc1e14 patch 8.2.2485: when sourcing a script again the script version isn't reset
Problem:    When sourcing a script again the script version isn't reset.
Solution:   Set sn_version to one when sourcing a script again. Clear
            sn_save_cpo properly. (closes #7608)
2021-02-07 17:17:58 +01:00
Bram Moolenaar
dee37dc733 patch 8.2.2484: Vim9: Cannot use a comment starting with #{
Problem:    Vim9: Cannot use a comment starting with #{ after an expression.
Solution:   Remove the check for "{" since #{ dictionaries are not supported.
2021-02-07 16:40:05 +01:00
Bram Moolenaar
6628b7ebff patch 8.2.2483: Vim9: type error for misformed expression
Problem:    Vim9: type error for misformed expression.
Solution:   Check for end of command before checking type. (closes #7795)
2021-02-07 16:33:35 +01:00
Bram Moolenaar
a5a1ec1826 patch 8.2.2482: build error
Problem:    Build error.
Solution:   Add new error message.
2021-02-07 16:05:47 +01:00
Bram Moolenaar
4f53b79bf5 patch 8.2.2481: Vim9: confusing error when variable arguments have default
Problem:    Vim9: confusing error when variable arguments have a default
            value.
Solution:   Give a specific error message. (closes #7793)
2021-02-07 15:59:49 +01:00
Bram Moolenaar
c3fc75db02 patch 8.2.2480: Vim9: some errors for white space do not show context
Problem:    Vim9: some errors for white space do not show context.
Solution:   Include the text at the error.
2021-02-07 15:28:09 +01:00
Bram Moolenaar
00385114db patch 8.2.2479: set/getbufline test fails without the job feature
Problem:    set/getbufline test fails without the job feature.
Solution:   Check whether the job feature is supported. (Dominique Pellé,
            closes #7790)
2021-02-07 14:31:06 +01:00
Bram Moolenaar
0dc5f603e9 patch 8.2.2478: MS-Windows: backup files for plugins are loaded
Problem:    MS-Windows: backup files for plugins are loaded.
Solution:   Do not use the alternate file name for files ending in "~".
2021-02-07 14:01:35 +01:00
Bram Moolenaar
dd07c02232 patch 8.2.2477: autocommand tests hang on MS-Windows
Problem:    Autocommand tests hang on MS-Windows.
Solution:   Skip a couple of tests.  Fix file name.
2021-02-07 13:32:46 +01:00
Bram Moolenaar
983d83ff1c patch 8.2.2476: using freed memory when splitting window while closing buffer
Problem:    Using freed memory when using an autocommand to split a window
            while a buffer is being closed.
Solution:   Disallow splitting when the buffer has b_locked_split set.
2021-02-07 12:12:43 +01:00
Bram Moolenaar
dfc3db76b9 patch 8.2.2475: autocommand tests hangs on MS-Windows
Problem:    Autocommand tests hangs on MS-Windows.
Solution:   Skip one test.
2021-02-06 19:28:48 +01:00
Bram Moolenaar
2c7080bf1c patch 8.2.2474: using freed memory when window is closed by autocommand
Problem:    Using freed memory when window is closed by autocommand.
            (houyunsong)
Solution:   Check the window pointer is still valid.
2021-02-06 19:19:42 +01:00
Bram Moolenaar
8c6951fa28 patch 8.2.2473: crash when leaving command line window triggers autocommand
Problem:    Crash when leaving command line window triggers autocommand.
            (houyunsong)
Solution:   Make sure not to close the current window or buffer.
2021-02-06 18:08:45 +01:00
Bram Moolenaar
aad5f9d79a patch 8.2.2472: crash when using command line window in an autocommand
Problem:    Crash when using command line window in an autocommand.
            (houyunsong)
Solution:   Save and restore au_new_curbuf.
2021-02-06 17:30:31 +01:00
Bram Moolenaar
efa1923565 patch 8.2.2471: popup_setoptions() does not set textprop in other tab
Problem:    Popup_setoptions() does not set textprop in other tab.
Solution:   use win_valid_any_tab(). (closes #7788)
2021-02-06 14:59:27 +01:00
Bram Moolenaar
6502643677 patch 8.2.2470: popup_getoptions() does not get textprop from other tab
Problem:    Popup_getoptions() does not get textprop from other tab.
Solution:   use win_valid_any_tab(). (closes #7786)
2021-02-06 14:22:32 +01:00
Bram Moolenaar
f5a5116a96 patch 8.2.2469: confusing error if :winsize has a wrong argument
Problem:    Confusing error if :winsize has a wrong argument.
Solution:   Quote the argument in the error. (closes #2523)
2021-02-06 12:58:18 +01:00
Bram Moolenaar
038e09ee76 patch 8.2.2468: not easy to get the full command name from a shortened one
Problem:    Not easy to get the full command name from a shortened one.
Solution:   Add fullcommand(). (Martin Tournoij, closes #7777)
2021-02-06 12:38:51 +01:00
Bram Moolenaar
139348f3e8 patch 8.2.2467: script generated by :mkview changes alternate file
Problem:    Script generated by :mkview changes alternate file.
Solution:   Only write :balt in the session file. (Harish Rajagopal,
            closes #7779)
2021-02-05 21:55:53 +01:00
Bram Moolenaar
ab65fc77c5 patch 8.2.2466: max() and min() can give many error messages
Problem:    Max() and min() can give many error messages.
Solution:   Bail out at the first error. (closes #1039, closes #7778)
2021-02-04 22:07:16 +01:00
Bram Moolenaar
92bb83e41c patch 8.2.2465: using freed memory in :psearch
Problem:    Using freed memory in :psearch. (houyunsong)
Solution:   Check the current window is still valid.  Fix flaky test.
2021-02-03 23:04:46 +01:00
Bram Moolenaar
8ab375706e patch 8.2.2464: using freed memory if window closed in autocommand
Problem:    Using freed memory if window closed in autocommand. (houyunsong)
Solution:   Check the window still exists.
2021-02-03 21:56:59 +01:00
Bram Moolenaar
6bcb877ec1 patch 8.2.2463: using :arglocal in an autocommand may use freed memory
Problem:    Using :arglocal in an autocommand may use freed memory.
            (houyunsong)
Solution:   Check if the arglist is locked.
2021-02-03 21:23:29 +01:00
Bram Moolenaar
2c363a2e95 patch 8.2.2462: Coverity warns for not checking for fseek() error
Problem:    Coverity warns for not checking for fseek() error.
Solution:   Give an error message if fseek() fails.
2021-02-03 20:14:23 +01:00
Bram Moolenaar
fef8064b54 patch 8.2.2461: Coverity warns for unchecked return value
Problem:    Coverity warns for unchecked return value.
Solution:   Add "(void)" to avoid the warning.
2021-02-03 20:01:19 +01:00
Bram Moolenaar
fc1dafa91c patch 8.2.2460: Coverity warns for unused value
Problem:    Coverity warns for unused value.
Solution:   Do not reset the return value to OK.
2021-02-03 19:57:00 +01:00
Bram Moolenaar
8bead9a058 patch 8.2.2459: Coverity reports dead code
Problem:    Coverity reports dead code.
Solution:   Remove the dead code.
2021-02-03 19:51:18 +01:00
Bram Moolenaar
0dcd39bad5 patch 8.2.2458: Coverity warns for :retab using freed memory
Problem:    Coverity warns for :retab using freed memory.
Solution:   Use the updated line pointer when moving text properties.
2021-02-03 19:44:25 +01:00
Bram Moolenaar
4dba04256b patch 8.2.2457: Coverity warns for memory leak
Problem:    Coverity warns for memory leak.
Solution:   Free memory when out of memory.
2021-02-03 19:35:13 +01:00
Bram Moolenaar
7b6903f02c patch 8.2.2456: Coverity warning for strcpy() into fixed size array
Problem:    Coverity warning for strcpy() into fixed size array.
Solution:   Add a type cast to hopefully silence the bogus warning.
2021-02-03 19:31:29 +01:00
Bram Moolenaar
2e5910bfbb patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistent
Problem:    Vim9: key type that can be used for literal dict and indexing is
            inconsistent.
Solution:   Allow using number and bool as key for a literal dict. (#7771)
2021-02-03 17:41:24 +01:00
Bram Moolenaar
91478ae49a patch 8.2.2454: leading space can not be made visible
Problem:    Leading space can not be made visible.
Solution:   Add "lead:" to 'listchars'. (closes #7772)
2021-02-03 15:58:13 +01:00
Bram Moolenaar
148be9bc1c patch 8.2.2453: Vim9: a variable name with "->" in the next line doesn't work
Problem:    Vim9: a variable name with "->" in the next line doesn't work.
Solution:   Recognize a variable name by itself. (closes #7770)
2021-02-02 21:33:52 +01:00
Bram Moolenaar
d5e8c92816 patch 8.2.2452: no completion for the 'filetype' option
Problem:    No completion for the 'filetype' option.
Solution:   Add filetype completion. (Martin Tournoij, closes #7747)
2021-02-02 21:10:01 +01:00
Bram Moolenaar
e7bebc495d patch 8.2.2451: MS-Windows: Extended Attributes not preserved
Problem:    MS-Windows: Extended Attributes not preserved.
Solution:   Preserve Extended Attributes when writing a file. (Ken Takata,
            closes #7765)
2021-02-01 20:50:37 +01:00
Bram Moolenaar
7781ebe50f patch 8.2.2450: MS-Windows: ADS was not preserved if 'backupcopy' is "yes"
Problem:    MS-Windows: ADS was not preserved if 'backupcopy' is "yes".
Solution:   Copy ADS before truncating the file. (Ken Takata, closes #7762)
2021-02-01 20:35:01 +01:00
Bram Moolenaar
3b69006973 patch 8.2.2449: Vim9: flatten() always changes the list type
Problem:    Vim9: flatten() always changes the list type.
Solution:   Disallow using flatten() and add flattennew().
2021-02-01 20:14:51 +01:00
Bram Moolenaar
9d20daffc2 patch 8.2.2448: compilation error with Ruby 3.0
Problem:    Compilation error with Ruby 3.0.
Solution:   Adjust #ifdefs and declaration. (Ken Takata, closes #7761)
2021-02-01 19:31:47 +01:00
Bram Moolenaar
f9547eb6ef patch 8.2.2447: 'foldlevel' not applied to folds restored from session
Problem:    'foldlevel' not applied to folds restored from session.
Solution:   Set 'foldlevel' after creaiting the folds. (closes #7767)
2021-02-01 19:24:55 +01:00
Bram Moolenaar
5daa911626 patch 8.2.2446: setting 'term' empty has different error if compiled with GUI
Problem:    Setting 'term' empty has different error if compiled with GUI.
Solution:   Insert "else". (closes #7766)
2021-02-01 18:39:47 +01:00
Bram Moolenaar
0346b799fc patch 8.2.2445: Vim9: no proper error for lambda missing return type
Problem:    Vim9: no proper error for lambda missing return type.
Solution:   Check for this error. (closes #7758)
2021-01-31 22:18:29 +01:00
Bram Moolenaar
e507ff15d5 patch 8.2.2444: Vim9: compile error with combination of operator and list
Problem:    Vim9: compile error with combination of operator and list.
Solution:   Generate constants before parsing a list or dict. (closes #7757)
2021-01-31 21:47:42 +01:00
Bram Moolenaar
80ad3e2569 patch 8.2.2443: Vim9: no compile time error for wrong str2float argument
Problem:    Vim9: no compile time error for wrong str2float argument.
Solution:   Check argument type. (closes #7759)
2021-01-31 20:48:58 +01:00
Bram Moolenaar
f272ae12ac patch 8.2.2442: automatic GUI selection does not check for GTK 3
Problem:    Automatic GUI selection does not check for GTK 3.
Solution:   Make SKIP_GTK3 empty for automatic GUI support.  Set SKIP_GTK3 to
            YES when checking for GTK2.
2021-01-31 19:52:50 +01:00
Bram Moolenaar
c03f5c677a patch 8.2.2441: Vim9: extend() does not give an error for a type mismatch
Problem:    Vim9: extend() does not give an error for a type mismatch.
Solution:   Check the type of the second argument. (closes #7760)
2021-01-31 17:48:30 +01:00
Bram Moolenaar
853886722c patch 8.2.2440: documentation based on patches is outdated
Problem:    Documentation based on patches is outdated.
Solution:   Add changes to documentation in a patch.
2021-01-31 17:03:52 +01:00
Bram Moolenaar
3d2bb8b6f1 patch 8.2.2439: not easy to figure out what packages to get
Problem:    Not easy to figure out what packages to get when installing Vim on
            a new Ubuntu system.
Solution:   Mention explicit commands that are easy to follow.
2021-01-31 16:45:53 +01:00
Bram Moolenaar
6a12e3342d patch 8.2.2438: out of bounds compiler warning
Problem:    Out of bounds compiler warning.
Solution:   Increase the size of uf_name.
2021-01-31 14:46:00 +01:00
Bram Moolenaar
4d8479b335 patch 8.2.2437: deprecation warnings with default configuration
Problem:    Deprecation warnings with default configuration.
Solution:   Add -Wno-deprecated-declarations.
2021-01-31 14:36:06 +01:00
Bram Moolenaar
206c2a6e19 patch 8.2.2436: Vim9 script test is a bit flaky
Problem:    Vim9 script test is a bit flaky.
Solution:   Wait longer for exit callback.
2021-01-31 14:04:44 +01:00
Bram Moolenaar
3445320839 patch 8.2.2435: setline() gives an error for some types
Problem:    setline() gives an error for some types.
Solution:   Allow any type, convert each item to a string.
2021-01-31 13:08:38 +01:00
Bram Moolenaar
f2b26bcf8f patch 8.2.2434: Vim9: no error when compiling str2nr() with a number
Problem:    Vim9: no error when compiling str2nr() with a number.
Solution:   Add argument type checks. (closes #7759)
2021-01-30 23:05:11 +01:00
Bram Moolenaar
b63f3ca66d patch 8.2.2433: opening cmdline window gives error in BufLeave autocommand
Problem:    Opening cmdline window gives error in BufLeave autocommand.
Solution:   Reset cmdwin_type when triggering the autocommand.
2021-01-30 21:40:03 +01:00
Bram Moolenaar
76ab5446d5 patch 8.2.2432: libvterm tests are executed even when libtool doesn't work
Problem:    Libvterm tests are executed even when libtool doesn't work.
Solution:   Only run libvterm tests if /usr/bin/gcc exists.
2021-01-30 20:35:28 +01:00
Bram Moolenaar
ebd211c8a3 patch 8.2.2431: warning for -fno-strength-reduce with Clang 11
Problem:    Warning for -fno-strength-reduce with Clang 11.
Solution:   Adjust check for clang version number.
2021-01-30 19:33:36 +01:00
Bram Moolenaar
f8c6a17180 patch 8.2.2430: :vimgrep expands wildcards twice
Problem:    :vimgrep expands wildcards twice.
Solution:   Do not expand wildcards a second time.
2021-01-30 18:09:06 +01:00
Bram Moolenaar
59ff64079b patch 8.2.2429: :goto does not work correctly with text properties
Problem:    :goto does not work correctly with text properties. (Sam McCall)
Solution:   Add a test. (Andrew Radev)  Also use the text property size when
            computing the remaining offset. (closes #5930)
2021-01-30 17:16:28 +01:00
Bram Moolenaar
92e5df8047 patch 8.2.2428: FocusGained does not work when 'ttymouse' is empty
Problem:    FocusGained does not work when 'ttymouse' is empty.
Solution:   Don't use the short mouse code if there is a longer matching code.
            (closes #7755)  Add a test.
2021-01-30 15:39:47 +01:00
Bram Moolenaar
3eb6bd9c2b patch 8.2.2427: can still switch windows for 'completefunc'
Problem:    Can still switch windows for 'completefunc'.
Solution:   Also disallow switching windows for other completions.
2021-01-29 21:47:24 +01:00
Bram Moolenaar
28976e2acc patch 8.2.2426: allowing 'completefunc' to switch windows causes trouble
Problem:    Allowing 'completefunc' to switch windows causes trouble.
Solution:   use "textwinlock" instead of "textlock".
2021-01-29 21:07:07 +01:00
Bram Moolenaar
df2c2988bb patch 8.2.2425: cursor on invalid line with range and :substitute
Problem:    Cursor on invalid line with range and :substitute.
Solution:   Do not move the cursor when skipping commands. (closes #3434)
2021-01-28 20:18:08 +01:00
Bram Moolenaar
97202d9516 patch 8.2.2424: some tests are known to cause an error with ASAN
Problem:    Some tests are known to cause an error with ASAN.
Solution:   Add CheckNotAsan.
2021-01-28 18:34:35 +01:00
Bram Moolenaar
61015162ba patch 8.2.2423: missing error message
Problem:    Missing error message.
Solution:   Add the error message.
2021-01-28 17:56:09 +01:00
Bram Moolenaar
1d859e2421 patch 8.2.2422: crash when deleting with line number out of range
Problem:    Crash when deleting with line number out of range. (Houyunsong)
Solution:   Avoid using a negative line number.
2021-01-28 17:24:58 +01:00
Bram Moolenaar
5ed58c7b70 patch 8.2.2421: double free when using autocommand with "argdel"
Problem:    Double free when using autocommand with "argdel". (Houyunsong)
Solution:   Add the arglist_locked flag.
2021-01-28 14:24:55 +01:00
Bram Moolenaar
9a046fd08b patch 8.2.2420: too many problems with using all autocommand events
Problem:    Too many problems with using all autocommand events.
Solution:   Disallow defining an autocommand for all events.
2021-01-28 13:47:59 +01:00
Bram Moolenaar
d697ddea14 patch 8.2.2419: autocmd test was failing on MS-Windows with GUI
Problem:    Autocmd test was failing on MS-Windows with GUI.
Solution:   Remove stray feedkeys().
2021-01-28 12:08:35 +01:00
Bram Moolenaar
2e6cdb91e8 patch 8.2.2418: color not changed if ModeMsg highlight is set in InsertEnter
Problem:    Color not changed if ModeMsg highlight is set in InsertEnter
            autocmd event. (Paul Swanson)
Solution:   Call highlight_changed() after triggering InsertEnter.
            (closes #7751)
2021-01-28 11:07:44 +01:00
Bram Moolenaar
3e492c2d5f patch 8.2.2417: condition stack values may be used when not set
Problem:    Condition stack values may be used when not set.
Solution:   Clear cs_script_var_len and cs_block_id just in case they get used
            later. (issue #7733)
2021-01-27 21:37:13 +01:00
Bram Moolenaar
bed72df3e6 patch 8.2.2416: may get stuck in command line window state
Problem:    May get stuck in command line window state.
Solution:   Reset "cmdwin_type" when editing buffer fails.  Make arglist test
            pass on MS-Windows.
2021-01-27 20:34:29 +01:00
Bram Moolenaar
21829c5f2c patch 8.2.2415: no way to check for the cmdwin feature
Problem:    No way to check for the cmdwin feature, cmdline_hist is now always
            enabled.
Solution:   Add has('cmdwin') support. Skip arglist test on Windows
            temporarily.
2021-01-26 22:42:21 +01:00
Bram Moolenaar
b7e2670b6a patch 8.2.2414: using freed memory when closing the cmdline window
Problem:    Using freed memory when closing the cmdline window.
Solution:   Check the window is still valid.
2021-01-26 22:00:52 +01:00
Bram Moolenaar
bb4b93ed85 patch 8.2.2413: crash when using :all while using a cmdline window
Problem:    Crash when using :all while using a cmdline window. (Zdenek Dohnal)
Solution:   Disallow :all from the cmdline window.
2021-01-26 21:35:08 +01:00
Bram Moolenaar
ce0370d9e6 patch 8.2.2412: not all fields in "cstack" are initialized
Problem:    Not all fields in "cstack" are initialized which might cause a
            crash.
Solution:   Use CLEAR_FIELD().
2021-01-26 19:32:53 +01:00
Bram Moolenaar
98989a0014 patch 8.2.2411: profile test fails on MS-Windows
Problem:    Profile test fails on MS-Windows.
Solution:   Do the profiling in a separate Vim command.
2021-01-26 12:06:30 +01:00
Bram Moolenaar
ff0e57fe77 patch 8.2.2410: build failure without the +profiling feature
Problem:    Build failure without the +profiling feature.
Solution:   Add dummy argument to macro.
2021-01-25 23:02:38 +01:00
Bram Moolenaar
e0e3917554 Update runtime files. 2021-01-25 21:14:57 +01:00
Bram Moolenaar
e5ea346a07 patch 8.2.2409: Vim9: profiling only works for one function
Problem:    Vim9: profiling only works for one function.
Solution:   Select the right instructions when calling and returning.
            (closes #7743)
2021-01-25 21:01:48 +01:00
Bram Moolenaar
5c829bf229 patch 8.2.2408: MinGW: "--preprocessor" flag no longer supported
Problem:    MinGW: "--preprocessor" flag no longer supported.
Solution:   Remove the flag, use the defaults. (Christopher Wellons,
            closes #7741)
2021-01-25 19:18:02 +01:00
Bram Moolenaar
ab55f11d9b patch 8.2.2407: old jumplist code is never used
Problem:    Old jumplist code is never used.
Solution:   Delete the dead code. (Yegappan Lakshmanan, closes #7740)
2021-01-25 18:44:57 +01:00
Bram Moolenaar
c05fe07529 patch 8.2.2406: Vim9: profiled :def function leaks memory
Problem:    Vim9: profiled :def function leaks memory.
Solution:   Delete the profiled instructions.
2021-01-24 21:30:48 +01:00
Bram Moolenaar
4efd994829 patch 8.2.2405: Vim9: no need to allow white space before "(" for :def
Problem:    Vim9: no need to allow white space before "(" for :def.
Solution:   Give an error for stray white space. (issue #7734)
2021-01-24 21:14:20 +01:00
Bram Moolenaar
107e9cecf7 patch 8.2.2404: Vim9: profiling try/catch not correct
Problem:    Vim9: profiling try/catch not correct.
Solution:   Add profile instructions.  Fix that "entry" did not rethrow an
            excpetion.
2021-01-24 20:52:00 +01:00
Bram Moolenaar
ced68a0070 patch 8.2.2403: Vim9: profiling if/elseif/endif not correct
Problem:    Vim9: profiling if/elseif/endif not correct.
Solution:   Add profile instructions.  Fix that "elseif" was wrong.
2021-01-24 17:53:47 +01:00
Bram Moolenaar
8323cab31c patch 8.2.2402: some filetypes not detected
Problem:    Some filetypes not detected.
Solution:   Detect Ruby Signature and Puppet related files. (Doug Kearns)
2021-01-24 15:25:56 +01:00
Bram Moolenaar
f002a41d12 patch 8.2.2401: build fails without +profiling feature
Problem:    Build fails without +profiling feature.
Solution:   Add #ifdefs.
2021-01-24 13:34:18 +01:00
Bram Moolenaar
b204990346 patch 8.2.2400: Vim9: compiled functions are not profiled
Problem:    Vim9: compiled functions are not profiled.
Solution:   Add initial changes to profile compiled functions.  Fix that a
            script-local function was hard to debug.
2021-01-24 12:53:53 +01:00
Bram Moolenaar
7cf0c114d6 patch 8.2.2399: fold test fails in wide terminal
Problem:    Fold test fails in wide terminal.
Solution:   Adjust the test. (Dominique Pelle, closes #7731, closes #7739)
2021-01-24 12:00:01 +01:00
Bram Moolenaar
40be52ba71 patch 8.2.2398: method test fails
Problem:    Method test fails.
Solution:   Adjust test for allowed white space.
2021-01-23 15:27:09 +01:00
Bram Moolenaar
dfbc5fd879 patch 8.2.2397: Vim9: "%%" not seen as alternate file name for ":bdel"
Problem:    Vim9: "%%" not seen as alternate file name for commands with a
            buffer name argument.
Solution:   Recognize "%%" like "#". (closes #7732)
2021-01-23 15:15:01 +01:00
Bram Moolenaar
7cebe8ba7d patch 8.2.2396: Vim9: no white space allowed before "->"
Problem:    Vim9: no white space allowed before "->".
Solution:   Allow for white space. (closes #7725)
2021-01-23 14:22:16 +01:00
Bram Moolenaar
9a562c184d patch 8.2.2395: Vim9: error for wrong type may report wrong line number
Problem:    Vim9: error for wrong type may report wrong line number.
Solution:   Save and restore the line number when evaluating the expression.
            (closes #7727)
2021-01-23 13:39:14 +01:00
Bram Moolenaar
9ae3705b6e patch 8.2.2394: Vim9: min() and max() return type is "any"
Problem:    Vim9: min() and max() return type is "any".
Solution:   Use return type "number". (closes #7728)
2021-01-22 22:31:10 +01:00
Bram Moolenaar
4bce26bb70 patch 8.2.2393: Vim9: error message when script line starts with "[{"
Problem:    Vim9: error message when script line starts with "[{".
Solution:   Do not give an error for checking for end of list.
2021-01-22 22:06:56 +01:00
Bram Moolenaar
402115f1c2 patch 8.2.2392: fennel filetype not recognized
Problem:    Fennel filetype not recognized.
Solution:   Detect with pattern and hashbang. (Chinmay Dalal, closes #7729)
2021-01-22 20:55:04 +01:00
Bram Moolenaar
0d3de8cb59 patch 8.2.2391: memory leak when creating a global function with closure
Problem:    Memory leak when creating a global function with closure.
Solution:   Create a separate partial for every instantiated function.
2021-01-22 20:46:27 +01:00
Bram Moolenaar
b3005ce191 patch 8.2.2390: Vim9: using positive offset is unexpected
Problem:    Vim9: using positive offset is unexpected.
Solution:   Use int8_T instead of char. (James McCoy)
2021-01-22 17:51:06 +01:00
Bram Moolenaar
9b6344613e patch 8.2.2389: test failure on a few systems
Problem:    Test failure on a few systems.
Solution:   Avoid that "char" value is negative.
2021-01-21 22:53:38 +01:00
Bram Moolenaar
57d5a01cb4 patch 8.2.2388: no easy way to get the maximum or mininum number value
Problem:    No easy way to get the maximum or mininum number value.
Solution:   Add v:numbermax and v:numbermin.
2021-01-21 21:42:31 +01:00
Bram Moolenaar
e32e516dfa patch 8.2.2387: runtime type check does not mention argument index
Problem:    Runtime type check does not mention argument index.
Solution:   Add ct_arg_idx. (closes #7720)
2021-01-21 20:21:29 +01:00
Bram Moolenaar
f904133e1a patch 8.2.2386: Vim9: crash when using ":silent! put"
Problem:    Vim9: crash when using ":silent! put".
Solution:   When ignoring an error for ":silent!" rewind the stack and skip
            ahead to restoring the cmdmod. (closes #7717)
2021-01-21 19:41:16 +01:00
Bram Moolenaar
e71996bd08 patch 8.2.2385: "gj" and "gk" do not work correctly when inside a fold
Problem:    "gj" and "gk" do not work correctly when inside a fold.
Solution:   Move check for folding. (closes #7724, closes #4095)
2021-01-21 17:03:07 +01:00
Bram Moolenaar
5e6a7aa2b2 patch 8.2.2384: turtle filetype not recognized
Problem:    Turtle filetype not recognized.
Solution:   Add a rule to detect turtle files. (closes #7722)
2021-01-21 14:45:13 +01:00
Bram Moolenaar
ccb47a2899 patch 8.2.2383: focus escape sequences are not named
Problem:    Focus escape sequences are not named in ":set termcap" output.
Solution:   Add the names to the list. (closes #7718)
2021-01-21 13:36:43 +01:00
Bram Moolenaar
b1f2857096 patch 8.2.2382: build failure
Problem:    Build failure.
Solution:   Add missing changes.
2021-01-21 13:03:20 +01:00
Bram Moolenaar
c5f59fab23 patch 8.2.2381: Vim9: divide by zero does not abort expression execution
Problem:    Vim9: divide by zero does not abort expression execution.
Solution:   Use a "failed" flag. (issue #7704)
2021-01-21 12:34:14 +01:00
Bram Moolenaar
a0f7f73ebb patch 8.2.2380: Vim9: occasional crash when using try/catch and a timer
Problem:    Vim9: occasional crash when using try/catch and a timer.
Solution:   Save and restore "need_rethrow" when invoking a timer callback.
            (closes #7708)
2021-01-20 22:22:49 +01:00
Bram Moolenaar
77a849c4b3 patch 8.2.2379: do spell suggestions twice if 'spellsuggest' contains number
Problem:    Finding spell suggestions twice if 'spellsuggest' contains number.
Solution:   Only do internal suggestions once.  (closes #7713)
2021-01-20 21:42:33 +01:00
Bram Moolenaar
99880f96cf patch 8.2.2378: Vim9: no error message for dividing by zero
Problem:    Vim9: no error message for dividing by zero.
Solution:   Give an error message. (issue #7704)
2021-01-20 21:23:14 +01:00
Bram Moolenaar
a28639e711 patch 8.2.2377: Vim9: crash when using a range after another expression
Problem:    Vim9: crash when using a range after another expression.
Solution:   Set the variable type to number. Fix using :put with a range and
            the "=" register. (closes #7706)
2021-01-19 22:48:09 +01:00
Bram Moolenaar
e64f83cc6a patch 8.2.2376: Vim9: crash when dividing by zero in compiled code
Problem:    Vim9: crash when dividing by zero in compiled code using
            constants.
Solution:   Call num_divide() and num_modulus(). (closes #7704)
2021-01-19 22:16:41 +01:00
Bram Moolenaar
09fbedc8dc patch 8.2.2375: test for RGB color skipped in the terminal
Problem:    Test for RGB color skipped in the terminal.
Solution:   Run the GUI if possible.
2021-01-19 17:22:58 +01:00
Bram Moolenaar
98a29d00a4 Update runtime files. 2021-01-18 19:55:44 +01:00
Bram Moolenaar
82aa6e09e0 patch 8.2.2374: accessing uninitialized memory in test_undo
Problem:    Accessing uninitialized memory in test_undo.
Solution:   Do not look in typebuf.tb_buf if it is empty. (Dominique Pellé,
            closes #7697)
2021-01-17 22:04:02 +01:00
Bram Moolenaar
f30a14db3b patch 8.2.2373: Vim9: list assignment only accepts a number index
Problem:    Vim9: list assignment only accepts a number index.
Solution:   Accept "any" and do a runtime type check. (closes #7694)
2021-01-17 21:51:24 +01:00
Bram Moolenaar
585587dadb patch 8.2.2372: confusing error message for wrong :let command
Problem:    Confusing error message for wrong :let command.
Solution:   Only check for type in Vim9 script.
2021-01-17 20:52:13 +01:00
Bram Moolenaar
036d07144e patch 8.2.2371: Vim9: crash when using types in :for with unpack
Problem:    Vim9: crash when using types in :for with unpack.
Solution:   Check for skip_var_list() failing. Pass include_type to
            skip_var_one(). Skip type when compiling. (closes #7694)
2021-01-17 20:23:38 +01:00
Bram Moolenaar
1430ceeb2d patch 8.2.2370: Vim9: command fails in catch block
Problem:    Vim9: command fails in catch block.
Solution:   Reset force_abort and need_rethrow. (closes #7692)
2021-01-17 19:20:32 +01:00
Bram Moolenaar
3af15ab788 patch 8.2.2369: Vim9: functions return true/false but can't be used as bool
Problem:    Vim9: functions return true/false but can't be used as bool.
Solution:   Add ret_number_bool(). (closes #7693)
2021-01-17 16:16:23 +01:00
Bram Moolenaar
85773bf32b patch 8.2.2368: insufficient tests for setting options
Problem:    Insufficient tests for setting options.
Solution:   Add a few tests. (Dominique Pellé, closes #7695)
2021-01-17 13:48:03 +01:00
Bram Moolenaar
239f8d9326 patch 8.2.2367: test failures on some less often used systems
Problem:    Test failures on some less often used systems.
Solution:   Adjust printf formats and types. (James McCoy, closes #7691)
2021-01-17 13:21:20 +01:00
Bram Moolenaar
e2edc2ed4a patch 8.2.2366: when using ":sleep" the cursor is always displayed
Problem:    When using ":sleep" the cursor is always displayed.
Solution:   Do not display the cursor when using ":sleep!". (Jeremy Lerner,
            closes #7688)
2021-01-16 20:21:23 +01:00
Bram Moolenaar
70250fb4d2 patch 8.2.2365: Vim9: no check for map() changing item type at script level
Problem:    Vim9: no check for map() changing item type at script level.
Solution:   Check the new value type.
2021-01-16 19:01:53 +01:00
Bram Moolenaar
f898f7c68d patch 8.2.2364: Vim9: line break in lambda accesses freed memory
Problem:    Vim9: line break in lambda accesses freed memory.
Solution:   Make a copy of the return type. (closes #7664)
2021-01-16 18:09:52 +01:00
Bram Moolenaar
9ebcf231bd patch 8.2.2363: curpos() does not accept a string argument as before
Problem:    curpos() does not accept a string argument as before.
solution:   Make a string argument work again. (Yegappan Lakshmanan,
            closes #7690
2021-01-16 16:52:49 +01:00
Bram Moolenaar
351ead09dd patch 8.2.2362: Vim9: check of builtin function argument type is incomplete
Problem:    Vim9: check of builtin function argument type is incomplete.
Solution:   Use need_type() instead of check_arg_type().
2021-01-16 16:07:01 +01:00
Bram Moolenaar
7c886db915 patch 8.2.2361: Vim9: no highlight for "s///gc" when using 'opfunc'
Problem:    Vim9: no highlight for "s///gc" when using 'opfunc'.
Solution:   Reset 'lazyredraw' temporarily. (closes #7687)
2021-01-16 14:34:45 +01:00
Bram Moolenaar
a3b494d6af patch 8.2.2360: test leaves file behind
Problem:    Test leaves file behind.
Solution:   Delete the right file. (Dominique Pellé, closes #7689)
2021-01-16 13:43:31 +01:00
Bram Moolenaar
e2924328c1 patch 8.2.2359: strange test failure with MS-Windows
Problem:    Strange test failure with MS-Windows.
Solution:   Skip the system() call for now.
2021-01-16 13:11:42 +01:00
Bram Moolenaar
bf78974ca4 patch 8.2.2358: wrong #ifdef for use_xterm_like_mouse()
Problem:    Wrong #ifdef for use_xterm_like_mouse().
Solution:   Use FEAT_MOUSE_XTERM.
2021-01-16 11:21:40 +01:00
Bram Moolenaar
648ea76e1d patch 8.2.2357: Vim9: crash when parsing function return type fails
Problem:    Vim9: crash when parsing function return type fails.
Solution:   Bail out and set return type to "unknown". (closes #7685)
2021-01-15 19:04:32 +01:00
Bram Moolenaar
883cf97f10 patch 8.2.2356: Vim9: ":put =expr" does not handle a list properly
Problem:    Vim9: ":put =expr" does not handle a list properly.
Solution:   Use the same logic as eval_to_string_eap(). (closes #7684)
2021-01-15 18:04:43 +01:00
Bram Moolenaar
97c6943e11 patch 8.2.2355: stray test failure on Appveyor
Problem:    Stray test failure on Appveyor.
Solution:   Finish insert command.
2021-01-15 16:45:21 +01:00
Bram Moolenaar
797e63b9f2 patch 8.2.2354: crash with a weird combination of autocommands
Problem:    Crash with a weird combination of autocommands.
Solution:   Increment b_nwindows when needed. (closes #7674)
2021-01-15 16:22:52 +01:00
Bram Moolenaar
17d015b243 patch 8.2.2353: spartql files are not detected
Problem:    Spartql files are not detected.
Solution:   Add the sparql filetype.  (closes #7679)
2021-01-15 13:35:30 +01:00
Bram Moolenaar
d44cc593ce patch 8.2.2352: if focus lost/gained is received twice code is not ignored
Problem:    If the focus lost/gained escape sequence is received twice it is
            not ignored. (Christ van Willigen)
Solution:   Adjust the logic to ignore the escape code.
2021-01-14 21:57:58 +01:00
Bram Moolenaar
8f81b22e86 patch 8.2.2351: Vim9: error msg for "throw" in function called with "silent!"
Problem:    Vim9: error message for "throw" in function that was called with
            "silent!".
Solution:   Do not throw the exception when not caught or displayed.
            (closes #7672)
2021-01-14 21:47:06 +01:00
Bram Moolenaar
033135eb8e patch 8.2.2350: using "void" for no reason
Problem:    Using "void" for no reason.
Solution:   Use "char *".
2021-01-14 21:40:22 +01:00
Bram Moolenaar
2415669348 patch 8.2.2349: Vim9: cannot handle line break after parenthesis at line end
Problem:    Vim9: cannot handle line break after parenthesis at line end.
Solution:   Skip over line break. (closes #7677)
2021-01-14 20:35:49 +01:00
Bram Moolenaar
fadd55bd63 patch 8.2.2348: no check for modified files after focus gained
Problem:    No check for modified files after focus gained. (Mathias Stearn)
Solution:   Call ui_focus_change().
2021-01-14 19:19:18 +01:00
Bram Moolenaar
e1ee58ac78 patch 8.2.2347: build failure without GUI
Problem:    Build failure without GUI.
Solution:   Add #ifdef.
2021-01-14 19:04:44 +01:00
Bram Moolenaar
845b72854d patch 8.2.2346: Codecov reports every little coverage drop
Problem:    Codecov reports every little coverage drop.
Solution:   Tolerate a 0.05% drop. Hide the appveyor config file. (Ozaki
            Kiichi, closes #7678)
2021-01-14 17:55:59 +01:00
Bram Moolenaar
681fc3fa78 patch 8.2.2345: no focus events in a terminal
Problem:    No focus events in a terminal.
Solution:   Add the t_fd and t_fe termcap entries and implement detecting
            focus events. (Hayaki Saito, Magnus Groß, closes #7673,
            closes #609, closes #5526)
2021-01-14 17:35:21 +01:00
Bram Moolenaar
6601b62943 patch 8.2.2344: using inclusive index for slice is not always desired
Problem:    Using inclusive index for slice is not always desired.
Solution:   Add the slice() method, which has an exclusive index. (closes
            #7408)
2021-01-13 21:47:15 +01:00
Bram Moolenaar
c423ad77ed patch 8.2.2343: Vim9: return type of readfile() is any
Problem:    Vim9: return type of readfile() is any.
Solution:   Add readblob() so that readfile() can be expected to always
            return a list of strings. (closes #7671)
2021-01-13 20:38:03 +01:00
Bram Moolenaar
9145846b6a patch 8.2.2342: "char" functions may return wrong column in Insert mode
Problem:    "char" functions return the wront column in Insert mode when the
            cursor is beyond the end of the line.
Solution:   Compute the column correctly. (Yegappan Lakshmanan, closes #7669)
2021-01-13 20:08:38 +01:00
Bram Moolenaar
1bb4de5302 patch 8.2.2341: expresison command line completion incomplete after "g:"
Problem:    Expresison command line completion shows variables but not
            functions after "g:". (Gary Johnson)
Solution:   Prefix "g:" when needed to a global function.
2021-01-13 19:48:46 +01:00
Bram Moolenaar
37487e16da patch 8.2.2340: win_execute() unexpectedly returns number zero when failing
Problem:    win_execute() unexpectedly returns number zero when failing.
Solution:   Return an empty string. (closes #7665)
2021-01-12 22:08:53 +01:00
Bram Moolenaar
a47e05f04a patch 8.2.2339: cannot get the type of a value as a string
Problem:    Cannot get the type of a value as a string.
Solution:   Add typename().
2021-01-12 21:49:00 +01:00
Bram Moolenaar
64ed4d4398 patch 8.2.2338: Vim9: no error if using job_info() result wrongly
Problem:    Vim9: no error if using job_info() result wrongly.
Solution:   Adjust return type on number of arguments. (closes #7667)
2021-01-12 21:22:31 +01:00
Bram Moolenaar
67876de7bb patch 8.2.2337: configure test for GTK only says "no"
Problem:    Configure test for GTK only says "no". (Harm te Hennepe)
Solution:   Hint that a -def package is needed. (closes #5229)
2021-01-12 20:51:24 +01:00
Bram Moolenaar
b0e6b51364 patch 8.2.2336: Vim9: not possible to extend dictionary with different type
Problem:    Vim9: it is not possible to extend a dictionary with different
            item types.
Solution:   Add extendnew(). (closes #7666)
2021-01-12 20:23:40 +01:00
Bram Moolenaar
7cd24227c0 patch 8.2.2335: Vim9: "silent return" does not restore command modifiers
Problem:    Vim9: "silent return" does not restore command modifiers.
Solution:   Resture command modifiers before returning. (closes #7649)
2021-01-12 18:58:39 +01:00
Bram Moolenaar
a0122dcd1c patch 8.2.2334: Pascal-like filetypes not always detected
Problem:    Pascal-like filetypes not always detected.
Solution:   Improved Puppet, InstantFPC and Pascal detection. (Doug Kearns,
            closes #7662)
2021-01-12 17:42:24 +01:00
Bram Moolenaar
cb6cbf29e9 patch 8.2.2333: Vim9: warning for uninitialized variable
Problem:    Vim9: warning for uninitialized variable. (Tony Mechelynck)
Solution:   Initialize "res".
2021-01-12 17:17:01 +01:00
Bram Moolenaar
9567efa1b4 patch 8.2.2332: Vim9: missing :endif not reported when using :windo
Problem:    Vim9: missing :endif not reported when using :windo.
Solution:   Pass a getline function to do_cmdline(). (closes #7650)
2021-01-11 22:16:30 +01:00
Bram Moolenaar
082517570d patch 8.2.2331: Vim9: wrong error when modifying dict declared with :final
Problem:    Vim9: wrong error when modifying dict declared with :final.
Solution:   Do not check for writable variable when an index follows.
            (closes #7657)
2021-01-11 21:20:18 +01:00
Bram Moolenaar
9e1d9e3473 patch 8.2.2330: Vim9: crash when using :trow in a not executed block
Problem:    Vim9: crash when using :trow in a not executed block.
Solution:   Don't generate the instruction when skipping. (closes #7659)
2021-01-11 20:17:34 +01:00
Bram Moolenaar
df4c9af7e7 patch 8.2.2329: not all ways Vim can be started are tested
Problem:    Not all ways Vim can be started are tested.
Solution:   Add a test for different program names. (Dominique Pellé,
            closes #7651)
2021-01-11 19:54:42 +01:00
Bram Moolenaar
82be4849ee Update runtime files. 2021-01-11 19:40:15 +01:00
Bram Moolenaar
48e11c1054 patch 8.2.2328: some test files may not be deleted
Problem:    Some test files may not be deleted.
Solution:   Add a delete() call, correct name. (Dominique Pellé, closes #7654)
2021-01-11 18:47:00 +01:00
Bram Moolenaar
16a6f91ccb patch 8.2.2327: debugging code included
Problem:    Debugging code included.
Solution:   Remove the debugging code.
2021-01-10 23:58:28 +01:00
Bram Moolenaar
086ae06862 patch 8.2.2326: build error with +eval feature but without +spell
Problem:    Build error with +eval feature but without +spell.
Solution:   Adjust #ifdef. (John Marriott)
2021-01-10 22:56:36 +01:00
Bram Moolenaar
75ab91ff34 patch 8.2.2325: Vim9: crash if map() changes the item type
Problem:    Vim9: crash if map() changes the item type.
Solution:   Check that the item type is still OK. (closes #7652)
            Fix problem with mapnew() on range list.
2021-01-10 22:42:50 +01:00
Bram Moolenaar
6f02b00bb0 patch 8.2.2324: not easy to get mark en cursor posotion by character count
Problem:    Not easy to get mark en cursor posotion by character count.
Solution:   Add functions that use character index. (Yegappan Lakshmanan,
            closes #7648)
2021-01-10 20:22:54 +01:00
Bram Moolenaar
31a11b942a patch 8.2.2323: Vim9: error when inferring type from empty dict/list
Problem:    Vim9: error when inferring type from empty dict/list.
Solution:   When the member is t_unknown use t_any. (closes #7009)
2021-01-10 19:23:27 +01:00
Bram Moolenaar
0186e58639 patch 8.2.2322: Vim9: closure nested limiting to one level
Problem:    Vim9: closure nested limiting to one level.
Solution:   Add outer_T.  Also make STOREOUTER work.
2021-01-10 18:33:11 +01:00
Bram Moolenaar
ab360526ef patch 8.2.2321: Vim9: cannot nest closures
Problem:    Vim9: cannot nest closures.
Solution:   Add the nesting level to ISN_LOADOUTER and ISN_STOREOUTER.
            (closes #7150, closes #7635)
2021-01-10 14:02:28 +01:00
Bram Moolenaar
cff40ff986 patch 8.2.2320: Vim9: no error for comparing bool with string
Problem:    Vim9: no error for comparing bool with string.
Solution:   Check for wrong types when comparing. (closes #7639)
2021-01-09 16:21:37 +01:00
Bram Moolenaar
657137ca48 patch 8.2.2319: "exptype_T" can be read as "expected type"
Problem:    "exptype_T" can be read as "expected type".
Solution:   Rename to "exprtype_T", expression type.
2021-01-09 15:45:23 +01:00
Bram Moolenaar
e7525c5520 patch 8.2.2318: Vim9: string and list index work differently
Problem:    Vim9: string and list index work differently.
Solution:   Make string index work like list index. (closes #7643)
2021-01-09 13:20:37 +01:00
Bram Moolenaar
9e0f883f89 patch 8.2.2317: Vim9: command modifier before list unpack doesn't work
Problem:    Vim9: command modifier before list unpack doesn't work.
Solution:   Only recognize "[" directly after the name. (closes #7641)
2021-01-09 12:09:22 +01:00
Bram Moolenaar
b657198cb3 patch 8.2.2316: Vim9: cannot list a lambda function
Problem:    Vim9: cannot list a lambda function.
Solution:   Support the <lambda>9 notation, like :disassemble. (closes #7634)
2021-01-08 22:24:19 +01:00
Bram Moolenaar
832ea89ca9 patch 8.2.2315: Vim9: "enddef" as dict key misintepreted as function end
Problem:    Vim9: "enddef" as dict key misintepreted as function end.
Solution:   Check for following colon. (closes #7640)
2021-01-08 21:55:26 +01:00
Bram Moolenaar
299f3036ec patch 8.2.2314: Vim9: returning zero takes two instructions
Problem:    Vim9: returning zero takes two instructions.
Solution:   Add ISN_RETURN_ZERO.
2021-01-08 20:53:09 +01:00
Bram Moolenaar
ece0b87c0f patch 8.2.2313: Vim9: using uninitialized field when parsing range
Problem:    Vim9: using uninitialized field when parsing range. ":silent!" not
            respected when parsing range fails.
Solution:   Initialize ea.skip.  On pattern failure handle it like an error.
            (closes #7636)
2021-01-08 20:40:45 +01:00
Bram Moolenaar
467b59c2eb patch 8.2.2312: build failure with Ruby 3.0 and 32 bits
Problem:    Build failure with Ruby 3.0 and 32 bits.
Solution:   Add #ifdef. (closes #7638)
2021-01-08 19:31:39 +01:00
Bram Moolenaar
17126b1396 patch 8.2.2311: Vim9: cannot assign to variable that shadows command modifier
Problem:    Vim9: cannot assign to a variable that shadows a command modifier.
Solution:   Check for assignment after possible command modifier.
            (closes #7632)
2021-01-07 22:03:02 +01:00
Bram Moolenaar
43b69b39ac patch 8.2.2310: Vim9: winsaveview() return type is too generic
Problem:    Vim9: winsaveview() return type is too generic.
Solution:   use dict<number> instead of dict<any>. (closes #7626)
2021-01-07 20:23:33 +01:00
Bram Moolenaar
c37b655443 patch 8.2.2309: 0o777 not recognized as octal
Problem:    0o777 not recognized as octal.
Solution:   Use vim_isodigit(). (Ken Takata, closes #7633, closes #7631)
2021-01-07 19:36:30 +01:00
Bram Moolenaar
328eac2b5d patch 8.2.2308: Vim9: no error when assigning lambda to funcref
Problem:    Vim9: no error when assigning lambda to funcref without return
            value.
Solution:   Default return value to "any". (closes #7629)
2021-01-07 19:23:08 +01:00
Bram Moolenaar
ebbf11c119 patch 8.2.2307: a shell command in the vimrc causes terminal output
Problem:    A shell command in the vimrc causes terminal output.
Solution:   Do not call starttermcap() after a shell command if the termcap
            wasn't active before.
2021-01-07 14:45:03 +01:00
Bram Moolenaar
32b3f82010 patch 8.2.2306: Vim9: when using function reference type is not checked
Problem:    Vim9: when using function reference type is not checked.
Solution:   When using a function reference lookup the type and check the
            argument types. (issue #7629)
2021-01-06 21:59:39 +01:00
Bram Moolenaar
b23279d7a2 patch 8.2.2305: Vim9: "++var" and "--var" are silently accepted
Problem:    Vim9: "++var" and "--var" are silently accepted.
Solution:   Give an error message.
2021-01-05 22:08:20 +01:00
Bram Moolenaar
0acbf5ae66 patch 8.2.2304: Vim9: no test for unletting an imported variable
Problem:    Vim9: no test for unletting an imported variable.
Solution:   Add a test.  Fix line number in error.
2021-01-05 20:58:25 +01:00
Bram Moolenaar
ecac591cce patch 8.2.2303: Vim9: backtick expansion doesn't work for :foldopen
Problem:    Vim9: backtick expansion doesn't work for :foldopen.
Solution:   Do recognize backtick expansion. (closes #7621)
2021-01-05 19:23:28 +01:00
Bram Moolenaar
a79925a0a8 patch 8.2.2302: Vim9: using an option value may use uninitialized memory
Problem:    Vim9: using an option value may use uninitialized memory.
Solution:   Clear v_lock. (closes #7620)
2021-01-05 17:50:28 +01:00
Bram Moolenaar
752fc692ac patch 8.2.2301: Vim9: cannot unlet a dict or list item
Problem:    Vim9: cannot unlet a dict or list item.
Solution:   Add ISN_UNLETINDEX.  Refactor assignment code to use for unlet.
2021-01-04 21:57:11 +01:00
Bram Moolenaar
d62d87d8f3 patch 8.2.2300: Vim9: wrong order on type stack when using dict
Problem:    Vim9: wrong order on type stack when using dict.
Solution:   Generate constants before a dict. (closes #7619)
2021-01-04 17:40:12 +01:00
Bram Moolenaar
d1510ee946 patch 8.2.2299: Vim9: invalid memory access making error message flaky
Problem:    Vim9: invalid memory access making error message flaky.
Solution:   Do not check cmd_argt for CMD_USER. (issue #7467)
2021-01-04 16:15:58 +01:00
Bram Moolenaar
cef1270dec patch 8.2.2298: Vim9: comment right after "(" of function not recognized
Problem:    Vim9: comment right after "(" of function not recognized.
Solution:   Do not skip over white space before calling get_function_args().
            (closes #7613)
2021-01-04 14:09:43 +01:00
Bram Moolenaar
0ea0440865 patch 8.2.2297: Vim9: cannot set 'number' to a boolean value
Problem:    Vim9: cannot set 'number' to a boolean value.
Solution:   Use tv_get_bool(). (closes #7615)
2021-01-04 13:37:54 +01:00
Bram Moolenaar
014f698cb6 patch 8.2.2296: cannot use CTRL-N and CTRL-P in a popup menu
Problem:    Cannot use CTRL-N and CTRL-P in a popup menu.
Solution:   Use CTRL-N like <Down> and CTRL-P like <Up>. (closes #7614)
2021-01-04 13:18:30 +01:00
Bram Moolenaar
d93a7fc1a9 patch 8.2.2295: incsearch does not detect empty pattern properly
Problem:    Incsearch does not detect empty pattern properly.
Solution:   Return magic state when skipping over a pattern. (Christian
            Brabandt, closes #7612, closes #6420)
2021-01-04 12:42:13 +01:00
Bram Moolenaar
82c38fe508 patch 8.2.2294: VMS: a few remaining problems
Problem:    VMS: a few remaining problems.
Solution:   Add VMS specific changes. Add Lua support. (Zoltan Arpadffy)
2021-01-04 10:47:26 +01:00
Bram Moolenaar
bb0956fc65 patch 8.2.2293: build failure with Motif
Problem:    Build failure with Motif. (Tony Mechelynck)
Solution:   Use empty_option instead of empty_options.
2021-01-03 22:12:15 +01:00
Bram Moolenaar
5f63938447 patch 8.2.2292: Vim: expr test fails
Problem:    Vim: expr test fails.
Solution:   Add missing part of "null" support.
2021-01-03 22:05:19 +01:00
Bram Moolenaar
6797782127 patch 8.2.2291: Vim9: cannot use "null" for v:null
Problem:    Vim9: cannot use "null" for v:null.
Solution:   Support "null" like "true" and "false". (closes #7495)
2021-01-03 21:53:53 +01:00
Bram Moolenaar
2ef951dd31 patch 8.2.2290: Vim9: unlet of global variable cannot be compiled
Problem:    Vim9: unlet of global variable cannot be compiled.
Solution:   Skip over variables that might be defined later. Give an error if
            a subscript is found. (closes #7585)
2021-01-03 20:55:26 +01:00
Bram Moolenaar
e5a2dc87fd patch 8.2.2289: Vim9: 'cpo' can become empty
Problem:    Vim9: 'cpo' can become empty.
Solution:   Use empty_option instead of an empty string.  Update quickfix
            buffer after restoring 'cpo'.  (closes #7608)
2021-01-03 19:52:05 +01:00
Bram Moolenaar
5afd081cd3 patch 8.2.2288: Vim9: line break and comment not always skipped
Problem:    Vim9: line break and comment not always skipped.
Solution:   Skip over white space and then line break more consistently.
            (closes #7610)
2021-01-03 18:33:13 +01:00
Bram Moolenaar
cec77d4530 patch 8.2.2287: sort test fails when locale is French Canadian
Problem:    Sort test fails when locale is French Canadian.
Solution:   Expect a different sort order. (Dominique Pellé, closes #7609)
2021-01-03 17:39:28 +01:00
Bram Moolenaar
fefa6c347e patch 8.2.2286: sort test fails when locale is Canadian English
Problem:    Sort test fails when locale is Canadian English. (Neil H Watson)
Solution:   Expect a different sort order. (closes #7609)
2021-01-03 16:18:04 +01:00
Bram Moolenaar
b0d8182fa3 patch 8.2.2285: Vim9: cannot set an option to a false
Problem:    Vim9: cannot set an option to a false.
Solution:   For VAR_BOOL use string "0". (closes #7603)
2021-01-03 15:55:10 +01:00
Bram Moolenaar
31a201a04a patch 8.2.2284: Vim9: cannot set an option to a boolean value
Problem:    Vim9: cannot set an option to a boolean value.
Solution:   Check for VAR_BOOL. (closes #7603)
2021-01-03 14:47:25 +01:00
Bram Moolenaar
e68b02a1c4 patch 8.2.2283: Vim9: crash when lambda has fewer arguments than expected
Problem:    Vim9: crash when lambda has fewer arguments than expected.
Solution:   Don't check arguments when already failed. (closes #7606)
2021-01-03 13:09:51 +01:00
Bram Moolenaar
339c1bdbdf patch 8.2.2282: length check mismatch with argument of strncmp()
Problem:    Length check mismatch with argument of strncmp(). (Christian
            Brabandt)
Solution:   Adjust length check.
2021-01-02 20:14:23 +01:00
Bram Moolenaar
a11919fa44 patch 8.2.2281: Vim9: compiled "wincmd" cannot be followed by bar
Problem:    Vim9: compiled "wincmd" cannot be followed by bar.
Solution:   Check for bar after "wincmd". (closes #7599)
2021-01-02 19:44:56 +01:00
Bram Moolenaar
9d19e4f4ba patch 8.2.2280: fuzzy matching doesn't give access to the scores
Problem:    Fuzzy matching doesn't give access to the scores.
Solution:   Return the scores with a third list. (Yegappan Lakshmanan,
            closes #7596)
2021-01-02 18:31:32 +01:00
Bram Moolenaar
508b5618ec patch 8.2.2279: Vim9: memory leak with catch in skipped block
Problem:    Vim9: memory leak with catch in skipped block.
Solution:   Free the pattern if not used.
2021-01-02 18:17:26 +01:00
Bram Moolenaar
66c50c5653 patch 8.2.2278: falling back to old regexp engine can some patterns
Problem:    Falling back to old regexp engine can some patterns.
Solution:   Do not fall back once [[:lower:]] or [[:upper:]] is used.
            (Christian Brabandt, closes #7572)
2021-01-02 17:43:49 +01:00
Bram Moolenaar
9281c6cae4 patch 8.2.2277: missing backslash
Problem:    Missing backslash.
Solution:   Add backslash.
2021-01-02 17:06:16 +01:00
Bram Moolenaar
a72514945b patch 8.2.2276: list of distributed files is outdated
Problem:    List of distributed files is outdated.
Solution:   Update the file list.  Minor comment updates.
2021-01-02 16:53:13 +01:00
Bram Moolenaar
7e6a515ed1 Update runtime files. 2021-01-02 16:39:53 +01:00
Bram Moolenaar
02faa944c6 patch 8.2.2275: CTRL-C not recognized in Mintty
Problem:    CTRL-C not recognized in Mintty.
Solution:   Recognize the modifyOtherKeys code ending in "u". (Christian
            Brabandt, closes #7575)
2021-01-02 16:17:18 +01:00
Bram Moolenaar
2f91e2f8da patch 8.2.2274: badge for Travis is outdated
Problem:    badge for Travis is outdated.
Solution:   Update badge for move from travis-ci.org to travis-ci.com.
2021-01-02 16:06:44 +01:00
Bram Moolenaar
628c102d12 patch 8.2.2273: build failure
Problem:    Build failure.
Solution:   Add missing changes to header file.
2021-01-02 15:49:28 +01:00
Bram Moolenaar
aa210a3aec patch 8.2.2272: Vim9: extend() can violate the type of a variable
Problem:    Vim9: extend() can violate the type of a variable.
Solution:   Add the type to the dictionary or list and check items against it.
            (closes #7593)
2021-01-02 15:41:03 +01:00
Bram Moolenaar
3e0107ea16 patch 8.2.2271: ml_get error when changing hidden buffer in Python
Problem:    ml_get error when changing hidden buffer in Python.
Solution:   Block updating folds. (closes #7598)
2021-01-02 13:53:59 +01:00
Bram Moolenaar
38a434f7ba patch 8.2.2270: warning for size_t to int conversion
Problem:    Warning for size_t to int conversion. (Randall W. Morris)
Solution:   Add a type cast.
2021-01-02 12:45:45 +01:00
Bram Moolenaar
edc10b541b patch 8.2.2269: not all :hardcopy code covered by tests
Problem:    Not all :hardcopy code covered by tests.
Solution:   Test more combinations. (Dominique Pellé, closes #7595)
2021-01-01 21:34:37 +01:00
Bram Moolenaar
3862ea3f62 patch 8.2.2268: Vim9: list unpack seen as declaration
Problem:    Vim9: list unpack seen as declaration.
Solution:   Check for "var". (closes #7594)
2021-01-01 21:05:55 +01:00
Bram Moolenaar
c368957b19 patch 8.2.2267: Vim9: cannot use unlet for a dict member
Problem:    Vim9: cannot use unlet for a dict member.
Solution:   Pass GLV_NO_DECL to get_lval(). (closes #7585)
2021-01-01 19:40:02 +01:00
Bram Moolenaar
e7a73e0762 patch 8.2.2266: Vim9: it can be hard to see where white space is missing
Problem:    Vim9: it can be hard to see where white space is missing.
Solution:   Mention the text where the error was seen. (closes #7580)
2021-01-01 19:17:55 +01:00
Bram Moolenaar
b8ba9b9197 patch 8.2.2265: error message for missing endfunc/enddef is last line
Problem:    Error message for missing endfunc/enddef is last line.
Solution:   Report the line where the function starts. (closes #7582)
2021-01-01 18:54:34 +01:00
Bram Moolenaar
5178b1b02f patch 8.2.2264: Vim9: no error for mismatched :endfunc or :enddef
Problem:    Vim9: no error for mismatched :endfunc or :enddef.
Solution:   Check for the mismatch. (issue #7582)
2021-01-01 18:43:51 +01:00
Bram Moolenaar
69f7050ceb patch 8.2.2263: Vim9: compilation error with try-catch in skipped block
Problem:    Vim9: compilation error with try-catch in skipped block.
Solution:   Do not bail out when generate_instr() returns NULL. (closes #7584)
2021-01-01 16:10:46 +01:00
Bram Moolenaar
a8b8af19e4 patch 8.2.2262: Vim9: converting bool to string prefixes v:
Problem:    Vim9: converting bool to string prefixes v:.
Solution:   Do not use the v: prefix.
2021-01-01 15:11:04 +01:00
Bram Moolenaar
d5ea8f08f7 patch 8.2.2261: Vim9: boolean option gets string type
Problem:    Vim9: boolean option gets string type.
Solution:   Check for VAR_BOOL. (closes #7588)
2021-01-01 14:49:15 +01:00
Bram Moolenaar
5efe0e5d16 patch 8.2.2260: window resize test fails in very wide terminal
Problem:    Window resize test fails in very wide terminal.
Solution:   Resize using the 'columns' option.  (Vladimir Lomov, closes #7592)
2021-01-01 14:31:34 +01:00
Bram Moolenaar
a387083b2f patch 8.2.2259: Test_Executable() fails when using chroot
Problem:    Test_Executable() fails when using chroot.
Solution:   Ignore the difference between "sbin" and "bin".
2021-01-01 14:20:44 +01:00
Bram Moolenaar
beef4eeda5 patch 8.2.2258: not all OCaml related files are detected
Problem:    Not all OCaml related files are detected.
Solution:   Update OCaml file type detection.  (Markus Mottl, closes #7590)
2021-01-01 13:54:00 +01:00
Bram Moolenaar
2949cfdbe4 patch 8.2.2257: Vim9: using -> for lambda is ambiguous
Problem:    Vim9: using -> for lambda is ambiguous.
Solution:   Stop supporting ->, must use =>.
2020-12-31 21:28:47 +01:00
Bram Moolenaar
adc8e44645 patch 8.2.2256: Vim9: cannot use function( after line break in :def function
Problem:    Vim9: cannot use function( after line break in :def function.
Solution:   Check for "(" after "function". (closes #7581)
2020-12-31 18:28:18 +01:00
Bram Moolenaar
1779ff4842 patch 8.2.2255: Tcl test fails
Problem:    Tcl test fails.
Solution:   Change option handling.
2020-12-31 18:11:16 +01:00
Bram Moolenaar
dd1f426bd6 patch 8.2.2254: Vim9: bool option type is number
Problem:    Vim9: bool option type is number.
Solution:   Have get_option_value() return a different value for bool and
            number options. (closes #7583)
2020-12-31 17:41:01 +01:00
Bram Moolenaar
ca2f7e7af3 patch 8.2.2253: Vim9: expr test fails
Problem:    Vim9: expr test fails.
Solution:   Add missing assignment.
2020-12-31 13:39:54 +01:00
Bram Moolenaar
6b55377303 patch 8.2.2252: Vim9: crash when using lambda without return type in dict
Problem:    Vim9: crash when using lambda without return type in dict.
Solution:   Without a return type use t_unknown. (closes #7587)
2020-12-31 13:31:23 +01:00
Bram Moolenaar
a04d447d3a patch 8.2.2251: test failures in legacy script
Problem:    Test failures in legacy script.
Solution:   Check for Vim9 script.
2020-12-30 21:16:37 +01:00
Bram Moolenaar
de4f95b041 patch 8.2.2250: Vim9: sublist is ambiguous
Problem:    Vim9: sublist is ambiguous.
Solution:   Require white space around the colon. (closes #7409)
2020-12-30 20:39:21 +01:00
Bram Moolenaar
2a5c61a019 patch 8.2.2249: termcodes test is flaky when used over ssh
Problem:    Termcodes test is flaky when used over ssh with X forwarding.
Solution:   Set 'mousetime' to a larger value. (Dominique Pellé, closes #7576,
            closes #7563)
2020-12-30 14:59:23 +01:00
Bram Moolenaar
2808da39f9 patch 8.2.2248: ASAN error on exit with GUI
Problem:    ASAN error on exit with GUI.
Solution:   Check the window still has lines. (Christian Brabandt,
            closes #7573)
2020-12-30 14:08:35 +01:00
Bram Moolenaar
467676d468 patch 8.2.2247: VMS: various smaller problems
Problem:    VMS: various smaller problems.
Solution:   Fix VMS building and other problems. (Zoltan Arpadffy)
2020-12-30 13:14:45 +01:00
Bram Moolenaar
4d8c96d466 patch 8.2.2246: cursor keys not recognized at the hit-Enter prompt
Problem:    Cursor keys not recognized at the hit-Enter prompt after executing
            an external command.
Solution:   Change the codes for the extra cursor keys. (closes #7562)
            Tune the delays to avoid test flakyness.
2020-12-29 20:53:33 +01:00
Bram Moolenaar
285b15fce1 patch 8.2.2245: Vim9: return value of winrestcmd() cannot be executed
Problem:    Vim9: return value of winrestcmd() cannot be executed.
Solution:   Put colons before each range. (closes #7571)
2020-12-29 20:25:19 +01:00
Bram Moolenaar
89015a6759 patch 8.2.2244: crash when making the window width negative
Problem:    Crash when making the window width of the not-current window
            negative.
Solution:   Make sure the window width is not negative. (closes #7568)
2020-12-29 12:46:51 +01:00
Bram Moolenaar
4012d26207 patch 8.2.2243: crash when popup mask contains zeroes
Problem:    Crash when popup mask contains zeroes.
Solution:   Check boundaries properly. (closes #7569)
2020-12-29 11:57:46 +01:00
Bram Moolenaar
8242ebbdba patch 8.2.2242: Vim9: bar line continuation does not work at script level
Problem:    Vim9: line continuation with bar does not work at script level.
Solution:   Check for Vim9 script.
2020-12-29 11:15:01 +01:00
Bram Moolenaar
864a28b6a6 patch 8.2.2241: Build with Ruby and clang may fail
Problem:    Build with Ruby and clang may fail.
Solution:   Adjust congigure and sed script. (Ozaki Kiichi, closes #7566)
2020-12-28 21:36:56 +01:00
Bram Moolenaar
41a834d1e3 patch 8.2.2240: clientserver test fails if full path is used
Problem:    Clientserver test fails if full path is used.
Solution:   Ignore the path preceding the file name.
2020-12-28 21:15:16 +01:00
Bram Moolenaar
dcc58e031d patch 8.2.2239: Vim9: concatenating lines with backslash is inconvenient
Problem:    Vim9: concatenating lines with backslash is inconvenient.
Solution:   Support concatenating lines starting with '|', useful for
            :autocmd, :command, etc. (closes #6702)
2020-12-28 20:53:21 +01:00
Bram Moolenaar
9b8d62267f patch 8.2.2238: Vim9: cannot load a Vim9 script without the +eval feature
Problem:    Vim9: cannot load a Vim9 script without the +eval feature.
Solution:   Support Vim9 script syntax without the +eval feature.
2020-12-28 18:26:00 +01:00
Bram Moolenaar
ed1e4c9a70 patch 8.2.2237: CI on Mac fails in sed command
Problem:    CI on Mac fails in sed command.
Solution:   Set LC_ALL to "C". (Ozaki Kiichi, closes #7565)
2020-12-28 15:46:47 +01:00
Bram Moolenaar
746670604a patch 8.2.2236: 'scroll' option can change when setting the statusline
Problem:    'scroll' option can change when setting the statusline or tabline
            but the option context is not updated.
Solution:   Update the script context when the scroll option is changed as a
            side effect. (Christian Brabandt, closes #7533)
2020-12-28 15:41:41 +01:00
Bram Moolenaar
dace9f785f patch 8.2.2235: build failure with some Ruby versions
Problem:    Build failure with some Ruby versions.
Solution:   Adjust the code for Ruby 3.0. (Ozaki Kiichi, closes #7564)
2020-12-28 15:07:45 +01:00
Bram Moolenaar
3e112acc22 patch 8.2.2234: command line wildmenu test often fails with Unix GUI
Problem:    Command line wildmenu test often fails with Unix GUI.
Solution:   Skip the test where it is expected to fail.
2020-12-28 13:41:53 +01:00
Bram Moolenaar
17793ef23a patch 8.2.2233: cannot convert a byte index into a character index
Problem:    Cannot convert a byte index into a character index.
Solution:   Add charidx(). (Yegappan Lakshmanan, closes #7561)
2020-12-28 12:56:58 +01:00
Bram Moolenaar
9618a25b9c patch 8.2.2232: compiler error for falling through into next case
Problem:    Compiler error for falling through into next case.
Solution:   Move FALLTHROUGH below the #endif
2020-12-27 19:18:03 +01:00
Bram Moolenaar
e4862a0fe6 patch 8.2.2231: when "--remote file" is used "file" is not reloaded
Problem:    When "--remote file" is used "file" is not reloaded.
Solution:   When a :drop command is used for a file that is already displayed
            in a window and it has not been changed, check if it needs to be
            reloaded. (closes #7560)
2020-12-27 19:00:24 +01:00
Bram Moolenaar
179eb567b1 patch 8.2.2230: Vim9: insert completion runs into error
Problem:    Vim9: insert completion runs into error.
Solution:   Insert colon before range. (closes #7556)
2020-12-27 18:03:22 +01:00
Bram Moolenaar
39cb2dab18 patch 8.2.2229: build failure without the +eval feature
Problem:    build failure without the +eval feature.
Solution:   Add #ifdef.
2020-12-27 17:35:18 +01:00
Bram Moolenaar
4389f9cd00 patch 8.2.2228: Vim9: cannot use ":e #" because # starts a comment
Problem:    Vim9: cannot use ":e #" because # starts a comment.
Solution:   Support using %% instead of #.
2020-12-27 16:55:11 +01:00
Bram Moolenaar
e462f52db3 patch 8.2.2227: Vim9: recognizing lambda is too complicated
Problem:    Vim9: recognizing lambda is too complicated.
Solution:   Call compile_lambda() and check for NOTDONE.
2020-12-27 14:43:30 +01:00
Bram Moolenaar
7e3ee7823f patch 8.2.2226: Vim9: script test fails
Problem:    Vim9: script test fails.
Solution:   Add missing change.
2020-12-27 14:02:27 +01:00
Bram Moolenaar
a629495530 patch 8.2.2225: Vim9: error when using :import in legacy script twice
Problem:    Vim9: error when using :import in legacy script twice.
Solution:   Make it possible to redefine an import when reloading.
2020-12-27 13:39:50 +01:00
Bram Moolenaar
07a65d26e7 patch 8.2.2224: Vim9: crash if script reloaded with different variable type
Problem:    Vim9: crash if script reloaded with different variable type.
Solution:   Check the type when accessing the variable.
2020-12-26 20:09:15 +01:00
Bram Moolenaar
cdc40c43f1 patch 8.2.2223: Vim9: Reloading marks a :def function as deleted
Problem:    Vim9: Reloading marks a :def function as deleted.
Solution:   Clear the function contents but keep the index.
2020-12-26 17:43:08 +01:00
Bram Moolenaar
2b32700dab patch 8.2.2222: Vim9: cannot keep script variables when reloading
Problem:    Vim9: cannot keep script variables when reloading.
Solution:   Add the "noclear" argument to :vim9script.
2020-12-26 15:39:31 +01:00
Bram Moolenaar
b0ac4ea5e1 patch 8.2.2221: if <Down> is mapped on the command line 'wildchar' is inserted
Problem:    If <Down> is mapped on the command line 'wildchar' is inserted.
Solution:   Set KeyTyped when using 'wildchar'. (closes #7552)
2020-12-26 12:06:54 +01:00
Bram Moolenaar
e5730bdcea patch 8.2.2220: Vim9: memory leak when parsing nested parenthesis
Problem:    Vim9: memory leak when parsing nested parenthesis.
Solution:   Clear newargs.
2020-12-25 22:30:16 +01:00
Bram Moolenaar
7e3682068b patch 8.2.2219: Vim9: method call with expression not supported
Problem:    Vim9: method call with expression not supported.
Solution:   Implement expr->(expr)().
2020-12-25 21:56:57 +01:00
Bram Moolenaar
fc0e8f5c3e patch 8.2.2218: Vim9: failure if passing more args to lambda than expected
Problem:    Vim9: failure if passing more arguments to a lambda than expected.
Solution:   Only put expected arguments on the stack. (closes #7548)
2020-12-25 20:24:51 +01:00
Bram Moolenaar
20a762987e patch 8.2.2217: Vim9: command modifiers not restored in catch block
Problem:    Vim9: command modifiers not restored in catch block.
Solution:   Restore command modifiers. (closes #7542)
2020-12-25 19:47:24 +01:00
Bram Moolenaar
6e2c2c50ba patch 8.2.2216: Vim9: range with missing colon can be hard to spot
Problem:    Vim9: range with missing colon can be hard to spot.
Solution:   Include the start of the range in the error. (closes #7543)
2020-12-25 19:25:45 +01:00
Bram Moolenaar
56ce9ea3ea patch 8.2.2215: Vim9: not recognized in global command
Problem:    Vim9:  not recognized in global command.
Solution:   Skip over pattern. (issue #7541)
2020-12-25 18:35:29 +01:00
Bram Moolenaar
f8103f274e patch 8.2.2214: ":e#" does not give a warning for missing white space
Problem:    ":e#" does not give a warning for missing white space.
Solution:   Adjust the check for white space. (closes #7545)
2020-12-25 17:36:27 +01:00
Bram Moolenaar
7cfcd0c99c patch 8.2.2213: checking white space around -> is not backwards compatible
Problem:    Checking white space around -> is not backwards compatible.
Solution:   Only check white space around =>.
2020-12-25 16:11:53 +01:00
Bram Moolenaar
c754b4cc98 patch 8.2.2212: Vim9: lambda with => does not work at the script level
Problem:    Vim9: lambda with => does not work at the script level.
Solution:   Make it work.
2020-12-25 15:24:23 +01:00
Bram Moolenaar
b2f9e0e2c5 patch 8.2.2211: MS-Windows: can't load Python dll if not in the path
Problem:    MS-Windows: can't load Python dll if not in the path.
Solution:   Use the InstallPath registry entry. (Kelvin Lee, closes #7540)
2020-12-25 13:52:37 +01:00
Bram Moolenaar
3868f59466 patch 8.2.2210: Vim9: allocating a type to set TTFLAG_BOOL_OK
Problem:    Vim9: allocating a type to set TTFLAG_BOOL_OK.
Solution:   Add t_number_bool.
2020-12-25 13:20:41 +01:00
Bram Moolenaar
9e68c32563 patch 8.2.2209: Vim9: return type of => lambda not parsed
Problem:    Vim9: return type of => lambda not parsed.
Solution:   Parse and use the return type.
2020-12-25 12:38:04 +01:00
Bram Moolenaar
4aab88d919 patch 8.2.2208: Vim9: after reloading a script variable index may be invalid
Problem:    Vim9: after reloading a script variable index may be invalid.
Solution:   When the sequence number doesn't match give an error for using a
            script-local variable from a compiled function. (closes #7547)
2020-12-24 21:56:41 +01:00
Bram Moolenaar
38455a9213 patch 8.2.2207: illegal memory access if popup menu items are changed
Problem:    Illegal memory access if popup menu items are changed while the
            menu is visible. (Tomáš Janoušek)
Solution:   Make a copy of the text. (closes #7537)
2020-12-24 18:39:02 +01:00
Bram Moolenaar
0261a1aeeb Tweak the style a bit. 2020-12-24 17:41:12 +01:00
Bram Moolenaar
c139aa8a2b Remove table, it doesn't work 2020-12-24 17:35:41 +01:00
Bram Moolenaar
b04ddb5b04 Attempt to fix markdown in table cell. 2020-12-24 17:25:06 +01:00
Bram Moolenaar
b54f1202b3 Attempt to align the logo without a markdown table. 2020-12-24 17:20:24 +01:00
Bram Moolenaar
4941b5effd patch 8.2.2206: :exe command line completion only works for first argument
Problem:    :exe command line completion only works for first argument.
Solution:   Skip over text if more is following. (closes #7546)
2020-12-24 17:15:53 +01:00
Bram Moolenaar
6dd41b1d57 patch 8.2.2205: Vim9: memory leak when parsing lambda fails
Problem:    Vim9: memory leak when parsing lambda fails.
Solution:   Clear growarrays.
2020-12-24 16:06:00 +01:00
Bram Moolenaar
65c4415276 patch 8.2.2204: Vim9: using -> both for method and lambda is confusing
Problem:    Vim9: using -> both for method and lambda is confusing.
Solution:   Use => for lambda in :def function.
2020-12-24 15:14:01 +01:00
Bram Moolenaar
b34f337472 patch 8.2.2203: Moodle gift files are not recognized
Problem:    Moodle gift files are not recognized.
Solution:   Add a filetype pattern. (Delim Temizer)
2020-12-24 13:33:46 +01:00
Bram Moolenaar
16204962c7 patch 8.2.2202: write file test still fails on MS-Windows
Problem:    Write file test still fails on MS-Windows.
Solution:   Set fileformat with the :edit command
2020-12-23 22:40:11 +01:00
Bram Moolenaar
bd318559cf patch 8.2.2201: write file test fails on MS-Windows
Problem:    Write file test fails on MS-Windows.
Solution:   Force edit after setting 'fileformat'.
2020-12-23 20:55:15 +01:00
Bram Moolenaar
27bf7af9d0 patch 8.2.2200: Vim9: lambda without white space around -> is confusing
Problem:    Vim9: lambda without white space around -> is confusing.
Solution:   Require white space in a :def funtion. (issue #7503)
2020-12-23 20:27:31 +01:00
Bram Moolenaar
b3c8b1d254 patch 8.2.2199: first write after setting 'eol' does not have NL added
Problem:    First write after setting 'eol' does not have NL added. (Tomáš
            Janoušek)
Solution:   Only use b_no_eol_lnum when doing a binary write. (closes #7535)
2020-12-23 18:54:57 +01:00
Bram Moolenaar
23999d799c patch 8.2.2198: ml_get error when resizing window and using text property
Problem:    ml_get error when resizing window and using text property.
Solution:   Validate botline of the right window. (closes #7528)
2020-12-23 14:36:00 +01:00
Bram Moolenaar
4072ba571b Update runtime files. 2020-12-23 13:56:35 +01:00
Bram Moolenaar
9f63a65f22 patch 8.2.2197: assert arguments order reversed
Problem:    Assert arguments order reversed.
Solution:   Swap the arguments. (Christian Brabandt, closes #7531)
2020-12-23 12:50:20 +01:00
Bram Moolenaar
abcbb0e9ad patch 8.2.2196: :version output has extra spaces in compile and link command
Problem:    :version output has extra spaces in compile and link command.
Solution:   Adjust QUOTESED. (closes #7505)
2020-12-23 12:33:42 +01:00
Bram Moolenaar
1dcf55d4f1 patch 8.2.2195: failing tests for :const
Problem:    Failing tests for :const.
Solution:   Add missing check for ASSIGN_FINAL.
2020-12-22 22:07:30 +01:00
Bram Moolenaar
89b474dd4f patch 8.2.2194: Vim9: cannot use :const or :final at the script level
Problem:    Vim9: cannot use :const or :final at the script level.
Solution:   Support using :const and :final. (closes #7526)
2020-12-22 21:19:39 +01:00
Bram Moolenaar
3bdc90b7df patch 8.2.2193: Vim9: can change constant in :def function
Problem:    Vim9: can change constant in :def function.
Solution:   Check if a variable is locked. (issue #7526)
2020-12-22 20:35:40 +01:00
Bram Moolenaar
e5492609b3 patch 8.2.2192: Codecov on github actions fails
Problem:    Codecov on github actions fails.
Solution:   Revert to codecov script. (Ozaki Kiichi, closes #7529)
2020-12-22 19:05:33 +01:00
Bram Moolenaar
58a52f215a patch 8.2.2191: Vim9: using wrong name with lambda in nested function
Problem:    Vim9: using wrong name with lambda in nested function.
Solution:   Copy the lambda name earlier. (closes #7525)
2020-12-22 18:56:55 +01:00
Bram Moolenaar
077a42318c patch 8.2.2190: Vim9: crash when compiled with EXITFREE
Problem:    Vim9: crash when compiled with EXITFREE.
Solution:   Check that df_ufunc is not NULL.
2020-12-22 18:33:27 +01:00
Bram Moolenaar
032a2d050b patch 8.2.2189: cannot repeat a command that uses the small delete register
Problem:    Cannot repeat a command that uses the small delete register.
Solution:   Store the register name instead of the contents. (Christian
            Brabandt, closes #7527)
2020-12-22 17:59:35 +01:00
Bram Moolenaar
cd45ed03bf patch 8.2.2188: Vim9: crash when calling global function from :def function
Problem:    Vim9: crash when calling global function from :def function.
Solution:   Set the outer context.  Define the partial for the context on the
            original function. Use a refcount to keep track of which ufunc is
            using a dfunc. (closes #7525)
2020-12-22 17:35:54 +01:00
Bram Moolenaar
07761a3b96 patch 8.2.2187: Python 3 test fails sometimes
Problem:    Python 3 test fails sometimes. (Christian Brabandt)
Solution:   Accept two SystemError messages.
2020-12-22 12:50:10 +01:00
Bram Moolenaar
5b3d1bb0f5 patch 8.2.2186: Vim9: error when using 'opfunc'
Problem:    Vim9: error when using 'opfunc'.
Solution:   Do not expect a return value from 'opfunc'. (closes #7510)
2020-12-22 12:20:08 +01:00
Bram Moolenaar
c882e4d169 Add missing change to version.c 2020-12-22 12:18:11 +01:00
Bram Moolenaar
1cfb9bb5c0 patch 8.2.2185: BufUnload is not triggered for the quickfix dummy buffer
Problem:    BufUnload is not triggered for the quickfix dummy buffer.
Solution:   Do trigger BufUnload. (Pontus Leitzler,closes #7518, closes #7517)
            Fix white space around "=".
2020-12-22 11:40:45 +01:00
Bram Moolenaar
9a963377b4 patch 8.2.2184: Vim9: no error when using "2" for a line number
Problem:    Vim9: no error when using "2" for a line number.
Solution:   Give an error message if the line number is invalid. (closes #7492)
2020-12-21 21:58:46 +01:00
Bram Moolenaar
60f63100b9 patch 8.2.2183: Vim9: value of 'edcompatible' and 'gdefault' are used
Problem:    Vim9: value of 'edcompatible' and 'gdefault' are used.
Solution:   Ignore these deprecated options in Vim9 script. (closes #7508)
2020-12-21 20:32:43 +01:00
Bram Moolenaar
f4e2099e39 patch 8.2.2182: Vim9: value of 'magic' is still relevant
Problem:    Vim9: value of 'magic' is still relevant.
Solution:   Always behave like 'magic' is on in Vim9 script (closes #7509)
2020-12-21 19:59:08 +01:00
Bram Moolenaar
a3d10a508c patch 8.2.2181: valgrind warnings for using uninitialized value
Problem:    Valgrind warnings for using uninitialized value.
Solution:   Do not use "start" or "end" unless there is a match.
2020-12-21 18:24:00 +01:00
Bram Moolenaar
6f17a3f023 patch 8.2.2180: Vim9: test for error after error is flaky
Problem:    Vim9: test for error after error is flaky.
Solution:   Wait for job to finish instead of a fixed delay.
2020-12-21 18:11:24 +01:00
Bram Moolenaar
4f5e397756 patch 8.2.2179: Vim9: crash when indexing a dict with a number
Problem:    Vim9: crash when indexing a dict with a number.
Solution:   Add ISN_STOREINDEX. (closes #7513)
2020-12-21 17:30:50 +01:00
Bram Moolenaar
2e2f52a4a0 patch 8.2.2178: Python 3: non-utf8 character cannot be handled
Problem:    Python 3: non-utf8 character cannot be handled.
Solution:   Change the string decode. (Björn Linse, closes #1053)
2020-12-21 16:03:02 +01:00
Bram Moolenaar
ef2dff52de patch 8.2.2177: pattern "^" does not match if first character is combining
Problem:    Pattern "^" does not match if the first character in the line is
            combining. (Rene Kita)
Solution:   Do accept a match at the start of the line. (closes #6963)
2020-12-21 14:54:32 +01:00
Bram Moolenaar
6a78f32844 patch 8.2.2176: crash with a sequence of fold commands
Problem:    Crash with a sequence of fold commands.
Solution:   Bail out when there are no folds at all.  Add a test (Dominique
            Pellé) (closes #7515)
2020-12-21 14:01:41 +01:00
Bram Moolenaar
9aff970204 patch 8.2.2175: github actions: clang-11 handling suboptimal
Problem:    Github actions: clang-11 handling suboptimal.
Solution:   Separate step of installing clang-11. Get ubuntu release name
            dynamically. (Ozaki Kiichi, closes #7514)
2020-12-21 13:37:28 +01:00
Bram Moolenaar
8c9d98a8af patch 8.2.2174: Mac version doesn't specify the CPU architecture
Problem:    Mac version doesn't specify the CPU architecture.
Solution:   Add "arm64" or "x86_64". (Yee Cheng Chin, closes #7519)
2020-12-21 13:05:57 +01:00
Bram Moolenaar
52c124d330 patch 8.2.2173: Vim9: get internal error when assigning to undefined variable
Problem:    Vim9: get internal error when assigning to undefined variable.
Solution:   Add error message. (closes #7475)
2020-12-20 21:43:35 +01:00
Bram Moolenaar
5082471f91 patch 8.2.2172: Vim9: number of arguments is not always checked
Problem:    Vim9: number of arguments is not always checked. (Yegappan
            Lakshmanan)
Solution:   Check number of arguments when calling function by name.
2020-12-20 21:10:17 +01:00
Bram Moolenaar
61e07b2394 patch 8.2.2171: valgrind warning for using uninitialized value
Problem:    Valgrind warning for using uninitialized value.
Solution:   Do not use "startp" or "endp" unless there is a match.
2020-12-20 17:59:53 +01:00
Bram Moolenaar
f112f30a82 patch 8.2.2170: Vim9: a global function defined in a :def function fails
Problem:    Vim9: a global function defined in a :def function fails if it
            uses the context.
Solution:   Create a partial to store the closure context. (see #7410)
2020-12-20 17:47:52 +01:00
Bram Moolenaar
090728ad4d patch 8.2.2169: Vim9: test leaves file behind
Problem:    Vim9: test leaves file behind.
Solution:   Rename script files. (Dominique Pellé, closes #7511)
            Use try/finally.
2020-12-20 15:43:31 +01:00
Bram Moolenaar
d24602f43c patch 8.2.2168: Vim9: error for assigning to dict of dict
Problem:    Vim9: error for assigning to dict of dict.
Solution:   Remember the destination type. (closes #7506)
2020-12-20 15:20:56 +01:00
Bram Moolenaar
d88dc4d4e9 patch 8.2.2167: Vim9: assign test fails
Problem:    Vim9: assign test fails. (Elimar Riesebieter)
Solution:   Adjust the test for dict assignment.
2020-12-20 14:49:42 +01:00
Bram Moolenaar
d0a1dee3f1 patch 8.2.2166: auto format doesn't work when deleting text
Problem:    Auto format doesn't work when deleting text.
Solution:   Make "x" trigger auto format. (closes #7504)
2020-12-20 13:07:48 +01:00
Bram Moolenaar
8f22f5c3aa patch 8.2.2165: Vim9: assignment to dict member does not work
Problem:    Vim9: assignment to dict member does not work.
Solution:   Fix recognizing dict member. (closes #7484)
2020-12-19 22:10:13 +01:00
Bram Moolenaar
17f700ac8b patch 8.2.2164: Vim9: autoload function doesn't work in uppercased script
Problem:    Vim9: autoload function doesn't work in script that starts with
            an upper case letter.
Solution:   Check for the autoload character. (closes #7502)
2020-12-19 21:23:42 +01:00
Bram Moolenaar
13656f02e4 patch 8.2.2163: crash when discarded exception is the current exception
Problem:    Crash when discarded exception is the current exception.
Solution:   Compare the execption with current_exception. (closes #7499)
2020-12-19 17:55:54 +01:00
Bram Moolenaar
03290b8444 patch 8.2.2162: Vim9: Cannot load or store autoload variables
Problem:    Vim9: Cannot load or store autoload variables.
Solution:   Add ISN_LOADAUTO and ISN_STOREAUTO. (closes #7485)
2020-12-19 16:30:44 +01:00
Bram Moolenaar
1f33e0a7c4 patch 8.2.2161: arguments -T and -x not tested yet
Problem:    Arguments -T and -x not tested yet.
Solution:   Add a test. (Dominique Pellé, closes #7490
2020-12-19 13:32:07 +01:00
Bram Moolenaar
8e7d6223f6 patch 8.2.2160: various typos
Problem:    Various typos.
Solution:   Fix spelling mistakes. (closes #7494)
2020-12-18 19:49:56 +01:00
Bram Moolenaar
3beaf9cd8e patch 8.2.2159: Vim9: when declaring a list it is not allocated yet
Problem:    Vim9: when declaring a list it is not allocated yet, causing a
            following extend() to fail.
Solution:   When fetching a variable value for a list or dict that is null
            allocate the list or dict, so it can be used. (closes #7491)
2020-12-18 17:23:14 +01:00
Bram Moolenaar
6e562fcc07 patch 8.2.2158: CI on cirrus times out, coveralls doesn't always run
Problem:    CI on cirrus times out, coveralls doesn't always run.
Solution:   Set timeout to 20 minutes. Adjust condition. (closes #7493)
2020-12-18 16:29:25 +01:00
Bram Moolenaar
9aed729fe9 patch 8.2.2157: Vim9: can delete a Vim9 script variable from a function
Problem:    Vim9: can delete a Vim9 script variable from a function.
Solution:   Check the variable is defined in Vim9 script. (closes #7483)
2020-12-18 15:38:00 +01:00
Bram Moolenaar
b5b77378bc patch 8.2.2156: Github actions run on pusing a tag
Problem:    Github actions run on pusing a tag.
Solution:   Don't run CI on tag push. Omit coveralls on pull-request.
            (Ozaki Kiichi, closes #7489)
2020-12-18 13:31:31 +01:00
Bram Moolenaar
18f69229c5 patch 8.2.2155: warning from Github actions for code analysis
Problem:    Warning from Github actions for code analysis.
Solution:   Remove the "git checkout HEAD^2" block.
2020-12-18 13:15:20 +01:00
Bram Moolenaar
0353f56ddb patch 8.2.2154: popupwin test for terminal buffer fails sometimes
Problem:    Popupwin test for terminal buffer fails sometimes.
Solution:   Wait for the prompt to appear.
2020-12-17 22:27:38 +01:00
Bram Moolenaar
b125b535bb patch 8.2.2153: popupwin test for latin1 still fails sometimes
Problem:    Popupwin test for latin1 still fails sometimes.
Solution:   Wait for the "cat" command to finish.
2020-12-17 21:56:09 +01:00
Bram Moolenaar
8dd46e72cf patch 8.2.2152: screenpos() does not include the WinBar offset
Problem:    screenpos() does not include the WinBar offset.
Solution:   Use W_WINROW() instead of directly using w_window. (closes #7487)
2020-12-17 21:35:29 +01:00
Bram Moolenaar
a79a8944da patch 8.2.2151: $dir not expanded when configure checks for moonjit
Problem:    $dir not expanded when configure checks for moonjit.
Solution:   Use double quotes instead of single quotes. (closes #7478)
2020-12-17 20:50:25 +01:00
Bram Moolenaar
8ea05de6aa patch 8.2.2150: Github actions CI isn't used for all available platforms
Problem:    Github actions CI isn't used for all available platforms.
Solution:   Update the github workflows. (Ozaki Kiichi, closes #7433)
2020-12-17 20:27:26 +01:00
Bram Moolenaar
4c5bdb99ad patch 8.2.2149: popupwin test for latin1 sometimes fails
Problem:    Popupwin test for latin1 sometimes fails.
Solution:   Wait for the script to finish.
2020-12-17 17:45:59 +01:00
Bram Moolenaar
1c0aa97827 patch 8.2.2148: Vim9: crash when user command doesn't match
Problem:    Vim9: crash when user command doesn't match.
Solution:   Adjust command index. (closes #7479)
2020-12-16 21:43:54 +01:00
Bram Moolenaar
530bed993e patch 8.2.2147: quickfix window title not updated in all tab pages
Problem:    Quickfix window title not updated in all tab pages.
Solution:   Update the quickfix window title in all tab pages. (Yegappan
            Lakshmanan, closes #7481, closes #7466)
2020-12-16 21:02:56 +01:00
Bram Moolenaar
9987fb0b4b patch 8.2.2146: Vim9: automatic conversion of number to string for dict key
Problem:    Vim9: automatic conversion of number to string for dict key.
Solution:   Do not convert number to string. (closes #7474)
2020-12-15 21:41:56 +01:00
Bram Moolenaar
399ea8108c patch 8.2.2145: Vim9: concatenating lists does not adjust type of result
Problem:    Vim9: concatenating lists does not adjust type of result.
Solution:   When list member types differ use "any" member type.
            (closes #7473)
2020-12-15 21:28:57 +01:00
Bram Moolenaar
025cb1ca86 patch 8.2.2144: Vim9: some corner cases not tested
Problem:    Vim9: some corner cases not tested.
Solution:   Add a few tests.
2020-12-14 18:31:27 +01:00
Bram Moolenaar
ec792290eb patch 8.2.2143: Vim9: dead code in compiling :unlet
Problem:    Vim9: dead code in compiling :unlet.
Solution:   Don't check for "!" a second time.
2020-12-13 21:26:56 +01:00
Bram Moolenaar
fffdf4754f patch 8.2.2142: memory leak when heredoc is not terminated
Problem:    Memory leak when heredoc is not terminated.
Solution:   Free heredoc_trimmed.
2020-12-13 21:16:55 +01:00
Bram Moolenaar
8143a53c53 patch 8.2.2141: a user command with try/catch may not catch an expression error
Problem:    A user command with try/catch may not catch an expression error.
Solution:   When an expression fails check for following "|". (closes #7469)
2020-12-13 20:26:29 +01:00
Bram Moolenaar
2a3cd3af45 patch 8.2.2140: build failure with tiny features
Problem:    Build failure with tiny features.
Solution:   Add #ifdef.
2020-12-13 19:22:27 +01:00
Bram Moolenaar
acbae18df5 patch 8.2.2139: Vim9: unreachable code in assignment
Problem:    Vim9: unreachable code in assignment.
Solution:   Don't check "new_local" when "has_index" is set.  Add test for
            wrong type of list index.
2020-12-13 18:44:43 +01:00
Bram Moolenaar
b5b9480ee9 patch 8.2.2138: Vim9: "exit_cb" causes Vim to exit
Problem:    Vim9: "exit_cb" causes Vim to exit.
Solution:   Require white space after a command in Vim9 script. (closes #7467)
            Also fix that Vim9 style heredoc was not always recognized.
2020-12-13 17:50:20 +01:00
Bram Moolenaar
e498429087 patch 8.2.2137: Vim9: :echo and :execute give error for empty argument
Problem:    Vim9: :echo and :execute give error for empty argument.
Solution:   Ignore an empty argument. (closes #7468)
2020-12-13 14:19:25 +01:00
Bram Moolenaar
c530852315 patch 8.2.2136: Vim9: Using uninitialized variable
Problem:    Vim9: Using uninitialized variable.
Solution:   Initialize "len" to zero.  Clean up fnamemodify().
2020-12-13 12:25:35 +01:00
Bram Moolenaar
93f82cbee5 patch 8.2.2135: Vim9: #{ still seen as start of dict in some places
Problem:    Vim9: #{ still seen as start of dict in some places.
Solution:   Remove check for { after #. (closes #7456)
2020-12-12 21:25:56 +01:00
Bram Moolenaar
57f799e6a4 patch 8.2.2134: Vim9: get E1099 when autocmd triggered in builtin function
Problem:    Vim9: get E1099 when autocmd triggered in builtin function.
Solution:   Check that did_emsg increased instead of checking that it changed.
            (closes #7448)
2020-12-12 20:42:19 +01:00
Bram Moolenaar
2a9d5d386b patch 8.2.2133: Vim9: checking for a non-empty string is too strict
Problem:    Vim9: checking for a non-empty string is too strict.
Solution:   Check for any string. (closes #7447)
2020-12-12 18:58:40 +01:00
Bram Moolenaar
3ae50c775c patch 8.2.2132: padding not drawn properly for popup window with title
Problem:    Padding not drawn properly for popup window with title.
Solution:   Draw the padding below the title. (closes #7460)
2020-12-12 18:18:06 +01:00
Bram Moolenaar
709664cca0 patch 8.2.2131: Vim9: crash when lambda uses same var as assignment
Problem:    Vim9: crash when lambda uses same var as assignment.
Solution:   Do not let lookup_local change lv_from_outer, make a copy.
            (closes #7461)
2020-12-12 14:33:41 +01:00
Bram Moolenaar
cc2335896b patch 8.2.2130: Insert mode completion messages end up in message history
Problem:    Insert mode completion messages end up in message history.
Solution:   Set msg_hist_off. (closes #7452
2020-12-12 13:32:07 +01:00
Bram Moolenaar
0ea7421ae6 patch 8.2.2129: MS-Windows: Checking if a file name is absolute is slow
Problem:    MS-Windows: Checking if a file name is absolute is slow.
Solution:   Do not use mch_FullName(). (closes #7033)
2020-12-11 20:10:50 +01:00
Bram Moolenaar
100118c73a patch 8.2.2128: there is no way to do something on CTRL-Z
Problem:    There is no way to do something on CTRL-Z.
Solution:   Add VimSuspend and VimResume autocommand events. (closes #7450)
2020-12-11 19:30:34 +01:00
Bram Moolenaar
1b884a0053 Update runtime files. 2020-12-10 21:11:27 +01:00
Bram Moolenaar
70249ee831 patch 8.2.2127: Vim9: executing user command from Vim9 script not tested
Problem:    Vim9: executing user command defined in Vim9 script not tested.
Solution:   Add a test.
2020-12-10 21:01:30 +01:00
Bram Moolenaar
0e12140550 patch 8.2.2126: Ruby: missing function prototype
Problem:    Ruby: missing function prototype.
Solution:   Add the prototype.
2020-12-10 20:50:34 +01:00
Bram Moolenaar
8f1bf2ef78 patch 8.2.2125: Vim9: leaking memory
Problem:    Vim9: leaking memory.
Solution:   Free the saved 'cpo' value.
2020-12-10 20:21:24 +01:00
Bram Moolenaar
08597875b2 patch 8.2.2124: Vim9: a range cannot be computed at runtime
Problem:    Vim9: a range cannot be computed at runtime.
Solution:   Add the ISN_RANGE instruction.
2020-12-10 19:43:40 +01:00
Bram Moolenaar
d356fc65d2 patch 8.2.2123: after using a complete popup the buffer is listed
Problem:    After using a complete popup the buffer is listed. (Boris
            Staletic)
Solution:   Make the buffer unlisted.
2020-12-09 18:13:44 +01:00
Bram Moolenaar
9ec7026f24 patch 8.2.2122: Vim9: crash when sourcing vim9script early
Problem:    Vim9: crash when sourcing vim9script early.
Solution:   Use set_option_value() instead of setting p_cpo directly.
            (closes #7441)
2020-12-09 17:16:59 +01:00
Bram Moolenaar
a7a691cc14 patch 8.2.2121: internal error when using \ze before \zs in a pattern
Problem:    Internal error when using \ze before \zs in a pattern.
Solution:   Check the end is never before the start. (closes #7442)
2020-12-09 16:36:04 +01:00
Bram Moolenaar
730677a0da patch 8.2.2120: not all Perl functionality is tested
Problem:    Not all Perl functionality is tested.
Solution:   Add a few more test cases. (Dominique Pellé, closes #7440)
2020-12-09 16:05:45 +01:00
Bram Moolenaar
7988a6f0e9 patch 8.2.2119: GTK3: status line background color is wrong
Problem:    GTK3: status line background color is wrong.
Solution:   Don't change the code for earlier GTK3 versions. (closes #7444)
2020-12-09 15:53:27 +01:00
Bram Moolenaar
f46bf5204c patch 8.2.2118: dead code in the job support
Problem:    Dead code in the job support. (Dominique Pellé)
Solution:   Define USE_ARGV before checking for it.
2020-12-09 13:16:13 +01:00
Bram Moolenaar
7bb4e74c38 patch 8.2.2117: some functions use any value as a string
Problem:    Some functions use any value as a string.
Solution:   Check that the value is a non-empty string.
2020-12-09 12:41:50 +01:00
Bram Moolenaar
2c78a772fd patch 8.2.2116: MS-Windows GUI: test for 'guifont' is incomplete
Problem:    MS-Windows GUI: test for 'guifont' is incomplete.
Solution:   Set 'renderoptions'. (Christian Brabandt)
2020-12-09 12:01:03 +01:00
Bram Moolenaar
7257af477b patch 8.2.2115: Vim9: some errors not tested for; dead code
Problem:    Vim9: some errors not tested for; dead code.
Solution:   Add a test.  Remove dead code.
2020-12-08 22:08:51 +01:00
Bram Moolenaar
61265b4000 patch 8.2.2114: Vim9: unreachable code in assignment
Problem:    Vim9: unreachable code in assignment.
Solution:   Remove impossible condition and code.
2020-12-08 21:53:28 +01:00
Bram Moolenaar
1b3e0727ce patch 8.2.2113: MS-Windows GUI: crash after using ":set guifont=" four times
Problem:    MS-Windows GUI: crash after using ":set guifont=" four times.
Solution:   Check for NULL pointer. (Ken Takata, closes #7434)
2020-12-08 21:12:40 +01:00
Bram Moolenaar
ac665c24c9 patch 8.2.2112: running tests may leave some files behind
Problem:    Running tests may leave some files behind.
Solution:   Delete the right files.  Fix a few typos. (Dominique Pellé,
            closes #7436
2020-12-08 20:39:15 +01:00
Bram Moolenaar
023fd5d213 patch 8.2.2111: GTK: menu background is the same color as the main window
Problem:    GTK: Menu background is the same color as the main window.
Solution:   Fix white space around the test in another way. (closes #7437,
            closes #7427)
2020-12-08 20:31:16 +01:00
Bram Moolenaar
8e1cbb55c3 patch 8.2.2110: cannot use ":shell" when reading from stdin
Problem:    Cannot use ":shell" when reading from stdin. (Gary Johnson)
Solution:   Revert patch 8.2.1833.
2020-12-08 19:36:21 +01:00
Bram Moolenaar
8a3da6a368 patch 8.2.2109: "vim -" does not work well when modifyOtherKeys is enabled
Problem:    "vim -" does not work well when modifyOtherKeys is enabled and a
            shell command is executed on startup.
Solution:   Only change modifyOtherKeys when executing a shell command in raw
            mode.
2020-12-08 19:18:37 +01:00
Bram Moolenaar
083966f671 patch 8.2.2108: Vim9: no test to check for :let error
Problem:    Vim9: no test to check for :let error.
Solution:   Add a test.  Rename tests from _let_ to _var_.
2020-12-08 11:29:40 +01:00
Bram Moolenaar
8ff16e0183 patch 8.2.2107: Vim9: some errors not tested
Problem:    Vim9: some errors not tested.
Solution:   Add tests.  Fix getting the right error.
2020-12-07 21:49:52 +01:00
Bram Moolenaar
b237ae7b83 patch 8.2.2106: TOML files are not recognized
Problem:    TOML files are not recognized.
Solution:   Match *.toml. (issue #7432)
2020-12-07 18:05:02 +01:00
Bram Moolenaar
7b130b9738 patch 8.2.2105: sound test is a bit flaky
Problem:    Sound test is a bit flaky.
Solution:   Use WaitForAssert(). (Dominique Pellé, closes #7429)
2020-12-06 21:43:44 +01:00
Bram Moolenaar
d5a986f460 patch 8.2.2104: build problem with Ruby 2.7
Problem:    Build problem with Ruby 2.7.
Solution:   Adjust function declarations. (Ozaki Kiichi, closes #7430)
2020-12-06 21:11:31 +01:00
Bram Moolenaar
41d6196e30 patch 8.2.2103: Vim9: unreachable code
Problem:    Vim9: unreachable code.
Solution:   Remove the code to prepend s: to the variable name
2020-12-06 20:12:43 +01:00
Bram Moolenaar
5402175815 patch 8.2.2102: Vim9: not all error messages tested
Problem:    Vim9: not all error messages tested.
Solution:   Add a few test cases.
2020-12-06 18:50:36 +01:00
Bram Moolenaar
8bb0f5472c patch 8.2.2101: Vim9: memory leak when literal dict has an error
Problem:    Vim9: memory leak when literal dict has an error and when an
            expression is not complete.
Solution:   Clear the typval and the growarray.
2020-12-06 16:03:55 +01:00
Bram Moolenaar
67322bf74a patch 8.2.2100: insufficient testing for function range and dict
Problem:    Insufficient testing for function range and dict.
Solution:   Add a few tests. (Dominique Pellé, closes #7428)
2020-12-06 15:03:19 +01:00
Bram Moolenaar
918a424917 patch 8.2.2099: Vim9: some checks are not tested
Problem:    Vim9: some checks are not tested.
Solution:   Add a few more tests.  Give better error messages.
2020-12-06 14:37:08 +01:00
Bram Moolenaar
08cf0c0d82 patch 8.2.2098: Vim9: function argument of sort() and map() not tested
Problem:    Vim9: function argument of sort() and map() not tested.
Solution:   Add a couple of tests.
2020-12-05 21:47:06 +01:00
Bram Moolenaar
56602ba153 patch 8.2.2097: Vim9: using :silent! when calling a function prevents abort
Problem:    Vim9: using :silent! when calling a function prevents abortng that
            function.
Solution:   Add emsg_silent_def and did_emsg_def.
2020-12-05 21:22:08 +01:00
Bram Moolenaar
f665e97ffa patch 8.2.2096: Vim9: command modifiers not restored after assignment
Problem:    Vim9: command modifiers not restored after assignment.
Solution:   Jump to nextline instead of using continue.
2020-12-05 19:17:16 +01:00
Bram Moolenaar
4029cabbe7 patch 8.2.2095: Vim9: crash when failed dict member is followed by concat
Problem:    Vim9: crash when failed dict member is followed by concatenation.
Solution:   Remove the dict from the stack. (closes #7416)
2020-12-05 18:13:27 +01:00
Bram Moolenaar
d0fe620cbb patch 8.2.2094: when an expression fails getting next command may be wrong
Problem:    When an expression fails getting the next command may be wrong.
Solution:   Do not check for a next command after :eval fails. (closes #7415)
2020-12-05 17:11:12 +01:00
Bram Moolenaar
c0913d023b patch 8.2.2093: Vim9: script test sometimes fails
Problem:    Vim9: script test sometimes fails.
Solution:   Do not find a script variable by its typval if the name was
            cleared.
2020-12-05 14:44:37 +01:00
Bram Moolenaar
2d870f8d9e patch 8.2.2092: Vim9: unpredictable errors for script tests
Problem:    Vim9: unpredictable errors for script tests.
Solution:   Use a different script file name for each run.
2020-12-05 13:41:01 +01:00
Bram Moolenaar
29d2f45c88 patch 8.2.2091: MS-Windows: build warnings
Problem:    MS-Windows: build warnings.
Solution:   Add a #pragma to suppress the deprecation warning. (Ken Takata)
            Avoid using a non-ASCII character. (closes #7421)
2020-12-04 19:42:52 +01:00
Bram Moolenaar
c5e6a7179d patch 8.2.2090: Vim9: dict does not accept a key in quotes
Problem:    Vim9: dict does not accept a key in quotes.
Solution:   Recognize a key in single or double quotes.
2020-12-04 19:12:14 +01:00
Bram Moolenaar
6cd42db9dc patch 8.2.2089: libvterm test fails to build on Mac
Problem:    Libvterm test fails to build on Mac.
Solution:   Adjust configure to remove a space between -L and the path that
            follows.
2020-12-04 18:09:54 +01:00
Bram Moolenaar
f6c177ab3a patch 8.2.2088: Vim9: script test sometimes fails
Problem:    Vim9: script test sometimes fails.
Solution:   Unlet variables.
2020-12-04 17:38:00 +01:00
Bram Moolenaar
21e51221f2 patch 8.2.2087: Vim9: memory leak when statement is truncated
Problem:    Vim9: memory leak when statement is truncated.
Solution:   Increment the number of local variables.
2020-12-04 12:43:29 +01:00
Bram Moolenaar
476268c387 patch 8.2.2086: libvterm tests are only run on Linux
Problem:    Libvterm tests are only run on Linux.
Solution:   Use static libraries. (Ozaki Kiichi, closes #7419)
2020-12-03 21:24:07 +01:00
Bram Moolenaar
c0d670ce16 patch 8.2.2085: Qt translation file is recognized as typescript
Problem:    Qt translation file is recognized as typescript.
Solution:   Check the first line for "<?xml". (closes #7418)
2020-12-03 21:08:37 +01:00
Bram Moolenaar
0684e36a7e patch 8.2.2084: CTRL-V U doesn't work to enter a Unicode character
Problem:    CTRL-V U doesn't work to enter a Unicode character when
            modifyOtherKeys is effective. (Ken Takata)
Solution:   Add a flag to get_literal() for the shift key. (closes #7413)
2020-12-03 19:54:42 +01:00
Bram Moolenaar
af0df47a76 patch 8.2.2083: Vim9: crash when using ":silent!" and getting member fails
Problem:    Vim9: crash when using ":silent!" and getting member fails.
Solution:   Jump to on_fatal_error. (closes #7412)
2020-12-02 20:51:22 +01:00
Bram Moolenaar
e0de171ecd patch 8.2.2082: Vim9: can still use the depricated #{} dict syntax
Problem:    Vim9: can still use the depricated #{} dict syntax.
Solution:   Remove support for #{} in Vim9 script. (closes #7406, closes #7405)
2020-12-02 17:36:54 +01:00
Bram Moolenaar
7f76494aac patch 8.2.2081: Vim9: cannot handle a linebreak after "=" in assignment
Problem:    Vim9: cannot handle a linebreak after "=" in assignment.
Solution:   Skip over linebreak. (closes #7407)
2020-12-02 15:11:18 +01:00
Bram Moolenaar
ea87069d78 patch 8.2.2080: Vim9: no proper error message for using s:var in for loop
Problem:    Vim9: no proper error message for using s:var in for loop.
Solution:   Give a specific error.
2020-12-02 14:24:30 +01:00
Bram Moolenaar
38bd8de551 patch 8.2.2079: Vim9: cannot put a linebreak before or after "in" of ":for"
Problem:    Vim9: cannot put a linebreak before or after "in" of ":for".
Solution:   Skip over linebreak.
2020-12-02 13:23:36 +01:00
Bram Moolenaar
1cbfc9914d patch 8.2.2078: illegal memory access when using :print on invalid text
Problem:    Illegal memory access when using :print on invalid text. (Dhiraj
            Mishra)
Solution:   Check for more composing characters than supported. (closes #7399)
2020-12-02 12:37:37 +01:00
Bram Moolenaar
a452b808b4 patch 8.2.2077: build failure with small features
Problem:    Build failure with small features.
Solution:   Add #ifdef.
2020-12-01 21:47:59 +01:00
Bram Moolenaar
c478ee3d83 patch 8.2.2076: MS-Windows console: sometimes drops typed characters
Problem:    MS-Windows console: sometimes drops typed characters.
Solution:   Do not wait longer than 10 msec for input. (issue #7164)
2020-12-01 21:27:51 +01:00
Bram Moolenaar
57cf4973a2 patch 8.2.2075: error for const argument to mapnew()
Problem:    Error for const argument to mapnew().
Solution:   Don't give an error. (closes #7400)
2020-12-01 21:08:05 +01:00
Bram Moolenaar
4324d87a44 patch 8.2.2074: Vim9: using :normal from Vim9 script can't handle range
Problem:    Vim9: using :normal from Vim9 script can't handle range.
Solution:   Execute a :normal command in legacy script context. (closes #7401)
2020-12-01 20:12:24 +01:00
Bram Moolenaar
4b8a065145 patch 8.2.2073: Vim9: for with unpack only works for local variables
Problem:    Vim9: for with unpack only works for local variables.
Solution:   Recognize different destinations.
2020-12-01 16:30:44 +01:00
Bram Moolenaar
004d9b00ba patch 8.2.2072: Vim9: list assign not well tested
Problem:    Vim9: list assign not well tested.
Solution:   Test with different destinations.  Fix white space error.
2020-11-30 21:40:03 +01:00
Bram Moolenaar
da7c20c953 patch 8.2.2071: Vim9: list assign doesn't except empty remainder list
Problem:    Vim9: list assign doesn't except empty remainder list.
Solution:   Recognize list assignment with ";".
2020-11-30 21:12:19 +01:00
Bram Moolenaar
f0068c5154 patch 8.2.2070: can't get the exit value in VimLeave(Pre) autocommands
Problem:    Can't get the exit value in VimLeave or VimLeavePre autocommands.
Solution:   Add v:exiting like in Neovim. (Yegappan Lakshmanan, closes #7395)
2020-11-30 17:42:10 +01:00
Bram Moolenaar
23515b4ef7 Update runtime files 2020-11-29 14:36:24 +01:00
Bram Moolenaar
287153c5d4 patch 8.2.2069: the quickfix window is not updated after setqflist()
Problem:    The quickfix window is not updated after setqflist().
Solution:   Update the quickfix buffer. (Yegappan Lakshmanan, closes #7390,
            closes #7385)
2020-11-29 14:20:27 +01:00
Bram Moolenaar
b46f57e87b patch 8.2.2068: transparent syntax item uses start/end of containing region
Problem:    Transparent syntax item uses start/end of containing region.
Solution:   Do not change the startpos and endpos of a transparent region to
            that of its containing region. (Adrian Ghizaru, closes #7349,
            closes #7391)
2020-11-29 14:11:41 +01:00
Bram Moolenaar
f5452691ba patch 8.2.2067: cursor position in popup terminal is wrong
Problem:    Cursor position in popup terminal is wrong.
Solution:   Don't check the flags.
2020-11-28 21:56:06 +01:00
Bram Moolenaar
ce2c5444e2 patch 8.2.2066: Vim9: assignment with += doesn't work
Problem:    Vim9: assignment with += doesn't work.
Solution:   Do not see the "+" as an addition operator.
2020-11-28 21:21:17 +01:00
Bram Moolenaar
f8ca03bf91 patch 8.2.2065: using map() and filter() on a range() is inefficient
Problem:    Using map() and filter() on a range() is inefficient.
Solution:   Do not materialize the range. (closes #7388)
2020-11-28 20:32:29 +01:00
Bram Moolenaar
ebec3e29b8 patch 8.2.2064: terminal: cursor is on while redrawing, causing flicker
Problem:    terminal: cursor is on while redrawing, causing flicker.
Solution:   Switch the cursor off while redrawing.  Always add the top and
            left offset to the cursor position when not done already.
            (closes #5943)
2020-11-28 20:22:06 +01:00
Bram Moolenaar
dc234caff2 patch 8.2.2063: Vim9: only one level of indexing supported
Problem:    Vim9: only one level of indexing supported.
Solution:   Handle more than one index in an assignment.
2020-11-28 18:52:33 +01:00
Bram Moolenaar
4a44120e3d patch 8.2.2062: <Cmd> does not handle CTRL-V
Problem:    <Cmd> does not handle CTRL-V.
Solution:   Call get_literal() after encountering CTRL-V. (closes #7387)
2020-11-28 14:43:26 +01:00
Bram Moolenaar
4d05af0a64 patch 8.2.2061: Vim9: E1030 error when using empty string for term_sendkeys()
Problem:    Vim9: E1030 error when using empty string for term_sendkeys().
Solution:   Don't check for an invalid type unless the terminal can't be
            found. (closes #7382)
2020-11-27 20:55:00 +01:00
Bram Moolenaar
aeb313f355 patch 8.2.2060: check for features implemented with "if"
Problem:    Check for features implemented with "if".
Solution:   Use the Check commands. (Ken Takata, closes #7383)
2020-11-27 19:13:28 +01:00
Bram Moolenaar
6ee874d378 patch 8.2.2059: Amiga: can't find plugins
Problem:    Amiga: can't find plugins.
Solution:   Do not use "**" in the pattern. (Ola Söder, closes #7384)
2020-11-27 19:01:31 +01:00
Bram Moolenaar
3482be6a33 patch 8.2.2058: using mkview/loadview changes the jumplist
Problem:    Using mkview/loadview changes the jumplist.
Solution:   Use ":keepjumps".  Don't let ":badd" or ":balt" change the
            jumplist. (closes #7371)
2020-11-27 11:00:38 +01:00
Bram Moolenaar
fccbf068f8 patch 8.2.2057: getting the selection may trigger TextYankPost autocmd
Problem:    Getting the selection may trigger TextYankPost autocmd.
Solution:   Only trigger the autocommand when yanking in Vim, not for getting
            the selection. (closes #7367)
2020-11-26 20:34:00 +01:00
Bram Moolenaar
ce7be3a0e6 patch 8.2.2056: configure fails when building with implicit-function-declaration
Problem:    Configure fails when building with the
            "implicit-function-declaration" error enabled, specifically on Mac.
Solution:   Declear the functions like in the source code. (suggestion by
            Clemens Lang, closes #7380)
2020-11-26 20:11:11 +01:00
Bram Moolenaar
2472a74be4 patch 8.2.2055: MS-Windows: two Vim instances may use the same temp file
Problem:    MS-Windows: two Vim instances may use the same temp file.
Solution:   Use the process ID for the temp name. (Ken Takata, closes #7378)
2020-11-26 19:47:28 +01:00
Bram Moolenaar
d49a35a1c3 patch 8.2.2054: Amiga: FEAT_ARP defined when it should not
Problem:    Amiga: FEAT_ARP defined when it should not.
Solution:   Adjust "||" to "&&" in #ifdef. (Ola Söder, closes #7375)
2020-11-25 21:55:45 +01:00
Bram Moolenaar
c2ca935d26 patch 8.2.2053: Vim9: lamba doesn't accept argument types
Problem:    Vim9: lamba doesn't accept argument types.
Solution:   Optionally accept argument types at the script level.
2020-11-25 21:30:11 +01:00
Bram Moolenaar
47a2abf0bc patch 8.2.2052: Vim9: "edit +4 fname" gives an error
Problem:    Vim9: "edit +4 fname" gives an error. (Naruhiko Nishino)
Solution:   Allow using a range in the +cmd argument. (closes #7364)
2020-11-25 20:12:11 +01:00
Bram Moolenaar
34c54eb6cb patch 8.2.2051: Vim9: crash when aborting a user function call
Problem:    Vim9: crash when aborting a user function call.
Solution:   Do not use the return value when aboring. (closes #7372)
2020-11-25 19:15:19 +01:00
Bram Moolenaar
6bed0dbc85 patch 8.2.2050: search test contains unneeded sleeps
Problem:    Search test contains unneeded sleeps.
Solution:   Rename the function, remove sleeps. (Christian Brabandt,
            closes #7369)
2020-11-25 17:41:20 +01:00
Bram Moolenaar
d653293c80 patch 8.2.2049: Amiga: obsolete function
Problem:    Amiga: obsolete function.
Solution:   Remove the function. (Ola Söder, closes #7374)
2020-11-25 17:00:43 +01:00
Bram Moolenaar
3a3b691042 patch 8.2.2048: Amiga: obsolete code
Problem:    Amiga: obsolete code.
Solution:   Remove the unused lines. (Ola Söder, closes #7373)
2020-11-25 15:52:31 +01:00
Bram Moolenaar
36fe7b287e patch 8.2.2047: Amiga: FEAT_ARP defined when it should not
Problem:    Amiga: FEAT_ARP defined when it should not.
Solution:   Adjust #ifdef. (Ola Söder, closes #7370)
2020-11-25 15:45:38 +01:00
Bram Moolenaar
5dc4e2f883 patch 8.2.2046: some test failures don't give a clear error
Problem:    Some test failures don't give a clear error.
Solution:   Use assert_match() and assert_fails() instead of assert_true().
            (Ken Takata, closes #7368)
2020-11-25 14:15:12 +01:00
Bram Moolenaar
448465e687 patch 8.2.2045: highlighting a character too much with incsearch
Problem:    Highlighting a character too much with incsearch.
Solution:   Check "search_match_endcol". (Christian Brabandt, closes #7360)
2020-11-25 13:49:27 +01:00
Bram Moolenaar
5ee0981fb5 patch 8.2.2044: MS-Windows: swap file test sometimes fails
Problem:    MS-Windows: swap file test sometimes fails.
Solution:   Use a more reliable way to change the process ID. When "timeout"
            fails use "ping" to wait up to ten minutes. (Ken Takata,
            closes #7365)
2020-11-25 12:43:28 +01:00
Bram Moolenaar
ff94bd9e47 patch 8.2.2043: GTK3: white border around text stands out
Problem:    GTK3: white border around text stands out.
Solution:   Use current theme color. (closes #7357, issue #349)
2020-11-25 12:25:47 +01:00
Bram Moolenaar
813196784a patch 8.2.2042: build failure with +profile but without +reltime
Problem:    Build failure with +profile but without +reltime.
Solution:   Adjust #ifdef. (Christian Brabandt, closes #7361)
2020-11-25 11:47:39 +01:00
Bram Moolenaar
a09bee322e patch 8.2.2041: haskell filetype not optimally recognized
Problem:    Haskell filetype not optimally recognized.
Solution:   Recognize all *.hsc files as Haskell. (Marcin Szamotulski,
            closes #7354)
2020-11-24 20:13:26 +01:00
Bram Moolenaar
c9f8b849b6 patch 8.2.2040: terminal buffer disappears even when 'bufhidden' is "hide"
Problem:    Terminal buffer disappears even when 'bufhidden' is "hide".
            (Sergey Vlasov)
Solution:   Check 'bufhiddden' when a terminal buffer becomes hidden.
            (closes #7358)
2020-11-24 19:36:16 +01:00
Bram Moolenaar
8e6be34338 patch 8.2.2039: viminfo is not written when creating a new file
Problem:    Viminfo is not written when creating a new file.
Solution:   Set "b_marks_read" in the new buffer. (Christian Brabandt,
            closes #7350)
2020-11-23 22:01:26 +01:00
Bram Moolenaar
142f23544c patch 8.2.2038: compiler test fails on MS-Windows
Problem:    Compiler test fails on MS-Windows.
Solution:   Sort the found compiler plugin names.
2020-11-23 21:39:14 +01:00
Bram Moolenaar
60bc8e7244 patch 8.2.2037: compiler test depends on list of compiler plugins
Problem:    Compiler test depends on list of compiler plugins.
Solution:   Compare with the actual list of compiler plugins.
2020-11-23 21:24:58 +01:00
Bram Moolenaar
9e40c4b15e patch 8.2.2036: buffer messed up if creating the quickfix window fails
Problem:    Current buffer is messed up if creating a new buffer for the
            quickfix window fails.
Solution:   Check that creating the buffer succeeds. (closes #7352)
2020-11-23 20:15:08 +01:00
Bram Moolenaar
f637bceb61 patch 8.2.2035: MS-Windows: some tests may fail
Problem:    MS-Windows: some tests may fail.
Solution:   Avoid test failures. (Yegappan Lakshmanan, closes #7346)
2020-11-23 18:14:56 +01:00
Bram Moolenaar
792f786aad patch 8.2.2034: Vim9: list unpack in for statement not compiled yet
Problem:    Vim9: list unpack in for statement not compiled yet.
Solution:   Compile list unpack. (closes #7345)
2020-11-23 08:31:18 +01:00
Bram Moolenaar
6abdcf8285 patch 8.2.2033: Vim9: :def without argument gives compilation error
Problem:    Vim9: :def without argument gives compilation error.
Solution:   Add the DEF instruction. (closes #7344)
2020-11-22 18:15:44 +01:00
Bram Moolenaar
dcbab75db3 patch 8.2.2032: cabalconfig and cabalproject filetypes not recognized
Problem:    Cabalconfig and cabalproject filetypes not recognized.
Solution:   Detect more cabal files. (Marcin Szamotulski, closes #7339)
2020-11-22 15:51:24 +01:00
Bram Moolenaar
18dc355395 patch 8.2.2031: some tests fail when run under valgrind
Problem:    Some tests fail when run under valgrind.
Solution:   Avoid timing problems.
2020-11-22 14:24:00 +01:00
Bram Moolenaar
4b2ce1297e patch 8.2.2030: some tests fail on Mac
Problem:    Some tests fail on Mac.
Solution:   Avoid Mac test failures.  Add additional test for wildmenu.
            (Yegappan Lakshmanan, closes #7341)
2020-11-21 21:41:41 +01:00
Bram Moolenaar
5546688fb6 patch 8.2.2029: Coverity warns for not checking return value
Problem:    Coverity warns for not checking return value.
Solution:   Check that u_save_cursor() returns OK.
2020-11-21 14:16:22 +01:00
Bram Moolenaar
896ad2c33e patch 8.2.2028: Coverity warns for using an uninitialized variable
Problem:    Coverity warns for using an uninitialized variable.
Solution:   Initialize to NULL.
2020-11-21 14:03:43 +01:00
Bram Moolenaar
9681f71392 patch 8.2.2027: Coverity warnts for uninitialized field
Problem:    Coverity warnts for uninitialized field.
Solution:   Set "v_lock".
2020-11-21 13:58:50 +01:00
Bram Moolenaar
e79cdb69a4 patch 8.2.2026: Coverity warns for possibly using not NUL terminated string
Problem:    Coverity warns for possibly using not NUL terminated string.
Solution:   Put a NUL in b0_hname just in case.
2020-11-21 13:51:16 +01:00
Bram Moolenaar
4466ad6baa Update runtime files 2020-11-21 13:16:30 +01:00
Bram Moolenaar
2d718267f4 patch 8.2.2025: Amiga: Not all colors are used on OS4
Problem:    Amiga: Not all colors are used on OS4.
Solution:   Adjust the #ifdef to include __amigaos4__. (Ola Söder,
            closes #7328)
2020-11-21 12:44:56 +01:00
Bram Moolenaar
d91467f830 patch 8.2.2024: flicker when redrawing a popup with a title and border
Problem:    Flicker when redrawing a popup with a title and border.
Solution:   Do not redraw the border where the title is displayed. (Naruhiko
            Nishino, closes #7334)
2020-11-21 12:42:09 +01:00
Bram Moolenaar
c71ee829ef patch 8.2.2023: Vim: memory leak when :execute fails
Problem:    Vim: memory leak when :execute fails.
Solution:   Clear the growarray.
2020-11-21 11:45:50 +01:00
Bram Moolenaar
95388e3179 patch 8.2.2022: Vim9: star command recognized errornously
Problem:    Vim9: star command recognized errornously.
Solution:   Give an error for missing colon. (issue #7335)
2020-11-20 21:07:00 +01:00
Bram Moolenaar
eeece9e488 patch 8.2.2021: Vim9: get E1099 when autocommand resets did_emsg
Problem:    Vim9: get E1099 when autocommand resets did_emsg.
Solution:   Add did_emsg_cumul. (closes #7336)
2020-11-20 19:26:48 +01:00
Bram Moolenaar
bebaa0d5c0 patch 8.2.2020: some compilers do not like the "namespace" argument
Problem:    Some compilers do not like the "namespace" argument.
Solution:   Rename to "use_namespace". (closes #7332)
2020-11-20 18:59:19 +01:00
Bram Moolenaar
80d868ec25 patch 8.2.2019: swap file test fails on MS-Windows
Problem:    Swap file test fails on MS-Windows.
Solution:   Add four to the process ID. (Ken Takata, closes #7333)
2020-11-20 09:10:15 +01:00
Bram Moolenaar
2ea95b61f4 patch 8.2.2018: Vim9: script variable not found from lambda
Problem:    Vim9: script variable not found from lambda.
Solution:   In a lambda also check the script hashtab for a variable without a
            scope. (closes #7329)
2020-11-19 21:47:56 +01:00
Bram Moolenaar
67d1c68f09 patch 8.2.2017: missing part of the dict change
Problem:    Missing part of the dict change.
Solution:   Also change the script level dict.
2020-11-19 19:01:43 +01:00
Bram Moolenaar
c6ca9f3a29 patch 8.2.2016: swap file test is a little flaky
Problem:    Swap file test is a little flaky.
Solution:   Don't set a byte to a fixed value, increment it.
2020-11-19 18:57:23 +01:00
Bram Moolenaar
2bede173a1 patch 8.2.2015: Vim9: literal dict #{} is not like any other language
Problem:    Vim9: literal dict #{} is not like any other language.
Solution:   Support the JavaScript syntax.
2020-11-19 18:53:18 +01:00
Bram Moolenaar
ee8b787bcd patch 8.2.2014: using CTRL-O in a prompt buffer moves cursor to start
Problem:    Using CTRL-O in a prompt buffer moves cursor to start of the line.
Solution:   Do not move the cursor when restarting edit. (closes #7330)
2020-11-19 18:46:25 +01:00
Bram Moolenaar
79cdf80bed patch 8.2.2013: Vim9: not skipping white space after unary minus
Problem:    Vim9: not skipping white space after unary minus.
Solution:   Skip whitespace. (closes #7324)
2020-11-18 17:39:05 +01:00
Bram Moolenaar
d92cc130fb patch 8.2.2012: Vim9: confusing error message when using bool wrongly
Problem:    Vim9: confusing error message when using bool wrongly.
Solution:   Mention "Bool" instead of "Special". (closes #7323)
2020-11-18 17:17:15 +01:00
Bram Moolenaar
9950280d37 patch 8.2.2011: "syn sync" reports a very large number
Problem:    "syn sync" reports a very large number.
Solution:   Use "at the first line".
2020-11-18 16:53:23 +01:00
Bram Moolenaar
8e02faf4e9 patch 8.2.2010: Vim9: compiling fails for unreachable return statement
Problem:    Vim9: compiling fails for unreachable return statement.
Solution:   Fix it. (closes #7319)
2020-11-18 16:35:02 +01:00
Bram Moolenaar
382319211a patch 8.2.2009: MS-Windows: setting $LANG in gvimext only causes problems
Problem:    MS-Windows: setting $LANG in gvimext only causes problems.
Solution:   Do not set $LANG. (Ken Takata, closes #7325)
2020-11-18 15:30:09 +01:00
Bram Moolenaar
032f40afb8 patch 8.2.2008: MS-Windows GUI: handling channel messages lags
Problem:    MS-Windows GUI: handling channel messages lags.
Solution:   Reduce the wait time from 100 to 10 msec. (closes #7097)
2020-11-18 15:21:50 +01:00
Bram Moolenaar
17ab28daa0 patch 8.2.2007: test for insert mode in popup is not reliable
Problem:    Test for insert mode in popup is not reliable.
Solution:   Wait for the popup to disappear. (Ozaki Kiichi, closes #7321)
2020-11-18 12:24:01 +01:00
Bram Moolenaar
88774a30c0 patch 8.2.2006: .pbtxt files are not recognized
Problem:    .pbtxt files are not recognized.
Solution:   Recognize .pbtxt as protobuf text buffers. (closes #7326)
2020-11-18 12:12:39 +01:00
Bram Moolenaar
c77534c303 patch 8.2.2005: redoing a mapping with <Cmd> doesn't work properly
Problem:    Redoing a mapping with <Cmd> doesn't work properly.
Solution:   Fill the redo buffer.  Use "<SNR>" instead of a key code.
            (closes #7282)
2020-11-18 11:34:37 +01:00
Bram Moolenaar
b3a01946b3 patch 8.2.2004: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable.
Solution:   Initialize "ufunc". (John Marriott)
2020-11-17 19:56:09 +01:00
Bram Moolenaar
1efefda623 patch 8.2.2003: build error with +conceal but without +popupwin
Problem:    Build error with +conceal but without +popupwin.
Solution:   Add #ifdef. (Tom Ryder, closes #7316)
2020-11-17 19:22:06 +01:00
Bram Moolenaar
52bf81c2d5 patch 8.2.2002: Vim9: lambda argument shadowed by function name
Problem:    Vim9: lambda argument shadowed by function name.
Solution:   Let function name be shadowed by lambda argument. (closes #7313)
2020-11-17 18:50:44 +01:00
Bram Moolenaar
0ba48e8c27 patch 8.2.2001: Vim9: :def function does not apply 'maxfuncdepth'
Problem:    Vim9: :def function does not apply 'maxfuncdepth'.
Solution:   Use 'maxfuncdepth'. (issue #7313)
2020-11-17 18:23:19 +01:00
Bram Moolenaar
fc74d03e76 patch 8.2.2000: Vim9: dict.key assignment not implemented yet
Problem:    Vim9: dict.key assignment not implemented yet.
Solution:   Implement dict.key assignment. (closes #7312)
2020-11-16 22:11:49 +01:00
Bram Moolenaar
e6329e4c55 patch 8.2.1999: terminal popup test sometimes fails
Problem:    Terminal popup test sometimes fails.
Solution:   Wait for the popup to close.
2020-11-16 21:10:34 +01:00
Bram Moolenaar
27f4f6baee patch 8.2.1998: terminal Cmd test sometimes fails to close popup
Problem:    Terminal Cmd test sometimes fails to close popup.
Solution:   Add "term_finish" option.
2020-11-16 21:02:28 +01:00
Bram Moolenaar
8adc8d9b73 patch 8.2.1997: window changes when using bufload() while in a terminal popup
Problem:    Window changes when using bufload() while in a terminal popup.
Solution:   When searching for a window by ID also find a popup window.
            (closes #7307)
2020-11-16 20:47:31 +01:00
Bram Moolenaar
193f6201b4 patch 8.2.1996: Vim9: invalid error for argument of extend()
Problem:    Vim9: invalid error for argument of extend().
Solution:   Check if the type could match. (closes #7299)
2020-11-16 20:08:35 +01:00
Bram Moolenaar
714cbe5b21 patch 8.2.1995: the popup menu can cause too much redrawing
Problem:    The popup menu can cause too much redrawing.
Solution:   Reduce the length of the displayed text. (Yasuhiro Matsumoto,
            closes #7306)
2020-11-16 19:12:00 +01:00
Bram Moolenaar
c4390fe6c0 patch 8.2.1994: MS-Windows: MinGW always does a full build
Problem:    MS-Windows: MinGW always does a full build.
Solution:   Only check if $OUTDIR exists. (Masamichi Abe, closes #7311)
2020-11-16 18:49:47 +01:00
Bram Moolenaar
50dc3ecc64 patch 8.2.1993: occasional failure of the netbeans test
Problem:    Occasional failure of the netbeans test.
Solution:   Add "silent!". (Yegappan Lakshmanan, closes #7304)
2020-11-16 18:39:43 +01:00
Bram Moolenaar
4792a679f9 patch 8.2.1992: build fails with small features
Problem:    Build fails with small features.
Solution:   Add #ifdef.
2020-11-15 21:11:18 +01:00
Bram Moolenaar
ca359cbedd patch 8.2.1991: Coverity warns for not using the ga_grow() return value
Problem:    Coverity warns for not using the ga_grow() return value.
Solution:   Bail out if ga_grow() fails. (Yegappan Lakshmanan, closes #7303)
2020-11-15 20:49:41 +01:00
Bram Moolenaar
6a07644db3 patch 8.2.1990: cursor position wrong in terminal popup with finished job
Problem:    Cursor position wrong in terminal popup with finished job.
Solution:   Only add the top and left offset when not done already.
            (closes #7298)
2020-11-15 20:32:58 +01:00
Bram Moolenaar
2dfae04f37 patch 8.2.1989: info popup triggers WinEnter and WinLeave autocommands
Problem:    Info popup triggers WinEnter and WinLeave autocommands.
Solution:   Suppress autocommands for the info popup. (closes #7296)
2020-11-15 14:09:37 +01:00
Bram Moolenaar
e41decc892 patch 8.2.1988: still in Insert mode when opening terminal popup
Problem:    Still in Insert mode when opening terminal popup with a <Cmd>
            mapping in Insert mode.
Solution:   Exit Insert mode. (closes #7295)
2020-11-14 21:34:59 +01:00
Bram Moolenaar
6453cc8078 patch 8.2.1987: MS-Windows: Win32.mak is no longer needed
Problem:    MS-Windows: Win32.mak is no longer needed.
Solution:   Do not include Win32.mak. (Jason McHugh, closes #7290)
2020-11-14 21:04:33 +01:00
Bram Moolenaar
a065a14115 patch 8.2.1986: expression test is flaky on Appveyor
Problem:    Expression test is flaky on Appveyor.
Solution:   Temporarily disable the test in MS-Windows.
2020-11-14 20:57:20 +01:00
Bram Moolenaar
02764713a7 patch 8.2.1985: crash when closing terminal popup with <Cmd> mapping
Problem:    Crash when closing terminal popup with <Cmd> mapping.
Solution:   Check b_term is not NULL. (closes #7294)
2020-11-14 20:21:55 +01:00
Bram Moolenaar
33aecb1f2c patch 8.2.1984: cannot use :vimgrep in omni completion
Problem:    Cannot use :vimgrep in omni completion, causing C completion to
            fail.
Solution:   Add the EX_LOCK_OK flag to :vimgrep. (closes #7292)
2020-11-14 17:25:51 +01:00
Bram Moolenaar
f4d61bc559 patch 8.2.1983: ml_get error when using <Cmd> to open a terminal
Problem:    ml_get error when using <Cmd> to open a terminal.
Solution:   If the window changed reset the incsearch state. (closes #7289)
2020-11-14 14:22:28 +01:00
Bram Moolenaar
2ce7790348 patch 8.2.1982: quickfix window now updated when adding invalid entries
Problem:    Quickfix window now updated when adding invalid entries.
Solution:   Update the quickfix buffer properly. (Yegappan Lakshmanan, closes
            #7291, closes #7271)
2020-11-14 13:15:24 +01:00
Bram Moolenaar
8496c9eadb patch 8.2.1981: MinGW: parallel compilation might fail
Problem:    MinGW: parallel compilation might fail.
Solution:   Add dependencies on $(OUTDIR). (Masamichi Abe, closes #7287)
2020-11-13 17:47:33 +01:00
Bram Moolenaar
659bb2275e patch 8.2.1980: Vim9: some tests are not done at the script level
Problem:    Vim9: some tests are not done at the script level.
Solution:   Use CheckDefAndScriptSuccess() in more places.  Fix uncovered
            problems.
2020-11-12 20:16:39 +01:00
Bram Moolenaar
47c5ea44b9 patch 8.2.1979: "term_opencmd" option of term_start() is truncated
Problem:    "term_opencmd" option of term_start() is truncated. (Sergey
            Vlasov)
Solution:   Allocate the buffer to hold the command. (closes #7284)
2020-11-12 15:12:15 +01:00
Bram Moolenaar
957cf67d50 patch 8.2.1978: making a mapping work in all modes is complicated
Problem:    Making a mapping work in all modes is complicated.
Solution:   Add the <Cmd> special key. (Yegappan Lakshmanan, closes #7282,
            closes 4784, based on patch by Bjorn Linse)
2020-11-12 14:21:06 +01:00
Bram Moolenaar
ea2d407f9c patch 8.2.1977: Vim9: error for using a string in a condition is confusing
Problem:    Vim9: error for using a string in a condition is confusing.
Solution:   Give a more specific error.  Also adjust the compile time type
            checking for || and &&.
2020-11-12 12:08:51 +01:00
Bram Moolenaar
6f6244855f patch 8.2.1976: cannot backspace in prompt buffer after using cursor-left
Problem:    Cannot backspace in prompt buffer after using cursor-left. (Maxim
            Kim)
Solution:   Ignore "arrow_used" in a prompt buffer. (closes #7281)
2020-11-11 20:52:40 +01:00
Bram Moolenaar
bbf9f344af patch 8.2.1975: Win32: memory leak when encoding conversion fails
Problem:    Win32: memory leak when encoding conversion fails.
Solution:   Free the allocated memory. (Ken Takata, closes #7277)
2020-11-10 22:03:40 +01:00
Bram Moolenaar
29b281ba8d patch 8.2.1974: Vim9: test for has('gui_running') fails with VIMDLL
Problem:    Vim9: test for has('gui_running') fails with VIMDLL.
Solution:   Adjust the #ifdef. (Ken Takata, closes #7276)
2020-11-10 20:58:00 +01:00
Bram Moolenaar
232f4612e2 patch 8.2.1973: finding a patch number can be a bit slow
Problem:    Finding a patch number can be a bit slow.
Solution:   Use binary search. (closes #7279)
2020-11-10 20:54:29 +01:00
Bram Moolenaar
5e1f22ff61 patch 8.2.1972: crash when recreating nested fold
Problem:    Crash when recreating nested fold.
Solution:   Check for empty growarray. (closes #7278)
2020-11-10 18:23:52 +01:00
Bram Moolenaar
c56936e2ba patch 8.2.1971: memory leak when map() fails
Problem:    Memory leak when map() fails.
Solution:   Clear the typval.
2020-11-10 11:43:56 +01:00
Bram Moolenaar
f883508e36 patch 8.2.1970: it is easy to make mistakes when cleaning up swap files
Problem:    It is easy to make mistakes when cleaning up swap files after the
            system crashed.
Solution:   Warn for the process still running after recovery.  Do not
            automatically delete a swap file created on another system.
            (David Fries, closes #7273)
2020-11-09 21:04:17 +01:00
Bram Moolenaar
ea696852e7 patch 8.2.1969: Vim9: map() may change the list or dict item type
Problem:    Vim9: map() may change the list or dict item type.
Solution:   Add mapnew().
2020-11-09 18:31:39 +01:00
Bram Moolenaar
8cebd43e97 patch 8.2.1968: Vim9: has() assumes a feature does not change dynamically
Problem:    Vim9: has() assumes a feature does not change dynamically.
Solution:   Check whether a feature may change dynamically. (closes #7265)
2020-11-08 12:49:47 +01:00
Bram Moolenaar
59d8e56e04 patch 8.2.1967: the session file does not restore the alternate file
Problem:    The session file does not restore the alternate file.
Solution:   Add ":balt".  Works like ":badd" and also sets the buffer as the
            alternate file.  Use it in the session file. (closes #7269,
            closes #6714)
2020-11-07 18:41:10 +01:00
Bram Moolenaar
cbcd9cbd77 patch 8.2.1966: popup becomes current window after closing a terminal window
Problem:    Popup becomes current window after closing a terminal window.
Solution:   When restoring the window after executing autocommands, check that
            the window ID is still the same.  (Naruhiko Nishino,
            closes #7272)
2020-11-07 16:58:59 +01:00
Bram Moolenaar
46f479c756 patch 8.2.1965: Vim9: tests fail without the channel feature
Problem:    Vim9: tests fail without the channel feature.
Solution:   Check if the channel feature is present. (Dominique Pellé,
            closes 7270)
2020-11-07 13:09:18 +01:00
Bram Moolenaar
faebda8cc1 patch 8.2.1964: not all ConTeXt files are recognized
Problem:    Not all ConTeXt files are recognized.
Solution:   Add two patterns. (closes #7263)
2020-11-06 18:52:55 +01:00
Bram Moolenaar
927495b1fe patch 8.2.1963: crash when using a popup window with "latin1" encoding
Problem:    Crash when using a popup window with "latin1" encoding.
Solution:   Don't use ScreenLinesUC when enc_utf8 is false. (closes #7241)
2020-11-06 17:58:35 +01:00
Bram Moolenaar
32e5ec0b01 patch 8.2.1962: netbeans may access freed memory
Problem:    Netbeans may access freed memory.
Solution:   Check the buffer pointer is still valid.  Add a test. (Yegappan
            Lakshmanan, closes #7248)
2020-11-06 13:44:21 +01:00
Bram Moolenaar
85d9b03f84 Correct list of patches. 2020-11-06 12:03:08 +01:00
Bram Moolenaar
22286895fc patch 8.2.1961: various comments can be improved
Problem:    Various comments can be improved.
Solution:   Various comment adjustments.
2020-11-05 20:50:51 +01:00
Bram Moolenaar
0fd797eacd patch 8.2.1960: warning for uninitialized variable
Problem:    Warning for uninitialized variable.
Solution:   Initialize the variable.
2020-11-05 20:46:32 +01:00
Bram Moolenaar
3132cddd20 Update runtime files 2020-11-05 20:41:49 +01:00
Bram Moolenaar
00806bceb6 patch 8.2.1959: crash when terminal buffer name is made empty
Problem:    Crash when terminal buffer name is made empty. (Dhiraj Mishra)
Solution:   Fall back to "[No Name]". (closes #7262)
2020-11-05 19:36:38 +01:00
Bram Moolenaar
b885b435d1 patch 8.2.1958: build failure with timers
Problem:    Build failure with timers.
Solution:   Add missing change.
2020-11-05 19:34:41 +01:00
Bram Moolenaar
fabc3ca896 patch 8.2.1957: diff and cursorcolumn highlighting don't mix
Problem:    Diff and cursorcolumn highlighting don't mix.
Solution:   Fix condition for what attribute to use. (Christian Brabandt,
            closes #7258, closes #7260)
2020-11-05 19:07:21 +01:00
Bram Moolenaar
b4d16cb11d patch 8.2.1956: Vim9: cannot specify argument types for lambda
Problem:    Vim9: cannot specify argument types for lambda.
Solution:   Allow adding argument types.  Check arguments when calling a
            function reference.
2020-11-05 18:45:46 +01:00
Bram Moolenaar
66669fc664 patch 8.2.1955: Vim9: not all command modifiers are tested
Problem:    Vim9: not all command modifiers are tested.
Solution:   Add tests for remaining modifiers.
2020-11-04 18:53:35 +01:00
Bram Moolenaar
f65b35b446 patch 8.2.1954: Vim9: not all command modifiers are tested
Problem:    Vim9: not all command modifiers are tested.
Solution:   Add tests for "keep" modifiers.  Fix that marks are lost even
            though ":lockmarks" is used.
2020-11-04 18:02:44 +01:00
Bram Moolenaar
631e8f9345 patch 8.2.1953: Vim9: extra "unknown" error after other error
Problem:    Vim9: extra "unknown" error after other error.
Solution:   Restore did_emsg count after EXEC instruction. (closes #7254)
            Improve error message from assert_fails()
2020-11-04 15:07:16 +01:00
Bram Moolenaar
c7f7f6db3e patch 8.2.1952: Vim9: crash when using a NULL dict key
Problem:    Vim9: crash when using a NULL dict key.
Solution:   Use a NULL dict key like an empty string. (closes #7249)
2020-11-04 13:38:28 +01:00
Bram Moolenaar
64ffa9b5fb patch 8.2.1951: test for list and dict fails
Problem:    Test for list and dict fails.
Solution:   Adjust for using an empty list/dict for a null one.
2020-11-04 12:23:06 +01:00
Bram Moolenaar
9c13f76275 patch 8.2.1950: Vim9: crash when compiling function fails when getting type
Problem:    Vim9: crash when compiling function fails when getting type.
Solution:   Handle NULL type. (closes #7253)
2020-11-04 12:00:53 +01:00
Bram Moolenaar
348be7ed07 patch 8.2.1949: Vim9: using extend() on null dict is silently ignored
Problem:    Vim9: using extend() on null dict is silently ignored.
Solution:   Give an error message.  Initialize a dict variable with an empty
            dictionary. (closes #7251)
2020-11-04 11:36:35 +01:00
Bram Moolenaar
4778b4d0e1 patch 8.2.1948: GUI: crash when handling message while closing a window
Problem:    GUI: crash when handling message while closing a window. (Srinath
            Avadhanula)
Solution:   Don't handle message while closing a window. (closes #7250)
2020-11-04 11:03:12 +01:00
Bram Moolenaar
c136a3528b patch 8.2.1947: crash when using "zj" without folds
Problem:    Crash when using "zj" without folds. (Sean Dewar)
Solution:   Check for at least one fold. (closes #7245)
2020-11-03 20:05:40 +01:00
Bram Moolenaar
35efa22ff2 patch 8.2.1946: sort() with NULL string not tested
Problem:    sort() with NULL string not tested.
Solution:   Add a test.  use v:collate. (Dominique Pellé, closes #7247)
2020-11-03 18:51:54 +01:00
Bram Moolenaar
0d90e728fe patch 8.2.1945: crash when passing NULL function to reduce()
Problem:    Crash when passing NULL function to reduce().
Solution:   Check for NULL pointer and give an error. (Dominique Pellé,
            closes #7243)
2020-11-03 18:20:19 +01:00
Bram Moolenaar
6fd3a4ba23 patch 8.2.1944: Netbeans test is flaky
Problem:    Netbeans test is flaky.
Solution:   Add a short delay. (Yegappan Lakshmanan, closes #7246)
2020-11-03 11:53:29 +01:00
Bram Moolenaar
36113e46b4 patch 8.2.1943: Vim9: wrong error message when colon is missing
Problem:    Vim9: wrong error message when colon is missing.
Solution:   Check for a missing colon. (issue #7239)
2020-11-02 21:08:47 +01:00
Bram Moolenaar
dbfa795d8b patch 8.2.1942: insufficient test coverage for the Netbeans interface
Problem:    Insufficient test coverage for the Netbeans interface.
Solution:   Add more tests. Fix an uncovered bug. (Yegappan Lakshmanan,
            closes #7240)
2020-11-02 20:04:22 +01:00
Bram Moolenaar
399db046ed patch 8.2.1941: Ex mode test fails on MS-Windows with GUI
Problem:    Ex mode test fails on MS-Windows with GUI.
Solution:   Skip the test when using gvim.
2020-11-01 22:31:08 +01:00
Bram Moolenaar
97a19005e1 patch 8.2.1940: Vim9: browse modifier test fails on Mac
Problem:    Vim9: browse modifier test fails on Mac.
Solution:   Only test when the +browse feature is available.
2020-11-01 22:15:44 +01:00
Bram Moolenaar
3b6d57f2ce patch 8.2.1939: invalid memory access in Ex mode with global command
Problem:    Invalid memory access in Ex mode with global command.
Solution:   Make sure the cursor is on a valid line. (closes #7238)
2020-11-01 21:56:40 +01:00
Bram Moolenaar
a46765a797 patch 8.2.1938: wiping out a terminal buffer makes some tests fail
Problem:    Wiping out a terminal buffer makes some tests fail.
Solution:   Do not wipe out the terminal buffer unless wanted.
2020-11-01 20:58:26 +01:00
Bram Moolenaar
645cd3eb1f patch 8.2.1937: Vim9: test for confirm modifier fails in some situations
Problem:    Vim9: test for confirm modifier fails in some situations.
Solution:   Add a short wait.  Handle failure better.
2020-11-01 20:04:57 +01:00
Bram Moolenaar
388908352f patch 8.2.1936: session sets the local 'scrolloff' value to the global value
Problem:    Session sets the local 'scrolloff' value to the global value.
Solution:   Do not let restoring the global option value change the local
            value.
2020-11-01 17:40:54 +01:00
Bram Moolenaar
578f4cc7d0 patch 8.2.1935: sort test fails on Mac
Problem:    Sort test fails on Mac.
Solution:   Disable the sort test with locale on Mac.
2020-11-01 17:19:07 +01:00
Bram Moolenaar
e88c8e802c patch 8.2.1934: Vim9: command modifiers in :def function not tested
Problem:    Vim9: command modifiers in :def function not tested.
Solution:   Add tests.  Fix using modifier before filter command.
2020-11-01 17:03:37 +01:00
Bram Moolenaar
55e29611d2 patch 8.2.1933: cannot sort using locale ordering
Problem:    Cannot sort using locale ordering.
Solution:   Add a flag for :sort and sort() to use the locale. (Dominique
            Pellé, closes #7237)
2020-11-01 13:57:44 +01:00
Bram Moolenaar
963734e316 patch 8.2.1932: compiler warnings when building with Athena GUI
Problem:    Compiler warnings when building with Athena GUI.
Solution:   Fix function signatures.
2020-11-01 13:33:49 +01:00
Bram Moolenaar
fbcbffe1ad patch 8.2.1931: Vim9: arguments of extend() not checked at compile time
Problem:    Vim9: arguments of extend() not checked at compile time.
Solution:   Add argument type checking for extend().
2020-10-31 19:33:38 +01:00
Bram Moolenaar
749bc9521d patch 8.2.1930: wrong input if removing shift results in special key code
Problem:    Wrong input if removing shift results in special key code.
Solution:   Handle special key codes. (closes #7189)
2020-10-31 16:33:47 +01:00
Bram Moolenaar
0289065e41 patch 8.2.1929: MS-Windows: problem loading Perl 5.32
Problem:    MS-Windows: problem loading Perl 5.32.
Solution:   Define NO_THREAD_SAFE_LOCALE. (Ken Takata, closes #7234)
2020-10-31 13:05:11 +01:00
Bram Moolenaar
cd030c4b60 patch 8.2.1928: Vim9: "silent!" not effective when list index is wrong
Problem:    Vim9: "silent!" not effective when list index is wrong.
Solution:   Ignore list indes failure when emsg_silent is set. (closes #7232)
2020-10-30 21:49:40 +01:00
Bram Moolenaar
d66960bf57 patch 8.2.1927: Vim9: get unknown error with an error in a timer function
Problem:    Vim9: get unknown error with an error in a timer function.
Solution:   Use did_emsg instead of called_emsg. (closes #7231)
2020-10-30 20:46:26 +01:00
Bram Moolenaar
b2620202c7 patch 8.2.1926: cannot use a space in 'spellfile'
Problem:    Cannot use a space in 'spellfile'. (Filipe Brandenburger)
Solution:   Permit using a space. (closes #7230)
2020-10-30 19:25:09 +01:00
Bram Moolenaar
6d967125ad patch 8.2.1925: list/dict test fails
Problem:    List/dict test fails.
Solution:   Correct expected exception.
2020-10-30 19:06:18 +01:00
Bram Moolenaar
086fc9a585 patch 8.2.1924: Vim9: crash when indexing dict with NULL key
Problem:    Vim9: crash when indexing dict with NULL key.
Solution:   Use empty string instead of NULL. (closes #7229)  Make error
            message more useful for empty string.
2020-10-30 18:33:02 +01:00
Bram Moolenaar
4f6b6ed208 patch 8.2.1923: Vim9: "filter" command modifier doesn't work
Problem:    Vim9: "filter" command modifier doesn't work.
Solution:   Check for space on char before argument. (closes #7216,
            closes #7222)
2020-10-29 20:24:34 +01:00
Bram Moolenaar
185577e47e patch 8.2.1922: Win32: scrolling problems when part of window is off-screen
Problem:    Win32: scrolling doesn't work properly when part of window is
            off-screen.
Solution:   Fall back to GDI scrolling if part of the window is off-screen.
            Handle multi-monitor setup better. (Ken Takata, closes #7219)
2020-10-29 20:08:21 +01:00
Bram Moolenaar
dcdd42a8cc patch 8.2.1921: fuzzy matching does not recognize path separators
Problem:    Fuzzy matching does not recognize path separators.
Solution:   Add a bonus for slash and backslash. (Yegappan Lakshmanan,
            closes #7225)
2020-10-29 18:58:01 +01:00
Bram Moolenaar
cf4d454df0 patch 8.2.1920: listlbr test fails when run after another test
Problem:    Listlbr test fails when run after another test.
Solution:   Add test separately to list of test targets.
2020-10-28 22:46:42 +01:00
Bram Moolenaar
28ee892ac4 patch 8.2.1919: assert_fails() setting emsg_silent changes normal execution
Problem:    Assert_fails() setting emsg_silent changes normal execution.
Solution:   Use a separate flag in_assert_fails.
2020-10-28 20:20:00 +01:00
Bram Moolenaar
3e2534ed1a patch 8.2.1918: Vim9: E1100 mentions :let
Problem:    Vim9: E1100 mentions :let.
Solution:   Mention "var". (closes #7207)
2020-10-28 17:55:31 +01:00
Bram Moolenaar
159563b439 patch 8.2.1917: no test for improved Man command
Problem:    No test for improved Man command.
Solution:   Test that shell arguments are properly escaped.
2020-10-28 17:21:26 +01:00
Bram Moolenaar
171fb923b8 patch 8.2.1916: Vim9: function call is aborted even when "silent!" is used
Problem:    Vim9: function call is aborted even when "silent!" is used.
Solution:   Use did_emsg instead of called_emsg. (closes #7213)
2020-10-28 16:54:47 +01:00
Bram Moolenaar
6cf7e3b026 patch 8.2.1915: Vim9: error for wrong number of arguments is not useful
Problem:    Vim9: error for wrong number of arguments is not useful.
Solution:   Mention whatever we have for the name. (closes #7208)
2020-10-28 14:31:16 +01:00
Bram Moolenaar
b4bcea474d patch 8.2.1914: Vim9: cannot put line break in expression for '=' register
Problem:    Vim9: cannot put line break in expression for '=' register.
Solution:   Pass fgetline to set_expr_line(). (closes #7209)
2020-10-28 13:53:50 +01:00
Bram Moolenaar
70cf45810c patch 8.2.1913: GTK GUI: rounding for the cell height is too strict
Problem:    GTK GUI: rounding for the cell height is too strict.
Solution:   Round up above 15/16 of a pixel. (closes #7203)
2020-10-27 20:43:26 +01:00
Bram Moolenaar
68a48ee55e patch 8.2.1912: with Python 3.9 some tests fail
Problem:    With Python 3.9 some tests fail.
Solution:   Take into account the different error message. (James McCoy,
            closes #7210)
2020-10-27 19:59:10 +01:00
Bram Moolenaar
977fd0b327 patch 8.2.1911: tiny build fails
Problem:    Tiny build fails.
Solution:   Add #ifdef.
2020-10-27 09:12:45 +01:00
Bram Moolenaar
caf73dcfad patch 8.2.1910: reading past the end of the command line
Problem:    Reading past the end of the command line.
Solution:   Check for NUL. (closes #7204)
2020-10-26 21:39:13 +01:00
Bram Moolenaar
cb80aa2d53 Update runtime files. 2020-10-26 21:12:46 +01:00
Bram Moolenaar
8133cc6bf4 patch 8.2.1909: number of status line items is limited to 80
Problem:    Number of status line items is limited to 80.
Solution:   Dynamically allocate the arrays. (Rom Grk, closes #7181)
2020-10-26 21:05:27 +01:00
Bram Moolenaar
c8970b9464 patch 8.2.1908: Lua is initialized even when not used
Problem:    Lua is initialized even when not used.
Solution:   Put lua_init() after check for "eap->skip". (Christian Brabandt,
            closes #7191).  Avoid compiler warnings.
2020-10-26 20:18:08 +01:00
Bram Moolenaar
f9d51354de patch 8.2.1907: complete_info().selected may be wrong
Problem:    Complete_info().selected may be wrong.
Solution:   Update cp_number if it was never set. (issue #6945)
2020-10-26 19:22:42 +01:00
Bram Moolenaar
a360dbe3b6 patch 8.2.1906: warning for signed/unsigned
Problem:    Warning for signed/unsigned.
Solution:   Use size_t instead of int. (Mike Williams)
2020-10-26 18:46:53 +01:00
Bram Moolenaar
4882d98339 patch 8.2.1905: the wininfo list may contain stale entries
Problem:    The wininfo list may contain stale entries.
Solution:   When closing a window remove any other entry where the window
            pointer is NULL.
2020-10-25 17:55:09 +01:00
Bram Moolenaar
89b693e562 patch 8.2.1904: still using default option values after using ":badd +1"
Problem:    Still using default option values after using ":badd +1".
Solution:   Find a window where options were set.  Don't set the window when
            using ":badd".
2020-10-25 17:09:50 +01:00
Bram Moolenaar
37e4e03c67 patch 8.2.1903: buffer test fails with normal features
Problem:    Buffer test fails with normal features.
Solution:   Use 'numberwidth' instead of 'conceallevel' in the test.
2020-10-25 16:18:26 +01:00
Bram Moolenaar
e974fa7b2b patch 8.2.1902: default option values changed with :badd for existing buffer
Problem:    Default option values are changed when using :badd for an existing
            buffer.
Solution:   When calling buflist_new() pass a zero line number. (closes #7195)
2020-10-25 15:02:51 +01:00
Bram Moolenaar
4ff2f2fb6b patch 8.2.1901: variable completion does not work in command line window
Problem:    Variable completion does not work in command line window.
Solution:   Use the "prevwin". (closes #7198)
2020-10-25 13:22:42 +01:00
Bram Moolenaar
02194d2bd5 patch 8.2.1900: Vim9: command modifiers do not work
Problem:    Vim9: command modifiers do not work.
Solution:   Make most command modifiers work.
2020-10-24 23:08:38 +02:00
Bram Moolenaar
67def64a4e patch 8.2.1899: crash in out-of-memory situation
Problem:    Crash in out-of-memory situation.
Solution:   Bail out if shell_name is NULL. (Dominique Pellé, closes #7196)
2020-10-24 20:58:06 +02:00
Bram Moolenaar
e100440158 patch 8.2.1898: command modifier parsing always uses global cmdmod
Problem:    Command modifier parsing always uses global cmdmod.
Solution:   Pass in cmdmod_T to use.  Rename struct fields consistently.
2020-10-24 20:49:43 +02:00
Bram Moolenaar
5661ed6c83 patch 8.2.1897: command modifiers are saved and set inconsistently
Problem:    Command modifiers are saved and set inconsistently.
Solution:   Separate parsing and applying command modifiers.  Save values in
            cmdmod_T.
2020-10-24 17:19:16 +02:00
Bram Moolenaar
e1be11864d patch 8.2.1896: valgrind warns for using uninitialized memory
Problem:    Valgrind warns for using uninitialized memory.
Solution:   NUL terminate the SmcOpenConnection() error message. (Dominique
            Pellé, closes #7194)
2020-10-24 13:30:51 +02:00
Bram Moolenaar
210681c509 patch 8.2.1895: Vim9: silent command modifier test fails
Problem:    Vim9: silent command modifier test fails.
Solution:   Add missing changes.
2020-10-23 18:51:06 +02:00
Bram Moolenaar
f4c6e1e75c patch 8.2.1894: Vim9: command modifiers are not supported
Problem:    Vim9: command modifiers are not supported.
Solution:   Support "silent" and "silent!".
2020-10-23 18:02:32 +02:00
Bram Moolenaar
8ded5b647a patch 8.2.1893: fuzzy matching does not support multiple words
Problem:    Fuzzy matching does not support multiple words.
Solution:   Add support for matching white space separated words. (Yegappan
            Lakshmanan, closes #7163)
2020-10-23 16:50:30 +02:00
Bram Moolenaar
9c24cd11e2 patch 8.2.1892: valgrind warns for using uninitialized access in tests
Problem:    Valgrind warns for using uninitialized access in tests.
Solution:   Fix condition for breaking out of loop. (Dominique Pellé,
            closes #7187)
2020-10-23 15:40:39 +02:00
Bram Moolenaar
683581eb49 patch 8.2.1891: Vim9: skipping over expression doesn't handle line breaks
Problem:    Vim9: skipping over expression doesn't handle line breaks.
Solution:   Pass evalarg to skip_expr(). (closes #7157)
2020-10-22 21:22:58 +02:00
Bram Moolenaar
081db1a66d patch 8.2.1890: Vim9: strange error for subtracting from a list
Problem:    Vim9: strange error for subtracting from a list.
Solution:   Check getting a number, not a string. (closes #7167)
2020-10-22 20:09:43 +02:00
Bram Moolenaar
b07a39de48 patch 8.2.1889: Vim9: errornous error for missing white space after {}
Problem:    Vim9: errornous error for missing white space after {}.
Solution:   Don't skip over white space after {}. (issue #7167)
2020-10-22 19:00:01 +02:00
Bram Moolenaar
e6e70a10f1 patch 8.2.1888: Vim9: getbufline(-1, 1, '$') gives an error
Problem:    Vim9: Getbufline(-1, 1, '$') gives an error.
Solution:   Return an empty list. (closes #7180)
2020-10-22 18:23:38 +02:00
Bram Moolenaar
15ab48f088 patch 8.2.1887: Github actions not optimally configured
Problem:    Github actions not optimally configured.
Solution:   Run CI on any pushed branches. Set fail-fast. (Ozaki Kiichi,
            closes #7184)
2020-10-22 17:33:17 +02:00
Bram Moolenaar
371806e164 patch 8.2.1886: using ":silent!" in a popup filter has unexpected effect
Problem:    Using ":silent!" in a popup filter has unexpected effect.
Solution:   Use did_emsg instead of called_emsg. (closes #7178)
2020-10-22 13:44:54 +02:00
Bram Moolenaar
2733779a1a patch 8.2.1885: filetype tests unnessarily creates swap files
Problem:    Filetype tests unnessarily creates swap files.
Solution:   Disable 'swapfile'. (Ken Takata, closes #7183)
2020-10-22 12:33:32 +02:00
Bram Moolenaar
a1224cb706 patch 8.2.1884: compiler warning for uninitialized variable
Problem:    Compiler warning for uninitialized variable. (John Marriott)
Solution:   Initialize with NULL.
2020-10-22 12:31:49 +02:00
Bram Moolenaar
4ce5fe4c87 patch 8.2.1883: compiler warnings when using Python
Problem:    Compiler warnings when using Python.
Solution:   Adjust PyCFunction to also have the second argument.  Use "int"
            return type for some functions.  Insert "(void *)" to get rid of
            the remaining warnings.
2020-10-21 21:01:59 +02:00
Bram Moolenaar
c58f5456e5 patch 8.2.1882: Vim9: v:disallow_let is no longer needed
Problem:    Vim9: v:disallow_let is no longer needed.
Solution:   Remove v:disallow_let.
2020-10-21 20:58:52 +02:00
Bram Moolenaar
692d1a51e7 patch 8.2.1881: cannot build with GTK3
Problem:    Cannot build with GTK3.
Solution:   Adjust form functions.
2020-10-21 17:28:27 +02:00
Bram Moolenaar
af7a9066a9 patch 8.2.1880: Vim9: asan complains about adding zero to NULL
Problem:    Vim9: Asan complains about adding zero to NULL.
Solution:   Check for argument count first.
2020-10-21 16:49:17 +02:00
Bram Moolenaar
ca17453e73 patch 8.2.1879: Vim9: argument types of insert() not checked when compiling
Problem:    Vim9: argument types of insert() not checked when compiling.
Solution:   Add argument type checks for insert().
2020-10-21 16:42:22 +02:00
Bram Moolenaar
8a99e66b4f patch 8.2.1878: GTK: error for redefining function
Problem:    GTK: error for redefining function. (Tony Mechelynck)
Solution:   Remove "gtk_" prefix from local functions and prepend "gui_" to
            global functions.
2020-10-21 16:10:21 +02:00
Bram Moolenaar
b8f519e538 patch 8.2.1877: test for function list fails
Problem:    Test for function list fails.
Solution:   Move "obsolete" comments one line up.
2020-10-21 14:49:08 +02:00
Bram Moolenaar
94738d8fab patch 8.2.1876: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types for builtin functions are not checked at
            compile time.
Solution:   Add an argument type checking mechanism. Implement type checks for
            one function.
2020-10-21 14:25:07 +02:00
Bram Moolenaar
3da855c8e2 patch 8.2.1875: warning when building GTK gui
Problem:    Warning when building GTK gui.
Solution:   Add missing function parameter.
2020-10-21 12:38:00 +02:00
Bram Moolenaar
b53e13a91a patch 8.2.1874: can't do something just before leaving Insert mode
Problem:    Can't do something just before leaving Insert mode.
Solution:   Add the InsertLeavePre autocommand event. (closes #7177)
2020-10-21 12:19:53 +02:00
Bram Moolenaar
20d89e0ac6 patch 8.2.1873: Vim9: missing white space when using <f-args>
Problem:    Vim9: missing white space when using <f-args>.
Solution:   Add spaces. (Christian J. Robinson)
2020-10-20 23:11:33 +02:00
Bram Moolenaar
e9f9f16387 patch 8.2.1872: matchfuzzy() does not prefer sequential matches
Problem:    Matchfuzzy() does not prefer sequential matches.
Solution:   Give sequential matches a higher bonus. (Christian Brabandt,
            closes #7140)
2020-10-20 19:01:30 +02:00
Bram Moolenaar
c95940c06a patch 8.2.1871: using %v in 'errorformat' may fail before %Z
Problem:    Using %v in 'errorformat' may fail before %Z.
Solution:   Set qf_viscol only when qf_col is set. (closes #7169)
2020-10-20 14:59:12 +02:00
Bram Moolenaar
39ca4127a0 patch 8.2.1870: Vim9: no need to keep all script variables
Problem:    Vim9: no need to keep all script variables.
Solution:   Only keep script variables when a function was defined that could
            use them.  Fix freeing static string on exit.
2020-10-20 14:25:07 +02:00
Bram Moolenaar
955347cc7e patch 8.2.1869: Vim9: memory leak when using add()
Problem:    Vim9: memory leak when using add().
Solution:   Free the added item.
2020-10-19 23:01:46 +02:00
Bram Moolenaar
9a13e185e5 patch 8.2.1868: Vim9: no error for missing space after comma in dict
Problem:    Vim9: no error for missing space after comma in dict.
Solution:   Check for white space. (closes #6672)
2020-10-19 21:45:07 +02:00
Bram Moolenaar
80b0e5ea11 patch 8.2.1867: Vim9: argument to add() not checked for blob
Problem:    Vim9: argument to add() not checked for blob.
Solution:   Add the BLOBAPPEND instruction.
2020-10-19 20:45:36 +02:00
Bram Moolenaar
66fa5fd54f patch 8.2.1866: Vim9: appending to pushed blob gives wrong result
Problem:    Vim9: appending to pushed blob gives wrong result.
Solution:   Set ga_maxlen when copying a blob.
2020-10-19 20:21:03 +02:00
Bram Moolenaar
1dcae59957 patch 8.2.1865: Vim9: add() does not check type of argument
Problem:    Vim9: add() does not check type of argument.
Solution:   Inline the add() call. (closes #7160)
2020-10-19 19:02:42 +02:00
Bram Moolenaar
334a8b4bde patch 8.2.1864: Vim9: no error for wrong list type
Problem:    Vim9: no error for wrong list type.
Solution:   Add flag to indicate a constant. (closes #7160)
2020-10-19 16:07:42 +02:00
Bram Moolenaar
e3c65ce4e5 patch 8.2.1863: json code not sufficiently tested
Problem:    Json code not sufficiently tested.
Solution:   Add more test cases. (Dominique Pellé, closes #7166)
2020-10-19 13:12:33 +02:00
Bram Moolenaar
2ea79ad835 patch 8.2.1862: vim9: memory leak when compiling lambda fails
Problem:    vim9: memory leak when compiling lambda fails.
Solution:   Call clear_evalarg().
2020-10-18 23:32:13 +02:00
Bram Moolenaar
a2c026d0fd patch 8.2.1861: Vim9: no specific error when parsing lambda fails
Problem:    Vim9: no specific error when parsing lambda fails.
Solution:   Also give syntax errors when not evaluating. (closes #7154)
2020-10-18 18:03:17 +02:00
Bram Moolenaar
335e671322 patch 8.2.1860: Vim9: memory leak when throwing empty string
Problem:    Vim9: memory leak when throwing empty string.
Solution:   Free the empty string.
2020-10-17 22:58:21 +02:00
Bram Moolenaar
352134bbfb patch 8.2.1859: Vim9: crash in unpack assignment
Problem:    Vim9: crash in unpack assignment.
Solution:   Make sure an error message is turned into an exception.
            (closes #7159)
2020-10-17 22:04:08 +02:00
Bram Moolenaar
403dc31f5a patch 8.2.1858: Vim9: filter functions return number instead of bool
Problem:    Vim9: filter functions return number instead of bool.
Solution:   Return v:true instead of one. (closes #7144)
2020-10-17 19:29:51 +02:00
Bram Moolenaar
218450ad5e patch 8.2.1857: Vim9: using job_status() on an unused var gives an error
Problem:    Vim9: using job_status() on an unused var gives an error.
Solution:   Return "fail". (closes #7158)
2020-10-17 18:51:52 +02:00
Bram Moolenaar
9668cc57a1 patch 8.2.1856: "2resize" uses size of current window
Problem:    "2resize" uses size of current window.
Solution:   Use size of resized window. (Yasuhiro Matsumoto, closes #7152)
2020-10-17 17:39:55 +02:00
Bram Moolenaar
e13bdec6b9 patch 8.2.1855: Vim9: get error message when nothing is wrong
Problem:    Vim9: get error message when nothing is wrong.
Solution:   Check called_emsg instead of did_emsg. (closes #7143)
2020-10-16 23:16:47 +02:00
Bram Moolenaar
1e021e63c5 patch 8.2.1854: Vim9: crash when throwing exception for NULL string
Problem:    Vim9: crash when throwing exception for NULL string. (Dhiraj
            Mishra)
Solution:   Handle NULL string like empty string. (closes #7139)
2020-10-16 20:25:23 +02:00
Bram Moolenaar
7a66a17190 patch 8.2.1853: "to_f" is recognized at "topleft" modifier
Problem:    "to_f" is recognized at "topleft" modifier.
Solution:   Do not recognize modifer when "_" follows. (closes #7019)
2020-10-16 19:56:12 +02:00
Bram Moolenaar
ffdf8adfa8 patch 8.2.1852: map() returing zero for NULL list is unexpected
Problem:    map() returing zero for NULL list is unexpected.
Solution:   Return the empty list. (closes #7133)
2020-10-15 22:29:17 +02:00
Bram Moolenaar
27491cd3ef patch 8.2.1851: Vim9: "!" followed by space incorrectly used
Problem:    Vim9: "!" followed by space incorrectly used.
Solution:   Skip over trailing spaces. (closes #7131)
2020-10-15 21:54:56 +02:00
Bram Moolenaar
a604ccc959 patch 8.2.1850: "vat" does not select tags correctly over line break
Problem:    "vat" does not select tags correctly over line break.
Solution:   Adjust the search pattern. (Aufar Gilbran, closes #7136)
2020-10-15 21:23:28 +02:00
Bram Moolenaar
ed234f24f3 patch 8.2.1849: Vim9: garbage collection frees block-local variables
Problem:    Vim9: garbage collection frees block-local variables.
Solution:   Mark all script variables as used.
2020-10-15 20:42:20 +02:00
Bram Moolenaar
74f8eece5e patch 8.2.1848: crash when passing a NULL string or list to popup_settext()
Problem:    Crashyyyyy passing a NULL string or list to popup_settext().
Solution:   Check for NULL pointers. (closes #7132)
2020-10-15 19:10:56 +02:00
Bram Moolenaar
209f0208f7 patch 8.2.1847: Vim9: using negative value for unsigned type
Problem:    Vim9: using negative value for unsigned type.
Solution:   Use zero instead of -1.
2020-10-15 13:57:56 +02:00
Bram Moolenaar
fbbcd00367 patch 8.2.1846: Vim9: block variables are not found in compiled function
Problem:    Vim9: variables declared in a local block are not found in
            when a function is compiled.
Solution:   Look for script variables in sn_all_vars.
2020-10-15 12:46:44 +02:00
Bram Moolenaar
8d739de43b patch 8.2.1845: Vim9: function defined in a block can't use block variables
Problem:    Vim9: function defined in a block can't use variables defined in
            that block.
Solution:   First step: Make a second hashtab that holds all script variables,
            also block-local ones, with more information.
2020-10-14 19:39:19 +02:00
Bram Moolenaar
3d30af8783 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Problem:    Using "q" at the more prompt doesn't stop a long message.
Solution:   Check for "got_int". (closes #7122)
2020-10-13 22:15:56 +02:00
Bram Moolenaar
b9616af23f patch 8.2.1843: Netbeans: with huge buffer number memory allocation may fail
Problem:    Netbeans: with huge buffer number memory allocation may fail.
Solution:   Check for size overflow.
2020-10-13 21:11:13 +02:00
Bram Moolenaar
21cbe175ee patch 8.2.1842: crash when USE_FNAME_CASE is defined and using :browse
Problem:    Crash when USE_FNAME_CASE is defined and using :browse.
Solution:   Don't use read-only memory for ".". (Yegappan Lakshmanan,
            closes #7123)
2020-10-13 19:08:24 +02:00
Bram Moolenaar
2b9b17ea5d patch 8.2.1841: Vim9: test for compilation error fails in normal build
Problem:    Vim9: test for compilation error fails in normal build.
Solution:   Invoke CheckRunVimInTerminal in a separate function.
2020-10-13 18:38:11 +02:00
Bram Moolenaar
f4e8cdd3d2 patch 8.2.1840: Vim9: error message is not clear about compilation error
Problem:    Vim9: error message is not clear about compilation error.
Solution:   Say "compiling" instead of "processing".
2020-10-12 22:07:13 +02:00
Bram Moolenaar
fc8aa6d02d patch 8.2.1839: Vim9: memory leaks reported in assign test
Problem:    Vim9: memory leaks reported in assign test.
Solution:   Move the failing job_start() call to separate test files, it
            causes false leak reports.
2020-10-12 20:31:26 +02:00
Bram Moolenaar
93be1644db patch 8.2.1838: Vim9: cannot insert a comment line in an expression
Problem:    Vim9: cannot insert a comment line in an expression.
Solution:   Skip comment lines at the script level. (closes #7111)
2020-10-11 21:34:41 +02:00
Bram Moolenaar
c07b7f701f patch 8.2.1837: using "gn" after "gN" does not work
Problem:    Using "gn" after "gN" does not work.
Solution:   Extend the other end of the Visual area. (closes #7109)
2020-10-11 20:44:15 +02:00
Bram Moolenaar
62cd26a229 patch 8.2.1836: autocmd test fails on pacifist systems
Problem:    Autocmd test fails on pacifist systems.
Solution:   Check that /bin/kill exists. (James McCoy, closes #7117)
            Tune the timing, make the autocmd test run faster.
2020-10-11 20:08:44 +02:00
Bram Moolenaar
6eb36ade98 patch 8.2.1835: ":help ??" finds the "!!" tag
Problem:    ":help ??" finds the "!!" tag.
Solution:   Do not translate "?" into ".".  (Naruhiko Nishino, closes #7114,
            closes #7115)
2020-10-11 19:08:33 +02:00
Bram Moolenaar
efc0d94afc patch 8.2.1834: PyEval_InitThreads() is deprecated in Python 3.9
Problem:    PyEval_InitThreads() is deprecated in Python 3.9.
Solution:   Do not call PyEval_InitThreads in Python 3.9 and later. (Ken
            Takata, closes #7113)  Avoid warnings for functions.
2020-10-11 18:05:02 +02:00
Bram Moolenaar
204ade6bcb patch 8.2.1833: when reading from stdin dup() is called twice
Problem:    When reading from stdin dup() is called twice.
Solution:   Remove the dup() in main.c. (Ken Takata, closes #7110)
2020-10-11 14:58:46 +02:00
Bram Moolenaar
aab9fada4a patch 8.2.1832: readdirex() error is displayed as a message
Problem:    readdirex() error is displayed as a message. (Yegappan Lakshmanan)
Solution:   Use semsg() instead of smsg().
2020-10-11 14:28:11 +02:00
Bram Moolenaar
ef16c90423 patch 8.2.1831: file missing from distribution
Problem:    File missing from distribution.
Solution:   Add the github code analyses file.
2020-10-11 14:22:22 +02:00
Bram Moolenaar
4f4d51a942 Update runtime files. 2020-10-11 13:57:40 +02:00
Bram Moolenaar
c6ed254d9f patch 8.2.1830: MS-Windows: Python3 issue with stdin
Problem:    MS-Windows: Python3 issue with stdin.
Solution:   Check if stdin is readable. (Ken Takata, closes #7106)
2020-10-10 23:26:28 +02:00
Bram Moolenaar
bd6428b9e7 patch 8.2.1829: warnings when executing Github actions
Problem:    Warnings when executing Github actions.
Solution:   Use another method to set environment variables. (Ken Takata,
            closes #7107)
2020-10-10 22:34:36 +02:00
Bram Moolenaar
1b1e9df78b patch 8.2.1828: build failure without the +eval feature
Problem:    Build failure without the +eval feature.
Solution:   Add dummys for ex_block and ex_endblock.
2020-10-10 22:26:52 +02:00
Bram Moolenaar
10a1a534d1 patch 8.2.1827: filetype detection does not test enough file names
Problem:    Filetype detection does not test enough file names.
Solution:   Test more file names. (Adam Stankiewicz, closes #7099)
2020-10-10 21:50:25 +02:00
Bram Moolenaar
9becdf2b98 patch 8.2.1826: Vim9: cannot use a {} block at script level
Problem:    Vim9: cannot use a {} block at script level.
Solution:   Recognize a {} block.
2020-10-10 21:33:48 +02:00
Bram Moolenaar
d747548c66 patch 8.2.1825: Vim9: accessing freed memory
Problem:    Vim9: accessing freed memory.
Solution:   Clear sv_name when the variable is deleted.
2020-10-10 20:31:37 +02:00
Bram Moolenaar
fcdc5d83fb patch 8.2.1824: Vim9: variables at the script level escape their scope
Problem:    Vim9: variables at the script level escape their scope.
Solution:   When leaving a scope remove variables declared in it.
2020-10-10 19:07:09 +02:00
Bram Moolenaar
28f224b2c1 patch 8.2.1823: "gN" does not select the matched string
Problem:    "gN" does not select the matched string.
Solution:   Move the cursor to the start of the match.
2020-10-10 16:45:25 +02:00
Bram Moolenaar
f57497276b patch 8.2.1822: list test doesn't fail
Problem:    List test doesn't fail.
Solution:   Adjust the test for NULL list handling.
2020-10-10 16:42:39 +02:00
Bram Moolenaar
1a73923705 patch 8.2.1821: Vim9: concatenating to a NULL list doesn't work
Problem:    Vim9: concatenating to a NULL list doesn't work.
Solution:   Handle a NULL list like an empty list. (closes #7064)
2020-10-10 15:37:58 +02:00
Bram Moolenaar
820d55a50b patch 8.2.1820: Vim9: crash when error happens in timer callback
Problem:    Vim9: crash when error happens in timer callback.
Solution:   Check that current_exception is not NULL. (closes #7100)
2020-10-10 15:05:23 +02:00
Bram Moolenaar
85d5e2b723 patch 8.2.1819: Vim9: Memory leak when using a closure
Problem:    Vim9: Memory leak when using a closure.
Solution:   Compute the mininal refcount in the funcstack.  Reenable disabled
            tests.
2020-10-10 14:13:01 +02:00
Bram Moolenaar
8956023920 patch 8.2.1818: SE Linux: deprecation warning for security_context_t
Problem:    SE Linux: deprecation warning for security_context_t.
Solution:   Use "char *" instead. (James McCoy, closes #7093)
2020-10-09 23:04:47 +02:00
Bram Moolenaar
e8211a33dc patch 8.2.1817: Vim9: wrong instruction when reusing a local variable spot
Problem:    Vim9: wrong instruction when reusing a local variable spot.
Solution:   Clear a newly allocated local variable. (closes #7080)
2020-10-09 22:04:29 +02:00
Bram Moolenaar
11416321ff patch 8.2.1816: Vim9: another memory leak when using function reference
Problem:    Vim9: another memory leak when using function reference.
Solution:   Temporarily disable the tests.
2020-10-09 10:20:53 +02:00
Bram Moolenaar
6a61421f64 patch 8.2.1815: Vim9: memory leak when using function reference
Problem:    Vim9: memory leak when using function reference.
Solution:   Temporarily disable the test.
2020-10-08 23:21:21 +02:00
Bram Moolenaar
922acbda3d patch 8.2.1814: missing change to remove "static"
Problem:    Missing change to remove "static".
Solution:   Add the change.
2020-10-08 21:30:40 +02:00
Bram Moolenaar
10c65860f8 patch 8.2.1813: Vim9: can assign wrong type to script dict
Problem:    Vim9: can assign wrong type to script dict. (Christian J.  Robinson)
Solution:   Check the type if known.
2020-10-08 21:16:42 +02:00
Bram Moolenaar
0876c78527 patch 8.2.1812: Vim9: nested closure throws an internal error
Problem:    Vim9: nested closure throws an internal error.
Solution:   Do not skip a local variable with a partial. (closes #7065)
2020-10-07 19:08:04 +02:00
Bram Moolenaar
9a033d7b18 patch 8.2.1811: mapping Ctrl-key does not work for '{', '}' and '|'
Problem:    Mapping Ctrl-key does not work for '{', '}' and '|'.
Solution:   Remove the shift modifier. (closes #6457)
2020-10-07 17:29:48 +02:00
Bram Moolenaar
d7e5e9430a patch 8.2.1810: some code in normal.c not covered by tests
Problem:    Some code in normal.c not covered by tests.
Solution:   Add normal mode tests. (Yegappan Lakshmanan, closes #7086)
2020-10-07 16:54:52 +02:00
Bram Moolenaar
4e2114e988 patch 8.2.1809: mapping some keys with Ctrl does not work properly
Problem:    Mapping some keys with Ctrl does not work properly.
Solution:   For terminal, GTK and Motif handle "@", "^" and "_" codes.
2020-10-07 16:12:37 +02:00
Bram Moolenaar
f12f0022e6 patch 8.2.1808: no test coverage for ":spelldump!"
Problem:    No test coverage for ":spelldump!".
Solution:   Add a test. (Dominique Pellé, closes #7089)
2020-10-07 12:58:44 +02:00
Bram Moolenaar
349f609f89 patch 8.2.1807: can use :help in a terminal popup window
Problem:    Can use :help in a terminal popup window.
Solution:   Give an error. (closes #7088)
2020-10-06 20:46:49 +02:00
Bram Moolenaar
253b16a4ab patch 8.2.1806: MS-Windows with Python: Vim freezes after import command
Problem:    MS-Windows with Python: Vim freezes after import command.
Solution:   Use either "NUL" or "CONIN$" when reopening stdin. (Yasuhiro
            Matsumoto, closes #7083)
2020-10-06 19:59:06 +02:00
Bram Moolenaar
80361a5f2b patch 8.2.1805: Unix: terminal mode changed when using ":shell"
Problem:    Unix: terminal mode changed when using ":shell".
Solution:   Avoid calling settmode() when not needed. (issue #7079)
2020-10-05 21:39:25 +02:00
Bram Moolenaar
50c4e9e08f patch 8.2.1804: resolve('/') returns an empty string
Problem:    resolve('/') returns an empty string.
Solution:   Don't remove single slash. (closes #7074)
2020-10-05 20:38:06 +02:00
Bram Moolenaar
afe8cf6170 patch 8.2.1803: a few failures are not tested
Problem:    A few failures are not tested.
Solution:   Test a few failures. (Dominique Pellé, closes #7075)
2020-10-05 20:07:18 +02:00
Bram Moolenaar
44aefffaad patch 8.2.1802: Vim9: crash with unterminated dict
Problem:    Vim9: crash with unterminated dict. (Dhiraj Mishra)
Solution:   Return empty string instead of NULL. (closes #7084)
2020-10-05 19:23:59 +02:00
Bram Moolenaar
55b419b871 patch 8.2.1801: undo file not found when using ":args" or ":next"
Problem:    Undo file not found when using ":args" or ":next".
Solution:   Handle like editing another file. (closes #7072)
2020-10-04 19:56:39 +02:00
Bram Moolenaar
dda749ce85 patch 8.2.1800: Vim9: memory leak if "if" condition is invalid
Problem:    Vim9: memory leak if "if" condition is invalid.
Solution:   Free ppconst earlier.
2020-10-04 17:24:29 +02:00
Bram Moolenaar
d1ad99b654 patch 8.2.1799: some Normal mode commands not fully tested
Problem:    Some Normal mode commands not fully tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #7073)
2020-10-04 16:16:54 +02:00
Bram Moolenaar
1310660557 patch 8.2.1798: Vim9: trinary operator condition is too permissive
Problem:    Vim9: trinary operator condition is too permissive.
Solution:   Use tv_get_bool_chk().
2020-10-04 16:06:05 +02:00
Bram Moolenaar
6abd3dc257 patch 8.2.1797: Vim9: some parts of the code not tested
Problem:    Vim9: some parts of the code not tested.
Solution:   Add a few tests.
2020-10-04 14:17:32 +02:00
Bram Moolenaar
7b5d544269 patch 8.2.1796: Vim9: invalid memory access with weird function name
Problem:    Vim9: invalid memory access with weird function name. (Dhiraj
            Mishra)
Solution:   Check the name is valid.  Add a test.
2020-10-04 13:42:34 +02:00
Bram Moolenaar
2bb2658bef patch 8.2.1795: Vim9: operators && and || have a confusing result
Problem:    Vim9: operators && and || have a confusing result.
Solution:   Make the result a boolean.
2020-10-03 22:52:39 +02:00
Bram Moolenaar
92f26c256e patch 8.2.1794: no falsy Coalescing operator
Problem:    No falsy Coalescing operator.
Solution:   Add the "??" operator.  Fix mistake with function argument count.
2020-10-03 20:17:30 +02:00
Bram Moolenaar
c8fe645c19 patch 8.2.1793: not consistently giving the "is a directory" warning
Problem:    Not consistently giving the "is a directory" warning.
Solution:   Adjust check for illegal file name and directory. (Yasuhiro
            Matsumoto, closes #7067)
2020-10-03 17:04:37 +02:00
Bram Moolenaar
588d241d44 patch 8.2.1792: Configure does not recognize Racket 6.1+
Problem:    Configure does not recognize Racket 6.1+.
Solution:   Add a check for "rktio". (closes #7062)
2020-10-03 14:24:19 +02:00
Bram Moolenaar
1bdae40323 patch 8.2.1791: Vim9: debugger test fails
Problem:    Vim9: debugger test fails.
Solution:   Use "var" instead of "let".
2020-10-03 14:14:56 +02:00
Bram Moolenaar
794771cfd8 patch 8.2.1790: MS-Windows with Python: crash when executed from Vifm
Problem:    MS-Windows with Python: crash when executed from Vifm.
Solution:   Use NUL instead of CONIN. (Ken Takata, closes #7061, closes #7053)
2020-10-03 13:57:13 +02:00
Bram Moolenaar
c1f0066b64 patch 8.2.1789: Vim9: crash with invalid list constant
Problem:    Vim9: crash with invalid list constant. (Dhiraj Mishra)
Solution:   Return FAIL when compiling the list fails. (closes #7066)
2020-10-03 13:41:53 +02:00
Bram Moolenaar
016faaa1b2 patch 8.2.1788: Vim9: still allows :let for declarations
Problem:    Vim9: still allows :let for declarations.
Solution:   Make the default for v:disallow_let one.  It can still be set to
            zero to allow for using :let.
2020-10-03 12:57:27 +02:00
Bram Moolenaar
795aaa1e84 patch 8.2.1787: crash with 'incsearch' and very long line
Problem:    Crash with 'incsearch' and very long line.
Solution:   Check whether regprog becomes NULL. (closes #7063)
2020-10-02 20:36:01 +02:00
Bram Moolenaar
8a9bc95eae patch 8.2.1786: various Normal mode commands not fully tested
Problem:    Various Normal mode commands not fully tested.
Solution:   Add more tests. (Yegappan Lakshmanan, closes #7059)
2020-10-02 18:48:07 +02:00
Bram Moolenaar
3f974ff45e patch 8.2.1785: compiler warning for strcp() out of bounds
Problem:    Compiler warning for strcp() out of bounds. (Christian Brabandt)
Solution:   use memmove() instead.
2020-10-02 18:11:56 +02:00
Bram Moolenaar
fa79be6b10 patch 8.2.1784: commits are not scanned for security problems
Problem:    commits are not scanned for security problems
Solution:   Enable Github code scanning. (Christian Brabandt, closes #7057)
2020-10-02 10:29:45 +02:00
Bram Moolenaar
bdf931c25b patch 8.2.1783: try-catch test fails
Problem:    Try-catch test fails.
Solution:   Don't call win_enter(), only call enterering_window().
2020-10-01 22:37:40 +02:00
Bram Moolenaar
74273e6691 patch 8.2.1782: Vim9: cannot pass boolean to mapset()
Problem:    Vim9: cannot pass boolean to mapset().
Solution:   Use get_tv_bool(). (closes #7041)
2020-10-01 21:37:21 +02:00
Bram Moolenaar
4537bcc889 patch 8.2.1781: writing to prompt buffer interferes with insert mode
Problem:    Writing to prompt buffer interferes with insert mode.
Solution:   Use win_enter() instead of just setting "curwin". (Ben Jackson,
            closes #7035)
2020-10-01 20:03:04 +02:00
Bram Moolenaar
668008be66 patch 8.2.1780: statusline not updated when splitting windows
Problem:    Statusline not updated when splitting windows.
Solution:   Call status_redraw_all(). (Jason Franklin, closes #5496)
2020-10-01 19:06:35 +02:00
Bram Moolenaar
0022675aa3 patch 8.2.1779: some debian changelog files are not recognized
Problem:    Some debian changelog files are not recognized.
Solution:   Add */debian/changelog. (Jason Franklin)
2020-10-01 16:54:07 +02:00
Bram Moolenaar
5366e1aecf patch 8.2.1778: Vim9: returning from a partial call clears outer context
Problem:    Vim9: returning from a partial call clears outer context, causing
            a crash.
Solution:   Put the outer context in the stack frame. (closes #7044)
2020-10-01 13:01:34 +02:00
Bram Moolenaar
55759b5228 patch 8.2.1777: Vim9: some assignment tests in the wrong file
Problem:    Vim9: some assignment tests in the wrong file.
Solution:   Move assignment tests to test_vim9_assign.
2020-09-30 22:59:42 +02:00
Bram Moolenaar
17bb4d4607 patch 8.2.1776: filetype.vim may be loaded twice
Problem:    Filetype.vim may be loaded twice.
Solution:   Do "syntax on" after "filetype on". (Adam Stankiewicz,
            closes #7049)
2020-09-30 22:45:39 +02:00
Bram Moolenaar
8ec92c9779 patch 8.2.1775: MS-Windows: adding a long quickfix list is slow
Problem:    MS-Windows: adding a long quickfix list is slow.
Solution:   Shorten the buffer name only for the first entry. (Yegappan
            Lakshmanan, closes #7039, closes #7033)
2020-09-29 22:47:03 +02:00
Bram Moolenaar
32fbc4f247 patch 8.2.1774: GTK: hang when forced to exit
Problem:    GTK: hang when forced to exit.
Solution:   Do not clean up "mainwin" when really_exiting is set.
            (Zdenek Dohnal, closes #7042)
2020-09-29 22:16:09 +02:00
Bram Moolenaar
1b9129809d patch 8.2.1773: crash when calling mapset() with a list as first argument
Problem:    Crash when calling mapset() with a list as first argument.
Solution:   Check for NULL. (closes #7040)
2020-09-29 21:45:41 +02:00
Bram Moolenaar
f43e7ac4ee patch 8.2.1772: cannot use CTRL-W <Down> to move out of a terminal window
Problem:    Cannot use CTRL-W <Down> to move out of a terminal window.
Solution:   Use special_to_buf() instead of mb_char2bytes(). (closes #7045)
2020-09-29 21:23:25 +02:00
Bram Moolenaar
391c362794 patch 8.2.1771: synIDattr() cannot get the value of ctermul
Problem:    synIDattr() cannot get the value of ctermul.
Solution:   Add the "ul" value for "what". (closes #7037)
2020-09-29 20:59:17 +02:00
Bram Moolenaar
d569a9e746 patch 8.2.1770: invalid memory use when using SpellFileMissing autocmd
Problem:    Invalid memory use when using SpellFileMissing autocmd.
Solution:   Add test case. (Dominique Pellé, closes #7036)  Fix using a window
            that was closed.
2020-09-28 23:13:15 +02:00
Bram Moolenaar
4934ad0e44 patch 8.2.1769: popup filter interferes with using :normal to move the cursor
Problem:    A popup filter interferes with using :normal to move the cursor in
            a popup.
Solution:   Do not invoke the filter when ex_normal_busy is set.
2020-09-28 22:29:58 +02:00
Bram Moolenaar
d58a3bf7da Update runtime files. 2020-09-28 21:48:16 +02:00
Bram Moolenaar
b45cd36bd9 patch 8.2.1768: cannot use the help menu from a terminal window
Problem:    Cannot use the help menu from a terminal window.
Solution:   Add ":tlnoremenu" commands. (Yee Cheng Chin, closes #7023)
2020-09-28 21:41:49 +02:00
Bram Moolenaar
727345ebea patch 8.2.1767: Vim9: test fails with python support
Problem:    Vim9: test fails with python support.
Solution:   Use "let" in legacy function.
2020-09-27 23:33:59 +02:00
Bram Moolenaar
7a9cbca00a patch 8.2.1766: Vim9: Some tests are still using :let
Problem:    Vim9: Some tests are still using :let.
Solution:   Change the last few declarations to use :var.
2020-09-27 22:47:05 +02:00
Bram Moolenaar
9830938e77 patch 8.2.1765: Vim9: some tests use "var var"
Problem:    Vim9: some tests use "var var".
Solution:   Use "var name". (closes #7032)
2020-09-27 21:58:45 +02:00
Bram Moolenaar
06f9c6940a patch 8.2.1764: Vim9: no error when assigning to script var with wrong type
Problem:    Vim9: no error when assigning to script var with wrong type.
Solution:   Fix off-by-one error. (closes #7028)
2020-09-27 21:27:40 +02:00
Bram Moolenaar
6c542f77eb patch 8.2.1763: Vim9: cannot use "true" for popup window scrollbar option
Problem:    Vim9: cannot use "true" for popup window scrollbar option.
Solution:   use dict_get_bool(). (closes #7029)
2020-09-27 21:16:45 +02:00
Bram Moolenaar
d0e1b7103c patch 8.2.1762: when a timer uses :stopinsert completion isn't stopped
Problem:    When a timer uses :stopinsert Insert mode completion isn't
            stopped. (Stanley Chan)
Solution:   Call ins_compl_prep(ESC).
2020-09-27 20:13:03 +02:00
Bram Moolenaar
ac564082f1 patch 8.2.1761: Vim9: Some tests are still using :let
Problem:    Vim9: Some tests are still using :let.
Solution:   Change more declarations to use :var.
2020-09-27 19:05:33 +02:00
Bram Moolenaar
2914a20abc patch 8.2.1760: Vim9: crash when end marker is missing
Problem:    Vim9: crash when end marker is missing. (Dhiraj Mishra)
Solution:   Check for end of function lines. (closes #7031)
2020-09-27 18:24:03 +02:00
Bram Moolenaar
37ce6d3a6a patch 8.2.1759: Vim9: Some tests are still using :let
Problem:    Vim9: Some tests are still using :let.
Solution:   Change more declarations to use :var.
2020-09-27 17:57:43 +02:00
Bram Moolenaar
5597ba0467 patch 8.2.1758: Vim9: type of unmaterialized list is wrong
Problem:    Vim9: type of unmaterialized list is wrong.
Solution:   Use list<number>.
2020-09-27 17:45:03 +02:00
Bram Moolenaar
a5fe91e6dc patch 8.2.1757: Mac: default locale is lacking the encoding
Problem:    Mac: default locale is lacking the encoding.
Solution:   Add ".UTF-8 to the locale. (Yee Cheng Chin, closes #7022)
2020-09-27 16:03:15 +02:00
Bram Moolenaar
cfcd011fcd patch 8.2.1756: Vim9: :let will soon be disallowed
Problem:    Vim9: :let will soon be disallowed.
Solution:   Add v:disallow_let temporarily.  Fix tests.
2020-09-27 15:19:27 +02:00
Bram Moolenaar
c0e29010f6 patch 8.2.1755: Vim9: crash when using invalid heredoc marker
Problem:    Vim9: crash when using invalid heredoc marker. (Dhiraj Mishra)
Solution:   Check for NULL list. (closes #7027)  Fix comment character.
2020-09-27 14:22:48 +02:00
Bram Moolenaar
8c7ad3631a patch 8.2.1754: completion with spell checking not tested
Problem:    Completion with spell checking not tested.
Solution:   Add a test case. (Dominique Pellé, closes #7024)
2020-09-27 13:58:38 +02:00
Bram Moolenaar
f6a44f714a patch 8.2.1753: Vim9: crash when using import at script level
Problem:    Vim9: crash when using import at script level.
Solution:   Give a "not implemented yet" error. (closes #7026)
2020-09-27 13:51:14 +02:00
Bram Moolenaar
daff0fb738 patch 8.2.1752: GTK GUI: cannot map alt-? with <A-?>
Problem:    GTK GUI: cannot map alt-? with <A-?>. (Ingo Karkat)
Solution:   Adjust the characters for which the shift modifier is removed.
            (closes #7016)  Make Motif and Win32 use the same function as GTK.
2020-09-27 13:16:46 +02:00
Bram Moolenaar
bade44e5ca patch 8.2.1751: using 2 where bool is expected may throw an error
Problem:    Using 2 where bool is expected may throw an error.
Solution:   Make this backwards compatible.
2020-09-26 22:39:24 +02:00
Bram Moolenaar
3697c9bbae patch 8.2.1750: popup_setoptions() setting firstline fails if cursorline set
Problem:    Setting firstline with popup_setoptions() fails if cursorline is
            set.
Solution:   Use apply_options(). Update the popup before applying "zz".
            (closes #7010)
2020-09-26 22:03:00 +02:00
Bram Moolenaar
c70bdab0b8 patch 8.2.1749: Vim9: crash when closure fails in nested function
Problem:    Vim9: crash when closure fails in nested function.
Solution:   Handle function returns before dereferencing remaining closures.
            (closes #7008)
2020-09-26 19:59:38 +02:00
Bram Moolenaar
f3c51bbff1 patch 8.2.1748: closing split window in other tab may cause a crash
Problem:    Closing split window in other tab may cause a crash.
Solution:   Set tp_curwin properly. (Rob Pilling, closes #7018)
2020-09-26 19:11:39 +02:00
Bram Moolenaar
8f187fc630 patch 8.2.1747: result of expand() unexpectedly depends on 'completeslash'
Problem:    Result of expand() unexpectedly depends on 'completeslash'.
Solution:   Temporarily reset 'completeslash'. (Yasuhiro Matsumoto,
            closes #7021)
2020-09-26 18:47:11 +02:00
Bram Moolenaar
373863ed48 patch 8.2.1746: Vim9: cannot use "fina" for "finally"
Problem:    Vim9: Cannot use "fina" for "finally". (Naruhiko Nishino)
Solution:   Specifically check for "fina". (closes #7020)
2020-09-26 17:20:53 +02:00
Bram Moolenaar
d47f50b331 patch 8.2.1745: tiny version doesn't build
Problem:    Tiny version doesn't build.
Solution:   Add dummy ex_var() function.
2020-09-26 15:20:42 +02:00
Bram Moolenaar
30fd8204ce patch 8.2.1744: Vim9: using ":const!" is weird
Problem:    Vim9: using ":const!" is weird.
Solution:   Use "var" - "final" - "const" like Dart.  "let" still works for
            now.
2020-09-26 15:09:30 +02:00
Bram Moolenaar
273af497ca patch 8.2.1743: cannot build without the eval feature
Problem:    Cannot build without the eval feature.
Solution:   Move shorten_dir outside of #ifdef.
2020-09-25 23:49:01 +02:00
Bram Moolenaar
7e9210ea53 patch 8.2.1742: test still fails without the terminal feature
Problem:    Test still fails without the terminal feature.
Solution:   Put check for terminal feature in separate function.
2020-09-25 23:12:51 +02:00
Bram Moolenaar
6a33ef0deb patch 8.2.1741: pathshorten() only supports using one character
Problem:    pathshorten() only supports using one character.
Solution:   Add an argument to control the length. (closes #7006)
2020-09-25 22:42:48 +02:00
Bram Moolenaar
58dbef330c patch 8.2.1740: test fails without the terminal feature
Problem:    Test fails without the terminal feature.
Solution:   Skip test if the terminal feature is not available.
2020-09-25 22:13:05 +02:00
Bram Moolenaar
9c4f55204f patch 8.2.1739: Vim9: crash when compiling a manually defined function
Problem:    Vim9: crash when compiling a manually defined function. (Antony
            Scriven)
Solution:   Check that the script ID is positive. (closes #7012)
2020-09-25 21:47:28 +02:00
Bram Moolenaar
509f8031b2 patch 8.2.1738: Mac: str2float() recognizes comma instead of decimal point
Problem:    Mac: str2float() recognizes comma instead of decimal point.
Solution:   Set LC_NUMERIC to "C". (closes #7003)
2020-09-24 23:08:19 +02:00
Bram Moolenaar
10476521f5 patch 8.2.1737: cursor line highlight in popup window is not always updated
Problem:    Cursor line highlight in popup window is not always updated.
Solution:   Check if the cursor has moved. (closes #7010)
2020-09-24 22:57:31 +02:00
Bram Moolenaar
531be47ac5 patch 8.2.1736: failure to compile a pattern not tested much
Problem:    Failure to compile a pattern not tested much.
Solution:   Add tests where a pattern fails to compile. (Yegappan Lakshmanan,
            closes #7004)
2020-09-23 22:38:05 +02:00
Bram Moolenaar
851d108313 patch 8.2.1735: Github actions appear to timeout too soon
Problem:    Github actions appear to timeout too soon.
Solution:   use "timeout" instead of "ping".
2020-09-23 22:27:22 +02:00
Bram Moolenaar
148ce7ae62 patch 8.2.1734: Vim9: cannot use a funcref for a closure twice
Problem:    Vim9: cannot use a funcref for a closure twice.
Solution:   Instead of putting the funcref on the stack use a growarray on the
            execution context.
2020-09-23 21:57:23 +02:00
Bram Moolenaar
4ee711f213 patch 8.2.1733: Vim9: memory leaks when using nested function
Problem:    Vim9: memory leaks when using nested function.
Solution:   Free function when compilation fails.
2020-09-23 18:51:11 +02:00
Bram Moolenaar
6bf1b52ba2 patch 8.2.1732: stuck when win_execute() for a popup causes an error
Problem:    Stuck when win_execute() for a popup causes an error.
Solution:   Disable the filter callback on error. (issue #6999)
2020-09-23 17:41:26 +02:00
Bram Moolenaar
81ed496048 patch 8.2.1731: Vim9: cannot use += to append to empty NULL list
Problem:    Vim9: cannot use += to append to empty NULL list.
Solution:   Copy the list instead of extending it. (closes #6998)
2020-09-23 15:56:50 +02:00
Bram Moolenaar
04bdd573d0 patch 8.2.1730: Vim9: cannot use member of unknown type
Problem:    Vim9: cannot use member of unknown type.
Solution:   When type is unknown us "any". (closes #6997)
2020-09-23 13:25:32 +02:00
Bram Moolenaar
189832bf66 patch 8.2.1729: endless loop when ":normal" feeds popup window filter
Problem:    Endless loop when ":normal" feeds popup window filter.
Solution:   Add the ex_normal_busy_done flag.
2020-09-23 12:29:11 +02:00
Bram Moolenaar
c53e9c57a9 patch 8.2.1728: compiler warning for using uninitialized variable
Problem:    Compiler warning for using uninitialized variable. (John Marriott)
Solution:   Initialize "neighbor".
2020-09-22 22:08:32 +02:00
Bram Moolenaar
99ca9c4868 patch 8.2.1727: a popup created with "cursorline" will ignore "firstline"
Problem:    A popup created with "cursorline" will ignore "firstline".
Solution:   When both "cursorline" and "firstline" are present put the cursor
            on "firstline". (closes #7000)  Add the "winid" argument to
            getcurpos().
2020-09-22 21:55:41 +02:00
Bram Moolenaar
4f73b8e9cc patch 8.2.1726: fuzzy matching only works on strings
Problem:    Fuzzy matching only works on strings.
Solution:   Support passing a dict.  Add matchfuzzypos() to also get the match
            positions. (Yegappan Lakshmanan, closes #6947)
2020-09-22 20:33:50 +02:00
Bram Moolenaar
44aaf5416e patch 8.2.1725: not all Pascal files are recognized
Problem:    Not all Pascal files are recognized.
Solution:   Add filetype patterns. (Doug Kearns)
2020-09-22 19:15:31 +02:00
Bram Moolenaar
971caf53b8 patch 8.2.1724: Vim9: assignment tests spread out
Problem:    Vim9: assignment tests spread out.
Solution:   Create new test file for assignment tests.
2020-09-21 22:21:42 +02:00
Bram Moolenaar
280227270c patch 8.2.1723: Vim9: Variable argument name cannot start with underscore
Problem:    Vim9: Variable argument name cannot start with underscore.
Solution:   Use eval_isnamec1(). (closes #6988)
2020-09-21 22:02:49 +02:00
Bram Moolenaar
dbd759309b patch 8.2.1722: Vim9: cannot assign a lambda to a variable of type function
Problem:    Vim9: cannot assign a lambda to a variable of type function.
Solution:   Allow for assigning a partial to a variable of type function.
            (Naruhiko Nishino, closes #6996)
2020-09-21 21:48:21 +02:00
Bram Moolenaar
7f9c9c51a3 patch 8.2.1721: MS-Windows installer doesn't work
Problem:    MS-Windows installer doesn't work.
Solution:   Write "Russian" in ASCII. (closes #6995, see #).
2020-09-21 21:29:57 +02:00
Bram Moolenaar
078269bdce patch 8.2.1720: Vim9: memory leak with heredoc that isn't executed
Problem:    Vim9: memory leak with heredoc that isn't executed. (Dominique
            Pellé)
Solution:   Don't clear the list items. (closes #6991)
2020-09-21 20:35:55 +02:00
Bram Moolenaar
10e4f12bf4 patch 8.2.1719: Vim9: no error if comma is missing in between arguments
Problem:    Vim9: no error if comma is missing in between arguments.
Solution:   Give an error message.
2020-09-20 22:43:52 +02:00
Bram Moolenaar
b816dae16d patch 8.2.1718: Vim9: :def function disallows "firstline" for no good reason
Problem:    Vim9: :def function disallows "firstline" and "lastline" argument
            names for no good reason.
Solution:   Don't check the arguments for a :def function. (closes #6986)
2020-09-20 22:04:00 +02:00
Bram Moolenaar
809fcecddc patch 8.2.1717
Problem:    MS-Windows installer doesn't have Russian translations.
Solution:   Add Russian translations. (closes #6985)
2020-09-20 21:43:03 +02:00
Bram Moolenaar
b5cfff0b34 patch 8.2.1716: options window has duplicate translations
Problem:    Options window has duplicate translations.
Solution:   Make one entry for "global or local to buffer".  Fix wrong text.
            (closes #6983)
2020-09-20 21:32:03 +02:00
Bram Moolenaar
26cd3063b2 patch 8.2.1715: Motif GUI: commented out code missed {}
Problem:    Motif GUI: commented out code missed {}.
Solution:   Add {} and reenable the code. (similar to #6989)
2020-09-20 21:13:27 +02:00
Bram Moolenaar
8902b31f1b patch 8.2.1714: text properties corrupted with substitute command
Problem:    Text properties corrupted with substitute command. (Filipe
            Brandenburger)
Solution:   Get the changed line again after using u_savesub(). (closes #6984)
2020-09-20 21:04:35 +02:00
Bram Moolenaar
7795bfea6d patch 8.2.1713: Motif GUI: crash when setting menu colors
Problem:    Motif GUI: crash when setting menu colors. (Andrzej Bylicki)
Solution:   Add {} to make "n" incremented correctly. (closes #6989,
            closes #5948)
2020-09-20 19:57:15 +02:00
Bram Moolenaar
1d59aa1fdf Update runtime files. 2020-09-19 18:50:13 +02:00
Bram Moolenaar
a05e524f3a patch 8.2.1712: Vim9: leaking memory when calling a lambda
Problem:    Vim9: leaking memory when calling a lambda.
Solution:   Decrement function reference from ISN_DCALL.
2020-09-19 18:19:19 +02:00
Bram Moolenaar
fdeab65db6 patch 8.2.1711: Vim9: leaking memory when using partial
Problem:    Vim9: leaking memory when using partial.
Solution:   Do delete the function even when it was compiled.
2020-09-19 15:16:50 +02:00
Bram Moolenaar
77b20977dc patch 8.2.1710: Vim9: list of list type can be wrong
Problem:    Vim9: list of list type can be wrong.
Solution:   Use VAR_UNKNOWN for empty list.  Recognize VAR_UNKNOWN when
            looking for a common type. (closes #6979)
2020-09-19 14:12:34 +02:00
Bram Moolenaar
dec07510bb patch 8.2.1709: Vim9: memory leak when using multiple closures
Problem:    Vim9: memory leak when using multiple closures.
Solution:   Free the partial.
2020-09-18 23:11:10 +02:00
Bram Moolenaar
b185a40745 patch 8.2.1708: Vim9: error message for function has unpritable characters
Problem:    Vim9: error message for function has unpritable characters.
Solution:   use printable_func_name(). (closes #6965)
2020-09-18 22:42:00 +02:00
Bram Moolenaar
2bbada8116 patch 8.2.1707: small inconsitency in highlight test
Problem:    Small inconsitency in highlight test.
Solution:   Use one argument for :execute. (Antony Scriven, #6975)
2020-09-18 21:55:26 +02:00
Bram Moolenaar
7cbfaa51de patch 8.2.1706: Vim9: crash after running into the "Multiple closures" error
Problem:    Vim9: crash after running into the "Multiple closures" error.
Solution:   When a function fails still update any closures. (closes #6973)
2020-09-18 21:25:32 +02:00
Bram Moolenaar
e8df010498 patch 8.2.1705: "verbose hi Name" reports incorrect info after ":hi clear"
Problem:    "verbose hi Name" reports incorrect info after ":hi clear".
Solution:   Store the script context. (Antony Scriven, closes #6975)
2020-09-18 19:40:45 +02:00
Bram Moolenaar
77e5dcc36a patch 8.2.1704: Vim9: crash in for loop when autoload script has an error
Problem:    Vim9: crash in for loop when autoload script has an error.
Solution:   Reset suppress_errthrow.  Check for NULL list. (closes #6967)
2020-09-17 21:29:03 +02:00
Bram Moolenaar
213da551de patch 8.2.1703: ":highlight clear" does not restore default link
Problem:    ":highlight clear" does not restore default link.
Solution:   Remember the default link and restore it. (Antony Scriven,
            closes #6970, closes #4405)
2020-09-17 19:59:26 +02:00
Bram Moolenaar
da697645d5 patch 8.2.1702: crash when using undo after deleting folded lines
Problem:    Crash when using undo after deleting folded lines.
Solution:   Check for NULL pointer. (closes #6968)
2020-09-17 19:36:04 +02:00
Bram Moolenaar
08e51f446b patch 8.2.1701: Vim9: sort("i") does not work
Problem:    Vim9: sort("i") does not work.
Solution:   Don't try getting a number for a string argument. (closes #6958)
2020-09-16 23:23:36 +02:00
Bram Moolenaar
9939f57b7f patch 8.2.1700: Vim9: try/catch causes wrong value to be returned
Problem:    Vim9: try/catch causes wrong value to be returned.
Solution:   Reset tcd_return. (closes #6964)
2020-09-16 22:29:52 +02:00
Bram Moolenaar
916911f598 patch 8.2.1699: build failure due to missing error message
Problem:    Build failure due to missing error message.
Solution:   Add error message.
2020-09-16 21:41:53 +02:00
Bram Moolenaar
a187c43cfe patch 8.2.1698: cannot lock a variable in legacy Vim script like in Vim9
Problem:    Cannot lock a variable in legacy Vim script like in Vim9.
Solution:   Make ":lockvar 0" work.
2020-09-16 21:08:28 +02:00
Bram Moolenaar
7707228aac patch 8.2.1697: inconsistent capitalization of error messages
Problem:    Inconsistent capitalization of error messages.
Solution:   Always start with a capital.
2020-09-16 17:55:40 +02:00
Bram Moolenaar
2c12f89055 patch 8.2.1696: unused (duplicate) macros
Problem:    Unused (duplicate) macros.
Solution:   Remove the macros.
2020-09-16 17:30:27 +02:00
Bram Moolenaar
2f8cbc4b22 patch 8.2.1695: Vim9: crash when using varargs type "any"
Problem:    Vim9: crash when using varargs type "any".
Solution:   Check if uf_va_type is &t_any. (closes #6957)
2020-09-16 17:22:59 +02:00
Bram Moolenaar
573545a55a patch 8.2.1694: compiler warning for loss if data
Problem:    Compiler warning for loss if data.
Solution:   Add typecast.
2020-09-16 15:46:08 +02:00
Bram Moolenaar
05eb5b9cae patch 8.2.1693: "hi def" does not work for cleared highlight
Problem:    "hi def" does not work for cleared highlight.
Solution:   Check the "sg_cleared" flag. (Maxim Kim, closes #6956,
            closes #4405)
2020-09-16 15:43:21 +02:00
Bram Moolenaar
fb489af2ec patch 8.2.1692: build fails because TTFLAG_STATIC is missing
Problem:    Build fails because TTFLAG_STATIC is missing.
Solution:   Include missing change.
2020-09-16 15:41:09 +02:00
Bram Moolenaar
5e65423077 patch 8.2.1691: Vim9: list<any> is not accepted where list<number> is expected
Problem:    Vim9: list<any> is not accepted where list<number> is expected.
Solution:   Add functions to allocate and free a type_T, use it in
            ISN_CHECKTYPE. (closes #6959)
2020-09-16 15:22:00 +02:00
Bram Moolenaar
8b51b7f0f1 patch 8.2.1690: text properties not adjusted for "I" in Visual block mode
Problem:    Text properties not adjusted for "I" in Visual block mode.
Solution:   Call inserted_bytes().
2020-09-15 21:34:18 +02:00
Bram Moolenaar
ad5e5631c5 patch 8.2.1689: 'colorcolumn' doesn't show in indent
Problem:    'colorcolumn' doesn't show in indent.
Solution:   Also draw the column when draw_state is WL_BRI or WL_SBR.
            (Alexey Demin, closes #6948, closes #6619)
2020-09-15 20:52:26 +02:00
Bram Moolenaar
c8f12c9856 patch 8.2.1688: increment/decrement removes text property
Problem:    Increment/decrement removes text property.
Solution:   Insert the new number before deleting the old one. (closes #6962)
2020-09-15 20:34:10 +02:00
Bram Moolenaar
9b123d8590 patch 8.2.1687: Vim9: out of bounds error
Problem:    Vim9: out of bounds error.
Solution:   Check that cmdidx is not negative.
2020-09-14 22:39:11 +02:00
Bram Moolenaar
71abe48289 patch 8.2.1686: Vim9: "const!" not sufficiently tested
Problem:    Vim9: "const!" not sufficiently tested.
Solution:   Add a few more test cases.  Fix type checking.
2020-09-14 22:28:30 +02:00
Bram Moolenaar
0b4c66c67a patch 8.2.1685: Vim9: cannot declare a constant value
Problem:    Vim9: cannot declare a constant value.
Solution:   Introduce ":const!".
2020-09-14 21:39:44 +02:00
Bram Moolenaar
efd5d8a967 patch 8.2.1684: "gF" does not use line number after file in Visual mode
Problem:    "gF" does not use line number after file in Visual mode.
Solution:   Look for ":123" after the Visual area. (closes #6952)
2020-09-14 19:11:45 +02:00
Bram Moolenaar
2b22b113c6 patch 8.2.1683: Vim9: assignment test fails
Problem:    Vim9: assignment test fails.
Solution:   Include changes to find Ex command.
2020-09-14 18:35:18 +02:00
Bram Moolenaar
dbeecb2b6b patch 8.2.1682: Vim9: const works in an unexpected way
Problem:    Vim9: const works in an unexpected way.
Solution:   ":const" only disallows changing the variable, not the value.
            Make "list[0] = 9" work at the script level.
2020-09-14 18:15:09 +02:00
Bram Moolenaar
08052228a7 patch 8.2.1681: Vim9: unnessary :call commands in tests
Problem:    Vim9: unnessary :call commands in tests.
Solution:   Remove the commands. (issue #6936)
2020-09-14 17:04:31 +02:00
Bram Moolenaar
eb26f4331f patch 8.2.1680: Vim9: line number for compare error is wrong
Problem:    Vim9: line number for compare error is wrong.
Solution:   Set SOURCING_LNUM. (closes #6936)
2020-09-14 16:50:05 +02:00
Bram Moolenaar
3bd8de40b4 patch 8.2.1679: Vim9: ":*" is not recognized as a range
Problem:    Vim9: ":*" is not recognized as a range.
Solution:   Move recognizing "*" into skip_range(). (closes #6838)
2020-09-14 16:37:34 +02:00
Bram Moolenaar
d1f76afaf9 patch 8.2.1678: crash when using ":set" after ":ownsyntax"
Problem:    Crash when using ":set" after ":ownsyntax".
Solution:   Make sure 'spelloptions' is not NULL. (closes #6950)
2020-09-13 22:37:34 +02:00
Bram Moolenaar
4d170af0a9 patch 8.2.1677: memory access errors when calling setloclist() in autocommand
Problem:    Memory access errors when calling setloclist() in an autocommand.
Solution:   Give an error if the list was changed unexpectedly. (closes #6946)
2020-09-13 22:21:22 +02:00
Bram Moolenaar
a4224860a4 patch 8.2.1676: compiler warnings for function typecast
Problem:    Compiler warnings for function typecast.
Solution:   Add an intermediate cast to "void *".
2020-09-13 22:00:12 +02:00
Bram Moolenaar
05c1acd5e1 patch 8.2.1675: MinGW: testdir makefile deletes non-existing file
Problem:    MinGW: testdir makefile deletes non-existing file.
Solution:   Use another way to delete the output file if it already exists.
            (Michael Soyka)
2020-09-13 21:01:22 +02:00
Bram Moolenaar
f0afd9e182 patch 8.2.1674: Vim9: internal error when using variable that was not set
Problem:    Vim9: internal error when using variable that was not set.
Solution:   Give a meaningful error. (closes #6937)
2020-09-13 18:57:47 +02:00
Bram Moolenaar
b806aa5bd9 patch 8.2.1673: complete_info() selected index has an invalid value
Problem:    complete_info() selected index has an invalid value. (Ben Jackson)
Solution:   Set the index when there is only one match. (closes #6945)
            Add test for complete_info().
2020-09-12 22:52:57 +02:00
Bram Moolenaar
4a091b9978 patch 8.2.1672: v_lock is used when it is not initialized
Problem:    v_lock is used when it is not initialized. (Yegappan Lakshmanan)
Solution:   Initialize the typval in eval1().
2020-09-12 22:10:00 +02:00
Bram Moolenaar
c6e57b74fa patch 8.2.1671: Vim9: stray error for missing white space
Problem:    Vim9: stray error for missing white space.
Solution:   Do not skip over white space after member. (closes #6817)
2020-09-12 21:27:03 +02:00
Bram Moolenaar
8f13d82fa6 patch 8.2.1670: a couple of gcc compiler warnings
Problem:    A couple of gcc compiler warnings.
Solution:   Initialize local variables. (Dominique Pellé, closes #6944)
2020-09-12 21:04:23 +02:00
Bram Moolenaar
b0fa5e17c5 patch 8.2.1669: Vim9: memory leak when storing a value fails
Problem:    Vim9: memory leak when storing a value fails.
Solution:   Free the value when not storing it.
2020-09-12 19:51:42 +02:00
Bram Moolenaar
dadaddd59f patch 8.2.1668: Vim9: not accepting 0 or 1 as bool when type is any
Problem:    Vim9: not accepting 0 or 1 as bool when type is any.
Solution:   Convert the type with the CHECKTYPE instruction. (closes #6913)
2020-09-12 19:11:23 +02:00
Bram Moolenaar
0f769815c8 patch 8.2.1667: local function name cannot shadow a global function name
Problem:    Local function name cannot shadow a global function name.
Solution:   Ignore global functions when checking a script-local or scoped
            function name. (closes #6926)
2020-09-12 18:32:34 +02:00
Bram Moolenaar
b00ef0508b patch 8.2.1666: the initial value of 'backupskip' can have duplicate items
Problem:    The initial value of 'backupskip' can have duplicate items.
Solution:   Remove duplicates, like when it is set later. (Tom Ryder,
            closes #6940)
2020-09-12 14:53:53 +02:00
Bram Moolenaar
635414dd2f patch 8.2.1665: cannot do fuzzy string matching
Problem:    Cannot do fuzzy string matching.
Solution:   Add matchfuzzy(). (Yegappan Lakshmanan, closes #6932)
2020-09-11 22:25:15 +02:00
Bram Moolenaar
c2c8205634 patch 8.2.1664: memory leak when using :mkview with a terminal buffer
Problem:    Memory leak when using :mkview with a terminal buffer.
Solution:   Don't use a hastab for :mkview. (Rob Pilling, closes #6935)
2020-09-11 22:10:22 +02:00
Bram Moolenaar
14944c04bd patch 8.2.1663: options window entries cannot be translated
Problem:    Options window entries cannot be translated.
Solution:   Use AddOption() for all explanations. (closes #6800)
2020-09-11 20:51:26 +02:00
Bram Moolenaar
0e655111e9 patch 8.2.1662: :mksession does not restore shared terminal buffer properly
Problem:    :mksession does not restore shared terminal buffer properly.
Solution:   Keep a hashtab with terminal buffers. (Rob Pilling, closes #6930)
2020-09-11 20:36:36 +02:00
Bram Moolenaar
c6a67c92bc patch 8.2.1661: cannot connect to 127.0.0.1 for host with only IPv6 addresses
Problem:    Cannot connect to 127.0.0.1 for host with only IPv6 addresses.
Solution:   pass AI_V4MAPPED flag to getaddrinfo. (Filipe Brandenburger,
            closes #6931)
2020-09-11 19:28:19 +02:00
Bram Moolenaar
c0c71e9d98 patch 8.2.1660: assert functions require passing expected as first argument
Problem:    Assert functions require passing expected result as the first
            argument, which isn't obvious.
Solution:   Use a method, as in "runtest()->assert_equal(expected)".
2020-09-11 19:09:48 +02:00
Bram Moolenaar
96fdf4348a patch 8.2.1659: spellfile code not completely tested
Problem:    Spellfile code not completely tested.
Solution:   Add a few more test cases. (Yegappan Lakshmanan, closes #6929)
2020-09-11 18:11:50 +02:00
Bram Moolenaar
a810db3f17 patch 8.2.1658: expand('<stack>') has trailing ".."
Problem:    Expand('<stack>') has trailing "..".
Solution:   Remove the "..". (closes #6927)
2020-09-11 17:59:23 +02:00
Bram Moolenaar
8b848cafb0 patch 8.2.1657: Vim9: no proper error for nested ":def!"
Problem:    Vim9: no proper error for nested ":def!".
Solution:   Check for "!". (closes #6920)
2020-09-10 22:28:01 +02:00
Bram Moolenaar
dfa3d5524e patch 8.2.1656: Vim9: callstack wrong if :def function calls :def function
Problem:    Vim9: callstack wrong if :def function calls :def function.
Solution:   Set the line number before calling. (closes #6914)
2020-09-10 22:05:08 +02:00
Bram Moolenaar
895a7a472d patch 8.2.1655: cannot build with Strawberry Perl 5.32.0
Problem:    Cannot build with Strawberry Perl 5.32.0.
Solution:   Use Perl_sv_2pvbyte_flags. (closes #6921)
2020-09-10 21:36:11 +02:00
Bram Moolenaar
ad9ec5e799 patch 8.2.1654: when job writes to hidden buffer current window is wrong
Problem:    When job writes to hidden buffer current window has display
            errors.  (Johnny McArthur)
Solution:   Use aucmd_prepbuf() instead of switch_to_win_for_buf().
            (closes #6925)
2020-09-10 21:25:45 +02:00
Bram Moolenaar
4f25b1aba0 patch 8.2.1653: expand('<stack>') does not include the final line number
Problem:    Expand('<stack>') does not include the final line number.
Solution:   Add the line nuber. (closes #6927)
2020-09-10 19:25:05 +02:00
Bram Moolenaar
a953b5cf4f patch 8.2.1652: cannot translate lines in the options window
Problem:    Cannot translate lines in the options window.
Solution:   Use the AddOption() function to split descriptions where indicated
            by a line break. (issue #6800)
2020-09-10 14:25:25 +02:00
Bram Moolenaar
64e2db6dc6 patch 8.2.1651: spellfile code not completely tested
Problem:    Spellfile code not completely tested.
Solution:   Add a few more test cases. (Yegappan Lakshmanan, closes #6918)
2020-09-09 22:43:19 +02:00
Bram Moolenaar
c1ec0422e4 patch 8.2.1650: Vim9: result of && and || expression is not bool in script
Problem:    Vim9: result of && and || expression cannot be assigned to a bool
            at the script level.
Solution:   Add the VAR_BOOL_OK flag.  Convert to bool when needed.
2020-09-09 22:27:58 +02:00
Bram Moolenaar
3e4cc9671c patch 8.2.1649: GTK3: using old file chooser
Problem:    GTK3: using old file chooser.
Solution:   Use native file chooser on GTK 3.20 and above. (Yogeshwar
            Velingker, closes #6909)
2020-09-09 20:58:55 +02:00
Bram Moolenaar
a62372be1f patch 8.2.1648: Amiga: no common build file for Amiga (-like) systems
Problem:    Amiga: no common build file for Amiga (-like) systems.
Solution:   Turn Make_morph.mak into Make_ami.mak. (Ola Söder, closes #6805)
2020-09-09 20:41:40 +02:00
Bram Moolenaar
4ed124cc6c patch 8.2.1647: Vim9: result of expression with && and || is not a bool
Problem:    Vim9: result of expression with && and || cannot be assigned to a
            bool variable.
Solution:   Add the TTFLAG_BOOL_OK flag and convert the value if needed.
2020-09-09 20:03:46 +02:00
Bram Moolenaar
33e3346322 patch 8.2.1646: Amiga: Unnecessary #include
Problem:    Amiga: Unnecessary #include.
Solution:   Remove the #include. (Ola Söder, closes #6908)
2020-09-09 19:25:09 +02:00
Bram Moolenaar
81a4cf469a patch 8.2.1645: GTK3: icons become broken images when resized
Problem:    GTK3: icons become broken images when resized.
Solution:   Use gtk_image_new_from_icon_name(). (closes #6916)
            Fix compiler warnings.
2020-09-09 19:05:13 +02:00
Bram Moolenaar
ba7c0d7b4c patch 8.2.1644: Vim9: cannot assign 1 and 0 to bool at script level
Problem:    Vim9: cannot assign 1 and 0 to bool at script level.
Solution:   Add the TTFLAG_BOOL_OK flag to the type. Fix name of test
            function.
2020-09-09 18:54:42 +02:00
Bram Moolenaar
96f8f499ce patch 8.2.1643: Vim9: :defcompile compiles dead functions
Problem:    Vim9: :defcompile compiles dead functions.
Solution:   Skip over dead functions.
2020-09-09 17:08:51 +02:00
Bram Moolenaar
4507f6ada5 patch 8.2.1642: otions test fails
Problem:    Otions test fails.
Solution:   Correct call to OptionG().
2020-09-09 15:10:52 +02:00
Bram Moolenaar
29a86ffee7 patch 8.2.1641: Vim9: cannot use 0 or 1 where a bool is expected
Problem:    Vim9: cannot use 0 or 1 where a bool is expected.
Solution:   Allow using 0 and 1 for a bool type. (closes #6903)
2020-09-09 14:55:31 +02:00
Bram Moolenaar
f842cd9e28 patch 8.2.1640: Amiga: missing header for getgrgid()
Problem:    Amiga: missing header for getgrgid().
Solution:   Add the grp.h header. (Ola Söder, closes #6906)
2020-09-09 13:01:27 +02:00
Bram Moolenaar
64075b0ab1 patch 8.2.1639: options window cannot be translated
Problem:    Options window cannot be translated.
Solution:   Get the translation for "local to" texts once and use them in many
            places. Fix that 'whichwrap' is not a local option. (issue #6800)
2020-09-09 12:56:30 +02:00
Bram Moolenaar
8e9be208ea patch 8.2.1638: leaking memory when popup filter function can't be called
Problem:    Leaking memory when popup filter function can't be called.
Solution:   Don't return too soon.
2020-09-08 22:55:26 +02:00
Bram Moolenaar
c3516f7e45 patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Problem:    Vim9: :put ={expr} does not work inside :def function.
Solution:   Add ISN_PUT. (closes #6397)
2020-09-08 22:45:35 +02:00
Bram Moolenaar
6defa7bf0a patch 8.2.1636: get stuck if a popup filter causes an error
Problem:    Get stuck if a popup filter causes an error.
Solution:   Check whether the function can be called and does not cause an
            error.  (closes #6902)
2020-09-08 22:06:44 +02:00
Bram Moolenaar
57ad94c5a9 patch 8.2.1635: no digraph for 0x2022 BULLET
Problem:    No digraph for 0x2022 BULLET.
Solution:   Use "oo". (Hans Ginzel, closes #6904)
2020-09-08 19:06:30 +02:00
Bram Moolenaar
1c6737b20a Update runtime files. 2020-09-07 22:18:52 +02:00
Bram Moolenaar
9c929713b7 patch 8.2.1634: loop to handle keys for the command line is too long
Problem:    Loop to handle keys for the command line is too long.
Solution:   Move a few more parts to separate functions. (Yegappan Lakshmanan,
            closes #6895)
2020-09-07 22:05:28 +02:00
Bram Moolenaar
e83cca2911 patch 8.2.1633: some error messages are internal but do not use iemsg()
Problem:    Some error messages are internal but do not use iemsg().
Solution:   Use iemsg(). (Dominique Pellé, closes #6894)
2020-09-07 18:53:21 +02:00
Bram Moolenaar
44d6652d56 patch 8.2.1632: not checking the context of test_fails()
Problem:    Not checking the context of test_fails().
Solution:   Add the line number and context arguments.  Give error if
            assert_fails() argument types are wrong.
2020-09-06 22:26:57 +02:00
Bram Moolenaar
9bd5d879c2 patch 8.2.1631: test_fails() does not check the context of the line number
Problem:    test_fails() does not check the context of the line number.
Solution:   Use another argument to specify the context of the line number.
2020-09-06 21:47:48 +02:00
Bram Moolenaar
c98cdb3bc9 patch 8.2.1630: terminal test fails
Problem:    Terminal test fails.
Solution:   Correct argument to term_start().  Correct error number.
2020-09-06 21:13:00 +02:00
Bram Moolenaar
63969ef07e patch 8.2.1629: test fails without terminal feature
Problem:    Test fails without terminal feature.
Solution:   Check for terminal feature.
2020-09-06 20:06:59 +02:00
Bram Moolenaar
418155def2 patch 8.2.1628: Vim9: cannot pass "true" to timer_paused()
Problem:    Vim9: cannot pass "true" to timer_paused().
Solution:   Use tv_get_bool(). (closes #6891)
2020-09-06 18:39:38 +02:00
Bram Moolenaar
ad30470610 patch 8.2.1627: Vim9: cannot pass "true" to submatch/term_gettty/term_start
Problem:    Vim9: cannot pass "true" to submatch(), term_gettty() and
            term_start()
Solution:   Use tv_get_bool_chk(). (closes #6888, closes #6890, closes #6889)
2020-09-06 18:22:53 +02:00
Bram Moolenaar
707be5f352 patch 8.2.1626: test for strchars() fails with different error number
Problem:    Test for strchars() fails with different error number.
Solution:   Adjust the error number.
2020-09-06 17:13:44 +02:00
Bram Moolenaar
30d6413782 patch 8.2.1625: compiler warning for use of fptr_T
Problem:    Compiler warning for use of fptr_T.
Solution:   Make the type less strict.
2020-09-06 17:09:12 +02:00
Bram Moolenaar
3986b94b09 patch 8.2.1624: Vim9: cannot pass "true" to split(), str2nr() and strchars()
Problem:    Vim9: cannot pass "true" to split(), str2nr() and strchars().
Solution:   Use tv_get_bool_chk(). (closes #6884, closes #6885, closes #6886)
2020-09-06 16:09:04 +02:00
Bram Moolenaar
d2c617055a patch 8.2.1623: Vim9: using :call where it is not needed
Problem:    Vim9: using :call where it is not needed.
Solution:   Remove :call. (closes #6892)
2020-09-06 15:58:36 +02:00
Bram Moolenaar
2f3cd2e4ec patch 8.2.1622: loop to handle keys for the command line is too long
Problem:    Loop to handle keys for the command line is too long.
Solution:   Move code to functions. (Yegappan Lakshmanan, closes #6880)
2020-09-06 15:54:00 +02:00
Bram Moolenaar
8a0dcf4330 patch 8.2.1621: crash when using submatch(0, 1) in substitute()
Problem:    Crash when using submatch(0, 1) in substitute().
Solution:   Increment reference count. (closes #6887)
2020-09-06 15:14:45 +02:00
Bram Moolenaar
4140c4f3ff patch 8.2.1620: searchcount() test fails
Problem:    searchcount() test fails.
Solution:   Restore default flag value.
2020-09-05 23:16:00 +02:00
Bram Moolenaar
7c27f337bf patch 8.2.1619: Vim9: cannot pass "true" to spellsuggest()
Problem:    Vim9: cannot pass "true" to spellsuggest().
Solution:   Use tv_get_bool_chk(). (closes #6883)
2020-09-05 22:45:55 +02:00
Bram Moolenaar
401f0c0798 patch 8.2.1618: Vim9: cannot pass "true" to setloclist()
Problem:    Vim9: cannot pass "true" to setloclist().
Solution:   Use dict_get_bool(). (closes #6882)
2020-09-05 22:37:39 +02:00
Bram Moolenaar
4b9bd692bd patch 8.2.1617: Vim9: cannot pass "true" to win_splitmove()
Problem:    Vim9: cannot pass "true" to win_splitmove().
Solution:   Use dict_get_bool(). (closes #6862)  Alphabetize test functions.
2020-09-05 21:57:53 +02:00
Bram Moolenaar
fcb6d7082d patch 8.2.1616: Vim9: cannot pass "true" to synID()
Problem:    Vim9: cannot pass "true" to synID().
Solution:   Use tv_get_bool_chk(). (closes #6860)
2020-09-05 21:41:56 +02:00
Bram Moolenaar
30788d3d37 patch 8.2.1615: Vim9: cannot pass "true" to searchdecl()
Problem:    Vim9: cannot pass "true" to searchdecl().
Solution:   use tv_get_bool_chk(). (closes #6881)
2020-09-05 21:35:16 +02:00
Bram Moolenaar
597aaac9d2 patch 8.2.1614: Vim9: cannot pass "true" to searchcount()
Problem:    Vim9: cannot pass "true" to searchcount().
Solution:   Use tv_get_bool_chk(). (closes #6854)
2020-09-05 21:21:16 +02:00
Bram Moolenaar
fa2e38df76 patch 8.2.1613: Vim9: cannot pass "true" to prop_type_add()
Problem:    Vim9: cannot pass "true" to prop_type_add().
Solution:   Use tv_get_bool(). (closes #6850)
2020-09-05 21:00:00 +02:00
Bram Moolenaar
a5a40c5696 patch 8.2.1612: Vim9: cannot pass "true" to prop_remove()
Problem:    Vim9: cannot pass "true" to prop_remove().
Solution:   Use dict_get_bool(). (closes #6853)
2020-09-05 20:50:49 +02:00
Bram Moolenaar
ed6a430fae patch 8.2.1611: Vim9: cannot pass "true" to nr2char()
Problem:    Vim9: cannot pass "true" to nr2char().
Solution:   use tv_get_bool_chk(). (closes #6878)
2020-09-05 20:29:41 +02:00
Bram Moolenaar
a48f786787 patch 8.2.1610: Vim9: cannot pass "true" to list2str() and str2list()
Problem:    Vim9: cannot pass "true" to list2str() and str2list().
Solution:   Use tv_get_bool_chk(). (closes #6877)
2020-09-05 20:16:57 +02:00
Bram Moolenaar
7918238528 patch 8.2.1609: Vim9: test fails when build without +channel
Problem:    Vim9: test fails when build without +channel.
Solution:   Add check for +channel. (closes #6879)
2020-09-05 20:06:33 +02:00
Bram Moolenaar
15183b41c4 patch 8.2.1608: Vim9: getchar() test fails with GUI
Problem:    Vim9: getchar() test fails with GUI.
Solution:   Avoid that getchar(0) gets stuck on K_IGNORE.
2020-09-05 19:59:39 +02:00
Bram Moolenaar
636c5d5399 patch 8.2.1607: Vim9: getchar() test fails on MS-Windows
Problem:    Vim9: getchar() test fails on MS-Windows.
Solution:   First consume any available input.
2020-09-05 18:48:57 +02:00
Bram Moolenaar
04637e243d patch 8.2.1606: Vim9: cannot use "true" with has()
Problem:    Vim9: cannot use "true" with has().
Solution:   Use tv_get_bool(). (closes #6876)
2020-09-05 18:45:29 +02:00
Bram Moolenaar
b02628b8a2 patch 8.2.1605: default maintainer on github is wrong
Problem:    Defyyyyyyyyyyyyyyyyyyyyyyyub is wrong.
Solution:   Use Bram's account.
2020-09-05 18:40:44 +02:00
Bram Moolenaar
d217a87755 patch 8.2.1604: Vim9: cannot use "true" with getcompletion()
Problem:    Vim9: cannot use "true" with getcompletion().
Solution:   use tv_get_bool_chk(). (closes #6875)
2020-09-05 18:31:33 +02:00
Bram Moolenaar
c08cc72947 patch 8.2.1603: Vim9: cannot use "true" with getchar()
Problem:    Vim9: cannot use "true" with getchar().
Solution:   use tv_get_bool_chk(). (closes #6874)
2020-09-05 17:51:23 +02:00
Bram Moolenaar
036c2cf719 patch 8.2.1602: Vim9: cannot use 'true" with getbufinfo()
Problem:    Vim9: cannot use 'true" with getbufinfo().
Solution:   Use dict_get_bool(). (closes #6873)
2020-09-05 17:37:07 +02:00
Bram Moolenaar
2df4731042 patch 8.2.1601: Vim9: cannot use 'true" with garbagecollect()
Problem:    Vim9: cannot use 'true" with garbagecollect().
Solution:   Use tv_get_bool(). (closes #6871)
2020-09-05 17:30:44 +02:00
Bram Moolenaar
44b4a246b6 patch 8.2.1600: Vim9: cannot use "true" with deepcopy()
Problem:    Vim9: cannot use "true" with deepcopy().
Solution:   Use tv_get_bool_chk(). (closes #6867)
2020-09-05 17:18:28 +02:00
Bram Moolenaar
59941cbd80 patch 8.2.1599: missing line end when skipping a long line with :cgetfile
Problem:    Missing line end when skipping a long line with :cgetfile.
Solution:   Fix off-by-one error. (closes #6870)
2020-09-05 17:03:40 +02:00
Bram Moolenaar
2ce14589f2 patch 8.2.1598: starting a hidden terminal resizes the current window
Problem:    Starting a hidden terminal resizes the current window.
Solution:   Do not resize the current window for a hidden terminal.
            (closes #6872)
2020-09-05 16:08:49 +02:00
Bram Moolenaar
8b5866ded6 patch 8.2.1597: the channel source file is too big
Problem:    The channel source file is too big.
Solution:   Move job related code to a new source file.
2020-09-05 15:48:51 +02:00
Bram Moolenaar
7dfc5ce7cf patch 8.2.1596: using win_screenpos('.') in tests works but is wrong
Problem:    Using win_screenpos('.') in tests works but is wrong.
Solution:   Use win_screenpos(0).
2020-09-05 15:05:30 +02:00
Bram Moolenaar
86394aa972 patch 8.2.1595: cannot easily see what Vim sends to the terminal
Problem:    Cannot easily see what Vim sends to the terminal.
Solution:   Write output to the channel log if it contains terminal control
            sequences.  Avoid warnings for tputs() argument.
2020-09-05 14:27:24 +02:00
Bram Moolenaar
cf8aa6448b patch 8.2.1594: pull requests on github do not notify a maintainer
Problem:    Pull requests on github do not notify a maintainer.
Solution:   Add a CODEOWNERS file with a few initial entries.
2020-09-05 13:48:58 +02:00
Bram Moolenaar
e2e4075fad patch 8.2.1593: tests do not check the error number properly
Problem:    Tests do not check the error number properly.0
Solution:   Add a colon after the error number. (closes #6869)
2020-09-04 21:18:46 +02:00
Bram Moolenaar
24f7750ffa patch 8.2.1592: Vim9: passing "true" to char2nr() fails
Problem:    Vim9: passing "true" to char2nr() fails.
Solution:   Use tv_get_bool_chk(). (closes #6865)
2020-09-04 19:50:57 +02:00
Bram Moolenaar
c05d1c043a patch 8.2.1591: using winheight('.') in tests works but is wrong
Problem:    Using winheight('.') in tests works but is wrong.
Solution:   Use winheight(0). (issue #6863)
2020-09-04 18:38:06 +02:00
Bram Moolenaar
fe136c9a85 patch 8.2.1590: Vim9: bufnr() doesn't take "true" argument
Problem:    Vim9: bufnr() doesn't take "true" argument.
Solution:   use tv_get_bool_chk(). (closes #6863)
2020-09-04 18:35:26 +02:00
Bram Moolenaar
b936b79424 patch 8.2.1589: term_start() options for size are overruled by 'termwinsize'
Problem:    Term_start() options for size are overruled by 'termwinsize'.
            (Sergey Vlasov)
Solution:   Set 'termwinsize' to the specified size.
2020-09-04 18:34:09 +02:00
Bram Moolenaar
077cc7aa0e patch 8.2.1588: cannot read back the prompt of a prompt buffer
Problem:    Cannot read back the prompt of a prompt buffer.
Solution:   Add prompt_getprompt(). (Ben Jackson, closes #6851)
2020-09-04 16:35:35 +02:00
Bram Moolenaar
eadee486c7 patch 8.2.1587: loop for handling keys for the command line is too long
Problem:    Loop for handling keys for the command line is too long.
Solution:   Move wild menu handling to separate functions. (Yegappan
            Lakshmanan, closes #6856)
2020-09-04 15:37:31 +02:00
Bram Moolenaar
fe6dce8739 patch 8.2.1586: :resize command not fully tested
Problem:    :resize command not fully tested.
Solution:   Add a couple of tests. (Dominique Pellé, closes #6857)
2020-09-04 14:41:21 +02:00
Bram Moolenaar
fa57335e53 patch 8.2.1585: messages in globals.h not translated
Problem:    Messages in globals.h not translated, xgettext on MS-Windows not
            fully supported.
Solution:   Add globals.h to list of input files.  Update MS-Windows makefiles
            to improve message translations. (Ken Takata, closes #6858)
2020-09-04 13:53:00 +02:00
Bram Moolenaar
eb24556df3 patch 8.2.1584: Vim9: cannot use "true" for "skipstart" in prop_find()
Problem:    Vim9: cannot use "true" for "skipstart" in prop_find().
Solution:   Use dict_get_bool() instead of tv_get_number(). (closes #6852)
2020-09-03 22:33:44 +02:00
Bram Moolenaar
18eedfa40b patch 8.2.1583: MS-Windows: cannot easily measure code coverage
Problem:    MS-Windows: cannot easily measure code coverage.
Solution:   Add the COVERAGE option. (Ken Takata, closes #6842)
2020-09-03 19:50:05 +02:00
Bram Moolenaar
7ca86fe8dc patch 8.2.1582: the channel log does not show typed text
Problem:    The channel log does not show typed text.
Solution:   Add raw typed text to the log file.
2020-09-03 19:25:11 +02:00
Bram Moolenaar
1f42f5a675 patch 8.2.1581: using line() for global popup window doesn't work
Problem:    Using line() for global popup window doesn't work.
Solution:   Set tabpage to "curtab". (closes #6847)
2020-09-03 18:52:24 +02:00
Bram Moolenaar
a60053b8f4 patch 8.2.1580: wildmenu does not work properly
Problem:    Wildmenu does not work properly.
Solution:   Do not call may_do_incsearch_highlighting() if completion is in
            progress.
2020-09-03 16:50:13 +02:00
Bram Moolenaar
5b5aa11801 patch 8.2.1579: reports from asan are not optimal
Problem:    Reports from asan are not optimal.
Solution:   Use clang with ubsan. (James McCoy, closes #6811)
2020-09-03 16:05:04 +02:00
Bram Moolenaar
62f93f4ec9 patch 8.2.1578: Vim9: popup_clear() does not take "true" as argument
Problem:    Vim9: popup_clear() does not take "true" as argument.
Solution:   Use tv_get_bool(). (closes #6826)
2020-09-02 22:33:24 +02:00
Bram Moolenaar
04d594b9c1 patch 8.2.1577: Vim9: hasmapto()/mapcheck()/maparg() do nottake "true" arg
Problem:    Vim9: hasmapto(), mapcheck() and maparg() do not take "true" as
            argument.
Solution:   Use tv_get_bool(). (closes #6822, closes #6824)
2020-09-02 22:25:35 +02:00
Bram Moolenaar
6c553f9c04 patch 8.2.1576: Vim9: index() does not take "true" as argument
Problem:    Vim9: index() does not take "true" as argument.
Solution:   Use tv_get_bool_chk(). (closes #6823)
2020-09-02 22:10:34 +02:00
Bram Moolenaar
f966ce5ea2 patch 8.2.1575: Vim9: globpath() doesnot take "true" as argument
Problem:    Vim9: globpath() doesnot take "true" as argument.
Solution:   Use tv_get_bool_chk(). (closes #6821)
2020-09-02 21:57:07 +02:00
Bram Moolenaar
5892ea1511 patch 8.2.1574: Vim9: glob() doesnot take "true" as argument
Problem:    Vim9: glob() doesnot take "true" as argument.
Solution:   Use tv_get_bool_chk(). (closes #6821)
2020-09-02 21:53:11 +02:00
Bram Moolenaar
67ff97ded7 patch 8.2.1573: Vim9: getreg() does not take "true" as argument
Problem:    Vim9: getreg() does not take "true" as argument.
Solution:   Use tv_get_bool_chk().  (closes #6820)
2020-09-02 21:45:54 +02:00
Bram Moolenaar
551d25e765 patch 8.2.1572: Vim9: expand() does not take "true" as argument
Problem:    Vim9: expand() does not take "true" as argument.
Solution:   Use tv_get_bool_chk().  (closes #6819)
2020-09-02 21:37:56 +02:00
Bram Moolenaar
119f557230 patch 8.2.1571: Vim9: count() third argument cannot be "true"
Problem:    Vim9: count() third argument cannot be "true".
Solution:   use tv_get_bool_chk(). (closes #6818)
2020-09-02 21:31:22 +02:00
Bram Moolenaar
9d8bfae50f patch 8.2.1570: configure check for dirfd() does not work on HPUX
Problem:    Configure check for dirfd() does not work on HPUX. (Michael Osipov)
Solution:   Use AC_TRY_LINK instead of AC_TRY_COMPILE. (closes #6838)
2020-09-02 21:21:35 +02:00
Bram Moolenaar
a5d3841177 patch 8.2.1569: Vim9: fixes not tested; failure in getchangelist()
Problem:    Vim9: fixes for functions not tested; failure in getchangelist().
Solution:   Add tests. (closes #6813, closes #6815, closes #6817)
2020-09-02 21:02:35 +02:00
Bram Moolenaar
4da7a259f6 patch 8.2.1568: prop_find() skips properties in the same line
Problem:    prop_find() skips properties in the same line if "skipstart" is
            used.
Solution:   Use "continue" instead of "break". (closes #6840)
2020-09-02 19:59:00 +02:00
Bram Moolenaar
6efa46f4ef patch 8.2.1567: no example to use ubsan with clang
Problem:    No example to use ubsan with clang.
Solution:   Add example commands. (Dominique Pellé, issue #6811)
2020-09-02 19:23:06 +02:00
Bram Moolenaar
4488f5a545 patch 8.2.1566: not all Bazel files are recognized
Problem:    Not all Bazel files are recognized.
Solution:   Add *.bazel and *.BUILD. (closes #6836)
2020-09-02 17:08:59 +02:00
Bram Moolenaar
e90d63ea90 patch 8.2.1565: spellfile test sometimes fails
Problem:    Spellfile test sometimes fails.
Solution:   Check running into the end of the file.
2020-09-02 12:58:48 +02:00
Bram Moolenaar
4ad739fc05 patch 8.2.1564: a few remaining errors from ubsan
Problem:    A few remaining errors from ubsan.
Solution:   Avoid the warnings. (Dominique Pellé, closes #6837)
2020-09-02 10:25:45 +02:00
Bram Moolenaar
6f84b6db10 patch 8.2.1563: Vim9: error when using '%" with setbufvar() r getbufvar()
Problem:    Vim9: error when using '%" with setbufvar() or getbufvar().
Solution:   Use tv_get_buf_from_arg(). (closes #6816)
2020-09-01 23:16:32 +02:00
Bram Moolenaar
3767e3a330 patch 8.2.1562: Vim9: error when using "%" where a buffer is expected
Problem:    Vim9: error when using "%" where a buffer is expected.
Solution:   Add tv_get_buf_from_arg(). (closes #6814)
2020-09-01 23:06:01 +02:00
Bram Moolenaar
81fcb67fb3 patch 8.2.1561: using NULL pointers in fold code
Problem:    Using NULL pointers in fold code.
Solution:   Avoid using a NULL pointer. (Dominique Pellé, closes #6831,
            closes #6831)
2020-09-01 21:21:24 +02:00
Bram Moolenaar
9c2b06637b patch 8.2.1560: using NULL pointers in some code
Problem:    Using NULL pointers in some code. (James McCoy)
Solution:   Avoid adding to a NULL pointer.  Use byte as unsigned.
2020-09-01 19:56:15 +02:00
Bram Moolenaar
ca563b9b94 patch 8.2.1559: s390x tests work again
Problem:    s390x tests work again.
Solution:   re-enable s390x tests. (James McCoy, closes #6829)
2020-09-01 17:50:51 +02:00
Bram Moolenaar
2f1228463a patch 8.2.1558: signs test fails
Problem:    Signs test fails.
Solution:   Add missing change to sign.c.
2020-08-31 23:18:00 +02:00
Bram Moolenaar
997cd1a17f patch 8.2.1557: crash in :vimgrep when started as "vim -n"
Problem:    Crash in :vimgrep when started as "vim -n". (Raul Segura)
Solution:   Check mfp pointer. (Yegappan Lakshmanan, closes #6827)
2020-08-31 22:16:08 +02:00
Bram Moolenaar
39f7aa3c31 patch 8.2.1556: cursorline highlighting always overrules sign highlighting
Problem:    Cursorline highlighting always overrules sign highlighting.
Solution:   Combine the highlighting, use the priority to decide how.
            (closes #6812)
2020-08-31 22:00:05 +02:00
Bram Moolenaar
7d6979608e patch 8.2.1555: not all tests are executed on Github Actions
Problem:    Not all tests are executed on Github Actions.
Solution:   Copy "src" to "src2" earlier. Recognize "src2" in a couple more
            places.  Add two tests to the list of flaky tests. (Ken Takata,
            closes #6798)
2020-08-31 21:30:32 +02:00
Bram Moolenaar
07e87e9eb5 patch 8.2.1554: crash in normal test
Problem:    Crash in normal test.
Solution:   Skip adjusting marks if there are no folds.
2020-08-31 21:22:40 +02:00
Bram Moolenaar
2c93c685e3 patch 8.2.1553: crash in edit test
Problem:    Crash in edit test.
Solution:   Avoid using invalid pointer.
2020-08-31 21:15:02 +02:00
Bram Moolenaar
64f37d3090 patch 8.2.1552: warnings from asan with clang-11
Problem:    Warnings from asan with clang-11. (James McCoy)
Solution:   Avoid using a NULL pointer. (issue #6811)
2020-08-31 19:58:13 +02:00
Bram Moolenaar
8b565c2c15 patch 8.2.1551: Vim9: error for argument type does not mention the number
Problem:    Vim9: error for argument type does not mention the number.
Solution:   Pass the argument number to where the error is given.
2020-08-30 23:24:20 +02:00
Bram Moolenaar
02aaad9109 patch 8.2.1550: Vim9: bufname('%') gives an error
Problem:    Vim9: bufname('%') gives an error.
Solution:   Only give an error for wrong argument type. (closes #6807)
2020-08-30 21:26:57 +02:00
Bram Moolenaar
ca774f6753 patch 8.2.1549: "r" fails if 'esckeys' is off and modifyOtherKeys is used
Problem:    The "r" command fails for keys with modifiers if 'esckeys' is off
            and modifyOtherKeys is used. (Lauri Tirkkonen)
Solution:   Temporarily disable bracketed paste and modifyOtherKeys if
            'esckeys' is off. (closes #6809)
2020-08-30 20:46:38 +02:00
Bram Moolenaar
0b8cf278ec patch 8.2.1548: cannot move position of "%%" in message translations
Problem:    Cannot move position of "%%" in message translations. (Emir Sarı)
Solution:   Improve the check script.
2020-08-30 19:42:06 +02:00
Bram Moolenaar
02c037a4be patch 8.2.1547: various comment problems
Problem:    Various comment problems.
Solution:   Update comments.
2020-08-30 19:26:45 +02:00
Bram Moolenaar
cd80006ecb patch 8.2.1546: build rule for Vim.app is unused
Problem:    Build rule for Vim.app is unused.
Solution:   Delete the related build rules.
2020-08-30 18:11:54 +02:00
Bram Moolenaar
76603baac5 patch 8.2.1545: ch_logfile() is unclear about closing when forking
Problem:    ch_logfile() is unclear about closing when forking.
Solution:   Adjust the log messages.
2020-08-30 17:24:37 +02:00
Bram Moolenaar
207f009326 Update runtime files. 2020-08-30 17:20:20 +02:00
Bram Moolenaar
0b39c3fd4c patch 8.2.1544: cannot translate messages in a Vim script
Problem:    Cannot translate messages in a Vim script.
Solution:   Add gettext().  Try it out for a few messages in the options
            window.
2020-08-30 15:52:10 +02:00
Bram Moolenaar
25859dd74c patch 8.2.1543: Vim9: test with invalid SID is skipped in the GUI
Problem:    Vim9: test with invalid SID is skipped in the GUI.
Solution:   Read the CTRL-C that feedkeys() put in typeahead.
2020-08-30 12:54:53 +02:00
Bram Moolenaar
a5639848cc patch 8.2.1542: Vim9: test with invalid SID does not work in the GUI
Problem:    Vim9: test with invalid SID does not work in the GUI.
Solution:   Skip the test in the GUI.
2020-08-29 22:59:17 +02:00
Bram Moolenaar
95006e3dca patch 8.2.1541: Vim9: cannot find function reference for s:Func
Problem:    Vim9: cannot find function reference for s:Func.
Solution:   Recognize <SNR> prefix. (closes #6805)
2020-08-29 17:47:08 +02:00
Bram Moolenaar
98945560c1 patch 8.2.1540: the user cannot try out emoji character widths
Problem:    The user cannot try out emoji character widths.
Solution:   Move the emoji script to the runtime/tools directory.
2020-08-29 16:41:27 +02:00
Bram Moolenaar
e3d4685f1f patch 8.2.1539: using invalid script ID causes a crash
Problem:    Using invalid script ID causes a crash.
Solution:   Check the script ID to be valid. (closes #6804)
2020-08-29 13:39:17 +02:00
Bram Moolenaar
423a85a11a patch 8.2.1538: Python: iteration over vim objects fails to keep reference
Problem:    Python: iteration over vim objects fails to keep reference.
Solution:   Keep a reference for the object. (Paul Ollis, closes #6803,
            closes #6806)
2020-08-29 12:57:16 +02:00
Bram Moolenaar
b06a6d59d1 patch 8.2.1537: memory acccess error when using setcellwidths()
Problem:    Memory acccess error when using setcellwidths().
Solution:   Use array and pointers correctly.
2020-08-28 23:27:20 +02:00
Bram Moolenaar
4e4473c927 patch 8.2.1536: cannot get the class of a character; emoji widths are wrong
Problem:    Cannot get the class of a character; emoji widths are wrong in
            some environments.
Solution:   Add charclass(). Update some emoji widths.  Add script to check
            emoji widths.
2020-08-28 22:24:57 +02:00
Bram Moolenaar
08aac3c619 patch 8.2.1535: it is not possible to specify cell widths of characters
Problem:    It is not possible to specify cell widths of characters.
Solution:   Add setcellwidths().
2020-08-28 21:04:24 +02:00
Bram Moolenaar
ee8580e52e patch 8.2.1534: Vim9: type error for argument type is not at call position
Problem:    Vim9: type error for argument type is not at call position.
Solution:   Set the context and stack after checking the arguments.
            (issue #6785)
2020-08-28 17:19:07 +02:00
Bram Moolenaar
6a950581da patch 8.2.1533: Vim9: error when passing getreginfo() result to setreg()
Problem:    Vim9: error when passing getreginfo() result to setreg().
Solution:   Use dict_get_bool() for "isunnamed". (closes #6784)
2020-08-28 16:39:33 +02:00
Bram Moolenaar
2566054a7f patch 8.2.1532: compiler warning for conversion of size_t to long
Problem:    Compiler warning for conversion of size_t to long.
Solution:   Add type cast.
2020-08-28 16:38:11 +02:00
Bram Moolenaar
7a3330fc57 patch 8.2.1531: Vim9: test still fails on MS-Windows
Problem:    Vim9: test still fails on MS-Windows.
Solution:   When skipping expect function to be NULL.
2020-08-27 23:57:57 +02:00
Bram Moolenaar
5163fcce79 patch 8.2.1530: Vim9: test fails on MS-Windows
Problem:    Vim9: test fails on MS-Windows.
Solution:   Skip Ex command inside "if false".
2020-08-27 23:37:09 +02:00
Bram Moolenaar
749639ec72 patch 8.2.1529: Vim9: :elseif may be compiled when not needed
Problem:    Vim9: :elseif may be compiled when not needed.
Solution:   Do evaluate the :elseif expression.
2020-08-27 23:08:47 +02:00
Bram Moolenaar
3988f64f9d patch 8.2.1528: Vim9: :endif not found after "if false"
Problem:    Vim9: :endif not found after "if false".
Solution:   When skipping still check for a following command. (closes #6797)
2020-08-27 22:43:03 +02:00
Bram Moolenaar
601e76ac3c patch 8.2.1527: Vim9: cannot use a function name at script level
Problem:    Vim9: cannot use a function name as a function reference at script
            level.
Solution:   Check if a name is a function name. (closes #6789)
2020-08-27 21:33:10 +02:00
Bram Moolenaar
228e62975e patch 8.2.1526: line in testdir Makefile got commented out
Problem:    Line in testdir Makefile got commented out. (Christian Brabandt)
Solution:   Revert.
2020-08-27 16:06:46 +02:00
Bram Moolenaar
6e3aeec846 patch 8.2.1525: messages from tests were not always displayed
Problem:    Messages from tests were not always displayed.
Solution:   Always show messages, the timing is always useful. (Ken Takata,
            closes #6792)
2020-08-26 22:29:57 +02:00
Bram Moolenaar
2e0866128b patch 8.2.1524: no longer get an error for string concatenation with float
Problem:    No longer get an error for string concatenation with float.
            (Tsuyoshi Cho)
Solution:   Only convert float for Vim9 script. (closes #6787)
2020-08-25 22:37:48 +02:00
Bram Moolenaar
b9fc192f92 patch 8.2.1523: still not enough test coverage for the spell file handling
Problem:    Still not enough test coverage for the spell file handling.
Solution:   Add spell file tests. (Yegappan Lakshmanan, closes #6790)
2020-08-25 21:19:36 +02:00
Bram Moolenaar
c8ec5fe56f patch 8.2.1522: not enough test coverage for the spell file handling
Problem:    Not enough test coverage for the spell file handling.
Solution:   Add spell file tests. (Yegappan Lakshmanan, closes #6763)
2020-08-24 20:28:56 +02:00
Bram Moolenaar
07399e7f07 patch 8.2.1521: reading past end of buffer when reading spellfile
Problem:    Reading past end of buffer when reading spellfile. (Yegappan
            Lakshmanan)
Solution:   Store the byte length and check for it.
2020-08-24 20:05:50 +02:00
Bram Moolenaar
b3ea36c5bc patch 8.2.1520: Vim9: CTRL-] used in :def function does not work
Problem:    Vim9: CTRL-] used in :def function does not work.
Solution:   Omit count or prepend colon. (closes #6769)
2020-08-23 21:46:32 +02:00
Bram Moolenaar
c2af0afff5 patch 8.2.1519: Vim9: Ex command default range is not set
Problem:    Vim9: Ex command default range is not set.
Solution:   When range is not given use default. (closes #6779)
2020-08-23 21:06:02 +02:00
Bram Moolenaar
2e80095501 patch 8.2.1518: Vim9: cannot assign to local option
Problem:    Vim9: cannot assign to local option.
Solution:   Skip over "&l:" and "&g:". (closes #6749)
2020-08-23 19:34:48 +02:00
Bram Moolenaar
6c53fca023 patch 8.2.1517: cannot easily get the character under the cursor
Problem:    Cannot easily get the character under the cursor.
Solution:   Add the {chars} argument to strpart().
2020-08-23 17:34:46 +02:00
Bram Moolenaar
430deb1945 patch 8.2.1516: Vim9: error for :exe has wrong line number
Problem:    Vim9: error for :exe has wrong line number.
Solution:   Set line number before calling do_cmdline_cmd(). (closes #6774)
2020-08-23 16:29:11 +02:00
Bram Moolenaar
8436773fad patch 8.2.1515: Vim9: can create s:var in legacy script but cannot unlet
Problem:    Vim9: can create s:var in legacy script but cannot unlet.
Solution:   Allow :unlet for legacy script var.
2020-08-23 15:21:55 +02:00
Bram Moolenaar
dc0cf1db3e patch 8.2.1514: multibyte vertical separator is cleared when dragging popup
Problem:    Multibyte vertical separator is cleared when dragging a popup
            window using a multi-byte character for the border.
Solution:   Only clear the character before the window if it is double width.
            (closes #6766)
2020-08-23 15:09:36 +02:00
Bram Moolenaar
0981c8729e patch 8.2.1513: cannot interrupt shell used for filename expansion
Problem:    Cannot interrupt shell used for filename expansion. (Dominique
            Pellé)
Solution:   Do set tmode in mch_delay(). (closes #6770)
2020-08-23 14:28:37 +02:00
Bram Moolenaar
69e44552c5 patch 8.2.1512: failure after trinary expression fails
Problem:    Failure after trinary expression fails.
Solution:   Restore eval_flags. (Yasuhiro Matsumoto, closes #6776)
2020-08-22 22:37:20 +02:00
Bram Moolenaar
cd94277f72 patch 8.2.1511: putting a string in Visual block mode ignores multi-byte
Problem:    Putting a string in Visual block mode ignores multi-byte
            characters.
Solution:   Adjust the column for Visual block mode. (closes #6767)
2020-08-22 21:08:44 +02:00
Bram Moolenaar
5390099a97 patch 8.2.1510: using "var" in :def function may refer to legacy script var
Problem:    Using "var" in a :def function may refer to a legacy Vim script
            variable.
Solution:   Require using "s:" to refer to a legacy Vim script variable.
            (closes #6771)
2020-08-22 19:02:02 +02:00
Bram Moolenaar
9943b3d979 patch 8.2.1509: vertical separator is cleared when dragging a popup window
Problem:    Vertical separator is cleared when dragging a popup window using a
            multi-byte character for the border.
Solution:   Only clear the character before the window if it is using a
            multi-byte character. (closes #6766)
2020-08-22 17:21:14 +02:00
Bram Moolenaar
c63b72b6dc patch 8.2.1508: not all debugger commands covered by tests
Problem:    Not all debugger commands covered by tests.
Solution:   Add tests for going up/down in the stack. (Ben Jackson,
            closes #6765)
2020-08-22 16:04:52 +02:00
Bram Moolenaar
51b6eb47b3 patch 8.2.1507: using malloc() directly
Problem:    Using malloc() directly.
Solution:   Use ALLOC_ONE().  Remove superfluous typecast.  (Hussam al-Homsi,
            closes #6768)
2020-08-22 15:19:18 +02:00
Bram Moolenaar
d70840ed68 patch 8.2.1506: Vim9: no error when using a number other than 0 or 1 as bool
Problem:    Vim9: no error when using a number other than 0 or 1 as bool.
Solution:   Check the number is 0 or 1.
2020-08-22 15:06:35 +02:00
Bram Moolenaar
1b04ce2d40 patch 8.2.1505: not all file read and writecode is tested
Problem:    Not all file read and writecode is tested.
Solution:   Add a few tests. (Dominique Pellé, closes #6764)
2020-08-21 22:46:11 +02:00
Bram Moolenaar
7cb6fc29d0 patch 8.2.1504: Vim9: white space checks are only done for a :def function
Problem:    Vim9: white space checks are only done for a :def function.
Solution:   Also do checks at the script level.  Adjust the name of a few
            error messages.
2020-08-21 22:36:47 +02:00
Bram Moolenaar
81e17fbe00 patch 8.2.1503: Vim9: error for autocmd defined in :def in legacy script
Problem:    Vim9: error for an autocmd defined in a :def function in legacy
            Vim script.
Solution:   Don't check the variable type. (closes #6758)
2020-08-21 21:55:43 +02:00
Bram Moolenaar
122616d9c1 patch 8.2.1502: Vim9: can use += with a :let command at script level
Problem:    Vim9: can use += with a :let command at script level.
Solution:   Give an error.
2020-08-21 21:32:50 +02:00
Bram Moolenaar
3fc71285d5 patch 8.2.1501: Vim9: concatenating to constant reverses order
Problem:    Vim9: concatenating to constant reverses order.
Solution:   Generate constant before option, register and environment
            variable. (closes #6757)
2020-08-21 20:43:17 +02:00
Bram Moolenaar
5d72ce69c8 patch 8.2.1500: Vim9: error when using address without a command
Problem:    Vim9: error when using address without a command.
Solution:   Execute the range itself. (closes #6747)
2020-08-20 23:04:06 +02:00
Bram Moolenaar
ec65d77fa2 patch 8.2.1499: Vim9: error when using "$" with col()
Problem:    Vim9: error when using "$" with col().
Solution:   Reorder getting the column value. (closes #6744)
2020-08-20 22:29:12 +02:00
Bram Moolenaar
733d259a83 patch 8.2.1498: on slow systems tests can be flaky
Problem:    On slow systems tests can be flaky.
Solution:   Use TermWait() instead of term-wait(). (Yegappan Lakshmanan,
            closes #6756)
2020-08-20 18:59:06 +02:00
Bram Moolenaar
17f67547f3 patch 8.2.1497: CursorHold test is flaky
Problem:    CursorHold test is flaky. (Jakub Kądziołka)
Solution:   Use WaitForAssert() (closes #6754)
2020-08-20 18:29:13 +02:00
Bram Moolenaar
b8a9296ced patch 8.2.1496: Vim9: cannot use " #" in a mapping
Problem:    Vim9: cannot use " #" in a mapping.
Solution:   Do not remove a comment with the EX_NOTRLCOM flag. (closes #6746)
2020-08-20 18:02:47 +02:00
Bram Moolenaar
df2524bbb4 patch 8.2.1495: "make clean" may delete too many files
Problem:    "make clean" may delete too many files.
Solution:   Do not delete $APPDIR. (closes #6751)
2020-08-20 16:16:27 +02:00
Bram Moolenaar
825b54415f patch 8.2.1494: missing change to calling eval_getline()
Problem:    Missing change to calling eval_getline().
Solution:   Change last argument.
2020-08-20 15:52:21 +02:00
Bram Moolenaar
fc2a47ffc4 patch 8.2.1493: not enough test coverage for the spell file handling
Problem:    Not enough test coverage for the spell file handling.
Solution:   Add spell file tests. (Yegappan Lakshmanan, closes #6728)
2020-08-20 15:41:55 +02:00
Bram Moolenaar
20b23c6358 patch 8.2.1492: build failures
Problem:    Build failures.
Solution:   Move typedef out of #ifdef.  Adjust argument types.  Discover
            America.
2020-08-20 15:25:00 +02:00
Bram Moolenaar
66250c932e patch 8.2.1491: Vim9: crash when compiling heredoc lines start with comment
Problem:    Vim9: crash when compiling heredoc lines start with comment.
Solution:   Skip over NULL pointers. Do not remove comment and empty lines
            when fetching function lines. (closes #6743)
2020-08-20 15:02:42 +02:00
Bram Moolenaar
93ad14710b patch 8.2.1490: Vim9: using /= with float and number doesn't work
Problem:    Vim9: using /= with float and number doesn't work.
Solution:   Better support assignment with operator. (closes #6742)
2020-08-19 22:02:41 +02:00
Bram Moolenaar
191929b182 patch 8.2.1489: Vim9: error when setting an option with setbufvar()
Problem:    Vim9: error when setting an option with setbufvar().
Solution:   Do not get a number from a string value. (closes #6740)
2020-08-19 21:20:49 +02:00
Bram Moolenaar
9dc1917f42 patch 8.2.1488: text does not scroll when inserting above first line
Problem:    Text does not scroll when inserting above first line.
Solution:   Adjust off-by-one error. (Ken Takata, closes #6739)
2020-08-19 20:19:48 +02:00
Bram Moolenaar
a7c4e74763 patch 8.2.1487: Travis: installing snd-dummy is not always useful
Problem:    Travis: installing snd-dummy is not always useful.
Solution:   Only install snd-dummy on amd64. (Ozaki Kiichi, closes #6738)
2020-08-19 19:46:12 +02:00
Bram Moolenaar
f8abbf37d6 patch 8.2.1486: Vim9: readdir() expression doesn't accept bool
Problem:    Vim9: readdir() expression doesn't accept bool.
Solution:   Merge with code for readdirex(). (closes #6737)
2020-08-19 16:00:06 +02:00
Bram Moolenaar
af8822ce08 patch 8.2.1485: Vim9: readdirex() expression doesn't accept bool
Problem:    Vim9: readdirex() expression doesn't accept bool.
Solution:   Accept both -1 and bool. (closes #6737)
2020-08-19 13:55:01 +02:00
Bram Moolenaar
9b02d64cff patch 8.2.1484: flaky failure in assert_fails()
Problem:    Flaky failure in assert_fails().
Solution:   Only used fourth argument if there is a third argument.
2020-08-18 23:24:13 +02:00
Bram Moolenaar
165036ddba patch 8.2.1483: Vim9: error for using special as number
Problem:    Vim9: error for using special as number when returning "false"
            from a popup filter.
Solution:   Use tv_get_bool(). (closes #6733)
2020-08-18 22:50:38 +02:00
Bram Moolenaar
aeb2bdd0de patch 8.2.1482: Vim9: crash when using a nested lambda
Problem:    Vim9: crash when using a nested lambda.
Solution:   Do not clear the growarray when not evaluating.  Correct pointer
when getting the next line. (closes #6731)
2020-08-18 22:32:03 +02:00
Bram Moolenaar
3affe7a6c6 patch 8.2.1481: Vim9: line number reported with error may be wrong
Problem:    Vim9: line number reported with error may be wrong.
Solution:   Check line number in tests.
2020-08-18 20:34:13 +02:00
Bram Moolenaar
e15eebd202 patch 8.2.1480: Vim9: skip expression in search() gives error
Problem:    Vim9: skip expression in search() gives error.
Solution:   use tv_get_bool() eval_expr_to_bool(). (closes #6729)
2020-08-18 19:11:38 +02:00
Bram Moolenaar
1d634542cf patch 8.2.1479: Vim9: error for list index uses wrong line number
Problem:    Vim9: error for list index uses wrong line number.
Solution:   Set source line number. (closes #6724)  Add a way to assert the
            line number of the error with assert_fails().
2020-08-18 13:41:50 +02:00
Bram Moolenaar
558813314d patch 8.2.1478: Vim9: cannot use "true" for some popup options
Problem:    Vim9: cannot use "true" for some popup options.
Solution:   Add dict_get_bool(). (closes #6725)
2020-08-18 13:04:15 +02:00
Bram Moolenaar
f39397e515 patch 8.2.1477: Vim9: error when using bufnr('%')
Problem:    Vim9: error when using bufnr('%').
Solution:   Don't give an error for using a string argument. (closes #6723)
2020-08-17 22:21:36 +02:00
Bram Moolenaar
aa9675a61d patch 8.2.1476: filetype test fails on MS-Windows
Problem:    Filetype test fails on MS-Windows.
Solution:   Remove "^" from pattern.
2020-08-17 21:57:09 +02:00
Bram Moolenaar
36967b32fd patch 8.2.1475: Vim9: can't use v:true for option flags
Problem:    Vim9: can't use v:true for option flags.
Solution:   Add tv_get_bool_chk(). (closes #6725)
2020-08-17 21:41:02 +02:00
Bram Moolenaar
624b6eaf20 patch 8.2.1474: /usr/lib/udef/rules.d not recognized as udevrules
Problem:    /usr/lib/udef/rules.d not recognized as udevrules.
Solution:   Adjust match pattern. (Haochen Tong, closes 36722)
2020-08-17 21:17:25 +02:00
Bram Moolenaar
021bda5671 patch 8.2.1473: items in a list given to :const can still be modified
Problem:    Items in a list given to :const can still be modified.
Solution:   Work like ":lockvar! name" but don't lock referenced items.
            Make locking a blob work.
2020-08-17 21:07:22 +02:00
Bram Moolenaar
7b22117c4e patch 8.2.1472: ":argdel" does not work like ":.argdel" as documented
Problem:    ":argdel" does not work like ":.argdel" as documented. (Alexey
            Demin)
Solution:   Make ":argdel" work like ":.argdel". (closes #6727)
            Also fix giving the error "0 more files to edit".
2020-08-17 19:34:10 +02:00
Bram Moolenaar
241572794f patch 8.2.1471: :const only locks the variable, not the value
Problem:    :const only locks the variable, not the value.
Solution:   Lock the value as ":lockvar 1 var" would do. (closes #6719)
2020-08-16 22:50:01 +02:00
Bram Moolenaar
c0f8823ee4 patch 8.2.1470: errors in spell file not tested
Problem:    Errors in spell file not tested.
Solution:   Add test for spell file errors. (Yegappan Lakshmanan,
            closes #6721)
2020-08-16 21:51:49 +02:00
Bram Moolenaar
0aae4809fd patch 8.2.1469: Vim9: cannot assign string to string option
Problem:    Vim9: cannot assign string to string option.
Solution:   Change checks for option value. (closes #6720)
2020-08-16 21:29:05 +02:00
Bram Moolenaar
f923571ec1 patch 8.2.1468: Vim9: invalid error for missing white space
Problem:    Vim9: invalid error for missing white space.
Solution:   Don't skip over white space after index. (closes #6718)
2020-08-16 18:42:53 +02:00
Bram Moolenaar
e5abf7af08 patch 8.2.1467: Vim9: :echomsg doesn't like a dict argument
Problem:    Vim9: :echomsg doesn't like a dict argument.
Solution:   Convert arguments like in legacy script. (closes #6717)
2020-08-16 18:29:35 +02:00
Bram Moolenaar
cc673e746a patch 8.2.1466: Vim9: cannot index or slice a variable with type "any"
Problem:    Vim9: cannot index or slice a variable with type "any".
Solution:   Add runtime index and slice.
2020-08-16 17:33:35 +02:00
Bram Moolenaar
56acb0943e patch 8.2.1465: Vim9: subscript not handled properly
Problem:    Vim9: subscript not handled properly.
Solution:   Adjust error message.  Remove dead code.  Disallow string to
            number conversion in scripts.
2020-08-16 14:48:19 +02:00
Bram Moolenaar
829ac868b7 patch 8.2.1464: Vim9: build warning for unused variable
Problem:    Vim9: build warning for unused variable.
Solution:   Delete the variable declaration.
2020-08-15 22:48:48 +02:00
Bram Moolenaar
ed5918771f patch 8.2.1463: Vim9: list slice not supported yet
Problem:    Vim9: list slice not supported yet.
Solution:   Add support for list slicing.
2020-08-15 22:14:53 +02:00
Bram Moolenaar
11107bab7e patch 8.2.1462: Vim9: string slice not supported yet
Problem:    Vim9: string slice not supported yet.
Solution:   Add support for string slicing.
2020-08-15 21:10:16 +02:00
Bram Moolenaar
3d1cde8a2f Update runtime files. 2020-08-15 18:55:18 +02:00
Bram Moolenaar
e3c37d8ebf patch 8.2.1461: Vim9: string indexes are counted in bytes
Problem:    Vim9: string indexes are counted in bytes.
Solution:   Use character indexes. (closes #6574)
2020-08-15 18:39:05 +02:00
Bram Moolenaar
451c2e3536 patch 8.2.1460: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more messages into errors.h.
2020-08-15 16:33:28 +02:00
Bram Moolenaar
53b29e4845 patch 8.2.1459: Vim9: declaring script var in script does not infer the type
Problem:    Vim9: declaring ascript variable at the script level does not
            infer the type.
Solution:   Get the type from the value. (closes #6716)
2020-08-15 14:31:20 +02:00
Bram Moolenaar
9a5c553f79 patch 8.2.1458: .gawk files not recognized
Problem:    .gawk files not recognized.
Solution:   Recognize .gawk files. (Doug Kearns)
2020-08-15 14:07:23 +02:00
Bram Moolenaar
793dcc540d patch 8.2.1457: Vim9: the output of :disassemble cannot be interrupted
Problem:    Vim9: the output of :disassemble cannot be interrupted.
Solution:   Check got_int. (closes #6715)
2020-08-15 13:49:17 +02:00
Bram Moolenaar
1623619119 patch 8.2.1456: MS-Windows: test files are not deleted
Problem:    MS-Windows: test files are not deleted.
Solution:   use "del" instead of $(DEL).
2020-08-14 23:08:22 +02:00
Bram Moolenaar
d1103587cf patch 8.2.1455: Vim9: crash when using typecast before constant
Problem:    Vim9: crash when using typecast before constant.
Solution:   Generate constant before checking type.  Add tets.
2020-08-14 22:44:25 +02:00
Bram Moolenaar
79e8db9a21 patch 8.2.1454: Vim9: failure invoking lambda with wrong arguments
Problem:    Vim9: failure invoking lambda with wrong arguments.
Solution:   Handle invalid arguments.  Add a test.
2020-08-14 22:16:33 +02:00
Bram Moolenaar
8de2f44ac6 patch 8.2.1453: Vim9: failure to compile lambda not tested
Problem:    Vim9: failure to compile lambda not tested.
Solution:   Add a test case.
2020-08-14 21:49:08 +02:00
Bram Moolenaar
8d56622944 patch 8.2.1452: Vim9: dead code in to_name_end()
Problem:    Vim9: dead code in to_name_end().
Solution:   Remove check for lambda and dict, it won't be used.
2020-08-14 21:42:54 +02:00
Bram Moolenaar
41fab3eac8 patch 8.2.1451: Vim9: list type at script level only uses first item
Problem:    Vim9: list type at script level only uses first item.
Solution:   Use all members, like in a compiled function. (closes #6712)
            Also for dictionary.
2020-08-14 21:27:37 +02:00
Bram Moolenaar
7d6997015d patch 8.2.1450: Vim9: no check that script-local items don't become global
Problem:    Vim9: no check that script-local items don't become global.
Solution:   Add a test.
2020-08-14 20:52:28 +02:00
Bram Moolenaar
32a23ac615 patch 8.2.1449: some test makefiles delete files that are not generated
Problem:    Some test makefiles delete files that are not generated.
Solution:   Remove the deletion commands.
2020-08-14 19:20:23 +02:00
Bram Moolenaar
4ac97f4761 patch 8.2.1448: test 77a for VMS depends on small.vim which does not exist
Problem:    Test 77a for VMS depends on small.vim which does not exist.
Solution:   Use the 'silent while 0" trick. (issue #6696)
2020-08-14 19:11:03 +02:00
Bram Moolenaar
32f335f75c patch 8.2.1447: Vim9: return type of keys() is list<any>
Problem:    Vim9: return type of keys() is list<any>.
Solution:   Should be list<string>. (closes #6711)
2020-08-14 18:56:45 +02:00
Bram Moolenaar
7517ffdbb5 patch 8.2.1446: Vim9: line number in error message is not correct
Problem:    Vim9: line number in error message is not correct.
Solution:   Set SOURCING_LNUM before calling emsg(). (closes #6708)
2020-08-14 18:35:07 +02:00
Bram Moolenaar
c4ce36d486 patch 8.2.1445: Vim9: function expanded name is cleared when sourcing again
Problem:    Vim9: function expanded name is cleared when sourcing a script
            again.
Solution:   Only clear the expanded name when deleting the function.
            (closes #6707)
2020-08-14 17:08:15 +02:00
Bram Moolenaar
bc4c505166 patch 8.2.1444: error messages are spread out and names can be confusing
Problem:    Error messages are spread out and names can be confusing.
Solution:   Start moving error messages to a separate file and use clear
            names.
2020-08-13 22:47:35 +02:00
Bram Moolenaar
cdd70f09a5 patch 8.2.1443: Vim9: crash when interrupting a nested :def function
Problem:    Vim9: crash when interrupting a nested :def function.
Solution:   Push a dummy return value onto the stack. (closes #6701)
2020-08-13 21:40:18 +02:00
Bram Moolenaar
be7529e889 patch 8.2.1442: outdated references to the Mac Carbon GUI
Problem:    Outdated references to the Mac Carbon GUI.
Solution:   Remove or update references. (Yee Cheng Chin, closes #6703)
2020-08-13 21:05:39 +02:00
Bram Moolenaar
c771908681 patch 8.2.1441: running tests in tiny version gives error for summarize.vim
Problem:    Running tests in tiny version gives error for summarize.vim.
Solution:   Set 'cpoptions' to allow for line continuation.  Restore
            redirecting test output to /dev/null.
2020-08-13 19:42:39 +02:00
Bram Moolenaar
16c6232cad patch 8.2.1440: debugger code insufficiently tested
Problem:    Debugger code insufficiently tested.
Solution:   Add a few more tests. (Yegappan Lakshmanan, closes #6700)
2020-08-13 19:20:04 +02:00
Bram Moolenaar
b96a32ef1a patch 8.2.1439: tiny and small builds have no test coverage
Problem:    Tiny and small builds have no test coverage.
Solution:   Restore tests that do not depend on the +eval feature.
            (Ken Takata, closes #6696)
2020-08-13 18:59:55 +02:00
Bram Moolenaar
7ac616cb0a patch 8.2.1438: missing tests for interrupting script execution from debugger
Problem:    Missing tests for interrupting script execution from debugger.
Solution:   Add tests. (Yegappan Lakshmanan, closes #6697)
2020-08-12 22:22:09 +02:00
Bram Moolenaar
c9edd6b582 patch 8.2.1437: Vim9: 'statusline' is evaluated using Vim9 script syntax
Problem:    Vim9: 'statusline' is evaluated using Vim9 script syntax.
Solution:   Always use legacy script syntax.
2020-08-12 22:18:23 +02:00
Bram Moolenaar
66e0014ba6 patch 8.2.1436: function implementing :substitute has unexpected name
Problem:    Function implementing :substitute has unexpected name.
Solution:   Rename from do_sub() to ex_substitute().
2020-08-12 21:58:12 +02:00
Bram Moolenaar
418f1df547 patch 8.2.1435: Vim9: always converting to string for ".." leads to mistakes
Problem:    Vim9: always converting to string for ".." leads to mistakes.
Solution:   Only automatically convert simple types.
2020-08-12 21:34:49 +02:00
Bram Moolenaar
fd77748df2 patch 8.2.1434: Vim9: crash when lambda uses outer function argument
Problem:    Vim9: crash when lambda uses outer function argument.
Solution:   Set the flag that the outer context is used.
2020-08-12 19:42:01 +02:00
Bram Moolenaar
ba60cc45e7 patch 8.2.1433: Vim9: cannot mingle comments in multi-line lambda
Problem:    Vim9: cannot mingle comments in multi-line lambda.
Solution:   Skip over NULL lines. (closes #6694)
2020-08-12 19:15:33 +02:00
Bram Moolenaar
6d91bcb4d2 patch 8.2.1432: various inconsistencies in test files
Problem:    Various inconsistencies in test files.
Solution:   Add modelines where they were missing.  Use Check commands instead
            of silently skipping over tests.  Adjust indents and comments.
            (Ken Takata, closes #6695)
2020-08-12 18:50:36 +02:00
Bram Moolenaar
c3d6e8a46a patch 8.2.1431: Vim9: no error for white space before comma in dict
Problem:    Vim9: no error for white space before comma in dict.
Solution:   Check for extra white space. (closes #6674)
2020-08-12 18:34:28 +02:00
Bram Moolenaar
db199216e8 patch 8.2.1430: Vim9: error for missing comma instead of extra white space
Problem:    Vim9: error for missing comma instead of extra white space.
Solution:   Check if comma can be found after white space. (closes #6668)
            Also check for extra white space in literal dict. (closes #6670)
2020-08-12 18:01:53 +02:00
Bram Moolenaar
17a836cbee patch 8.2.1429: Vim9: no error for missing white after : in dict
Problem:    Vim9: no error for missing white after : in dict.
Solution:   Check for white space. (closes #6671)  Also check that there is no
            white before the :.
2020-08-12 17:35:58 +02:00
Bram Moolenaar
ed677f5587 patch 8.2.1428: Vim9: :def function does not abort on nested function error
Problem:    Vim9: :def function does not abort on nested function error.
Solution:   Check whether an error message was given. (closes #6691)
2020-08-12 16:38:10 +02:00
Bram Moolenaar
7c5ad34878 patch 8.2.1427: Vim9: cannot use a range with marks in :def function
Problem:    Vim9: cannot use a range with marks in :def function.
Solution:   Parse range after colon. (closes #6686)
2020-08-12 15:48:55 +02:00
Bram Moolenaar
a177344dc0 patch 8.2.1426: Vim9: cannot call autoload function in :def function
Problem:    Vim9: cannot call autoload function in :def function.
Solution:   Load the autoload script. (closes #6690)
2020-08-12 15:21:22 +02:00
Bram Moolenaar
575f24b3f3 patch 8.2.1425: Vim9: cannot use call() without :call
Problem:    Vim9: cannot use call() without :call.
Solution:   Do not skip over "call(". (closes #6689)
2020-08-12 14:21:11 +02:00
Bram Moolenaar
040f975fc1 patch 8.2.1424: Mac build fails
Problem:    Mac build fails.
Solution:   Adjust configure to not fall back to Athena.  Adjust some other
            files.
2020-08-11 23:08:48 +02:00
Bram Moolenaar
035d6e91bd patch 8.2.1423: Vim9: find global function when looking for script-local
Problem:    Vim9: find global function when looking for script-local.
Solution:   Don't strip prefix if name starts with "s:". (closes #6688)
2020-08-11 22:30:42 +02:00
Bram Moolenaar
097148e849 patch 8.2.1422: the Mac GUI implementation is outdated
Problem:    The Mac GUI implementation is outdated and probably doesn't even
            work.
Solution:   Remove the Mac GUI code.  The MacVim project provides the
            supported Vim GUI version.
2020-08-11 21:58:20 +02:00
Bram Moolenaar
4301a729ea patch 8.2.1421: Vim9: handling "+" and "-" before number differs from script
Problem:    Vim9: handling "+" and "-" before number differs from Vim script.
Solution:   Use the same sequence of commands.
2020-08-11 20:51:08 +02:00
Bram Moolenaar
f7c4d83609 patch 8.2.1420: test 49 is old style
Problem:    Test 49 is old style.
Solution:   Convert remaining parts to new style. Remove obsolete items.
            (Yegappan Lakshmanan, closes #6683)
2020-08-11 20:42:19 +02:00
Bram Moolenaar
59eccb92e3 patch 8.2.1419: Vim9: not operator applied too early
Problem:    Vim9: not operator applied too early.
Solution:   Implement the "numeric_only" argument. (closes #6680)
2020-08-10 23:09:37 +02:00
Bram Moolenaar
8294d49937 patch 8.2.1418: Vim9: invalid error for missing white space
Problem:    Vim9: invalid error for missing white space after function.
Solution:   Do not skip over white space. (closes #6679)
2020-08-10 22:40:56 +02:00
Bram Moolenaar
efb6482949 patch 8.2.1417: test 49 is old style
Problem:    Test 49 is old style.
Solution:   Convert more parts to new style test. (Yegappan Lakshmanan,
            closes #6682)
2020-08-10 22:15:30 +02:00
Bram Moolenaar
3e06a1e2a8 patch 8.2.1416: Vim9: boolean evaluation does not work as intended
Problem:    Vim9: boolean evaluation does not work as intended.
Solution:   Use tv2bool() in Vim9 script. (closes #6681)
2020-08-10 21:57:54 +02:00
Bram Moolenaar
6f8f7337c1 patch 8.2.1415: closing a popup window with CTRL-C interrupts 'statusline'
Problem:    Closing a popup window with CTRL-C interrupts 'statusline' if it
            calls a function.
Solution:   Reset got_int while redrawing. (closes #6675)
2020-08-10 21:19:23 +02:00
Bram Moolenaar
bf61fdd008 patch 8.2.1414: popupwindow missing last couple of lines
Problem:    Popupwindow missing last couple of lines when cursor is in the
            first line.
Solution:   Compute the max height also when top aligned. (closes #6664)
2020-08-10 20:39:17 +02:00
Bram Moolenaar
94f4ffa770 patch 8.2.1413: previous tab page not usable from an Ex command
Problem:    Previous tab page not usable from an Ex command.
Solution:   Add the "#" argument for :tabnext et al. (Yegappan Lakshmanan,
            closes #6677)
2020-08-10 19:21:15 +02:00
Bram Moolenaar
6e4cfffe80 patch 8.2.1412: Vim: not operator does not result in boolean
Problem:    Vim: not operator does not result in boolean.
Solution:   Make type depend on operator. (issue 6678)  Fix using "false" and
            "true" in Vim9 script.
2020-08-09 22:17:55 +02:00
Bram Moolenaar
a9a47d157a patch 8.2.1411: when splitting a window localdir is copied but prevdir is not
Problem:    when splitting a window localdir is copied but prevdir is not.
Solution:   Also copy prevdir. (closes #6667)
2020-08-09 21:45:52 +02:00
Bram Moolenaar
7f7a888869 patch 8.2.1410: adding compiler plugin requires test change
Problem:    Adding compiler plugin requires test change.
Solution:   Include compiler plugin and adjust test.
2020-08-09 20:05:41 +02:00
Bram Moolenaar
1e91eafc2e patch 8.2.1409: nmpmrc and php.ini filetypes not recognized
Problem:    Nmpmrc and php.ini filetypes not recognized.
Solution:   Add filetype detection. (Doug Kearns)
2020-08-09 19:32:39 +02:00
Bram Moolenaar
64d662d5fc patch 8.2.1408: Vim9: type casting not supported
Problem:    Vim9: type casting not supported.
Solution:   Introduce type casting.
2020-08-09 19:02:50 +02:00
Bram Moolenaar
127542bceb patch 8.2.1407: Vim9: type of list and dict only depends on first item
Problem:    Vim9: type of list and dict only depends on first item.
Solution:   Use all items to decide about the type.
2020-08-09 17:22:04 +02:00
Bram Moolenaar
a1b9b0cc01 patch 8.2.1406: popupwindow lacks scrollbar if no "maxheight" is used
Problem:    Popupwindow lacks scrollbar if no "maxheight" is used.
Solution:   Compute the max height depending on the position. (closes #6664)
2020-08-09 16:37:48 +02:00
Bram Moolenaar
a7cc9e697b patch 8.2.1405: Vim9: vim9compile.c is getting too big
Problem:    Vim9: vim9compile.c is getting too big.
Solution:   Split off type code to vim9type.c.
2020-08-09 15:25:14 +02:00
Bram Moolenaar
b3ca982407 patch 8.2.1404: Vim9: script test fails in the GUI
Problem:    Vim9: script test fails in the GUI.
Solution:   Use another key to map.  Improve cleanup.
2020-08-09 14:43:58 +02:00
Bram Moolenaar
3896a105eb patch 8.2.1403: Vim9: Vim highlighting may fail in cmdline window
Problem:    Vim9: Vim highlighting fails in cmdline window if it uses Vim9
            commands.
Solution:   Allow using :vim9script, :import and :export while in the cmdline
            window. (closes #6656)
2020-08-09 14:33:55 +02:00
Bram Moolenaar
94f6c06ac5 patch 8.2.1402: s390x tests always fail
Problem:    s390x tests always fail.
Solution:   Temporarily disable s390x tests.
2020-08-09 14:07:52 +02:00
Bram Moolenaar
62a232506d patch 8.2.1401: cannot jump to the last used tabpage
Problem:    Cannot jump to the last used tabpage.
Solution:   Add g<Tab> and tabpagnr('#'). (Yegappan Lakshmanan, closes #6661,
            neovim #11626)
2020-08-09 14:04:42 +02:00
Bram Moolenaar
730b248339 patch 8.2.1400: Vim9: test does not delete written files
Problem:    Vim9: test does not delete written files.
Solution:   Correct file names.
2020-08-09 13:02:10 +02:00
Bram Moolenaar
efa94447e8 patch 8.2.1399: Vim9: may find imported item in wrong script
Problem:    Vim9: may find imported item in wrong script.
Solution:   When looking up script-local function use the embedded script ID.
            (issue #6644)
2020-08-08 22:16:00 +02:00
Bram Moolenaar
daa2f36573 patch 8.2.1398: autoload script sourced twice if sourced directly
Problem:    Autoload script sourced twice if sourced directly.
Solution:   Do not source an autoload script again. (issue #6644)
2020-08-08 21:33:21 +02:00
Bram Moolenaar
4a6d1b660f patch 8.2.1397: Vim9: return type of maparg() not adjusted for fourth arg
Problem:    Vim9: return type of maparg() not adjusted for fourth argument.
Solution:   Check if fourth argument is present. (closes #6645)
2020-08-08 17:55:49 +02:00
Bram Moolenaar
5a849da57c patch 8.2.1396: Vim9: no error for unexpectedly returning a value
Problem:    Vim9: no error for unexpectedly returning a value.
Solution:   Only set the return type for lambda's.  Make using function type
            in a function reference work.
2020-08-08 16:47:30 +02:00
Bram Moolenaar
98b4f145eb patch 8.2.1395: Vim9: no error if declaring a funcref with lower case letter
Problem:    Vim9: no error if declaring a funcref with a lower case letter.
Solution:   Check the name after the type is inferred. Fix confusing name.
2020-08-08 15:46:01 +02:00
Bram Moolenaar
2dd0a2c39a patch 8.2.1394: Vim9: compiling a function interferes with command modifiers
Problem:    Vim9: compiling a function interferes with command modifiers.
Solution:   Save and restore command modifiers. (closes #6658)
2020-08-08 15:10:27 +02:00
Bram Moolenaar
b7f4fa5177 patch 8.2.1393: insufficient testing for script debugging
Problem:    Insufficient testing for script debugging.
Solution:   Add more tests. (Ben Jackson)
2020-08-08 14:41:52 +02:00
Bram Moolenaar
bf8feb5aeb patch 8.2.1392: Vim9: line number incorrect after skipping over comment lines
Problem:    Vim9: error line number incorrect after skipping over comment
            lines.
Solution:   Insert empty lines for skipped lines.
2020-08-08 14:26:31 +02:00
Bram Moolenaar
fa211f3c6d patch 8.2.1391: Vim9: no error for shadowing a script function
Problem:    Vim9: no error for shadowing a script function.
Solution:   Check for already defined items. (closes #6652)
2020-08-07 22:00:26 +02:00
Bram Moolenaar
1c199f9c70 patch 8.2.1390: Vim9: type error after storing an option value
Problem:    Vim9: type error after storing an option value.
Solution:   Drop the type after a STOREOPT instruction. (closes #6632)
2020-08-07 21:28:34 +02:00
Bram Moolenaar
74d95b5b58 patch 8.2.1389: file missing from the distribution
Problem:    File missing from the distribution.
Solution:   Add script_util.vim to the list of distributes files.
2020-08-07 20:47:39 +02:00
Bram Moolenaar
dd29f1b056 patch 8.2.1388: Vim9: += only works for numbers
Problem:    Vim9: += only works for numbers.
Solution:   Use += as concatenate for a list. (closes #6646)
2020-08-07 20:46:20 +02:00
Bram Moolenaar
e7b1ea0276 Update runtime files. 2020-08-07 19:54:59 +02:00
Bram Moolenaar
95dd9f2571 patch 8.2.1387: Vim9: cannot assign to single letter variable with type
Problem:    Vim9: cannot assign to single letter variable with type.
Solution:   Exclude the colon from the variable name. (closes #6647)
2020-08-07 19:28:08 +02:00
Bram Moolenaar
994b89d28d patch 8.2.1386: backslash not removed afer space with space in 'isfname'
Problem:    Backslash not removed afer space in option with space in
            'isfname'.
Solution:   Do remove backslash before space, also when it is in 'isfname'.
            (Yasuhiro Matsumoto, closes #6651)
2020-08-07 19:12:41 +02:00
Bram Moolenaar
de6804d871 patch 8.2.1385: no testing on ARM
Problem:    No testing on ARM.
Solution:   Add a test on Travis for ARM. (Ozaki Kiichi, closes #6615)
2020-08-07 18:33:19 +02:00
Bram Moolenaar
8ce4b7ed85 patch 8.2.1384: no ATTENTION prompt for :vimgrep first match file
Problem:    No ATTENTION prompt for :vimgrep first match file.
Solution:   When there is an existing swap file do not keep the dummy buffer.
            (closes #6649)
2020-08-07 18:12:18 +02:00
Bram Moolenaar
9470a4d88a patch 8.2.1383: test 49 is old style
Problem:    Test 49 is old style.
Solution:   Convert test cases to new style. (Yegappan Lakshmanan,
            closes #6638)
2020-08-07 16:49:11 +02:00
Bram Moolenaar
8e1986e389 patch 8.2.1382: Vim9: using :import in filetype plugin gives an error
Problem:    Vim9: using :import in filetype plugin gives an error.
Solution:   Allow commands with the EX_LOCK_OK flag. (closes #6636)
2020-08-06 22:11:06 +02:00
Bram Moolenaar
56b8dc331d patch 8.2.1381: MS-Windows: crash with Python 3.5 when stdin is redirected
Problem:    MS-Windows: crash with Python 3.5 when stdin is redirected.
Solution:   Reconnect stdin. (Yasuhiro Matsumoto, Ken Takata, closes #6641)
2020-08-06 21:47:11 +02:00
Bram Moolenaar
3d945cc925 patch 8.2.1380: Vim9: return type of getreg() is always a string
Problem:    Vim9: return type of getreg() is always a string.
Solution:   Use list of strings when there are three arguments. (closes #6633)
2020-08-06 21:26:59 +02:00
Bram Moolenaar
ae95a3946b patch 8.2.1379: curly braces expression ending in " }" does not work
Problem:    Curly braces expression ending in " }" does not work.
Solution:   Skip over white space when checking for "}". (closes #6634)
2020-08-06 16:38:12 +02:00
Bram Moolenaar
bbd3e3c357 patch 8.2.1378: cannot put space between function name and paren
Problem:    Cannot put space between function name and paren.
Solution:   Allow this for backwards compatibility.
2020-08-06 11:23:36 +02:00
Bram Moolenaar
b8d732e93e patch 8.2.1377: triggering the ATTENTION prompt causes typeahead mess up
Problem:    Triggering the ATTENTION prompt causes typeahead to be messed up.
Solution:   Increment tb_change_cnt. (closes #6541)
2020-08-05 22:07:26 +02:00
Bram Moolenaar
803af686e2 patch 8.2.1376: Vim9: expression mapping causes error for using :import
Problem:    Vim9: expression mapping causes error for using :import.
Solution:   Add EX_LOCK_OK to :import and :export. (closes 3606)
2020-08-05 16:20:03 +02:00
Bram Moolenaar
c5da1fb7ea patch 8.2.1375: Vim9: method name with digit not accepted
Problem:    Vim9: method name with digit not accepted.
Solution:   Use eval_isnamec() instead of eval_isnamec1(). (closes #6613)
2020-08-05 15:43:44 +02:00
Bram Moolenaar
a71e263320 patch 8.2.1374: Vim9: error for assigning empty list to script variable
Problem:    Vim9: error for assigning empty list to script variable.
Solution:   Use t_unknown for empty list member. (closes #6595)
2020-08-05 15:11:03 +02:00
Bram Moolenaar
f9b2b49663 patch 8.2.1373: Vim9: no error for assigning to non-existing script var
Problem:    Vim9: no error for assigning to non-existing script var.
Solution:   Check that in Vim9 script the variable was defined. (closes #6630)
2020-08-05 14:34:14 +02:00
Bram Moolenaar
fdac71c507 patch 8.2.1372: Vim9: no error for missing white space around operator
Problem:    Vim9: no error for missing white space around operator.
Solution:   Check for white space around ? and :.
2020-08-05 12:44:41 +02:00
Bram Moolenaar
3c1c9fd94b patch 8.2.1371: Vim9: no error for missing white space around operator
Problem:    Vim9: no error for missing white space around operator.
Solution:   Check for white space around && and ||.
2020-08-05 12:32:38 +02:00
Bram Moolenaar
c753478b82 patch 8.2.1370: MS-Windows: warning for using fstat() with stat_T
Problem:    MS-Windows: warning for using fstat() with stat_T.
Solution:   use _fstat64() if available. (Naruhiko Nishino, closes #6625)
2020-08-05 12:10:50 +02:00
Bram Moolenaar
14ddd226da patch 8.2.1369: MS-Windows: autocommand test sometimes fails
Problem:    MS-Windows: autocommand test sometimes fails.
Solution:   Do not rely on the cat command.
2020-08-05 12:02:40 +02:00
Bram Moolenaar
ff1cd39cfe patch 8.2.1368: Vim9: no error for missing white space around operator
Problem:    Vim9: no error for missing white space around operator.
Solution:   Check for white space around <, !=, etc.
2020-08-05 11:51:30 +02:00
Bram Moolenaar
b4caa163ff patch 8.2.1367: Vim9: no error for missing white space around operator
Problem:    Vim9: no error for missing white space around operator.
Solution:   Check for white space around *, / and %.
2020-08-05 11:36:52 +02:00
Bram Moolenaar
a6296200bd patch 8.2.1366: test 49 is old style
Problem:    Test 49 is old style.
Solution:   Convert several tests to new style. (Yegappan Lakshmanan,
            closes #6629)
2020-08-05 11:23:13 +02:00
Bram Moolenaar
bb1b5e24ec patch 8.2.1365: Vim9: no error for missing white space around operator
Problem:    Vim9: no error for missing white space around operator.
Solution:   Check for white space. (closes #6618)
2020-08-05 10:53:21 +02:00
Bram Moolenaar
282f9c64e5 patch 8.2.1364: invalid memory access when searching for raw string
Problem:    Invalid memory access when searching for raw string.
Solution:   Check for delimiter match before following quote. (closes #6578)
2020-08-04 21:46:18 +02:00
Bram Moolenaar
e46a2ed0d8 patch 8.2.1363: test trying to run terminal when it is not supported
Problem:    Test trying to run terminal when it is not supported.
Solution:   Check if Vim can be run in a terminal.
2020-08-04 21:04:57 +02:00
Bram Moolenaar
ecd34bf55d patch 8.2.1362: last entry of ":set term=xxx" overwritten by error message
Problem:    Last entry of ":set term=xxx" overwritten by error message when
            'cmdheight' is two or more. (Tony Mechelynck)
Solution:   Output extra line breaks.
2020-08-04 20:17:31 +02:00
Bram Moolenaar
6a25026262 patch 8.2.1361: error for white space after expression in assignment
Problem:    Error for white space after expression in assignment.
Solution:   Skip over white space. (closes #6617)
2020-08-04 15:53:01 +02:00
Bram Moolenaar
f96e9dec63 patch 8.2.1360: stray error for white space after expression
Problem:    Stray error for white space after expression.
Solution:   Ignore trailing white space. (closes #6608)
2020-08-03 22:39:28 +02:00
Bram Moolenaar
8314454648 patch 8.2.1359: Vim9: cannot assign to / register in Vim9 script
Problem:    Vim9: cannot assign to / register in Vim9 script.
Solution:   Adjust check for assignment in Vim9 script. (closes #6567)
2020-08-02 20:40:43 +02:00
Bram Moolenaar
434d72cbf2 patch 8.2.1358: Vim9: test fails with +dnd is not available
Problem:    Vim9: test fails with +dnd is not available.
Solution:   Add condition.
2020-08-02 20:03:25 +02:00
Bram Moolenaar
658217276f patch 8.2.1357: Vim9: cannot assign to / register
Problem:    Vim9: cannot assign to / register.
Solution:   Adjust check for assignment.
2020-08-02 18:58:54 +02:00
Bram Moolenaar
7226e5b19b patch 8.2.1356: Vim9: cannot get the percent register
Problem:    Vim9: cannot get the percent register.
Solution:   Check for readable registers instead of writable. (closes #6566)
2020-08-02 17:33:26 +02:00
Bram Moolenaar
c2ee44cc38 patch 8.2.1355: Vim9: no error using :let for options and registers
Problem:    Vim9: no error using :let for options and registers.
Solution:   Give an error. (closes #6568)
2020-08-02 16:59:00 +02:00
Bram Moolenaar
aa970abd0a patch 8.2.1354: test 59 is old style
Problem:    Test 59 is old style.
Solution:   Convert into a new style test. (Yegappan Lakshmanan, closes #6604)
2020-08-02 16:10:39 +02:00
Bram Moolenaar
8b89614e69 patch 8.2.1353: crash when drawing double-wide character in terminal window
Problem:    Crash when drawing double-wide character in terminal window.
            (Masato Nishihata)
Solution:   Check getcell() returning NULL. (issue #6141)
2020-08-02 15:05:05 +02:00
Bram Moolenaar
ad486a0f0d patch 8.2.1352: Vim9: no error for shadowing a script-local function
Problem:    Vim9: no error for shadowing a script-local function by a nested
            function.
Solution:   Check for script-local function. (closes #6586)
2020-08-01 23:22:18 +02:00
Bram Moolenaar
bcbf41395f patch 8.2.1351: Vim9: no proper error if using namespace for nested function
Problem:    Vim9: no proper error if using namespace for nested function.
Solution:   Specifically check for a namespace. (closes #6582)
2020-08-01 22:35:13 +02:00
Bram Moolenaar
b9a2cac3ef patch 8.2.1350: Vim9: no test for error message when redefining function
Problem:    Vim9: no test for error message when redefining function.
Solution:   Add a test.
2020-08-01 22:23:20 +02:00
Bram Moolenaar
eef2102e20 patch 8.2.1349: Vim9: can define a function with the name of an import
Problem:    Vim9: can define a function with the name of an import.
Solution:   Disallow using an existing name. (closes #6585)
2020-08-01 22:16:43 +02:00
Bram Moolenaar
e4218b9416 patch 8.2.1348: build failure without the eval feature
Problem:    Build failure without the eval feature.
Solution:   Add #ifdef.
2020-08-01 21:11:38 +02:00
Bram Moolenaar
909443028b patch 8.2.1347: cannot easily get the script ID
Problem:    Cannot easily get the script ID.
Solution:   Support expand('<SID>').
2020-08-01 20:45:11 +02:00
Bram Moolenaar
491799be50 patch 8.2.1346: small build fails
Problem:    Small build fails.
Solution:   Add #ifdef.
2020-08-01 19:23:43 +02:00
Bram Moolenaar
f8992d47cd patch 8.2.1345: Redraw error when using visual block and scroll
Problem:    Redraw error when using visual block and scroll.
Solution:   Add check for w_topline. ( closes #6597)
2020-08-01 19:14:13 +02:00
Bram Moolenaar
2c79e9d14d patch 8.2.1344: Vim9: No test for trying to redefine global function
Problem:    Vim9: No test for trying to redefine global function.
Solution:   Add a test.
2020-08-01 18:57:52 +02:00
Bram Moolenaar
333894b195 patch 8.2.1343: Vim9: cannot find global function when using g:
Problem:    Vim9: cannot find global function when using g: when local
            function with the same name exists.
Solution:   Find global function when using g:.
2020-08-01 18:53:07 +02:00
Bram Moolenaar
f5a48010ef patch 8.2.1342: Vim9: accidentally using "t" gives a confusing error
Problem:    Vim9: accidentally using "x" gives a confusing error.
Solution:   Disallow using ":t" in Vim9 script. (issue #6399)
2020-08-01 17:00:03 +02:00
Bram Moolenaar
2ec208172c patch 8.2.1341: build failures
Problem:    Build failures.
Solution:   Add missing error message.
2020-08-01 16:35:08 +02:00
Bram Moolenaar
b86abadf87 patch 8.2.1340: some tests fail on Cirrus CI and/or with FreeBSD
Problem:    Some tests fail on Cirrus CI and/or with FreeBSD.
Solution:   Make 'backupskip' empty. Do not run tests as root. Check for
            directory when using viminfo. (Ozaki Kiichi, closes #6596)
2020-08-01 16:08:19 +02:00
Bram Moolenaar
2caa1594e7 patch 8.2.1339: Vim9: assigning to global dict variable doesn't work
Problem:    Vim9: assigning to global dict variable doesn't work.
Solution:   Guess variable type based in index type. (issue #6591)
2020-08-01 15:53:19 +02:00
Bram Moolenaar
8e4c8c853e patch 8.2.1338: Vim9: assigning to script-local variable doesn't check type
Problem:    Vim9: assigning to script-local variable doesn't check type.
Solution:   Use the type. (issue #6591)
2020-08-01 15:38:38 +02:00
Bram Moolenaar
586268721d patch 8.2.1337: Vim9: cannot use empty key in dict assignment
Problem:    Vim9: cannot use empty key in dict assignment.
Solution:   Allow empty key. (closes #6591)
2020-08-01 14:06:38 +02:00
Bram Moolenaar
af50e899e7 patch 8.2.1336: build failure on non-Unix systems
Problem:    Build failure on non-Unix systems.
Solution:   Add #ifdef.
2020-08-01 13:22:10 +02:00
Bram Moolenaar
4e1d8bd79b patch 8.2.1335: CTRL-C in the GUI doesn't interrupt
Problem:    CTRL-C in the GUI doesn't interrupt. (Sergey Vlasov)
Solution:   Recognize "C" with CTRL modifier as CTRL-C. (issue #6565)
2020-08-01 13:10:14 +02:00
Bram Moolenaar
b53da7918c patch 8.2.1334: Github workflow timeout needs tuning
Problem:    Github workflow timeout needs tuning
Solution:   Use a 10 minute timeout. Fail when timing out. (Ken Takata,
            closes #6590)
2020-08-01 12:26:04 +02:00
Bram Moolenaar
af8edbb8dc patch 8.2.1333: Vim9: memory leak when using nested global function
Problem:    Vim9: memory leak when using nested global function.
Solution:   Swap from and to when copying the lines.
2020-08-01 00:03:09 +02:00
Bram Moolenaar
ce6583568f patch 8.2.1332: Vim9: memory leak when using nested global function
Problem:    Vim9: memory leak when using nested global function.
Solution:   Delete the function when deleting the instruction.  Disable test
            that still causes a leak.
2020-07-31 23:47:12 +02:00
Bram Moolenaar
badd8486f7 patch 8.2.1331: Vim9: :echo with two lists doesn't work
Problem:    Vim9: :echo with two lists doesn't work.
Solution:   Do not skip white space before []. (closes #6552)
2020-07-31 22:38:17 +02:00
Bram Moolenaar
3a53ec8bdd patch 8.2.1330: Github workflow takes longer than needed
Problem:    Github workflow takes longer than needed.
Solution:   Do two test runs in parallel instead of sequentially. (Ken Takata,
            closes #6579)
2020-07-31 22:17:32 +02:00
Bram Moolenaar
38ddf333f6 patch 8.2.1329: Vim9: cannot define global function inside :def function
Problem:    Vim9: cannot define global function inside :def function.
Solution:   Assign to global variable instead of local. (closes #6584)
2020-07-31 22:05:04 +02:00
Bram Moolenaar
4d4d1cd5c8 patch 8.2.1328: no space allowed before comma in list
Problem:    No space allowed before comma in list.
Solution:   Legacy Vim script allows it. (closes #6577)
2020-07-30 22:14:33 +02:00
Bram Moolenaar
f4ee528086 patch 8.2.1327: Mac: configure can't find Tcl libraries
Problem:    Mac: configure can't find Tcl libraries.
Solution:   Adjust configure check. (closes #6575)
2020-07-30 20:18:08 +02:00
Bram Moolenaar
9d48956681 patch 8.2.1326: Vim9: skipping over white space after list
Problem:    Vim9: skipping over white space after list.
Solution:   Do not skip white space, a following [] would be misinterpreted.
            (closes #6552)  Fix a few side effects.
2020-07-30 20:08:50 +02:00
Bram Moolenaar
ea2d8d2571 patch 8.2.1325: Vim9: using Vim9 script for autaload not tested
Problem:    Vim9: using Vim9 script for autaload not tested.
Solution:   Add a test.  Update help.
2020-07-29 22:11:05 +02:00
Bram Moolenaar
c7e44a7e4c patch 8.2.1324: Vim9: line break after "=" does not work
Problem:    Vim9: line break after "=" does not work.
Solution:   Also allow for NUL after "=". (closes #6549)
2020-07-29 21:37:43 +02:00
Bram Moolenaar
696ba23149 patch 8.2.1323: Vim9: invalid operators only rejected in :def function
Problem:    Vim9: invalid operators only rejected in :def function.
Solution:   Also reject them at script level. (closes #6564)
2020-07-29 21:20:41 +02:00
Bram Moolenaar
1040956292 patch 8.2.1322: Vim9: method on double quoted string doesn't work
Problem:    Vim9: method on double quoted string doesn't work.
Solution:   Recognize double quoted string. (closes #6562)
2020-07-29 20:00:38 +02:00
Bram Moolenaar
7b7f78f51d patch 8.2.1321: GitHub CI also runs on tag push
Problem:    GitHub CI also runs on tag push.
Solution:   Skip CI on push. (Ken Takata, closes #6571)
2020-07-29 19:29:23 +02:00
Bram Moolenaar
33afa2447b patch 8.2.1320: Vim9: cannot declare some single letter variables
Problem:    Vim9: cannot declare some single letter variables.
Solution:   Do not recognize a colon for a namespace for single letter
            variables. (closes #6547)
2020-07-29 19:18:00 +02:00
Bram Moolenaar
ac7bf8c4bf patch 8.2.1319: status badge for Github CI has wrong link
Problem:    Status badge for Github CI has wrong link.
Solution:   Rename and use the right link
2020-07-29 17:43:55 +02:00
Bram Moolenaar
ed3c7e6339 patch 8.2.1318: no status badge for Github CI
Problem:    No status badge for Github CI.
Solution:   Add a badge.
2020-07-29 17:34:33 +02:00
Bram Moolenaar
f9a343f8bd patch 8.2.1317: MS-Windows tests on AppVeyor are slow
Problem:    MS-Windows tests on AppVeyor are slow.
Solution:   Use GitHub Actions. (Ken Takata, closes #6569)
2020-07-29 16:32:21 +02:00
Bram Moolenaar
b61ef01cce patch 8.2.1316: test 42 is still old style
Problem:    Test 42 is still old style.
Solution:   Turn it into a new style test. (Yegappan Lakshmanan, closes #6561)
2020-07-29 16:08:21 +02:00
Bram Moolenaar
45df2a01a7 patch 8.2.1315: MS-Windows: test log contains escape sequences
Problem:    MS-Windows: test log contains escape sequences.
Solution:   Do not use t_md and t_me but ANSI escape sequences. (Ken Takata,
            closes #6559)
2020-07-29 15:03:01 +02:00
Bram Moolenaar
9898107f54 patch 8.2.1314: Vim9: rule for comment after :function is confusing
Problem:    Vim9: rule for comment after :function is confusing.
Solution:   Allow double quoted comment after :function in vim9script.
            (closes #6556)
2020-07-29 14:40:25 +02:00
Bram Moolenaar
b5ed266037 patch 8.2.1313: Vim9 script: cannot assign to environment variable
Problem:    Vim9 script: cannot assign to environment variable.
Solution:   Recognize environment variable assignment. (closes #6548)
            Also options and registers.
2020-07-28 22:38:37 +02:00
Bram Moolenaar
066b12e36c patch 8.2.1312: MS-Windows: terminal test may fail if dir.exe exists
Problem:    MS-Windows: terminal test may fail if dir.exe exists.
Solution:   Use dir.com. (Ken Takata, closes #6557)
2020-07-28 21:40:27 +02:00
Bram Moolenaar
68e30449a2 patch 8.2.1311: test failures with legacy Vim script
Problem:    Test failures with legacy Vim script.
Solution:   Actually check for Vim9 script.
2020-07-28 21:15:07 +02:00
Bram Moolenaar
bd7f7c123d patch 8.2.1310: configure with Xcode 12 fails to check for tgetent
Problem:    Configure with Xcode 12 fails to check for tgetent.
Solution:   Declare tgetent(). (Ozaki Kiichi, closes #6558)
2020-07-28 21:03:37 +02:00
Bram Moolenaar
461f21242a patch 8.2.1309: build failure with tiny version
Problem:    Build failure with tiny version.
Solution:   Add #ifdef.
2020-07-28 20:25:47 +02:00
Bram Moolenaar
ae616494d7 patch 8.2.1308: Vim9: accidentally using "x" causes Vim to exit
Problem:    Vim9: accidentally using "x" causes Vim to exit.
Solution:   Disallow using ":x" or "xit" in Vim9 script. (closes #6399)
2020-07-28 20:07:27 +02:00
Bram Moolenaar
0aac67a431 patch 8.2.1307: popup window width does not include number of sign columns
Problem:    popup window width does not include number, fold of sign column
            width.
Solution:   Take number, fold and sign column with into account.
2020-07-27 22:40:37 +02:00
Bram Moolenaar
b13ab99908 patch 8.2.1306: checking for first character of dict key is inconsistent
Problem:    Checking for first character of dict key is inconsistent.
Solution:   Add eval_isdictc(). (closes #6546)
2020-07-27 21:43:28 +02:00
Bram Moolenaar
622b3568fa patch 8.2.1305: some tests are still old style
Problem:    Some tests are still old style.
Solution:   Convert tests 52 and 70 to new style. (Yegappan Lakshmanan,
            closes #6544)  Fix error in FinishTesting().
2020-07-27 20:02:41 +02:00
Bram Moolenaar
6ca6ca4889 patch 8.2.1304: debug backtrace isn't tested much
Problem:    Debug backtrace isn't tested much.
Solution:   Add more specific tests. (Ben Jackson, closes #6540)
2020-07-27 19:47:07 +02:00
Bram Moolenaar
6d585f4c5c patch 8.2.1303: calling popup_setoptions() resets 'signcolumn'
Problem:    Calling popup_setoptions() resets 'signcolumn'.
Solution:   Only set 'signcolumn' when creating the popup. (closes #6542)
2020-07-26 22:20:54 +02:00
Bram Moolenaar
01865ade85 patch 8.2.1302: Vim9: varargs arg after optional arg does not work
Problem:    Vim9: varargs arg after optional arg does not work
Solution:   Check for the "..." first. (issue #6507)
2020-07-26 18:33:09 +02:00
Bram Moolenaar
ace6132aa8 patch 8.2.1301: Vim9: varargs argument type not parsed properly
Problem:    Vim9: varargs argument type not parsed properly.
Solution:   Skip over the "...". (issue #6507)
2020-07-26 18:16:58 +02:00
Bram Moolenaar
4fc224ca1c patch 8.2.1300: Vim9: optional argument type not parsed properly
Problem:    Vim9: optional argument type not parsed properly.
Solution:   Skip over the "?". (issue #6507)
2020-07-26 17:56:25 +02:00
Bram Moolenaar
2547aa930b Update runtime files. 2020-07-26 17:00:44 +02:00
Bram Moolenaar
d3bb6a82a5 patch 8.2.1299: compiler warning for using size_t for int and void pointer
Problem:    Compiler warning for using size_t for int and void pointer.
Solution:   Add type casts.
2020-07-26 15:55:25 +02:00
Bram Moolenaar
cb4f69c2fd patch 8.2.1298: compiler warning for unused argument in small version
Problem:    Compiler warning for unused argument in small version.
Solution:   Add UNUSED.
2020-07-26 15:51:06 +02:00
Bram Moolenaar
a5d0423fa1 patch 8.2.1297: when a test fails it's often not easy to see where
Problem:    When a test fails it's often not easy to see what the call stack
            is.
Solution:   Add more entries from the call stack in the exception message.
2020-07-26 15:37:02 +02:00
Bram Moolenaar
d66cdcd43a patch 8.2.1296: some part of using 'smarcase' was not tested
Problem:    Some part of using 'smarcase' was not tested.
Solution:   Add more tests. (Dominique Pellé, closes #6538)
2020-07-26 13:27:16 +02:00
Bram Moolenaar
7d40b8a532 patch 8.2.1295: tests 44 and 99 are old style
Problem:    Tests 44 and 99 are old style.
Solution:   Convert to new style tests. (Yegappan Lakshmanan, closes #6536)
2020-07-26 12:52:59 +02:00
Bram Moolenaar
37394ff752 patch 8.2.1294: Vim9: error when using vim9script in TextYankPost
Problem:    Vim9: error when using vim9script in TextYankPost.
Solution:   Use EX_LOCKOK instead of the EX_CMDWIN flag for command that can
            be used when text is locked. (closes #6529)
2020-07-25 19:38:18 +02:00
Bram Moolenaar
2d6b20d6a9 patch 8.2.1293: Vim9: error when using vim9script in TextYankPost
Problem:    Vim9: error when using vim9script in TextYankPost.
Solution:   Use EX_LOCKOK instead of the EX_CMDWIN flag for command that can
            be used when text is locked. (closes #6529)
2020-07-25 19:30:59 +02:00
Bram Moolenaar
2afc3b4f77 patch 8.2.1292: AIDL filetype not recognized
Problem:    AIDL filetype not recognized.
Solution:   Add filetype detection. (Dominique Pellé, closes #6533)
2020-07-25 16:53:12 +02:00
Bram Moolenaar
24aa48b7a2 patch 8.2.1291: Vim9: type of varargs items is not checked
Problem:    Vim9: type of varargs items is not checked.
Solution:   Check the list item types. (closes #6523)
2020-07-25 16:33:02 +02:00
Bram Moolenaar
925e9fd633 patch 8.2.1290: Vim9: cannot replace a global function
Problem:    Vim9: cannot replace a global function.
Solution:   Allow for "!" on a global function. (closes #6524)  Also fix that
            :delfunc on a :def function only made it empty.
2020-07-25 15:41:11 +02:00
Bram Moolenaar
c841afff6a patch 8.2.1289: crash when using a custom completion function
Problem:    Crash when using a custom completion function.
Solution:   Initialize all of the expand_T. (closes #6532)
2020-07-25 14:11:55 +02:00
Bram Moolenaar
13e12b8a3c patch 8.2.1288: Vim9: cannot use mark in range
Problem:    Vim9: cannot use mark in range.
Solution:   Use the flag that a colon was seen. (closes #6528)
2020-07-24 18:47:22 +02:00
Bram Moolenaar
40f4f7a48c patch 8.2.1287: Vim9: crash when using an imported function
Problem:    Vim9: crash when using an imported function.
Solution:   Add the function type to the imported entry. (closes #6522)
2020-07-23 22:41:43 +02:00
Bram Moolenaar
43e969d3f9 patch 8.2.1286: Vim9: No error when using a type to a window variable
Problem:    Vim9: No error when using a type to a window variable
Solution:   Recognize the syntax and give an error. (closes #6521)
2020-07-23 21:14:43 +02:00
Bram Moolenaar
b8070e3173 patch 8.2.1285: Vim9: argument types are not checked on assignment
Problem:    Vim9: argument types are not checked on assignment.
Solution:   Check function argument types. (issue #6507)
2020-07-23 20:56:04 +02:00
Bram Moolenaar
bfba8651a5 patch 8.2.1284: Vim9: skipping over type includes following white space
Problem:    Vim9: skipping over type includes following white space, leading
            to an error for missing white space.
Solution:   Do not skip over white space after the type.
2020-07-23 20:09:10 +02:00
Bram Moolenaar
637cd7d1c9 patch 8.2.1283: Vim9: error for misplaced -> lacks argument
Problem:    Vim9: error for misplaced -> lacks argument.
Solution:   Use the pointer before it was advanced.
2020-07-23 19:06:23 +02:00
Bram Moolenaar
6c4bfe4b31 patch 8.2.1282: Vim9: crash when using CheckScriptFailure()
Problem:    Vim9: crash when using CheckScriptFailure() in
            Test_vim9script_call_fail_decl().
Solution:   Do not decrement the def_functions len unless the function was
            newly added.
2020-07-23 18:26:30 +02:00
Bram Moolenaar
2d06bfde29 patch 8.2.1281: the "trailing characters" error can be hard to understand
Problem:    The "trailing characters" error can be hard to understand.
Solution:   Add the trailing characters to the message.
2020-07-23 17:16:18 +02:00
Bram Moolenaar
8930caaa1a patch 8.2.1280: Ex command error cannot contain an argument
Problem:    Ex command error cannot contain an argument.
Solution:   Add ex_errmsg() and translate earlier.  Use e_trailing_arg where
            possible.
2020-07-23 16:37:03 +02:00
Bram Moolenaar
8d5f6af5e5 patch 8.2.1279: some tests on Travis have EXITFREE duplicated
Problem:    Some tests on Travis have EXITFREE duplicated.
Solution:   Remove EXITFREE from shadowopt.  Add "shadow" to job name.
2020-07-23 15:50:40 +02:00
Bram Moolenaar
dd1a9af00f patch 8.2.1278: Vim9: line break after "->" only allowed in :def function
Problem:    Vim9: line break after "->" only allowed in :def function.
Solution:   Only allow line break after "->". (closes #6492)
2020-07-23 15:38:03 +02:00
Bram Moolenaar
7a87b4e3fe patch 8.2.1277: tests on Travis do not run with EXITFREE
Problem:    Tests on Travis do not run with EXITFREE.
Solution:   Add EXITFREE to all builds to uncover any mistakes.
2020-07-23 14:59:07 +02:00
Bram Moolenaar
4cc45a3673 patch 8.2.1276: MS-Windows: system test may fail if more.exe is installed
Problem:    MS-Windows: system test may fail if more.exe is installed.
Solution:   Explicitly use more.com. (Taro Muraoka, Ken Takata, closes #6517)
2020-07-23 14:51:02 +02:00
Bram Moolenaar
5a67c37a55 patch 8.2.1275: Vim9: compiler warning for buffer size
Problem:    Vim9: compiler warning for buffer size.
Solution:   Change the offset from 10 to 15. (Dominique Pellé, closes #6518)
2020-07-23 14:39:47 +02:00
Bram Moolenaar
63be3d4ba0 patch 8.2.1274: Vim9: no error for missing white space at script level
Problem:    Vim9: no error for missing white space in assignment at script
            level.
Solution:   Check for white space. (closes #6495)
2020-07-23 13:11:37 +02:00
Bram Moolenaar
c69950ac17 patch 8.2.1273: MS-Windows: terminal test may leave file behind
Problem:    MS-Windows: terminal test may leave file behind.
Solution:   Wait a moment for process to end before deleting the file.
            (Taro Muraoka, closes #6513)
2020-07-22 22:23:40 +02:00
Bram Moolenaar
4cdb13ce81 patch 8.2.1272: Vim9: type not checked if declaration also assigns value
Problem:    Vim9: type not checked if declaration also assigns value.
Solution:   Check the type. (issue #6507)
2020-07-22 21:45:14 +02:00
Bram Moolenaar
0f60e80f9b patch 8.2.1271: Vim9: Error for Funcref function argument type
Problem:    Vim9: Error for Funcref function argument type.
Solution:   Find the actual function type if possible. (issue #6507)
2020-07-22 20:16:11 +02:00
Bram Moolenaar
2f1980f7b7 patch 8.2.1270: Vim9: not skipping over function type declaration
Problem:    Vim9: not skipping over function type declaration with only a
            return type.
Solution:   Skip over the return type. (issue #6507)
2020-07-22 19:30:06 +02:00
Bram Moolenaar
054f14bbe5 patch 8.2.1269: language and locale code spread out
Problem:    Language and locale code spread out.
Solution:   Move relevant code to src/locale.c. (Yegappan Lakshmanan,
            closes #6509)
2020-07-22 19:11:19 +02:00
Bram Moolenaar
e7e4838f25 patch 8.2.1268: Vim9: no error for using double quote comment
Problem:    Vim9: no error for using double quote comment after :func or :def.
Solution:   Only accept double quote when not in Vim9 script and not after
            :def. (closes #6483)
2020-07-22 18:17:08 +02:00
Bram Moolenaar
2690b5aed8 patch 8.2.1267: MS-Windows: tests may fail due to $PROMPT value
Problem:    MS-Windows: tests may fail due to $PROMPT value.
Solution:   Set $PROMPT for testing. (Taro Muraoka, closes #6510)
2020-07-22 18:14:58 +02:00
Bram Moolenaar
bc6fcbe4ce patch 8.2.1266: Makefile preference were accidentally included
Problem:    Makefile preference were accidentally included.
Solution:   Revert the Makefile changes.
2020-07-21 22:34:41 +02:00
Bram Moolenaar
7d5e744162 patch 8.2.1265: crash with EXITFREE when split() fails
Problem:    Crash with EXITFREE when split() fails.
Solution:   Restore 'cpoptions'.
2020-07-21 22:25:51 +02:00
Bram Moolenaar
420952175a patch 8.2.1264: terminal getwinpos() test is a bit flaky
Problem:    Terminal getwinpos() test is a bit flaky.
Solution:   Call getwinpos() a bit later.
2020-07-21 21:48:58 +02:00
Bram Moolenaar
c71f36a889 patch 8.2.1263: Vim9: comperators use 'ignorecase' in Vim9 script
Problem:    Vim9: comperators use 'ignorecase' in Vim9 script.
Solution:   Ignore 'ignorecase'.  Use true and false instead of 1 and 0.
            (closes #6497)
2020-07-21 21:31:00 +02:00
Bram Moolenaar
f868ba8903 patch 8.2.1262: src/ex_cmds.c file is too big
Problem:    src/ex_cmds.c file is too big.
Solution:   Move help related code to src/help.c. (Yegappan Lakshmanan,
            closes #6506)
2020-07-21 21:07:20 +02:00
Bram Moolenaar
c7db57788b patch 8.2.1261: Vim9: common type of function not tested
Problem:    Vim9: common type of function not tested.
Solution:   Add a test.  Fix uncovered problems.
2020-07-21 20:55:50 +02:00
Bram Moolenaar
7591116acf patch 8.2.1260: there is no good test for CursorHold
Problem:    There is no good test for CursorHold.
Solution:   Add a test.  Remove duplicated test. (Yegappan Lakshmanan,
            closes #6503
2020-07-21 19:44:47 +02:00
Bram Moolenaar
f56c95fdad patch 8.2.1259: empty group in 'tabline' may cause using an invalid pointer
Problem:    Empty group in 'tabline' may cause using an invalid pointer.
Solution:   Set the group start position. (closes #6505)
2020-07-21 19:25:18 +02:00
Bram Moolenaar
08815a1d03 patch 8.2.1258: CursorHold does not work well
Problem:    CursorHold does not work well.a (Shane-XB-Qian)
Solution:   Only restore did_cursorhold when using :normal.
2020-07-20 23:10:56 +02:00
Bram Moolenaar
b31be3f909 patch 8.2.1257: Vim9: list unpack doesn't work at the script level
Problem:    Vim9: list unpack doesn't work at the script level.
Solution:   Detect unpack assignment better. (closes #6494)
2020-07-20 22:37:44 +02:00
Bram Moolenaar
7892b953e0 patch 8.2.1256: Vim9: type wrong after getting dict item in lambda
Problem:    Vim9: type wrong after getting dict item in lambda.
Solution:   Set the type to "any" after enforcing dict type. (closes #6491)
2020-07-20 22:09:34 +02:00
Bram Moolenaar
d43906d2e5 patch 8.2.1255: cannot use a lambda with quickfix functions
Problem:    Cannot use a lambda with quickfix functions.
Solution:   Add support for lambda. (Yegappan Lakshmanan, closes #6499)
2020-07-20 21:31:32 +02:00
Bram Moolenaar
470adb827f patch 8.2.1254: MS-Windows: regexp test may fail if 'iskeyword' set wrongly
Problem:    MS-Windows: regexp test may fail if 'iskeyword' set wrongly.
Solution:   Override the 'iskeyword' value. (Taro Muraoka, closes #6502)
2020-07-20 21:21:30 +02:00
Bram Moolenaar
b146e01a7e patch 8.2.1253: CTRL-K in Insert mode gets <CursorHold> inserted
Problem:    CTRL-K in Insert mode gets <CursorHold> inserted. (Roland
            Puntaier)
Solution:   Do not reset did_cursorhold, restore it. (closes #6447)
2020-07-19 23:06:05 +02:00
Bram Moolenaar
54c3fcd852 patch 8.2.1252: ":marks" may show '< and '> mixed up
Problem:    ":marks" may show '< and '> mixed up.
Solution:   Show the mark position as where '< and '> would jump.
2020-07-19 22:09:06 +02:00
Bram Moolenaar
682d0a1546 patch 8.2.1251: Vim9: warning for pointer usage, test failure undetected
Problem:    Vim9: warning for pointer usage, test failure undetected.
Solution:   Fix pointer indirection.  Give error when executing function
            failed for any reason.  Fix instruction names.
2020-07-19 20:48:59 +02:00
Bram Moolenaar
2f8ce0ae8a patch 8.2.1250: Vim9: cannot use the g:, b:, t: and w: namespaces
Problem:    Vim9: cannot use the g:, b:, t: and w: namespaces.
Solution:   Add instructions to push a dict for the namespaces. (closes #6480)
2020-07-19 19:47:35 +02:00
Bram Moolenaar
747f11ad6e patch 8.2.1249: Vim9: disassemble test fails
Problem:    Vim9: disassemble test fails.
Solution:   Change INDEX to LISTINDEX.  Add test for STRINDEX.
2020-07-19 18:38:37 +02:00
Bram Moolenaar
956501594e patch 8.2.1248: Netbeans test is flaky in the GUI
Problem:    Netbeans test is flaky in the GUI.
Solution:   Filter out geometry messages. (Taro Muraoka, closes #6487)
2020-07-19 18:24:32 +02:00
Bram Moolenaar
bf9d8c3765 patch 8.2.1247: Vim9: cannot index a character in a string
Problem:    Vim9: cannot index a character in a string.
Solution:   Add ISN_STRINDEX instruction. (closes #6478)
2020-07-19 17:55:44 +02:00
Bram Moolenaar
b209750b5e patch 8.2.1246: Vim9: comment after assignment doesn't work
Problem:    Vim9: comment after assignment doesn't work.
Solution:   Skip over white space. (closes #6481)
2020-07-19 17:17:02 +02:00
Bram Moolenaar
f398238a37 patch 8.2.1245: build failure in tiny version
Problem:    Build failure in tiny version.
Solution:   Add #ifdef.
2020-07-19 16:32:09 +02:00
Bram Moolenaar
6802cce407 patch 8.2.1244: Vim9: in lambda index assumes a list
Problem:    Vim9: in lambda index assumes a list.
Solution:   Use the value type to decide about list or dict. (closes #6479)
2020-07-19 15:49:49 +02:00
Bram Moolenaar
75783bd84e patch 8.2.1243: Vim9: cannot have a comment line halfway a list
Problem:    Vim9: cannot have a comment or empty line halfway a list at script
            level.
Solution:   Skip more than one line if needed.
2020-07-19 14:41:58 +02:00
Bram Moolenaar
65b9545f44 patch 8.2.1242: Vim9: no error if calling a function with wrong type
Problem:    Vim9: no error if calling a function with wrong argument type.
Solution:   Check types of arguments. (closes #6469)
2020-07-19 14:03:09 +02:00
Bram Moolenaar
6434fc574d patch 8.2.1241: cannot use getbufinfo() as a method
Problem:    Cannot use getbufinfo() as a method.
Solution:   Support using getbufinfo() as a method. (closes #6458)
2020-07-18 22:24:22 +02:00
Bram Moolenaar
10e1d01aaf patch 8.2.1240: GUI tests sometimes fail because of translations
Problem:    GUI tests sometimes fail because of translations.
Solution:   Reload the menus without translation. (Taro Muraoka, closes #6486)
2020-07-18 22:03:11 +02:00
Bram Moolenaar
de2396fc87 patch 8.2.1239: "maxwidth" in 'completepopup' not obeyed
Problem:    "maxwidth" in 'completepopup' not obeyed. (Jay Sitter)
Solution:   Add separate field for value from option. (closes #6470)
2020-07-18 21:40:41 +02:00
Bram Moolenaar
d032f34a51 patch 8.2.1238: Vim9: a few remaining errors not caught by try/catch
Problem:    Vim9: a few remaining errors not caught by try/catch.
Solution:   Do not bail out if an error is inside try/catch.
2020-07-18 18:13:02 +02:00
Bram Moolenaar
447bfba24b patch 8.2.1237: changing 'completepopup' after opening popup has no effect
Problem:    Changing 'completepopup' after opening a popup has no effect. (Jay
            Sitter)
Solution:   Close the popup when the options are changed. (closes #6471)
2020-07-18 16:07:16 +02:00
Bram Moolenaar
e859312e74 patch 8.2.1236: Vim9: a few errors not caught by try/catch
Problem:    Vim9: a few errors not caught by try/catch.
Solution:   Do not bail out if an error is inside try/catch.  Fix that a not
            matching catch doesn't jump to :endtry.
2020-07-18 15:17:02 +02:00
Bram Moolenaar
2764d06ab7 patch 8.2.1235: Not all mouse codes covered by tests
Problem:    Not all mouse codes covered by tests.
Solution:   Add more tests for the mouse. (Yegappan Lakshmanan, closes #6472)
2020-07-18 12:59:19 +02:00
Bram Moolenaar
066e7da3cd patch 8.2.1234: Lua build problem with old compiler
Problem:    Lua build problem with old compiler.
Solution:   Move declarations to start of the block. (Taro Muraoka,
            closes #6477)
2020-07-18 12:50:35 +02:00
Bram Moolenaar
f0b9f43c31 patch 8.2.1233: Vim9: various errors not caught by try/catch
Problem:    Vim9: various errors not caught by try/catch.
Solution:   Do not bail out if an error is inside try/catch.
2020-07-17 23:03:17 +02:00
Bram Moolenaar
b68ced5f07 patch 8.2.1232: MS-Windows GUI: Snap cancelled by split command
Problem:    MS-Windows GUI: Snap cancelled by split command.
Solution:   Do not cancel Snap when splitting a window. (Ken Takata,
            closes #6467)
2020-07-17 22:26:53 +02:00
Bram Moolenaar
945c857844 patch 8.2.1231: MS-Windows: GUI code can be cleaned up
Problem:    MS-Windows: GUI code can be cleaned up.
Solution:   Do a bit of cleaning up. (Ken Takata, closes #6465)
2020-07-17 22:17:03 +02:00
Bram Moolenaar
68d130c618 patch 8.2.1230: Vim9: list index error not caught by try/catch
Problem:    Vim9: list index error not caught by try/catch.
Solution:   Do not bail out if an error is inside try/catch. (closes #6462)
2020-07-17 22:06:44 +02:00
Bram Moolenaar
6e36b1c18e patch 8.2.1229: build error without the eval feature
Problem:    Build error without the eval feature.
Solution:   Declare starts_with_colon. Make function local.
2020-07-17 20:47:51 +02:00
Bram Moolenaar
203ec7760d patch 8.2.1228: scrollbars not flush against the window edges when maximised
Problem:    Scrollbars not flush against the window edges when maximised.
Solution:   Add padding. (Ken Takata, closes #5602, closes #6466)
2020-07-17 20:43:43 +02:00
Bram Moolenaar
f5be8cdb77 patch 8.2.1227: Vim9: allowing both quoted and # comments is confusing
Problem:    Vim9: allowing both quoted and # comments is confusing.
Solution:   Only support # comments in Vim9 script.
2020-07-17 20:36:00 +02:00
Bram Moolenaar
98af99f2d7 patch 8.2.1226: MS-Windows: windows positioning wrong depending on taskbar
Problem:    MS-Windows: windows positioning wrong when the taskbar is placed
            at the top or left of the screen.
Solution:   Use GetWindowRect and MoveWindow APIs. (Yukihiro Nakadaira,
            Ken Takata, closes #6455)
2020-07-16 22:30:31 +02:00
Bram Moolenaar
ee1b93169d patch 8.2.1225: linker errors when building with dynamic Python 3.9
Problem:    Linker errors when building with dynamic Python 3.9.
Solution:   Add #defined items. (closes #6461)
2020-07-16 22:15:53 +02:00
Bram Moolenaar
a90afb9a59 patch 8.2.1224: Vim9: arguments from partial are not used
Problem:    Vim9: arguments from partial are not used.
Solution:   Put the partial arguments on the stack. (closes #6460)
2020-07-15 22:38:56 +02:00
Bram Moolenaar
e30f64b4b5 patch 8.2.1223: Vim9: invalid type error for function default value
Problem:    Vim9: invalid type error for function default value.
Solution:   Use right argument index. (closes #6458)
2020-07-15 19:48:20 +02:00
Bram Moolenaar
657a826c07 patch 8.2.1222: using valgrind in Vim command started by test doesn't work
Problem:    When using valgrind a Vim command started by a test uses the same
            log file name which gets overwritten.
Solution:   Fix regexp to rename the log file.
2020-07-15 18:29:18 +02:00
Bram Moolenaar
02f9e6a60f patch 8.2.1221: memory leak when updating popup window
Problem:    Memory leak when updating popup window.
Solution:   Clear search highlighting.
2020-07-15 18:27:08 +02:00
Bram Moolenaar
452143c6bf patch 8.2.1220: memory access error when dragging a popup window
Problem:    memory access error when dragging a popup window over a buffer
            with folding.
Solution:   Avoid going over the end of the cache. (closes #6438)
2020-07-15 17:38:21 +02:00
Bram Moolenaar
5966ea105e patch 8.2.1219: symlink not followed if dirname ends in //
Problem:    Symlink not followed if dirname ends in //.
Solution:   Resolve symlink earlier. (Tomáš Janoušek, closes #6454)
2020-07-15 15:30:05 +02:00
Bram Moolenaar
3d48e25dcb patch 8.2.1218: Vim9: cannot use 'text'->func()
Problem:    Vim9: cannot use 'text'->func().
Solution:   Recognize string at start of command.
2020-07-15 14:15:52 +02:00
Bram Moolenaar
1e1f612bd4 patch 8.2.1217: startup test depends on random source file
Problem:    Startup test depends on random source file.
Solution:   Write a test file to find quickfix errors in.
2020-07-15 11:19:11 +02:00
Bram Moolenaar
b6e4e4c6f7 patch 8.2.1216: startup test fails
Problem:    Startup test fails.
Solution:   Adjust expected values for deleted lines.
2020-07-15 01:37:36 +02:00
Bram Moolenaar
e3f915d12c patch 8.2.1215: Atari MiNT support is outdated
Problem:    Atari MiNT support is outdated.
Solution:   Nobody responded this code is still useful, so let's delete it.
2020-07-14 23:02:44 +02:00
Bram Moolenaar
ceb56ddbaf patch 8.2.1214: MS-Windows: default _vimrc not correct in silent install mode
Problem:    MS-Windows: default _vimrc not correct in silent install mode.
Solution:   Add the LoadDefaultVimrc macro. (Ken Takata, closes #6451)
2020-07-14 22:24:40 +02:00
Bram Moolenaar
297bec0731 patch 8.2.1213: mouse codes not tested sufficiently
Problem:    Mouse codes not tested sufficiently.
Solution:   Add more tests for mouse codes. (closes #6436)
2020-07-14 22:11:04 +02:00
Bram Moolenaar
5551b131da patch 8.2.1212: cannot build with Lua 5.4
Problem:    Cannot build with Lua 5.4.
Solution:   Use luaL_typeerror instead defining it. (closes #6454)
2020-07-14 21:54:28 +02:00
Bram Moolenaar
8455c5ed31 patch 8.2.1211: removed more than dead code
Problem:    Removed more than dead code.
Solution:   Put back the decrement.
2020-07-14 21:22:30 +02:00
Bram Moolenaar
1f22cc5cdb patch 8.2.1210: using ht_used when looping through a hashtab is less reliable
Problem:    Using ht_used when looping through a hashtab is less reliable.
Solution:   Use ht_changed in a few more places.
2020-07-14 21:08:49 +02:00
Bram Moolenaar
21c16f868d patch 8.2.1209: Vim9: test failure
Problem:    Vim9: test failure.
Solution:   Add missing changes to hashtab.
2020-07-14 16:15:34 +02:00
Bram Moolenaar
49fe0d6b28 patch 8.2.1208: build failure
Problem:    Build failure.
Solution:   Add missing change.
2020-07-14 15:47:23 +02:00
Bram Moolenaar
7ce85be63b patch 8.2.1207: Vim9: crash in expr test when run in the GUI
Problem:    Vim9: crash in expr test when run in the GUI.
Solution:   Break out of loop over hashtab also when function got removed and
            added.
2020-07-14 15:01:05 +02:00
Bram Moolenaar
1bce831e13 patch 8.2.1206: Vim9: crash in expr test when run in the GUI
Problem:    Vim9: crash in expr test when run in the GUI.
Solution:   Temporarily comment out two test lines.
2020-07-13 23:22:54 +02:00
Bram Moolenaar
8c34ea54ad patch 8.2.1205: Vim9: && and || work different when not compiled
Problem:    Vim9: && and || work different when not compiled.
Solution:   Keep the value.
2020-07-13 22:29:02 +02:00
Bram Moolenaar
5d2eb0fff0 patch 8.2.1204: Vim9: true and false not recognized in Vim9 script
Problem:    Vim9: true and false not recognized in Vim9 script.
Solution:   Recognize true and false.
2020-07-13 21:59:33 +02:00
Bram Moolenaar
3ac9c4701a patch 8.2.1203: unused assignments in expression evaluation
Problem:    Unused assignments in expression evaluation.
Solution:   Move declarations and assignments to inner blocks where possible.
2020-07-13 21:28:03 +02:00
Bram Moolenaar
08f7a41b0a patch 8.2.1202: Vim9: crash when calling a closure from a builtin function
Problem:    Vim9: crash when calling a closure from a builtin function.
Solution:   Use the current execution context. (closes #6441)
2020-07-13 20:41:08 +02:00
Bram Moolenaar
f1a2368d81 patch 8.2.1201: Vim9: crash when passing number as dict key
Problem:    Vim9: crash when passing number as dict key.
Solution:   Check key type to be string. (closes #6449)
2020-07-13 18:55:48 +02:00
Bram Moolenaar
bfd65589d9 patch 8.2.1200: Vim9: cannot disassemble a lambda function
Problem:    Vim9: cannot disassemble a lambda function.
Solution:   Recognize "<lambda>123" as a function name.
2020-07-13 18:18:00 +02:00
Bram Moolenaar
7177da9dd4 patch 8.2.1199: not all assert functions are fully tested
Problem:    Not all assert functions are fully tested.
Solution:   Test more assert functions.
2020-07-12 23:09:20 +02:00
Bram Moolenaar
a4b442614c patch 8.2.1198: terminal2 test sometimes hangs in the GUI on Travis
Problem:    Terminal2 test sometimes hangs in the GUI on Travis.
Solution:   Move test function to terminal3 to see if the problem moves too.
2020-07-12 21:38:29 +02:00
Bram Moolenaar
c212dd0a34 patch 8.2.1197: clientserver test still fails on MS-Windows
Problem:    Clientserver test still fails on MS-Windows.
Solution:   Expect a different error message.
2020-07-12 20:49:29 +02:00
Bram Moolenaar
83e7450053 patch 8.2.1196: build failure with normal features
Problem:    Build failure with normal features.
Solution:   Add #ifdef.
2020-07-12 20:44:37 +02:00
Bram Moolenaar
4d57ba0202 patch 8.2.1195: clientserver test fails on MS-Windows
Problem:    Clientserver test fails on MS-Windows.
Solution:   Expect a different error message.
2020-07-12 20:00:24 +02:00
Bram Moolenaar
a4dc6f92bb patch 8.2.1194: test failure because shell prompt differs
Problem:    Test failure because shell prompt differs.
Solution:   Set the shell prompt.
2020-07-12 19:52:36 +02:00
Bram Moolenaar
35910f2d54 patch 8.2.1193: terminal window not redrawn when dragging a popup window
Problem:    Terminal window not redrawn when dragging a popup window over it.
Solution:   Redraw terminal window. (fixes #6438)
2020-07-12 19:24:10 +02:00
Bram Moolenaar
b898a029b0 patch 8.2.1192: Lua test fails with older Lua version
Problem:    Lua test fails with older Lua version.
Solution:   Adjust expected error messages. (closes #6444)
2020-07-12 18:33:53 +02:00
1459 changed files with 201495 additions and 83137 deletions

View File

@@ -5,16 +5,17 @@ skip_tags: true
environment: environment:
matrix: matrix:
- FEATURE: HUGE - FEATURE: HUGE
- FEATURE: NORMAL
# disabled # disabled
# - FEATURE: TINY # - FEATURE: TINY
# - FEATURE: SMALL # - FEATURE: SMALL
# - FEATURE: NORMAL
# - FEATURE: BIG # - FEATURE: BIG
matrix: matrix:
fast_finish: true fast_finish: true
before_build: before_build:
# Use Windows SDK 7.1 (= MSVC 2010)
- '"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 /release' - '"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64 /release'
- 'set INCLUDE=%INCLUDE%C:\Program Files (x86)\Windows Kits\8.1\Include\um' - 'set INCLUDE=%INCLUDE%C:\Program Files (x86)\Windows Kits\8.1\Include\um'
@@ -25,9 +26,9 @@ test_script:
- cd src/testdir - cd src/testdir
# Testing with MSVC gvim # Testing with MSVC gvim
- path C:\Python35-x64;%PATH% - path C:\Python35-x64;%PATH%
- nmake -f Make_dos.mak POSTSCRIPT=yes VIMPROG=..\gvim - nmake -f Make_dos.mak VIMPROG=..\gvim
- nmake -f Make_dos.mak clean - nmake -f Make_dos.mak clean
# Testing with MingW console version # Testing with MSVC console version
- nmake -f Make_dos.mak POSTSCRIPT=yes VIMPROG=..\vim - nmake -f Make_dos.mak VIMPROG=..\vim
# vim: sw=2 sts=2 et ts=8 sr # vim: sw=2 sts=2 et ts=8 sr

View File

@@ -3,6 +3,8 @@ env:
FEATURES: huge FEATURES: huge
freebsd_12_task: freebsd_12_task:
only_if: $CIRRUS_TAG == ''
timeout_in: 20m
freebsd_instance: freebsd_instance:
image: freebsd-12-1-release-amd64 image: freebsd-12-1-release-amd64
install_script: install_script:
@@ -11,6 +13,9 @@ freebsd_12_task:
- NPROC=$(getconf _NPROCESSORS_ONLN) - NPROC=$(getconf _NPROCESSORS_ONLN)
- ./configure --with-features=${FEATURES} - ./configure --with-features=${FEATURES}
- make -j${NPROC} - make -j${NPROC}
- src/vim --version
test_script: test_script:
- make test - src/vim --version
# run tests as user "cirrus" instead of root
- pw useradd cirrus -m
- chown -R cirrus:cirrus .
- sudo -u cirrus make test

6
.codecov.yml Normal file
View File

@@ -0,0 +1,6 @@
coverage:
range: "80...100"
status:
project:
default:
threshold: 0.05%

1
.coveralls.yml Normal file
View File

@@ -0,0 +1 @@
service_name: github-actions

281
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1,281 @@
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# You can use github users with @user or email addresses
# These owners will be the default owners for everything in the repo.
#* @brammool
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
runtime/autoload/getscript.vim @cecamp
runtime/autoload/netrw.vim @cecamp
runtime/autoload/netrwFileHandlers.vim @cecamp
runtime/autoload/netrwSettings.vim @cecamp
runtime/autoload/rubycomplete.vim @segfault @dkearns
runtime/autoload/tar.vim @cecamp
runtime/autoload/vimball.vim @cecamp
runtime/autoload/xmlformat.vim @chrisbra
runtime/autoload/zip.vim @cecamp
runtime/compiler/checkstyle.vim @dkearns
runtime/compiler/cm3.vim @dkearns
runtime/compiler/cucumber.vim @tpope
runtime/compiler/dart.vim @dkearns
runtime/compiler/dart2js.vim @dkearns
runtime/compiler/dart2native.vim @dkearns
runtime/compiler/dartanalyser.vim @dkearns
runtime/compiler/dartdevc.vim @dkearns
runtime/compiler/dartdoc.vim @dkearns
runtime/compiler/dartfmt.vim @dkearns
runtime/compiler/eruby.vim @dkearns
runtime/compiler/fbc.vim @dkearns
runtime/compiler/gawk.vim @dkearns
runtime/compiler/gjs.vim @dkearns
runtime/compiler/haml.vim @tpope
runtime/compiler/javac.vim @dkearns
runtime/compiler/jest.vim @dkearns
runtime/compiler/jjs.vim @dkearns
runtime/compiler/jshint.vim @dkearns
runtime/compiler/jsonlint.vim @dkearns
runtime/compiler/lazbuild.vim @dkearns
runtime/compiler/php.vim @dkearns
runtime/compiler/powershell.vim @heaths
runtime/compiler/rake.vim @tpope @dkearns
runtime/compiler/rhino.vim @dkearns
runtime/compiler/rspec.vim @tpope @dkearns
runtime/compiler/rubocop.vim @dkearns
runtime/compiler/ruby.vim @tpope @dkearns
runtime/compiler/rubyunit.vim @dkearns
runtime/compiler/sass.vim @tpope
runtime/compiler/se.vim @dkearns
runtime/compiler/shellcheck.vim @dkearns
runtime/compiler/sml.vim @dkearns
runtime/compiler/spectral.vim @romainl
runtime/compiler/stylelint.vim @dkearns
runtime/compiler/tcl.vim @dkearns
runtime/compiler/tidy.vim @dkearns
runtime/compiler/ts-node.vim @dkearns
runtime/compiler/tsc.vim @dkearns
runtime/compiler/typedoc.vim @dkearns
runtime/compiler/xmllint.vim @dkearns
runtime/compiler/xo.vim @dkearns
runtime/compiler/yamllint.vim @romainl
runtime/compiler/zsh.vim @dkearns
runtime/doc/pi_getscript.txt @cecamp
runtime/doc/pi_logipat.txt @cecamp
runtime/doc/pi_netrw.txt @cecamp
runtime/doc/pi_tar.txt @cecamp
runtime/doc/pi_vimball.txt @cecamp
runtime/doc/pi_zip.txt @cecamp
runtime/doc/ps1.txt @heaths
runtime/ftplugin/awk.vim @dkearns
runtime/ftplugin/basic.vim @dkearns
runtime/ftplugin/bst.vim @tpope
runtime/ftplugin/cfg.vim @chrisbra
runtime/ftplugin/clojure.vim @axvr
runtime/ftplugin/csh.vim @dkearns
runtime/ftplugin/css.vim @dkearns
runtime/ftplugin/cucumber.vim @tpope
runtime/ftplugin/eiffel.vim @dkearns
runtime/ftplugin/eruby.vim @tpope @dkearns
runtime/ftplugin/fpcmake.vim @dkearns
runtime/ftplugin/freebasic.vim @dkearns
runtime/ftplugin/git.vim @tpope
runtime/ftplugin/gitcommit.vim @tpope
runtime/ftplugin/gitconfig.vim @tpope
runtime/ftplugin/gitrebase.vim @tpope
runtime/ftplugin/gitsendemail.vim @tpope
runtime/ftplugin/gprof.vim @dpelle
runtime/ftplugin/haml.vim @tpope
runtime/ftplugin/hgcommit.vim @k-takata
runtime/ftplugin/i3config.vim @hiqua
runtime/ftplugin/indent.vim @dkearns
runtime/ftplugin/javascript.vim @dkearns
runtime/ftplugin/javascriptreact.vim @dkearns
runtime/ftplugin/kconfig.vim @chrisbra
runtime/ftplugin/liquid.vim @tpope
runtime/ftplugin/lua.vim @dkearns
runtime/ftplugin/m3build.vim @dkearns
runtime/ftplugin/m3quake.vim @dkearns
runtime/ftplugin/markdown.vim @tpope
runtime/ftplugin/matlab.vim @cecamp
runtime/ftplugin/meson.vim @Liambeguin
runtime/ftplugin/modula3.vim @dkearns
runtime/ftplugin/nginx.vim @chr4
runtime/ftplugin/nroff.vim @a-vrma
runtime/ftplugin/nsis.vim @k-takata
runtime/ftplugin/octave.vim @dkearns
runtime/ftplugin/pascal.vim @dkearns
runtime/ftplugin/pbtxt.vim @lakshayg
runtime/ftplugin/pdf.vim @tpope
runtime/ftplugin/ps1.vim @heaths
runtime/ftplugin/ps1xml.vim @heaths
runtime/ftplugin/routeros.vim @zainin
runtime/ftplugin/ruby.vim @tpope @dkearns
runtime/ftplugin/sass.vim @tpope
runtime/ftplugin/scss.vim @tpope
runtime/ftplugin/solution.vim @dkearns
runtime/ftplugin/spec.vim @ignatenkobrain
runtime/ftplugin/systemverilog.vim @Kocha
runtime/ftplugin/tcsh.vim @dkearns
runtime/ftplugin/tidy.vim @dkearns
runtime/ftplugin/tmux.vim @ericpruitt
runtime/ftplugin/toml.vim @averms
runtime/ftplugin/typescript.vim @dkearns
runtime/ftplugin/typescriptreact.vim @dkearns
runtime/ftplugin/xml.vim @chrisbra
runtime/ftplugin/zsh.vim @chrisbra
runtime/indent/bst.vim @tpope
runtime/indent/cdl.vim @dkearns
runtime/indent/clojure.vim @axvr
runtime/indent/config.vim @dkearns
runtime/indent/css.vim @dkearns
runtime/indent/cucumber.vim @tpope
runtime/indent/d.vim @dkearns
runtime/indent/dosbatch.vim @k-takata
runtime/indent/dtd.vim @dkearns
runtime/indent/dylan.vim @dkearns
runtime/indent/elm.vim @andys8
runtime/indent/eruby.vim @tpope @dkearns
runtime/indent/eterm.vim @dkearns
runtime/indent/framescript.vim @dkearns
runtime/indent/gitconfig.vim @tpope
runtime/indent/haml.vim @tpope
runtime/indent/idlang.vim @dkearns
runtime/indent/ld.vim @dkearns
runtime/indent/liquid.vim @tpope
runtime/indent/make.vim @dkearns
runtime/indent/meson.vim @Liambeguin
runtime/indent/mma.vim @dkearns
runtime/indent/nginx.vim @chr4
runtime/indent/nsis.vim @k-takata
runtime/indent/occam.vim @dkearns
runtime/indent/postscr.vim @dkearns
runtime/indent/prolog.vim @dkearns
runtime/indent/ps1.vim @heaths
runtime/indent/readline.vim @dkearns
runtime/indent/ruby.vim @AndrewRadev @dkearns
runtime/indent/sass.vim @tpope
runtime/indent/scss.vim @tpope
runtime/indent/sh.vim @chrisbra
runtime/indent/systemverilog.vim @Kocha
runtime/indent/tcl.vim @dkearns
runtime/indent/tcsh.vim @dkearns
runtime/indent/teraterm.vim @k-takata
runtime/indent/xml.vim @chrisbra
runtime/indent/zsh.vim @chrisbra
runtime/keymap/tamil_tscii.vim @yegappan
runtime/pack/dist/opt/cfilter/plugin/cfilter.vim @yegappan
runtime/pack/dist/opt/matchit/ @chrisbra
runtime/plugin/getscriptPlugin.vim @cecamp
runtime/plugin/logiPat.vim @cecamp
runtime/plugin/netrwPlugin.vim @cecamp
runtime/plugin/tarPlugin.vim @cecamp
runtime/plugin/vimballPlugin.vim @cecamp
runtime/plugin/zipPlugin.vim @cecamp
runtime/syntax/aidl.vim @dpelle
runtime/syntax/amiga.vim @cecamp
runtime/syntax/arduino.vim @johshoff
runtime/syntax/asm.vim @dkearns
runtime/syntax/asmh8300.vim @dkearns
runtime/syntax/asterisk.vim @jaunis
runtime/syntax/awk.vim @dkearns
runtime/syntax/basic.vim @dkearns
runtime/syntax/bst.vim @tpope
runtime/syntax/cabal.vim @coot
runtime/syntax/cabalconfig.vim @coot
runtime/syntax/cabalproject.vim @coot
runtime/syntax/clojure.vim @axvr
runtime/syntax/cs.vim @nickspoons
runtime/syntax/csh.vim @cecamp
runtime/syntax/cucumber.vim @tpope
runtime/syntax/datascript.vim @dpelle
runtime/syntax/dcl.vim @cecamp
runtime/syntax/desktop.vim @e-kwsm
runtime/syntax/dot.vim @mmottl
runtime/syntax/doxygen.vim @frogonwheels
runtime/syntax/dtd.vim @chrisbra
runtime/syntax/dts.vim @zonque
runtime/syntax/elmfilt.vim @cecamp
runtime/syntax/eruby.vim @tpope @dkearns
runtime/syntax/exports.vim @cecamp
runtime/syntax/fpcmake.vim @dkearns
runtime/syntax/git.vim @tpope
runtime/syntax/gitcommit.vim @tpope
runtime/syntax/gitconfig.vim @tpope
runtime/syntax/gitrebase.vim @tpope
runtime/syntax/gprof.vim @dpelle
runtime/syntax/groff.vim @jmarshall
runtime/syntax/haml.vim @tpope
runtime/syntax/haskell.vim @coot
runtime/syntax/hgcommit.vim @k-takata
runtime/syntax/i3config.vim @hiqua
runtime/syntax/indent.vim @dkearns
runtime/syntax/kconfig.vim @chrisbra
runtime/syntax/less.vim @genoma
runtime/syntax/lex.vim @cecamp
runtime/syntax/liquid.vim @tpope
runtime/syntax/lisp.vim @cecamp
runtime/syntax/lynx.vim @dkearns
runtime/syntax/m3build.vim @dkearns
runtime/syntax/m3quake.vim @dkearns
runtime/syntax/mailcap.vim @dkearns
runtime/syntax/make.vim @rohieb
runtime/syntax/maple.vim @cecamp
runtime/syntax/markdown.vim @tpope
runtime/syntax/meson.vim @Liambeguin
runtime/syntax/modula3.vim @dkearns
runtime/syntax/netrw.vim @cecamp
runtime/syntax/nginx.vim @chr4
runtime/syntax/nroff.vim @jmarshall
runtime/syntax/nsis.vim @k-takata
runtime/syntax/pascal.vim @dkearns
runtime/syntax/pbtxt.vim @lakshayg
runtime/syntax/pdf.vim @tpope
runtime/syntax/php.vim @TysonAndre
runtime/syntax/privoxy.vim @dkearns
runtime/syntax/prolog.vim @XVilka
runtime/syntax/ps1.vim @heaths
runtime/syntax/ps1xml.vim @heaths
runtime/syntax/psl.vim @danielkho
runtime/syntax/rc.vim @chrisbra
runtime/syntax/routeros.vim @zainin
runtime/syntax/rpcgen.vim @cecamp
runtime/syntax/ruby.vim @dkearns
runtime/syntax/sass.vim @tpope
runtime/syntax/scss.vim @tpope
runtime/syntax/sh.vim @cecamp
runtime/syntax/sm.vim @cecamp
runtime/syntax/spec.vim @ignatenkobrain
runtime/syntax/sqloracle.vim @chrisbra
runtime/syntax/sshconfig.vim @Jakuje
runtime/syntax/sshdconfig.vim @Jakuje
runtime/syntax/sudoers.vim @e-kwsm
runtime/syntax/systemverilog.vim @Kocha
runtime/syntax/tags.vim @cecamp
runtime/syntax/tcsh.vim @dkearns
runtime/syntax/teraterm.vim @k-takata
runtime/syntax/tex.vim @cecamp
runtime/syntax/tidy.vim @dkearns
runtime/syntax/tmux.vim @ericpruitt
runtime/syntax/toml.vim @averms
runtime/syntax/vim.vim @cecamp
runtime/syntax/wget.vim @dkearns
runtime/syntax/xbl.vim @dkearns
runtime/syntax/xmath.vim @cecamp
runtime/syntax/xml.vim @chrisbra
runtime/syntax/xslt.vim @Boobies
runtime/syntax/xxd.vim @cecamp
runtime/syntax/yacc.vim @cecamp
runtime/syntax/zsh.vim @chrisbra
runtime/tutor/tutor.eo @dpelle
runtime/tutor/tutor.eo.utf-8 @dpelle
runtime/tutor/tutor.fr @dpelle
runtime/tutor/tutor.fr.utf-8 @dpelle
src/iscygpty.* @k-takata
src/libvterm/ @leonerd
src/po/de.po @chrisbra
src/po/eo.po @dpelle
src/po/fr.po @dpelle
src/xxd/ @jnweiger

View File

@@ -1,34 +0,0 @@
---
name: Bug report
about: Create a report to help us improve Vim
title: ''
labels: ''
---
_Instructions: Replace the template text and remove irrelevant text (including this line)_
**Describe the bug**
A clear and concise description of what the bug is.
(Issues related to the runtime files should be reported to their maintainer, check the file header.)
**To Reproduce**
Detailed steps to reproduce the behavior:
1. Run `vim --clean` (or `gvim --clean`, etc.)
2. Edit `filename`
3. Type '....'
4. Describe the error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, copy/paste the text or add screenshots to help explain your problem.
**Environment (please complete the following information):**
- Vim version [e.g. 8.1.1234] (Or paste the result of `vim --version`.)
- OS: [e.g. Ubuntu 18.04, Windows 10 1809, macOS 10.14]
- Terminal: [e.g. GNOME Terminal, mintty, iTerm2, tmux, GNU screen] (Use GUI if you use the GUI.)
**Additional context**
Add any other context about the problem here.

57
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,57 @@
---
name: Bug report
description: Create a report to help us improve Vim.
labels: [bug]
body:
- type: markdown
attributes:
value: |
Thanks for reporting issues of Vim!
If you want to report a security issue, instead of reporting it here
you can alternatively disclose it on
[huntr.dev](https://huntr.dev/bounties/disclose/?utm_campaign=vim%2Fvim&utm_medium=social&utm_source=github&target=https%3A%2F%2Fgithub.com%2Fvim%2Fvim).
They have rewards in the form of money, swag and CVEs.
To make it easier for us to help you please enter detailed information below.
- type: textarea
attributes:
label: Steps to reproduce
placeholder: |
1.
2.
3.
4.
validations:
required: true
- type: textarea
attributes:
label: Expected behaviour
placeholder: A clear and concise description of what you expected to happen.
validations:
required: true
- type: input
attributes:
label: Version of Vim
description: >
Including patch level, use ":version" to see it [e.g. 8.2.1234]
validations:
required: true
- type: textarea
attributes:
label: Environment
description: >
OS [e.g. Ubuntu 21.10], terminal [e.g. GNOME Terminal 3.38.1], value of $TERM, shell [e.g. bash 5.1.8]; anything that might matter
placeholder: |
Operating system:
Terminal:
Value of $TERM:
Shell:
validations:
required: true
- type: textarea
attributes:
label: Logs and stack traces
placeholder: Insert log or other text here (if necessary)
render: shell

550
.github/workflows/ci.yml vendored Normal file
View File

@@ -0,0 +1,550 @@
name: GitHub CI
on:
push:
branches: ['**']
pull_request:
# Cancels all previous workflow runs for pull requests that have not completed.
concurrency:
# The concurrency group contains the workflow name and the branch name for
# pull requests or the commit hash for any other events.
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
jobs:
linux:
runs-on: ubuntu-18.04
env:
CC: ${{ matrix.compiler }}
TEST: test
SRCDIR: ./src
LEAK_CFLAGS: -DEXITFREE
LOG_DIR: ${{ github.workspace }}/logs
TERM: xterm
DISPLAY: ':99'
DEBIAN_FRONTEND: noninteractive
strategy:
fail-fast: false
matrix:
features: [tiny, small, normal, huge]
compiler: [clang, gcc]
extra: [none]
include:
- features: tiny
compiler: clang
extra: nogui
- features: tiny
compiler: gcc
extra: nogui
- features: normal
shadow: ./src/shadow
- features: huge
coverage: true
- features: huge
compiler: gcc
coverage: true
extra: testgui
uchar: true
- features: huge
compiler: clang
extra: asan
- features: huge
compiler: gcc
coverage: true
extra: unittests
- features: normal
compiler: gcc
extra: vimtags
steps:
- uses: actions/checkout@v2
- name: Install packages
run: |
sudo apt update && sudo apt install -y \
autoconf \
lcov \
gettext \
libcanberra-dev \
libperl-dev \
python-dev \
python3-dev \
liblua5.3-dev \
lua5.3 \
ruby-dev \
tcl-dev \
cscope \
libgtk2.0-dev \
desktop-file-utils \
libtool-bin \
libsodium-dev
- name: Install clang-13
if: matrix.compiler == 'clang'
run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
. /etc/lsb-release
sudo add-apt-repository -y "deb http://apt.llvm.org/${DISTRIB_CODENAME}/ llvm-toolchain-${DISTRIB_CODENAME}-13 main"
sudo apt-get install -y clang-13 llvm-13
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-13 100
sudo update-alternatives --set clang /usr/bin/clang-13
sudo update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-13 100
- name: Set up environment
run: |
mkdir -p "${LOG_DIR}"
mkdir -p "${HOME}/bin"
echo "${HOME}/bin" >> $GITHUB_PATH
(
echo "LINUX_VERSION=$(uname -r)"
echo "NPROC=$(getconf _NPROCESSORS_ONLN)"
echo "SND_DUMMY_DIR=${HOME}/snd-dummy"
echo "TMPDIR=${{ runner.temp }}"
case "${{ matrix.features }}" in
tiny|small)
echo "TEST=testtiny"
if ${{ contains(matrix.extra, 'nogui') }}; then
echo "CONFOPT=--disable-gui"
fi
;;
normal)
;;
huge)
echo "TEST=scripttests test_libvterm"
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
;;
esac
CFLAGS=""
if ${{ matrix.coverage == true }}; then
CFLAGS="$CFLAGS --coverage -DUSE_GCOV_FLUSH"
echo "LDFLAGS=--coverage"
fi
if ${{ matrix.uchar == true }}; then
CFLAGS="$CFLAGS -funsigned-char"
fi
if ${{ contains(matrix.extra, 'testgui') }}; then
echo "TEST=-C src testgui"
fi
if ${{ contains(matrix.extra, 'unittests') }}; then
echo "TEST=unittests"
fi
if ${{ contains(matrix.extra, 'asan') }}; then
echo "SANITIZER_CFLAGS=-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize-recover=all -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer"
echo "ASAN_OPTIONS=print_stacktrace=1 log_path=${LOG_DIR}/asan"
echo "UBSAN_OPTIONS=print_stacktrace=1 log_path=${LOG_DIR}/ubsan"
echo "LSAN_OPTIONS=suppressions=${GITHUB_WORKSPACE}/src/testdir/lsan-suppress.txt"
fi
if ${{ contains(matrix.extra, 'vimtags') }}; then
echo "TEST=-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim"
fi
echo "CFLAGS=$CFLAGS"
) >> $GITHUB_ENV
- name: Set up system
run: |
if [[ ${CC} = clang ]]; then
# Use llvm-cov instead of gcov when compiler is clang.
ln -fs /usr/bin/llvm-cov ${HOME}/bin/gcov
fi
# Setup lua5.3 manually since its package doesn't provide alternative.
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
if [[ ${CONFOPT} =~ luainterp ]]; then
sudo update-alternatives --install /usr/bin/lua lua /usr/bin/lua5.3 10
fi
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
sudo usermod -a -G audio "${USER}"
sudo bash ci/setup-xvfb.sh
- name: Cache snd-dummy
uses: actions/cache@v2
with:
path: ${{ env.SND_DUMMY_DIR }}
key: linux-${{ env.LINUX_VERSION }}-snd-dummy
- name: Set up snd-dummy
run: |
if [[ ! -e ${SND_DUMMY_DIR}/snd-dummy.ko ]]; then
bash ci/build-snd-dummy.sh
fi
cd "${SND_DUMMY_DIR}"
sudo insmod soundcore.ko
sudo insmod snd.ko
sudo insmod snd-pcm.ko
sudo insmod snd-dummy.ko
- name: Check autoconf
if: contains(matrix.extra, 'unittests')
run: |
make -C src autoconf
- name: Set up shadow dir
if: matrix.shadow
run: |
make -C src shadow
echo "SRCDIR=${{ matrix.shadow }}" >> $GITHUB_ENV
echo "SHADOWOPT=-C ${{ matrix.shadow }}" >> $GITHUB_ENV
- name: Configure
run: |
./configure --with-features=${{ matrix.features }} ${CONFOPT} --enable-fail-if-missing
# Append various warning flags to CFLAGS.
sed -i -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
sed -i -f ci/config.mk.${CC}.sed ${SRCDIR}/auto/config.mk
if [[ ${CC} = clang ]]; then
# Suppress some warnings produced by clang 12 and later.
sed -i -f ci/config.mk.clang-12.sed ${SRCDIR}/auto/config.mk
fi
- name: Build
if: (!contains(matrix.extra, 'unittests'))
run: |
make ${SHADOWOPT} -j${NPROC}
- name: Check version
if: (!contains(matrix.extra, 'unittests'))
run: |
"${SRCDIR}"/vim --version
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
- name: Test
timeout-minutes: 20
run: |
do_test() { sg audio "sg $(id -gn) '$*'"; }
do_test make ${SHADOWOPT} ${TEST}
# - name: Coveralls
# if: matrix.coverage && success() && github.event_name != 'pull_request'
# env:
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
# COVERALLS_PARALLEL: true
# TRAVIS_JOB_ID: ${{ github.run_id }}
# run: |
# sudo apt-get install -y python3-setuptools python3-wheel
# sudo -H pip3 install pip -U
# # needed for https support for coveralls building cffi only works with gcc, not with clang
# CC=gcc pip3 install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
# ~/.local/bin/coveralls -b "${SRCDIR}" -x .xs -e "${SRCDIR}"/if_perl.c -e "${SRCDIR}"/xxd -e "${SRCDIR}"/libvterm --encodings utf-8
- name: Codecov
if: matrix.coverage && success()
run: |
cd "${SRCDIR}"
bash <(curl -s https://codecov.io/bash) -F "${{ matrix.features }}-${{ matrix.compiler }}-${{ matrix.extra }}"
- name: ASan logs
if: contains(matrix.extra, 'asan') && !cancelled()
run: |
for f in $(grep -lR '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "${LOG_DIR}"); do
asan_symbolize-13 -l "$f"
false # in order to fail a job
done
# coveralls:
# runs-on: ubuntu-18.04
#
# needs: linux
# if: always() && github.event_name != 'pull_request'
#
# steps:
# - name: Parallel finished
# env:
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
# run: |
# curl -k "https://coveralls.io/webhook?repo_token=${COVERALLS_REPO_TOKEN}" -d "payload[build_num]=${GITHUB_RUN_ID}&payload[status]=done"
macos:
runs-on: macos-latest
env:
CC: clang
TEST: test
SRCDIR: ./src
LEAK_CFLAGS: -DEXITFREE
TERM: xterm
strategy:
fail-fast: false
matrix:
features: [tiny, normal, huge]
steps:
- uses: actions/checkout@v2
- name: Install packages
env:
HOMEBREW_NO_AUTO_UPDATE: 1
run: |
brew install lua
echo "LUA_PREFIX=/usr/local" >> $GITHUB_ENV
- name: Set up environment
run: |
(
echo "NPROC=$(getconf _NPROCESSORS_ONLN)"
case "${{ matrix.features }}" in
tiny)
echo "TEST=testtiny"
echo "CONFOPT=--disable-gui"
;;
normal)
;;
huge)
echo "CONFOPT=--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
;;
esac
) >> $GITHUB_ENV
- name: Configure
run: |
./configure --with-features=${{ matrix.features }} ${CONFOPT} --enable-fail-if-missing
# Append various warning flags to CFLAGS.
# BSD sed needs backup extension specified.
sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
# On macOS, the entity of gcc is clang.
sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk
# Suppress some warnings produced by clang 12 and later.
if clang --version | grep -qs 'Apple clang version \(1[3-9]\|[2-9]\)\.'; then
sed -i.bak -f ci/config.mk.clang-12.sed ${SRCDIR}/auto/config.mk
fi
- name: Build
env:
LC_ALL: C
run: |
make -j${NPROC}
- name: Check version
run: |
"${SRCDIR}"/vim --version
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
"${SRCDIR}"/vim -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
- name: Test
timeout-minutes: 20
run: |
make ${TEST}
windows:
runs-on: windows-latest
env:
VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat
# Interfaces
# Lua
LUA_VER: 54
LUA_VER_DOT: '5.4'
LUA_RELEASE: 5.4.0
LUA32_URL: https://downloads.sourceforge.net/luabinaries/lua-%LUA_RELEASE%_Win32_dllw6_lib.zip
LUA64_URL: https://downloads.sourceforge.net/luabinaries/lua-%LUA_RELEASE%_Win64_dllw6_lib.zip
LUA_DIR: D:\Lua
# Python 2
PYTHON_VER: 27
PYTHON_VER_DOT: '2.7'
# Python 3
PYTHON3_VER: 38
PYTHON3_VER_DOT: '3.8'
# Other dependencies
# winpty
WINPTY_URL: https://github.com/rprichard/winpty/releases/download/0.4.3/winpty-0.4.3-msvc2015.zip
# Escape sequences
COL_RED: "\x1b[31m"
COL_GREEN: "\x1b[32m"
COL_YELLOW: "\x1b[33m"
COL_RESET: "\x1b[m"
strategy:
fail-fast: false
matrix:
toolchain: [msvc, mingw]
arch: [x64, x86]
features: [HUGE, NORMAL]
include:
- arch: x64
vcarch: amd64
warch: x64
bits: 64
msystem: MINGW64
cygreg: registry
pyreg: ""
- arch: x86
vcarch: x86
warch: ia32
bits: 32
msystem: MINGW32
cygreg: registry32
pyreg: "-32"
exclude:
- toolchain: msvc
arch: x64
features: NORMAL
- toolchain: mingw
arch: x86
features: NORMAL
steps:
- name: Initialize
id: init
shell: bash
run: |
git config --global core.autocrlf input
python_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON_VER_DOT}/InstallPath/@")
python3_dir=$(cat "/proc/${{ matrix.cygreg }}/HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/${PYTHON3_VER_DOT}${{ matrix.pyreg }}/InstallPath/@")
echo "PYTHON_DIR=$python_dir" >> $GITHUB_ENV
echo "PYTHON3_DIR=$python3_dir" >> $GITHUB_ENV
- uses: msys2/setup-msys2@v2
if: matrix.toolchain == 'mingw'
with:
msystem: ${{ matrix.msystem }}
release: false
- uses: actions/checkout@v2
- name: Create a list of download URLs
shell: cmd
run: |
type NUL > urls.txt
echo %LUA_RELEASE%>> urls.txt
echo %WINPTY_URL%>> urls.txt
- name: Cache downloaded files
uses: actions/cache@v2
with:
path: downloads
key: ${{ runner.os }}-${{ matrix.bits }}-${{ hashFiles('urls.txt') }}
- name: Download dependencies
shell: cmd
run: |
path C:\Program Files\7-Zip;%path%
if not exist downloads mkdir downloads
echo %COL_GREEN%Download Lua%COL_RESET%
call :downloadfile %LUA${{ matrix.bits }}_URL% downloads\lua.zip
7z x downloads\lua.zip -o%LUA_DIR% > nul || exit 1
echo %COL_GREEN%Download winpty%COL_RESET%
call :downloadfile %WINPTY_URL% downloads\winpty.zip
7z x -y downloads\winpty.zip -oD:\winpty > nul || exit 1
copy /Y D:\winpty\${{ matrix.warch }}\bin\winpty.dll src\winpty${{ matrix.bits }}.dll
copy /Y D:\winpty\${{ matrix.warch }}\bin\winpty-agent.exe src\
goto :eof
:downloadfile
:: call :downloadfile <URL> <localfile>
if not exist %2 (
curl -f -L %1 -o %2
)
if ERRORLEVEL 1 (
rem Retry once.
curl -f -L %1 -o %2 || exit 1
)
goto :eof
- name: Copy src directory to src2
shell: cmd
run: |
xcopy src src2\ /E > nul
- name: Build (MSVC)
if: matrix.toolchain == 'msvc'
shell: cmd
run: |
call "%VCVARSALL%" ${{ matrix.vcarch }}
cd src
:: Filter out the progress bar from the build log
sed -e "s/@<<$/@<< | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
if "${{ matrix.features }}"=="HUGE" (
nmake -nologo -f Make_mvc2.mak ^
FEATURES=${{ matrix.features }} ^
GUI=yes IME=yes ICONV=yes VIMDLL=yes ^
DYNAMIC_LUA=yes LUA=%LUA_DIR% ^
DYNAMIC_PYTHON=yes PYTHON=%PYTHON_DIR% ^
DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR%
) else (
nmake -nologo -f Make_mvc2.mak ^
FEATURES=${{ matrix.features }} ^
GUI=yes IME=yes ICONV=yes VIMDLL=yes
)
if not exist vim${{ matrix.bits }}.dll (
echo %COL_RED%Build failure.%COL_RESET%
exit 1
)
- name: Build (MinGW)
if: matrix.toolchain == 'mingw'
shell: msys2 {0}
run: |
cd src
if [ "${{ matrix.features }}" = "HUGE" ]; then
mingw32-make -f Make_ming.mak -j2 \
FEATURES=${{ matrix.features }} \
GUI=yes IME=yes ICONV=yes VIMDLL=yes \
DYNAMIC_LUA=yes LUA=${LUA_DIR} \
DYNAMIC_PYTHON=yes PYTHON=${PYTHON_DIR} \
DYNAMIC_PYTHON3=yes PYTHON3=${PYTHON3_DIR} \
STATIC_STDCPLUS=yes
else
mingw32-make -f Make_ming.mak -j2 \
FEATURES=${{ matrix.features }} \
GUI=yes IME=yes ICONV=yes VIMDLL=yes \
STATIC_STDCPLUS=yes
fi
#- name: Prepare Artifact
# shell: cmd
# run: |
# mkdir artifacts
# copy src\*vim.exe artifacts
# copy src\vim*.dll artifacts
#
#- name: Upload Artifact
# uses: actions/upload-artifact@v1
# with:
# name: vim${{ matrix.bits }}-${{ matrix.toolchain }}
# path: ./artifacts
- name: Test
shell: cmd
timeout-minutes: 20
run: |
PATH %LUA_DIR%;C:\msys64\${{ matrix.msystem }}\bin;%PATH%;%PYTHON3_DIR%
call "%VCVARSALL%" ${{ matrix.vcarch }}
cd src
echo.
echo %COL_GREEN%vim version:%COL_RESET%
.\vim --version || exit 1
echo %COL_GREEN%Start testing vim in background.%COL_RESET%
start cmd /c "cd ..\src2\testdir & nmake -nologo -f Make_dos.mak VIMPROG=..\..\src\vim > nul & echo done>done.txt"
echo %COL_GREEN%Test gvim:%COL_RESET%
cd testdir
nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1
cd ..
echo %COL_GREEN%Wait for vim tests to finish.%COL_RESET%
cd ..\src2\testdir
:: Wait about 10 minutes.
for /L %%i in (1,1,60) do (
if exist done.txt goto exitloop
timeout 10 > NUL 2>&1
if ERRORLEVEL 1 ping -n 11 localhost > NUL
)
set timeout=1
:exitloop
echo %COL_GREEN%Test results of vim:%COL_RESET%
if exist messages type messages
nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1
if "%timeout%"=="1" (
echo %COL_RED%Timed out.%COL_RESET%
exit 1
)

69
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@@ -0,0 +1,69 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
name: "CodeQL"
on:
push:
branches: [master]
pull_request:
# The branches below must be a subset of the branches above
branches: [master]
schedule:
- cron: '0 18 * * 1'
# Cancels all previous workflow runs for pull requests that have not completed.
concurrency:
# The concurrency group contains the workflow name and the branch name for
# pull requests or the commit hash for any other events.
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Override automatic language detection by changing the below list
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
language: ['cpp', 'python']
# Learn more...
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
steps:
- name: Checkout repository
uses: actions/checkout@v2
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

80
.github/workflows/coverity.yml vendored Normal file
View File

@@ -0,0 +1,80 @@
name: Coverity
on:
schedule:
- cron: '42 0 * * *' # Run once per day, to avoid Coverity's submission limits
workflow_dispatch:
jobs:
scan:
runs-on: ubuntu-18.04
env:
CC: gcc
DEBIAN_FRONTEND: noninteractive
steps:
- uses: actions/checkout@v2
- name: Download Coverity
run: |
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=vim" -O coverity_tool.tgz
mkdir cov-scan
tar ax -f coverity_tool.tgz --strip-components=1 -C cov-scan
env:
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
- name: Install packages
run: |
sudo apt update && sudo apt install -y \
autoconf \
gettext \
libcanberra-dev \
libperl-dev \
python-dev \
python3-dev \
liblua5.3-dev \
lua5.3 \
ruby-dev \
tcl-dev \
libgtk2.0-dev \
desktop-file-utils \
libtool-bin \
libsodium-dev
- name: Set up environment
run: |
echo "$(pwd)/cov-scan/bin" >> $GITHUB_PATH
(
echo "NPROC=$(getconf _NPROCESSORS_ONLN)"
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
) >> $GITHUB_ENV
- name: Set up system
run: |
# Setup lua5.3 manually since its package doesn't provide alternative.
# https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212
sudo update-alternatives --install /usr/bin/lua lua /usr/bin/lua5.3 10
- name: Configure
run: |
./configure --with-features=huge ${CONFOPT} --enable-fail-if-missing
# Append various warning flags to CFLAGS.
sed -i -f ci/config.mk.sed src/auto/config.mk
sed -i -f ci/config.mk.${CC}.sed src/auto/config.mk
- name: Build/scan vim
run: |
cov-build --dir cov-int make -j${NPROC}
- name: Submit results
run: |
tar zcf cov-scan.tgz cov-int
curl --form token=$TOKEN \
--form email=$EMAIL \
--form file=@cov-scan.tgz \
--form version="$(git rev-parse HEAD)" \
--form description="Automatic GHA scan" \
'https://scan.coverity.com/builds?project=vim'
env:
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
EMAIL: ${{ secrets.COVERITY_SCAN_EMAIL }}

1
.gitignore vendored
View File

@@ -25,7 +25,6 @@ src/auto/pathdef.c
# Windows # Windows
*.exe *.exe
*.idb *.idb
*.manifest
*.exp *.exp
*.map *.map
*.obj *.obj

View File

@@ -26,7 +26,6 @@ src/auto/pathdef.c
# Windows # Windows
*.exe *.exe
*.idb *.idb
*.manifest
*.exp *.exp
*.map *.map
*.obj *.obj

View File

@@ -1,26 +1,32 @@
language: c language: c
env:
global:
- BUILD=yes TEST=test CONFOPT= LEAK_CFLAGS="-DEXITFREE" SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no LOG_DIR="$TRAVIS_BUILD_DIR/logs"
_anchors: _anchors:
envs: envs:
- &tiny-nogui - &tiny-nogui
BUILD=yes TEST=test FEATURES=tiny CONFOPT="--disable-gui" SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no FEATURES=tiny TEST=testtiny CONFOPT="--disable-gui"
- &tiny - &tiny
BUILD=yes TEST=test FEATURES=tiny CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no FEATURES=tiny TEST=testtiny
- &small - &small
BUILD=yes TEST=test FEATURES=small CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no FEATURES=small TEST=testtiny
- &normal - &normal
BUILD=yes TEST=test FEATURES=normal CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no FEATURES=normal
- &linux-huge - &linux-huge
BUILD=yes TEST="scripttests test_libvterm" CFLAGS="--coverage -DUSE_GCOV_FLUSH" LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no FEATURES=huge TEST="scripttests test_libvterm"
CONFOPT="--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp" CONFOPT="--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
- &osx-huge # macOS build - &osx-huge # macOS build
BUILD=yes TEST=test FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no FEATURES=huge
CONFOPT="--enable-perlinterp --enable-pythoninterp --enable-rubyinterp --enable-luainterp --enable-tclinterp" CONFOPT="--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
- &unittests - &unittests
BUILD=no TEST=unittests CFLAGS="--coverage -DUSE_GCOV_FLUSH" LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=yes BUILD=no TEST=unittests FEATURES=huge CHECK_AUTOCONF=yes
- &coverage
CFLAGS="--coverage -DUSE_GCOV_FLUSH" LDFLAGS=--coverage
- &asan # ASAN build - &asan # ASAN build
SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize=address -fno-omit-frame-pointer" SANITIZER_CFLAGS="-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize-recover=all -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer"
ASAN_OPTIONS="print_stacktrace=1 log_path=asan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt" ASAN_OPTIONS="print_stacktrace=1 log_path=$LOG_DIR/asan" UBSAN_OPTIONS="print_stacktrace=1 log_path=$LOG_DIR/ubsan" LSAN_OPTIONS="suppressions=$TRAVIS_BUILD_DIR/src/testdir/lsan-suppress.txt"
- &shadowopt - &shadowopt
SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow
@@ -29,7 +35,7 @@ _anchors:
dist: bionic dist: bionic
addons: addons:
apt: apt:
packages: packages: &apt-packages
- autoconf - autoconf
- clang - clang
- lcov - lcov
@@ -63,7 +69,11 @@ _anchors:
fi fi
before_script: before_script:
- sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0 - sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
- sudo bash ci/load-snd-dummy.sh || true # It appears we can load "snd-dummy" on only amd64.
- |
if [[ "${TRAVIS_CPU_ARCH}" = amd64 ]]; then
sudo bash ci/load-snd-dummy.sh || true
fi
- sudo usermod -a -G audio $USER - sudo usermod -a -G audio $USER
- do_test() { sg audio "sg $(id -gn) '$*'"; } - do_test() { sg audio "sg $(id -gn) '$*'"; }
@@ -87,7 +97,7 @@ _anchors:
# Lua is not installed on macOS # Lua is not installed on macOS
- export LUA_PREFIX=/usr/local - export LUA_PREFIX=/usr/local
coverage: &coverage coverage: &eval-coverage
# needed for https support for coveralls building cffi only works with gcc, # needed for https support for coveralls building cffi only works with gcc,
# not with clang # not with clang
- CC=gcc pip install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1 - CC=gcc pip install --user cpp-coveralls pyopenssl ndg-httpsclient pyasn1
@@ -98,13 +108,14 @@ _anchors:
# Update pyenv to fix the error "/opt/pyenv/libexec/pyenv: line 43: cd: asan_symbolize-6.0: Not a directory". # Update pyenv to fix the error "/opt/pyenv/libexec/pyenv: line 43: cd: asan_symbolize-6.0: Not a directory".
# https://github.com/pyenv/pyenv/issues/580 # https://github.com/pyenv/pyenv/issues/580
- (cd "${PYENV_ROOT}" && git fetch -p origin && git checkout "$(git rev-list --tags -n1)") &>/dev/null || true - (cd "${PYENV_ROOT}" && git fetch -p origin && git checkout "$(git rev-list --tags -n1)") &>/dev/null || true
- find . -type f -name 'asan.*' -size +0 2>/dev/null | xargs grep -l '^==[[:digit:]]*==ERROR:' | xargs -I{} -n1 -t asan_symbolize -l{} - for f in $(grep -l '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "$LOG_DIR"/*); do asan_symbolize-11 -l "$f"; done
branches: branches:
except: except:
- /^v[0-9]/ - /^v[0-9]/
script: script:
- mkdir -p "$LOG_DIR"
- NPROC=$(getconf _NPROCESSORS_ONLN) - NPROC=$(getconf _NPROCESSORS_ONLN)
- set -o errexit - set -o errexit
- echo -e "\\033[33;1mConfiguring Vim\\033[0m" && echo -en "travis_fold:start:configure\\r\\033[0K" - echo -e "\\033[33;1mConfiguring Vim\\033[0m" && echo -en "travis_fold:start:configure\\r\\033[0K"
@@ -125,7 +136,7 @@ script:
# Append various warning flags to CFLAGS. # Append various warning flags to CFLAGS.
# BSD sed needs backup extension specified. # BSD sed needs backup extension specified.
sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk sed -i.bak -f ci/config.mk.sed ${SRCDIR}/auto/config.mk
if [[ "${TRAVIS_OS_NAME}" = "osx" ]]; then if [[ "${TRAVIS_OS_NAME}" = "osx" ]] || [[ "${CC}" = "clang-11" ]]; then
# On macOS, the entity of gcc is clang. # On macOS, the entity of gcc is clang.
sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk sed -i.bak -f ci/config.mk.clang.sed ${SRCDIR}/auto/config.mk
else else
@@ -145,6 +156,15 @@ script:
- echo -e "\\033[33;1mTesting Vim\\033[0m" && echo -en "travis_fold:start:test\\r\\033[0K" - echo -e "\\033[33;1mTesting Vim\\033[0m" && echo -en "travis_fold:start:test\\r\\033[0K"
- do_test make ${SHADOWOPT} ${TEST} && FOLD_MARKER=travis_fold - do_test make ${SHADOWOPT} ${TEST} && FOLD_MARKER=travis_fold
- echo -en "${FOLD_MARKER}:end:test\\r\\033[0K" - echo -en "${FOLD_MARKER}:end:test\\r\\033[0K"
- |
# Not all sanitizers will cause the tests to fail. This helps since we can
# see all the failures instead of just the first one, but we still want the
# test phase to fail if any sanitizer issues are detected.
if [[ -n "${ASAN_OPTIONS}" ]]; then
if grep -q '#[[:digit:]]* *0x[[:digit:]a-fA-F]*' "$LOG_DIR"/*; then
false
fi
fi
# Instead of using all environments with both compilers on both systems, # Instead of using all environments with both compilers on both systems,
# exclude some builds on mac os x and linux. # exclude some builds on mac os x and linux.
@@ -152,56 +172,56 @@ script:
# Linux: 2 compilers on some of the environments + gcc on os390 # Linux: 2 compilers on some of the environments + gcc on os390
jobs: jobs:
include: include:
- <<: *osx #- <<: *osx
name: tiny-nogui/clang # name: tiny-nogui/clang
compiler: clang # compiler: clang
env: *tiny-nogui # env: *tiny-nogui
- <<: *osx #- <<: *osx
name: tiny-nogui/gcc # name: tiny-nogui/gcc
compiler: gcc # compiler: gcc
env: *tiny-nogui # env: *tiny-nogui
- <<: *osx #- <<: *osx
<<: *osx-homebrew # <<: *osx-homebrew
name: huge/clang # name: huge/clang
compiler: clang # compiler: clang
env: *osx-huge # env: *osx-huge
- <<: *osx #- <<: *osx
<<: *osx-homebrew # <<: *osx-homebrew
name: huge/gcc # name: huge/gcc
compiler: gcc # compiler: gcc
env: *osx-huge # env: *osx-huge
- <<: *linux #- <<: *linux
name: tiny-nogui/clang # name: tiny-nogui/clang
compiler: clang # compiler: clang
env: *tiny-nogui # env: *tiny-nogui
- <<: *linux #- <<: *linux
name: tiny-nogui/gcc # name: tiny-nogui/gcc
compiler: gcc # compiler: gcc
env: *tiny-nogui # env: *tiny-nogui
- <<: *linux #- <<: *linux
name: tiny/clang # name: tiny/clang
compiler: clang # compiler: clang
env: *tiny # env: *tiny
- <<: *linux #- <<: *linux
name: tiny/gcc # name: tiny/gcc
compiler: gcc # compiler: gcc
env: *tiny # env: *tiny
- <<: *linux #- <<: *linux
name: small/gcc # name: small/gcc
compiler: gcc # compiler: gcc
env: *small # env: *small
- <<: *linux #- <<: *linux
name: normal/clang # name: normal+shadow/clang
compiler: clang # compiler: clang
env: # env:
- *normal # - *normal
- *shadowopt # - *shadowopt
- <<: *linux #- <<: *linux
name: normal/gcc # name: normal+shadow/gcc
compiler: gcc # compiler: gcc
env: # env:
- *normal # - *normal
- *shadowopt # - *shadowopt
- <<: *linux - <<: *linux
arch: s390x arch: s390x
name: huge/gcc-s390x name: huge/gcc-s390x
@@ -209,42 +229,60 @@ jobs:
env: *linux-huge env: *linux-huge
services: [] services: []
- <<: *linux - <<: *linux
name: huge+coverage/clang arch: arm64
compiler: clang name: huge/gcc-arm64
env:
- *linux-huge
# Clang cannot compile test_libvterm with "--coverage" flag.
- TEST=scripttests
after_success: *coverage
- <<: *linux
name: huge+coverage/gcc
compiler: gcc compiler: gcc
env: *linux-huge env: *linux-huge
after_success: *coverage services: []
- <<: *linux # ASAN #- <<: *linux
name: huge+asan/gcc # name: huge+coverage/clang
compiler: gcc # compiler: clang
env: # env:
- *linux-huge # - *linux-huge
- *asan # - *coverage
after_failure: *asan_symbolize # after_success: *eval-coverage
- <<: *linux #- <<: *linux
name: huge-testgui+coverage/gcc # name: huge+coverage/gcc
compiler: gcc # compiler: gcc
env: # env:
- *linux-huge # - *linux-huge
- TEST="-C src testgui" # - *coverage
after_success: *coverage # after_success: *eval-coverage
- <<: *linux #- <<: *linux # ASAN
name: unittests+coverage/gcc # name: huge+asan/clang
compiler: gcc # compiler: clang-11
env: *unittests # addons:
after_success: *coverage # apt:
- <<: *linux # sources:
name: vimtags/gcc # - sourceline: 'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main'
compiler: gcc # key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
env: # packages:
- *normal # - *apt-packages
- TEST="-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim" # - clang-11
# env:
# - *linux-huge
# - *asan
# after_failure: *asan_symbolize
#- <<: *linux
# name: huge-testgui+coverage/gcc
# compiler: gcc
# env:
# - *linux-huge
# - *coverage
# - TEST="-C src testgui"
# after_success: *eval-coverage
#- <<: *linux
# name: unittests+coverage/gcc
# compiler: gcc
# env:
# - *unittests
# - *coverage
# after_success: *eval-coverage
#- <<: *linux
# name: vimtags/gcc
# compiler: gcc
# env:
# - *normal
# - TEST="-C runtime/doc vimtags VIMEXE=../../${SRCDIR}/vim"
# vim:set sts=2 sw=2 tw=0 et: # vim:set sts=2 sw=2 tw=0 et:

View File

@@ -57,7 +57,7 @@ If you find a problem with one of these files or have a suggestion for
improvement, please first try to contact the maintainer directly. improvement, please first try to contact the maintainer directly.
Look in the header of the file for the name and email address. Look in the header of the file for the name and email address.
The maintainer will take care of issues and send updates to Bram for The maintainer will take care of issues and send updates to Bram for
distribution with Vim. distribution with Vim.
If the maintainer does not respond, contact the vim-dev maillist. If the maintainer does not respond, contact the vim-dev maillist.

View File

@@ -3,19 +3,30 @@
# source files for all source archives # source files for all source archives
SRC_ALL = \ SRC_ALL = \
.gitignore \ .cirrus.yml \
.coveralls.yml \
.gitattributes \ .gitattributes \
.github/CODEOWNERS \
.github/ISSUE_TEMPLATE/bug_report.yml \
.github/ISSUE_TEMPLATE/feature_request.md \
.github/workflows/ci.yml \
.github/workflows/codeql-analysis.yml \
.github/workflows/coverity.yml \
.gitignore \
.hgignore \ .hgignore \
.lgtm.yml \ .lgtm.yml \
.travis.yml \ .travis.yml \
.cirrus.yml \ .appveyor.yml \
appveyor.yml \ .codecov.yml \
ci/appveyor.bat \ ci/appveyor.bat \
ci/build-snd-dummy.sh \
ci/config.mk*.sed \
ci/if_ver*.vim \ ci/if_ver*.vim \
ci/load-snd-dummy.sh \ ci/load-snd-dummy.sh \
ci/config.mk*.sed \ ci/setup-xvfb.sh \
src/Make_all.mak \ src/Make_all.mak \
src/README.md \ src/README.md \
src/alloc.c \
src/alloc.h \ src/alloc.h \
src/arabic.c \ src/arabic.c \
src/arglist.c \ src/arglist.c \
@@ -44,6 +55,7 @@ SRC_ALL = \
src/drawline.c \ src/drawline.c \
src/drawscreen.c \ src/drawscreen.c \
src/edit.c \ src/edit.c \
src/errors.h \
src/eval.c \ src/eval.c \
src/evalbuffer.c \ src/evalbuffer.c \
src/evalfunc.c \ src/evalfunc.c \
@@ -60,6 +72,7 @@ SRC_ALL = \
src/fileio.c \ src/fileio.c \
src/filepath.c \ src/filepath.c \
src/findfile.c \ src/findfile.c \
src/float.c \
src/fold.c \ src/fold.c \
src/getchar.c \ src/getchar.c \
src/globals.h \ src/globals.h \
@@ -68,13 +81,16 @@ SRC_ALL = \
src/gui_beval.c \ src/gui_beval.c \
src/hardcopy.c \ src/hardcopy.c \
src/hashtab.c \ src/hashtab.c \
src/help.c \
src/highlight.c \ src/highlight.c \
src/indent.c \ src/indent.c \
src/insexpand.c \ src/insexpand.c \
src/job.c \
src/json.c \ src/json.c \
src/json_test.c \ src/json_test.c \
src/kword_test.c \ src/kword_test.c \
src/list.c \ src/list.c \
src/locale.c \
src/keymap.h \ src/keymap.h \
src/macros.h \ src/macros.h \
src/main.c \ src/main.c \
@@ -122,12 +138,13 @@ SRC_ALL = \
src/spell.h \ src/spell.h \
src/spellfile.c \ src/spellfile.c \
src/spellsuggest.c \ src/spellsuggest.c \
src/strings.c \
src/structs.h \ src/structs.h \
src/syntax.c \ src/syntax.c \
src/tag.c \ src/tag.c \
src/term.c \ src/term.c \
src/terminal.c \ src/terminal.c \
src/term.h \ src/termdefs.h \
src/termlib.c \ src/termlib.c \
src/testing.c \ src/testing.c \
src/textformat.c \ src/textformat.c \
@@ -143,9 +160,13 @@ SRC_ALL = \
src/version.h \ src/version.h \
src/vim.h \ src/vim.h \
src/vim9.h \ src/vim9.h \
src/vim9cmds.c \
src/vim9compile.c \ src/vim9compile.c \
src/vim9execute.c \ src/vim9execute.c \
src/vim9expr.c \
src/vim9instr.c \
src/vim9script.c \ src/vim9script.c \
src/vim9type.c \
src/viminfo.c \ src/viminfo.c \
src/winclip.c \ src/winclip.c \
src/window.c \ src/window.c \
@@ -169,12 +190,12 @@ SRC_ALL = \
src/testdir/setup_gui.vim \ src/testdir/setup_gui.vim \
src/testdir/shared.vim \ src/testdir/shared.vim \
src/testdir/vim9.vim \ src/testdir/vim9.vim \
src/testdir/script_util.vim \
src/testdir/summarize.vim \ src/testdir/summarize.vim \
src/testdir/term_util.vim \ src/testdir/term_util.vim \
src/testdir/view_util.vim \ src/testdir/view_util.vim \
src/testdir/test[0-9]*.ok \ src/testdir/test[0-9]*.ok \
src/testdir/test[0-9]*a.ok \ src/testdir/test77a.ok \
src/testdir/test49.vim \
src/testdir/test83-tags? \ src/testdir/test83-tags? \
src/testdir/test77a.com \ src/testdir/test77a.com \
src/testdir/test_*.vim \ src/testdir/test_*.vim \
@@ -196,6 +217,7 @@ SRC_ALL = \
src/testdir/popupbounce.vim \ src/testdir/popupbounce.vim \
src/proto.h \ src/proto.h \
src/protodef.h \ src/protodef.h \
src/proto/alloc.pro \
src/proto/arabic.pro \ src/proto/arabic.pro \
src/proto/arglist.pro \ src/proto/arglist.pro \
src/proto/autocmd.pro \ src/proto/autocmd.pro \
@@ -234,17 +256,21 @@ SRC_ALL = \
src/proto/fileio.pro \ src/proto/fileio.pro \
src/proto/filepath.pro \ src/proto/filepath.pro \
src/proto/findfile.pro \ src/proto/findfile.pro \
src/proto/float.pro \
src/proto/fold.pro \ src/proto/fold.pro \
src/proto/getchar.pro \ src/proto/getchar.pro \
src/proto/gui.pro \ src/proto/gui.pro \
src/proto/gui_beval.pro \ src/proto/gui_beval.pro \
src/proto/hardcopy.pro \ src/proto/hardcopy.pro \
src/proto/hashtab.pro \ src/proto/hashtab.pro \
src/proto/help.pro \
src/proto/highlight.pro \ src/proto/highlight.pro \
src/proto/indent.pro \ src/proto/indent.pro \
src/proto/insexpand.pro \ src/proto/insexpand.pro \
src/proto/job.pro \
src/proto/json.pro \ src/proto/json.pro \
src/proto/list.pro \ src/proto/list.pro \
src/proto/locale.pro \
src/proto/main.pro \ src/proto/main.pro \
src/proto/map.pro \ src/proto/map.pro \
src/proto/mark.pro \ src/proto/mark.pro \
@@ -279,6 +305,7 @@ SRC_ALL = \
src/proto/spell.pro \ src/proto/spell.pro \
src/proto/spellfile.pro \ src/proto/spellfile.pro \
src/proto/spellsuggest.pro \ src/proto/spellsuggest.pro \
src/proto/strings.pro \
src/proto/syntax.pro \ src/proto/syntax.pro \
src/proto/tag.pro \ src/proto/tag.pro \
src/proto/term.pro \ src/proto/term.pro \
@@ -295,9 +322,13 @@ SRC_ALL = \
src/proto/usercmd.pro \ src/proto/usercmd.pro \
src/proto/userfunc.pro \ src/proto/userfunc.pro \
src/proto/version.pro \ src/proto/version.pro \
src/proto/vim9cmds.pro \
src/proto/vim9compile.pro \ src/proto/vim9compile.pro \
src/proto/vim9execute.pro \ src/proto/vim9execute.pro \
src/proto/vim9expr.pro \
src/proto/vim9instr.pro \
src/proto/vim9script.pro \ src/proto/vim9script.pro \
src/proto/vim9type.pro \
src/proto/viminfo.pro \ src/proto/viminfo.pro \
src/proto/winclip.pro \ src/proto/winclip.pro \
src/proto/window.pro \ src/proto/window.pro \
@@ -353,6 +384,7 @@ SRC_ALL = \
src/libvterm/t/30state_pen.test \ src/libvterm/t/30state_pen.test \
src/libvterm/t/31state_rep.test \ src/libvterm/t/31state_rep.test \
src/libvterm/t/32state_flow.test \ src/libvterm/t/32state_flow.test \
src/libvterm/t/40state_selection.test \
src/libvterm/t/60screen_ascii.test \ src/libvterm/t/60screen_ascii.test \
src/libvterm/t/61screen_unicode.test \ src/libvterm/t/61screen_unicode.test \
src/libvterm/t/62screen_damage.test \ src/libvterm/t/62screen_damage.test \
@@ -421,7 +453,6 @@ SRC_UNIX = \
src/gui_gtk_x11.c \ src/gui_gtk_x11.c \
src/gui_gtk_res.xml \ src/gui_gtk_res.xml \
src/gui_motif.c \ src/gui_motif.c \
src/gui_xim.c \
src/gui_xmdlg.c \ src/gui_xmdlg.c \
src/gui_xmebw.c \ src/gui_xmebw.c \
src/gui_xmebw.h \ src/gui_xmebw.h \
@@ -445,7 +476,6 @@ SRC_UNIX = \
src/proto/gui_gtk_x11.pro \ src/proto/gui_gtk_x11.pro \
src/proto/gui_gtk_gresources.pro \ src/proto/gui_gtk_gresources.pro \
src/proto/gui_motif.pro \ src/proto/gui_motif.pro \
src/proto/gui_xim.pro \
src/proto/gui_xmdlg.pro \ src/proto/gui_xmdlg.pro \
src/proto/gui_x11.pro \ src/proto/gui_x11.pro \
src/proto/if_xcmdsrv.pro \ src/proto/if_xcmdsrv.pro \
@@ -465,6 +495,7 @@ SRC_UNIX = \
# source files for both DOS and Unix # source files for both DOS and Unix
SRC_DOS_UNIX = \ SRC_DOS_UNIX = \
src/gui_xim.c \
src/if_cscope.c \ src/if_cscope.c \
src/if_cscope.h \ src/if_cscope.h \
src/if_lua.c \ src/if_lua.c \
@@ -477,6 +508,7 @@ SRC_DOS_UNIX = \
src/if_py_both.h \ src/if_py_both.h \
src/if_ruby.c \ src/if_ruby.c \
src/if_tcl.c \ src/if_tcl.c \
src/proto/gui_xim.pro \
src/proto/if_cscope.pro \ src/proto/if_cscope.pro \
src/proto/if_lua.pro \ src/proto/if_lua.pro \
src/proto/if_mzsch.pro \ src/proto/if_mzsch.pro \
@@ -551,7 +583,7 @@ SRC_DOS = \
src/uninstall.c \ src/uninstall.c \
src/vim.def \ src/vim.def \
src/vim.rc \ src/vim.rc \
src/gvim.exe.mnf \ src/vim.manifest \
src/vimrun.c \ src/vimrun.c \
src/xpm_w32.c \ src/xpm_w32.c \
src/xpm_w32.h \ src/xpm_w32.h \
@@ -612,7 +644,7 @@ SRC_AMI = \
README_amisrc.txt.info \ README_amisrc.txt.info \
src.info \ src.info \
src/INSTALLami.txt \ src/INSTALLami.txt \
src/Make_morph.mak \ src/Make_ami.mak \
src/os_amiga.c \ src/os_amiga.c \
src/os_amiga.h \ src/os_amiga.h \
src/proto/os_amiga.pro \ src/proto/os_amiga.pro \
@@ -633,13 +665,11 @@ SRC_HAIKU = \
SRC_MAC = \ SRC_MAC = \
src/INSTALLmac.txt \ src/INSTALLmac.txt \
src/dehqx.py \ src/dehqx.py \
src/gui_mac.c \
src/os_mac_rsrc/*.icns \ src/os_mac_rsrc/*.icns \
src/os_mac.h \ src/os_mac.h \
src/os_mac.rsr.hqx \ src/os_mac.rsr.hqx \
src/os_mac_conv.c \ src/os_mac_conv.c \
src/os_macosx.m \ src/os_macosx.m \
src/proto/gui_mac.pro \
src/proto/os_mac_conv.pro \ src/proto/os_mac_conv.pro \
# source files for VMS (in the extra archive) # source files for VMS (in the extra archive)
@@ -675,10 +705,8 @@ SRC_EXTRA = \
$(SRC_QNX) \ $(SRC_QNX) \
$(SRC_VMS) \ $(SRC_VMS) \
README_os390.txt \ README_os390.txt \
src/Make_mint.mak \
src/infplist.xml \ src/infplist.xml \
src/link.390 \ src/link.390 \
src/os_mint.h \
src/os_vms_fix.com \ src/os_vms_fix.com \
src/toolbar.phi \ src/toolbar.phi \
@@ -779,6 +807,7 @@ RT_SCRIPTS = \
runtime/autoload/xml/*.vim \ runtime/autoload/xml/*.vim \
runtime/colors/*.vim \ runtime/colors/*.vim \
runtime/colors/README.txt \ runtime/colors/README.txt \
runtime/colors/lists/*.vim \
runtime/colors/tools/*.vim \ runtime/colors/tools/*.vim \
runtime/compiler/*.vim \ runtime/compiler/*.vim \
runtime/compiler/README.txt \ runtime/compiler/README.txt \
@@ -831,7 +860,6 @@ RT_AMI_DOS = \
# DOS runtime (also in the extra archive) # DOS runtime (also in the extra archive)
RT_DOS = \ RT_DOS = \
README_dos.txt \ README_dos.txt \
runtime/rgb.txt \
vimtutor.bat \ vimtutor.bat \
# DOS runtime without CR-LF translation (also in the extra archive) # DOS runtime without CR-LF translation (also in the extra archive)
@@ -1024,6 +1052,8 @@ LANG_SRC = \
src/po/README_mvc.txt \ src/po/README_mvc.txt \
src/po/check.vim \ src/po/check.vim \
src/po/cleanup.vim \ src/po/cleanup.vim \
src/po/tojavascript.vim \
src/po/fixfilenames.vim \
src/po/Makefile \ src/po/Makefile \
src/po/Make_all.mak \ src/po/Make_all.mak \
src/po/Make_cyg.mak \ src/po/Make_cyg.mak \

View File

@@ -32,7 +32,7 @@ first:
# Some make programs use the last target for the $@ default; put the other # Some make programs use the last target for the $@ default; put the other
# targets separately to always let $@ expand to "first" by default. # targets separately to always let $@ expand to "first" by default.
all install uninstall tools config configure reconfig proto depend lint tags types test scripttests test_libvterm unittests testclean clean distclean: all install uninstall tools config configure reconfig proto depend lint tags types test scripttests testtiny test_libvterm unittests testclean clean distclean:
@if test ! -f src/auto/config.mk; then \ @if test ! -f src/auto/config.mk; then \
cp src/config.mk.dist src/auto/config.mk; \ cp src/config.mk.dist src/auto/config.mk; \
fi fi
@@ -94,7 +94,7 @@ MINOR = 2
# src/Makefile, README.txt, README.md, src/README.md, READMEdir/README*.txt, # src/Makefile, README.txt, README.md, src/README.md, READMEdir/README*.txt,
# runtime/doc/*.txt and make nsis/gvim_version.nsh. # runtime/doc/*.txt and make nsis/gvim_version.nsh.
# For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.def, # For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.def,
# src/gvim.exe.mnf. # src/vim.manifest.
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, Lua, Cscope and # - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, Lua, Cscope and
# "huge" features. Add MZscheme if you can make it work. # "huge" features. Add MZscheme if you can make it work.
# Use "make reconfig" after selecting the configure arguments. # Use "make reconfig" after selecting the configure arguments.

View File

@@ -1,24 +1,26 @@
![Vim Logo](https://github.com/vim/vim/blob/master/runtime/vimlogo.gif) [![Vim Logo](https://github.com/vim/vim/raw/master/runtime/vimlogo.gif)](https://www.vim.org)
[![Travis Build Status](https://travis-ci.org/vim/vim.svg?branch=master)](https://travis-ci.org/vim/vim) [![Github Build status](https://github.com/vim/vim/workflows/GitHub%20CI/badge.svg)](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22) [![Travis Build Status](https://travis-ci.com/vim/vim.svg?branch=master)](https://travis-ci.com/github/vim/vim) [![Appveyor Build status](https://ci.appveyor.com/api/projects/status/o2qht2kjm02sgghk?svg=true)](https://ci.appveyor.com/project/chrisbra/vim) [![Cirrus Build Status](https://api.cirrus-ci.com/github/vim/vim.svg)](https://cirrus-ci.com/github/vim/vim) [![Coverage Status](https://codecov.io/gh/vim/vim/coverage.svg?branch=master)](https://codecov.io/gh/vim/vim?branch=master) [![Coverity Scan](https://scan.coverity.com/projects/241/badge.svg)](https://scan.coverity.com/projects/vim) [![Language Grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/vim/vim.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/vim/vim/context:cpp) [![Debian CI](https://badges.debian.net/badges/debian/testing/vim/version.svg)](https://buildd.debian.org/vim) [![Packages](https://repology.org/badge/tiny-repos/vim.svg)](https://repology.org/metapackage/vim) [![Fossies codespell report](https://fossies.org/linux/test/vim-master.tar.gz/codespell.svg)](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
[![Appveyor Build status](https://ci.appveyor.com/api/projects/status/o2qht2kjm02sgghk?svg=true)](https://ci.appveyor.com/project/chrisbra/vim)
[![Cirrus Build Status](https://api.cirrus-ci.com/github/vim/vim.svg)](https://cirrus-ci.com/github/vim/vim) <sub>For translations of this README see the end.</sub>
[![Coverage Status](https://codecov.io/gh/vim/vim/coverage.svg?branch=master)](https://codecov.io/gh/vim/vim?branch=master)
[![Coverity Scan](https://scan.coverity.com/projects/241/badge.svg)](https://scan.coverity.com/projects/vim) If you find a bug or want to discuss the best way to add a new feature, please
[![Language Grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/vim/vim.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/vim/vim/context:cpp) open an [issue](https://github.com/vim/vim/issues).
[![Debian CI](https://badges.debian.net/badges/debian/testing/vim/version.svg)](https://buildd.debian.org/vim) If you have a question or want to discuss the best way to do something with
[![Packages](https://repology.org/badge/tiny-repos/vim.svg)](https://repology.org/metapackage/vim) Vim, you can use [StackExchange](https://vi.stackexchange.com/)
For translations of this README see the end. or one of the [Maillists](https://www.vim.org/community.php).
## What is Vim? ## ## What is Vim? ##
Vim is a greatly improved version of the good old UNIX editor Vi. Many new Vim is a greatly improved version of the good old UNIX editor
[Vi](https://en.wikipedia.org/wiki/Vi). Many new
features have been added: multi-level undo, syntax highlighting, command line features have been added: multi-level undo, syntax highlighting, command line
history, on-line help, spell checking, filename completion, block operations, history, on-line help, spell checking, filename completion, block operations,
script language, etc. There is also a Graphical User Interface (GUI) script language, etc. There is also a Graphical User Interface (GUI)
available. Still, Vi compatibility is maintained, those who have Vi "in the available. Still, Vi compatibility is maintained, those who have Vi "in the
fingers" will feel at home. See `runtime/doc/vi_diff.txt` for differences with fingers" will feel at home.
See [`runtime/doc/vi_diff.txt`](runtime/doc/vi_diff.txt) for differences with
Vi. Vi.
This editor is very useful for editing programs and other plain text files. This editor is very useful for editing programs and other plain text files.
@@ -44,11 +46,11 @@ This `README.md` file comes with the runtime archive. It includes the
documentation, syntax files and other files that are used at runtime. To run documentation, syntax files and other files that are used at runtime. To run
Vim you must get either one of the binary archives or a source archive. Vim you must get either one of the binary archives or a source archive.
Which one you need depends on the system you want to run it on and whether you Which one you need depends on the system you want to run it on and whether you
want or must compile it yourself. Check http://www.vim.org/download.php for want or must compile it yourself. Check https://www.vim.org/download.php for
an overview of currently available distributions. an overview of currently available distributions.
Some popular places to get the latest Vim: Some popular places to get the latest Vim:
* Check out the git repository from [github](https://github.com/vim/vim). * Check out the git repository from [GitHub](https://github.com/vim/vim).
* Get the source code as an [archive](https://github.com/vim/vim/releases). * Get the source code as an [archive](https://github.com/vim/vim/releases).
* Get a Windows executable from the * Get a Windows executable from the
[vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository. [vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository.
@@ -59,14 +61,14 @@ Some popular places to get the latest Vim:
If you obtained a binary distribution you don't need to compile Vim. If you If you obtained a binary distribution you don't need to compile Vim. If you
obtained a source distribution, all the stuff for compiling Vim is in the obtained a source distribution, all the stuff for compiling Vim is in the
`src` directory. See `src/INSTALL` for instructions. [`src`](/src) directory. See [`src/INSTALL`](src/INSTALL) for instructions.
## Installation ## ## Installation ##
See one of these files for system-specific instructions. Either in the See one of these files for system-specific instructions. Either in the
READMEdir directory (in the repository) or the top directory (if you unpack an [READMEdir directory](./READMEdir/) (in the repository) or
archive): the top directory (if you unpack an archive):
README_ami.txt Amiga README_ami.txt Amiga
README_unix.txt Unix README_unix.txt Unix
@@ -84,8 +86,9 @@ The Vim tutor is a one hour training course for beginners. Often it can be
started as `vimtutor`. See `:help tutor` for more information. started as `vimtutor`. See `:help tutor` for more information.
The best is to use `:help` in Vim. If you don't have an executable yet, read The best is to use `:help` in Vim. If you don't have an executable yet, read
`runtime/doc/help.txt`. It contains pointers to the other documentation [`runtime/doc/help.txt`](/runtime/doc/help.txt).
files. The User Manual reads like a book and is recommended to learn to use It contains pointers to the other documentation files.
The User Manual reads like a book and is recommended to learn to use
Vim. See `:help user-manual`. Vim. See `:help user-manual`.
@@ -93,7 +96,8 @@ Vim. See `:help user-manual`.
Vim is Charityware. You can use and copy it as much as you like, but you are Vim is Charityware. You can use and copy it as much as you like, but you are
encouraged to make a donation to help orphans in Uganda. Please read the file encouraged to make a donation to help orphans in Uganda. Please read the file
`runtime/doc/uganda.txt` for details (do `:help uganda` inside Vim). [`runtime/doc/uganda.txt`](runtime/doc/uganda.txt)
for details (do `:help uganda` inside Vim).
Summary of the license: There are no restrictions on using or distributing an Summary of the license: There are no restrictions on using or distributing an
unmodified copy of Vim. Parts of Vim may also be distributed, but the license unmodified copy of Vim. Parts of Vim may also be distributed, but the license
@@ -109,30 +113,31 @@ your appreciation for the work and motivate Bram and others to continue
working on Vim please send a donation. working on Vim please send a donation.
Since Bram is back to a paid job the money will now be used to help children Since Bram is back to a paid job the money will now be used to help children
in Uganda. See `runtime/doc/uganda.txt`. But at the same time donations in Uganda. See [`runtime/doc/uganda.txt`](runtime/doc/uganda.txt). But
increase Bram's motivation to keep working on Vim! at the same time donations increase Bram's motivation to keep working on Vim!
For the most recent information about sponsoring look on the Vim web site: For the most recent information about sponsoring look on the Vim web site:
http://www.vim.org/sponsor/ https://www.vim.org/sponsor/
## Contributing ## ## Contributing ##
If you would like to help making Vim better, see the [CONTRIBUTING.md](https://github.com/vim/vim/blob/master/CONTRIBUTING.md) file. If you would like to help making Vim better, see the
[CONTRIBUTING.md](/CONTRIBUTING.md) file.
## Information ## ## Information ##
The latest news about Vim can be found on the Vim home page: The latest news about Vim can be found on the Vim home page:
http://www.vim.org/ https://www.vim.org/
If you have problems, have a look at the Vim documentation or tips: If you have problems, have a look at the Vim documentation or tips:
http://www.vim.org/docs.php https://www.vim.org/docs.php
http://vim.wikia.com/wiki/Vim_Tips_Wiki https://vim.fandom.com/wiki/Vim_Tips_Wiki
If you still have problems or any other questions, use one of the mailing If you still have problems or any other questions, use one of the mailing
lists to discuss them with Vim users and developers: lists to discuss them with Vim users and developers:
http://www.vim.org/maillist.php https://www.vim.org/maillist.php
If nothing else works, report bugs directly: If nothing else works, report bugs directly:
Bram Moolenaar <Bram@vim.org> Bram Moolenaar <Bram@vim.org>

View File

@@ -33,7 +33,7 @@ This README.txt file comes with the runtime archive. It includes the
documentation, syntax files and other files that are used at runtime. To run documentation, syntax files and other files that are used at runtime. To run
Vim you must get either one of the binary archives or a source archive. Vim you must get either one of the binary archives or a source archive.
Which one you need depends on the system you want to run it on and whether you Which one you need depends on the system you want to run it on and whether you
want or must compile it yourself. Check "http://www.vim.org/download.php" for want or must compile it yourself. Check "https://www.vim.org/download.php" for
an overview of currently available distributions. an overview of currently available distributions.
Some popular places to get the latest Vim: Some popular places to get the latest Vim:
@@ -101,7 +101,7 @@ increase Bram's motivation to keep working on Vim!
For the most recent information about sponsoring look on the Vim web site: For the most recent information about sponsoring look on the Vim web site:
http://www.vim.org/sponsor/ https://www.vim.org/sponsor/
CONTRIBUTING CONTRIBUTING
@@ -112,15 +112,15 @@ If you would like to help making Vim better, see the CONTRIBUTING.md file.
INFORMATION INFORMATION
The latest news about Vim can be found on the Vim home page: The latest news about Vim can be found on the Vim home page:
http://www.vim.org/ https://www.vim.org/
If you have problems, have a look at the Vim documentation or tips: If you have problems, have a look at the Vim documentation or tips:
http://www.vim.org/docs.php https://www.vim.org/docs.php
http://vim.wikia.com/wiki/Vim_Tips_Wiki https://vim.fandom.com/wiki/Vim_Tips_Wiki
If you still have problems or any other questions, use one of the mailing If you still have problems or any other questions, use one of the mailing
lists to discuss them with Vim users and developers: lists to discuss them with Vim users and developers:
http://www.vim.org/maillist.php https://www.vim.org/maillist.php
If nothing else works, report bugs directly: If nothing else works, report bugs directly:
Bram Moolenaar <Bram@vim.org> Bram Moolenaar <Bram@vim.org>

View File

@@ -5,8 +5,8 @@
This is an experimental side of [Vim](https://github.com/vim/vim). This is an experimental side of [Vim](https://github.com/vim/vim).
It explores ways of making Vim script faster and better. It explores ways of making Vim script faster and better.
WARNING: The Vim9 script features are in the early stages of development, WARNING: The Vim9 script features are still under development, anything can
anything can break! break!
# Why Vim9? # Why Vim9?
@@ -45,14 +45,16 @@ full code is below):
| Vim old | 5.018541 | | Vim old | 5.018541 |
| Python | 0.369598 | | Python | 0.369598 |
| Lua | 0.078817 | | Lua | 0.078817 |
| LuaJit | 0.004245 |
| Vim new | 0.073595 | | Vim new | 0.073595 |
That looks very promising! It's just one example, but it shows how much That looks very promising! It's just one example, but it shows how much
we can gain, and also that Vim script can be faster than builtin we can gain, and also that Vim script can be faster than builtin
interfaces. interfaces.
In practice the script would not do something useless as counting but change LuaJit is much faster at Lua-only instructions. In practice the script would
the text. For example, re-indent all the lines: not do something useless as counting but change the text. For example,
reindent all the lines:
``` vim ``` vim
let totallen = 0 let totallen = 0
@@ -64,12 +66,17 @@ the text. For example, re-indent all the lines:
| how | time in sec | | how | time in sec |
| --------| -------- | | --------| -------- |
| Vim old | 0.853752 | | Vim old | 0.578598 |
| Python | 0.304584 | | Python | 0.152040 |
| Lua | 0.286573 | | Lua | 0.164917 |
| Vim new | 0.190276 | | LuaJit | 0.128400 |
| Vim new | 0.079692 |
[These times were measured on a different system by Dominique Pelle]
The differences are smaller, but Vim 9 script is clearly the fastest. The differences are smaller, but Vim 9 script is clearly the fastest.
Using LuaJIT is only a little bit faster than plain Lua here, clearly the call
back to the Vim code is costly.
How does Vim9 script work? The function is first compiled into a sequence of How does Vim9 script work? The function is first compiled into a sequence of
instructions. Each instruction has one or two parameters and a stack is instructions. Each instruction has one or two parameters and a stack is
@@ -80,7 +87,7 @@ e.g. each stack item is a typeval_T. And one of the instructions is
"execute Ex command", for commands that are not compiled. "execute Ex command", for commands that are not compiled.
## 2. PHASING OUT INTERFACES ## 2. DEPRIORITIZE INTERFACES
Attempts have been made to implement functionality with built-in script Attempts have been made to implement functionality with built-in script
languages such as Python, Perl, Lua, Tcl and Ruby. This never gained much languages such as Python, Perl, Lua, Tcl and Ruby. This never gained much
@@ -91,14 +98,14 @@ Instead of using script language support in Vim:
with them. The job and channel support already makes this possible. with them. The job and channel support already makes this possible.
Really any language can be used, also Java and Go, which are not Really any language can be used, also Java and Go, which are not
available built-in. available built-in.
* Phase out the built-in language interfaces, make maintenance a bit easier * No priority for the built-in language interfaces. They will have to be kept
and executables easier to build. They will be kept for backwards for backwards compatibility, but many users won't need a Vim build with these
compatibility, no new features. interfaces.
* Improve the Vim script language, it is used to communicate with the external * Improve the Vim script language, it is used to communicate with the external
tool and implements the Vim side of the interface. Also, it can be used when tool and implements the Vim side of the interface. Also, it can be used when
an external tool is undesired. an external tool is undesired.
All together this creates a clear situation: Vim with the +eval feature Altogether this creates a clear situation: Vim with the +eval feature
will be sufficient for most plugins, while some plugins require will be sufficient for most plugins, while some plugins require
installing a tool that can be written in any language. No confusion installing a tool that can be written in any language. No confusion
about having Vim but the plugin not working because some specific about having Vim but the plugin not working because some specific
@@ -140,6 +147,9 @@ Taking this one step further is also dropping "s:" for script-local variables;
everything at the script level is script-local by default. Since this is not everything at the script level is script-local by default. Since this is not
backwards compatible it requires a new script style: Vim9 script! backwards compatible it requires a new script style: Vim9 script!
To avoid having more variations, the syntax inside a compiled function is the
same as in Vim9 script. Thus you have legacy syntax and Vim9 syntax.
It should be possible to convert code from other languages to Vim It should be possible to convert code from other languages to Vim
script. We can add functionality to make this easier. This still needs script. We can add functionality to make this easier. This still needs
to be discussed, but we can consider adding type checking and a simple to be discussed, but we can consider adding type checking and a simple
@@ -156,18 +166,18 @@ thing I have been thinking of is assignments without ":let". I often
make that mistake (after writing JavaScript especially). I think it is make that mistake (after writing JavaScript especially). I think it is
possible, if we make local variables shadow commands. That should be OK, possible, if we make local variables shadow commands. That should be OK,
if you shadow a command you want to use, just rename the variable. if you shadow a command you want to use, just rename the variable.
Using "let" and "const" to declare a variable, like in JavaScript and Using "var" and "const" to declare a variable, like in JavaScript and
TypeScript, can work: TypeScript, can work:
``` vim ``` vim
def MyFunction(arg: number): number def MyFunction(arg: number): number
let local = 1 var local = 1
let todo = arg var todo = arg
const ADD = 88 const ADD = 88
while todo > 0 while todo > 0
local += ADD local += ADD
--todo todo -= 1
endwhile endwhile
return local return local
enddef enddef
@@ -189,7 +199,7 @@ function and export it:
``` vim ``` vim
vim9script " Vim9 script syntax used here vim9script " Vim9 script syntax used here
let local = 'local variable is not exported, script-local' var local = 'local variable is not exported, script-local'
export def MyFunction() " exported function export def MyFunction() " exported function
... ...
@@ -245,10 +255,10 @@ END
return luaeval('sum') return luaeval('sum')
endfunc endfunc
def VimNew() def VimNew(): number
let sum = 0 var sum = 0
for i in range(1, 2999999) for i in range(1, 2999999)
let sum += i sum += i
endfor endfor
return sum return sum
enddef enddef
@@ -274,7 +284,7 @@ echo 'Vim new: ' .. reltimestr(reltime(start))
``` vim ``` vim
def VimNew(): number def VimNew(): number
let totallen = 0 var totallen = 0
for i in range(1, 100000) for i in range(1, 100000)
setline(i, ' ' .. getline(i)) setline(i, ' ' .. getline(i))
totallen += len(getline(i)) totallen += len(getline(i))
@@ -327,7 +337,7 @@ let start = reltime()
echo Python() echo Python()
echo 'Python: ' .. reltimestr(reltime(start)) echo 'Python: ' .. reltimestr(reltime(start))
bwipe! bwipe!
new new
call setline(1, range(100000)) call setline(1, range(100000))
let start = reltime() let start = reltime()

View File

@@ -16,11 +16,8 @@ src/os_amiga.* Files for the Amiga port.
src/os_msdos.* src/os_msdos.*
src/os_dos.* Files for the MS-DOS port. src/os_dos.* Files for the MS-DOS port.
src/gui_mac.*
src/os_mac.* Files for the Mac port. src/os_mac.* Files for the Mac port.
src/os_mint.8 Files for the Atari Mint port.
src/os_vms* Files for the VMS port. src/os_vms* Files for the VMS port.
src/os_w32* src/os_w32*
@@ -29,7 +26,6 @@ src/os_win32.* Files for the Win32 port.
src/gui_w32.* Files for the Win32 GUI. src/gui_w32.* Files for the Win32 GUI.
src/gui_w48.* Files for the Win32 and Win16 GUI. src/gui_w48.* Files for the Win32 and Win16 GUI.
src/Make_mvc.mak MS Visual C++ makefile for the Win32 GUI. src/Make_mvc.mak MS Visual C++ makefile for the Win32 GUI.
runtime/rgb.txt File with color definitions for the Win32 GUI.
src/if_ole.* OLE automation interface, for MS Windows 95 and NT. src/if_ole.* OLE automation interface, for MS Windows 95 and NT.

View File

@@ -1,28 +1,12 @@
README_mac.txt for version 8.2 of Vim: Vi IMproved. README_mac.txt for version 8.2 of Vim: Vi IMproved.
This file explains the installation of Vim on Macintosh systems. This file explains the installation of Vim on MacOS systems.
See "README.txt" for general information about Vim. See "README.txt" for general information about Vim.
To build from source get the files with git from https://github.com/vim/vim.
The find the instructions in src/INSTALLmac.txt.
To build from sources, like on Unix Installing Vim using Homebrew:
1. Get the build tools: "clang" and "make". These can be installed with the
"CommandLineTools" package. If you don't have one, do
xcode-select --install
Just like for any software development with OS X.
2. Get the source code. Best is to use git (which you need to install first),
see http://www.vim.org/git.php
Or you can download and unpack the Unix tar archive, see
http://www.vim.org/download.php
3. Go to the top directory of the source tree, do
make
sudo make install
A newly built vim will be installed under "/usr/local".
If you can't manage to make this work, there is a fallback using Homebrew:
1. Install Homebrew from http://brew.sh/ 1. Install Homebrew from http://brew.sh/
2. Install latest Vim with: brew install vim 2. Install the latest Vim with:
brew install vim

View File

@@ -5,48 +5,40 @@ setlocal ENABLEDELAYEDEXPANSION
cd %APPVEYOR_BUILD_FOLDER% cd %APPVEYOR_BUILD_FOLDER%
cd src cd src
echo "Building MinGW 32bit console version"
set PATH=c:\msys64\mingw32\bin;%PATH%
mingw32-make.exe -f Make_ming.mak GUI=no OPTIMIZE=speed IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
.\vim -u NONE -c "redir @a | ver |0put a | wq" ver_ming.txt
:: Save vim.exe before Make clean, moved back below.
copy vim.exe testdir
mingw32-make.exe -f Make_ming.mak clean
:: Build Mingw huge version with python and channel support, or
:: with specified features without python.
echo "Building MinGW 32bit GUI version"
if "%FEATURE%" == "HUGE" (
mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed CHANNEL=yes GUI=yes IME=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27 PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35 FEATURES=%FEATURE% || exit 1
) ELSE (
mingw32-make.exe -f Make_ming.mak OPTIMIZE=speed GUI=yes IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1
)
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_ming_gui.txt
:: Filter out the progress bar from the build log :: Filter out the progress bar from the build log
sed -e "s/@<<$/@<< | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak sed -e "s/@<<$/@<< | sed -e 's#.*\\\\r.*##'/" Make_mvc.mak > Make_mvc2.mak
echo "Building MSVC 64bit console Version" echo "Building MSVC 64bit console Version"
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=no IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1 nmake -f Make_mvc2.mak CPU=AMD64 ^
:: The executable is not used OLE=no GUI=no IME=yes ICONV=yes DEBUG=no ^
nmake -f Make_mvc2.mak clean FEATURES=%FEATURE%
if not exist vim.exe (
echo Build failure.
exit 1
)
:: build MSVC huge version with python and channel support :: build MSVC huge version with python and channel support
:: GUI needs to be last, so that testing works :: GUI needs to be last, so that testing works
echo "Building MSVC 64bit GUI Version" echo "Building MSVC 64bit GUI Version"
if "%FEATURE%" == "HUGE" ( if "%FEATURE%" == "HUGE" (
nmake -f Make_mvc2.mak DIRECTX=yes CPU=AMD64 CHANNEL=yes OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 FEATURES=%FEATURE% || exit 1 nmake -f Make_mvc2.mak CPU=AMD64 ^
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no POSTSCRIPT=yes ^
PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 ^
PYTHON3_VER=35 DYNAMIC_PYTHON3=yes PYTHON3=C:\Python35-x64 ^
FEATURES=%FEATURE%
) ELSE ( ) ELSE (
nmake -f Make_mvc2.mak CPU=AMD64 OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no FEATURES=%FEATURE% || exit 1 nmake -f Make_mvc2.mak CPU=AMD64 ^
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no ^
FEATURES=%FEATURE%
) )
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt if not exist gvim.exe (
echo Build failure.
exit 1
)
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt || exit 1
:: Restore vim.exe, tests will run with this. echo "version output MSVC console"
move /Y testdir\vim.exe . .\vim --version || exit 1
echo "version output MinGW" echo "version output MSVC GUI"
type ver_ming.txt type ver_msvc.txt || exit 1
echo "version output MinGW GUI"
type ver_ming_gui.txt
echo "version output MVC"
type ver_msvc.txt
cd .. cd ..

19
ci/build-snd-dummy.sh Normal file
View File

@@ -0,0 +1,19 @@
#!/bin/bash
set -eu
LINUX_VERSION=$(uname -r | cut -d. -f1-2)
LINUX_ARCHIVE_FILE=v${LINUX_VERSION}.tar.gz
LINUX_SOURCE_DIR=linux-${LINUX_VERSION}
mkdir -p "${TMPDIR}"
cd "${TMPDIR}"
wget -q "https://github.com/torvalds/linux/archive/${LINUX_ARCHIVE_FILE}"
tar -xf "${LINUX_ARCHIVE_FILE}" "${LINUX_SOURCE_DIR}/sound"
cd "${LINUX_SOURCE_DIR}/sound"
CC=gcc make -C "/lib/modules/$(uname -r)/build" M="${PWD}" CONFIG_SOUND=m CONFIG_SND=m CONFIG_SND_PCM=m CONFIG_SND_DUMMY=m modules
mkdir -p "${SND_DUMMY_DIR}"
cp soundcore.ko core/snd.ko core/snd-pcm.ko drivers/snd-dummy.ko "${SND_DUMMY_DIR}"

View File

@@ -0,0 +1,3 @@
# Clang 12 (or Apple clang 13) and later makes a warning '-Wcompound-token-split-by-macro' enable by default.
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/

View File

@@ -1,2 +1,2 @@
/^CFLAGS[[:blank:]]*=/s/$/ -Wno-error=missing-field-initializers/ /^CFLAGS[[:blank:]]*=/s/$/ -Wno-error=missing-field-initializers/
/^RUBY_CFLAGS[[:blank:]]*=/s/$/ -Wno-error=unknown-attributes -Wno-error=ignored-attributes/ /^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unknown-attributes -Wno-error=ignored-attributes/

View File

@@ -1,2 +1,3 @@
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/ /^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
/^PERL_CFLAGS[[:blank:]]*=/s/$/ -Wno-error=unused-function/ /^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function/
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter/

View File

@@ -6,7 +6,7 @@ if 1
echo "*** Interface versions ***\n" echo "*** Interface versions ***\n"
echo 'Lua:' echo 'Lua:'
PrintVer lua print(_VERSION) PrintVer lua print(vim.lua_version, jit and "(LuaJIT)" or "")
echo 'MzScheme:' echo 'MzScheme:'
PrintVer mzscheme (display (version)) PrintVer mzscheme (display (version))

View File

@@ -3,6 +3,6 @@ set -e
if ! modprobe snd-dummy; then if ! modprobe snd-dummy; then
# snd-dummy is contained in linux-modules-extra (if exists) # snd-dummy is contained in linux-modules-extra (if exists)
apt install -y "linux-modules-extra-$(uname -r)" apt-get install -yq --no-install-suggests --no-install-recommends "linux-modules-extra-$(uname -r)"
modprobe snd-dummy modprobe snd-dummy
fi fi

17
ci/setup-xvfb.sh Normal file
View File

@@ -0,0 +1,17 @@
#!/bin/bash
set -e
apt-get install -y xvfb
cat <<EOT >/etc/systemd/system/xvfb.service
[Unit]
Description=X Virtual Frame Buffer Service
After=network.target
[Service]
ExecStart=/usr/bin/Xvfb :99 -screen 0 1024x768x24
[Install]
WantedBy=multi-user.target
EOT
systemctl enable xvfb.service
systemctl start xvfb.service

View File

@@ -66,12 +66,15 @@ To build the installable .exe:
Install NSIS if you didn't do that already. Install NSIS if you didn't do that already.
Also install UPX, if you want a compressed file. Also install UPX, if you want a compressed file.
Download and include the ShellExecAsUser.dll Unicode version which can be
sourced from: https://nsis.sourceforge.io/ShellExecAsUser_plug-in
Unpack the images: Unpack the images:
cd nsis cd nsis
unzip icons.zip unzip icons.zip
To build then, enter: Then build gvim.exe:
cd nsis cd nsis
makensis gvim.nsi makensis gvim.nsi

View File

@@ -119,17 +119,18 @@ RequestExecutionLevel highest
!define MUI_COMPONENTSPAGE_SMALLDESC !define MUI_COMPONENTSPAGE_SMALLDESC
!define MUI_LICENSEPAGE_CHECKBOX !define MUI_LICENSEPAGE_CHECKBOX
!define MUI_FINISHPAGE_RUN "$0\gvim.exe" !define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_RUN_FUNCTION LaunchApplication
!define MUI_FINISHPAGE_RUN_TEXT $(str_show_readme) !define MUI_FINISHPAGE_RUN_TEXT $(str_show_readme)
!define MUI_FINISHPAGE_RUN_PARAMETERS "-R $\"$0\README.txt$\""
# This adds '\Vim' to the user choice automagically. The actual value is # This adds '\Vim' to the user choice automagically. The actual value is
# obtained below with CheckOldVim. # obtained below with CheckOldVim.
!ifdef WIN64 !ifdef WIN64
InstallDir "$PROGRAMFILES64\Vim" !define DEFAULT_INSTDIR "$PROGRAMFILES64\Vim"
!else !else
InstallDir "$PROGRAMFILES\Vim" !define DEFAULT_INSTDIR "$PROGRAMFILES\Vim"
!endif !endif
InstallDir ${DEFAULT_INSTDIR}
# Types of installs we can perform: # Types of installs we can perform:
InstType $(str_type_typical) InstType $(str_type_typical)
@@ -174,6 +175,7 @@ Page custom SetCustom ValidateCustom
!include "lang\german.nsi" !include "lang\german.nsi"
!include "lang\italian.nsi" !include "lang\italian.nsi"
!include "lang\japanese.nsi" !include "lang\japanese.nsi"
!include "lang\russian.nsi"
!include "lang\simpchinese.nsi" !include "lang\simpchinese.nsi"
!include "lang\tradchinese.nsi" !include "lang\tradchinese.nsi"
!include "lang\turkish.nsi" !include "lang\turkish.nsi"
@@ -299,6 +301,11 @@ Function CheckOldVim
Exch $0 # put $0 on top of stack, restore $0 to original value Exch $0 # put $0 on top of stack, restore $0 to original value
FunctionEnd FunctionEnd
Function LaunchApplication
SetOutPath $0
ShellExecAsUser::ShellExecAsUser "" "$0\gvim.exe" '-R "$0\README.txt"'
FunctionEnd
########################################################## ##########################################################
Section "$(str_section_old_ver)" id_section_old_ver Section "$(str_section_old_ver)" id_section_old_ver
SectionIn 1 2 3 RO SectionIn 1 2 3 RO
@@ -350,7 +357,6 @@ Section "$(str_section_exe)" id_section_exe
File ..\README.txt File ..\README.txt
File ..\uninstall.txt File ..\uninstall.txt
File ${VIMRT}\*.vim File ${VIMRT}\*.vim
File ${VIMRT}\rgb.txt
File ${VIMTOOLS}\diff.exe File ${VIMTOOLS}\diff.exe
File ${VIMTOOLS}\winpty${BIT}.dll File ${VIMTOOLS}\winpty${BIT}.dll
@@ -358,6 +364,10 @@ Section "$(str_section_exe)" id_section_exe
SetOutPath $0\colors SetOutPath $0\colors
File ${VIMRT}\colors\*.* File ${VIMRT}\colors\*.*
SetOutPath $0\colors\tools
File ${VIMRT}\colors\tools\*.*
SetOutPath $0\colors\lists
File ${VIMRT}\colors\lists\*.*
SetOutPath $0\compiler SetOutPath $0\compiler
File ${VIMRT}\compiler\*.* File ${VIMRT}\compiler\*.*
@@ -687,14 +697,28 @@ SectionEnd
${EndIf} ${EndIf}
!macroend !macroend
!macro LoadDefaultVimrc out_var reg_value default_value
ClearErrors
ReadRegStr ${out_var} HKLM "${UNINST_REG_KEY_VIM}" ${reg_value}
${If} ${Errors}
${OrIf} ${out_var} == ""
StrCpy ${out_var} ${default_value}
${EndIf}
!macroend
Function .onInit Function .onInit
!ifdef HAVE_MULTI_LANG !ifdef HAVE_MULTI_LANG
# Select a language (or read from the registry). # Select a language (or read from the registry).
!insertmacro MUI_LANGDLL_DISPLAY !insertmacro MUI_LANGDLL_DISPLAY
!endif !endif
# Check $VIM ${If} $INSTDIR == ${DEFAULT_INSTDIR}
ReadEnvStr $INSTDIR "VIM" # Check $VIM
ReadEnvStr $3 "VIM"
${If} $3 != ""
StrCpy $INSTDIR $3
${EndIf}
${EndIf}
call CheckOldVim call CheckOldVim
Pop $3 Pop $3
@@ -704,24 +728,15 @@ Function .onInit
SectionSetInstTypes ${id_section_old_ver} 0 SectionSetInstTypes ${id_section_old_ver} 0
SectionSetText ${id_section_old_ver} "" SectionSetText ${id_section_old_ver} ""
${Else} ${Else}
${If} $INSTDIR == "" ${If} $INSTDIR == ${DEFAULT_INSTDIR}
StrCpy $INSTDIR $3 StrCpy $INSTDIR $3
${EndIf} ${EndIf}
${EndIf} ${EndIf}
# If did not find a path: use the default dir.
${If} $INSTDIR == ""
!ifdef WIN64
StrCpy $INSTDIR "$PROGRAMFILES64\Vim"
!else
StrCpy $INSTDIR "$PROGRAMFILES\Vim"
!endif
${EndIf}
# Load the selections from the registry (if any).
${If} ${RunningX64} ${If} ${RunningX64}
SetRegView 64 SetRegView 64
${EndIf} ${EndIf}
# Load the selections from the registry (if any).
!insertmacro LoadSectionSelection ${id_section_console} "select_console" !insertmacro LoadSectionSelection ${id_section_console} "select_console"
!insertmacro LoadSectionSelection ${id_section_batch} "select_batch" !insertmacro LoadSectionSelection ${id_section_batch} "select_batch"
!insertmacro LoadSectionSelection ${id_section_desktop} "select_desktop" !insertmacro LoadSectionSelection ${id_section_desktop} "select_desktop"
@@ -736,6 +751,10 @@ Function .onInit
!ifdef HAVE_NLS !ifdef HAVE_NLS
!insertmacro LoadSectionSelection ${id_section_nls} "select_nls" !insertmacro LoadSectionSelection ${id_section_nls} "select_nls"
!endif !endif
# Load the default _vimrc settings from the registry (if any).
!insertmacro LoadDefaultVimrc $vim_compat_stat "vim_compat" "all"
!insertmacro LoadDefaultVimrc $vim_keymap_stat "vim_keyremap" "default"
!insertmacro LoadDefaultVimrc $vim_mouse_stat "vim_mouse" "default"
${If} ${RunningX64} ${If} ${RunningX64}
SetRegView lastused SetRegView lastused
${EndIf} ${EndIf}
@@ -799,17 +818,11 @@ Function SetCustom
${NSD_CB_AddString} $vim_nsd_compat $(str_msg_compat_defaults) ${NSD_CB_AddString} $vim_nsd_compat $(str_msg_compat_defaults)
${NSD_CB_AddString} $vim_nsd_compat $(str_msg_compat_all) ${NSD_CB_AddString} $vim_nsd_compat $(str_msg_compat_all)
# Default selection ${If} $vim_compat_stat == "defaults"
${If} $vim_compat_stat == ""
ReadRegStr $3 HKLM "${UNINST_REG_KEY_VIM}" "vim_compat"
${Else}
StrCpy $3 $vim_compat_stat
${EndIf}
${If} $3 == "defaults"
StrCpy $4 2 StrCpy $4 2
${ElseIf} $3 == "vim" ${ElseIf} $vim_compat_stat == "vim"
StrCpy $4 1 StrCpy $4 1
${ElseIf} $3 == "vi" ${ElseIf} $vim_compat_stat == "vi"
StrCpy $4 0 StrCpy $4 0
${Else} # default ${Else} # default
StrCpy $4 3 StrCpy $4 3
@@ -828,13 +841,7 @@ Function SetCustom
${NSD_CB_AddString} $vim_nsd_keymap $(str_msg_keymap_default) ${NSD_CB_AddString} $vim_nsd_keymap $(str_msg_keymap_default)
${NSD_CB_AddString} $vim_nsd_keymap $(str_msg_keymap_windows) ${NSD_CB_AddString} $vim_nsd_keymap $(str_msg_keymap_windows)
# Default selection ${If} $vim_keymap_stat == "windows"
${If} $vim_keymap_stat == ""
ReadRegStr $3 HKLM "${UNINST_REG_KEY_VIM}" "vim_keyremap"
${Else}
StrCpy $3 $vim_keymap_stat
${EndIf}
${If} $3 == "windows"
StrCpy $4 1 StrCpy $4 1
${Else} # default ${Else} # default
StrCpy $4 0 StrCpy $4 0
@@ -854,15 +861,9 @@ Function SetCustom
${NSD_CB_AddString} $vim_nsd_mouse $(str_msg_mouse_windows) ${NSD_CB_AddString} $vim_nsd_mouse $(str_msg_mouse_windows)
${NSD_CB_AddString} $vim_nsd_mouse $(str_msg_mouse_unix) ${NSD_CB_AddString} $vim_nsd_mouse $(str_msg_mouse_unix)
# Default selection ${If} $vim_mouse_stat == "xterm"
${If} $vim_mouse_stat == ""
ReadRegStr $3 HKLM "${UNINST_REG_KEY_VIM}" "vim_mouse"
${Else}
StrCpy $3 $vim_mouse_stat
${EndIf}
${If} $3 == "xterm"
StrCpy $4 2 StrCpy $4 2
${ElseIf} $3 == "windows" ${ElseIf} $vim_mouse_stat == "windows"
StrCpy $4 1 StrCpy $4 1
${Else} # default ${Else} # default
StrCpy $4 0 StrCpy $4 0

View File

@@ -24,7 +24,7 @@ LangString ^UninstallCaption ${LANG_ENGLISH} \
# "Destination Folder (Must end with $\"vim$\")" # "Destination Folder (Must end with $\"vim$\")"
LangString str_show_readme ${LANG_ENGLISH} \ LangString str_show_readme ${LANG_ENGLISH} \
"Show README after installation finish" "Show README after installation finished"
# Install types: # Install types:
LangString str_type_typical ${LANG_ENGLISH} \ LangString str_type_typical ${LANG_ENGLISH} \

View File

@@ -58,10 +58,10 @@ LangString str_desc_console ${LANG_ITALIAN} \
"Versione console di Vim (vim.exe)." "Versione console di Vim (vim.exe)."
LangString str_section_batch ${LANG_ITALIAN} \ LangString str_section_batch ${LANG_ITALIAN} \
"Crea file di invocazione (MS-DOS) .bat" "Crea file .bat"
LangString str_desc_batch ${LANG_ITALIAN} \ LangString str_desc_batch ${LANG_ITALIAN} \
"Crea file di invocazione .bat per varianti di Vim nella directory \ "Crea file .bat per varianti di Vim nella directory \
di Windows, per utilizzo da linea di comando (MS-DOS)." di Windows, per utilizzo da riga di comando."
LangString str_group_icons ${LANG_ITALIAN} \ LangString str_group_icons ${LANG_ITALIAN} \
"Crea icone per Vim" "Crea icone per Vim"

287
nsis/lang/russian.nsi Normal file
View File

@@ -0,0 +1,287 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# russian.nsi: Russian language strings for gvim NSIS installer.
#
# Locale ID : 1049
# Locale name : ru-RU
# fileencoding : UTF-8
# Author : Restorer
!insertmacro MUI_LANGUAGE "Russian"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_RUSSIAN} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_RUSSIAN} \
"$(^Name) Uninstall"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_RUSSIAN} \
# "Маршрут к каталогу установки (должен оканчиваться каталогом $\"vim$\")"
LangString str_show_readme ${LANG_RUSSIAN} \
"После окончания установки ознакомиться с кратким описанием"
# Install types:
LangString str_type_typical ${LANG_RUSSIAN} \
"Стандартная"
LangString str_type_minimal ${LANG_RUSSIAN} \
"Минимальная"
LangString str_type_full ${LANG_RUSSIAN} \
"Полная"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_RUSSIAN} \
"Удаление предыдущих версий"
LangString str_desc_old_ver ${LANG_RUSSIAN} \
"Будут удалены предыдущие установленные версии программы"
LangString str_section_exe ${LANG_RUSSIAN} \
"Графический интерфейс и вспомогательные файлы"
LangString str_desc_exe ${LANG_RUSSIAN} \
"Графический интерфейс программы Vim и все необходимые для этого файлы. \
Это обязательный компонент"
LangString str_section_console ${LANG_RUSSIAN} \
"Консольная программа Vim"
LangString str_desc_console ${LANG_RUSSIAN} \
"Вариант редактора Vim (vim.exe), используемый в командной оболочке"
LangString str_section_batch ${LANG_RUSSIAN} \
"Создать командные файлы"
LangString str_desc_batch ${LANG_RUSSIAN} \
"Создание командных bat-файлов позволяющих работать с редактором \
Vim из командной строки Windows"
LangString str_group_icons ${LANG_RUSSIAN} \
"Создать ярлыки для редактора Vim"
LangString str_desc_icons ${LANG_RUSSIAN} \
"Создание ярлыков редактора Vim для облегчения запуска программы"
LangString str_section_desktop ${LANG_RUSSIAN} \
"На Рабочем столе"
LangString str_desc_desktop ${LANG_RUSSIAN} \
"Создание ярлыков программы Gvim на Рабочем столе"
LangString str_section_start_menu ${LANG_RUSSIAN} \
"В меню кнопки Пуск"
LangString str_desc_start_menu ${LANG_RUSSIAN} \
"Создание ярлыков программы Gvim в меню кнопки Пуск"
#LangString str_section_quick_launch ${LANG_RUSSIAN} \
# "На панели быстрого запуска"
#LangString str_desc_quick_launch ${LANG_RUSSIAN} \
# "Создание ярлыков программы GVim на панели быстрого запуска"
LangString str_section_edit_with ${LANG_RUSSIAN} \
"В контекстном меню"
LangString str_desc_edit_with ${LANG_RUSSIAN} \
"Добавление вызова программы Gvim в пункт $\"Открыть с помощью...$\" контекстного меню"
#LangString str_section_edit_with32 ${LANG_RUSSIAN} \
# "32-разрядная версия программы"
#LangString str_desc_edit_with32 ${LANG_RUSSIAN} \
# "Добавление вызова программы Gvim в пункт $\"Открыть с помощью...$\" контекстного меню \
# для 32-разрядных приложений"
#LangString str_section_edit_with64 ${LANG_RUSSIAN} \
# "64-разрядная версия программы"
#LangString str_desc_edit_with64 ${LANG_RUSSIAN} \
# "Добавление вызова программы Gvim в пункт $\"Открыть с помощью...$\" контекстного меню \
# для 64-разрядных приложений"
LangString str_section_vim_rc ${LANG_RUSSIAN} \
"Настройки программы по умолчанию"
LangString str_desc_vim_rc ${LANG_RUSSIAN} \
"Создание файла _vimrc с предустановленными настройками, если нет других \
файлов настроек"
LangString str_group_plugin ${LANG_RUSSIAN} \
"Создать каталог для подключаемых модулей"
LangString str_desc_plugin ${LANG_RUSSIAN} \
"Создание каталога для размещения подключаемых модулей, которые расширяют \
возможности редактора Vim"
LangString str_section_plugin_home ${LANG_RUSSIAN} \
"Личный каталог"
LangString str_desc_plugin_home ${LANG_RUSSIAN} \
"Создание каталога для подключаемых модулей в домашнем каталоге пользователя"
LangString str_section_plugin_vim ${LANG_RUSSIAN} \
"Общий каталог"
LangString str_desc_plugin_vim ${LANG_RUSSIAN} \
"Создание каталога для подключаемых модулей в каталоге установки редактора Vim. \
Модули в этом каталоге будут доступны для любого пользователя \
зарегистрировавшегося в системе"
LangString str_section_vis_vim ${LANG_RUSSIAN} \
"Подключаемый модуль VisVim"
LangString str_desc_vis_vim ${LANG_RUSSIAN} \
"Подключаемый модуль VisVim используется для интеграции с Microsoft Visual Studio"
LangString str_section_nls ${LANG_RUSSIAN} \
"Поддержка региональных языков"
LangString str_desc_nls ${LANG_RUSSIAN} \
"Установка файлов для поддержки региональных языков операционной системы"
LangString str_unsection_register ${LANG_RUSSIAN} \
"Отменить регистрацию компонентов программы Vim"
LangString str_desc_unregister ${LANG_RUSSIAN} \
"Отмена регистрации компонентов программы Vim в операционной системе"
LangString str_unsection_exe ${LANG_RUSSIAN} \
"Удалить файлы редактора Vim"
LangString str_desc_rm_exe ${LANG_RUSSIAN} \
"Удаление всех исполняемых и вспомогательных файлов редактора Vim"
LangString str_ungroup_plugin ${LANG_RUSSIAN} \
"Удалить каталог подключаемых модулей"
LangString str_desc_rm_plugin ${LANG_RUSSIAN} \
"Удаление каталога подключаемых модулей, если в нём нет файлов"
LangString str_unsection_plugin_home ${LANG_RUSSIAN} \
"Личный каталог"
LangString str_desc_rm_plugin_home ${LANG_RUSSIAN} \
"Удаление каталога подключаемых модулей из домашнего каталога пользователя"
LangString str_unsection_plugin_vim ${LANG_RUSSIAN} \
"Общий каталог"
LangString str_desc_rm_plugin_vim ${LANG_RUSSIAN} \
"Удаление каталога подключаемых модулей из каталога установки редактора Vim"
LangString str_unsection_rootdir ${LANG_RUSSIAN} \
"Удалить основной каталог программы Vim"
LangString str_desc_rm_rootdir ${LANG_RUSSIAN} \
"Удаление основного каталога программы Vim. В этом каталоге находятся файлы \
настроек!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_RUSSIAN} \
# "Обнаружено предыдущих версий программы Vim: $vim_old_ver_count.$\r$\n\
# Данная программа установки может удалить не более ${VIM_MAX_OLD_VER}.$\r$\n\
# Удалить лишние версии программы Vim и повторите установку"
#LangString str_msg_invalid_root ${LANG_RUSSIAN} \
# "Недопустимый каталог установки программы Vim $vim_install_root!$\r$\n\
# Маршрут установки должен оканчиваться каталогом $\"vim$\""
#LangString str_msg_bin_mismatch ${LANG_RUSSIAN} \
# "Недопустимый маршрут к каталогу с исполняемыми файлами!$\r$\n$\r$\n\
# Маршрут к каталогу с исполняемыми файлами должен быть $\"$vim_bin_path$\",$\r$\n\
# но от операционной системы получен как $\"$INSTDIR$\"."
#LangString str_msg_vim_running ${LANG_RUSSIAN} \
# "Программа Vim сейчас работает.$\r$\n\
# Прежде чем продолжить, закройте все работающие редакторы Vim"
#LangString str_msg_register_ole ${LANG_RUSSIAN} \
# "Попытка зарегистрировать компоненты программы Vim в пространстве OLE. \
# Но не получено уведомление об успешности данной операции"
#LangString str_msg_unreg_ole ${LANG_RUSSIAN} \
# "Попытка отменить регистрацию компонентов программы Vim в пространстве OLE. \
# Но не получено уведомление об успешности данной операции"
#LangString str_msg_rm_start ${LANG_RUSSIAN} \
# "Выполняется удаление следующих версий программы:"
#LangString str_msg_rm_fail ${LANG_RUSSIAN} \
# "Произошёл сбой при выполнении удаления следующих версий программы:"
#LangString str_msg_no_rm_key ${LANG_RUSSIAN} \
# "Не удалось найти раздел реестра, содержащий информацию об удалении программы"
#LangString str_msg_no_rm_reg ${LANG_RUSSIAN} \
# "Не удалось найти программу выполняющую удаление, указанную в разделе реестра"
#LangString str_msg_no_rm_exe ${LANG_RUSSIAN} \
# "Отсутствуют права на доступ к программе, выполняющей удаление"
#LangString str_msg_rm_copy_fail ${LANG_RUSSIAN} \
# "Произошла ошибка при копировании программы удаления во временный каталог"
#LangString str_msg_rm_run_fail ${LANG_RUSSIAN} \
# "Произошёл сбой при запуске программы, выполняющей удаление"
#LangString str_msg_abort_install ${LANG_RUSSIAN} \
# "Установка программы была отменена"
LangString str_msg_install_fail ${LANG_RUSSIAN} \
"Произошла ошибка при установке программы. Попробуйте повторить установку \
немного попозже"
# когда луна будет в другой фазе и ветер должен дуть с юго‐запада
LangString str_msg_rm_exe_fail ${LANG_RUSSIAN} \
"Некоторые файлы не были удалены из каталога $0 $\r$\n\
Необходимо выполнить их удаление самостоятельно"
#LangString str_msg_rm_root_fail ${LANG_RUSSIAN} \
# "Внимание! В каталоге $\"$vim_install_root$\" содержатся файлы. Удаление каталога не выполнено"
LangString str_msg_uninstalling ${LANG_RUSSIAN} \
"Удаление предыдущих версий программ..."
LangString str_msg_registering ${LANG_RUSSIAN} \
"Регистрация компонентов программы в системе..."
LangString str_msg_unregistering ${LANG_RUSSIAN} \
"Отмена регистрации компонентов программы в системе..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_RUSSIAN} \
"Установка параметров программы"
LangString str_vimrc_page_subtitle ${LANG_RUSSIAN} \
"Параметры, используемые для клавиатуры, «мыши» и функциональности программы"
LangString str_msg_compat_title ${LANG_RUSSIAN} \
" Варианты использования программы "
LangString str_msg_compat_desc ${LANG_RUSSIAN} \
"Совместимость и функциональность программы"
LangString str_msg_compat_vi ${LANG_RUSSIAN} \
"Работа в варианте совместимости с редактором Vi"
LangString str_msg_compat_vim ${LANG_RUSSIAN} \
"Работа в варианте функциональности редактора Vim"
LangString str_msg_compat_defaults ${LANG_RUSSIAN} \
"Работа редактора Vim с некоторыми улучшениями (файл defaults.vim)"
LangString str_msg_compat_all ${LANG_RUSSIAN} \
"Работа редактора Vim со всеми улучшениями (файл vimrc_example.vim). \
Используется по умолчанию"
LangString str_msg_keymap_title ${LANG_RUSSIAN} \
" Клавиатурные команды "
LangString str_msg_keymap_desc ${LANG_RUSSIAN} \
"Клавиатурные команды используемые в ОС Windows (CTRL+V, CTRL+C, CTRL+S, CTRL+F и т. п.)"
LangString str_msg_keymap_default ${LANG_RUSSIAN} \
"Не изменять клавиатурные команды. Использовать принятые в редакторе Vim"
LangString str_msg_keymap_windows ${LANG_RUSSIAN} \
"Изменить указанные клавиатурные команды"
LangString str_msg_mouse_title ${LANG_RUSSIAN} \
" Манипулятор «мышь» "
LangString str_msg_mouse_desc ${LANG_RUSSIAN} \
"Действий правой и левой кнопки манипулятора «мышь»"
LangString str_msg_mouse_default ${LANG_RUSSIAN} \
"Правая кнопка — всплывающее меню, левая кнопка — режим визуальный"
LangString str_msg_mouse_windows ${LANG_RUSSIAN} \
"Правая кнопка — всплывающее меню, левая кнопка — режим выборки (как в ОС Windows)"
LangString str_msg_mouse_unix ${LANG_RUSSIAN} \
"Правая кнопка — расширяемый режим выбора, левая кнопка — режим визуальный (как в UNIXподобных ОС)"

View File

@@ -10,7 +10,7 @@ LangString ^SetupCaption ${LANG_TURKISH} \
"$(^Name) Setup" "$(^Name) Setup"
LangString ^UninstallCaption ${LANG_TURKISH} \ LangString ^UninstallCaption ${LANG_TURKISH} \
"$(^Name) Uninstall" "$(^Name) Uninstall"
LangString str_show_readme ${LANG_TURKISH} \ LangString str_show_readme ${LANG_TURKISH} \
"Kurulum bittikten sonra README dosyasını" "Kurulum bittikten sonra README dosyasını"
@@ -23,7 +23,7 @@ LangString str_type_minimal ${LANG_TURKISH} \
LangString str_type_full ${LANG_TURKISH} \ LangString str_type_full ${LANG_TURKISH} \
"Tam" "Tam"
############################################################################## ##############################################################################
# Section Titles & Description {{{1 # Section Titles & Description {{{1
############################################################################## ##############################################################################
@@ -62,12 +62,12 @@ LangString str_section_start_menu ${LANG_TURKISH} \
"Başlat Menüsü - Programlar klasöründe" "Başlat Menüsü - Programlar klasöründe"
LangString str_desc_start_menu ${LANG_TURKISH} \ LangString str_desc_start_menu ${LANG_TURKISH} \
"Vim kısayolunu Başlat Menüsüne ekler." "Vim kısayolunu Başlat Menüsüne ekler."
LangString str_section_edit_with ${LANG_TURKISH} \ LangString str_section_edit_with ${LANG_TURKISH} \
"Vim ile Aç" "Vim ile Aç"
LangString str_desc_edit_with ${LANG_TURKISH} \ LangString str_desc_edit_with ${LANG_TURKISH} \
"Vim'i $\"Birlikte $\" sağ tık menüsüne ekler." "Vim'i $\"Birlikte $\" sağ tık menüsüne ekler."
LangString str_section_vim_rc ${LANG_TURKISH} \ LangString str_section_vim_rc ${LANG_TURKISH} \
"Bir yapılandırma dosyası oluştur" "Bir yapılandırma dosyası oluştur"
LangString str_desc_vim_rc ${LANG_TURKISH} \ LangString str_desc_vim_rc ${LANG_TURKISH} \
@@ -93,7 +93,7 @@ LangString str_desc_plugin_vim ${LANG_TURKISH} \
LangString str_section_vis_vim ${LANG_TURKISH} \ LangString str_section_vis_vim ${LANG_TURKISH} \
"VisVim eklentisi" "VisVim eklentisi"
LangString str_desc_vis_vim ${LANG_TURKISH} \ LangString str_desc_vis_vim ${LANG_TURKISH} \
"Microsoft Visual Studio entegrasyonu için VisVim eklentisi" "Microsoft Visual Studio entegrasyonu için VisVim eklentisi"
LangString str_section_nls ${LANG_TURKISH} \ LangString str_section_nls ${LANG_TURKISH} \
"Ek dil desteği" "Ek dil desteği"
@@ -129,14 +129,14 @@ LangString str_unsection_rootdir ${LANG_TURKISH} \
"Vim kök dizinini kaldır" "Vim kök dizinini kaldır"
LangString str_desc_rm_rootdir ${LANG_TURKISH} \ LangString str_desc_rm_rootdir ${LANG_TURKISH} \
"Vim kök dizinini kaldırır. Bu dizin Vim yapılandırma dosyalarını içerir!" "Vim kök dizinini kaldırır. Bu dizin Vim yapılandırma dosyalarını içerir!"
LangString str_msg_install_fail ${LANG_TURKISH} \ LangString str_msg_install_fail ${LANG_TURKISH} \
"Yükleme başarısız oldu. Yeniden deneyin." "Yükleme başarısız oldu. Yeniden deneyin."
LangString str_msg_rm_exe_fail ${LANG_TURKISH} \ LangString str_msg_rm_exe_fail ${LANG_TURKISH} \
"$0 içindeki bazı dosyalar silinemedi!$\r$\n\ "$0 içindeki bazı dosyalar silinemedi!$\r$\n\
Bu dosyaları el ile kaldırmalısınız." Bu dosyaları el ile kaldırmalısınız."
LangString str_msg_uninstalling ${LANG_TURKISH} \ LangString str_msg_uninstalling ${LANG_TURKISH} \
"Eski sürüm kaldırılıyor..." "Eski sürüm kaldırılıyor..."

View File

@@ -3,11 +3,9 @@
prefix=stock_ prefix=stock_
list= list=
for file in "$@" for file in "$@"; do
do name=$(echo "$file" | sed 's|-|_|g; s|^.*/||; s|\..*$||')
name=`echo "$file" | sed 's|-|_|g; s|^.*/||; s|\..*$||'`
list="$list $prefix$name $file" list="$list $prefix$name $file"
done done
gdk-pixbuf-csource --raw --static --build-list $list gdk-pixbuf-csource --raw --static --build-list $list

View File

@@ -67,13 +67,13 @@ if exists ('g:ada_with_gnat_project_files')
endfor endfor
endif endif
" Section: add standart exception {{{2 " Section: add standard exception {{{2
" "
for Item in ['Constraint_Error', 'Program_Error', 'Storage_Error', 'Tasking_Error', 'Status_Error', 'Mode_Error', 'Name_Error', 'Use_Error', 'Device_Error', 'End_Error', 'Data_Error', 'Layout_Error', 'Length_Error', 'Pattern_Error', 'Index_Error', 'Translation_Error', 'Time_Error', 'Argument_Error', 'Tag_Error', 'Picture_Error', 'Terminator_Error', 'Conversion_Error', 'Pointer_Error', 'Dereference_Error', 'Update_Error'] for Item in ['Constraint_Error', 'Program_Error', 'Storage_Error', 'Tasking_Error', 'Status_Error', 'Mode_Error', 'Name_Error', 'Use_Error', 'Device_Error', 'End_Error', 'Data_Error', 'Layout_Error', 'Length_Error', 'Pattern_Error', 'Index_Error', 'Translation_Error', 'Time_Error', 'Argument_Error', 'Tag_Error', 'Picture_Error', 'Terminator_Error', 'Conversion_Error', 'Pointer_Error', 'Dereference_Error', 'Update_Error']
let g:ada#Keywords += [{ let g:ada#Keywords += [{
\ 'word': Item, \ 'word': Item,
\ 'menu': 'exception', \ 'menu': 'exception',
\ 'info': 'Ada standart exception.', \ 'info': 'Ada standard exception.',
\ 'kind': 'x', \ 'kind': 'x',
\ 'icase': 1}] \ 'icase': 1}]
endfor endfor
@@ -210,7 +210,7 @@ function ada#Word (...)
let l:Line = substitute (getline (l:Line_Nr), g:ada#Comment, '', '' ) let l:Line = substitute (getline (l:Line_Nr), g:ada#Comment, '', '' )
" Cope with tag searching for items in comments; if we are, don't loop " Cope with tag searching for items in comments; if we are, don't loop
" backards looking for previous lines " backwards looking for previous lines
if l:Column_Nr > strlen(l:Line) if l:Column_Nr > strlen(l:Line)
" We were in a comment " We were in a comment
let l:Line = getline(l:Line_Nr) let l:Line = getline(l:Line_Nr)

View File

@@ -14,7 +14,7 @@
" 15.10.2006 MK Bram's suggestion for runtime integration " 15.10.2006 MK Bram's suggestion for runtime integration
" 05.11.2006 MK Bram suggested not to use include protection for " 05.11.2006 MK Bram suggested not to use include protection for
" autoload " autoload
" 05.11.2006 MK Bram suggested agaist using setlocal omnifunc " 05.11.2006 MK Bram suggested against using setlocal omnifunc
" 05.11.2006 MK Bram suggested to save on spaces " 05.11.2006 MK Bram suggested to save on spaces
" Help Page: ft-ada-omni " Help Page: ft-ada-omni
"------------------------------------------------------------------------------ "------------------------------------------------------------------------------

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -4,7 +4,7 @@
" plus CSS Speech Module <http://www.w3.org/TR/css3-speech/> " plus CSS Speech Module <http://www.w3.org/TR/css3-speech/>
" Maintainer: Kao, Wei-Ko(othree) ( othree AT gmail DOT com ) " Maintainer: Kao, Wei-Ko(othree) ( othree AT gmail DOT com )
" Original Author: Mikolaj Machowski ( mikmach AT wp DOT pl ) " Original Author: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2018 Jul 02 " Last Change: 2021 Sep 21
let s:values = split("all additive-symbols align-content align-items align-self animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-repeat background-size block-size border border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-decoration-break box-shadow box-sizing break-after break-before break-inside caption-side clear clip clip-path color columns column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cue cue-before cue-after cursor direction display empty-cells fallback filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float font font-family font-feature-settings font-kerning font-language-override font-size font-size-adjust font-stretch font-style font-synthesis font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-ligatures font-variant-numeric font-variant-position font-weight grid grid-area grid-auto-columns grid-auto-flow grid-auto-position grid-auto-rows grid-column grid-column-start grid-column-end grid-row grid-row-start grid-row-end grid-template grid-template-areas grid-template-rows grid-template-columns height hyphens image-rendering image-resolution image-orientation ime-mode inline-size isolation justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-block-end margin-block-start margin-bottom margin-inline-end margin-inline-start margin-left margin-right margin-top marks mask mask-type max-block-size max-height max-inline-size max-width max-zoom min-block-size min-height min-inline-size min-width min-zoom mix-blend-mode negative object-fit object-position offset-block-end offset-block-start offset-inline-end offset-inline-start opacity order orientation orphans outline outline-color outline-offset outline-style outline-width overflow overflow-wrap overflow-x overflow-y pad padding padding-block-end padding-block-start padding-bottom padding-inline-end padding-inline-start padding-left padding-right padding-top page-break-after page-break-before page-break-inside pause-before pause-after pause perspective perspective-origin pointer-events position prefix quotes range resize rest rest-before rest-after right ruby-align ruby-merge ruby-position scroll-behavior scroll-snap-coordinate scroll-snap-destination scroll-snap-points-x scroll-snap-points-y scroll-snap-type scroll-snap-type-x scroll-snap-type-y shape-image-threshold shape-margin shape-outside speak speak-as suffix symbols system table-layout tab-size text-align text-align-last text-combine-upright text-decoration text-decoration-color text-decoration-line text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-transform text-underline-position top touch-action transform transform-box transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi unicode-range user-zoom vertical-align visibility voice-balance voice-duration voice-family voice-pitch voice-rate voice-range voice-stress voice-volume white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index zoom") let s:values = split("all additive-symbols align-content align-items align-self animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function backface-visibility background background-attachment background-blend-mode background-clip background-color background-image background-origin background-position background-repeat background-size block-size border border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-style border-bottom-width border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-spacing border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width bottom box-decoration-break box-shadow box-sizing break-after break-before break-inside caption-side clear clip clip-path color columns column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cue cue-before cue-after cursor direction display empty-cells fallback filter flex flex-basis flex-direction flex-flow flex-grow flex-shrink flex-wrap float font font-family font-feature-settings font-kerning font-language-override font-size font-size-adjust font-stretch font-style font-synthesis font-variant font-variant-alternates font-variant-caps font-variant-east-asian font-variant-ligatures font-variant-numeric font-variant-position font-weight grid grid-area grid-auto-columns grid-auto-flow grid-auto-position grid-auto-rows grid-column grid-column-start grid-column-end grid-row grid-row-start grid-row-end grid-template grid-template-areas grid-template-rows grid-template-columns height hyphens image-rendering image-resolution image-orientation ime-mode inline-size isolation justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-block-end margin-block-start margin-bottom margin-inline-end margin-inline-start margin-left margin-right margin-top marks mask mask-type max-block-size max-height max-inline-size max-width max-zoom min-block-size min-height min-inline-size min-width min-zoom mix-blend-mode negative object-fit object-position offset-block-end offset-block-start offset-inline-end offset-inline-start opacity order orientation orphans outline outline-color outline-offset outline-style outline-width overflow overflow-wrap overflow-x overflow-y pad padding padding-block-end padding-block-start padding-bottom padding-inline-end padding-inline-start padding-left padding-right padding-top page-break-after page-break-before page-break-inside pause-before pause-after pause perspective perspective-origin pointer-events position prefix quotes range resize rest rest-before rest-after right ruby-align ruby-merge ruby-position scroll-behavior scroll-snap-coordinate scroll-snap-destination scroll-snap-points-x scroll-snap-points-y scroll-snap-type scroll-snap-type-x scroll-snap-type-y shape-image-threshold shape-margin shape-outside speak speak-as suffix symbols system table-layout tab-size text-align text-align-last text-combine-upright text-decoration text-decoration-color text-decoration-line text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-orientation text-overflow text-rendering text-shadow text-transform text-underline-position top touch-action transform transform-box transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi unicode-range user-zoom vertical-align visibility voice-balance voice-duration voice-family voice-pitch voice-rate voice-range voice-stress voice-volume white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index zoom")
@@ -38,12 +38,12 @@ function! csscomplete#CompleteCSS(findstart, base)
if exists("b:compl_context") if exists("b:compl_context")
let line = getline('.') let line = getline('.')
let compl_begin = col('.') - 2 let compl_begin = col('.') - 2
let after = line[compl_begin:] let b:after = line[compl_begin:]
let line = b:compl_context let line = b:compl_context
unlet! b:compl_context unlet! b:compl_context
else else
let line = a:base let line = a:base
let after = '' let b:after = ''
endif endif
let res = [] let res = []
@@ -311,7 +311,7 @@ function! csscomplete#CompleteCSS(findstart, base)
let values = ["normal", "italic", "oblique", "small-caps", "bold", "bolder", "lighter", "100", "200", "300", "400", "500", "600", "700", "800", "900", "xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large", "larger", "smaller", "sans-serif", "serif", "monospace", "cursive", "fantasy", "caption", "icon", "menu", "message-box", "small-caption", "status-bar"] let values = ["normal", "italic", "oblique", "small-caps", "bold", "bolder", "lighter", "100", "200", "300", "400", "500", "600", "700", "800", "900", "xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large", "larger", "smaller", "sans-serif", "serif", "monospace", "cursive", "fantasy", "caption", "icon", "menu", "message-box", "small-caption", "status-bar"]
elseif prop =~ '^\%(height\|width\)$' elseif prop =~ '^\%(height\|width\)$'
let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"] let values = ["auto", "border-box", "content-box", "max-content", "min-content", "available", "fit-content"]
elseif prop =~ '^\%(left\|rigth\)$' elseif prop =~ '^\%(left\|right\)$'
let values = ["auto"] let values = ["auto"]
elseif prop == 'image-rendering' elseif prop == 'image-rendering'
let values = ["auto", "crisp-edges", "pixelated"] let values = ["auto", "crisp-edges", "pixelated"]

View File

@@ -23,9 +23,9 @@ endif
function decada#Unit_Name () dict " {{{1 function decada#Unit_Name () dict " {{{1
" Convert filename into acs unit: " Convert filename into acs unit:
" 1: remove the file extenstion. " 1: remove the file extension.
" 2: replace all double '_' or '-' with an dot (which denotes a separate) " 2: replace all double '_' or '-' with an dot (which denotes a separate)
" 3: remove a trailing '_' (wich denotes a specification) " 3: remove a trailing '_' (which denotes a specification)
return substitute (substitute (expand ("%:t:r"), '__\|-', ".", "g"), '_$', "", '') return substitute (substitute (expand ("%:t:r"), '__\|-', ".", "g"), '_$', "", '')
endfunction decada#Unit_Name " }}}1 endfunction decada#Unit_Name " }}}1

View File

@@ -1,7 +1,7 @@
" Vim functions for file type detection " Vim functions for file type detection
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2020 Mar 30 " Last Change: 2021 Dec 17
" These functions are moved here from runtime/filetype.vim to make startup " These functions are moved here from runtime/filetype.vim to make startup
" faster. " faster.
@@ -172,6 +172,17 @@ func dist#ft#FTent()
setf dtd setf dtd
endfunc endfunc
func dist#ft#ExCheck()
let lines = getline(1, min([line("$"), 100]))
if exists('g:filetype_euphoria')
exe 'setf ' . g:filetype_euphoria
elseif match(lines, '^--\|^ifdef\>\|^include\>') > -1
setf euphoria3
else
setf elixir
endif
endfunc
func dist#ft#EuphoriaCheck() func dist#ft#EuphoriaCheck()
if exists('g:filetype_euphoria') if exists('g:filetype_euphoria')
exe 'setf ' . g:filetype_euphoria exe 'setf ' . g:filetype_euphoria
@@ -208,6 +219,23 @@ func dist#ft#FTe()
endif endif
endfunc endfunc
" Distinguish between Forth and F#.
" Provided by Doug Kearns.
func dist#ft#FTfs()
if exists("g:filetype_fs")
exe "setf " . g:filetype_fs
else
let line = getline(nextnonblank(1))
" comments and colon definitions
if line =~ '^\s*\.\=( ' || line =~ '^\s*\\G\= ' || line =~ '^\\$'
\ || line =~ '^\s*: \S'
setf forth
else
setf fsharp
endif
endif
endfunc
" Distinguish between HTML, XHTML and Django " Distinguish between HTML, XHTML and Django
func dist#ft#FThtml() func dist#ft#FThtml()
let n = 1 let n = 1
@@ -253,6 +281,16 @@ func dist#ft#ProtoCheck(default)
endfunc endfunc
func dist#ft#FTm() func dist#ft#FTm()
if exists("g:filetype_m")
exe "setf " . g:filetype_m
return
endif
" excluding end(for|function|if|switch|while) common to Murphi
let octave_block_terminators = '\<end\%(_try_catch\|classdef\|enumeration\|events\|methods\|parfor\|properties\)\>'
let objc_preprocessor = '^\s*#\s*\%(import\|include\|define\|if\|ifn\=def\|undef\|line\|error\|pragma\)\>'
let n = 1 let n = 1
let saw_comment = 0 " Whether we've seen a multiline comment leader. let saw_comment = 0 " Whether we've seen a multiline comment leader.
while n < 100 while n < 100
@@ -263,10 +301,16 @@ func dist#ft#FTm()
" anything more definitive. " anything more definitive.
let saw_comment = 1 let saw_comment = 1
endif endif
if line =~ '^\s*\(#\s*\(include\|import\)\>\|@import\>\|//\)' if line =~ '^\s*//' || line =~ '^\s*@import\>' || line =~ objc_preprocessor
setf objc setf objc
return return
endif endif
if line =~ '^\s*\%(#\|%!\)' || line =~ '^\s*unwind_protect\>' ||
\ line =~ '\%(^\|;\)\s*' .. octave_block_terminators
setf octave
return
endif
" TODO: could be Matlab or Octave
if line =~ '^\s*%' if line =~ '^\s*%'
setf matlab setf matlab
return return
@@ -287,11 +331,8 @@ func dist#ft#FTm()
" or Murphi based on the comment leader. Assume the former as it is more " or Murphi based on the comment leader. Assume the former as it is more
" common. " common.
setf objc setf objc
elseif exists("g:filetype_m")
" Use user specified default filetype for .m
exe "setf " . g:filetype_m
else else
" Default is matlab " Default is Matlab
setf matlab setf matlab
endif endif
endfunc endfunc
@@ -362,6 +403,10 @@ func dist#ft#FTinc()
setf aspvbs setf aspvbs
elseif lines =~ "<?" elseif lines =~ "<?"
setf php setf php
" Pascal supports // comments but they're vary rarely used for file
" headers so assume POV-Ray
elseif lines =~ '^\s*\%({\|(\*\)' || lines =~? s:ft_pascal_keywords
setf pascal
else else
call dist#ft#FTasmsyntax() call dist#ft#FTasmsyntax()
if exists("b:asmsyntax") if exists("b:asmsyntax")
@@ -408,6 +453,9 @@ func dist#ft#FTprogress_asm()
setf progress setf progress
endfunc endfunc
let s:ft_pascal_comments = '^\s*\%({\|(\*\|//\)'
let s:ft_pascal_keywords = '^\s*\%(program\|unit\|library\|uses\|begin\|procedure\|function\|const\|type\|var\)\>'
func dist#ft#FTprogress_pascal() func dist#ft#FTprogress_pascal()
if exists("g:filetype_p") if exists("g:filetype_p")
exe "setf " . g:filetype_p exe "setf " . g:filetype_p
@@ -419,8 +467,7 @@ func dist#ft#FTprogress_pascal()
let lnum = 1 let lnum = 1
while lnum <= 10 && lnum < line('$') while lnum <= 10 && lnum < line('$')
let line = getline(lnum) let line = getline(lnum)
if line =~ '^\s*\(program\|unit\|procedure\|function\|const\|type\|var\)\>' if line =~ s:ft_pascal_comments || line =~? s:ft_pascal_keywords
\ || line =~ '^\s*{' || line =~ '^\s*(\*'
setf pascal setf pascal
return return
elseif line !~ '^\s*$' || line =~ '^/\*' elseif line !~ '^\s*$' || line =~ '^/\*'
@@ -433,6 +480,19 @@ func dist#ft#FTprogress_pascal()
setf progress setf progress
endfunc endfunc
func dist#ft#FTpp()
if exists("g:filetype_pp")
exe "setf " . g:filetype_pp
else
let line = getline(nextnonblank(1))
if line =~ s:ft_pascal_comments || line =~? s:ft_pascal_keywords
setf pascal
else
setf puppet
endif
endif
endfunc
func dist#ft#FTr() func dist#ft#FTr()
let max = line("$") > 50 ? 50 : line("$") let max = line("$") > 50 ? 50 : line("$")
@@ -575,7 +635,7 @@ endfunc
let s:ft_rules_udev_rules_pattern = '^\s*\cudev_rules\s*=\s*"\([^"]\{-1,}\)/*".*' let s:ft_rules_udev_rules_pattern = '^\s*\cudev_rules\s*=\s*"\([^"]\{-1,}\)/*".*'
func dist#ft#FTRules() func dist#ft#FTRules()
let path = expand('<amatch>:p') let path = expand('<amatch>:p')
if path =~ '^/\(etc/udev/\%(rules\.d/\)\=.*\.rules\|lib/udev/\%(rules\.d/\)\=.*\.rules\)$' if path =~ '/\(etc/udev/\%(rules\.d/\)\=.*\.rules\|\%(usr/\)\=lib/udev/\%(rules\.d/\)\=.*\.rules\)$'
setf udevrules setf udevrules
return return
endif endif
@@ -751,6 +811,23 @@ func dist#ft#Redif()
endwhile endwhile
endfunc endfunc
" This function is called for all files under */debian/patches/*, make sure not
" to non-dep3patch files, such as README and other text files.
func dist#ft#Dep3patch()
if expand('%:t') ==# 'series'
return
endif
for ln in getline(1, 100)
if ln =~# '^\%(Description\|Subject\|Origin\|Bug\|Forwarded\|Author\|From\|Reviewed-by\|Acked-by\|Last-Updated\|Applied-Upstream\):'
setf dep3patch
return
elseif ln =~# '^---'
" end of headers found. stop processing
return
endif
endfor
endfunc
" Restore 'cpoptions' " Restore 'cpoptions'
let &cpo = s:cpo_save let &cpo = s:cpo_save

View File

@@ -129,7 +129,7 @@ fun! getscript#GetLatestVimScripts()
" insure that wget is executable " insure that wget is executable
if executable(g:GetLatestVimScripts_wget) != 1 if executable(g:GetLatestVimScripts_wget) != 1
echoerr "GetLatestVimScripts needs ".g:GetLatestVimScripts_wget." which apparently is not available on your system" echoerr "GetLatestVimScripts needs ".g:GetLatestVimScripts_wget." which apparently is not available on your system"
" call Dret("GetLatestVimScripts : wget not executable/availble") " call Dret("GetLatestVimScripts : wget not executable/available")
return return
endif endif
@@ -347,7 +347,7 @@ fun! s:GetOneScript(...)
set t_ti= t_te= nors set t_ti= t_te= nors
" put current line on top-of-screen and interpret it into " put current line on top-of-screen and interpret it into
" a script identifer : used to obtain webpage " a script identifier : used to obtain webpage
" source identifier : used to identify current version " source identifier : used to identify current version
" and an associated comment: used to report on what's being considered " and an associated comment: used to report on what's being considered
if a:0 >= 3 if a:0 >= 3

View File

@@ -54,7 +54,7 @@ function! haskellcomplete#Complete(findstart, base)
if b:completingLangExtension if b:completingLangExtension
if a:base ==? "" if a:base ==? ""
" Return all posible Lang extensions " Return all possible Lang extensions
return s:langExtensions return s:langExtensions
else else
let l:matches = [] let l:matches = []
@@ -70,7 +70,7 @@ function! haskellcomplete#Complete(findstart, base)
elseif b:completingOptionsGHC elseif b:completingOptionsGHC
if a:base ==? "" if a:base ==? ""
" Return all posible GHC options " Return all possible GHC options
return s:optionsGHC return s:optionsGHC
else else
let l:matches = [] let l:matches = []
@@ -86,7 +86,7 @@ function! haskellcomplete#Complete(findstart, base)
elseif b:completingModule elseif b:completingModule
if a:base ==? "" if a:base ==? ""
" Return all posible modules " Return all possible modules
return s:commonModules return s:commonModules
else else
let l:matches = [] let l:matches = []

View File

@@ -486,7 +486,7 @@ function! htmlcomplete#CompleteTags(findstart, base)
endif endif
endif endif
" Value of attribute completion {{{ " Value of attribute completion {{{
" If attr contains =\s*[\"'] we catched value of attribute " If attr contains =\s*[\"'] we match value of attribute
if attr =~ "=\s*[\"']" || attr =~ "=\s*$" if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
" Let do attribute specific completion " Let do attribute specific completion
let attrname = matchstr(attr, '.*\ze\s*=') let attrname = matchstr(attr, '.*\ze\s*=')

View File

@@ -1,7 +1,9 @@
" Vim completion script " Vim completion script
" Language: Java Script " Language: Java Script
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl ) " Maintainer: Jay Sitter (jay@jaysitter.com)
" Last Change: 2017 Mar 04 " URL: https://github.com/jsit/javascriptcomplete.vim/
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2020 Jul 30
function! javascriptcomplete#CompleteJS(findstart, base) function! javascriptcomplete#CompleteJS(findstart, base)
if a:findstart if a:findstart
@@ -154,12 +156,30 @@ function! javascriptcomplete#CompleteJS(findstart, base)
\ 'text', 'vLink'] \ 'text', 'vLink']
let bodys = bodyprop let bodys = bodyprop
" Document - document. " Document - document.
let docuprop = ['anchors', 'applets', 'childNodes', 'embeds', 'forms', 'images', 'links', 'stylesheets', let docuprop = ['anchors', 'body', 'characterSet', 'doctype',
\ 'body', 'cookie', 'documentElement', 'domain', 'lastModified', 'referrer', 'title', 'URL'] \ 'documentElement', 'documentURI', 'embeds', 'fonts', 'forms',
let documeth = ['close', 'createAttribute', 'createElement', 'createTextNode', 'focus', 'getElementById', \ 'head', 'hidden', 'images', 'implementation', 'lastStyleSheetSet',
\ 'getElementsByName', 'getElementsByTagName', 'open', 'write', 'writeln', \ 'links', 'plugins', 'preferredStyleSheetSet', 'scripts',
\ 'onClick', 'onDblClick', 'onFocus', 'onKeyDown', 'onKeyPress', 'onKeyUp', \ 'scrollingElement', 'selectedStyleSheetSet', 'styleSheetSets',
\ 'onMouseDown', 'onMouseMove', 'onMouseOut', 'onMouseOver', 'onMouseUp', 'onResize'] \ 'timeline', 'visibilityState', 'cookie', 'defaultView',
\ 'designMode', 'dir', 'domain', 'lastModified', 'location',
\ 'readyState', 'referrer', 'title', 'URL', 'activeElement',
\ 'fullscreenElement', 'styleSheets']
let documeth = ['adoptNode', 'close', 'createAttribute',
\ 'createAttributeNS', 'createCDATASection', 'createComment',
\ 'createDocumentFragment', 'createElement', 'createElementNS',
\ 'createEvent', 'createExpression', 'createNSResolver',
\ 'createNodeIterator', 'createProcessingInstruction', 'createRange',
\ 'createTextNode', 'createTouchList', 'createTreeWalker',
\ 'enableStyleSheetsForSet', 'evaluate', 'focus', 'getElementById',
\ 'getElementById', 'getElementsByClassName', 'getElementsByName',
\ 'getElementsByTagName', 'getElementsByTagNameNS',
\ 'hasStorageAccess', 'importNode', 'onClick', 'onDblClick',
\ 'onFocus', 'onKeyDown', 'onKeyPress', 'onKeyUp', 'onMouseDown',
\ 'onMouseMove', 'onMouseOut', 'onMouseOver', 'onMouseUp',
\ 'onResize', 'open', 'querySelector', 'querySelectorAll',
\ 'requestStorageAccess', 'write', 'writeln']
call map(documeth, 'v:val."("') call map(documeth, 'v:val."("')
let docuxprop = ['attributes', 'childNodes', 'doctype', 'documentElement', 'firstChild', let docuxprop = ['attributes', 'childNodes', 'doctype', 'documentElement', 'firstChild',
\ 'implementation', 'namespaceURI', 'nextSibling', 'nodeName', 'nodeType', \ 'implementation', 'namespaceURI', 'nextSibling', 'nodeName', 'nodeType',
@@ -368,9 +388,11 @@ function! javascriptcomplete#CompleteJS(findstart, base)
let xdomelemprop = ['attributes', 'childNodes', 'firstChild', 'lastChild', let xdomelemprop = ['attributes', 'childNodes', 'firstChild', 'lastChild',
\ 'namespaceURI', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', \ 'namespaceURI', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue',
\ 'ownerDocument', 'parentNode', 'prefix', 'previousSibling', 'tagName'] \ 'ownerDocument', 'parentNode', 'prefix', 'previousSibling', 'tagName']
let xdomelemmeth = ['appendChild', 'cloneNode', 'getAttribute', 'getAttributeNode', let xdomelemmeth = ['appendChild', 'addEventListener', 'cloneNode',
\ 'getElementsByTagName', 'hasChildNodes', 'insertBefore', 'normalize', \ 'dispatchEvent', 'getAttribute', 'getAttributeNode',
\ 'removeAttribute', 'removeAttributeNode', 'removeChild', 'replaceChild', \ 'getElementsByTagName', 'hasChildNodes', 'insertBefore',
\ 'normalize', 'removeAttribute', 'removeAttributeNode',
\ 'removeChild', 'removeEventListener', 'replaceChild',
\ 'setAttribute', 'setAttributeNode'] \ 'setAttribute', 'setAttributeNode']
call map(xdomelemmeth, 'v:val."("') call map(xdomelemmeth, 'v:val."("')
let xdomelems = xdomelemprop + xdomelemmeth let xdomelems = xdomelemprop + xdomelemmeth

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,8 @@
" netrwFileHandlers: contains various extension-based file handlers for " netrwFileHandlers: contains various extension-based file handlers for
" netrw's browsers' x command ("eXecute launcher") " netrw's browsers' x command ("eXecute launcher")
" Author: Charles E. Campbell " Author: Charles E. Campbell
" Date: May 03, 2013 " Date: Sep 18, 2020
" Version: 11b ASTRO-ONLY " Version: 11
" Copyright: Copyright (C) 1999-2012 Charles E. Campbell {{{1 " Copyright: Copyright (C) 1999-2012 Charles E. Campbell {{{1
" Permission is hereby granted to use and distribute this code, " Permission is hereby granted to use and distribute this code,
" with or without modifications, provided that this copyright " with or without modifications, provided that this copyright
@@ -20,7 +20,7 @@
if exists("g:loaded_netrwFileHandlers") || &cp if exists("g:loaded_netrwFileHandlers") || &cp
finish finish
endif endif
let g:loaded_netrwFileHandlers= "v11b" let g:loaded_netrwFileHandlers= "v11"
if v:version < 702 if v:version < 702
echohl WarningMsg echohl WarningMsg
echo "***warning*** this version of netrwFileHandlers needs vim 7.2" echo "***warning*** this version of netrwFileHandlers needs vim 7.2"

View File

@@ -1,7 +1,7 @@
" netrwSettings.vim: makes netrw settings simpler " netrwSettings.vim: makes netrw settings simpler
" Date: Nov 09, 2016 " Date: Aug 12, 2021
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
" Version: 16 " Version: 17 ASTRO-ONLY
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1 " Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1
" Permission is hereby granted to use and distribute this code, " Permission is hereby granted to use and distribute this code,
" with or without modifications, provided that this copyright " with or without modifications, provided that this copyright
@@ -19,7 +19,7 @@
if exists("g:loaded_netrwSettings") || &cp if exists("g:loaded_netrwSettings") || &cp
finish finish
endif endif
let g:loaded_netrwSettings = "v16" let g:loaded_netrwSettings = "v17"
if v:version < 700 if v:version < 700
echohl WarningMsg echohl WarningMsg
echo "***warning*** this version of netrwSettings needs vim 7.0" echo "***warning*** this version of netrwSettings needs vim 7.0"
@@ -31,7 +31,7 @@ endif
" NetrwSettings: {{{1 " NetrwSettings: {{{1
fun! netrwSettings#NetrwSettings() fun! netrwSettings#NetrwSettings()
" this call is here largely just to insure that netrw has been loaded " this call is here largely just to insure that netrw has been loaded
call netrw#SavePosn() call netrw#WinPath("")
if !exists("g:loaded_netrw") if !exists("g:loaded_netrw")
echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None
return return

View File

@@ -3,13 +3,13 @@
" Maintainer: Dávid Szabó ( complex857 AT gmail DOT com ) " Maintainer: Dávid Szabó ( complex857 AT gmail DOT com )
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl ) " Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" URL: https://github.com/shawncplus/phpcomplete.vim " URL: https://github.com/shawncplus/phpcomplete.vim
" Last Change: 2018 Oct 10 " Last Change: 2021 Feb 08
" "
" OPTIONS: " OPTIONS:
" "
" let g:phpcomplete_relax_static_constraint = 1/0 [default 0] " let g:phpcomplete_relax_static_constraint = 1/0 [default 0]
" Enables completion for non-static methods when completing for static context (::). " Enables completion for non-static methods when completing for static context (::).
" This generates E_STRICT level warning, but php calls these methods nontheless. " This generates E_STRICT level warning, but php calls these methods nonetheless.
" "
" let g:phpcomplete_complete_for_unknown_classes = 1/0 [default 0] " let g:phpcomplete_complete_for_unknown_classes = 1/0 [default 0]
" Enables completion of variables and functions in "everything under the sun" fashion " Enables completion of variables and functions in "everything under the sun" fashion
@@ -28,7 +28,7 @@
" This option controls the number of characters the user needs to type before " This option controls the number of characters the user needs to type before
" the tags will be searched for namespaces and classes in typed out namespaces in " the tags will be searched for namespaces and classes in typed out namespaces in
" "use ..." context. Setting this to 0 is not recommended because that means the code " "use ..." context. Setting this to 0 is not recommended because that means the code
" have to scan every tag, and vim's taglist() function runs extremly slow with a " have to scan every tag, and vim's taglist() function runs extremely slow with a
" "match everything" pattern. " "match everything" pattern.
" "
" let g:phpcomplete_parse_docblock_comments = 1/0 [default 0] " let g:phpcomplete_parse_docblock_comments = 1/0 [default 0]
@@ -122,7 +122,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
endif endif
endif endif
" If exists b:php_menu it means completion was already constructed we " If exists b:php_menu it means completion was already constructed we
" don't need to do anything more " don't need to do anything more
if exists("b:php_menu") if exists("b:php_menu")
@@ -148,8 +147,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
try try
let eventignore = &eventignore let eventignore = &eventignore
let &eventignore = 'all' let &eventignore = 'all'
let winheight = winheight(0)
let winnr = winnr()
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(getline(0, line('.'))) let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(getline(0, line('.')))
@@ -183,7 +180,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
endif endif
if filereadable(classlocation) if filereadable(classlocation)
let classfile = readfile(classlocation)
let classcontent = '' let classcontent = ''
let classcontent .= "\n".phpcomplete#GetClassContents(classlocation, classname) let classcontent .= "\n".phpcomplete#GetClassContents(classlocation, classname)
let sccontent = split(classcontent, "\n") let sccontent = split(classcontent, "\n")
@@ -217,7 +213,6 @@ function! phpcomplete#CompletePHP(findstart, base) " {{{
return phpcomplete#CompleteGeneral(a:base, current_namespace, imports) return phpcomplete#CompleteGeneral(a:base, current_namespace, imports)
endif endif
finally finally
silent! exec winnr.'resize '.winheight
let &eventignore = eventignore let &eventignore = eventignore
endtry endtry
endfunction endfunction
@@ -268,7 +263,7 @@ function! phpcomplete#CompleteUse(base) " {{{
call add(no_namespace_matches, {'word': namespace_for_class.'\'.tag.name, 'kind': tag.kind, 'menu': tag.filename, 'info': tag.filename }) call add(no_namespace_matches, {'word': namespace_for_class.'\'.tag.name, 'kind': tag.kind, 'menu': tag.filename, 'info': tag.filename })
endif endif
endfor endfor
" if it seems that the tags file have namespace informations we can safely throw " if it seems that the tags file have namespace information we can safely throw
" away namespaceless tag matches since we can be sure they are invalid " away namespaceless tag matches since we can be sure they are invalid
if patched_ctags_detected if patched_ctags_detected
no_namespace_matches = [] no_namespace_matches = []
@@ -810,7 +805,7 @@ function! phpcomplete#CompleteClassName(base, kinds, current_namespace, imports)
endif endif
endfor endfor
" resolve the typed in part with namespaces (if theres a \ in it) " resolve the typed in part with namespaces (if there's a \ in it)
let [tag_match_pattern, namespace_for_class] = phpcomplete#ExpandClassName(a:base, a:current_namespace, a:imports) let [tag_match_pattern, namespace_for_class] = phpcomplete#ExpandClassName(a:base, a:current_namespace, a:imports)
let tags = [] let tags = []
@@ -926,11 +921,11 @@ function! s:getNextCharWithPos(filelines, current_pos) " {{{
endfunction " }}} endfunction " }}}
function! phpcomplete#EvaluateModifiers(modifiers, required_modifiers, prohibited_modifiers) " {{{ function! phpcomplete#EvaluateModifiers(modifiers, required_modifiers, prohibited_modifiers) " {{{
" if theres no modifier, and no modifier is allowed and no modifier is required " if there's no modifier, and no modifier is allowed and no modifier is required
if len(a:modifiers) == 0 && len(a:required_modifiers) == 0 if len(a:modifiers) == 0 && len(a:required_modifiers) == 0
return 1 return 1
else else
" check if every requred modifier is present " check if every required modifier is present
for required_modifier in a:required_modifiers for required_modifier in a:required_modifiers
if index(a:modifiers, required_modifier) == -1 if index(a:modifiers, required_modifier) == -1
return 0 return 0
@@ -1025,7 +1020,7 @@ function! phpcomplete#CompleteUserClass(context, base, sccontent, visibility) "
let c_var = '$'.c_var let c_var = '$'.c_var
endif endif
let c_variables[c_var] = '' let c_variables[c_var] = ''
if g:phpcomplete_parse_docblock_comments && len(get(variables, var_index)) > 0 if g:phpcomplete_parse_docblock_comments && len(get(variables, var_index, '')) > 0
let c_doc[c_var] = phpcomplete#GetDocBlock(a:sccontent, variables[var_index]) let c_doc[c_var] = phpcomplete#GetDocBlock(a:sccontent, variables[var_index])
endif endif
let var_index += 1 let var_index += 1
@@ -1258,7 +1253,7 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
endif endif
endif endif
" save the coma position for later use if theres a "naked" , possibly separating a parameter and it is not in a parented part " save the coma position for later use if there's a "naked" , possibly separating a parameter and it is not in a parented part
if first_coma_break_pos == -1 && current_char == ',' if first_coma_break_pos == -1 && current_char == ','
let first_coma_break_pos = len(instruction) let first_coma_break_pos = len(instruction)
endif endif
@@ -1304,7 +1299,7 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
" there were a "naked" coma in the instruction " there were a "naked" coma in the instruction
if first_coma_break_pos != -1 if first_coma_break_pos != -1
if instruction !~? '^use' && instruction !~? '^class' " use ... statements and class delcarations should not be broken up by comas if instruction !~? '^use' && instruction !~? '^class' " use ... statements and class declarations should not be broken up by comas
let pos = (-1 * first_coma_break_pos) + 1 let pos = (-1 * first_coma_break_pos) + 1
let instruction = instruction[pos :] let instruction = instruction[pos :]
endif endif
@@ -1316,7 +1311,7 @@ function! phpcomplete#GetCurrentInstruction(line_number, col_number, phpbegin) "
" clear everything up until the first ( " clear everything up until the first (
let instruction = substitute(instruction, '^\(if\|while\|foreach\|for\)\s*(\s*', '', '') let instruction = substitute(instruction, '^\(if\|while\|foreach\|for\)\s*(\s*', '', '')
" lets iterate trough the instruction until we can find the pair for the opening ( " lets iterate through the instruction until we can find the pair for the opening (
let i = 0 let i = 0
let depth = 1 let depth = 1
while i < len(instruction) while i < len(instruction)
@@ -1424,7 +1419,7 @@ function! phpcomplete#GetCallChainReturnType(classname_candidate, class_candidat
let parts = split(substitute(type, '^\\', '', ''), '\') let parts = split(substitute(type, '^\\', '', ''), '\')
let class_candidate_namespace = join(parts[0:-2], '\') let class_candidate_namespace = join(parts[0:-2], '\')
let classname_candidate = parts[-1] let classname_candidate = parts[-1]
" check for renamed namepsace in imports " check for renamed namespace in imports
if has_key(classstructure.imports, class_candidate_namespace) if has_key(classstructure.imports, class_candidate_namespace)
let class_candidate_namespace = classstructure.imports[class_candidate_namespace].name let class_candidate_namespace = classstructure.imports[class_candidate_namespace].name
endif endif
@@ -2023,7 +2018,7 @@ function! phpcomplete#GetCachedClassContents(classlocation, class_name) " {{{
if getftime(classstructure.file) != classstructure.mtime if getftime(classstructure.file) != classstructure.mtime
let valid = 0 let valid = 0
" we could break here, but the time required for checking probably worth " we could break here, but the time required for checking probably worth
" the the memory we can free by checking every file in the cached hirearchy " the the memory we can free by checking every file in the cached hierarchy
call phpcomplete#ClearCachedClassContents(classstructure.file) call phpcomplete#ClearCachedClassContents(classstructure.file)
endif endif
endfor endfor
@@ -2037,7 +2032,7 @@ function! phpcomplete#GetCachedClassContents(classlocation, class_name) " {{{
call remove(s:cache_classstructures, cache_key) call remove(s:cache_classstructures, cache_key)
call phpcomplete#ClearCachedClassContents(full_file_path) call phpcomplete#ClearCachedClassContents(full_file_path)
" fall trough for the read from files path " fall through for the read from files path
endif endif
else else
call phpcomplete#ClearCachedClassContents(full_file_path) call phpcomplete#ClearCachedClassContents(full_file_path)
@@ -2082,26 +2077,17 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
" ... " ...
" ] " ]
" "
let full_file_path = fnamemodify(a:file_path, ':p')
let class_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*' let class_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
let cfile = join(a:file_lines, "\n") let full_file_path = fnamemodify(a:file_path, ':p')
let result = [] let result = []
" We use new buffer and (later) normal! because let popup_id = popup_create(a:file_lines, {'hidden': v:true})
" this is the most efficient way. The other way
" is to go through the looong string looking for
" matching {}
" remember the window we started at call win_execute(popup_id, 'call search(''\c\(class\|interface\|trait\)\_s\+'.a:class_name.'\(\>\|$\)'')')
let phpcomplete_original_window = winnr() call win_execute(popup_id, "let cfline = line('.')")
call win_execute(popup_id, "call search('{')")
call win_execute(popup_id, "let endline = line('.')")
silent! below 1new call win_execute(popup_id, 'let content = join(getline('.cfline.', '.endline.'), "\n")')
silent! 0put =cfile
call search('\c\(class\|interface\|trait\)\_s\+'.a:class_name.'\(\>\|$\)')
let cfline = line('.')
call search('{')
let endline = line('.')
let content = join(getline(cfline, endline), "\n")
" Catch extends " Catch extends
if content =~? 'extends' if content =~? 'extends'
let extends_string = matchstr(content, '\(class\|interface\)\_s\+'.a:class_name.'\_.\+extends\_s\+\zs\('.class_name_pattern.'\(,\|\_s\)*\)\+\ze\(extends\|{\)') let extends_string = matchstr(content, '\(class\|interface\)\_s\+'.a:class_name.'\_.\+extends\_s\+\zs\('.class_name_pattern.'\(,\|\_s\)*\)\+\ze\(extends\|{\)')
@@ -2117,14 +2103,16 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
else else
let implemented_interfaces = [] let implemented_interfaces = []
endif endif
call searchpair('{', '', '}', 'W')
let class_closing_bracket_line = line('.') call win_execute(popup_id, 'let [class_closing_bracket_line, class_closing_bracket_col] = searchpairpos("{", "", "}", "W")')
" Include class docblock " Include class docblock
let doc_line = cfline - 1 let doc_line = cfline - 1
if getline(doc_line) =~? '^\s*\*/' call win_execute(popup_id, 'let l = getline('.doc_line.')')
if l =~? '^\s*\*/'
while doc_line != 0 while doc_line != 0
if getline(doc_line) =~? '^\s*/\*\*' call win_execute(popup_id, 'let l = getline('.doc_line.')')
if l =~? '^\s*/\*\*'
let cfline = doc_line let cfline = doc_line
break break
endif endif
@@ -2132,50 +2120,48 @@ function! phpcomplete#GetClassContentsStructure(file_path, file_lines, class_nam
endwhile endwhile
endif endif
let classcontent = join(getline(cfline, class_closing_bracket_line), "\n") call win_execute(popup_id, 'let classcontent = join(getline('.cfline.', '.class_closing_bracket_line.'), "\n")')
let used_traits = [] let used_traits = []
" move back to the line next to the class's definition " move back to the line next to the class's definition
call cursor(endline + 1, 1) call win_execute(popup_id, 'call cursor('.(endline + 1).', 1)')
let keep_searching = 1 let keep_searching = 1
while keep_searching != 0 while keep_searching != 0
" try to grab "use..." keywords " try to grab "use..." keywords
let [lnum, col] = searchpos('\c^\s\+use\s\+'.class_name_pattern, 'cW', class_closing_bracket_line) call win_execute(popup_id, 'let [lnum, col] = searchpos(''\c^\s\+use\s\+'.class_name_pattern.''', "cW", '.class_closing_bracket_line.')')
let syn_name = synIDattr(synID(lnum, col, 0), "name") call win_execute(popup_id, 'let syn_name = synIDattr(synID('.lnum.', '.col.', 0), "name")')
if syn_name =~? 'string\|comment' if syn_name =~? 'string\|comment'
call cursor(lnum + 1, 1) call win_execute(popup_id, 'call cursor('.(lnum + 1).', 1)')
continue continue
endif endif
let trait_line = getline(lnum) call win_execute(popup_id, 'let trait_line = getline('.lnum.')')
if trait_line !~? ';' if trait_line !~? ';'
" try to find the next line containing ';' " try to find the next line containing ';'
let l = lnum let l = lnum
let search_line = trait_line let search_line = trait_line
" add lines from the file until theres no ';' in them " add lines from the file until there's no ';' in them
while search_line !~? ';' && l > 0 while search_line !~? ';' && l > 0
" file lines are reversed so we need to go backwards " file lines are reversed so we need to go backwards
let l += 1 let l += 1
let search_line = getline(l) call win_execute(popup_id, 'let search_line = getline('.l.')')
let trait_line .= ' '.substitute(search_line, '\(^\s\+\|\s\+$\)', '', 'g') let trait_line .= ' '.substitute(search_line, '\(^\s\+\|\s\+$\)', '', 'g')
endwhile endwhile
endif endif
let use_expression = matchstr(trait_line, '^\s*use\s\+\zs.\{-}\ze;') let use_expression = matchstr(trait_line, '^\s*use\s\+\zs.\{-}\ze;')
let use_parts = map(split(use_expression, '\s*,\s*'), 'substitute(v:val, "\\s+", " ", "g")') let use_parts = map(split(use_expression, '\s*,\s*'), 'substitute(v:val, "\\s+", " ", "g")')
let used_traits += map(use_parts, 'substitute(v:val, "\\s", "", "g")') let used_traits += map(use_parts, 'substitute(v:val, "\\s", "", "g")')
call cursor(lnum + 1, 1) call win_execute(popup_id, 'call cursor('.(lnum + 1).', 1)')
if [lnum, col] == [0, 0] if [lnum, col] == [0, 0]
let keep_searching = 0 let keep_searching = 0
endif endif
endwhile endwhile
silent! bw! % call popup_close(popup_id)
let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(a:file_lines[0:cfline]) let [current_namespace, imports] = phpcomplete#GetCurrentNameSpace(a:file_lines[0:cfline])
" go back to original window
exe phpcomplete_original_window.'wincmd w'
call add(result, { call add(result, {
\ 'class': a:class_name, \ 'class': a:class_name,
\ 'content': classcontent, \ 'content': classcontent,
@@ -2532,40 +2518,37 @@ function! phpcomplete#FormatDocBlock(info) " {{{
endif endif
return res return res
endfunction! endfunction
" }}} " }}}
function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
let original_window = winnr() let popup_id = popup_create(a:file_lines, {'hidden': v:true})
call win_execute(popup_id, 'normal! G')
silent! below 1new
silent! 0put =a:file_lines
normal! G
" clear out classes, functions and other blocks " clear out classes, functions and other blocks
while 1 while 1
let block_start_pos = searchpos('\c\(class\|trait\|function\|interface\)\s\+\_.\{-}\zs{', 'Web') call win_execute(popup_id, 'let block_start_pos = searchpos(''\c\(class\|trait\|function\|interface\)\s\+\_.\{-}\zs{'', "Web")')
if block_start_pos == [0, 0] if block_start_pos == [0, 0]
break break
endif endif
let block_end_pos = searchpairpos('{', '', '}\|\%$', 'W', 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"') call win_execute(popup_id, 'let block_end_pos = searchpairpos("{", "", ''}\|\%$'', "W", ''synIDattr(synID(line("."), col("."), 0), "name") =~? "string\\|comment"'')')
let popup_lines = winbufnr(popup_id)->getbufline(1, '$')
if block_end_pos != [0, 0] if block_end_pos != [0, 0]
" end of the block found, just delete it " end of the block found, just delete it
silent! exec block_start_pos[0].','.block_end_pos[0].'d _' call remove(popup_lines, block_start_pos[0] - 1, block_end_pos[0] - 1)
else else
" block pair not found, use block start as beginning and the end " block pair not found, use block start as beginning and the end
" of the buffer instead " of the buffer instead
silent! exec block_start_pos[0].',$d _' call remove(popup_lines, block_start_pos[0] - 1, -1)
endif endif
call popup_settext(popup_id, popup_lines)
endwhile endwhile
normal! G call win_execute(popup_id, 'normal! G', 'silent!')
" grab the remains " grab the remains
let file_lines = reverse(getline(1, line('.') - 1)) call win_execute(popup_id, "let file_lines = reverse(getline(1, line('.')-1))")
call popup_close(popup_id)
silent! bw! %
exe original_window.'wincmd w'
let namespace_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*' let namespace_name_pattern = '[a-zA-Z_\x7f-\xff\\][a-zA-Z_0-9\x7f-\xff\\]*'
let i = 0 let i = 0
@@ -2590,7 +2573,7 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
let search_line = line let search_line = line
let use_line = line let use_line = line
" add lines from the file until theres no ';' in them " add lines from the file until there's no ';' in them
while search_line !~? ';' && l > 0 while search_line !~? ';' && l > 0
" file lines are reversed so we need to go backwards " file lines are reversed so we need to go backwards
let l -= 1 let l -= 1
@@ -2622,7 +2605,7 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
" find kind flags from tags or built in methods for the objects we extracted " find kind flags from tags or built in methods for the objects we extracted
" they can be either classes, interfaces or namespaces, no other thing is importable in php " they can be either classes, interfaces or namespaces, no other thing is importable in php
for [key, import] in items(imports) for [key, import] in items(imports)
" if theres a \ in the name we have it's definitely not a built in thing, look for tags " if there's a \ in the name we have it's definitely not a built in thing, look for tags
if import.name =~ '\\' if import.name =~ '\\'
let patched_ctags_detected = 0 let patched_ctags_detected = 0
let [classname, namespace_for_classes] = phpcomplete#ExpandClassName(import.name, '\', {}) let [classname, namespace_for_classes] = phpcomplete#ExpandClassName(import.name, '\', {})
@@ -2679,10 +2662,10 @@ function! phpcomplete#GetCurrentNameSpace(file_lines) " {{{
let import['kind'] = 'i' let import['kind'] = 'i'
let import['builtin'] = 1 let import['builtin'] = 1
else else
" or can be a tag with exactly matchign name " or can be a tag with exactly matching name
let tags = phpcomplete#GetTaglist('^'.import['name'].'$') let tags = phpcomplete#GetTaglist('^'.import['name'].'$')
for tag in tags for tag in tags
" search for the first matchin namespace, class, interface with no namespace " search for the first matching namespace, class, interface with no namespace
if !has_key(tag, 'namespace') && (tag.kind == 'n' || tag.kind == 'c' || tag.kind == 'i' || tag.kind == 't') if !has_key(tag, 'namespace') && (tag.kind == 'n' || tag.kind == 'c' || tag.kind == 'i' || tag.kind == 't')
call extend(import, tag) call extend(import, tag)
let import['builtin'] = 0 let import['builtin'] = 0
@@ -2900,7 +2883,7 @@ for [ext, data] in items(php_builtin['functions'])
call extend(g:php_builtin_functions, data) call extend(g:php_builtin_functions, data)
endfor endfor
" Built in classs " Built in class
let g:php_builtin_classes = {} let g:php_builtin_classes = {}
for [ext, data] in items(php_builtin['classes']) for [ext, data] in items(php_builtin['classes'])
call extend(g:php_builtin_classes, data) call extend(g:php_builtin_classes, data)
@@ -2918,10 +2901,10 @@ for [ext, data] in items(php_builtin['constants'])
call extend(g:php_constants, data) call extend(g:php_constants, data)
endfor endfor
" When the classname not found or found but the tags dosen't contain that " When the classname not found or found but the tags doesn't contain that
" class we will try to complate any method of any builtin class. To speed up " class we will try to complete any method of any builtin class. To speed up
" that lookup we compile a 'ClassName::MethodName':'info' dictionary from the " that lookup we compile a 'ClassName::MethodName':'info' dictionary from the
" builtin class informations " builtin class information
let g:php_builtin_object_functions = {} let g:php_builtin_object_functions = {}
" When completing for 'everyting imaginable' (no class context, not a " When completing for 'everyting imaginable' (no class context, not a

View File

@@ -1,7 +1,8 @@
"python3complete.vim - Omni Completion for python "python3complete.vim - Omni Completion for python
" Maintainer: Aaron Griffin <aaronmgriffin@gmail.com> " Maintainer: <vacancy>
" Previous Maintainer: Aaron Griffin <aaronmgriffin@gmail.com>
" Version: 0.9 " Version: 0.9
" Last Updated: 18 Jun 2009 (small fix 2015 Sep 14 from Debian) " Last Updated: 2020 Oct 9
" "
" Roland Puntaier: this file contains adaptations for python3 and is parallel to pythoncomplete.vim " Roland Puntaier: this file contains adaptations for python3 and is parallel to pythoncomplete.vim
" "
@@ -83,7 +84,7 @@ function! python3complete#Complete(findstart, base)
break break
endif endif
endwhile endwhile
execute "py3 vimpy3complete('" . cword . "', '" . a:base . "')" execute "py3 vimpy3complete('" . escape(cword, "'") . "', '" . escape(a:base, "'") . "')"
return g:python3complete_completions return g:python3complete_completions
endif endif
endfunction endfunction
@@ -172,7 +173,7 @@ class Completer(object):
pass pass
if len(arg_text) == 0: if len(arg_text) == 0:
# The doc string sometimes contains the function signature # The doc string sometimes contains the function signature
# this works for alot of C modules that are part of the # this works for a lot of C modules that are part of the
# standard library # standard library
doc = func_obj.__doc__ doc = func_obj.__doc__
if doc: if doc:

View File

@@ -1,7 +1,8 @@
"pythoncomplete.vim - Omni Completion for python "pythoncomplete.vim - Omni Completion for python
" Maintainer: Aaron Griffin <aaronmgriffin@gmail.com> " Maintainer: <vacancy>
" Previous Maintainer: Aaron Griffin <aaronmgriffin@gmail.com>
" Version: 0.9 " Version: 0.9
" Last Updated: 18 Jun 2009 " Last Updated: 2020 Oct 9
" "
" Changes " Changes
" TODO: " TODO:
@@ -81,7 +82,7 @@ function! pythoncomplete#Complete(findstart, base)
break break
endif endif
endwhile endwhile
execute "python vimcomplete('" . cword . "', '" . a:base . "')" execute "python vimcomplete('" . escape(cword, "'") . "', '" . escape(a:base, "'") . "')"
return g:pythoncomplete_completions return g:pythoncomplete_completions
endif endif
endfunction endfunction
@@ -190,7 +191,7 @@ class Completer(object):
pass pass
if len(arg_text) == 0: if len(arg_text) == 0:
# The doc string sometimes contains the function signature # The doc string sometimes contains the function signature
# this works for alot of C modules that are part of the # this works for a lot of C modules that are part of the
# standard library # standard library
doc = func_obj.__doc__ doc = func_obj.__doc__
if doc: if doc:

View File

@@ -3,7 +3,7 @@
" Maintainer: Mark Guzman <segfault@hasno.info> " Maintainer: Mark Guzman <segfault@hasno.info>
" URL: https://github.com/vim-ruby/vim-ruby " URL: https://github.com/vim-ruby/vim-ruby
" Release Coordinator: Doug Kearns <dougkearns@gmail.com> " Release Coordinator: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Feb 25 " Last Change: 2020 Apr 12
" ---------------------------------------------------------------------------- " ----------------------------------------------------------------------------
" "
" Ruby IRB/Complete author: Keiju ISHITSUKA(keiju@ishitsuka.com) " Ruby IRB/Complete author: Keiju ISHITSUKA(keiju@ishitsuka.com)
@@ -501,13 +501,8 @@ class VimRubyCompletion
return if rails_base == nil return if rails_base == nil
$:.push rails_base unless $:.index( rails_base ) $:.push rails_base unless $:.index( rails_base )
rails_config = rails_base + "config/" bootfile = rails_base + "config/boot.rb"
rails_lib = rails_base + "lib/" envfile = rails_base + "config/environment.rb"
$:.push rails_config unless $:.index( rails_config )
$:.push rails_lib unless $:.index( rails_lib )
bootfile = rails_config + "boot.rb"
envfile = rails_config + "environment.rb"
if File.exists?( bootfile ) && File.exists?( envfile ) if File.exists?( bootfile ) && File.exists?( envfile )
begin begin
require bootfile require bootfile

View File

@@ -17,7 +17,7 @@
" and complete it. " and complete it.
" "
" Version 16.0 (Dec 2015) " Version 16.0 (Dec 2015)
" - NF: If reseting the cache and table, procedure or view completion " - NF: If resetting the cache and table, procedure or view completion
" had been used via dbext, have dbext delete or recreate the " had been used via dbext, have dbext delete or recreate the
" dictionary so that new objects are picked up for the " dictionary so that new objects are picked up for the
" next completion. " next completion.
@@ -554,7 +554,7 @@ function! sqlcomplete#PreCacheSyntax(...)
let syn_group_arr = g:omni_sql_precache_syntax_groups let syn_group_arr = g:omni_sql_precache_syntax_groups
endif endif
" For each group specified in the list, precache all " For each group specified in the list, precache all
" the sytnax items. " the syntax items.
if !empty(syn_group_arr) if !empty(syn_group_arr)
for group_name in syn_group_arr for group_name in syn_group_arr
let syn_items = extend( syn_items, s:SQLCGetSyntaxList(group_name) ) let syn_items = extend( syn_items, s:SQLCGetSyntaxList(group_name) )
@@ -577,7 +577,7 @@ function! sqlcomplete#ResetCacheSyntax(...)
let syn_group_arr = g:omni_sql_precache_syntax_groups let syn_group_arr = g:omni_sql_precache_syntax_groups
endif endif
" For each group specified in the list, precache all " For each group specified in the list, precache all
" the sytnax items. " the syntax items.
if !empty(syn_group_arr) if !empty(syn_group_arr)
for group_name in syn_group_arr for group_name in syn_group_arr
let list_idx = index(s:syn_list, group_name, 0, &ignorecase) let list_idx = index(s:syn_list, group_name, 0, &ignorecase)
@@ -617,7 +617,7 @@ function! sqlcomplete#DrillIntoTable()
else else
" If the popup is not visible, simple perform the normal " If the popup is not visible, simple perform the normal
" key behaviour. " key behaviour.
" Must use exec since they key must be preceeded by "\" " Must use exec since the key must be preceded by "\"
" or feedkeys will simply push each character of the string " or feedkeys will simply push each character of the string
" rather than the "key press". " rather than the "key press".
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")' exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_right.'", "n")'
@@ -634,7 +634,7 @@ function! sqlcomplete#DrillOutOfColumns()
else else
" If the popup is not visible, simple perform the normal " If the popup is not visible, simple perform the normal
" key behaviour. " key behaviour.
" Must use exec since they key must be preceeded by "\" " Must use exec since the key must be preceded by "\"
" or feedkeys will simply push each character of the string " or feedkeys will simply push each character of the string
" rather than the "key press". " rather than the "key press".
exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")' exec 'call feedkeys("\'.g:ftplugin_sql_omni_key_left.'", "n")'
@@ -843,7 +843,7 @@ function! s:SQLCGetColumns(table_name, list_type)
let curline = line(".") let curline = line(".")
let curcol = col(".") let curcol = col(".")
" Do not let searchs wrap " Do not let searches wrap
setlocal nowrapscan setlocal nowrapscan
" If . was entered, look at the word just before the . " If . was entered, look at the word just before the .
" We are looking for something like this: " We are looking for something like this:
@@ -863,7 +863,7 @@ function! s:SQLCGetColumns(table_name, list_type)
" Search forward until one of the following: " Search forward until one of the following:
" 1. Another select/update/delete statement " 1. Another select/update/delete statement
" 2. A ; at the end of a line (the delimiter) " 2. A ; at the end of a line (the delimiter)
" 3. The end of the file (incase no delimiter) " 3. The end of the file (in case no delimiter)
" Yank the visually selected text into the "y register. " Yank the visually selected text into the "y register.
exec 'silent! normal! vl/\c\(\<select\>\|\<update\>\|\<delete\>\|;\s*$\|\%$\)'."\n".'"yy' exec 'silent! normal! vl/\c\(\<select\>\|\<update\>\|\<delete\>\|;\s*$\|\%$\)'."\n".'"yy'

View File

@@ -1,12 +1,20 @@
" Vim completion script " Vim completion script
" Language: All languages, uses existing syntax highlighting rules " Language: All languages, uses existing syntax highlighting rules
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com> " Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Version: 13.0 " Version: 15.0
" Last Change: 2019 Aug 08 " Last Change: 2021 Apr 27
" Usage: For detailed help, ":help ft-syntax-omni" " Usage: For detailed help, ":help ft-syntax-omni"
" History " History
" "
" Version 15.0
" - SyntaxComplete ignored all buffer specific overrides, always used global
" https://github.com/vim/vim/issues/8153
"
" Version 14.0
" - Fixed issue with single quotes and is_keyword
" https://github.com/vim/vim/issues/7463
"
" Version 13.0 " Version 13.0
" - Extended the option omni_syntax_group_include_{filetype} " - Extended the option omni_syntax_group_include_{filetype}
" to accept a comma separated list of regex's rather than " to accept a comma separated list of regex's rather than
@@ -38,7 +46,7 @@
" let g:omni_syntax_use_single_byte = 1 " let g:omni_syntax_use_single_byte = 1
" - This by default will only allow single byte ASCII " - This by default will only allow single byte ASCII
" characters to be added and an additional check to ensure " characters to be added and an additional check to ensure
" the charater is printable (see documentation for isprint). " the character is printable (see documentation for isprint).
" "
" Version 9.0 " Version 9.0
" - Add the check for cpo. " - Add the check for cpo.
@@ -86,7 +94,7 @@ endif
if exists('g:loaded_syntax_completion') if exists('g:loaded_syntax_completion')
finish finish
endif endif
let g:loaded_syntax_completion = 130 let g:loaded_syntax_completion = 150
" Turn on support for line continuations when creating the script " Turn on support for line continuations when creating the script
let s:cpo_save = &cpo let s:cpo_save = &cpo
@@ -141,14 +149,10 @@ let s:prepended = ''
" This function is used for the 'omnifunc' option. " This function is used for the 'omnifunc' option.
function! syntaxcomplete#Complete(findstart, base) function! syntaxcomplete#Complete(findstart, base)
" Only display items in the completion window that are at least " Allow user to override ignorecase per buffer
" this many characters in length let l:omni_syntax_ignorecase = g:omni_syntax_ignorecase
if !exists('b:omni_syntax_ignorecase') if exists('b:omni_syntax_ignorecase')
if exists('g:omni_syntax_ignorecase') let l:omni_syntax_ignorecase = b:omni_syntax_ignorecase
let b:omni_syntax_ignorecase = g:omni_syntax_ignorecase
else
let b:omni_syntax_ignorecase = &ignorecase
endif
endif endif
if a:findstart if a:findstart
@@ -179,7 +183,7 @@ function! syntaxcomplete#Complete(findstart, base)
endif endif
" let base = s:prepended . a:base " let base = s:prepended . a:base
let base = s:prepended let base = substitute(s:prepended, "'", "''", 'g')
let filetype = substitute(&filetype, '\.', '_', 'g') let filetype = substitute(&filetype, '\.', '_', 'g')
let list_idx = index(s:cache_name, filetype, 0, &ignorecase) let list_idx = index(s:cache_name, filetype, 0, &ignorecase)
@@ -195,13 +199,13 @@ function! syntaxcomplete#Complete(findstart, base)
if base != '' if base != ''
" let compstr = join(compl_list, ' ') " let compstr = join(compl_list, ' ')
" let expr = (b:omni_syntax_ignorecase==0?'\C':'').'\<\%('.base.'\)\@!\w\+\s*' " let expr = (l:omni_syntax_ignorecase==0?'\C':'').'\<\%('.base.'\)\@!\w\+\s*'
" let compstr = substitute(compstr, expr, '', 'g') " let compstr = substitute(compstr, expr, '', 'g')
" let compl_list = split(compstr, '\s\+') " let compl_list = split(compstr, '\s\+')
" Filter the list based on the first few characters the user " Filter the list based on the first few characters the user
" entered " entered
let expr = 'v:val '.(g:omni_syntax_ignorecase==1?'=~?':'=~#')." '^".escape(base, '\\/.*$^~[]').".*'" let expr = 'v:val '.(l:omni_syntax_ignorecase==1?'=~?':'=~#')." '^".escape(base, '\\/.*$^~[]').".*'"
let compl_list = filter(deepcopy(compl_list), expr) let compl_list = filter(deepcopy(compl_list), expr)
endif endif
@@ -222,6 +226,26 @@ function! syntaxcomplete#OmniSyntaxList(...)
endif endif
endfunc endfunc
function! syntaxcomplete#OmniSyntaxClearCache()
let s:cache_name = []
let s:cache_list = []
endfunction
" To retrieve all syntax items regardless of syntax group:
" echo OmniSyntaxList( [] )
"
" To retrieve only the syntax items for the sqlOperator syntax group:
" echo OmniSyntaxList( ['sqlOperator'] )
"
" To retrieve all syntax items for both the sqlOperator and sqlType groups:
" echo OmniSyntaxList( ['sqlOperator', 'sqlType'] )
"
" A regular expression can also be used:
" echo OmniSyntaxList( ['sql\w\+'] )
"
" From within a plugin, you would typically assign the output to a List: >
" let myKeywords = []
" let myKeywords = OmniSyntaxList( ['sqlKeyword'] )
function! OmniSyntaxList(...) function! OmniSyntaxList(...)
let list_parms = [] let list_parms = []
if a:0 > 0 if a:0 > 0
@@ -239,37 +263,25 @@ function! OmniSyntaxList(...)
" let use_dictionary = a:1 " let use_dictionary = a:1
" endif " endif
" Only display items in the completion window that are at least
" this many characters in length
if !exists('b:omni_syntax_use_iskeyword')
if exists('g:omni_syntax_use_iskeyword')
let b:omni_syntax_use_iskeyword = g:omni_syntax_use_iskeyword
else
let b:omni_syntax_use_iskeyword = 1
endif
endif
" Only display items in the completion window that are at least
" this many characters in length
if !exists('b:omni_syntax_minimum_length')
if exists('g:omni_syntax_minimum_length')
let b:omni_syntax_minimum_length = g:omni_syntax_minimum_length
else
let b:omni_syntax_minimum_length = 0
endif
endif
let saveL = @l let saveL = @l
let filetype = substitute(&filetype, '\.', '_', 'g') let filetype = substitute(&filetype, '\.', '_', 'g')
if empty(list_parms) if empty(list_parms)
" Allow user to override per buffer
if exists('g:omni_syntax_group_include_'.filetype)
let l:omni_syntax_group_include_{filetype} = g:omni_syntax_group_include_{filetype}
endif
if exists('b:omni_syntax_group_include_'.filetype)
let l:omni_syntax_group_include_{filetype} = b:omni_syntax_group_include_{filetype}
endif
" Default the include group to include the requested syntax group " Default the include group to include the requested syntax group
let syntax_group_include_{filetype} = '' let syntax_group_include_{filetype} = ''
" Check if there are any overrides specified for this filetype " Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_include_'.filetype) if exists('l:omni_syntax_group_include_'.filetype)
let syntax_group_include_{filetype} = let syntax_group_include_{filetype} =
\ substitute( g:omni_syntax_group_include_{filetype},'\s\+','','g') \ substitute( l:omni_syntax_group_include_{filetype},'\s\+','','g')
let list_parms = split(g:omni_syntax_group_include_{filetype}, ',') let list_parms = split(l:omni_syntax_group_include_{filetype}, ',')
if syntax_group_include_{filetype} =~ '\w' if syntax_group_include_{filetype} =~ '\w'
let syntax_group_include_{filetype} = let syntax_group_include_{filetype} =
\ substitute( syntax_group_include_{filetype}, \ substitute( syntax_group_include_{filetype},
@@ -324,11 +336,20 @@ function! OmniSyntaxList(...)
else else
" Default the exclude group to nothing " Default the exclude group to nothing
let syntax_group_exclude_{filetype} = '' let syntax_group_exclude_{filetype} = ''
" Check if there are any overrides specified for this filetype
" Allow user to override per buffer
if exists('g:omni_syntax_group_exclude_'.filetype) if exists('g:omni_syntax_group_exclude_'.filetype)
let l:omni_syntax_group_exclude_{filetype} = g:omni_syntax_group_exclude_{filetype}
endif
if exists('b:omni_syntax_group_exclude_'.filetype)
let l:omni_syntax_group_exclude_{filetype} = b:omni_syntax_group_exclude_{filetype}
endif
" Check if there are any overrides specified for this filetype
if exists('l:omni_syntax_group_exclude_'.filetype)
let syntax_group_exclude_{filetype} = let syntax_group_exclude_{filetype} =
\ substitute( g:omni_syntax_group_exclude_{filetype},'\s\+','','g') \ substitute( l:omni_syntax_group_exclude_{filetype},'\s\+','','g')
let list_exclude_groups = split(g:omni_syntax_group_exclude_{filetype}, ',') let list_exclude_groups = split(l:omni_syntax_group_exclude_{filetype}, ',')
if syntax_group_exclude_{filetype} =~ '\w' if syntax_group_exclude_{filetype} =~ '\w'
let syntax_group_exclude_{filetype} = let syntax_group_exclude_{filetype} =
\ substitute( syntax_group_exclude_{filetype}, \ substitute( syntax_group_exclude_{filetype},
@@ -524,6 +545,30 @@ endfunction
function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full ) function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
" Allow user to override iskeyword per buffer
let l:omni_syntax_use_iskeyword = g:omni_syntax_use_iskeyword
if exists('b:omni_syntax_use_iskeyword')
let l:omni_syntax_use_iskeyword = b:omni_syntax_use_iskeyword
endif
" Allow user to override iskeyword_numeric per buffer
let l:omni_syntax_use_iskeyword_numeric = g:omni_syntax_use_iskeyword_numeric
if exists('b:omni_syntax_use_iskeyword_numeric')
let l:omni_syntax_use_iskeyword_numeric = b:omni_syntax_use_iskeyword_numeric
endif
" Allow user to override iskeyword_numeric per buffer
let l:omni_syntax_use_single_byte = g:omni_syntax_use_single_byte
if exists('b:omni_syntax_use_single_byte')
let l:omni_syntax_use_single_byte = b:omni_syntax_use_single_byte
endif
" Allow user to override minimum_length per buffer
let l:omni_syntax_minimum_length = g:omni_syntax_minimum_length
if exists('b:omni_syntax_minimum_length')
let l:omni_syntax_minimum_length = b:omni_syntax_minimum_length
endif
let syn_list = "" let syn_list = ""
" From the full syntax listing, strip out the portion for the " From the full syntax listing, strip out the portion for the
@@ -548,7 +593,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
" let syn_list = substitute( @l, '^.*xxx\s*\%(contained\s*\)\?', "", '' ) " let syn_list = substitute( @l, '^.*xxx\s*\%(contained\s*\)\?', "", '' )
" let syn_list = substitute( @l, '^.*xxx\s*', "", '' ) " let syn_list = substitute( @l, '^.*xxx\s*', "", '' )
" We only want the words for the lines begining with " We only want the words for the lines beginning with
" containedin, but there could be other items. " containedin, but there could be other items.
" Tried to remove all lines that do not begin with contained " Tried to remove all lines that do not begin with contained
@@ -642,14 +687,23 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
\ syn_list, '\%(^\|\n\)\@<=\s*\(@\w\+\)' \ syn_list, '\%(^\|\n\)\@<=\s*\(@\w\+\)'
\ , "", 'g' \ , "", 'g'
\ ) \ )
if b:omni_syntax_use_iskeyword == 0 if l:omni_syntax_use_iskeyword == 0
" There are a number of items which have non-word characters in " There are a number of items which have non-word characters in
" them, *'T_F1'*. vim.vim is one such file. " them, *'T_F1'*. vim.vim is one such file.
" This will replace non-word characters with spaces. " This will replace non-word characters with spaces.
" setlocal filetype=forth
" let g:omni_syntax_use_iskeyword = 1
" let g:omni_syntax_use_iskeyword_numeric = 1
" You will see entries like
" #>>
" (.local)
" These were found doing a grep in vim82\syntax
" grep iskeyword *
" forth.vim:setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
let syn_list = substitute( syn_list, '[^0-9A-Za-z_ ]', ' ', 'g' ) let syn_list = substitute( syn_list, '[^0-9A-Za-z_ ]', ' ', 'g' )
else else
if g:omni_syntax_use_iskeyword_numeric == 1 if l:omni_syntax_use_iskeyword_numeric == 1
" iskeyword can contain value like this " iskeyword can contain value like this
" 38,42,43,45,47-58,60-62,64-90,97-122,_,+,-,*,/,%,<,=,>,:,$,?,!,@-@,94 " 38,42,43,45,47-58,60-62,64-90,97-122,_,+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
" Numeric values convert to their ASCII equivalent using the " Numeric values convert to their ASCII equivalent using the
@@ -669,7 +723,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
" cycle through each character within the range " cycle through each character within the range
let [b:start, b:end] = split(item, '-') let [b:start, b:end] = split(item, '-')
for range_item in range( b:start, b:end ) for range_item in range( b:start, b:end )
if range_item <= 127 || g:omni_syntax_use_single_byte == 0 if range_item <= 127 || l:omni_syntax_use_single_byte == 0
if nr2char(range_item) =~ '\p' if nr2char(range_item) =~ '\p'
let accepted_chars = accepted_chars . nr2char(range_item) let accepted_chars = accepted_chars . nr2char(range_item)
endif endif
@@ -677,13 +731,13 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
endfor endfor
elseif item =~ '^\d\+$' elseif item =~ '^\d\+$'
" Only numeric, translate to a character " Only numeric, translate to a character
if item < 127 || g:omni_syntax_use_single_byte == 0 if item < 127 || l:omni_syntax_use_single_byte == 0
if nr2char(item) =~ '\p' if nr2char(item) =~ '\p'
let accepted_chars = accepted_chars . nr2char(item) let accepted_chars = accepted_chars . nr2char(item)
endif endif
endif endif
else else
if char2nr(item) < 127 || g:omni_syntax_use_single_byte == 0 if char2nr(item) < 127 || l:omni_syntax_use_single_byte == 0
if item =~ '\p' if item =~ '\p'
let accepted_chars = accepted_chars . item let accepted_chars = accepted_chars . item
endif endif
@@ -719,9 +773,9 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
endif endif
endif endif
if b:omni_syntax_minimum_length > 0 if l:omni_syntax_minimum_length > 0
" If the user specified a minimum length, enforce it " If the user specified a minimum length, enforce it
let syn_list = substitute(' '.syn_list.' ', ' \S\{,'.b:omni_syntax_minimum_length.'}\ze ', ' ', 'g') let syn_list = substitute(' '.syn_list.' ', ' \S\{,'.l:omni_syntax_minimum_length.'}\ze ', ' ', 'g')
endif endif
else else
let syn_list = '' let syn_list = ''
@@ -751,5 +805,6 @@ function! OmniSyntaxShowChars(spec)
endfor endfor
return join(map(result, 'nr2char(v:val)'), ', ') return join(map(result, 'nr2char(v:val)'), ', ')
endfunction endfunction
let &cpo = s:cpo_save let &cpo = s:cpo_save
unlet s:cpo_save unlet s:cpo_save

View File

@@ -163,7 +163,7 @@ fun! tar#Browse(tarfile)
" call Decho("1: exe silent r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ") " call Decho("1: exe silent r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - " exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
elseif tarfile =~# '\.\(tgz\)$' || tarfile =~# '\.\(tbz\)$' || tarfile =~# '\.\(txz\)$' elseif tarfile =~# '\.\(tgz\)$' || tarfile =~# '\.\(tbz\)$' || tarfile =~# '\.\(txz\)$' || tarfile =~# '\.\(tzs\)$'
if has("unix") && executable("file") if has("unix") && executable("file")
let filekind= system("file ".shellescape(tarfile,1)) =~ "bzip2" let filekind= system("file ".shellescape(tarfile,1)) =~ "bzip2"
else else
@@ -174,6 +174,8 @@ fun! tar#Browse(tarfile)
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - " exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
elseif filekind =~ "XZ" elseif filekind =~ "XZ"
exe "sil! r! xz -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - " exe "sil! r! xz -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
elseif filekind =~ "Zstandard"
exe "sil! r! zstd --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
else else
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - " exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
endif endif
@@ -190,6 +192,8 @@ fun! tar#Browse(tarfile)
elseif tarfile =~# '\.\(xz\|txz\)$' elseif tarfile =~# '\.\(xz\|txz\)$'
" call Decho("3: exe silent r! xz --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ") " call Decho("3: exe silent r! xz --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "sil! r! xz --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - " exe "sil! r! xz --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
elseif tarfile =~# '\.\(zst\|tzs\)$'
exe "sil! r! zstd --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
else else
if tarfile =~ '^\s*-' if tarfile =~ '^\s*-'
" A file name starting with a dash is taken as an option. Prepend ./ to avoid that. " A file name starting with a dash is taken as an option. Prepend ./ to avoid that.
@@ -302,6 +306,9 @@ fun! tar#Read(fname,mode)
elseif fname =~ '\.xz$' && executable("xzcat") elseif fname =~ '\.xz$' && executable("xzcat")
let decmp= "|xzcat" let decmp= "|xzcat"
let doro = 1 let doro = 1
elseif fname =~ '\.zst$' && executable("zstdcat")
let decmp= "|zstdcat"
let doro = 1
else else
let decmp="" let decmp=""
let doro = 0 let doro = 0
@@ -331,6 +338,8 @@ fun! tar#Read(fname,mode)
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
elseif filekind =~ "XZ" elseif filekind =~ "XZ"
exe "sil! r! xz -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp exe "sil! r! xz -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
elseif filekind =~ "Zstandard"
exe "sil! r! zstd --decompress --stdout -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
else else
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
endif endif
@@ -452,6 +461,10 @@ fun! tar#Write(fname)
let tarfile = substitute(tarfile,'\.xz','','e') let tarfile = substitute(tarfile,'\.xz','','e')
let compress= "xz -- ".shellescape(tarfile,0) let compress= "xz -- ".shellescape(tarfile,0)
" call Decho("compress<".compress.">") " call Decho("compress<".compress.">")
elseif tarfile =~# '\.zst'
call system("zstd --decompress -- ".shellescape(tarfile,0))
let tarfile = substitute(tarfile,'\.zst','','e')
let compress= "zstd -- ".shellescape(tarfile,0)
elseif tarfile =~# '\.lzma' elseif tarfile =~# '\.lzma'
call system("lzma -d -- ".shellescape(tarfile,0)) call system("lzma -d -- ".shellescape(tarfile,0))
let tarfile = substitute(tarfile,'\.lzma','','e') let tarfile = substitute(tarfile,'\.lzma','','e')
@@ -676,6 +689,28 @@ fun! tar#Extract()
else else
echo "***note*** successfully extracted ".fname echo "***note*** successfully extracted ".fname
endif endif
elseif filereadable(tarbase.".tzs")
let extractcmd= substitute(extractcmd,"-","--zstd","")
" call Decho("system(".extractcmd." ".shellescape(tarbase).".tzs ".shellescape(fname).")")
call system(extractcmd." ".shellescape(tarbase).".txz ".shellescape(fname))
if v:shell_error != 0
echohl Error | echo "***error*** ".extractcmd." ".tarbase.".tzs ".fname.": failed!" | echohl NONE
" call Decho("***error*** ".extractcmd." ".tarbase.".tzs ".fname.": failed!")
else
echo "***note*** successfully extracted ".fname
endif
elseif filereadable(tarbase.".tar.zst")
let extractcmd= substitute(extractcmd,"-","--zstd","")
" call Decho("system(".extractcmd." ".shellescape(tarbase).".tar.zst ".shellescape(fname).")")
call system(extractcmd." ".shellescape(tarbase).".tar.xz ".shellescape(fname))
if v:shell_error != 0
echohl Error | echo "***error*** ".extractcmd." ".tarbase.".tar.zst ".fname.": failed!" | echohl NONE
" call Decho("***error*** ".extractcmd." ".tarbase.".tar.zst ".fname.": failed!")
else
echo "***note*** successfully extracted ".fname
endif
endif endif
" restore option " restore option
@@ -743,7 +778,7 @@ fun! tar#Vimuntar(...)
elseif executable("gzip") elseif executable("gzip")
silent exe "!gzip -d ".shellescape(tartail) silent exe "!gzip -d ".shellescape(tartail)
else else
echoerr "unable to decompress<".tartail."> on this sytem" echoerr "unable to decompress<".tartail."> on this system"
if simplify(curdir) != simplify(tarhome) if simplify(curdir) != simplify(tarhome)
" remove decompressed tarball, restore directory " remove decompressed tarball, restore directory
" call Decho("delete(".tartail.".tar)") " call Decho("delete(".tartail.".tar)")

View File

@@ -693,7 +693,7 @@ func! tohtml#GetUserSettings() "{{{
let user_settings = {} let user_settings = {}
" Define the correct option if the old option name exists and we haven't " Define the correct option if the old option name exists and we haven't
" already defined the correct one. Maybe I'll put out a warnig message about " already defined the correct one. Maybe I'll put out a warning message about
" this sometime and remove the old option entirely at some even later time, " this sometime and remove the old option entirely at some even later time,
" but for now just silently accept the old option. " but for now just silently accept the old option.
if exists('g:use_xhtml') && !exists("g:html_use_xhtml") if exists('g:use_xhtml') && !exists("g:html_use_xhtml")

View File

@@ -199,7 +199,7 @@ function! xmlcomplete#CompleteTags(findstart, base)
" 1. Events attributes " 1. Events attributes
if context =~ '\s' if context =~ '\s'
" If attr contains =\s*[\"'] we catched value of attribute " If attr contains =\s*[\"'] we catch value of attribute
if attr =~ "=\s*[\"']" || attr =~ "=\s*$" if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
" Let do attribute specific completion " Let do attribute specific completion
let attrname = matchstr(attr, '.*\ze\s*=') let attrname = matchstr(attr, '.*\ze\s*=')

View File

@@ -1,7 +1,7 @@
" zip.vim: Handles browsing zipfiles " zip.vim: Handles browsing zipfiles
" AUTOLOAD PORTION " AUTOLOAD PORTION
" Date: Jan 07, 2020 " Date: Nov 08, 2021
" Version: 30 " Version: 32
" Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Maintainer: Charles E Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
" License: Vim License (see vim's :help license) " License: Vim License (see vim's :help license)
" Copyright: Copyright (C) 2005-2019 Charles E. Campbell {{{1 " Copyright: Copyright (C) 2005-2019 Charles E. Campbell {{{1
@@ -20,7 +20,7 @@
if &cp || exists("g:loaded_zip") if &cp || exists("g:loaded_zip")
finish finish
endif endif
let g:loaded_zip= "v30" let g:loaded_zip= "v32"
if v:version < 702 if v:version < 702
echohl WarningMsg echohl WarningMsg
echo "***warning*** this version of zip needs vim 7.2 or later" echo "***warning*** this version of zip needs vim 7.2 or later"
@@ -65,7 +65,7 @@ endif
" zip#Browse: {{{2 " zip#Browse: {{{2
fun! zip#Browse(zipfile) fun! zip#Browse(zipfile)
" call Dfunc("zip#Browse(zipfile<".a:zipfile.">)") " call Dfunc("zip#Browse(zipfile<".a:zipfile.">)")
" sanity check: ensure that the zipfile has "PK" as its first two letters " sanity check: insure that the zipfile has "PK" as its first two letters
" (zipped files have a leading PK as a "magic cookie") " (zipped files have a leading PK as a "magic cookie")
if !filereadable(a:zipfile) || readfile(a:zipfile, "", 1)[0] !~ '^PK' if !filereadable(a:zipfile) || readfile(a:zipfile, "", 1)[0] !~ '^PK'
exe "noswapfile noautocmd noswapfile e ".fnameescape(a:zipfile) exe "noswapfile noautocmd noswapfile e ".fnameescape(a:zipfile)
@@ -81,7 +81,7 @@ fun! zip#Browse(zipfile)
" sanity checks " sanity checks
if !exists("*fnameescape") if !exists("*fnameescape")
if &verbose > 1 if &verbose > 1
echoerr "the zip plugin is not available (your vim doens't support fnameescape())" echoerr "the zip plugin is not available (your vim doesn't support fnameescape())"
endif endif
return return
endif endif
@@ -115,7 +115,13 @@ fun! zip#Browse(zipfile)
setlocal bufhidden=hide setlocal bufhidden=hide
setlocal nobuflisted setlocal nobuflisted
setlocal nowrap setlocal nowrap
set ft=tar
" Oct 12, 2021: need to re-use Bram's syntax/tar.vim.
" Setting the filetype to zip doesn't do anything (currently),
" but it is perhaps less confusing to curious perusers who do
" a :echo &ft
setf zip
run! syntax/tar.vim
" give header " give header
call append(0, ['" zip.vim version '.g:loaded_zip, call append(0, ['" zip.vim version '.g:loaded_zip,
@@ -187,8 +193,8 @@ fun! s:ZipBrowseSelect()
wincmd _ wincmd _
endif endif
let s:zipfile_{winnr()}= curfile let s:zipfile_{winnr()}= curfile
" call Decho("exe e ".fnameescape("zipfile:".zipfile.'::'.fname)) " call Decho("exe e ".fnameescape("zipfile://".zipfile.'::'.fname))
exe "noswapfile e ".fnameescape("zipfile:".zipfile.'::'.fname) exe "noswapfile e ".fnameescape("zipfile://".zipfile.'::'.fname)
filetype detect filetype detect
let &report= repkeep let &report= repkeep
@@ -203,11 +209,11 @@ fun! zip#Read(fname,mode)
set report=10 set report=10
if has("unix") if has("unix")
let zipfile = substitute(a:fname,'zipfile:\(.\{-}\)::[^\\].*$','\1','') let zipfile = substitute(a:fname,'zipfile://\(.\{-}\)::[^\\].*$','\1','')
let fname = substitute(a:fname,'zipfile:.\{-}::\([^\\].*\)$','\1','') let fname = substitute(a:fname,'zipfile://.\{-}::\([^\\].*\)$','\1','')
else else
let zipfile = substitute(a:fname,'^.\{-}zipfile:\(.\{-}\)::[^\\].*$','\1','') let zipfile = substitute(a:fname,'^.\{-}zipfile://\(.\{-}\)::[^\\].*$','\1','')
let fname = substitute(a:fname,'^.\{-}zipfile:.\{-}::\([^\\].*\)$','\1','') let fname = substitute(a:fname,'^.\{-}zipfile://.\{-}::\([^\\].*\)$','\1','')
let fname = substitute(fname, '[', '[[]', 'g') let fname = substitute(fname, '[', '[[]', 'g')
endif endif
" call Decho("zipfile<".zipfile.">") " call Decho("zipfile<".zipfile.">")
@@ -224,7 +230,7 @@ fun! zip#Read(fname,mode)
" the following code does much the same thing as " the following code does much the same thing as
" exe "keepj sil! r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1) " exe "keepj sil! r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fnameescape(fname),1)
" but allows zipfile:... entries in quickfix lists " but allows zipfile://... entries in quickfix lists
let temp = tempname() let temp = tempname()
" call Decho("using temp file<".temp.">") " call Decho("using temp file<".temp.">")
let fn = expand('%:p') let fn = expand('%:p')
@@ -296,11 +302,11 @@ fun! zip#Write(fname)
" call Decho("current directory now: ".getcwd()) " call Decho("current directory now: ".getcwd())
if has("unix") if has("unix")
let zipfile = substitute(a:fname,'zipfile:\(.\{-}\)::[^\\].*$','\1','') let zipfile = substitute(a:fname,'zipfile://\(.\{-}\)::[^\\].*$','\1','')
let fname = substitute(a:fname,'zipfile:.\{-}::\([^\\].*\)$','\1','') let fname = substitute(a:fname,'zipfile://.\{-}::\([^\\].*\)$','\1','')
else else
let zipfile = substitute(a:fname,'^.\{-}zipfile:\(.\{-}\)::[^\\].*$','\1','') let zipfile = substitute(a:fname,'^.\{-}zipfile://\(.\{-}\)::[^\\].*$','\1','')
let fname = substitute(a:fname,'^.\{-}zipfile:.\{-}::\([^\\].*\)$','\1','') let fname = substitute(a:fname,'^.\{-}zipfile://.\{-}::\([^\\].*\)$','\1','')
endif endif
" call Decho("zipfile<".zipfile.">") " call Decho("zipfile<".zipfile.">")
" call Decho("fname <".fname.">") " call Decho("fname <".fname.">")

View File

@@ -67,7 +67,7 @@ You can use ":highlight" to find out the current colors. Exception: the
ctermfg and ctermbg values are numbers, which are only valid for the current ctermfg and ctermbg values are numbers, which are only valid for the current
terminal. Use the color names instead. See ":help cterm-colors". terminal. Use the color names instead. See ":help cterm-colors".
The default color settings can be found in the source file src/syntax.c. The default color settings can be found in the source file src/highlight.c.
Search for "highlight_init". Search for "highlight_init".
If you think you have a color scheme that is good enough to be used by others, If you think you have a color scheme that is good enough to be used by others,
@@ -87,4 +87,5 @@ please check the following items:
- In the GUI, is it easy to find the cursor, also in a file with lots of - In the GUI, is it easy to find the cursor, also in a file with lots of
syntax highlighting? syntax highlighting?
- Do not use hard coded escape sequences, these will not work in other - Do not use hard coded escape sequences, these will not work in other
terminals. Always use color names or #RRGGBB for the GUI. terminals. Always use color names or #RRGGBB for the GUI. See v:colornames
for details on how to define your own color names.

View File

@@ -0,0 +1,166 @@
" Maintainer: Drew Vogel <dvogel@sidejump.org>
" Last Change: 2021 Jul 25
" Similar in spirit to rgb.txt, this plugin establishes a human-friendly name
" for every color listed in the CSS standard:
"
" https://www.w3.org/TR/css-color-3/
let s:keepcpo= &cpo
set cpo&vim
call extend(v:colornames, {
\ 'css_black': '#000000',
\ 'css_silver': '#c0c0c0',
\ 'css_gray': '#808080',
\ 'css_white': '#FFFFFF',
\ 'css_maroon': '#800000',
\ 'css_red': '#FF0000',
\ 'css_purple': '#800080',
\ 'css_fuchsia': '#FF00FF',
\ 'css_green': '#008000',
\ 'css_lime': '#00FF00',
\ 'css_olive': '#808000',
\ 'css_yellow': '#FFFF00',
\ 'css_navy': '#000080',
\ 'css_blue': '#0000FF',
\ 'css_teal': '#008080',
\ 'css_aqua': '#00FFFF',
\
\ 'css_aliceblue': '#f0f8ff',
\ 'css_antiquewhite': '#faebd7',
\ 'css_aquamarine': '#7fffd4',
\ 'css_azure': '#f0ffff',
\ 'css_beige': '#f5f5dc',
\ 'css_bisque': '#ffe4c4',
\ 'css_blanchedalmond': '#ffebcd',
\ 'css_blueviolet': '#8a2be2',
\ 'css_brown': '#a52a2a',
\ 'css_burlywood': '#deb887',
\ 'css_cadetblue': '#5f9ea0',
\ 'css_chartreuse': '#7fff00',
\ 'css_chocolate': '#d2691e',
\ 'css_coral': '#ff7f50',
\ 'css_cornflowerblue': '#6495ed',
\ 'css_cornsilk': '#fff8dc',
\ 'css_crimson': '#dc143c',
\ 'css_cyan': '#00ffff',
\ 'css_darkblue': '#00008b',
\ 'css_darkcyan': '#008b8b',
\ 'css_darkgoldenrod': '#b8860b',
\ 'css_darkgray': '#a9a9a9',
\ 'css_darkgreen': '#006400',
\ 'css_darkgrey': '#a9a9a9',
\ 'css_darkkhaki': '#bdb76b',
\ 'css_darkmagenta': '#8b008b',
\ 'css_darkolivegreen': '#556b2f',
\ 'css_darkorange': '#ff8c00',
\ 'css_darkorchid': '#9932cc',
\ 'css_darkred': '#8b0000',
\ 'css_darksalmon': '#e9967a',
\ 'css_darkseagreen': '#8fbc8f',
\ 'css_darkslateblue': '#483d8b',
\ 'css_darkslategray': '#2f4f4f',
\ 'css_darkslategrey': '#2f4f4f',
\ 'css_darkturquoise': '#00ced1',
\ 'css_darkviolet': '#9400d3',
\ 'css_deeppink': '#ff1493',
\ 'css_deepskyblue': '#00bfff',
\ 'css_dimgray': '#696969',
\ 'css_dimgrey': '#696969',
\ 'css_dodgerblue': '#1e90ff',
\ 'css_firebrick': '#b22222',
\ 'css_floralwhite': '#fffaf0',
\ 'css_forestgreen': '#228b22',
\ 'css_gainsboro': '#dcdcdc',
\ 'css_ghostwhite': '#f8f8ff',
\ 'css_gold': '#ffd700',
\ 'css_goldenrod': '#daa520',
\ 'css_greenyellow': '#adff2f',
\ 'css_grey': '#808080',
\ 'css_honeydew': '#f0fff0',
\ 'css_hotpink': '#ff69b4',
\ 'css_indianred': '#cd5c5c',
\ 'css_indigo': '#4b0082',
\ 'css_ivory': '#fffff0',
\ 'css_khaki': '#f0e68c',
\ 'css_lavender': '#e6e6fa',
\ 'css_lavenderblush': '#fff0f5',
\ 'css_lawngreen': '#7cfc00',
\ 'css_lemonchiffon': '#fffacd',
\ 'css_lightblue': '#add8e6',
\ 'css_lightcoral': '#f08080',
\ 'css_lightcyan': '#e0ffff',
\ 'css_lightgoldenrodyellow': '#fafad2',
\ 'css_lightgray': '#d3d3d3',
\ 'css_lightgreen': '#90ee90',
\ 'css_lightgrey': '#d3d3d3',
\ 'css_lightpink': '#ffb6c1',
\ 'css_lightsalmon': '#ffa07a',
\ 'css_lightseagreen': '#20b2aa',
\ 'css_lightskyblue': '#87cefa',
\ 'css_lightslategray': '#778899',
\ 'css_lightslategrey': '#778899',
\ 'css_lightsteelblue': '#b0c4de',
\ 'css_lightyellow': '#ffffe0',
\ 'css_limegreen': '#32cd32',
\ 'css_linen': '#faf0e6',
\ 'css_magenta': '#ff00ff',
\ 'css_mediumaquamarine': '#66cdaa',
\ 'css_mediumblue': '#0000cd',
\ 'css_mediumorchid': '#ba55d3',
\ 'css_mediumpurple': '#9370db',
\ 'css_mediumseagreen': '#3cb371',
\ 'css_mediumslateblue': '#7b68ee',
\ 'css_mediumspringgreen': '#00fa9a',
\ 'css_mediumturquoise': '#48d1cc',
\ 'css_mediumvioletred': '#c71585',
\ 'css_midnightblue': '#191970',
\ 'css_mintcream': '#f5fffa',
\ 'css_mistyrose': '#ffe4e1',
\ 'css_moccasin': '#ffe4b5',
\ 'css_navajowhite': '#ffdead',
\ 'css_oldlace': '#fdf5e6',
\ 'css_olivedrab': '#6b8e23',
\ 'css_orange': '#ffa500',
\ 'css_orangered': '#ff4500',
\ 'css_orchid': '#da70d6',
\ 'css_palegoldenrod': '#eee8aa',
\ 'css_palegreen': '#98fb98',
\ 'css_paleturquoise': '#afeeee',
\ 'css_palevioletred': '#db7093',
\ 'css_papayawhip': '#ffefd5',
\ 'css_peachpuff': '#ffdab9',
\ 'css_peru': '#cd853f',
\ 'css_pink': '#ffc0cb',
\ 'css_plum': '#dda0dd',
\ 'css_powderblue': '#b0e0e6',
\ 'css_rosybrown': '#bc8f8f',
\ 'css_royalblue': '#4169e1',
\ 'css_saddlebrown': '#8b4513',
\ 'css_salmon': '#fa8072',
\ 'css_sandybrown': '#f4a460',
\ 'css_seagreen': '#2e8b57',
\ 'css_seashell': '#fff5ee',
\ 'css_sienna': '#a0522d',
\ 'css_skyblue': '#87ceeb',
\ 'css_slateblue': '#6a5acd',
\ 'css_slategray': '#708090',
\ 'css_slategrey': '#708090',
\ 'css_snow': '#fffafa',
\ 'css_springgreen': '#00ff7f',
\ 'css_steelblue': '#4682b4',
\ 'css_tan': '#d2b48c',
\ 'css_thistle': '#d8bfd8',
\ 'css_tomato': '#ff6347',
\ 'css_turquoise': '#40e0d0',
\ 'css_violet': '#ee82ee',
\ 'css_wheat': '#f5deb3',
\ 'css_whitesmoke': '#f5f5f5',
\ 'css_yellowgreen': '#9acd32',
\ }, 'keep')
let &cpo= s:keepcpo
unlet s:keepcpo
"vim: sw=4

View File

@@ -0,0 +1,801 @@
" Maintainer: Drew Vogel <dvogel@sidejump.org>
" Last Change: 2021 Jul 25
"
" Replaced rgb.txt as the source of de facto standard color names. This is
" sourced each time the colorscheme command is run. It is also sourced each
" time the highlight command fails to recognize a gui color. You can override
" these colors by introducing a new colors/lists/default.vim file earlier in
" the runtimepath.
let s:keepcpo= &cpo
set cpo&vim
call extend(v:colornames, {
\ 'snow': '#fffafa',
\ 'ghost white': '#f8f8ff',
\ 'ghostwhite': '#f8f8ff',
\ 'white smoke': '#f5f5f5',
\ 'whitesmoke': '#f5f5f5',
\ 'gainsboro': '#dcdcdc',
\ 'floral white': '#fffaf0',
\ 'floralwhite': '#fffaf0',
\ 'old lace': '#fdf5e6',
\ 'oldlace': '#fdf5e6',
\ 'linen': '#faf0e6',
\ 'antique white': '#faebd7',
\ 'antiquewhite': '#faebd7',
\ 'papaya whip': '#ffefd5',
\ 'papayawhip': '#ffefd5',
\ 'blanched almond': '#ffebcd',
\ 'blanchedalmond': '#ffebcd',
\ 'bisque': '#ffe4c4',
\ 'peach puff': '#ffdab9',
\ 'peachpuff': '#ffdab9',
\ 'navajo white': '#ffdead',
\ 'navajowhite': '#ffdead',
\ 'moccasin': '#ffe4b5',
\ 'cornsilk': '#fff8dc',
\ 'ivory': '#fffff0',
\ 'lemon chiffon': '#fffacd',
\ 'lemonchiffon': '#fffacd',
\ 'seashell': '#fff5ee',
\ 'honeydew': '#f0fff0',
\ 'mint cream': '#f5fffa',
\ 'mintcream': '#f5fffa',
\ 'azure': '#f0ffff',
\ 'alice blue': '#f0f8ff',
\ 'aliceblue': '#f0f8ff',
\ 'lavender': '#e6e6fa',
\ 'lavender blush': '#fff0f5',
\ 'lavenderblush': '#fff0f5',
\ 'misty rose': '#ffe4e1',
\ 'mistyrose': '#ffe4e1',
\ 'white': '#ffffff',
\ 'black': '#000000',
\ 'dark slate gray': '#2f4f4f',
\ 'darkslategray': '#2f4f4f',
\ 'dark slate grey': '#2f4f4f',
\ 'darkslategrey': '#2f4f4f',
\ 'dim gray': '#696969',
\ 'dimgray': '#696969',
\ 'dim grey': '#696969',
\ 'dimgrey': '#696969',
\ 'slate gray': '#708090',
\ 'slategray': '#708090',
\ 'slate grey': '#708090',
\ 'slategrey': '#708090',
\ 'light slate gray': '#778899',
\ 'lightslategray': '#778899',
\ 'light slate grey': '#778899',
\ 'lightslategrey': '#778899',
\ 'gray': '#bebebe',
\ 'grey': '#bebebe',
\ 'x11 gray': '#bebebe',
\ 'x11gray': '#bebebe',
\ 'x11 grey': '#bebebe',
\ 'x11grey': '#bebebe',
\ 'web gray': '#808080',
\ 'webgray': '#808080',
\ 'web grey': '#808080',
\ 'webgrey': '#808080',
\ 'light grey': '#d3d3d3',
\ 'lightgrey': '#d3d3d3',
\ 'light gray': '#d3d3d3',
\ 'lightgray': '#d3d3d3',
\ 'midnight blue': '#191970',
\ 'midnightblue': '#191970',
\ 'navy': '#000080',
\ 'navy blue': '#000080',
\ 'navyblue': '#000080',
\ 'cornflower blue': '#6495ed',
\ 'cornflowerblue': '#6495ed',
\ 'dark slate blue': '#483d8b',
\ 'darkslateblue': '#483d8b',
\ 'slate blue': '#6a5acd',
\ 'slateblue': '#6a5acd',
\ 'medium slate blue': '#7b68ee',
\ 'mediumslateblue': '#7b68ee',
\ 'light slate blue': '#8470ff',
\ 'lightslateblue': '#8470ff',
\ 'medium blue': '#0000cd',
\ 'mediumblue': '#0000cd',
\ 'royal blue': '#4169e1',
\ 'royalblue': '#4169e1',
\ 'blue': '#0000ff',
\ 'dodger blue': '#1e90ff',
\ 'dodgerblue': '#1e90ff',
\ 'deep sky blue': '#00bfff',
\ 'deepskyblue': '#00bfff',
\ 'sky blue': '#87ceeb',
\ 'skyblue': '#87ceeb',
\ 'light sky blue': '#87cefa',
\ 'lightskyblue': '#87cefa',
\ 'steel blue': '#4682b4',
\ 'steelblue': '#4682b4',
\ 'light steel blue': '#b0c4de',
\ 'lightsteelblue': '#b0c4de',
\ 'light blue': '#add8e6',
\ 'lightblue': '#add8e6',
\ 'powder blue': '#b0e0e6',
\ 'powderblue': '#b0e0e6',
\ 'pale turquoise': '#afeeee',
\ 'paleturquoise': '#afeeee',
\ 'dark turquoise': '#00ced1',
\ 'darkturquoise': '#00ced1',
\ 'medium turquoise': '#48d1cc',
\ 'mediumturquoise': '#48d1cc',
\ 'turquoise': '#40e0d0',
\ 'cyan': '#00ffff',
\ 'aqua': '#00ffff',
\ 'light cyan': '#e0ffff',
\ 'lightcyan': '#e0ffff',
\ 'cadet blue': '#5f9ea0',
\ 'cadetblue': '#5f9ea0',
\ 'medium aquamarine': '#66cdaa',
\ 'mediumaquamarine': '#66cdaa',
\ 'aquamarine': '#7fffd4',
\ 'dark green': '#006400',
\ 'darkgreen': '#006400',
\ 'dark olive green': '#556b2f',
\ 'darkolivegreen': '#556b2f',
\ 'dark sea green': '#8fbc8f',
\ 'darkseagreen': '#8fbc8f',
\ 'sea green': '#2e8b57',
\ 'seagreen': '#2e8b57',
\ 'medium sea green': '#3cb371',
\ 'mediumseagreen': '#3cb371',
\ 'light sea green': '#20b2aa',
\ 'lightseagreen': '#20b2aa',
\ 'pale green': '#98fb98',
\ 'palegreen': '#98fb98',
\ 'spring green': '#00ff7f',
\ 'springgreen': '#00ff7f',
\ 'lawn green': '#7cfc00',
\ 'lawngreen': '#7cfc00',
\ 'green': '#00ff00',
\ 'lime': '#00ff00',
\ 'x11 green': '#00ff00',
\ 'x11green': '#00ff00',
\ 'web green': '#008000',
\ 'webgreen': '#008000',
\ 'chartreuse': '#7fff00',
\ 'medium spring green': '#00fa9a',
\ 'mediumspringgreen': '#00fa9a',
\ 'green yellow': '#adff2f',
\ 'greenyellow': '#adff2f',
\ 'lime green': '#32cd32',
\ 'limegreen': '#32cd32',
\ 'yellow green': '#9acd32',
\ 'yellowgreen': '#9acd32',
\ 'forest green': '#228b22',
\ 'forestgreen': '#228b22',
\ 'olive drab': '#6b8e23',
\ 'olivedrab': '#6b8e23',
\ 'dark khaki': '#bdb76b',
\ 'darkkhaki': '#bdb76b',
\ 'khaki': '#f0e68c',
\ 'pale goldenrod': '#eee8aa',
\ 'palegoldenrod': '#eee8aa',
\ 'light goldenrod yellow': '#fafad2',
\ 'lightgoldenrodyellow': '#fafad2',
\ 'light yellow': '#ffffe0',
\ 'lightyellow': '#ffffe0',
\ 'yellow': '#ffff00',
\ 'gold': '#ffd700',
\ 'light goldenrod': '#eedd82',
\ 'lightgoldenrod': '#eedd82',
\ 'goldenrod': '#daa520',
\ 'dark goldenrod': '#b8860b',
\ 'darkgoldenrod': '#b8860b',
\ 'rosy brown': '#bc8f8f',
\ 'rosybrown': '#bc8f8f',
\ 'indian red': '#cd5c5c',
\ 'indianred': '#cd5c5c',
\ 'saddle brown': '#8b4513',
\ 'saddlebrown': '#8b4513',
\ 'sienna': '#a0522d',
\ 'peru': '#cd853f',
\ 'burlywood': '#deb887',
\ 'beige': '#f5f5dc',
\ 'wheat': '#f5deb3',
\ 'sandy brown': '#f4a460',
\ 'sandybrown': '#f4a460',
\ 'tan': '#d2b48c',
\ 'chocolate': '#d2691e',
\ 'firebrick': '#b22222',
\ 'brown': '#a52a2a',
\ 'dark salmon': '#e9967a',
\ 'darksalmon': '#e9967a',
\ 'salmon': '#fa8072',
\ 'light salmon': '#ffa07a',
\ 'lightsalmon': '#ffa07a',
\ 'orange': '#ffa500',
\ 'dark orange': '#ff8c00',
\ 'darkorange': '#ff8c00',
\ 'coral': '#ff7f50',
\ 'light coral': '#f08080',
\ 'lightcoral': '#f08080',
\ 'tomato': '#ff6347',
\ 'orange red': '#ff4500',
\ 'orangered': '#ff4500',
\ 'red': '#ff0000',
\ 'hot pink': '#ff69b4',
\ 'hotpink': '#ff69b4',
\ 'deep pink': '#ff1493',
\ 'deeppink': '#ff1493',
\ 'pink': '#ffc0cb',
\ 'light pink': '#ffb6c1',
\ 'lightpink': '#ffb6c1',
\ 'pale violet red': '#db7093',
\ 'palevioletred': '#db7093',
\ 'maroon': '#b03060',
\ 'x11 maroon': '#b03060',
\ 'x11maroon': '#b03060',
\ 'web maroon': '#800000',
\ 'webmaroon': '#800000',
\ 'medium violet red': '#c71585',
\ 'mediumvioletred': '#c71585',
\ 'violet red': '#d02090',
\ 'violetred': '#d02090',
\ 'magenta': '#ff00ff',
\ 'fuchsia': '#ff00ff',
\ 'violet': '#ee82ee',
\ 'plum': '#dda0dd',
\ 'orchid': '#da70d6',
\ 'medium orchid': '#ba55d3',
\ 'mediumorchid': '#ba55d3',
\ 'dark orchid': '#9932cc',
\ 'darkorchid': '#9932cc',
\ 'dark violet': '#9400d3',
\ 'darkviolet': '#9400d3',
\ 'blue violet': '#8a2be2',
\ 'blueviolet': '#8a2be2',
\ 'purple': '#a020f0',
\ 'x11 purple': '#a020f0',
\ 'x11purple': '#a020f0',
\ 'web purple': '#800080',
\ 'webpurple': '#800080',
\ 'medium purple': '#9370db',
\ 'mediumpurple': '#9370db',
\ 'thistle': '#d8bfd8',
\ 'snow1': '#fffafa',
\ 'snow2': '#eee9e9',
\ 'snow3': '#cdc9c9',
\ 'snow4': '#8b8989',
\ 'seashell1': '#fff5ee',
\ 'seashell2': '#eee5de',
\ 'seashell3': '#cdc5bf',
\ 'seashell4': '#8b8682',
\ 'antiquewhite1': '#ffefdb',
\ 'antiquewhite2': '#eedfcc',
\ 'antiquewhite3': '#cdc0b0',
\ 'antiquewhite4': '#8b8378',
\ 'bisque1': '#ffe4c4',
\ 'bisque2': '#eed5b7',
\ 'bisque3': '#cdb79e',
\ 'bisque4': '#8b7d6b',
\ 'peachpuff1': '#ffdab9',
\ 'peachpuff2': '#eecbad',
\ 'peachpuff3': '#cdaf95',
\ 'peachpuff4': '#8b7765',
\ 'navajowhite1': '#ffdead',
\ 'navajowhite2': '#eecfa1',
\ 'navajowhite3': '#cdb38b',
\ 'navajowhite4': '#8b795e',
\ 'lemonchiffon1': '#fffacd',
\ 'lemonchiffon2': '#eee9bf',
\ 'lemonchiffon3': '#cdc9a5',
\ 'lemonchiffon4': '#8b8970',
\ 'cornsilk1': '#fff8dc',
\ 'cornsilk2': '#eee8cd',
\ 'cornsilk3': '#cdc8b1',
\ 'cornsilk4': '#8b8878',
\ 'ivory1': '#fffff0',
\ 'ivory2': '#eeeee0',
\ 'ivory3': '#cdcdc1',
\ 'ivory4': '#8b8b83',
\ 'honeydew1': '#f0fff0',
\ 'honeydew2': '#e0eee0',
\ 'honeydew3': '#c1cdc1',
\ 'honeydew4': '#838b83',
\ 'lavenderblush1': '#fff0f5',
\ 'lavenderblush2': '#eee0e5',
\ 'lavenderblush3': '#cdc1c5',
\ 'lavenderblush4': '#8b8386',
\ 'mistyrose1': '#ffe4e1',
\ 'mistyrose2': '#eed5d2',
\ 'mistyrose3': '#cdb7b5',
\ 'mistyrose4': '#8b7d7b',
\ 'azure1': '#f0ffff',
\ 'azure2': '#e0eeee',
\ 'azure3': '#c1cdcd',
\ 'azure4': '#838b8b',
\ 'slateblue1': '#836fff',
\ 'slateblue2': '#7a67ee',
\ 'slateblue3': '#6959cd',
\ 'slateblue4': '#473c8b',
\ 'royalblue1': '#4876ff',
\ 'royalblue2': '#436eee',
\ 'royalblue3': '#3a5fcd',
\ 'royalblue4': '#27408b',
\ 'blue1': '#0000ff',
\ 'blue2': '#0000ee',
\ 'blue3': '#0000cd',
\ 'blue4': '#00008b',
\ 'dodgerblue1': '#1e90ff',
\ 'dodgerblue2': '#1c86ee',
\ 'dodgerblue3': '#1874cd',
\ 'dodgerblue4': '#104e8b',
\ 'steelblue1': '#63b8ff',
\ 'steelblue2': '#5cacee',
\ 'steelblue3': '#4f94cd',
\ 'steelblue4': '#36648b',
\ 'deepskyblue1': '#00bfff',
\ 'deepskyblue2': '#00b2ee',
\ 'deepskyblue3': '#009acd',
\ 'deepskyblue4': '#00688b',
\ 'skyblue1': '#87ceff',
\ 'skyblue2': '#7ec0ee',
\ 'skyblue3': '#6ca6cd',
\ 'skyblue4': '#4a708b',
\ 'lightskyblue1': '#b0e2ff',
\ 'lightskyblue2': '#a4d3ee',
\ 'lightskyblue3': '#8db6cd',
\ 'lightskyblue4': '#607b8b',
\ 'slategray1': '#c6e2ff',
\ 'slategray2': '#b9d3ee',
\ 'slategray3': '#9fb6cd',
\ 'slategray4': '#6c7b8b',
\ 'lightsteelblue1': '#cae1ff',
\ 'lightsteelblue2': '#bcd2ee',
\ 'lightsteelblue3': '#a2b5cd',
\ 'lightsteelblue4': '#6e7b8b',
\ 'lightblue1': '#bfefff',
\ 'lightblue2': '#b2dfee',
\ 'lightblue3': '#9ac0cd',
\ 'lightblue4': '#68838b',
\ 'lightcyan1': '#e0ffff',
\ 'lightcyan2': '#d1eeee',
\ 'lightcyan3': '#b4cdcd',
\ 'lightcyan4': '#7a8b8b',
\ 'paleturquoise1': '#bbffff',
\ 'paleturquoise2': '#aeeeee',
\ 'paleturquoise3': '#96cdcd',
\ 'paleturquoise4': '#668b8b',
\ 'cadetblue1': '#98f5ff',
\ 'cadetblue2': '#8ee5ee',
\ 'cadetblue3': '#7ac5cd',
\ 'cadetblue4': '#53868b',
\ 'turquoise1': '#00f5ff',
\ 'turquoise2': '#00e5ee',
\ 'turquoise3': '#00c5cd',
\ 'turquoise4': '#00868b',
\ 'cyan1': '#00ffff',
\ 'cyan2': '#00eeee',
\ 'cyan3': '#00cdcd',
\ 'cyan4': '#008b8b',
\ 'darkslategray1': '#97ffff',
\ 'darkslategray2': '#8deeee',
\ 'darkslategray3': '#79cdcd',
\ 'darkslategray4': '#528b8b',
\ 'aquamarine1': '#7fffd4',
\ 'aquamarine2': '#76eec6',
\ 'aquamarine3': '#66cdaa',
\ 'aquamarine4': '#458b74',
\ 'darkseagreen1': '#c1ffc1',
\ 'darkseagreen2': '#b4eeb4',
\ 'darkseagreen3': '#9bcd9b',
\ 'darkseagreen4': '#698b69',
\ 'seagreen1': '#54ff9f',
\ 'seagreen2': '#4eee94',
\ 'seagreen3': '#43cd80',
\ 'seagreen4': '#2e8b57',
\ 'palegreen1': '#9aff9a',
\ 'palegreen2': '#90ee90',
\ 'palegreen3': '#7ccd7c',
\ 'palegreen4': '#548b54',
\ 'springgreen1': '#00ff7f',
\ 'springgreen2': '#00ee76',
\ 'springgreen3': '#00cd66',
\ 'springgreen4': '#008b45',
\ 'green1': '#00ff00',
\ 'green2': '#00ee00',
\ 'green3': '#00cd00',
\ 'green4': '#008b00',
\ 'chartreuse1': '#7fff00',
\ 'chartreuse2': '#76ee00',
\ 'chartreuse3': '#66cd00',
\ 'chartreuse4': '#458b00',
\ 'olivedrab1': '#c0ff3e',
\ 'olivedrab2': '#b3ee3a',
\ 'olivedrab3': '#9acd32',
\ 'olivedrab4': '#698b22',
\ 'darkolivegreen1': '#caff70',
\ 'darkolivegreen2': '#bcee68',
\ 'darkolivegreen3': '#a2cd5a',
\ 'darkolivegreen4': '#6e8b3d',
\ 'khaki1': '#fff68f',
\ 'khaki2': '#eee685',
\ 'khaki3': '#cdc673',
\ 'khaki4': '#8b864e',
\ 'lightgoldenrod1': '#ffec8b',
\ 'lightgoldenrod2': '#eedc82',
\ 'lightgoldenrod3': '#cdbe70',
\ 'lightgoldenrod4': '#8b814c',
\ 'lightyellow1': '#ffffe0',
\ 'lightyellow2': '#eeeed1',
\ 'lightyellow3': '#cdcdb4',
\ 'lightyellow4': '#8b8b7a',
\ 'yellow1': '#ffff00',
\ 'yellow2': '#eeee00',
\ 'yellow3': '#cdcd00',
\ 'yellow4': '#8b8b00',
\ 'gold1': '#ffd700',
\ 'gold2': '#eec900',
\ 'gold3': '#cdad00',
\ 'gold4': '#8b7500',
\ 'goldenrod1': '#ffc125',
\ 'goldenrod2': '#eeb422',
\ 'goldenrod3': '#cd9b1d',
\ 'goldenrod4': '#8b6914',
\ 'darkgoldenrod1': '#ffb90f',
\ 'darkgoldenrod2': '#eead0e',
\ 'darkgoldenrod3': '#cd950c',
\ 'darkgoldenrod4': '#8b6508',
\ 'rosybrown1': '#ffc1c1',
\ 'rosybrown2': '#eeb4b4',
\ 'rosybrown3': '#cd9b9b',
\ 'rosybrown4': '#8b6969',
\ 'indianred1': '#ff6a6a',
\ 'indianred2': '#ee6363',
\ 'indianred3': '#cd5555',
\ 'indianred4': '#8b3a3a',
\ 'sienna1': '#ff8247',
\ 'sienna2': '#ee7942',
\ 'sienna3': '#cd6839',
\ 'sienna4': '#8b4726',
\ 'burlywood1': '#ffd39b',
\ 'burlywood2': '#eec591',
\ 'burlywood3': '#cdaa7d',
\ 'burlywood4': '#8b7355',
\ 'wheat1': '#ffe7ba',
\ 'wheat2': '#eed8ae',
\ 'wheat3': '#cdba96',
\ 'wheat4': '#8b7e66',
\ 'tan1': '#ffa54f',
\ 'tan2': '#ee9a49',
\ 'tan3': '#cd853f',
\ 'tan4': '#8b5a2b',
\ 'chocolate1': '#ff7f24',
\ 'chocolate2': '#ee7621',
\ 'chocolate3': '#cd661d',
\ 'chocolate4': '#8b4513',
\ 'firebrick1': '#ff3030',
\ 'firebrick2': '#ee2c2c',
\ 'firebrick3': '#cd2626',
\ 'firebrick4': '#8b1a1a',
\ 'brown1': '#ff4040',
\ 'brown2': '#ee3b3b',
\ 'brown3': '#cd3333',
\ 'brown4': '#8b2323',
\ 'salmon1': '#ff8c69',
\ 'salmon2': '#ee8262',
\ 'salmon3': '#cd7054',
\ 'salmon4': '#8b4c39',
\ 'lightsalmon1': '#ffa07a',
\ 'lightsalmon2': '#ee9572',
\ 'lightsalmon3': '#cd8162',
\ 'lightsalmon4': '#8b5742',
\ 'orange1': '#ffa500',
\ 'orange2': '#ee9a00',
\ 'orange3': '#cd8500',
\ 'orange4': '#8b5a00',
\ 'darkorange1': '#ff7f00',
\ 'darkorange2': '#ee7600',
\ 'darkorange3': '#cd6600',
\ 'darkorange4': '#8b4500',
\ 'coral1': '#ff7256',
\ 'coral2': '#ee6a50',
\ 'coral3': '#cd5b45',
\ 'coral4': '#8b3e2f',
\ 'tomato1': '#ff6347',
\ 'tomato2': '#ee5c42',
\ 'tomato3': '#cd4f39',
\ 'tomato4': '#8b3626',
\ 'orangered1': '#ff4500',
\ 'orangered2': '#ee4000',
\ 'orangered3': '#cd3700',
\ 'orangered4': '#8b2500',
\ 'red1': '#ff0000',
\ 'red2': '#ee0000',
\ 'red3': '#cd0000',
\ 'red4': '#8b0000',
\ 'deeppink1': '#ff1493',
\ 'deeppink2': '#ee1289',
\ 'deeppink3': '#cd1076',
\ 'deeppink4': '#8b0a50',
\ 'hotpink1': '#ff6eb4',
\ 'hotpink2': '#ee6aa7',
\ 'hotpink3': '#cd6090',
\ 'hotpink4': '#8b3a62',
\ 'pink1': '#ffb5c5',
\ 'pink2': '#eea9b8',
\ 'pink3': '#cd919e',
\ 'pink4': '#8b636c',
\ 'lightpink1': '#ffaeb9',
\ 'lightpink2': '#eea2ad',
\ 'lightpink3': '#cd8c95',
\ 'lightpink4': '#8b5f65',
\ 'palevioletred1': '#ff82ab',
\ 'palevioletred2': '#ee799f',
\ 'palevioletred3': '#cd6889',
\ 'palevioletred4': '#8b475d',
\ 'maroon1': '#ff34b3',
\ 'maroon2': '#ee30a7',
\ 'maroon3': '#cd2990',
\ 'maroon4': '#8b1c62',
\ 'violetred1': '#ff3e96',
\ 'violetred2': '#ee3a8c',
\ 'violetred3': '#cd3278',
\ 'violetred4': '#8b2252',
\ 'magenta1': '#ff00ff',
\ 'magenta2': '#ee00ee',
\ 'magenta3': '#cd00cd',
\ 'magenta4': '#8b008b',
\ 'orchid1': '#ff83fa',
\ 'orchid2': '#ee7ae9',
\ 'orchid3': '#cd69c9',
\ 'orchid4': '#8b4789',
\ 'plum1': '#ffbbff',
\ 'plum2': '#eeaeee',
\ 'plum3': '#cd96cd',
\ 'plum4': '#8b668b',
\ 'mediumorchid1': '#e066ff',
\ 'mediumorchid2': '#d15fee',
\ 'mediumorchid3': '#b452cd',
\ 'mediumorchid4': '#7a378b',
\ 'darkorchid1': '#bf3eff',
\ 'darkorchid2': '#b23aee',
\ 'darkorchid3': '#9a32cd',
\ 'darkorchid4': '#68228b',
\ 'purple1': '#9b30ff',
\ 'purple2': '#912cee',
\ 'purple3': '#7d26cd',
\ 'purple4': '#551a8b',
\ 'mediumpurple1': '#ab82ff',
\ 'mediumpurple2': '#9f79ee',
\ 'mediumpurple3': '#8968cd',
\ 'mediumpurple4': '#5d478b',
\ 'thistle1': '#ffe1ff',
\ 'thistle2': '#eed2ee',
\ 'thistle3': '#cdb5cd',
\ 'thistle4': '#8b7b8b',
\ 'gray0': '#000000',
\ 'grey0': '#000000',
\ 'gray1': '#030303',
\ 'grey1': '#030303',
\ 'gray2': '#050505',
\ 'grey2': '#050505',
\ 'gray3': '#080808',
\ 'grey3': '#080808',
\ 'gray4': '#0a0a0a',
\ 'grey4': '#0a0a0a',
\ 'gray5': '#0d0d0d',
\ 'grey5': '#0d0d0d',
\ 'gray6': '#0f0f0f',
\ 'grey6': '#0f0f0f',
\ 'gray7': '#121212',
\ 'grey7': '#121212',
\ 'gray8': '#141414',
\ 'grey8': '#141414',
\ 'gray9': '#171717',
\ 'grey9': '#171717',
\ 'gray10': '#1a1a1a',
\ 'grey10': '#1a1a1a',
\ 'gray11': '#1c1c1c',
\ 'grey11': '#1c1c1c',
\ 'gray12': '#1f1f1f',
\ 'grey12': '#1f1f1f',
\ 'gray13': '#212121',
\ 'grey13': '#212121',
\ 'gray14': '#242424',
\ 'grey14': '#242424',
\ 'gray15': '#262626',
\ 'grey15': '#262626',
\ 'gray16': '#292929',
\ 'grey16': '#292929',
\ 'gray17': '#2b2b2b',
\ 'grey17': '#2b2b2b',
\ 'gray18': '#2e2e2e',
\ 'grey18': '#2e2e2e',
\ 'gray19': '#303030',
\ 'grey19': '#303030',
\ 'gray20': '#333333',
\ 'grey20': '#333333',
\ 'gray21': '#363636',
\ 'grey21': '#363636',
\ 'gray22': '#383838',
\ 'grey22': '#383838',
\ 'gray23': '#3b3b3b',
\ 'grey23': '#3b3b3b',
\ 'gray24': '#3d3d3d',
\ 'grey24': '#3d3d3d',
\ 'gray25': '#404040',
\ 'grey25': '#404040',
\ 'gray26': '#424242',
\ 'grey26': '#424242',
\ 'gray27': '#454545',
\ 'grey27': '#454545',
\ 'gray28': '#474747',
\ 'grey28': '#474747',
\ 'gray29': '#4a4a4a',
\ 'grey29': '#4a4a4a',
\ 'gray30': '#4d4d4d',
\ 'grey30': '#4d4d4d',
\ 'gray31': '#4f4f4f',
\ 'grey31': '#4f4f4f',
\ 'gray32': '#525252',
\ 'grey32': '#525252',
\ 'gray33': '#545454',
\ 'grey33': '#545454',
\ 'gray34': '#575757',
\ 'grey34': '#575757',
\ 'gray35': '#595959',
\ 'grey35': '#595959',
\ 'gray36': '#5c5c5c',
\ 'grey36': '#5c5c5c',
\ 'gray37': '#5e5e5e',
\ 'grey37': '#5e5e5e',
\ 'gray38': '#616161',
\ 'grey38': '#616161',
\ 'gray39': '#636363',
\ 'grey39': '#636363',
\ 'gray40': '#666666',
\ 'grey40': '#666666',
\ 'gray41': '#696969',
\ 'grey41': '#696969',
\ 'gray42': '#6b6b6b',
\ 'grey42': '#6b6b6b',
\ 'gray43': '#6e6e6e',
\ 'grey43': '#6e6e6e',
\ 'gray44': '#707070',
\ 'grey44': '#707070',
\ 'gray45': '#737373',
\ 'grey45': '#737373',
\ 'gray46': '#757575',
\ 'grey46': '#757575',
\ 'gray47': '#787878',
\ 'grey47': '#787878',
\ 'gray48': '#7a7a7a',
\ 'grey48': '#7a7a7a',
\ 'gray49': '#7d7d7d',
\ 'grey49': '#7d7d7d',
\ 'gray50': '#7f7f7f',
\ 'grey50': '#7f7f7f',
\ 'gray51': '#828282',
\ 'grey51': '#828282',
\ 'gray52': '#858585',
\ 'grey52': '#858585',
\ 'gray53': '#878787',
\ 'grey53': '#878787',
\ 'gray54': '#8a8a8a',
\ 'grey54': '#8a8a8a',
\ 'gray55': '#8c8c8c',
\ 'grey55': '#8c8c8c',
\ 'gray56': '#8f8f8f',
\ 'grey56': '#8f8f8f',
\ 'gray57': '#919191',
\ 'grey57': '#919191',
\ 'gray58': '#949494',
\ 'grey58': '#949494',
\ 'gray59': '#969696',
\ 'grey59': '#969696',
\ 'gray60': '#999999',
\ 'grey60': '#999999',
\ 'gray61': '#9c9c9c',
\ 'grey61': '#9c9c9c',
\ 'gray62': '#9e9e9e',
\ 'grey62': '#9e9e9e',
\ 'gray63': '#a1a1a1',
\ 'grey63': '#a1a1a1',
\ 'gray64': '#a3a3a3',
\ 'grey64': '#a3a3a3',
\ 'gray65': '#a6a6a6',
\ 'grey65': '#a6a6a6',
\ 'gray66': '#a8a8a8',
\ 'grey66': '#a8a8a8',
\ 'gray67': '#ababab',
\ 'grey67': '#ababab',
\ 'gray68': '#adadad',
\ 'grey68': '#adadad',
\ 'gray69': '#b0b0b0',
\ 'grey69': '#b0b0b0',
\ 'gray70': '#b3b3b3',
\ 'grey70': '#b3b3b3',
\ 'gray71': '#b5b5b5',
\ 'grey71': '#b5b5b5',
\ 'gray72': '#b8b8b8',
\ 'grey72': '#b8b8b8',
\ 'gray73': '#bababa',
\ 'grey73': '#bababa',
\ 'gray74': '#bdbdbd',
\ 'grey74': '#bdbdbd',
\ 'gray75': '#bfbfbf',
\ 'grey75': '#bfbfbf',
\ 'gray76': '#c2c2c2',
\ 'grey76': '#c2c2c2',
\ 'gray77': '#c4c4c4',
\ 'grey77': '#c4c4c4',
\ 'gray78': '#c7c7c7',
\ 'grey78': '#c7c7c7',
\ 'gray79': '#c9c9c9',
\ 'grey79': '#c9c9c9',
\ 'gray80': '#cccccc',
\ 'grey80': '#cccccc',
\ 'gray81': '#cfcfcf',
\ 'grey81': '#cfcfcf',
\ 'gray82': '#d1d1d1',
\ 'grey82': '#d1d1d1',
\ 'gray83': '#d4d4d4',
\ 'grey83': '#d4d4d4',
\ 'gray84': '#d6d6d6',
\ 'grey84': '#d6d6d6',
\ 'gray85': '#d9d9d9',
\ 'grey85': '#d9d9d9',
\ 'gray86': '#dbdbdb',
\ 'grey86': '#dbdbdb',
\ 'gray87': '#dedede',
\ 'grey87': '#dedede',
\ 'gray88': '#e0e0e0',
\ 'grey88': '#e0e0e0',
\ 'gray89': '#e3e3e3',
\ 'grey89': '#e3e3e3',
\ 'gray90': '#e5e5e5',
\ 'grey90': '#e5e5e5',
\ 'gray91': '#e8e8e8',
\ 'grey91': '#e8e8e8',
\ 'gray92': '#ebebeb',
\ 'grey92': '#ebebeb',
\ 'gray93': '#ededed',
\ 'grey93': '#ededed',
\ 'gray94': '#f0f0f0',
\ 'grey94': '#f0f0f0',
\ 'gray95': '#f2f2f2',
\ 'grey95': '#f2f2f2',
\ 'gray96': '#f5f5f5',
\ 'grey96': '#f5f5f5',
\ 'gray97': '#f7f7f7',
\ 'grey97': '#f7f7f7',
\ 'gray98': '#fafafa',
\ 'grey98': '#fafafa',
\ 'gray99': '#fcfcfc',
\ 'grey99': '#fcfcfc',
\ 'gray100': '#ffffff',
\ 'grey100': '#ffffff',
\ 'dark grey': '#a9a9a9',
\ 'darkgrey': '#a9a9a9',
\ 'dark gray': '#a9a9a9',
\ 'darkgray': '#a9a9a9',
\ 'dark blue': '#00008b',
\ 'darkblue': '#00008b',
\ 'dark cyan': '#008b8b',
\ 'darkcyan': '#008b8b',
\ 'dark magenta': '#8b008b',
\ 'darkmagenta': '#8b008b',
\ 'dark red': '#8b0000',
\ 'darkred': '#8b0000',
\ 'light green': '#90ee90',
\ 'lightgreen': '#90ee90',
\ 'crimson': '#dc143c',
\ 'indigo': '#4b0082',
\ 'olive': '#808000',
\ 'rebecca purple': '#663399',
\ 'rebeccapurple': '#663399',
\ 'silver': '#c0c0c0',
\ 'teal': '#008080'
\ }, 'keep')
let &cpo= s:keepcpo
unlet s:keepcpo
"vim: sw=4

View File

@@ -185,7 +185,7 @@ func! Test_check_colors()
" 9) Normal should be defined first, not use reverse, fg or bg " 9) Normal should be defined first, not use reverse, fg or bg
call cursor(1,1) call cursor(1,1)
let pat = 'hi\%[light] \+\%(link\|clear\)\@!\w\+\>' let pat = 'hi\%[ghlight] \+\%(link\|clear\)\@!\w\+\>'
call search(pat, 'cW') " Look for the first hi def, skipping `hi link` and `hi clear` call search(pat, 'cW') " Look for the first hi def, skipping `hi link` and `hi clear`
if getline('.') !~# '\m\<Normal\>' if getline('.') !~# '\m\<Normal\>'
let err['highlight']['Normal'] = 'Should be defined first' let err['highlight']['Normal'] = 'Should be defined first'
@@ -226,7 +226,13 @@ fu! Result(err)
endif endif
endfu endfu
call Test_check_colors() try
call Test_check_colors()
let &cpo = s:save_cpo catch
unlet s:save_cpo echohl ErrorMsg
echomsg v:exception
echohl NONE
finally
let &cpo = s:save_cpo
unlet s:save_cpo
endtry

View File

@@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: Checkstyle " Compiler: Checkstyle
" Maintainer: Doug Kearns <dougkearns@gmail.com> " Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2013 Jun 26 " Last Change: 2020 Aug 2
if exists("current_compiler") if exists("current_compiler")
finish finish
@@ -12,8 +12,18 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
CompilerSet makeprg=java\ com.puppycrawl.tools.checkstyle.Main\ -f\ plain let s:cpo_save = &cpo
set cpo&vim
" sample error: WebTable.java:282: '+=' is not preceeded with whitespace. " CompilerSet makeprg=java\ com.puppycrawl.tools.checkstyle.Main\ -f\ plain\ -c\ /sun_checks.xml
" WebTable.java:201:1: '{' should be on the previous line. " CompilerSet makeprg=java\ -jar\ checkstyle-X.XX-all.jar\ -f\ plain\ -c\ /sun_checks.xml
CompilerSet errorformat=%f:%l:%v:\ %m,%f:%l:\ %m,%-G%.%#
CompilerSet makeprg=checkstyle\ -f\ plain
CompilerSet errorformat=[%tRROR]\ %f:%l:%v:\ %m,
\[%tARN]\ %f:%l:%v:\ %m,
\[%tRROR]\ %f:%l:\ %m,
\[%tARN]\ %f:%l:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

26
runtime/compiler/cm3.vim Normal file
View File

@@ -0,0 +1,26 @@
" Vim compiler file
" Compiler: Critical Mass Modula-3 Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2021 Apr 08
if exists("current_compiler")
finish
endif
let current_compiler = "cm3"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" TODO: better handling of Quake errors
CompilerSet makeprg=cm3
CompilerSet errorformat=%D---\ building\ in\ %f\ ---,
\%W\"%f\"\\,\ line\ %l:\ warning:\ %m,
\%E\"%f\"\\,\ line\ %l:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

26
runtime/compiler/dart.vim Normal file
View File

@@ -0,0 +1,26 @@
" Vim compiler file
" Compiler: Dart VM
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dart"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dart
CompilerSet errorformat=%E%f:%l:%c:\ Error:\ %m,
\%CTry\ %.%#,
\%Z\ %#^%\\+,
\%C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,28 @@
" Vim compiler file
" Compiler: Dart to JavaScript Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dart2js"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dart2js
CompilerSet errorformat=%E%f:%l:%c:,
\%-GError:\ Compilation\ failed.,
\%CError:\ %m,
\%Z\ %#^%\\+,
\%C%.%#,
\%trror:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,28 @@
" Vim compiler file
" Compiler: Dart to Native Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dart2native"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dart2native
CompilerSet errorformat=%E%f:%l:%c:\ Error:\ %m,
\%CTry\ %.%#,
\%Z\ %#^%\\+,
\%Z%$,
\%C%.%#,
\%E%f:\ %trror:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,23 @@
" Vim compiler file
" Compiler: Dart Analyzer
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dartanalyzer"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dartanalyzer\ --format\ machine
CompilerSet errorformat=%t%\\w%\\+\|%\\w%\\+\|%\\w%\\+\|%f\|%l\|%c\|%\\d%\\+\|%m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,28 @@
" Vim compiler file
" Compiler: Dart Development Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dartdevc"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dartdevc
CompilerSet errorformat=%E%f:%l:%c:\ Error:\ %m,
\%CTry\ %.%#,
\%Z\ %#^%\\+,
\%Z%$,
\%C%.%#,
\%E%f:\ %trror:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,26 @@
" Vim compiler file
" Compiler: Dart Documentation Generator
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dartdoc"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dartdoc
CompilerSet errorformat=\ \ %tarning:\ %m,
\\ \ %trror:\ %m,
\%+EGeneration\ failed:\ %m,
\%+ISuccess!\ Docs\ generated\ into\ %f,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,25 @@
" Vim compiler file
" Compiler: Dart Formatter
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 May 08
if exists("current_compiler")
finish
endif
let current_compiler = "dartfmt"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=dartfmt
CompilerSet errorformat=%Eline\ %l\\,\ column\ %c\ of\ %f:\ %m,
\%Z\ %\\{3}│\ %\\+^%\\+,
\%C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: ESLint for JavaScript " Compiler: ESLint for JavaScript
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com> " Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
" Last Change: 2020 May 17 " Last Change: 2020 August 20
if exists("current_compiler") if exists("current_compiler")
finish finish
@@ -12,5 +12,5 @@ if exists(":CompilerSet") != 2
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
CompilerSet makeprg=eslint\ --format\ compact CompilerSet makeprg=npx\ eslint\ --format\ compact
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m,%-G%.%# CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m,%-G%.%#

27
runtime/compiler/fbc.vim Normal file
View File

@@ -0,0 +1,27 @@
" Vim compiler file
" Compiler: FreeBASIC Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2015 Jan 10
if exists("current_compiler")
finish
endif
let current_compiler = "fbc"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=fbc
CompilerSet errorformat=%-G%.%#Too\ many\ errors\\,\ exiting,
\%f(%l)\ %tarning\ %n(%\\d%\\+):\ %m,
\%E%f(%l)\ error\ %n:\ %m,
\%-Z%p^,
\%-C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -12,6 +12,6 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
" NOTE: compiler must be runned with -vb to write whole source path, not only file " NOTE: compiler must be run with -vb to write whole source path, not only file
" name. " name.
CompilerSet errorformat=%f(%l\\,%c)\ %m CompilerSet errorformat=%f(%l\\,%c)\ %m

34
runtime/compiler/gawk.vim Normal file
View File

@@ -0,0 +1,34 @@
" Vim compiler file
" Compiler: GNU Awk
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Feb 10
if exists("current_compiler")
finish
endif
let current_compiler = "gawk"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=gawk
CompilerSet errorformat=%Z%.awk:\ %f:%l:\ %p^\ %m,
\%Eg%\\=awk:\ %f:%l:\ fatal:\ %m,
\%Egawk:\ %f:%l:\ error:\ %m,
\%Wgawk:\ %f:%l:\ warning:\ %m,
\%Egawk:\ %f:%l:\ %.%#,
\gawk:\ %f:%l:\ %tatal:\ %m,
\gawk:\ %f:%l:\ %trror:\ %m,
\gawk:\ %f:%l:\ %tarning:\ %m,
\gawk:\ %tatal:\ %m,
\gawk:\ %trror:\ %m,
\gawk:\ %tarning:\ %m,
\%+C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

25
runtime/compiler/gjs.vim Normal file
View File

@@ -0,0 +1,25 @@
" Vim compiler file
" Compiler: GJS (Gnome JavaScript Bindings)
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jul 10
if exists("current_compiler")
finish
endif
let current_compiler = "gjs"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=gjs
CompilerSet errorformat=%.%#JS\ %tRROR:\ %m\ @\ %f:%c,
\%E%.%#JS\ ERROR:\ %m,
\%Z@%f:%l:%c,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: javac " Compiler: Java Development Kit Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com> " Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2004 Nov 27 " Last Change: 2019 Oct 21
if exists("current_compiler") if exists("current_compiler")
finish finish
@@ -12,6 +12,15 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
CompilerSet makeprg=javac let s:cpo_save = &cpo
set cpo&vim
CompilerSet errorformat=%E%f:%l:\ %m,%-Z%p^,%-C%.%#,%-G%.%# CompilerSet makeprg=javac
CompilerSet errorformat=%E%f:%l:\ error:\ %m,
\%W%f:%l:\ warning:\ %m,
\%-Z%p^,
\%-C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

30
runtime/compiler/jest.vim Normal file
View File

@@ -0,0 +1,30 @@
" Vim compiler file
" Compiler: Jest
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2018 May 15
if exists("current_compiler")
finish
endif
let current_compiler = "jest"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ jest\ --no-colors
CompilerSet makeprg=jest\ --no-colors
CompilerSet errorformat=%E\ \ ●\ %m,
\%Z\ %\\{4}%.%#Error:\ %f:\ %m\ (%l:%c):%\\=,
\%Z\ %\\{6}at\ %\\S%#\ (%f:%l:%c),
\%+C\ %\\{4}%\\w%.%#,
\%+C\ %\\{4}%[-+]%.%#,
\%-C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

24
runtime/compiler/jjs.vim Normal file
View File

@@ -0,0 +1,24 @@
" Vim compiler file
" Compiler: Nashorn Shell
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2018 Jan 9
if exists("current_compiler")
finish
endif
let current_compiler = "jjs"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=jjs
CompilerSet errorformat=%f:%l:%c\ %m,
\%f:%l\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,25 @@
" Vim compiler file
" Compiler: JSHint
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jul 10
if exists("current_compiler")
finish
endif
let current_compiler = "jshint"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ jshint\ --verbose
CompilerSet makeprg=jshint\ --verbose
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m\ (%t%n),
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,25 @@
" Vim compiler file
" Compiler: JSON Lint
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jul 10
if exists("current_compiler")
finish
endif
let current_compiler = "jsonlint"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ jsonlint\ --compact\ --quiet
CompilerSet makeprg=jsonlint\ --compact\ --quiet
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ found:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,11 +1,11 @@
" Vim Compiler File " Vim Compiler File
" Compiler: ocaml " Compiler: ocaml
" Maintainer: Markus Mottl <markus.mottl@gmail.com> " Maintainer: Markus Mottl <markus.mottl@gmail.com>
" URL: https://github.com/rgrinberg/vim-ocaml " URL: https://github.com/ocaml/vim-ocaml
" Last Change: " Last Change:
" 2020 Mar 28 - Improved error format (Thomas Leonard)
" 2017 Nov 26 - Improved error format (Markus Mottl) " 2017 Nov 26 - Improved error format (Markus Mottl)
" 2013 Aug 27 - Added a new OCaml error format (Markus Mottl) " 2013 Aug 27 - Added a new OCaml error format (Markus Mottl)
" 2013 Jun 30 - Initial version (Marc Weber)
" "
" Marc Weber's comments: " Marc Weber's comments:
" Setting makeprg doesn't make sense, because there is ocamlc, ocamlopt, " Setting makeprg doesn't make sense, because there is ocamlc, ocamlopt,
@@ -21,6 +21,7 @@
" "
" So having it here makes people opt-in " So having it here makes people opt-in
if exists("current_compiler") if exists("current_compiler")
finish finish
endif endif
@@ -30,6 +31,7 @@ let s:cpo_save = &cpo
set cpo&vim set cpo&vim
CompilerSet errorformat = CompilerSet errorformat =
\%EFile\ \"%f\"\\,\ lines\ %*\\d-%l\\,\ characters\ %c-%*\\d:,
\%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d:, \%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d:,
\%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d\ %.%#, \%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d\ %.%#,
\%EFile\ \"%f\"\\,\ line\ %l\\,\ character\ %c:%m, \%EFile\ \"%f\"\\,\ line\ %l\\,\ character\ %c:%m,

View File

@@ -0,0 +1,84 @@
" Vim compiler file
" Compiler: powershell
" URL: https://github.com/PProvost/vim-ps1
" Last Change: 2020 Mar 30
if exists("current_compiler")
finish
endif
let current_compiler = "powershell"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo-=C
if !exists("g:ps1_makeprg_cmd")
if executable('pwsh')
" pwsh is the future
let g:ps1_makeprg_cmd = 'pwsh'
elseif executable('pwsh.exe')
let g:ps1_makeprg_cmd = 'pwsh.exe'
elseif executable('powershell.exe')
let g:ps1_makeprg_cmd = 'powershell.exe'
else
let g:ps1_makeprg_cmd = ''
endif
endif
if !executable(g:ps1_makeprg_cmd)
echoerr "To use the powershell compiler, please set g:ps1_makeprg_cmd to the powershell executable!"
endif
" Show CategoryInfo, FullyQualifiedErrorId, etc?
let g:ps1_efm_show_error_categories = get(g:, 'ps1_efm_show_error_categories', 0)
" Use absolute path because powershell requires explicit relative paths
" (./file.ps1 is okay, but # expands to file.ps1)
let &l:makeprg = g:ps1_makeprg_cmd .' %:p:S'
" Parse file, line, char from callstacks:
" Write-Ouput : The term 'Write-Ouput' is not recognized as the name of a
" cmdlet, function, script file, or operable program. Check the spelling
" of the name, or if a path was included, verify that the path is correct
" and try again.
" At C:\script.ps1:11 char:5
" + Write-Ouput $content
" + ~~~~~~~~~~~
" + CategoryInfo : ObjectNotFound: (Write-Ouput:String) [], CommandNotFoundException
" + FullyQualifiedErrorId : CommandNotFoundException
" Showing error in context with underlining.
CompilerSet errorformat=%+G+%m
" Error summary.
CompilerSet errorformat+=%E%*\\S\ :\ %m
" Error location.
CompilerSet errorformat+=%CAt\ %f:%l\ char:%c
" Errors that span multiple lines (may be wrapped to width of terminal).
CompilerSet errorformat+=%C%m
" Ignore blank/whitespace-only lines.
CompilerSet errorformat+=%Z\\s%#
if g:ps1_efm_show_error_categories
CompilerSet errorformat^=%+G\ \ \ \ +\ %.%#\\s%#:\ %m
else
CompilerSet errorformat^=%-G\ \ \ \ +\ %.%#\\s%#:\ %m
endif
" Parse file, line, char from of parse errors:
" At C:\script.ps1:22 char:16
" + Stop-Process -Name "invalidprocess
" + ~~~~~~~~~~~~~~~
" The string is missing the terminator: ".
" + CategoryInfo : ParserError: (:) [], ParseException
" + FullyQualifiedErrorId : TerminatorExpectedAtEndOfString
CompilerSet errorformat+=At\ %f:%l\ char:%c
let &cpo = s:cpo_save
unlet s:cpo_save
" vim:set sw=2 sts=2:

View File

@@ -0,0 +1,30 @@
" Vim compiler file
" Compiler: Rhino Shell (JavaScript in Java)
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jul 10
if exists("current_compiler")
finish
endif
let current_compiler = "rhino"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=java\ -jar\ lib/rhino-X.X.XX.jar\ -w\ -strict
CompilerSet makeprg=rhino
CompilerSet errorformat=%-Gjs:\ %.%#Compilation\ produced%.%#,
\%Ejs:\ \"%f\"\\,\ line\ %l:\ %m,
\%Ejs:\ uncaught\ JavaScript\ runtime\ exception:\ %m,
\%Wjs:\ warning:\ \"%f\"\\,\ line\ %l:\ %m,
\%Zjs:\ %p^,
\%Cjs:\ %.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,23 @@
" Vim compiler file
" Compiler: RuboCop
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jul 10
if exists("current_compiler")
finish
endif
let current_compiler = "rubocop"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=rubocop\ --format\ emacs
CompilerSet errorformat=%f:%l:%c:\ %t:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,16 @@
" scdoc compiler for Vim
" Compiler: scdoc
" Maintainer: Greg Anders <greg@gpanders.com>
" Last Updated: 2019-10-24
if exists('current_compiler')
finish
endif
let current_compiler = 'scdoc'
if exists(':CompilerSet') != 2
command -nargs=* CompilerSet setlocal <args>
endif
CompilerSet makeprg=scdoc\ <\ %\ 2>&1
CompilerSet errorformat=Error\ at\ %l:%c:\ %m,%-G%.%#

View File

@@ -0,0 +1,25 @@
" Vim compiler file
" Compiler: ShellCheck
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Sep 4
if exists("current_compiler")
finish
endif
let current_compiler = "shellcheck"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=shellcheck\ -f\ gcc
CompilerSet errorformat=%f:%l:%c:\ %trror:\ %m\ [SC%n],
\%f:%l:%c:\ %tarning:\ %m\ [SC%n],
\%f:%l:%c:\ %tote:\ %m\ [SC%n],
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

28
runtime/compiler/sml.vim Normal file
View File

@@ -0,0 +1,28 @@
" Vim compiler file
" Compiler: SML/NJ Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Feb 10
if exists("current_compiler")
finish
endif
let current_compiler = "sml"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
CompilerSet makeprg=sml
CompilerSet errorformat=%f:%l.%c-%\\d%\\+.%\\d%\\+\ %trror:\ %m,
\%f:%l.%c\ %trror:\ %m,
\%trror:\ %m
\%f:%l.%c-%\\d%\\+.%\\d%\\+\ %tarning:\ %m,
\%f:%l.%c\ %tarning:\ %m,
\%tarning:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,17 @@
" Vim compiler file
" Compiler: Spectral for YAML
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
" Last Change: 2021 July 21
if exists("current_compiler")
finish
endif
let current_compiler = "spectral"
if exists(":CompilerSet") != 2
command -nargs=* CompilerSet setlocal <args>
endif
CompilerSet makeprg=spectral\ lint\ %\ -f\ text
CompilerSet errorformat=%f:%l:%c\ %t%.%\\{-}\ %m

View File

@@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: Standard for JavaScript " Compiler: Standard for JavaScript
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com> " Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
" Last Change: 2020 May 17 " Last Change: 2020 August 20
if exists("current_compiler") if exists("current_compiler")
finish finish
@@ -12,5 +12,5 @@ if exists(":CompilerSet") != 2
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
CompilerSet makeprg=standard CompilerSet makeprg=npx\ standard
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m,%-G%.%# CompilerSet errorformat=%f:%l:%c:\ %m,%-G%.%#

View File

@@ -0,0 +1,26 @@
" Vim compiler file
" Compiler: Stylelint
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Jun 10
if exists("current_compiler")
finish
endif
let current_compiler = "stylelint"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ stylelint\ --formatter\ compact
CompilerSet makeprg=stylelint\ --formatter\ compact
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %trror\ -\ %m,
\%f:\ line\ %l\\,\ col\ %c\\,\ %tarning\ -\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -18,7 +18,7 @@ endif
if exists('b:tex_ignore_makefile') || exists('g:tex_ignore_makefile') || if exists('b:tex_ignore_makefile') || exists('g:tex_ignore_makefile') ||
\(!filereadable('Makefile') && !filereadable('makefile')) \(!filereadable('Makefile') && !filereadable('makefile'))
" If buffer-local variable 'tex_flavor' exists, it defines TeX flavor, " If buffer-local variable 'tex_flavor' exists, it defines TeX flavor,
" otherwize the same for global variable with same name, else it will be " otherwise the same for global variable with same name, else it will be
" LaTeX " LaTeX
if exists("b:tex_flavor") if exists("b:tex_flavor")
let current_compiler = b:tex_flavor let current_compiler = b:tex_flavor

View File

@@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: HTML Tidy " Compiler: HTML Tidy
" Maintainer: Doug Kearns <dougkearns@gmail.com> " Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2016 Apr 21 " Last Change: 2020 Sep 4
if exists("current_compiler") if exists("current_compiler")
finish finish
@@ -12,8 +12,15 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes\ %:S let s:cpo_save = &cpo
set cpo&vim
" foo.html:8:1: Warning: inserting missing 'foobar' element CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes
" foo.html:9:2: Error: <foobar> is not recognized! CompilerSet errorformat=%f:%l:%c:\ %trror:\ %m,
CompilerSet errorformat=%f:%l:%c:\ %trror:%m,%f:%l:%c:\ %tarning:%m,%-G%.%# \%f:%l:%c:\ %tarning:\ %m,
\%f:%l:%c:\ %tnfo:\ %m,
\%f:%l:%c:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,29 @@
" Vim compiler file
" Compiler: TypeScript Runner
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Feb 10
if exists("current_compiler")
finish
endif
let current_compiler = "node"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ ts-node
CompilerSet makeprg=ts-node
CompilerSet errorformat=%f\ %#(%l\\,%c):\ %trror\ TS%n:\ %m,
\%E%f:%l,
\%+Z%\\w%\\+Error:\ %.%#,
\%C%p^%\\+,
\%C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

26
runtime/compiler/tsc.vim Normal file
View File

@@ -0,0 +1,26 @@
" Vim compiler file
" Compiler: TypeScript Compiler
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Feb 10
if exists("current_compiler")
finish
endif
let current_compiler = "tsc"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ tsc
CompilerSet makeprg=tsc
CompilerSet errorformat=%f\ %#(%l\\,%c):\ %trror\ TS%n:\ %m,
\%trror\ TS%n:\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -0,0 +1,28 @@
" Vim compiler file
" Compiler: TypeDoc
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2020 Feb 10
if exists("current_compiler")
finish
endif
let current_compiler = "typedoc"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ typedoc
CompilerSet makeprg=typedoc
CompilerSet errorformat=%EError:\ %f(%l),
\%WWarning:\ %f(%l),
\%+IDocumentation\ generated\ at\ %f,
\%Z\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: xmllint " Compiler: Libxml2 Command-Line Tool
" Maintainer: Doug Kearns <dougkearns@gmail.com> " Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2013 Jul 8 " Last Change: 2020 Jul 30
if exists("current_compiler") if exists("current_compiler")
finish finish
@@ -13,14 +13,16 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
endif endif
let s:cpo_save = &cpo let s:cpo_save = &cpo
set cpo-=C set cpo&vim
CompilerSet makeprg=xmllint\ --valid\ --noout CompilerSet makeprg=xmllint\ --valid\ --noout
CompilerSet errorformat=%E%f:%l:\ %.%#\ error\ :\ %m,
CompilerSet errorformat=%+E%f:%l:\ %.%#\ error\ :\ %m, \%W%f:%l:\ %.%#\ warning\ :\ %m,
\%+W%f:%l:\ %.%#\ warning\ :\ %m, \%-Z%p^,
\%-Z%p^, \%C%.%#,
\%-G%.%# \%terror:\ %m,
\%tarning:\ %m,
\%-G%.%#
let &cpo = s:cpo_save let &cpo = s:cpo_save
unlet s:cpo_save unlet s:cpo_save

26
runtime/compiler/xo.vim Normal file
View File

@@ -0,0 +1,26 @@
" Vim compiler file
" Compiler: XO
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2019 Jul 10
if exists("current_compiler")
finish
endif
let current_compiler = "xo"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo&vim
" CompilerSet makeprg=npx\ xo\ --reporter\ compact
CompilerSet makeprg=xo\ --reporter\ compact
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %trror\ %m,
\%f:\ line\ %l\\,\ col\ %c\\,\ %tarning\ %m,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

Some files were not shown because too many files have changed in this diff Show More