diff options
author | Jan Edmund Lazo <janedmundlazo@hotmail.com> | 2018-10-02 22:10:47 -0400 |
---|---|---|
committer | Jan Edmund Lazo <janedmundlazo@hotmail.com> | 2018-10-02 22:47:47 -0400 |
commit | c0d835764fbf33b2effc359498e58e8a114444a8 (patch) | |
tree | b0598f7a1697285f7586a4c6f354c7a811d2d278 | |
parent | 07fbdf4acc3b15ff97acb5c90243c61d938f8541 (diff) | |
download | rneovim-c0d835764fbf33b2effc359498e58e8a114444a8.tar.gz rneovim-c0d835764fbf33b2effc359498e58e8a114444a8.tar.bz2 rneovim-c0d835764fbf33b2effc359498e58e8a114444a8.zip |
vim-patch:8.1.0047: no completion for :unlet $VAR
Problem: No completion for :unlet $VAR.
Solution: Add completion. (Jason Franklin)
https://github.com/vim/vim/commit/19834010889fc5bfa0f88b3ba83133dae6c0a35d
-rw-r--r-- | src/nvim/ex_docmd.c | 13 | ||||
-rw-r--r-- | src/nvim/testdir/test_unlet.vim | 10 |
2 files changed, 21 insertions, 2 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index f8d4e7d980..2a733f5831 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -3260,8 +3260,15 @@ const char * set_one_cmd_context( while ((xp->xp_pattern = (char_u *)strchr(arg, ' ')) != NULL) { arg = (const char *)xp->xp_pattern + 1; } + xp->xp_context = EXPAND_USER_VARS; xp->xp_pattern = (char_u *)arg; + + if (*xp->xp_pattern == '$') { + xp->xp_context = EXPAND_ENV_VARS; + xp->xp_pattern++; + } + break; case CMD_function: @@ -9049,8 +9056,10 @@ makeopens( // cursor can be set. This is done again below. // winminheight and winminwidth need to be set to avoid an error if the // user has set winheight or winwidth. - if (put_line(fd, "set winminheight=1 winminwidth=1 winheight=1 winwidth=1") - == FAIL) { + if (put_line(fd, "set winminheight=0") == FAIL + || put_line(fd, "set winheight=1") == FAIL + || put_line(fd, "set winminwidth=0") == FAIL + || put_line(fd, "set winwidth=1") == FAIL) { return FAIL; } if (nr > 1 && ses_winsizes(fd, restore_size, tab_firstwin) == FAIL) { diff --git a/src/nvim/testdir/test_unlet.vim b/src/nvim/testdir/test_unlet.vim index dbddffb492..b02bdaab3b 100644 --- a/src/nvim/testdir/test_unlet.vim +++ b/src/nvim/testdir/test_unlet.vim @@ -52,3 +52,13 @@ func Test_unlet_env() unlet $MUST_NOT_BE_AN_ERROR endfunc + +func Test_unlet_complete() + let g:FOOBAR = 1 + call feedkeys(":unlet g:FOO\t\n", 'tx') + call assert_true(!exists('g:FOOBAR')) + + let $FOOBAR = 1 + call feedkeys(":unlet $FOO\t\n", 'tx') + call assert_true(!exists('$FOOBAR') || empty($FOOBAR)) +endfunc |