Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Zsh's and ksh's bang (!) expansion flags have different meanings
- X-seq: zsh-workers 55042
- From: Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx>
- To: Zsh hackers list <zsh-workers@xxxxxxx>
- Subject: Re: Zsh's and ksh's bang (!) expansion flags have different meanings
- Date: Sun, 26 Jul 2026 22:15:51 -0700
- Arc-authentication-results: i=1; mx.google.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=0Kki5d52I7y/pxZsvLW6AHoTPKhjsQzk5suQBPUqaPE=; fh=BgAYDYpL6Ne/A5nWEMVJiHiBtrz8Imz3uf26RDwgQX4=; b=kwvcKnWZkik+mi/wmR9PkkGhOq/AUkH2v9FVVeXFKKIhNZwFZdMhKuu60Rnjt9pg4f 5HGhSYJBMPshALSOHN5MYn1yWfpDqY36h4In9rXYFZ0Nsq3MuMjLnD3EFwT2QbqlpN6b 63zZ54b/Rd6AXhfmmi5XT1qwByVj2ER0MqzpxVyYQ9lUubyC8KF5OPI6LgaVN4U1IapG crJkzX4z+bZN7df85uDeGN4nTZ0uVcdJxgVD2586IY265pNf7mWYIslg0E/IejeoCspd LvGBnAFjTZE40q2qVCX45j2QUZBZeneZmLrScFPpz9on0vbQ85yrNdVJgyxtxo7m11TC 2IGw==; darn=zsh.org
- Arc-seal: i=1; a=rsa-sha256; t=1785129363; cv=none; d=google.com; s=arc-20260327; b=PCndj1pCJhpr+EHjn4rGY8mzZVGFuSyDJ+kXTZwmXI5s42KcsAgmPXVa4Ti5SRwAaz Am1URO71vyIKHheGwscQzgMoNRLb0WSNuBsLpcMdhv18HStO3Gq4nsmOkxBgorU5hwnn 68Otcl7NkbjU78a+Ig81V00vFNfiNdg0BxpFAdbSDaqg1DkeXb917Na4D/kEz2nmPPm5 yFxrD1FFGMjJjCOVzcbFAnLwejjo7M1us69wbKG5uuB49AFhglNyxK7Ntf3dDnlQ5BZV FdMASfwqiA0/9+1iRRRAOpsnEfV+U8UerJa6dFHlgGDOPA4RH7auPIkLAkpoy3Y8HLqI fKrA==
- Archived-at: <https://zsh.org/workers/55042>
- In-reply-to: <CAGdYchuUcpeLbe62PeLmRzUD34g=TvrN34uUKNJJOXbiRTxiJA@mail.gmail.com>
- List-id: <zsh-workers.zsh.org>
- References: <CAGdYchvRE_B4b0yuk9drdR3dKb-2ci5r9PC5mUsVQ=x8tm2-1g@mail.gmail.com> <CAH+w=7Zd1Ov6XHYom1Ybs5oSujPyUTzX4213dMP968L53O7WEw@mail.gmail.com> <CAGdYchsKwb=Rpx9Rgv0yACZvjbFHSFjq-QmLY701UeCY9=PRzA@mail.gmail.com> <CAH+w=7aq63XvQkXi3-JDHi+F91Xj_ei7Dpg9jT65jaoj5ZkOPw@mail.gmail.com> <CAHYJk3Tk_p=XKej2X=oBcXa52hfsrc5WLQbUf7hF-pkGkyFiwQ@mail.gmail.com> <CAA=-s3z1ShDuw+JnGg5YHDHmEdR8T5pfW_PBdrnCX9CGYL=G4A@mail.gmail.com> <CAGdYchtH3T9V+y9jguM5AZz_taXCKYhkgMCP2stbDKvLMvP75A@mail.gmail.com> <al-qw29tklLQdCeA@chazelas.org> <al-yoPX656qLSdWT@chazelas.org> <CAGdYchuUcpeLbe62PeLmRzUD34g=TvrN34uUKNJJOXbiRTxiJA@mail.gmail.com>
On Thu, Jul 23, 2026 at 7:42 AM Philippe Altherr
<philippe.altherr@xxxxxxxxx> wrote:
>
> Below is a patch that changes Zsh's emulation of ksh to map ksh's ! to just (k) instead of (!k). Note that the flag combination (!k) is forbidden, which I think is right.
This doesn't look right to me? The test is prefixed with
.k02.array=(characters in an array)
${!.k02.ref} should not return "characters" ...? That makes '!' just
a no-op for this case.
--- expected
+++ actual
@@ -1,3 +1,3 @@
+characters
.k02.array
-.k02.array
characters
Test K02parameter.ztst failed: output differs from expected as shown above for:
() {
typeset -n .k02.ref=.k02.array
emulate -L ksh
print -l ${!.k02.ref} ${(!).k02.ref} ${.k02.ref}
}
Was testing: namerefs with namespaces
K02parameter.ztst: test failed.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author