You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

129 lines
3.3 KiB

# EasyEngine Auto Complete Feature
EEAUTO()
{
# Get Current Word
local CURRENT=${COMP_WORDS[COMP_CWORD]}
# Get Previous Word
local PREVIOUS=${COMP_WORDS[COMP_CWORD-1]}
local PREVIOUS2=${COMP_WORDS[COMP_CWORD-2]}
local PREVIOUS3=${COMP_WORDS[COMP_CWORD-3]}
# List Of Suggested Words
case "$PREVIOUS" in
# List Of Suggested Words
easyengine|ee)
COMPREPLY=( $(compgen -W '$(echo version info; command find /usr/local/lib/easyengine/modules/ -maxdepth 1 -type d -printf "%P " 2>/dev/null)' -- $CURRENT) )
return 0
;;
stack)
COMPREPLY=( $( compgen -W '$(echo purge status stop start reload restart; command find /usr/local/lib/easyengine/modules/stack -maxdepth 1 -type d -printf "%P " 2>/dev/null)' -- $CURRENT ) )
return 0
;;
install|remove|purge)
COMPREPLY=( $( compgen -W '$( cd /usr/local/lib/easyengine/modules/stack/install; find -type f | grep install | cut -d'_' -f4 | cut -d '.' -f1; cd /usr/local/lib/easyengine/vendor/; find -type f | grep install | cut -d'_' -f4 | cut -d '.' -f1)' -- $CURRENT ) )
return 0
;;
site)
COMPREPLY=( $( compgen -W "list show info create enable disable delete edit" -- $CURRENT ) )
return 0
;;
list)
COMPREPLY=( $( compgen -W "enable available" -- $CURRENT ) )
return 0
;;
show|delete|--stop)
COMPREPLY=( $( compgen -W '$(command find /etc/nginx/sites-available/ -type f -printf "%P " 2>/dev/null)' -- $CURRENT ) )
return 0
;;
info|enable)
if [ "$PREVIOUS2" = "site" ]
then
COMPREPLY=( $( compgen -W '$(command find /etc/nginx/sites-available/ -type f -printf "%P " 2>/dev/null)' -- $CURRENT ) )
fi
return 0
;;
edit)
if [ "$PREVIOUS2" = "site" ]
then
COMPREPLY=( $( compgen -W '$(command find /etc/nginx/sites-available/ -type f -printf "%P " 2>/dev/null)' -- $CURRENT ) )
fi
return 0
;;
disable)
COMPREPLY=( $( compgen -W '$(command find /etc/nginx/sites-enabled/ -type l -printf "%P " 2>/dev/null)' -- $CURRENT ) )
return 0
;;
--wpsubdir|--wpsubdomain)
COMPREPLY=( $( compgen -W "--basic --w3tc --wpsc --wpfc" -- $CURRENT ) )
return 0
;;
debug)
COMPREPLY=( $(compgen -W "--nginx --rewrite --php --fpm --mysql --wp --stop" -- $CURRENT) )
return 0
;;
--nginx)
COMPREPLY=( $(compgen -W "--rewrite --php --fpm --mysql --wp --stop" -- $CURRENT) )
return 0
;;
--rewrite)
COMPREPLY=( $(compgen -W "--nginx --php --fpm --mysql --wp --stop" -- $CURRENT) )
return 0
;;
--php)
COMPREPLY=( $(compgen -W "--nginx --rewrite --fpm --mysql --wp --stop" -- $CURRENT) )
return 0
;;
--fpm)
COMPREPLY=( $(compgen -W "--nginx --rewrite --php --mysql --wp --stop" -- $CURRENT) )
return 0
;;
--mysql)
COMPREPLY=( $(compgen -W "--nginx --rewrite --php --fpm --wp --stop" -- $CURRENT) )
return 0
;;
--wp)
if [ "$PREVIOUS3" = "create" ]
then
COMPREPLY=( $( compgen -W "--basic --w3tc --wpsc --wpfc" -- $CURRENT ) )
else
COMPREPLY=( $(compgen -W "--nginx --rewrite --php --fpm --mysql --stop" -- $CURRENT) )
fi
return 0
;;
*)
if [ "$PREVIOUS2" = "create" ]
then
COMPREPLY=( $( compgen -W "--html --php --wp --wpsubdir --wpsubdomain" -- $CURRENT ) )
elif [ "$PREVIOUS2" = "delete" ]
then
COMPREPLY=( $( compgen -W "--db --all --files" -- $CURRENT ) )
fi
return 0
;;
esac
}
complete -F EEAUTO ee easyengine