aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2021-12-08 21:05:20 +0100
committerTobias Geerinckx-Rice <me@tobias.gr>2021-12-08 21:09:55 +0100
commitf3af1fb0bcbcbe18ab773374efe606e90107cfb6 (patch)
tree9681ce4ddc05589755a6d59d3ff122ecba4b3359
parent0ba4e94e8448e6c27cceb690b085c8d8cf66e577 (diff)
downloadguix-f3af1fb0bcbcbe18ab773374efe606e90107cfb6.tar
guix-f3af1fb0bcbcbe18ab773374efe606e90107cfb6.tar.gz
bash completion: Complete ‘guix shell -f’.
* etc/completion/bash/guix (_guix_complete): Suggest a file name following ‘guix shell […] -f’.
-rw-r--r--etc/completion/bash/guix10
1 files changed, 7 insertions, 3 deletions
diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix
index 6a11e1b23b..f262d4d95a 100644
--- a/etc/completion/bash/guix
+++ b/etc/completion/bash/guix
@@ -275,9 +275,13 @@ _guix_complete ()
fi
elif [[ "$command" = "environment" || "$command" = "shell" ]]
then
- if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p || _guix_is_dash_l
- then
- _guix_complete_file
+ if _guix_is_dash_f && [[ "$command" = "shell" ]]
+ then
+ # The otherwise identical ‘guix environment’ lacks the ‘-f’ option.
+ _guix_complete_file
+ elif _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p || _guix_is_dash_l
+ then
+ _guix_complete_file
elif _guix_is_option "$word_at_point"
then
_guix_complete_option "$command_index" "$word_at_point"