set [ {+|-}options | {+|-}o [ option name ] ] ... [ {+|-}A
[ name ] ] [ arg ... ]
       Set the options for the shell and/or set the  posi-
       tional parameters, or declare and set an array.  If
       the -s option is given,  it  causes  the  specified
       arguments to be sorted before assigning them to the
       positional parameters (or to the array name  if  -A
       is  used).   With  +s  sort arguments in descending
       order.  For the meaning of  the  other  flags,  see
       zshoptions(1).   Flags  may  be  specified  by name
       using the -o option. If no option name is  supplied
       with  -o,  the  current  option states are printed.
       With +o they are printed in a form that can be used
       as input to the shell.

       If  the  -A  flag  is  specified, name is set to an
       array containing the given  args;  if  no  name  is
       specified,  all  arrays  are  printed together with
       their values.

       If +A is used and name is an array, the given argu-
       ments  will  replace  the  initial elements of that
       array; if no name  is  specified,  all  arrays  are
       printed without their values.

       The behaviour of arguments after -A name or +A name
       depends on whether the option  KSH ARRAYS  is  set.
       If  it is not set, all arguments following name are
       treated as values  for  the  array,  regardless  of
       their  form.   If  the option is set, normal option
       processing continues at that  point;  only  regular
       arguments  are  treated  as  values  for the array.
       This means that

              set -A array -x -- foo

       sets array to `-x -- foo' if KSH ARRAYS is not set,
       but  sets  the array to foo and turns on the option
       `-x' if it is set.

       If the -A flag is not present, but there are  argu-
       ments beyond the options, the positional parameters
       are set.  If the option list (if any) is terminated
       by  `--',  and  there are no further arguments, the
       positional parameters will be unset.

       If no arguments and no `--'  are  given,  then  the
       names  and  values of all parameters are printed on
       the standard output.  If the only argument is  `+',
       the names of all parameters are printed.
