]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.0.0278: the +wildignore feature is nearly always available v9.0.0278
authorBram Moolenaar <Bram@vim.org>
Fri, 26 Aug 2022 15:41:14 +0000 (16:41 +0100)
committerBram Moolenaar <Bram@vim.org>
Fri, 26 Aug 2022 15:41:14 +0000 (16:41 +0100)
Problem:    The +wildignore feature is nearly always available.
Solution:   Graduate +wildignore for consistency.

runtime/doc/options.txt
runtime/doc/various.txt
src/bufwrite.c
src/evalfunc.c
src/feature.h
src/fileio.c
src/filepath.c
src/option.c
src/option.h
src/optiondefs.h
src/version.c

index e4bf25f70c51c7df766dbc34d430209ed2ee8666..bdcb00f1a5c338dc54d8bb61f9c1a9c49f2a4906 100644 (file)
@@ -1177,8 +1177,6 @@ A jump table for the options with a short description can be found at |Q_op|.
                                 Unix: "/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*"
                                 Mac: "/private/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*")
                        global
-                       {not available when compiled without the |+wildignore|
-                       feature}
        A list of file patterns.  When one of the patterns matches with the
        name of the file which is written, no backup file is created.  Both
        the specified file name and the full path name of the file are used.
@@ -9024,8 +9022,6 @@ A jump table for the options with a short description can be found at |Q_op|.
                                                *'wildignore'* *'wig'*
 'wildignore' 'wig'     string  (default "")
                        global
-                       {not available when compiled without the |+wildignore|
-                       feature}
        A list of file patterns.  A file that matches with one of these
        patterns is ignored when expanding |wildcards|, completing file or
        directory names, and influences the result of |expand()|, |glob()| and
@@ -9156,8 +9152,6 @@ A jump table for the options with a short description can be found at |Q_op|.
                                                *'wildoptions'* *'wop'*
 'wildoptions' 'wop'    string  (default "")
                        global
-                       {not available when compiled without the |+wildignore|
-                       feature}
        A list of words that change how |cmdline-completion| is done.
        The following values are supported:
          fuzzy         Use |fuzzy-matching| to find completion matches. When
index 92403d376ca9630de020a595ff8039c378c2eab0..528901db66661851fdfe26fc57acdc871570e394 100644 (file)
@@ -490,7 +490,7 @@ T  *+visual*                Visual mode |Visual-mode| Always enabled since 7.4.200.
 T  *+visualextra*      extra Visual mode commands |blockwise-operators|
 T  *+vreplace*         |gR| and |gr|
    *+vtp*              on MS-Windows console: support for 'termguicolors'
-N  *+wildignore*       |'wildignore'|
+T  *+wildignore*       |'wildignore'|  Always enabled since 9.0.0278
 N  *+wildmenu*         |'wildmenu'|
 T  *+windows*          more than one window; Always enabled since 8.0.1118.
 m  *+writebackup*      |'writebackup'| is default on
index 5db8f2983b36ecd3dbf11fbde8cceea6b70cf002..b283b5eb64dbd512ba34895e3d45699de228c192 100644 (file)
@@ -1136,10 +1136,8 @@ buf_write(
 
     // If 'backupskip' is not empty, don't make a backup for some files.
     dobackup = (p_wb || p_bk || *p_pm != NUL);
-#ifdef FEAT_WILDIGN
     if (dobackup && *p_bsk != NUL && match_file_list(p_bsk, sfname, ffname))
        dobackup = FALSE;
-#endif
 
     // Save the value of got_int and reset it.  We don't want a previous
     // interruption cancel writing, only hitting CTRL-C while writing should
index b3084f33588175dbbdbcf0264d14db0fdd7c9d93..a41e6758af50928dca874017c28d6a3426abcd98 100644 (file)
@@ -6260,13 +6260,7 @@ f_has(typval_T *argvars, typval_T *rettv)
                0
 #endif
                },
