#compdef web-greeter _webgreeter() { integer ret=1 local -a args local themes=$(ls -1d /usr/share/web-greeter/themes/*/ | cut -c 1- | rev | cut -c 2- | rev | sort | sed 's/\/usr\/share\/web-greeter\/themes\///') args+=( '--debug[Runs the greeter in debug mode]' '--normal[Runs in non-debug mode]' '--list[Lists available themes]' "--theme[Sets the theme to use]:theme:->themes" '--help[Show help]' '-h[Show help]' '--version[Print program version]' '-v[Print program version]' ) _arguments $args[@] && ret=0 case "$state" in themes) _files _values 'themes' "${(uonzf)${themes}}" ;; esac return ret } _webgreeter