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.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 1377 invoked from network); 2 May 2021 22:21:09 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 2 May 2021 22:21:09 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1619994069; b=Mg4ni09+Q5sHjaGO0SA2EOndUI8jdQI/j//QHOlo1H60V6kkgiGVRC3tULAENLnnXnxJKGqeqR BwF45BRjqehalDFKxcAgMY2xAFAdxoKi2vkiCWFJh2VUOFNVcGP+IVWlam1lgoCcCpDmEZRfh9 qjt2ZJLmATIrngkQ/L0jZntUM1g7ECuCr4PTr1btMGTMxct2APMiYOY7/8Q+Stvtuvl0BZJ78L Ge0U2uCWw+4bHJe1la5hqGXVfr2OeJ1fXOyV2wu+rjcIILLGtXKGWzNG9nCF6rFOroV2xJyFsH yYkrNKjJUC8SlPXY0VhD2tW/SsKdx2owKRo807MrpLoa2g==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ot1-f49.google.com) smtp.remote-ip=209.85.210.49; dkim=pass header.d=brasslantern-com.20150623.gappssmtp.com header.s=20150623 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-20200801; t=1619994069; bh=e/ediLG6NZJqID2yDuBn2liCg+soe4waSstedWctJI8=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:DKIM-Signature:DKIM-Signature; b=U3fdZYeLIFr/vWTsqUhlZ2c1VLRfbG9lgJn8nGMpXLP0hfeAAglYiJ2DW4mu7OHawUTh4h7h1N ItwBAaczRTf/rr3d9p/kC8OPskrKNtpE8uLzFfsSnHYtpuCIqNzH3XLoTx1BJ1ts6gm1BfOMEQ pfuNBlgnIqMeIymV2XB3fWZBnxCyrFU5g9ZsoV3htCWS2yyIRDio7oZBOPY0uyodEjMg8P/1KL 2bjnLO2qPZOgM0HVGu8zBwWS+eG6QW0AjMXCPARqegZcugwrYjScoJhcgBjHUdTRJtQbSPjYRl GDqJlbu8qklRGnPBRzICB/zVGME0jCXGxURMq1PcAlmFlA==; 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-Type:To:Subject:Message-ID: Date:From:In-Reply-To:References:MIME-Version:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=gY9lFUrixax+9oiiL7h3hzbAK49YCYwkM1ysEqY+iAQ=; b=pcHihqJj1BGQbai+gH0PV+ZzOJ QFlmUxmH4jbSr373FMS+4XEmOJfd2afI9VyGNVfYZmH61MHTIk2gSARY5/PBz7PElLwwUCXZJ5VXb UCpwQ2gH8DBlMgSkoONrkWHuoPQF1ePkpAKXiRMXt5his+AjNOZNY4V/GxTICGRSIU7546nMFK998 qKwQS0nxnC8PuqAPfsMsczz/gFPqI7PszcNHrjFF4QApQUfG4aJjjxUIac/JPxH6b2iSUA3tGpJiW GSSp6DnOddeFDqvYMyYOip5BrEFA1PZgF7tixg5tSWFcMVZX14UwpZfVdRwDXV2cheW5oxghyvdSd Xy9mBinw==; Received: from authenticated user by zero.zsh.org with local id 1ldKSa-000CBx-5b; Sun, 02 May 2021 22:21:08 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ot1-f49.google.com) smtp.remote-ip=209.85.210.49; dkim=pass header.d=brasslantern-com.20150623.gappssmtp.com header.s=20150623 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-ot1-f49.google.com ([209.85.210.49]:34647) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1ldKSG-000Bwg-30; Sun, 02 May 2021 22:20:49 +0000 Received: by mail-ot1-f49.google.com with SMTP id x54-20020a05683040b6b02902a527443e2fso3515487ott.1 for ; Sun, 02 May 2021 15:20:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=gY9lFUrixax+9oiiL7h3hzbAK49YCYwkM1ysEqY+iAQ=; b=Mh+PUWRmrAeOvwZldUgzlSW/Y5t6+h6XAUvkzoVCXK2QMHOa4OWvHFLdIEigqBX4pS GFS8LVhvozG+7sk3M9HG4yimrCQc7LyX1X1Eo7Nt22sOiKcLm3tE9ZV5yvSR1FxxJXtH 1YXylocQtlbQlQk+vsL08qnBJ5W83lBL3/EsYawwlOYCqhFdvhdl321kEJL5/P1IlX5x 6CujfotjdWl/02FCj/LWTQK5rM39W4fCG3eziQ1RXrMblN3kXQMJHmLd4AgT/QNjyveY 5Bs1vQHE1Ujlu0qVLiS+2qyvpMjDiD0qqSTOsXRov6Mj/du0HTYtRISnv6/kb3/u8088 kqnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=gY9lFUrixax+9oiiL7h3hzbAK49YCYwkM1ysEqY+iAQ=; b=rYmjhKOI7HCZDDc2SLZDZQvx7u5oLYGQvbOFpEN5HdeBdJBicaRpIccc9J9vMt5AMA 4zVJHHEVCtT+KmQjv+UsvcJfQEEDZWUOP0Jqwn3f9AomcFz6CqV1BQVU446vU3BC/96Q 1Sv7WjepikOdzLWlhBvEMgoqJOU7Q4YKlmIDco1lYCAjETgq6h8xrxSGRaQanSiOm5k3 kuASoZ2cea4w5VecLPIkCgV/ecMNDUVJhcg/EQU5Uw687QVCfc5xf9e3FF1aVrzDArZj YkRNn7nL0frt5YSN6vC73/K5UX9lD3cCUn84FvJQTnoJg4bmtG0QuAICXBKlMVianrtl NfUA== X-Gm-Message-State: AOAM5302RbnsyWYVWEruLzyxG5WBOmHw8G8MVGzTKXhqkOD2c82CP/nv j6rt2n4BulM1wkqX/SVh2RSI901UiUDQOkfKsZDuKKSN3XYU/g== X-Google-Smtp-Source: ABdhPJzXPTdhrhKAaHcCRxKtSLKWKgBEeAIjpe04iydDVQNLa2xfKfqKGCph/nSYBiEPpz78EX5kjIkw96muhKIT4pE= X-Received: by 2002:a9d:4d9a:: with SMTP id u26mr12244746otk.161.1619994046440; Sun, 02 May 2021 15:20:46 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Bart Schaefer Date: Sun, 2 May 2021 15:20:35 -0700 Message-ID: Subject: Re: The curious incident of the feep in the night-time To: Zsh hackers list Content-Type: text/plain; charset="UTF-8" X-Seq: 48772 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 Thu, Apr 29, 2021 at 11:27 AM Bart Schaefer wrote: > > An actual interrupt signal causes getbyte() to behave as if no > keystroke were entered [...], sendbreak() eventually returns > whatever keystroke(s) initiated the widget More accurately, on sendbreak() the keystrokes have already been returned, and used to select the widget. This brings us to the final (I hope) complication, which is that when a built-in widget is run by execzlefunc() any result stored in lastval is retained, whereas invoking a user-defined widget passes noreturnval = 1 to doshfunc() which causes lastval to be overwritten by the saved value from before the function was invoked. This spoils a scheme I briefly considered wherein running zle send-break 75 (for example) would cause $? to be set to 75. I suppose it's best to drop that idea and leave noreturnval as it is, because as it happens there are no builtin widgets that change lastval. A question for anyone still following this: Is it acceptable/desirable that { zle send-break } always { TRY_BLOCK_ERROR=0 TRY_BLOCK_INTERRUPT=0 } causes the send-break to be disregarded? Or should send-break in fact have its own not-clearable state?