#autoload local _val _ret # Should we return the value? case "$1" in -b) compstyles -S "${curcontext}${2:+:${2}}" "$3" _val _ret="$?" if [[ "$_val" = (yes|true|1|on) ]]; then eval "${4}=yes" else eval "${4}=no" fi return _ret ;; -s) compstyles -S "${curcontext}${2:+:${2}}" "$3" "$4" return ;; -a) compstyles -A "${curcontext}${2:+:${2}}" "$3" "$4" return ;; -h) compstyles -H "${curcontext}${2:+:${2}}" "$3" "$4" return ;; esac [[ "$1" = -(|-) ]] && shift if compstyles -S "${curcontext}${1:+:${1}}" "$2" _val; then if [[ $# -eq 3 ]]; then [[ "$_val" = ${~3} ]] else [[ "$_val" = (yes|true|1|on) ]] fi else return 1 fi