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.2 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 CEF9321FF8 for ; Mon, 1 Apr 2024 21:42:40 +0200 (CEST) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1712000560; b=PqexKyXkgG3VX4rIHr5zUbsJNhdVMQlu8bunX9Whg52o64cFYqLW7sbChFsLdEtDr75d+zc7JW wIbRssP+5lF1++CaLZUHwdPlwg48WRxNN4vyzMLoYd4ti9SpWwkcllJFFeb073Ux/rq6chIM+3 KzBgGMKlh5xyUm00ZifTJ8Jd6s0vsgxMThmEnWF1ApGhgfU+0DjdZ1gGUXX+olKU8D+mDivm0b vdDylEIgm6VWiasHdoW7hVaVE3vScjXj/rntI2m+8blHs5mfgSkaLE0+100ZzIMnhIW9lskqe6 /E2LNKv0uqPgFQcRm6Uax948o6gmqR6Hr2UfygGVsy24VA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ed1-f50.google.com) smtp.remote-ip=209.85.208.50; 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=1712000560; bh=US+x/6VGHmuovSDdbo4bRM2anvXiTUAexnTbu8Cr31E=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:To:Subject:Message-ID: Date:From:In-Reply-To:References:MIME-Version:DKIM-Signature:DKIM-Signature; b=EtyT13Wmat2VYnsmNwphJEgFU/L1U81etFbN1JHGHhR+b04BMRvmvwpH81QfXkcvGwt7KGw4nQ X+jj4sYi75AiYzPbvKYKSxD/d2vrkX7y2xFNL6rBWfrKM6iBMye1+znD+L955B5X1itHG9y1JX gDVIEQ98iJHi4ElktfUEOAuONgsAVffOUnT8IJlLOrnOnr24BCocQto611t4vok/8KR56ymg8Y 2gJUhARjREvJtvco89kUW66FW7DcEcKas2ngF/Om1V1pCi6Q8JFx0Bl/XITMbNPM2M2mD+4xth 72p+jQPUuXd4HkBj4Urv4wU/kPVp50ltm5jgAyv8pQ8PWw==; 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:To:Subject:Message-ID:Date:From:In-Reply-To:References: MIME-Version:Reply-To:Cc:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=PsEqBSuscU5xKUnGAILsF4jdIycfHl60MYt+wGc0bi8=; b=J9FGaUJjFFnT8FvTo+Hzi5dV9G 26m2D4Pydr/OiJYD2yWi/S2l2ej/na+djZMq7D+DBfTC/XD7Nj1VjvBtGaxABc6th8USNxBH6wfxk 4uN34UYesIdJlM13C/2lMcGC8GWfgbvAsuvcY4puq+nAJ6t69Q3A4V4rRWZnyolZj2Bvmz8IZNcVw toWMIQKdmW1VjoL0B2SdHdNH1Gapg/asK/iBzNcgeL+KfQB2ebW6x6kYph0TChbFqDGu6X4fUnKCk 2MEochNYkwc6tsAKNyk3ZnLn1vQdcuyyTVmgjtb2Gm5SBPkE05dRabItv6EUt3xj5unpBvA0FX6xU 6cBXtdVA==; Received: by zero.zsh.org with local id 1rrNYE-000ODG-O5; Mon, 01 Apr 2024 19:42:38 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ed1-f50.google.com) smtp.remote-ip=209.85.208.50; 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-ed1-f50.google.com ([209.85.208.50]:47416) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1rrNXU-000NWH-Ph; Mon, 01 Apr 2024 19:41:54 +0000 Received: by mail-ed1-f50.google.com with SMTP id 4fb4d7f45d1cf-56ca3e11006so2398405a12.3 for ; Mon, 01 Apr 2024 12:41:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1712000512; x=1712605312; darn=zsh.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=PsEqBSuscU5xKUnGAILsF4jdIycfHl60MYt+wGc0bi8=; b=jpyzUKQOyPJFY6+aAdlCF2HJH2Nm9vZA463mUj+kSgjsp9z/VGaF5rF8S2jlNj2wKi 2cwRU57YD62hOTNJLKmUSAJxs8sUCYwggieaiW3CyHrq9JXBzZ0651PMCS6KWMhW86bu piFcYoySJ0QT0FzBtplnbbELPLvn7SmiyPKNR8TjgYTysIaiQile5x6dPAg9claKVYNW g5SVSadURPbk8RuUTsdSPduW6XUIMe/oxIVFJE8eDr2s/PUchmeHACvuLkptZQ45DdvP n8DdSiPTSypUQpfpyd4wJC5QCtQG9GGMFah9geiA7BTYhQkT8KDaGaw0YO+UmTcVrHM3 88oQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712000512; x=1712605312; h=content-transfer-encoding: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=PsEqBSuscU5xKUnGAILsF4jdIycfHl60MYt+wGc0bi8=; b=uWfX3fHXkHa//zbRuUynvhT5cUWF5k3CwOFWcfr3UIQmcbqv42w/AlRgyspSO0M2aI kdVKlkvPm4og2c1OD5MhE4OlCSsq4/7/HoeOzBDUhdPF6/CsjPRnH8QSQpXVFQKCL/LT BJaYKkEzJ19wIfgA7kqXekt6bEmcim56TYROaDbfqx7LA393IXlEGbtFCIjJwga0RobS JY/5PuDRz+yW7MEgWJX/rOsh+7PQwnTCbyYwoNiDOqJKjau3Qp/18PnUBxxqrI+ugRfB +kV5kjvZ64gSQiJWMSuVPm/nhw6hBXWnjQ93YDliaFF5HKOso7szdXNA6ZwRmA6/I1i2 E1NQ== X-Gm-Message-State: AOJu0YxZN21qGgMgmmmTXZWQqrja7GKzDqtq0CAF58gvwgPhIuydXUdt ASPL3oe4daSFCncbXwRvsEfiJ5jQ1Rb+Ucrv7Mhuvw1nETKLsVpjqVK3+Pdx4QiWfwqsN2FoEj0 e438TMnDUr+y395eY8o08fAPmErBqhXNFOJhp/sWsHcWxrfiTCtgj X-Google-Smtp-Source: AGHT+IGK+l84w85rCL9T4AD68FrxtWfICpmQNXAOgS8y1tatoyF71w7NCDcY/D5J2KHxV9yYVAXHX1xjuZiMvrlXgrs= X-Received: by 2002:a17:907:6e86:b0:a47:3469:d75a with SMTP id sh6-20020a1709076e8600b00a473469d75amr7062770ejc.67.1712000511591; Mon, 01 Apr 2024 12:41:51 -0700 (PDT) MIME-Version: 1.0 References: <4de03717-ebcb-4b85-bc1b-14be0d2cc8c3@eastlink.ca> In-Reply-To: <4de03717-ebcb-4b85-bc1b-14be0d2cc8c3@eastlink.ca> From: Bart Schaefer Date: Mon, 1 Apr 2024 12:41:40 -0700 Message-ID: Subject: Re: unshift To: zsh-users@zsh.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 29757 Archived-At: X-Loop: zsh-users@zsh.org Errors-To: zsh-users-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-users-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: On Mon, Apr 1, 2024 at 9:40=E2=80=AFAM Ray Andrews = wrote: > > I've never used shift for anything other than the positionals which is al= l I'm considering, but if there was an unshift it would obviously have to b= e globally useful "Undo the most recent shift" is not how "unshift" is defined in other languages, e.g., perldoc: "shift" and "unshift" do the same thing to the left end of an array that "pop" and "push" do to the right end. If for some reason you don't want to declare a temporary for the old value of $1, you can also do something like this: set -- "${(@)argv[2,-1]}" "${argv[1]}" ... set -- "${argv[-1]}" "${(@)argv[1,-2]}" That is, rotate the positionals and then rotate them back again. I would actually usually do something like set -- "${(@)argv[2,-1]}" -- "${argv[1]}" while [[ $1 !=3D -- ]]; do ...; shift; done but what can be used as a such flag value is context-dependent.