From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 1233 invoked from network); 31 May 2021 00:29:15 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 31 May 2021 00:29:15 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1622420955; b=L75UoiRpT7yK77z6vI7+Nipwix8crjyqUxwbcIGb8iGI0uW6iTaRz8BRHVY7H+Ohqgdd8HomOu Pl5Vvvvi49Uee/fYlxi9FPo3BN77+IVnjrtLZG4O80te7ZiSl4CDSpr+QWHxFRBo2wPokieL/d K2xLsUi+4Ld6j4CHBrPbNWnJGLMJnudj2Hbqypu6HIqgnFDJ8CkPHUlEG50Y47MDkICUy2jbzs VUdab6tgtOESyLQBn2QJ4ENhbLMS3TMUmntJHTU4SXS0YXNxBZoKpi01ys3zaU4llRvl1suqCP sZictzEWQDHllBzaSg52YhQM+ESzQgVyWLWQZQk2soV84w==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-il1-f176.google.com) smtp.remote-ip=209.85.166.176; dkim=pass header.d=gmail.com header.s=20161025 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20200801; t=1622420955; bh=F44KcbOvsnPys+doE1QpUnC/WUrdQY5k1qCEQmhHj2A=; 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:References:In-Reply-To:MIME-Version:DKIM-Signature: DKIM-Signature; b=s5wkoLovaObHBwDpYe50HjSEAhR7FoJ7B4F1qipTm2JdY4dEHFxmYredy1q9c38icpBBiDeQjK jRoIHsmPMGrVB6Lc3z0UEZmYIoNPpqqOweDfkyY3MoXnFNHwdzx6R/wRABmwZZGkHNqGm5uxO6 GbdGOUxKrJNHgqMR+56X4Fo1Hg9V23E39Vicb+q0bPj+XgJQEHd31/tFMz7FYwKhhdzXbI+sQ3 3vSj4zwQZlBNTCXjfCIEFJHIzWM9NVAdDGFritfSvTnI0GtrFJzisYEr5DIXwoFZ5kmN6x1ajr nps96KzcTks/73GhSG7eFWTPhgScS2QSKq0I6Xb8PHf1tA==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; 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:References:In-Reply-To: MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=0EuKxheRbXY7t/lcLDjRySHwJUvizL9y9n3yGxyPykk=; b=hrh+3dFG/E54Xm9uIf46Dpij3R mDtygkW1Klwr5p4Po7njw8LORhykPQpIunVp4edbyQwyt2cmZhFR8vVwltVf3i1a0Mo6sI0+xBdBC HQ/+X00RmfsEbiBzrxv8tp9CAKrl1VgHw4yAXcTCgvcd3wK4GCn4U+VgzHe6888wVUWDcJ2g1VT6q TIkvkEsyd/dARr+kprVPcjjza0jkM7ej4mKv48U8tl8EcDWOFHJ0vhhwzzgpF2I38IetVyEN02rcb HmBE3QIt30+sHdRgU4JxpDDqasUoLW1SISCDWBsKtDKWeOwQZpdrt6n3v9MnxICPJvJKJjMAGQKZ0 PneY7NaA==; Received: from authenticated user by zero.zsh.org with local id 1lnVnu-000Hd7-Pa; Mon, 31 May 2021 00:29:14 +0000 Authentication-Results: zsh.org; iprev=pass (mail-il1-f176.google.com) smtp.remote-ip=209.85.166.176; dkim=pass header.d=gmail.com header.s=20161025 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none Received: from mail-il1-f176.google.com ([209.85.166.176]:41670) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1lnVn9-000GtO-4a; Mon, 31 May 2021 00:28:27 +0000 Received: by mail-il1-f176.google.com with SMTP id u3so8548265ilv.8 for ; Sun, 30 May 2021 17:28:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=0EuKxheRbXY7t/lcLDjRySHwJUvizL9y9n3yGxyPykk=; b=F515PDY/gGj+Ql95/d32ZSb8NUqCip1E9l9mLsDVktBuPExmhHg8pPjgos6UqNfSpW xpFAejxodZY6DZ7mPIqJfrVuwiTE4QbUYhiB7efUw/kQWow2xq52UigaWIAYqR6mFW3I nl4pE9xPcI7+hOiVNLgOIUc4toBA/pnPzIwHzGij3AS+Sqx1hq2KJCp+c4C9SfQuBZXJ Hy9olL5+VFtwX/zbfA6GXt0d9RXO8WqVUoFnDKCYStdZ+yFoFe8+7GCa2/mN8UM3qATf s1Udy9QoKIS6UWA6Wk1dYxHQtmRNvB7z5SxZ5sfue5MiQQTbULcA4wFfFBOSrnKri5CS +VUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=0EuKxheRbXY7t/lcLDjRySHwJUvizL9y9n3yGxyPykk=; b=rK7hqSjybA2IElDK1wP6DXCFwLuE/z1qyF+9lMFHhKBwnTKjxQsJxMwDf2NMPhjJwb IF1HoEBQzZ5jm46QdUnxrig0c3bP/uKz5OV2CMGGuAeH2obcEbfdhAkW0VCnnLRIh2gu U+r53OV6RBHcpyzqwewkS7XT/U03SIF622b6ImP5pCRMARGf55kBMDZdUXFRwMDrlqed 1DVAm5FXeVsSssS4jpzcGs3qEpsxOObQHkgFq95a9Lcze15rClEODb7jcMu3UK1Bpu9o 0czS2BXEj4p6Nq39mjVNS6fo3F107OJXq5wf+GiwI//SoP0aRVcir7wrb6+/c2Cfxq+i A4Ow== X-Gm-Message-State: AOAM5324CAAmHRfPqTaTrr/See5LXoSo+4FDBNPFPkrJM9c8iE1RlsIM fTmF+ghtdoEU2zcOOWGpgSIneGhbTemBDra6bcLgn3P7 X-Google-Smtp-Source: ABdhPJwBIh0TTwDdwv5JHde8lscqrsy7QYsOCA+XImBYX4i3chiCtt8jAHRfiXWjsgqLjgK/vtwaYaI26BuvLS2tuk8= X-Received: by 2002:a05:6e02:1ba7:: with SMTP id n7mr15417246ili.159.1622420906060; Sun, 30 May 2021 17:28:26 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a4f:268e:0:0:0:0:0 with HTTP; Sun, 30 May 2021 17:28:25 -0700 (PDT) In-Reply-To: <26fc6ecd-4a05-e562-7274-ba045df536bf@necoro.eu> References: <26fc6ecd-4a05-e562-7274-ba045df536bf@necoro.eu> From: Mikael Magnusson Date: Mon, 31 May 2021 02:28:25 +0200 Message-ID: Subject: Re: [Review Request] Arrays and their usage To: =?UTF-8?Q?Ren=C3=A9_Neumann?= Cc: zsh-users@zsh.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 26749 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 5/31/21, Ren=C3=A9 Neumann wrote: > Hi *, > > I always feel a little unsure around arrays in zsh. I've currently used > the following: > > local pkgs=3D( `makepkg --printsrcinfo | \ > sed -n -e 's/pkgname =3D \(.*\)$/\1/p'` ) > > pkgs=3D(${pkgs/#/"$DATABASE/"}) > sudo pacman -S $pkgs > > Intention: Generate a list of packages, prepend "$DATABASE/", and pass > each modified package as a separate argument to pacman. > > Question: Is this the correct/zshonic way of doing this? > I personally find the change of behavior by adding ( ) too easy to > overlook. Is there an alternative with ${(...)}? I don't know what the exact output of your makepkg pipeline can be, but unquoted `` will split words on all whitespace, so that is a bit of a danger. I would probably have written it like this local pkgs=3D( ${(f)"$(makepkg --blabla | sed blabla)"} ) sudo pacman -S $DATABASE/$^pkgs That's assuming that the packages from the pipeline are separated by newlin= es. --=20 Mikael Magnusson