From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18965 invoked by alias); 24 Oct 2013 18:28:44 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 31889 Received: (qmail 8564 invoked from network); 24 Oct 2013 18:28:29 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.2 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:subject:message-id:in-reply-to :references:mime-version:content-type:content-transfer-encoding; bh=jIgQ6wSYnaptukq4n+oWzpkQAS7axGumwkpDnFzL0tg=; b=lVpYoOgsGWp4E7tCOSlG/lUc13Y8jSIZf434qL+o8g9v1lymFoh34hAvNtjqkkTywu JtcPviFaqnptox8C6dJXIrgWyySCKQcNR05yNjbeTouerneadxxhxBsNUPmsaDlmiTEH qAL1XxBRjR1Ja9szQLs5w+ZFAQtDtP4hSsbODDd4ibIrKXMoxhYrOxNvtrItNoCynW7E vqmW8ZK7ezYj5iIIRx5z3nA1uCjl81nMO2+Sfzb5p+MDZQ+SGo/wfNpHrPArxTDVwzO2 IN4NwnwH2WvfoL2WXnE0JxihnlvlSF+EtkWImmeewuBQ/+32g105BQUrPodD/M4TdhPO fazQ== X-Gm-Message-State: ALoCoQlxAuCRD2a67qKKrFiLmLcDcJ+yOpUqIELRF4vl6yNsuU1NG0YeUfyK4hfDwDsQldkxP2MV X-Received: by 10.180.198.79 with SMTP id ja15mr3368257wic.36.1382638911420; Thu, 24 Oct 2013 11:21:51 -0700 (PDT) X-ProxyUser-IP: 86.6.157.246 Date: Thu, 24 Oct 2013 19:21:39 +0100 From: Peter Stephenson To: Zsh Hackers' List Subject: Re: PATCH: disabling pattern groups Message-ID: <20131024192139.1fe3f39a@pws-pc.ntlworld.com> In-Reply-To: <20131023220526.36682868@pws-pc.ntlworld.com> References: <20131023220526.36682868@pws-pc.ntlworld.com> X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.7; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Wed, 23 Oct 2013 22:05:26 +0100 Peter Stephenson wrote: > Next, I'll start constructing some tests. This covers the basics. diff --git a/Test/D02glob.ztst b/Test/D02glob.ztst index 0aea261..d6ab733 100644 --- a/Test/D02glob.ztst +++ b/Test/D02glob.ztst @@ -433,3 +433,61 @@ print glob.tmp/dir5/N<->(N) 0:Numeric glob is not usurped by process substitution. >glob.tmp/dir5/N123 + + tpd() { + [[ $1 = $~2 ]] + print -r "$1, $2: $?" + } + test_pattern_disables() { + emulate -L zsh + tpd 'forthcoming' 'f*g' + disable -p '*' + tpd 'forthcoming' 'f*g' + tpd 'f*g' 'f*g' + tpd '[frog]' '[frog]' + tpd '[frog]' '\[[f]rog\]' + disable -p '[' + tpd '[frog]' '[frog]' + tpd '[frog]' '\[[f]rog\]' + setopt extendedglob + tpd 'foo' '^bar' + disable -p '^' + tpd 'foo' '^bar' + tpd '^bar' '^bar' + tpd 'rumble' '(rumble|bluster)' + tpd '(thunder)' '(thunder)' + disable -p '(' + tpd 'rumble' '(rumble|bluster)' + tpd '(thunder)' '(thunder)' + setopt kshglob + tpd 'scramble' '@(panic|frenzy|scramble)' + tpd '@(scrimf)' '@(scrimf)' + disable -p '@(' + tpd 'scramble' '@(panic|frenzy|scramble)' + tpd '@(scrimf)' '@(scrimf)' + disable -p + } + test_pattern_disables + print Nothing should be disabled. + disable -p +0:disable -p +>forthcoming, f*g: 0 +>forthcoming, f*g: 1 +>f*g, f*g: 0 +>[frog], [frog]: 1 +>[frog], \[[f]rog\]: 0 +>[frog], [frog]: 0 +>[frog], \[[f]rog\]: 1 +>foo, ^bar: 0 +>foo, ^bar: 1 +>^bar, ^bar: 0 +>rumble, (rumble|bluster): 0 +>(thunder), (thunder): 1 +>rumble, (rumble|bluster): 1 +>(thunder), (thunder): 0 +>scramble, @(panic|frenzy|scramble): 0 +>@(scrimf), @(scrimf): 1 +>scramble, @(panic|frenzy|scramble): 1 +>@(scrimf), @(scrimf): 0 +>'(' '*' '[' '^' '@(' +>Nothing should be disabled. -- Peter Stephenson Web page now at http://homepage.ntlworld.com/p.w.stephenson/