aboutsummaryrefslogtreecommitdiff
path: root/misc/bash
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2020-05-10 21:35:07 +0200
committerEelco Dolstra <edolstra@gmail.com>2020-05-10 21:35:07 +0200
commite0c19ee620c53b52ca7cf69c19d414d782338be1 (patch)
treea28571713bc2558e09798d2f4bdc2d0220802649 /misc/bash
parent91ddee6bf045b1c6144d14233abdb96127186ec3 (diff)
Add completion for paths
Diffstat (limited to 'misc/bash')
-rw-r--r--misc/bash/completion.sh10
1 files changed, 9 insertions, 1 deletions
diff --git a/misc/bash/completion.sh b/misc/bash/completion.sh
index 097353b50..93298c369 100644
--- a/misc/bash/completion.sh
+++ b/misc/bash/completion.sh
@@ -1,6 +1,14 @@
function _complete_nix {
+ local have_type
while IFS= read -r line; do
- COMPREPLY+=("$line")
+ if [[ -z $have_type ]]; then
+ have_type=1
+ if [[ $line = filenames ]]; then
+ compopt -o filenames
+ fi
+ else
+ COMPREPLY+=("$line")
+ fi
done < <(NIX_GET_COMPLETIONS=$COMP_CWORD "${COMP_WORDS[@]}")
}