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, T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 16702 invoked from network); 12 Aug 2022 13:55:17 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 12 Aug 2022 13:55:17 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1660312517; b=BklKf/oY3jhbPn9Zd92ftjj1R3rLG62VONTWpouGJHAq+xR8GfE0PjF4y/arU8IlmVcLY6BIF9 QmzUfF3ccTDjYd6gBTlUAQfXGEqhJog8OHY/0mx9kC8gCDycXKCJtKIqlMb4cmNc0GqFPXJHzH tZbzPaurIQSfbX1OCSDEuLKV8OS6WPgudalzZxbFbwoRB/bfFYdAFMBjT//1b/0+4V0uVhYz2N Ul8BJCQ4Wh4058N/JBA7IabLcOjQmZC0QLeRZJMqXEqqpz87O2NFOtqfTCDBClch48GM9NmQ1w zSIqPSW33g2VVumXrtF9A7POXD7DiLw23rl45MdAszGgaQ==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (smtpq1.tb.ukmail.iss.as9143.net) smtp.remote-ip=212.54.57.96; dkim=pass header.d=virgin.net header.s=meg.feb2017 header.a=rsa-sha256; dmarc=pass header.from=virgin.net; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1660312517; bh=+9yE3ox8EYnHKX2n25EjbDpF5AMHK7+RAZydhm4kcDI=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:MIME-Version: In-Reply-To:References:Message-ID:Date:Subject:Cc:To:From:DKIM-Signature: DKIM-Signature; b=pG9f/bmjLOKFGZFGM6mon9gRfAmN02/pbILt5THe8RpYI6SvPMvzcpnCG1eYS0MeInj4/axobi MXgaZTlalyDZlBDA5o26efrhRvWwXaq4jzUdd1/2QJeH0K8wL8mlnZ4BMNMFuSRwv1trtRz9hE LRYQmnCsiCaQj8KPxLiUvf8nX/5TygusISOP9ALeFQBV1igeMYo1Mq9vmySOXWJ2Wq9a1YQhyw UVuI16N8M9XG7rIbfSngxYoeyQ0JJw1cmayQg9FK9WlbMm2uZogk4ScwDqD6stXsGW9ntMMgG/ 4XcdimA+on2lvdWVw1fiY8VzrW4vz83I/XdNg8OR7F3Vug==; 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:MIME-Version:In-Reply-To:References:Message-ID:Date:Subject:Cc: To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=3F/34CVB8N6kNUWqREFXlv8JfRe1/x71XrYfQjq5kOI=; b=U3EiS304aZbvbblJVdSUXQmItz wzyCtvTmOl7KU+ekagWMfvi4LBuZtELaP//r9v5x4RYDfQVYtkZfsP8qH2k+G07Bwgk9TMstc8sdI x4zRCVGgR/xnWKj723rkaTG2VAvupF7J4NHSJUazXfXt7aUT+MKxUwuoz/HwcMj6O+raglh9pGDeN i2u3dmu6PSMvy2yKyP+GjeiAIRL/hqw/q0JnYN8s5L2Z6Mf1e3QUjs+acUWWFslWX4Swif8xBBcGI 62L6UcncjO95RZ2WRSf1gfY6B9X6PTpQZEA8X5d0Me1KHvv7bOsqfOMjryWgoH/U/aa68i7E62peZ 9bvtqRCw==; Received: from authenticated user by zero.zsh.org with local id 1oMV88-0007y9-6n; Fri, 12 Aug 2022 13:55:16 +0000 Authentication-Results: zsh.org; iprev=pass (smtpq1.tb.ukmail.iss.as9143.net) smtp.remote-ip=212.54.57.96; dkim=pass header.d=virgin.net header.s=meg.feb2017 header.a=rsa-sha256; dmarc=pass header.from=virgin.net; arc=none Received: from smtpq1.tb.ukmail.iss.as9143.net ([212.54.57.96]:33372) by zero.zsh.org with esmtps (TLS1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1oMV7U-0007GV-Cj; Fri, 12 Aug 2022 13:54:37 +0000 Received: from [212.54.57.108] (helo=csmtp4.tb.ukmail.iss.as9143.net) by smtpq1.tb.ukmail.iss.as9143.net with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oMV7U-0002LI-54 for zsh-users@zsh.org; Fri, 12 Aug 2022 15:54:36 +0200 Received: from vCholatse.rt ([92.24.154.230]) by cmsmtp with ESMTPA id MV7To6A8ouYlrMV7TooFc3; Fri, 12 Aug 2022 15:54:36 +0200 X-SourceIP: 92.24.154.230 X-Authenticated-Sender: thomas.lauer@virgin.net X-Spam: 0 X-Authority: v=2.4 cv=RoXWkQqK c=1 sm=1 tr=0 ts=62f65b9c cx=a_exe a=jB/Hc0bG8MAxmCyZ1PPllg==:117 a=jB/Hc0bG8MAxmCyZ1PPllg==:17 a=8nJEP1OIZ-IA:10 a=biHskzXt2R4A:10 a=pGLkceISAAAA:8 a=ttAmOPWsmtt1OtnjZXMA:9 a=wPNLvfGTeEIA:10 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virgin.net; s=meg.feb2017; t=1660312476; bh=3F/34CVB8N6kNUWqREFXlv8JfRe1/x71XrYfQjq5kOI=; h=From:To:Cc:Subject:Date:References:In-Reply-To; b=D7tTURQ1bBNNorfahC8T9AvmtAqLw/wse9VIlI7QI+IH3pO/7lCxUgbcTe3o/bUUm 0wuEtwD6oPsNv/gm7/sqfCnt6QwNk6XLMUzmfzvhtBwaPt7KEbs+HcOGbNk3WP0ECA /4zgvw9d0rWiUSqwORmBcgkWBfyaG1NOhPYzpQdRIUu+i8i+VrG5i2obTHkqLUsHTM dfBR7VyjerJxekB5uvlJ6YBhhLr4rUWKIee3BEc0Po/knY+eVLKDyXNRlpRmhBUT9y dAkuvKUI/cWL1X62U97xP7ArS+7KlYo6EnU8LGpC2wTH7XcYM+7qD4cpg9itGQlBn7 OctwVxGqIYjpQ== From: Thomas Lauer To: "Daniel Shahaf" Cc: =?ISO-8859-1?Q?=3Fo=E0n_Tr=3Fn_C=F4ng_Danh?= , "Zach Riggle" , "Zsh Users" Subject: Re: Overriding "builtin" Date: Fri, 12 Aug 2022 14:54:39 +0100 Organization: TL Message-ID: References: <64b57144-d4af-4708-983b-0bd202557bbd@www.fastmail.com> In-Reply-To: <64b57144-d4af-4708-983b-0bd202557bbd@www.fastmail.com> User-Agent: ForteAgent/7.00.32.1200 MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-CMAE-Envelope: MS4xfHuWCL22Yyy8fiH/gOX47lT7JkzayKZjsMM0P0QnGVoJ8GVKipVB5EEXhhhNX5rXKWszxSara475HUEsEn9BeUYnLUOmv6xUoL+q0PkovQYIBqfw31GL 5egMlD4HsPN/jOZF98d1QpHWkGSEjFsNTCvYgCW2siRw7Ub4rgerkKNYfpgZZDEkDSo/HvNHYWyGA25dnOW0vb1BuAyaNley/yURJE8/byQd4ClFcppz7uVs K1m/X4t8Qp/dX4XsX14Y3xe/Q+3duEPW7PK0lRTHki8gneGEFFPEKAbPTXt0ZvZd X-Seq: 27945 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: =46rom: "Daniel Shahaf" Date: Fri, 12 Aug 2022 07:12:56 +0000 > ?o=E0n Tr?n C=F4ng Danh wrote on Fri, 12 Aug 2022 02:24 +00:00: > > On 2022-08-11 20:18:49-0500, Zach Riggle = wrote: > >> I recently learned that 'builtin' can be overridden with a function.= Neat > >> for some silly tricks! > >>=20 > >> However, is there a way to save / restore 'builtin' such that it can= be > >> restored? > >>=20 > >> All that I can think of is 'unfunction builtin', but 'unfunction' = itself > >> can be overridden with a function. > > >=20 > =ABunset 'functions[unfunction]'=BB, provided (zsh/parameter is = available > and) someone hasn't created an unset() function as well. >=20 > > You can run original builtin with "builtin". > > > > e.g.: > > > > echo() { printf '++%s\n' "$@"; } > > echo this will run function > > builtin echo this will run builtin >=20 > No, he can't, because in his case that'd be a bottomless recursive call > (=3D an infinite loop). Hm... this works here as I'd expect, but since you said "in his case" there may be something that turns that into a non-terminating recursion just for Zach's case. But what? (Always eager to learn something :-/ ) Tom