Use _init_completion() in pkgtools, rpm2tgz, sbopkg, slackpkg, slapt
This commit is contained in:
parent
0af9122381
commit
d3f7c16942
@ -6,8 +6,8 @@
|
||||
have pkgtool &&
|
||||
_pkgtool()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '--sets --ignore-tagfiles --tagfile \
|
||||
--source-mounted --source_dir --target_dir --source_device' \
|
||||
@ -15,9 +15,7 @@ _pkgtool()
|
||||
return 0
|
||||
fi
|
||||
|
||||
local prev=${COMP_WORDS[COMP_CWORD-1]}
|
||||
|
||||
case $prev in
|
||||
case "$prev" in
|
||||
--source_dir|--target_dir)
|
||||
_filedir -d
|
||||
return 0
|
||||
@ -41,8 +39,8 @@ complete -F _pkgtool pkgtool
|
||||
have removepkg &&
|
||||
_removepkg()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur=`_get_cword`
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '-copy -keep -preserve -warn' \
|
||||
-- "$cur" ) )
|
||||
@ -56,8 +54,8 @@ complete -F _removepkg removepkg
|
||||
have upgradepkg &&
|
||||
_upgradepkg()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur=`_get_cword`
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '--dry-run --install-new --reinstall \
|
||||
--verbose' -- "$cur") )
|
||||
@ -70,17 +68,15 @@ _upgradepkg()
|
||||
have installpkg &&
|
||||
_installpkg()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur=`_get_cword`
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '--warn --md5sum --root --infobox --terse \
|
||||
--menu --ask --priority --tagfile' -- "$cur") )
|
||||
return 0
|
||||
fi
|
||||
|
||||
local prev=`_get_pword`
|
||||
|
||||
case $prev in
|
||||
case "$prev" in
|
||||
--root)
|
||||
_filedir -d
|
||||
return 0
|
||||
@ -101,17 +97,15 @@ _installpkg()
|
||||
have makepkg &&
|
||||
_makepkg()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur=`_get_cword`
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '-l --linkadd -p --prepend \
|
||||
-c --chown' -- "$cur") )
|
||||
return 0
|
||||
fi
|
||||
|
||||
local prev=`_get_pword`
|
||||
|
||||
case $prev in
|
||||
case "$prev" in
|
||||
-l|--linkadd|-c|--chown)
|
||||
COMPREPLY=( $( compgen -W 'y n' -- "$cur" ) )
|
||||
return 0
|
||||
|
@ -4,8 +4,9 @@ have rpm2tgz || return
|
||||
|
||||
_rpm2tgz()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '-s -S -n -r -d -c' -- "$cur" ) )
|
||||
return 0
|
||||
|
@ -4,9 +4,8 @@ have sbopkg || return
|
||||
|
||||
_sbopkg()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur prev
|
||||
_get_comp_words_by_ref cur prev
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '-b -c -d -e -f -g -h -i -k -l \
|
||||
@ -14,7 +13,7 @@ _sbopkg()
|
||||
return 0
|
||||
fi
|
||||
|
||||
case $prev in
|
||||
case "$prev" in
|
||||
-e)
|
||||
COMPREPLY=( $( compgen -W 'ask continue stop' -- "$cur" ) )
|
||||
return 0
|
||||
@ -40,8 +39,6 @@ _sbopkg()
|
||||
esac
|
||||
|
||||
local config="/etc/sbopkg/sbopkg.conf"
|
||||
local words
|
||||
_get_comp_words_by_ref words
|
||||
|
||||
for (( i=${#words[@]}-1; i>0; i-- )); do
|
||||
if [[ "${words[i]}" == -f ]]; then
|
||||
|
@ -4,9 +4,8 @@ have slackpkg || return
|
||||
|
||||
_slackpkg()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur
|
||||
_get_comp_words_by_ref cur
|
||||
local cur prev words cword
|
||||
_init_completion -n = || return
|
||||
|
||||
# based on `grep '\-.*\=.*)' /usr/sbin/slackpkg | cut -f1 -d\)`
|
||||
if [[ "$cur" == -* ]]; then
|
||||
@ -36,9 +35,7 @@ _slackpkg()
|
||||
fi
|
||||
. "$config"
|
||||
|
||||
local action words
|
||||
_get_comp_words_by_ref -n "=" words
|
||||
|
||||
local action
|
||||
for (( i=1; i<${#words[@]}; i++ )); do
|
||||
if [[ "${words[i]}" != -* ]]; then
|
||||
action="${words[i]}"
|
||||
@ -46,7 +43,7 @@ _slackpkg()
|
||||
fi
|
||||
done
|
||||
|
||||
case $action in
|
||||
case "$action" in
|
||||
generate-template|search|file-search)
|
||||
# argument required but no completions available
|
||||
return 0
|
||||
|
@ -3,9 +3,8 @@
|
||||
have slapt-get &&
|
||||
_slapt_get()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur prev
|
||||
_get_comp_words_by_ref cur prev
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '--download-only -d --simulate -s \
|
||||
@ -19,7 +18,7 @@ _slapt_get()
|
||||
return 0
|
||||
fi
|
||||
|
||||
case $prev in
|
||||
case "$prev" in
|
||||
--config|-c)
|
||||
_filedir
|
||||
return 0
|
||||
@ -30,9 +29,7 @@ _slapt_get()
|
||||
;;
|
||||
esac
|
||||
|
||||
local words t
|
||||
_get_comp_words_by_ref words
|
||||
|
||||
local t
|
||||
# search for last action (--install|--install-set|--remove|--show|--filelist)
|
||||
for (( i=${#words[@]}-1; i>0; i-- )); do
|
||||
if [[ ${words[i]} == -@(i|-install|-show) ]]; then
|
||||
@ -71,9 +68,8 @@ _slapt_get()
|
||||
have slapt-src &&
|
||||
_slapt_src()
|
||||
{
|
||||
COMPREPLY=()
|
||||
local cur prev
|
||||
_get_comp_words_by_ref cur prev
|
||||
local cur prev words cword
|
||||
_init_completion || return
|
||||
|
||||
if [[ "$cur" == -* ]]; then
|
||||
COMPREPLY=( $( compgen -W '--update -u --list -l --clean -e \
|
||||
@ -83,7 +79,7 @@ _slapt_src()
|
||||
return 0
|
||||
fi
|
||||
|
||||
case $prev in
|
||||
case "$prev" in
|
||||
--config|-c)
|
||||
_filedir
|
||||
return 0
|
||||
@ -94,9 +90,6 @@ _slapt_src()
|
||||
;;
|
||||
esac
|
||||
|
||||
local words
|
||||
_get_comp_words_by_ref words
|
||||
|
||||
local t
|
||||
# search for last action (-i|-w|-b|-f)
|
||||
for (( i=${#words[@]}-1; i>0; i-- )); do
|
||||
|
Loading…
x
Reference in New Issue
Block a user