From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3794 invoked from network); 15 Apr 2002 08:52:54 -0000 Received: from sunsite.dk (130.225.247.90) by ns1.primenet.com.au with SMTP; 15 Apr 2002 08:52:54 -0000 Received: (qmail 4808 invoked by alias); 15 Apr 2002 08:52:49 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 16985 Received: (qmail 4795 invoked from network); 15 Apr 2002 08:52:48 -0000 From: Sven Wischnowsky MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15546.38060.875899.640365@wischnow.berkom.de> Date: Mon, 15 Apr 2002 10:51:56 +0200 To: zsh-workers@sunsite.dk Subject: RE: _arguments description problem In-Reply-To: <002801c1e458$b535a010$1fc1f2a3@mow.siemens.ru> References: <15546.34631.878469.111142@wischnow.berkom.de> <002801c1e458$b535a010$1fc1f2a3@mow.siemens.ru> X-Mailer: VM 6.95 under 21.5 (patch 3) "asparagus" XEmacs Lucid Borsenkow Andrej wrote: > ... > > I would not call this really clean :-) It is a workaround I admit but > not a really clean solution. > > > _wanted users expl user compadd "$@" -k userdirs - > > > > (note the added `-' at the end) > > > > But I have to admit that I always forget to do that, too. Sorry. > > > > bor@itsrm2% grep -r _wanted | wc -l > 300 > bor@itsrm2% grep -r _wanted | grep -- ' - ' | wc -l > 26 > > so over 90% of all functions do not use it. > > I really believe that cleaner and better way would be to parse options. > Is it possible to do it in one place only? That wouldn't be much cleaner, actually, because there would have to be an option to select or de-select this behaviour because we don't always want it -- at least I know that I wrote some functions where I intentionally didn't use `-', in cases where the lower level functions just knew better what to produce as descriptions. So that is one case where just counting lines gives wrong results. Two other cases are: functions that are not intended to be used as helper functions (and those are responsible for many of the uses of _wanted) and cases where the `-' might be on a second line. I don't know how many cases fall into the second category, but a bit of grep and wc shows 131 cases where the line with _wanted ends in a backslash. But of course, anyone is free to hack on the completion code -- always was. The best place would probably be _all_labels, the place where we now do the search for `-'. And make sure to check the uses of _wanted so that we don't use stuff we want to have. Bye Sven -- Sven Wischnowsky wischnow@berkom.de