mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-03 17:50:11 +02:00
Support new Build: syntax in completion; retab
This commit is contained in:
parent
8627357cd9
commit
c47b1dc286
@ -24,191 +24,197 @@
|
||||
# This way, one can simply do 'fbld com.some.app' or 'fcheckup com.some.app'
|
||||
|
||||
__package() {
|
||||
[[ -d ./metadata ]] || return 0
|
||||
files=( metadata/*.txt )
|
||||
files=( ${files[@]#metadata/} )
|
||||
files=${files[@]%.txt}
|
||||
COMPREPLY=( $( compgen -W "$files" -- $cur ) )
|
||||
[[ -d ./metadata ]] || return 0
|
||||
files=( metadata/*.txt )
|
||||
files=( ${files[@]#metadata/} )
|
||||
files=${files[@]%.txt}
|
||||
COMPREPLY=( $( compgen -W "$files" -- $cur ) )
|
||||
}
|
||||
|
||||
__fdroid_init() {
|
||||
COMPREPLY=()
|
||||
cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
COMPREPLY=()
|
||||
cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
||||
|
||||
(( $# >= 1 )) && __complete_${1}
|
||||
(( $# >= 1 )) && __complete_${1}
|
||||
}
|
||||
|
||||
__vercode() {
|
||||
local s p_found p
|
||||
s=${#COMP_WORDS[*]}
|
||||
p_found=false
|
||||
local s p_found p
|
||||
s=${#COMP_WORDS[*]}
|
||||
p_found=false
|
||||
|
||||
$aliased && p=${COMP_WORDS[1]} || {
|
||||
for (( i=1; i <= s; i++ )); do
|
||||
$p_found && { p=${COMP_WORDS[$i]}; break;}
|
||||
[[ ${COMP_WORDS[$i]} == -p ]] || [[ ${COMP_WORDS[$i]} == --package ]] &&\
|
||||
p_found=true
|
||||
done
|
||||
$p_found || return 0
|
||||
}
|
||||
$aliased && p=${COMP_WORDS[1]} || {
|
||||
for (( i=1; i <= s; i++ )); do
|
||||
$p_found && { p=${COMP_WORDS[$i]}; break;}
|
||||
[[ ${COMP_WORDS[$i]} == -p ]] || [[ ${COMP_WORDS[$i]} == --package ]] &&\
|
||||
p_found=true
|
||||
done
|
||||
$p_found || return 0
|
||||
}
|
||||
|
||||
COMPREPLY=( $( compgen -W "$( while read line; do
|
||||
[[ "$line" == "Build Version:"* ]] && {
|
||||
line="${line#*,}"
|
||||
printf "${line%%,*} "
|
||||
} done < "metadata/${p}.txt" )" -- $cur ) )
|
||||
COMPREPLY=( $( compgen -W "$( while read line; do
|
||||
if [[ "$line" == "Build Version:"* ]]
|
||||
then
|
||||
line="${line#*,}"
|
||||
printf "${line%%,*} "
|
||||
elif [[ "$line" == "Build:"* ]]
|
||||
then
|
||||
line="${line#*,}"
|
||||
printf "${line%%,*} "
|
||||
fi
|
||||
done < "metadata/${p}.txt" )" -- $cur ) )
|
||||
}
|
||||
|
||||
__complete_options() {
|
||||
case "${cur}" in
|
||||
--*)
|
||||
COMPREPLY=( $( compgen -W "${lopts}" -- $cur ) )
|
||||
return 0;;
|
||||
*)
|
||||
COMPREPLY=( $( compgen -W "${opts} ${lopts}" -- $cur ) )
|
||||
return 0;;
|
||||
esac
|
||||
case "${cur}" in
|
||||
--*)
|
||||
COMPREPLY=( $( compgen -W "${lopts}" -- $cur ) )
|
||||
return 0;;
|
||||
*)
|
||||
COMPREPLY=( $( compgen -W "${opts} ${lopts}" -- $cur ) )
|
||||
return 0;;
|
||||
esac
|
||||
}
|
||||
|
||||
__complete_build() {
|
||||
opts="-h -v -p -c -l -s -t -f"
|
||||
lopts="--help --verbose --package --vercode --latest --server --resetserver
|
||||
opts="-h -v -p -c -l -s -t -f"
|
||||
lopts="--help --verbose --package --vercode --latest --server --resetserver
|
||||
--on-server --force --install --all"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
-c|--vercode)
|
||||
__vercode
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
-c|--vercode)
|
||||
__vercode
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_update() {
|
||||
opts="-h -c -v -q -b -i -I -e -w"
|
||||
lopts="--help --createmeta --verbose --quiet --buildreport --interactive
|
||||
opts="-h -c -v -q -b -i -I -e -w"
|
||||
lopts="--help --createmeta --verbose --quiet --buildreport --interactive
|
||||
--icons --editor --wiki --pretty --clean"
|
||||
case "${prev}" in
|
||||
-e|--editor)
|
||||
_filedir
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
case "${prev}" in
|
||||
-e|--editor)
|
||||
_filedir
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_publish() {
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_checkupdates() {
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package --auto --autoonly --commit --gplay"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package --auto --autoonly --commit --gplay"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_import() {
|
||||
opts="-h -u -s -r"
|
||||
lopts="--help --url --subdir --repo"
|
||||
case "${prev}" in
|
||||
-u|--url|-r|--repo) return 0;;
|
||||
-s|--subdir)
|
||||
_filedir
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
opts="-h -u -s -r"
|
||||
lopts="--help --url --subdir --repo"
|
||||
case "${prev}" in
|
||||
-u|--url|-r|--repo) return 0;;
|
||||
-s|--subdir)
|
||||
_filedir
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_rewritemeta() {
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_scanner() {
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package --nosvn"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package --nosvn"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_verify() {
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
opts="-h -v -p"
|
||||
lopts="--help --verbose --package"
|
||||
case "${prev}" in
|
||||
-p|--package)
|
||||
__package
|
||||
return 0;;
|
||||
esac
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_stats() {
|
||||
opts="-h -v -d"
|
||||
lopts="--help --verbose --download"
|
||||
__complete_options
|
||||
opts="-h -v -d"
|
||||
lopts="--help --verbose --download"
|
||||
__complete_options
|
||||
}
|
||||
|
||||
__complete_server() {
|
||||
opts="-h -v"
|
||||
lopts="--help --verbose update"
|
||||
__complete_options
|
||||
opts="-h -v"
|
||||
lopts="--help --verbose update"
|
||||
__complete_options
|
||||
}
|
||||
|
||||
_fdroid() {
|
||||
local cmd cmds aliased
|
||||
cmd=${COMP_WORDS[1]}
|
||||
cmds=" build update publish checkupdates import rewritemeta scanner verify stats server "
|
||||
aliased=false
|
||||
local cmd cmds aliased
|
||||
cmd=${COMP_WORDS[1]}
|
||||
cmds=" build update publish checkupdates import rewritemeta scanner verify stats server "
|
||||
aliased=false
|
||||
|
||||
for c in $cmds; do eval "_fdroid_${c} () {
|
||||
local cur prev cmds opts lopts
|
||||
__fdroid_init ${c};
|
||||
}"; done
|
||||
for c in $cmds; do eval "_fdroid_${c} () {
|
||||
local cur prev cmds opts lopts
|
||||
__fdroid_init ${c};
|
||||
}"; done
|
||||
|
||||
[[ $cmds == *\ $cmd\ * ]] && _fdroid_${cmd} || {
|
||||
(($COMP_CWORD == 1)) && COMPREPLY=( $( compgen -W "${cmds}" -- $cmd ) )
|
||||
}
|
||||
[[ $cmds == *\ $cmd\ * ]] && _fdroid_${cmd} || {
|
||||
(($COMP_CWORD == 1)) && COMPREPLY=( $( compgen -W "${cmds}" -- $cmd ) )
|
||||
}
|
||||
}
|
||||
|
||||
_fdroid_build_project() {
|
||||
local cur prev cmds opts lopts aliased
|
||||
__fdroid_init
|
||||
aliased=true
|
||||
(( $COMP_CWORD == 1 )) && prev="-p"
|
||||
local cur prev cmds opts lopts aliased
|
||||
__fdroid_init
|
||||
aliased=true
|
||||
(( $COMP_CWORD == 1 )) && prev="-p"
|
||||
|
||||
__complete_build
|
||||
__complete_build
|
||||
}
|
||||
|
||||
_fdroid_checkupdates_project() {
|
||||
local cur prev cmds opts lopts aliased
|
||||
__fdroid_init
|
||||
aliased=true
|
||||
(( $COMP_CWORD == 1 )) && prev="-p"
|
||||
local cur prev cmds opts lopts aliased
|
||||
__fdroid_init
|
||||
aliased=true
|
||||
(( $COMP_CWORD == 1 )) && prev="-p"
|
||||
|
||||
__complete_checkupdates
|
||||
__complete_checkupdates
|
||||
}
|
||||
|
||||
complete -F _fdroid fdroid
|
||||
|
Loading…
Reference in New Issue
Block a user