]> granicus.if.org Git - vim/commitdiff
patch 8.0.0785: wildcards are not expanded for :terminal v8.0.0785
authorBram Moolenaar <Bram@vim.org>
Thu, 27 Jul 2017 20:57:00 +0000 (22:57 +0200)
committerBram Moolenaar <Bram@vim.org>
Thu, 27 Jul 2017 20:57:00 +0000 (22:57 +0200)
Problem:    Wildcards are not expanded for :terminal.
Solution:   Add FILES to the command flags. (Yasuhiro Matsumoto, closes #1883)
            Also complete commands.

src/ex_cmds.h
src/ex_docmd.c
src/version.c

index dd549816ac283518e9e07898b10dd9c71f979d33..977b01a8c3fb0a5fe0ba04e5663e8b7690252e4d 100644 (file)
@@ -1484,7 +1484,7 @@ EX(CMD_tearoff,           "tearoff",      ex_tearoff,
                        NEEDARG|EXTRA|TRLBAR|NOTRLCOM|CMDWIN,
                        ADDR_LINES),
 EX(CMD_terminal,       "terminal",     ex_terminal,
-                       RANGE|NOTADR|EXTRA|TRLBAR|CMDWIN,
+                       RANGE|NOTADR|FILES|TRLBAR|CMDWIN,
                        ADDR_OTHER),
 EX(CMD_tfirst,         "tfirst",       ex_tag,
                        RANGE|NOTADR|BANG|TRLBAR|ZEROR,
index 506a8088d9fd9e2eef2df60c6e9c2a96f5987c39..f913b19cdfbe143a73220ae7305f4f916474461d 100644 (file)
@@ -2632,6 +2632,7 @@ do_one_cmd(
      * Any others?
      */
     else if (ea.cmdidx == CMD_bang
+           || ea.cmdidx == CMD_terminal
            || ea.cmdidx == CMD_global
            || ea.cmdidx == CMD_vglobal
            || ea.usefilter)
@@ -3788,7 +3789,7 @@ set_one_cmd_context(
        xp->xp_context = EXPAND_FILES;
 
        /* For a shell command more chars need to be escaped. */
-       if (usefilter || ea.cmdidx == CMD_bang)
+       if (usefilter || ea.cmdidx == CMD_bang || ea.cmdidx == CMD_terminal)
        {
 #ifndef BACKSLASH_IN_FILENAME
            xp->xp_shell = TRUE;
@@ -5040,13 +5041,14 @@ expand_filename(
        if (!eap->usefilter
                && !escaped
                && eap->cmdidx != CMD_bang
-               && eap->cmdidx != CMD_make
-               && eap->cmdidx != CMD_lmake
                && eap->cmdidx != CMD_grep
-               && eap->cmdidx != CMD_lgrep
                && eap->cmdidx != CMD_grepadd
-               && eap->cmdidx != CMD_lgrepadd
                && eap->cmdidx != CMD_hardcopy
+               && eap->cmdidx != CMD_lgrep
+               && eap->cmdidx != CMD_lgrepadd
+               && eap->cmdidx != CMD_lmake
+               && eap->cmdidx != CMD_make
+               && eap->cmdidx != CMD_terminal
 #ifndef UNIX
                && !(eap->argt & NOSPC)
 #endif
@@ -5076,7 +5078,8 @@ expand_filename(
        }
 
        /* For a shell command a '!' must be escaped. */
-       if ((eap->usefilter || eap->cmdidx == CMD_bang)
+       if ((eap->usefilter || eap->cmdidx == CMD_bang
+                                               || eap->cmdidx == CMD_terminal)
                            && vim_strpbrk(repl, (char_u *)"!") != NULL)
        {
            char_u      *l;
@@ -10516,7 +10519,7 @@ ex_pedit(exarg_T *eap)
 
     g_do_tagpreview = p_pvh;
     prepare_tagpreview(TRUE);
-    keep_help_flag = curwin_save->w_buffer->b_help;
+    keep_help_flag = bt_help(curwin_save->w_buffer);
     do_exedit(eap, NULL);
     keep_help_flag = FALSE;
     if (curwin != curwin_save && win_valid(curwin_save))
@@ -11265,7 +11268,7 @@ makeopens(
        {
            if (ses_do_win(wp)
                    && wp->w_buffer->b_ffname != NULL
-                   && !wp->w_buffer->b_help
+                   && !bt_help(wp->w_buffer)
 #ifdef FEAT_QUICKFIX
                    && !bt_nofile(wp->w_buffer)
 #endif
@@ -11549,7 +11552,7 @@ ses_do_win(win_T *wp)
 #endif
        )
        return (ssop_flags & SSOP_BLANK);
-    if (wp->w_buffer->b_help)
+    if (bt_help(wp->w_buffer))
        return (ssop_flags & SSOP_HELP);
     return TRUE;
 }
@@ -11679,7 +11682,7 @@ put_view(
      */
     if ((*flagp & SSOP_FOLDS)
            && wp->w_buffer->b_ffname != NULL
-           && (*wp->w_buffer->b_p_bt == NUL || wp->w_buffer->b_help))
+           && (*wp->w_buffer->b_p_bt == NUL || bt_help(wp->w_buffer)))
     {
        if (put_folds(fd, wp) == FAIL)
            return FAIL;
index 43ea98a80ad9e42472648aee3501e921a0a51d04..d66326e878b45af2e079370781883bf0d1c01b30 100644 (file)
@@ -769,6 +769,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    785,
 /**/
     784,
 /**/