diff options
author | Christian Brabandt <cb@256bit.org> | 2023-09-27 19:08:25 +0200 |
---|---|---|
committer | Christian Brabandt <cb@256bit.org> | 2023-09-27 19:08:25 +0200 |
commit | 9eb1ce531527a7177d16373b0f8689bbcd3d5f73 (patch) | |
tree | fd2e474c06d994ff5bfbfd8bf11d903e08c60551 /runtime | |
parent | 2dede3dbfa3cb52f464f942d46d3ec0f66e3e354 (diff) |
patch 9.0.1946: filename expansion using ** in bash may failv9.0.1946
Problem: filename expansion using ** in bash may fail
Solution: Try to enable the globstar setting
Starting with bash 4.0 it supports extended globbing using the globstar
shell option. This makes matching recursively below a certain directory
using the ** pattern work as expected nowadays. However, we need to
explicitly enable this using the 'shopt -s globstar' bash command.
So let's check the bash environment variable $BASH_VERSINFO (which is
supported since bash 3.0 and conditionally enable the globstar option,
if the major version is at least 4. For older bashs, this at least
shouldn't cause errors (unless one is using really ancient bash 2.X or
something).
closes: #13002
closes: #13144
Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/editing.txt | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt index da9aeb7fea..46279110a7 100644 --- a/runtime/doc/editing.txt +++ b/runtime/doc/editing.txt @@ -1,4 +1,4 @@ -*editing.txt* For Vim version 9.0. Last change: 2023 Apr 23 +*editing.txt* For Vim version 9.0. Last change: 2023 Sep 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -385,7 +385,9 @@ as a wildcard when "[" is in the 'isfname' option. A simple way to avoid this is to use "path\[[]abc]", this matches the file "path\[abc]". *starstar-wildcard* -Expanding "**" is possible on Unix, Win32, macOS and a few other systems. +Expanding "**" is possible on Unix, Win32, macOS and a few other systems (but +it may depend on your 'shell' setting. It's known to work correctly for zsh; for +bash this requires at least bash version >= 4.X). This allows searching a directory tree. This goes up to 100 directories deep. Note there are some commands where this works slightly differently, see |file-searching|. |