From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12245 invoked from network); 21 May 2001 12:25:44 -0000 Received: from sunsite.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 21 May 2001 12:25:44 -0000 Received: (qmail 1500 invoked by alias); 21 May 2001 12:25:34 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 14409 Received: (qmail 1467 invoked from network); 21 May 2001 12:25:31 -0000 Sender: kiddleo Message-ID: <3B090939.6661A937@u.genie.co.uk> Date: Mon, 21 May 2001 13:25:29 +0100 From: Oliver Kiddle X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.2.15 i686) X-Accept-Language: en MIME-Version: 1.0 To: zsh-workers@sunsite.dk Subject: PATCH: use of _arguments for set Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit _set still hadn't been updated to use _arguments. This showed up one bug in the recent _arguments changes: set -A will complete only arrays but set +A also offers other + options as if -W had been specified to _arguments. The completion of option letters should probably go in an _option_letters so that it can be used for setopt and unsetopt. Is there any way to list these options in a separate group from the normal options? Oliver Index: Completion/Zsh/Command/_set =================================================================== RCS file: /cvsroot/zsh/zsh/Completion/Zsh/Command/_set,v retrieving revision 1.1 diff -u -r1.1 _set --- Completion/Zsh/Command/_set 2001/04/02 11:30:19 1.1 +++ Completion/Zsh/Command/_set 2001/05/21 12:13:22 @@ -1,9 +1,25 @@ #compdef set -local prev="$words[CURRENT-1]" - -if [[ "$prev" = [-+]o ]]; then - _options -elif [[ "$prev" = -A ]]; then - _arrays -fi +noglob _arguments -s -S \ + - list '+[list names of parameters]' - others \ + '-o+[set specified option]:option:_options' \ + '+o+[unset specified option]:option:_options' \ + '-s[sort arguments in descending order]' \ + '+s[sort arguments in ascending order]' \ + '-A+[define array with specified name]:array:_arrays' \ + '+A+[replace initial elements in specified array]:array:_arrays' \ + {-,+}0[correct] {-,+}1[printexitvalue] {-,+}2[no-badpattern] \ + {-,+}3[no-nomatch] {-,+}4[globdots] {-,+}5[notify] {-,+}6[bgnice] \ + {-,+}7[ignoreeof] {-,+}8[markdirs] {-,+}9[autolist] {-,+}B[no-beep] \ + {-,+}C[no-clobber] {-,+}D[pushdtohome] {-,+}E[pushdsilent] {-,+}F[no-glob] \ + {-,+}G[nullglob] {-,+}H[rmstarsilent] {-,+}I[ignorebraces] {-,+}J[autocd] \ + {-,+}K[no-banghist] {-,+}L[sunkeyboardhack] {-,+}M[singlelinezle] \ + {-,+}N[autopushd] {-,+}O[correctall] {-,+}P[rcexpandparam] {-,+}Q[pathdirs] \ + {-,+}R[longlistjobs] {-,+}S[recexact] {-,+}T[cdablevars] \ + {-,+}U[mailwarning] {-,+}V[no-promptcr] {-,+}W[autoresume] \ + {-,+}X[listtypes] {-,+}Y[menucomplete] {-,+}Z[zle] {-,+}a[allexport] \ + {-,+}d[no-globalrcs] {-,+}e[errexit] {-,+}f[no-rcs] {-,+}g[histignorespace] \ + {-,+}h[histignoredups] {-,+}i[interactive] {-,+}k[interactivecomments] \ + {-,+}l[login] {-,+}m[monitor] {-,+}n[no-exec] {-,+}p[privileged] \ + {-,+}r[restricted] {-,+}t[singlecommand] {-,+}u[no-unset] {-,+}v[verbose] \ + {-,+}w[chaselinks] {-,+}x[xtrace] {-,+}y[shwordsplit]