guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

09/13: bash completion: Complete top-level options.


From: guix-commits
Subject: 09/13: bash completion: Complete top-level options.
Date: Sat, 30 Oct 2021 18:58:34 -0400 (EDT)

nckx pushed a commit to branch master
in repository guix.

commit 8e6989fcaf4a6de00e799777e2a0ccb90fc05e59
Author: Tobias Geerinckx-Rice <me@tobias.gr>
AuthorDate: Sat Oct 30 16:37:25 2021 +0200

    bash completion: Complete top-level options.
    
    * etc/completion/bash/guix (_guix_complete_option): Fix operation without a 
{,sub}command.
    (_guix_complete): Call it also when no command is given.
---
 etc/completion/bash/guix | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix
index 5d1ae37..6a11e1b 100644
--- a/etc/completion/bash/guix
+++ b/etc/completion/bash/guix
@@ -72,10 +72,16 @@ _guix_complete_option ()
 {
     local command="${COMP_WORDS[$1]}"
     local subcommand="${COMP_WORDS[$(($1 + 1))]}"
-    if _guix_is_option "$subcommand"
+
+    if [ $1 -le 1 ]
+    then
+       command=""
+       subcommand=""
+    elif _guix_is_option "$subcommand"
     then
        subcommand=""
     fi
+
     local options="$(${COMP_WORDS[0]} $command $subcommand --help 2> /dev/null 
\
                             | grep '^  \+-' \
                             | sed 
-e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')"
@@ -229,6 +235,7 @@ _guix_complete ()
     case $COMP_CWORD in
        $command_index)
            _guix_complete_command
+           _guix_complete_option 0 "$word_at_point"
            ;;
        *)
            if [[ "$command" = "package" ]]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]