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_AU,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 ED94E2215B for ; Wed, 10 Apr 2024 21:06:51 +0200 (CEST) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1712776011; b=dRWP08/B62b8dLvdyMkok8gXezoT66Nzm/AnPTG6SkmU546h5dnW8h/SsVfl5BSdGtuRsD74n/ 59diGMD0SkatuAJPEFo44eOv7oSQWAfs8CFMeMti9SzpbHZKGh5B0L2+SLrQ7qrbepOCGBkJqK MK4yEP0UVEQK+WAcOOIhFtJUh5ZRiOu+E8duXM7Qf25qZ+usPJUhLn9iuRA+yQg0SLg7iZ/ir8 jgMsL4ujlaU4/fYDk4Gx74pNEedBzu8C7gcGTIsDniVCA3mCaCsGWIjBiUhxN4oq2tRXT+2+d5 nrPGxmHMa58KUIyKaX2DpVA/+iEKqJvy3keeGRQSExYFLQ==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (hekla.abc.se) smtp.remote-ip=158.174.61.227; dkim=pass header.d=abc.se header.s=default header.a=rsa-sha256; dmarc=none header.from=abc.se; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1712776011; bh=4IdLwauW1D+1iKaiTEsTS7HKjQ6xa2WccOdZfL3bta4=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:In-Reply-To:Content-Transfer-Encoding:Content-Type: MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:DKIM-Signature: DKIM-Signature; b=bN0jKNHZfp4W17A3MdkA/8OrWDk3ClJHoRyCkbX3/Xcbd7tNqkfEFe1vQ1INpXIp3jEMo/JJQ/ 7TZbuwcU9AaGtEq0UfoSudTuqhEnLeppTaHbTolIvCurED01EZqeK/Vhr717hZcJ0PGzGqgZr+ cPkukYVpcsCfQKBQnMz7HwXeG/8FhOb7+sqLl0xUDqx5LgpX8gpyVZiCWG7+/VKtRAxi3tcJ7m X77Pdxe9oL+nL0q/dW1tCsioYRr+KyvUkeHjacpgpSfWhNqNNF7x7NUEI2Msmu172j9QD3XN9E fAWodfcwIURqxy6BxbaO5T9s7SnWPQNjW5iPLeKpzBARoA==; 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:In-Reply-To:Content-Transfer-Encoding :Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID; bh=V/Q31eLaJkt7Za+seNaz8DzkkmfLPr54Gar61xXW+iQ=; b=UTNORZBCIKenu/uJU+/XoeOIDS /XTuqGMB17KdznFyVc69Q/ruJ67SP/W+lKm5J6YEGRwqs8/koiIlGrgrQdWuekEtihMYerCLEZGcv oqjgDyoy2GxwuzZySpsqaoFLImjGa4w2GV3JeX57QvNj4ucujpJe4QTVQs4PqlzxmR8geqd8jNRYs A3iKCIztXsv2szjBHq7UzZx8+Zcf0wpLKbK8XFWKFge2novpLVUnEHzT6vaI3FmNiohfB8OtBTlEN p3zK7uk960jyKcrkd6UlXvrOwPV2BQ9+fHr9h7x4whqk9JN1Ex0YJCGJU2Cm5XGipxKyrqJn7DKcu hqo9urkA==; Received: by zero.zsh.org with local id 1rudHX-000Nvp-0u; Wed, 10 Apr 2024 19:06:51 +0000 Authentication-Results: zsh.org; iprev=pass (hekla.abc.se) smtp.remote-ip=158.174.61.227; dkim=pass header.d=abc.se header.s=default header.a=rsa-sha256; dmarc=none header.from=abc.se; arc=none Received: from hekla.abc.se ([158.174.61.227]:25017) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_256_GCM_SHA384:256) id 1rudGj-000N8v-8z; Wed, 10 Apr 2024 19:06:02 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; s=default; bh=V/Q31eLaJk t7Za+seNaz8DzkkmfLPr54Gar61xXW+iQ=; h=in-reply-to:references:subject: cc:to:from:date; d=abc.se; b=ndzjaXnG48jirl/8s/8tyJCOVSg9LnURXTIk0XsxK VQqJ3nZuQOr5gnHaf8nGWKaDHl6qAKA4v4uAn/QvI/bHmFLO/sxEfiwLCJ7PBbsmC6gPLk aBlkVKZsOSKHEC9CPFcnW32YLi0NoinZX2GkFQaC9b0dfSN8SNTUWSuO1sXfxqNs2dbUbZ dFJlTjK0X3l4gJDLC0hmNeP/TEbXC6VFNq7dOXgTJF6JzB3EDKwQXXBnnYJmzQObcX4OGp 3a5Jf00UKDejpSE3UPw3AymIQom6bPH4TpgNvPhdfaBdX6YRhCQ/NlFoAJrrPHR8gUIsW5 ZzDaLcqeu58Vr8UEldUng== Received: from eeyore.local (94-255-132-157.cust.bredband2.com [94.255.132.157]) by hekla.abc.se (OpenSMTPD) with ESMTPSA id c93bd1ec (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Wed, 10 Apr 2024 21:06:00 +0200 (CEST) Date: Wed, 10 Apr 2024 21:05:59 +0200 From: Andreas =?iso-8859-1?B?S+Ro5HJp?= To: Lawrence =?iso-8859-1?Q?Vel=E1zquez?= Cc: zsh-users@zsh.org Subject: Re: color codes to eval Message-ID: Mail-Followup-To: Lawrence =?iso-8859-1?Q?Vel=E1zquez?= , zsh-users@zsh.org References: <0338833d-1414-4c34-8bea-793f45d4115a@app.fastmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <0338833d-1414-4c34-8bea-793f45d4115a@app.fastmail.com> X-Seq: 29788 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 Wed, Apr 10, 2024 at 02:39:45PM -0400, Lawrence Velázquez wrote: > On Wed, Apr 10, 2024, at 12:46 PM, Ray Andrews wrote: > > var="${red}howdy${nrm}" # '$(red}' is just a color code, no problem there. > > print -l $var > > eval "print -l $var" > > > > ... shows: > > > > howdy > > (eval):1: bad pattern: ^[[31 > > > > ... Is there a way to feed color codes to eval? > > The issue is not "color codes" per se. It's the fact that (assuming > ECMA-48 sequences) you're assembling and evaluating a command that > contains a word with an unquoted, unpaired "[" character, which zsh > deems to be an invalid glob (by default). It's no different from: > > % print a[b > zsh: bad pattern: a[b > > > > Seems to me I remember > > that there's some ${(?) var} ... some flag in there that does it. > > There are a number of possible solutions. > > # Avoid the pointless eval in the first place. > print -l $var > > # Delay all expansions. > eval 'print -l $var' > > # Delay the problematic expansion only. > eval "print -l \$var" > > # Delay learning how quoting actually works. > eval "print -l ${(q)var}" > > # Leave invalid patterns in the command. > unsetopt BAD_PATTERN > eval "print -l $var" > > > -- > vq They could also use print with -P and start using the prompt escape %F{red}, but that's bypassing the issue rather than handling the original string. -- Andreas (Kusalananda) Kähäri Uppsala, Sweden .