From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7419 invoked by alias); 1 Nov 2016 14:25:38 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 22060 Received: (qmail 8882 invoked from network); 1 Nov 2016 14:25:38 -0000 X-Qmail-Scanner-Diagnostics: from new2-smtp.messagingengine.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(66.111.4.224):SA:0(0.0/5.0):. Processed in 0.339324 secs); 01 Nov 2016 14:25:38 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=FREEMAIL_FROM,SPF_PASS, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.1 X-Envelope-From: psprint@fastmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at spf.messagingengine.com designates 66.111.4.224 as permitted sender) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=fastmail.com; h= content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to:x-me-sender:x-me-sender:x-sasl-enc :x-sasl-enc; s=mesmtp; bh=nhI3g2aQ9s2HtWkSiQygwIY5Z/k=; b=gdqEgL LfihjVOh4f20xqbMUdYru9pXUp5zUOnCg5JvWNlMhouop45QY/OzoxtE0xMIgYZL cL7rCkv7yM++v1bBTMLXpS9VpjG2fYaHno2Y41fF7sak6C8vg3NZiDOBIRiq3fNE eavq3qj11AsaJtXPaqGbTUDGTPQ4P3REeOFaY= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:message-id:mime-version:subject:to:x-me-sender :x-me-sender:x-sasl-enc:x-sasl-enc; s=smtpout; bh=nhI3g2aQ9s2HtW kSiQygwIY5Z/k=; b=mV4nVAvRjB/1FciGk7jN3I1Bxc8rhBRTOVrgWNtuOjKeah rgBZkxyL5bS25RsLt9Zs6PxXOZhBUkgrC5PS+rXXDvKtYoSQJKBKjtHTJIMzJu8s PNWs5a3/rBkx7wSjo5Q7cFMf9SGTMvFzU9LMgtEawCWN2Bgprsyi6Sq8z0+ZE= X-ME-Sender: Message-Id: <1478010333.3056500.773811025.1AAA4FEC@webmail.messagingengine.com> X-Sasl-Enc: N6b0i7vH44yAx/awDmozTQoixwr5fxyy3RW7BwiFN5Xk 1478010333 From: Sebastian Gniazdowski To: zsh-users@zsh.org MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain X-Mailer: MessagingEngine.com Webmail Interface - ajax-996895c6 Subject: Match to the end of string when using (S) flag Date: Tue, 01 Nov 2016 07:25:33 -0700 Hello, I do: % a="AXbcAXdeAXfg"; echo ${(S)a//*(AX)/x} xxxfg to generate region_highlight entries. As it can be seen, there is trailing data, which Zsh converts to "-1 -1 none". I would want to generate clean region_highlight entries. Came up with this: % a="AXbcAXdeAXfg"; echo ${a//(*(AX)*(#e)~*AX*AX*|*AX~*AX*AX*)/x} xxx Surprisingly, it is faster (e.g. 170ms vs 780 ms) than (S) flag IF AX is not a complex pattern like AX|BX. Then it is slow, so I cannot use this. Also, I'm not sure if it isn't possible that exclusion ~*AX*AX* will lead to acceptance of X*AX*, but this doesn't seem to occur. Is there way out of this? Thought about using (R) flag out of the set of BEMNR "... include in result" flags, but I cannot provoke anything distinct with them. PS. The actual region_highlight generating code is: region_highlight+=( "${(f)${(S)text//*(#bi)(${~colsearch_pattern})/$(( offset + mbegin[1] - 1 )) $(( offset + mend[1] )) ${__hsmw_hl_color}${nl}}%$nl*}" ) offset is length of a preamble (all for $POSTDISPLAY) that is not colored. -- Sebastian Gniazdowski psprint@fastmail.com