-       {"wildignore",
-#ifdef FEAT_WILDIGN
-               1
-#else
-               0
-#endif
-               },
+       {"wildignore", 1},
        {"wildmenu",
 #ifdef FEAT_WILDMENU
                1
index bffd80a91970aa70d229098309af1fa44b259fb5..529ada57a1bdd5afd26fb56cabe4afb3e34604c0 100644 (file)
  * +textobjects                Text objects: "vaw", "das", etc.
  * +file_in_path       "gf" and "<cfile>" commands.
  * +path_extra         up/downwards searching in 'path' and 'tags'.
+ * +wildignore         'wildignore' and 'backupskip' options
  *
  * Obsolete:
  * +tag_old_static     Old style static tags: "file:tag  file  ..".
 /*
  * +timers             timer_start()
  */
-#if defined(FEAT_RELTIME) && (defined(UNIX) || defined(MSWIN) || defined(VMS) )
+#if defined(FEAT_RELTIME) && (defined(UNIX) || defined(MSWIN) || defined(VMS))
 # define FEAT_TIMERS
 #endif
 
 # define FEAT_BYTEOFF
 #endif
 
-/*
- * +wildignore         'wildignore' and 'backupskip' options
- *                     Needed for Unix to make "crontab -e" work.
- */
-#if defined(FEAT_NORMAL) || defined(UNIX)
-# define FEAT_WILDIGN
-#endif
-
 /*
  * +wildmenu           'wildmenu' option
  */
index 8437b2b44742bade194a03485170b2c332efaf76..701521a4191a49688ab9295b841b10ffb9750061 100644 (file)
@@ -312,7 +312,9 @@ readfile(
        curbuf->b_op_start = orig_start;
 
        if (flags & READ_NOFILE)
-           return NOTDONE;  // so that BufEnter can be triggered
+           // Return NOTDONE instead of FAIL so that BufEnter can be triggered
+           // and other operations don't fail.
+           return NOTDONE;
     }
 
     if ((shortmess(SHM_OVER) || curbuf->b_help) && p_verbose == 0)
@@ -5402,7 +5404,6 @@ match_file_pat(
     return result;
 }
 
-#if defined(FEAT_WILDIGN) || defined(PROTO)
 /*
  * Return TRUE if a file matches with a pattern in "list".
  * "list" is a comma-separated list of patterns, like 'wildignore'.
@@ -5436,7 +5437,6 @@ match_file_list(char_u *list, char_u *sfname, char_u *ffname)
     }
     return FALSE;
 }
-#endif
 
 /*
  * Convert the given pattern "pat" which has shell style wildcards in it, into
index f61603fa6f3ab34d08bef4d273f89fa36f14b470..646a25e62e46ddec679f8bbd85ba3a28a675aeef 100644 (file)
@@ -3136,7 +3136,6 @@ expand_wildcards(
     if ((flags & EW_KEEPALL) || retval == FAIL)
        return retval;
 
-#ifdef FEAT_WILDIGN
     /*
      * Remove names that match 'wildignore'.
      */
@@ -3172,7 +3171,6 @@ expand_wildcards(
            return FAIL;
        }
     }
