From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from euclid.skiles.gatech.edu (list@euclid.skiles.gatech.edu [130.207.146.50]) by melb.werple.net.au (8.7.5/8.7.3/2) with ESMTP id AAA17700 for ; Sat, 20 Jul 1996 00:14:46 +1000 (EST) Received: (from list@localhost) by euclid.skiles.gatech.edu (8.7.3/8.7.3) id KAA18936; Fri, 19 Jul 1996 10:08:39 -0400 (EDT) Resent-Date: Fri, 19 Jul 1996 10:08:39 -0400 (EDT) From: Zefram Message-Id: <10388.199607191407@stone.dcs.warwick.ac.uk> Subject: Re: more dependencies on emulation To: schaefer@nbn.com Date: Fri, 19 Jul 1996 15:07:27 +0100 (BST) Cc: A.Main@dcs.warwick.ac.uk, zsh-workers@math.gatech.edu In-Reply-To: <9607181518.ZM14255@candle.brasslantern.com> from "Bart Schaefer" at Jul 18, 96 03:18:39 pm X-Loop: zefram@dcs.warwick.ac.uk X-Stardate: [-31]7832.94 X-US-Congress: Moronic fuckers MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Resent-Message-ID: <"WXnFE.0.od4.dRvxn"@euclid> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/1709 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu >If zsh were really emulating sh, arrays wouldn't work at all. So it's a >bit dubious to force ksh syntax only, given that it affects the indices >as well as the syntax. In sh, $foo[1] is equivalent to ${foo}[1]. Consequently "emulate sh" will have to affect this part of the syntax. The other aspects of arrays don't need to be affected by sh emulation, true, but it seems rather stupid to make this distinction. >I don't have a ksh to try this, but ~{pfalstad,rc} works fine in Bash >(that is, the ~ is expanded), even though ~$USER doesn't expand tilde. >In zsh's ksh emulation mode with this patch applied, This patch doesn't affect that aspect of behaviour -- "emulate ksh" and "emulate zsh" will affect this expansion behaviour exactly as they did before. It only affects behaviour when the new option is individually changed. > ~$USER works, but >~{pfalstad,rc} fails unless IGNORE_BRACES is also unset. There doesn't >seem to be any way to get the Bash behavior (maybe not important), but >the manual should probably mention the IGNORE_BRACES requirement if it >is going to use ~{...} in this example. Maybe. The documentation phrases things in terms of the SH_FILE_SUBST option, which is independent of IGNORE_BRACES. A note about IGNORE_BRACES would certainly be reasonable, but it's not essential. -zefram