From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12333 invoked from network); 8 May 2009 08:40:20 -0000 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.2.5 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by ns1.primenet.com.au with SMTP; 8 May 2009 08:40:20 -0000 Received-SPF: none (ns1.primenet.com.au: domain at sunsite.dk does not designate permitted sender hosts) Received: (qmail 89957 invoked from network); 8 May 2009 08:40:12 -0000 Received: from sunsite.dk (130.225.247.90) by a.mx.sunsite.dk with SMTP; 8 May 2009 08:40:12 -0000 Received: (qmail 14228 invoked by alias); 8 May 2009 08:40:02 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 26949 Received: (qmail 14201 invoked from network); 8 May 2009 08:40:00 -0000 Received: from bifrost.dotsrc.org (130.225.254.106) by sunsite.dk with SMTP; 8 May 2009 08:40:00 -0000 Received: from cluster-d.mailcontrol.com (cluster-d.mailcontrol.com [85.115.60.190]) by bifrost.dotsrc.org (Postfix) with ESMTPS id 05E8280590A3 for ; Fri, 8 May 2009 10:39:57 +0200 (CEST) Received: from cameurexb01.EUROPE.ROOT.PRI ([193.128.72.68]) by rly45d.srv.mailcontrol.com (MailControl) with ESMTP id n488dkhZ003382 for ; Fri, 8 May 2009 09:39:54 +0100 Received: from news01.csr.com ([10.99.50.25]) by cameurexb01.EUROPE.ROOT.PRI with Microsoft SMTPSVC(6.0.3790.3959); Fri, 8 May 2009 09:39:47 +0100 Received: from news01.csr.com (localhost.localdomain [127.0.0.1]) by news01.csr.com (8.14.2/8.13.4) with ESMTP id n488dltf000549 for ; Fri, 8 May 2009 09:39:47 +0100 Received: from csr.com (pws@localhost) by news01.csr.com (8.14.2/8.14.2/Submit) with ESMTP id n488dkxb000546 for ; Fri, 8 May 2009 09:39:47 +0100 X-Authentication-Warning: news01.csr.com: pws owned process doing -bs To: zsh-workers@sunsite.dk (Zsh hackers list) Subject: PATCH: _sudo X-Mailer: MH-E 8.0.3; nmh 1.3; GNU Emacs 22.1.1 Date: Fri, 08 May 2009 09:39:46 +0100 Message-ID: <545.1241771986@csr.com> From: Peter Stephenson X-OriginalArrivalTime: 08 May 2009 08:39:47.0722 (UTC) FILETIME=[8B7236A0:01C9CFB8] X-Scanned-By: MailControl A-06-00-00 (www.mailcontrol.com) on 10.68.0.155 X-Virus-Scanned: ClamAV 0.92.1/9347/Fri May 8 07:10:18 2009 on bifrost X-Virus-Status: Clean It looks like I never sent this. Index: Completion/Unix/Command/_sudo =================================================================== RCS file: /cvsroot/zsh/zsh/Completion/Unix/Command/_sudo,v retrieving revision 1.2 diff -u -r1.2 _sudo --- Completion/Unix/Command/_sudo 10 Oct 2008 09:56:25 -0000 1.2 +++ Completion/Unix/Command/_sudo 6 May 2009 09:19:50 -0000 @@ -1,26 +1,45 @@ -#compdef sudo +#compdef sudo sudoedit local curcontext="$curcontext" environ e +local -a args + zstyle -a "$curcontext" environ environ for e in "${environ[@]}" do local -x "$e" done -_arguments \ - '-V[show version]' \ - '-l[list allowed commands]' \ - '-L[list options from Default section]' \ - '-h[show help]' \ - '-v[validate user timestamp]' \ - '-k[invalidate user timestamp]' \ - '-K[remove user timestamp]' \ - '-b[run command in background]' \ - '-r[Kerberos realm]:Kerberos realm:' \ - '-p[password prompt]:password prompt:' \ - '-u[user name]:user name:_users' \ - '-s[run SHELL]' \ - '-H[set HOME environment variable]' \ - '-S[read password from stdin]' \ - '(-):command name: _command_names -e' \ - '*::arguments: _normal' +args=( + '-V[show version]' + '-l[list allowed commands]' + '-L[list options from Default section]' + '-a[BSD auth type]:BSD auth type:' + '-c[BSD login class]:BSD login class:' + '-h[show help]' + '-v[validate user timestamp]' + '-k[invalidate user timestamp]' + '-K[remove user timestamp]' + '-r[Kerberos realm]:Kerberos realm:' + '-p[password prompt]:password prompt:' + '-u[user name]:user name:_users' + '-S[read password from stdin]' +) + +if [[ $service = sudoedit || -n $words[(R)-e] ]]; then + args+=( + '*:file: _files' + ) +else + args+=( + '-b[run command in background]' + '-E[preserve environment]' + '-H[set HOME environment variable]' + '-P[preserve group vector]' + '(-i)-s[run SHELL]' + '(-s)-i[simulate login]' + '(-):command name: _command_names -e' + '*::arguments: _normal' + ) +fi + +_arguments $args -- Peter Stephenson Software Engineer CSR PLC, Churchill House, Cambridge Business Park, Cowley Road Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070