From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=3.4.4 Received: from zero.zsh.org (zero.zsh.org [IPv6:2a02:898:31:0:48:4558:7a:7368]) by inbox.vuxu.org (Postfix) with ESMTP id A405A22680 for ; Thu, 28 Mar 2024 02:00:49 +0100 (CET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1711587649; b=spyGSC/oSYHrdKdZmsEpDA5LhwKnGY3TI7Sf0Au1YAVbo5TL8O8dFN/47ALmEUn6AM8icA2RoY ImvwkP1OFZJz94JnxGDvkwgGE0URxeh4drGI4VnhfJpKHI7AFP3zzl1RPkw82N0/wnpyBzj4Vs veWVprJAaoxqgP2oa+ueEEVrpQlQE58crk6S4YHybaxl0iECkMCI1bkh2LQNEJxO1Ysid7z8qw 3nL2KlfS4yv1aMsjtSpro6Cgw9DVwlpjzLoKXS+h/GgBFDs043fM0EPvrCx9PJB+2b/8JW6duE RHFfFkXu0WC7Y2+kdgP45sqYn5FUJTdgVDQ0C7yWyMRmYA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ej1-f49.google.com) smtp.remote-ip=209.85.218.49; dkim=pass header.d=brasslantern-com.20230601.gappssmtp.com header.s=20230601 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1711587649; bh=stk/1mMQtVNbXdOOcG7HoFjc1q3wOcfU0/5fZQi1xr0=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:Cc:To:Subject: Message-ID:Date:From:In-Reply-To:References:MIME-Version:DKIM-Signature: DKIM-Signature; b=kIFrbnotJeLwWfsi/yrkqS3v4fCE9G96tMOa5fUXagU7d4JtP+wngEp+aeEIPjEio6QRqL+sPY cKI6/UuVPLjE82DjzWb1v09ofEGtTLfijdknFmAYJUNQYcuPJL13HPwuXvp3O+ml/yyjA4OLn4 ArOtd/EtIvQ8QVQn5fE6cnCsQUFEgajyWEtOsYuM7BSrF8ZCApSWAYzXkXWXPga9SiYAIf72wd SoCtHZkefGWvehvm1V2xfJAAERC3/Yv1TP7dZ+83vDvzergmJ5JIdEyOwheu+X5nDxk8tg1yxZ CX9xXz4eQhs80OAT3Mka8dNRPVLeXvM/DIzwwXZaNSjdJQ==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Transfer-Encoding: Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To:References: MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=cXx832peI4C74V7PsBvxB96ksAsG+Es8Aavav4NxDos=; b=fXk3z7MRNWkJPZjPn22MAuDpGj FLtv1uO7hE54pT/Fg6mP8ovIExd/7IKKJ8Zodkmi41nmS7f+4P11A2MPLsUWX92hj3yOm3NB0CO52 SeL7Xp5vOWrp2OlCkqG2MN9hW/kbFqr4M5rsAzY2vXBD/gk4TJ47H7pj0ZYGIyyJUWjYddEsbuBI7 bVYCOqRSbP+RJ7GaNxyW9nTQfZTBygIZgzYJrpqzH1JW9SGA8nUU/S+ymX8KEzK4ZAVg0ADsIPpb1 iHZVsbzJn+zfzmrbNa0nkoTVYQwb6DWTUorzGkLjYdZfucxlN/iKt/HYt3TDwQbfCYD+D4cCe7NQd aVZeAO9w==; Received: by zero.zsh.org with local id 1rpe8O-000Lcr-Fi; Thu, 28 Mar 2024 01:00:48 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ej1-f49.google.com) smtp.remote-ip=209.85.218.49; dkim=pass header.d=brasslantern-com.20230601.gappssmtp.com header.s=20230601 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-ej1-f49.google.com ([209.85.218.49]:56810) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1rpe7p-000LHW-OY; Thu, 28 Mar 2024 01:00:15 +0000 Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-a46cd9e7fcaso49003466b.1 for ; Wed, 27 Mar 2024 18:00:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1711587613; x=1712192413; darn=zsh.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=cXx832peI4C74V7PsBvxB96ksAsG+Es8Aavav4NxDos=; b=TXIUoCUABl5SrODUNRq+Xg6YBC40rK/npZAf6YBbGLpy6OFugMp3Gmb/LoEYtOHgtY fK1M5TjFJhmBtc8tBsrraFjr6aUw/EyvyOOcmDXQf3qBXtKm8V1Xtqnm7qc5cS/0Tnsy v4Poxb9DK7A9ZHMuQD2u7W7sKyE+8K267QHdd+1anclS2gBB8okm1oVZd+hQQiGY0GO3 bxqPUrT6K8v6imTwozMkL5ft7Lteb68gR5bXa91qGhZfJllsQSUbzOuv9vnFE126LgtL bk6Nst4KNMAIrXrDLWC9VTt3Ln3ieH16kYlQ/zRMTe8lhlJduPiM3gdjBwtSZEIwY9GJ vGBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711587613; x=1712192413; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cXx832peI4C74V7PsBvxB96ksAsG+Es8Aavav4NxDos=; b=nrUGdNLlAB+MKloS2rS36xtHCuaNZGZZURQKZkSTxXu/0Y+5HdDxEUXiLFQnvdZQBk laWIbScXcdGmsCX9XzAsO/tZ0qfYuerzQrT7jr41PO13PXlmU5dCpJs4Kz3iW1yUmml+ pQ4GBZ91+9DHTEdT+E2HlemX8d5U8MZZ4GcnOqDwqHqZZfVui89iMZxb1HBuZeNRDzER 63IZ40A75HahWR+gpsvpTla4tOVHYVOxoQyZjWIlLSRQn7En3hi1zpTJE7xf/b3cEH9C YrAevjiD3wwkzlGJTISa8hUhBs1rfm2aPP85KjM6eREZdzlEhE1co3IaEC74HZej0qSX uNhA== X-Gm-Message-State: AOJu0Yw9yyWIi0ggkTfoAP7zkDvIpYCCQFfmoER3a63tYSIV/n7MlwsJ 84IiKHR98sf2KXMM0tH/SHp1fnXsCccRs/Dv8KICWGF91Q/CHDQlIvgxzgbUod1TK3NbFwcmvUW J3f7PglG6XCPpc5CN1d3YSFlvgNuW22ivUVfV X-Google-Smtp-Source: AGHT+IEV/DRe+9hnBf7sYtAbm49Xam2n6Ki1OBhh4+yxJvJVhCP9D0HrgHMYE6yMHAv5S/yXUnRO2YFxHPDtd1eXf3c= X-Received: by 2002:a17:907:7dab:b0:a4e:14e6:2084 with SMTP id oz43-20020a1709077dab00b00a4e14e62084mr764606ejc.51.1711587613117; Wed, 27 Mar 2024 18:00:13 -0700 (PDT) MIME-Version: 1.0 References: <42966-1711578160.323146@w_2U.aZv1.yyMw> In-Reply-To: <42966-1711578160.323146@w_2U.aZv1.yyMw> From: Bart Schaefer Date: Wed, 27 Mar 2024 18:00:02 -0700 Message-ID: Subject: Re: Nofork ${{var}...} edge cases To: Oliver Kiddle Cc: Zsh hackers list Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 52837 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: On Wed, Mar 27, 2024 at 3:22=E2=80=AFPM Oliver Kiddle wrote: > > > Or we could declare ${{REPLY}...} as NOT synonymous with ${|...} and > > localize REPLY only in the latter of those. That might actually make > > more sense. > > That definitely makes most sense to me. Hrm, unfortunately that gets a bit dicey, because ${ ... } relies on having the magic local $REPLY as a place to stash the captured stdout long enough for paramsubst() to reach the point of returning it. So it would be weird for only ${{var}...} to "unlocalize" REPLY. Might have to think about that a bit more. > If we want automatic local for the subscript then maybe ${{a[]} REPLY=3D2= } I'm not following how that is meant to work. > While ${{arr} ... } does return arrays, it doesn't appear to be possible > to force array output from ${| ... } Correct, the magic local REPLY is always a scalar. > In mksh: > print ${|REPLY=3D(one two)} > does just print "one". The current dev zsh implementation stringifies the whole array: % print ${| REPLY=3D(one two)} one two > Perhaps worth including in a test case is the following which does > break after running the echo. > while :; do; echo ${|REPLY=3Dx;break}; done Indeed, good idea.