[bash-completion] Fix tab separation on macOS

We have a regex that needs to match a tab character in the command
output, but on macOS sed doesn't support '\t', causing it to split on
the 't' character instead. Fix by having bash expand the \t first.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@333202 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Ben Langmuir 2018-05-24 16:25:40 +00:00
parent 9c82d4ff60
commit 620cb93417
1 changed files with 2 additions and 1 deletions

View File

@ -38,7 +38,8 @@ _clang()
# expand ~ to $HOME # expand ~ to $HOME
eval local path=${COMP_WORDS[0]} eval local path=${COMP_WORDS[0]}
flags=$( "$path" --autocomplete="$arg" 2>/dev/null | sed -e 's/\t.*//' ) # Use $'\t' so that bash expands the \t for older versions of sed.
flags=$( "$path" --autocomplete="$arg" 2>/dev/null | sed -e $'s/\t.*//' )
# If clang is old that it does not support --autocomplete, # If clang is old that it does not support --autocomplete,
# fall back to the filename completion. # fall back to the filename completion.
if [[ "$?" != 0 ]]; then if [[ "$?" != 0 ]]; then