chiark / gitweb /
completion: set up _fdroid_* funcs at load time
authorDaniel Martí <mvdan@mvdan.cc>
Thu, 3 Sep 2015 04:23:08 +0000 (21:23 -0700)
committerDaniel Martí <mvdan@mvdan.cc>
Thu, 3 Sep 2015 04:23:08 +0000 (21:23 -0700)
This fixes an issue where these functions would not be created until fdroid
was completed at least once.

completion/bash-completion

index 0fd88d3bf052835220ddf5099d123e6301e9f53d..97d46056fee2c874225e20c63c44256e4898680d 100644 (file)
@@ -267,19 +267,22 @@ __complete_init() {
        __complete_options
 }
 
-_fdroid() {
-       local cmd cmds
-       cmd=${COMP_WORDS[1]}
-       cmds=" build init install update publish checkupdates import \
-readmeta rewritemeta lint scanner verify stats server signindex "
+__cmds=" build init install update publish checkupdates import readmeta \
+rewritemeta lint scanner verify stats server signindex "
 
-       for c in $cmds; do eval "_fdroid_${c} () {
+for c in $__cmds; do
+       eval "_fdroid_${c} () {
                local cur prev opts lopts
-               __fdroid_init ${c};
-       }"; done
+               __fdroid_init ${c}
+       }"
+done
+
+_fdroid() {
+       local cmd
+       cmd=${COMP_WORDS[1]}
 
-       [[ $cmds == *\ $cmd\ * ]] && _fdroid_${cmd} || {
-               (($COMP_CWORD == 1)) && COMPREPLY=( $( compgen -W "${cmds}" -- $cmd ) )
+       [[ $__cmds == *\ $cmd\ * ]] && _fdroid_${cmd} || {
+               (($COMP_CWORD == 1)) && COMPREPLY=( $( compgen -W "${__cmds}" -- $cmd ) )
        }
 }