#compdef open local curcontext="$curcontext" state line _arguments -C \ '-a[specify application]:application:->open_mac_applications' \ '-e[open with TextEdit]' \ '*:files:_webbrowser' if [[ -n "$state" ]]; then _mac_applications || _files fi