Commit Graph

7385 Commits

Author SHA1 Message Date
ZyX
c7495ebcc0 viml/parser/expressions: Add support for parsing assignments 2017-11-12 02:18:43 +03:00
ZyX
1aa6276c29 viml/parser/expressions: Replace lambda-specific WantedNode entries
This way code will be easier to adapt to handling (partially) non-expressions 
like :let lvalue part or :function definitions, and that would be needed in the 
future both for proper completion support and for the Ex commands parser.
2017-11-12 00:03:45 +03:00
ckelsel
ea020f2e26 fix lint error 2017-11-11 09:04:48 +08:00
KunMing Xie
a2fdd0a72f vim-patch:8.0.0237 (#7531)
Problem:    When setting wildoptions=tagfile the completion context is not set
            correctly. (desjardins)
Solution:   Check for EXPAND_TAGS_LISTFILES. (Christian Brabandt, closes vim/vim#1399)

ba47b51ff8
2017-11-11 01:26:55 +01:00
KunMing Xie
4fa0970519 vim-patch:8.0.0242 (#7532)
Problem:    Completion of user defined functions is not covered by tests.
Solution:   Add tests.  Also test various errors of user-defined commands.
            (Dominique Pelle, closes vim/vim#1413)

65c836e600
2017-11-11 00:00:11 +01:00
KunMing Xie
faa15c5b83 vim-patch:8.0.0218 (#7529)
Problem:    No command line completion for :cexpr, :cgetexpr, :caddexpr, etc.
Solution:   Make completion work. (Yegappan Lakshmanan)  Add a test.

2b2207ba69
2017-11-10 23:35:55 +01:00
Justin M. Keyes
f5d4da0144 :checkhealth : validate 'runtimepath' (#7526) 2017-11-10 22:37:54 +01:00
ckelsel
67a2207c4a vim-patch:8.0.0226
Problem:    The test for patch 8.0.0224 misses the CR characters and passes
            even without the fix. (Christian Brabandt)
Solution:   Use double quotes and \<CR>.

1695f99d08
2017-11-10 23:33:40 +08:00
ckelsel
7e8212c459 vim-patch:8.0.0224
Problem:    When 'fileformats' is changed in a BufReadPre auto command, it
            does not take effect in readfile(). (Gary Johnson)
Solution:   Check the value of 'fileformats' after executing auto commands.
            (Christian Brabandt)

7a2699e868
2017-11-10 23:28:24 +08:00
Justin M. Keyes
9baa7ca37f test/oldtest: count is not special in Nvim #7407 2017-11-09 11:11:12 +01:00
Marco Hinz
9837a9c401 compat: "v:count" distinct from "count" (#7407) 2017-11-09 02:20:12 +01:00
Justin M. Keyes
e98bcf0523 Merge #7465 has('ttyin'), has('ttyout') 2017-11-08 04:10:22 +01:00
Justin M. Keyes
2ca59638ba vim-patch:b0d45e7f5354
Update runtime files.

b0d45e7f53
2017-11-07 23:07:03 +01:00
Justin M. Keyes
4175dfac9a vim-patch:01164a6546b4
Long overdue runtime update.

01164a6546
2017-11-07 23:07:03 +01:00
Justin M. Keyes
10e5040b61 vim-patch:24a98a0eb772
Update runtime files

24a98a0eb7
2017-11-07 20:16:48 +01:00
Justin M. Keyes
ae569ea57b Merge #7500 'vim-patch: runtime' 2017-11-07 18:59:39 +01:00
Björn Linse
06fd32b8ff ui: remove ext_cmdline noise (#7486)
Only send cmdline contents once per ui_flush.
Don't send extra redraws due to 'arshape', it makes no difference to
external ui.
2017-11-07 18:53:42 +01:00
Justin M. Keyes
39fa278216 vim-patch:f55e4c867f77
Updated runtime files

f55e4c867f
2017-11-07 03:14:31 +01:00
Justin M. Keyes
bd17fa487d vim-patch:bf92e3a3719f
Update translations.

bf92e3a371
2017-11-07 02:49:53 +01:00
Justin M. Keyes
20e317e22a po: remove duplicate definitions 2017-11-07 02:25:46 +01:00
Justin M. Keyes
85cfc4c4f9 vim-patch:74675a666b51
Updated runtime files and translations.

74675a666b
2017-11-07 01:46:19 +01:00
Justin M. Keyes
a39bf01958 vim-patch:3ec574f2b549
Update runtime files.

Includes changing &sw to shiftwidth() for all indent scripts.

3ec574f2b5
2017-11-07 01:37:30 +01:00
Justin M. Keyes
599170de83 vim-patch:6aa8cea46d41
Update runtime files.

6aa8cea46d
2017-11-07 01:33:46 +01:00
Justin M. Keyes
c598c3ac77 doc: deprecate 'highlight'; remove howto.txt (#7497) 2017-11-07 00:51:03 +01:00
ZyX
4aebd00a9e *: Fix linter errors 2017-11-06 20:28:37 +03:00
ZyX
24a353364d Merge branch 'master' into expression-parser 2017-11-06 20:23:35 +03:00
ZyX
f2660bee6a *: Fix some typos found by oni-link 2017-11-06 20:20:31 +03:00
ZyX
c85f485aa7 charset: Move vim_str2nr flags from vim.h to charset.h 2017-11-06 19:06:24 +03:00
Adrian Neumann
8f03014e88 eval/decode.c: Avoid NULL arg to memchr() #7332
Clang complains because memchr has undefined behavior if the ptr is
NULL, even if len==0.

Helped-by: Nikolai Aleksandrovich Pavlov <kp-pav@yandex.ru>
2017-11-06 05:00:58 +01:00
Justin M. Keyes
280943d9b9 doc: API (generated) 2017-11-06 04:51:34 +01:00
Justin M. Keyes
73fabf4f15 doc: nvim_buf_add_highlight(): zero-indexed lines 2017-11-06 01:56:04 +01:00
Justin M. Keyes
842a54a1bb doc 2017-11-06 01:56:04 +01:00
ZyX
05f775b5f2 viml/parser/expressions: Briefly document some differences 2017-11-06 01:57:22 +03:00
ZyX
ebb5977837 api/vim: Add “len” dictionary key
This allows determining where parsing ended which may be needed for e.g. parsing
`:echo` with that API function.
2017-11-06 01:17:39 +03:00
ZyX
7849070f99 tests: Add missing test cases 2017-11-06 01:17:39 +03:00
ZyX
7bc6de7526 api/vim,functests: Add tests for nvim_parse_expression, fix found bugs 2017-11-06 01:17:39 +03:00
ZyX
07ec709141 vim/api: Actually dump AST, fix some bugs in nvim_parse_expression 2017-11-06 01:17:38 +03:00
ZyX
b9d5aea073 api/vim: Create part of nvim_parse_expression function 2017-11-06 01:17:38 +03:00
ZyX
d98199de9c charset: Refactor vim_str2nr 2017-11-06 01:17:38 +03:00
KillTheMule
04b3c32772 'inccommand': Fix matches for zero-width (#7487)
closes #7485
2017-11-05 17:11:44 +01:00
Justin M. Keyes
860ecd7055 vim-patch:8.0.0096: has('ttyin'), has('ttyout')
Nvim note: intentionally did not include `--ttyfail` since its purpose
is not clear. (And it isn't used in any Vim test files/scripts).

---

Problem:    When the input or output is not a tty Vim appears to hang.
Solution:   Add the --ttyfail argument.  Also add the "ttyin" and "ttyout"
            features to be able to check in Vim script.

2cab0e1910
2017-11-04 09:36:52 +01:00
Lech Lorens
ff819d8ad7 quickfix: fix location list updates.
Fix quickfix performance optimization which prevented quickfix items
from being updated when there were multiple windows with location lists
but the buffer with errors only in one of the lists.
2017-10-31 19:14:23 +01:00
Justin M. Keyes
b67f58b284 Merge #7454 'ui: ext_wildmenu'
closes #6168
ref #5686
2017-10-31 10:45:06 +01:00
Justin M. Keyes
60b1e8ad12 Merge #7315 "'inccommand': multiline, other fixes"
closes #5589
closes #5590
closes #5598
closes #5608
2017-10-31 01:11:35 +01:00
Justin M. Keyes
241fe704a5 pvs/V575: false positive (#7462)
./src/nvim/ex_getln.c:2787:1: error: V575 The 'memcpy' function doesn't
copy the whole string. Use 'strcpy / strcpy_s' function to preserve
terminal null.

We could instead "trick" PVS like this:

    diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c
    index e79476ab532a..295630693b27 100644
    --- a/src/nvim/ex_getln.c
    +++ b/src/nvim/ex_getln.c
    @@ -2782,9 +2782,10 @@ static void ui_ext_cmdline_show(CmdlineInfo *line)

     void ui_ext_cmdline_block_append(int indent, const char *line)
     {
    -  char *buf = xmallocz(indent + strlen(line));
    +  size_t linelen = strlen(line);
    +  char *buf = xmallocz(indent + linelen);
       memset(buf, ' ', indent);
    -  memcpy(buf+indent, line, strlen(line));
    +  memcpy(buf + indent, line, linelen);

       Array item = ARRAY_DICT_INIT;
       ADD(item, DICTIONARY_OBJ((Dictionary)ARRAY_DICT_INIT));
2017-10-30 23:29:47 +01:00
Justin M. Keyes
cc7285823c eval_clear: free profile data
Memory leak exposed by new test added in #7444.

==38771==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 2400 byte(s) in 1 object(s) allocated from:
    0 0x51163d in realloc (/home/travis/build/neovim/neovim/build/bin/nvim+0x51163d)
    1 0xfda51c in xrealloc /home/travis/build/neovim/neovim/src/nvim/memory.c:169:15
    2 0xda6802 in ga_grow /home/travis/build/neovim/neovim/src/nvim/garray.c:98:14
    3 0xb67ccd in script_line_start /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:3286:11
    4 0xb62885 in getsourceline /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:3110:5
    5 0xb5fbfd in do_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2951:15
    6 0xb5c484 in cmd_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2710:14
    7 0xb5c5b0 in ex_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2691:3
    8 0xb950b9 in do_one_cmd /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:2242:5
    9 0xb737e1 in do_cmdline /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:609:20
    10 0xb79ac5 in do_cmdline_cmd /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:280:10
    11 0xed8a7b in exe_commands /home/travis/build/neovim/neovim/src/nvim/main.c:1684:5
    12 0xec6602 in main /home/travis/build/neovim/neovim/src/nvim/main.c:521:5
    13 0x2ae968600f44 in __libc_start_main /build/eglibc-SvCtMH/eglibc-2.19/csu/libc-start.c:287
2017-10-30 08:37:59 +01:00
ZyX
0356dbbb36 ex_getln: Fix variable name which is wrong after the merge 2017-10-30 01:38:02 +03:00
ZyX
a9b203d23f *: Fix linter errors
Big function in expressions.c may be refactored, if I ever catch the idea how to 
split it right.
2017-10-30 01:32:10 +03:00
ZyX
b29a776550 Merge branch 'master' into expression-parser 2017-10-30 00:49:12 +03:00
ZyX
538af1c90a syntax,viml/parser/expressions: Add missing highlight groups
Also adjusts some names.
2017-10-29 22:02:19 +03:00