#compdef -redirect-

local strs _comp_command1 _comp_command2 _comp_command

_set_command

strs=( -default- )

if [[ "$CURRENT" != "1" ]]; then
  strs=( "${_comp_command}" "$strs[@]" )
  if [[ -n "$_comp_command1" ]]; then
    strs=( "${_comp_command1}" "$strs[@]" )
    [[ -n "$_comp_command2" ]] &&
      strs=( "${_comp_command2}" "$strs[@]" )
  fi
fi

_dispatch -redirect-,{${compstate[redirect]},-default-},${^strs}
