From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20360 invoked from network); 13 Mar 2000 10:57:15 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 13 Mar 2000 10:57:15 -0000 Received: (qmail 17682 invoked by alias); 13 Mar 2000 10:57:09 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 10111 Received: (qmail 17669 invoked from network); 13 Mar 2000 10:57:08 -0000 Date: Mon, 13 Mar 2000 11:57:05 +0100 (MET) Message-Id: <200003131057.LAA17005@beta.informatik.hu-berlin.de> From: Sven Wischnowsky To: zsh-workers@sunsite.auc.dk In-reply-to: Adam Spiers's message of Sun, 12 Mar 2000 13:28:00 +0000 Subject: Re: PATCH: completion for perl Adam Spiers wrote: > Whilst struggling with the mess which is _perl_config_vars below, it > struck me how an equivalent of compset -P which matched the /whole/ of > PREFIX rather than just the beginning would have come in handy. Err... `compset -P "*"' does that, but it leaves you with an empty $PREFIX, of course, which is probably not what one wants. > Is > this worthwhile, Sven, or is my whole approach coming from the wrong > angle? Also, as you can see from the compstate[quoting] line below, I > tried to get completion working for > > $ perl -V:' > > and > > $ perl -V:" > > so that it would insert a single space after each configuration > variable completed while within quotes, rather than a quoted single > space, but I didn't fully understand how compset -q works, and > couldn't stop it from eating up the opening quote. Help! :-) The problem is that we check the quoting stuff at the very beginning of the completion code -- and detect only quotes at the beginning of the word. So what we could get to work is completion of $ perl '-V: but not with the quote after the colon. That's done with first calling `compset -q', then the `compset -P'. Getting quotes in words to work is to hard to make me try it (all kinds of nasty interactions with the lexer). But maybe calling first `compset -P' and then `compset -q' should have the same effect as the other way round... I currently don't remember why it behaves the way it does. Bye Sven -- Sven Wischnowsky wischnow@informatik.hu-berlin.de