-#endif
 
     /*
      * Move the names where 'suffixes' match to the end.
index 05e0527cd3a8bb3f7528167463ac3a32c93b8780..3e1473fc95c328cd6964ca50bce98d407b7656bf 100644 (file)
@@ -126,17 +126,16 @@ set_init_1(int clean_arg)
        set_string_default_esc("sh", p, TRUE);
 #endif
 
-#ifdef FEAT_WILDIGN
     /*
      * Set the default for 'backupskip' to include environment variables for
      * temp files.
      */
     {
-# ifdef UNIX
+#ifdef UNIX
        static char     *(names[4]) = {"", "TMPDIR", "TEMP", "TMP"};
-# else
+#else
        static char     *(names[3]) = {"TMPDIR", "TEMP", "TMP"};
-# endif
+#endif
        int             len;
        garray_T        ga;
        int             mustfree;
@@ -148,15 +147,15 @@ set_init_1(int clean_arg)
        for (n = 0; n < (long)ARRAY_LENGTH(names); ++n)
        {
            mustfree = FALSE;
-# ifdef UNIX
+#ifdef UNIX
            if (*names[n] == NUL)
-#  ifdef MACOS_X
+# ifdef MACOS_X
                p = (char_u *)"/private/tmp";
-#  else
+# else
                p = (char_u *)"/tmp";
-#  endif
-           else
 # endif
+           else
+#endif
                p = vim_getenv((char_u *)names[n], &mustfree);
            if (p != NULL && *p != NUL)
            {
@@ -186,7 +185,6 @@ set_init_1(int clean_arg)
            vim_free(ga.ga_data);
        }
     }
-#endif
 
     /*
      * 'maxmemtot' and 'maxmem' may have to be adjusted for available memory
index d40dcb5ea5b0d42bba843f712836b8fd9eab3898..aeb80ce4317021b3027a6bb10037256195071519 100644 (file)
@@ -451,9 +451,7 @@ EXTERN unsigned     bo_flags;
 #define BO_TERM                0x40000
 #define BO_WILD                0x80000
 
-#ifdef FEAT_WILDIGN
 EXTERN char_u  *p_bsk;         // 'backupskip'
-#endif
 #ifdef FEAT_CRYPT
 EXTERN char_u  *p_cm;          // 'cryptmethod'
 #endif
@@ -1061,9 +1059,7 @@ EXTERN long       p_window;       // 'window'
 #define FEAT_WAK
 EXTERN char_u  *p_wak;         // 'winaltkeys'
 #endif
-#ifdef FEAT_WILDIGN
 EXTERN char_u  *p_wig;         // 'wildignore'
-#endif
 EXTERN int     p_wiv;          // 'weirdinvert'
 EXTERN char_u  *p_ww;          // 'whichwrap'
 EXTERN long    p_wc;           // 'wildchar'
index de63ceb4ab4e0f9c41e474b638f66ffc5156bc5a..099ad2e95bb33df0b1b1c919b9429e0650a3ad0b 100644 (file)
@@ -427,13 +427,8 @@ static struct vimoption options[] =
 #endif
                                            (char_u *)0L} SCTX_INIT},
     {"backupskip",  "bsk",  P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
-#ifdef FEAT_WILDIGN
                            (char_u *)&p_bsk, PV_NONE,
                            {(char_u *)"", (char_u *)0L}
-#else
-                           (char_u *)NULL, PV_NONE,
-                           {(char_u *)0L, (char_u *)0L}
-#endif
                            SCTX_INIT},
     {"balloondelay","bdlay",P_NUM|P_VI_DEF,
 #ifdef FEAT_BEVAL
@@ -2757,11 +2752,7 @@ static struct vimoption options[] =
                            (char_u *)&p_wcm, PV_NONE,
                            {(char_u *)0L, (char_u *)0L} SCTX_INIT},
     {"wildignore",  "wig",  P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
-#ifdef FEAT_WILDIGN
                            (char_u *)&p_wig, PV_NONE,
-#else
-                           (char_u *)NULL, PV_NONE,
-#endif
                            {(char_u *)"", (char_u *)0L} SCTX_INIT},
     {"wildignorecase", "wic", P_BOOL|P_VI_DEF,
                            (char_u *)&p_wic, PV_NONE,
index 1fd798b8fa8a3d2881f1f0ebd68c4208e409883b..9088962d84c38995111cb99dc89c65f2638ef1e2 100644 (file)
@@ -655,11 +655,7 @@ static char *(features[]) =
        "-vtp",
 # endif
 #endif
-#ifdef FEAT_WILDIGN
        "+wildignore",
-#else
-       "-wildignore",
-#endif
 #ifdef FEAT_WILDMENU
        "+wildmenu",
 #else
@@ -723,6 +719,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    278,
 /**/
     277,
 /**/