From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29514 invoked from network); 20 Mar 2000 17:11:38 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 20 Mar 2000 17:11:38 -0000 Received: (qmail 11479 invoked by alias); 20 Mar 2000 17:11:29 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 10181 Received: (qmail 11464 invoked from network); 20 Mar 2000 17:11:27 -0000 From: "Bart Schaefer" Message-Id: <1000320171122.ZM19015@candle.brasslantern.com> Date: Mon, 20 Mar 2000 17:11:22 +0000 In-Reply-To: <200003201204.NAA10508@beta.informatik.hu-berlin.de> Comments: In reply to Sven Wischnowsky "Re: Prompt expansion: $((%)foo} != $(print -P $foo)" (Mar 20, 1:04pm) References: <200003201204.NAA10508@beta.informatik.hu-berlin.de> X-Mailer: Z-Mail (5.0.0 30July97) To: zsh-workers@sunsite.auc.dk Subject: Re: Prompt expansion: $((%)foo} != $(print -P $foo) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii On Mar 20, 1:04pm, Sven Wischnowsky wrote: } Subject: Re: Prompt expansion: $((%)foo} != $(print -P $foo) } } Bart Schaefer wrote: } } > The order in which parameter expansion vs. prompt %x expansion takes place } > appears to be reversed for ${(%)...} and $(print -P ...). } } Err... that's what (%%) is for. D'oh! I should have remembered that ... Index: Functions/Prompts/prompt_bart_setup =================================================================== @@ -60,19 +60,10 @@ psvar[8]="$history[$#history]" # Use history text, not just number psvar[9]='' # Padding before upper right prompt - if [[ -o promptsubst ]] - then - # This is a bug workaround; ${(%)...} mishandles promptsubst - repeat $[COLUMNS-${#${(%f)${${(e)PS1}//[%]\{[^%]#%\}/}}[1]}-1] - do - psvar[9]="$psvar[9] " - done - else - repeat $[COLUMNS-${#${(%f)${PS1//[%]\{[^%]#%\}/}}[1]}-1] - do - psvar[9]="$psvar[9] " - done - fi + repeat $[COLUMNS-${#${(%%f)${PS1//[%]\{[^%]#%\}/}}[1]}-1] + do + psvar[9]="$psvar[9] " + done } prompt_bart_ps1 () { -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com