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,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 29721 invoked from network); 5 Dec 2023 04:10:44 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 5 Dec 2023 04:10:44 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1701749444; b=YhA5eV10CJxqncfMFGvHxQaSS2YXaXX9JKoRYw75q1oKOcy9t7MRXRs2gbKwJaMmTVuTQdYlAs Q8c9AR8W/EiLIYaUXY6pJCe7lP2k7fha6HM85sSsHj8a0e1MdYs84DwKbivydrVuJHkm1btKGh xammU8q3jsG9AtMG2udRKUuG+mb736okjhsn5+KpZ8EBPLFEMyyW3Bv4Nd8DbOPP3+AHP3TxGr eRhpM5iC7I7/5uayvK1LPtKVgcX0zQBYNsS3lJaolJ2SYwmuZ4t10XhGxQg5jQ9HHm06cpOS90 C5TwzN/tcC2hxh+JQYhuJ/40fizlnbJgiSUOFTwNFbcaLA==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ed1-f45.google.com) smtp.remote-ip=209.85.208.45; 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=1701749444; bh=BFNXZB2ZhbrK9LV4UArOdCWgHZO4lANbeVnQIBuJmks=; 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=VDk1CmnxWuilFwtHQ+hVMgHXnbglzKUFZcIU7DklXHB1ZyCLPIUAXMdy/aJsugBpNwbyPZaa/R xURiDP8AblP5vqK9AZueeaHVGl3OnSAmnDoA7DsVU3TFBqjiMW8vkKaQnH9Em/KiJFMHn6eXc2 ue3DD6dJcGwNfiVznu5ff9yn5ucSr1m1T2X7Hk0uNM2ARXqt9qNPu0llBnMx1o2L/EXRNT2WNU 8Sd0BlJ4q2FGVwARw8AcZrXDXKxa1K4yXGxwdxLlkr5rntDKsM5M6G6FZEMVErsfvERGBMvp8y r5zbZdYPl1KKCpSxLKB2OoHekfN90SNAvQXxsHPbNfp/oQ==; 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-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=ILDvbegtfbt9l2VVu4w/DAsZI+k/QrEHeOExI9XK464=; b=O1luQPL5XMJRNZUiXJ3d6SDKOl ToyQTdxKOPTkjJwYAN5mptKBfsbXRAlRROsXfKgSSp1AL4BKofvobztAiuTIOMqRkjci+Q7U2djfM x4UJ1Bs8+iruneugiiUDHlFq+bIo8g+TvPKaM/7jJUBGCiXLI/FciWjpDCjuwJFmdxDfd7snQekF/ SGC11sAkIxfgmV9+Qkq9eb0tS+4uvbafUz60fjGWavHx86N4J6cQG6VJ2t4JdC0B/4UTSf7Tyt+pc ZubO31D+OiYAWgIs6UXrTXWFwRsZQVo3XkooHi5lR4beB5fdNJOlTKZ6QkTFLkXjMSTJPg17kB1O2 vQHAhqsA==; Received: by zero.zsh.org with local id 1rAMle-000JMf-Pa; Tue, 05 Dec 2023 04:10:42 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ed1-f45.google.com) smtp.remote-ip=209.85.208.45; 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-f45.google.com ([209.85.208.45]:56667) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1rAMlK-000J56-VD; Tue, 05 Dec 2023 04:10:24 +0000 Received: by mail-ed1-f45.google.com with SMTP id 4fb4d7f45d1cf-54bfa9b3ffaso6613657a12.1 for ; Mon, 04 Dec 2023 20:10:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1701749422; x=1702354222; darn=zsh.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=ILDvbegtfbt9l2VVu4w/DAsZI+k/QrEHeOExI9XK464=; b=Z/94uH4p8Sw6kbTDPIetuJ5ZeDpa/52Uk/lRR60V7LWt3tBqZTqxyCi2hKxXDMETIM 29n6bJKhM9vXmJGDs0nfLyndBQfa4NsaxXgv1I7OFAxthhW/YjXCovnNQKIlxDe+AwHW 6CKVg4NbHFEhul4eKHwoLIP2wWnTapRYaT+BE6woZfsHBr+iQI58IhVmEsU962Oxlx6+ XotLkLSM/3ORK86Mr7Hz47UoOMdjj2wj1Xdy/uurknnJSJJb7V4k3kTzAsoCFfoTtCfn LnbJXXcaP0s4kYGXORSE9p5YEV2mlc/NKjxLwDFMQeW68XoJN796lTxqTfe96xnq4eaq vUbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701749422; x=1702354222; h=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=ILDvbegtfbt9l2VVu4w/DAsZI+k/QrEHeOExI9XK464=; b=l1RRBKAIifYXpg4kNDSvGt17JlWmX6xIYlJCXXEWSJAiu0cr+3Yu/lXRpV7uoYiJct 04GXFv1HYrczkdWCkSJBYpBqPuNo8gTVGPU75iY19GhJhq+ZYwCdOTYsGm+sm6Rw9B3a LcxaJC+0T4R9nB3jS2t54ia7xN+AIdr3Nkd3BDur8aVfLcoThxAAkzfeH0V4vuCZSm+0 6s6KzVyfufCHnXitgHQ7vFcM0oCFpT2EL6WIT6tApzwzU0B8N/knbu5a+hB0gPZxD7Qf cf6DlSR4rsLHClcfZb8o7IyLgcrh4CNcKsb/23W+IGBCvyvygcXY/BN0Q0jiWuCDVwbp jU3Q== X-Gm-Message-State: AOJu0YxYjkSVC+ap/bvMElLHNq2keAvqvlU85RtGKOYDNG4lKQJ6UrbC DvYSDeXXObSYP39fdaS6KNsKC5k4Q/DIZZm4b7EO7PM117l9QozXB7c= X-Google-Smtp-Source: AGHT+IHBb4UEZZQMHSQ70fMXjJgpksIfsp8LHkv4Q5CJb9tOCU4YTfO5oAgEIKWNrZygyXKZdxyrFjopljlYRavgD5U= X-Received: by 2002:a17:906:2c3:b0:a04:7d85:fcc with SMTP id 3-20020a17090602c300b00a047d850fccmr2989336ejk.51.1701749422133; Mon, 04 Dec 2023 20:10:22 -0800 (PST) MIME-Version: 1.0 References: <20231205021217.GA357346@zira.vinc17.org> In-Reply-To: <20231205021217.GA357346@zira.vinc17.org> From: Bart Schaefer Date: Mon, 4 Dec 2023 20:10:10 -0800 Message-ID: Subject: Re: [BUG] With CORRECT_ALL, an interrupted correct puts a truncated entry in history To: zsh-workers@zsh.org Content-Type: multipart/mixed; boundary="000000000000cdb70e060bbb696a" X-Seq: 52377 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: --000000000000cdb70e060bbb696a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Dec 4, 2023 at 6:12=E2=80=AFPM Vincent Lefevre = wrote: > > zira% setopt CORRECT_ALL > zira% echo fil && true > zsh: correct 'fil' to 'file' [nyae]? > > Here, type Ctrl-C to interrupt. > > "echo fil" shouldn't have been put in the history. What's happening here is that the corrections occur in-place as the parser reads words from the input line, much the same way that aliases are expanded. When you hit ctrl-c you cause an interrupt signal which stops the parser from reading any further input, but because it's interactive the shell itself doesn't exit, it just forces the parser to return. The history mechanism then records what the parser read so far. Conversely when you hit e.g. 'a' the parser is not interrupted, continues to the end of the line, and then returns. Again the history mechanism records what the parser read so far. Changing this would potentially require changing the way the lexer+parser handle interrupt signals in general ... or changing both ^C and 'a' to skip the history, I suspect. > BTW, the behavior in case of several spelling corrections should > be documented. Something like this? --000000000000cdb70e060bbb696a Content-Type: text/plain; charset="US-ASCII"; name="correctall.txt" Content-Disposition: attachment; filename="correctall.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lprtmmg70 ZGlmZiAtLWdpdCBhL0RvYy9ac2gvb3B0aW9ucy55byBiL0RvYy9ac2gvb3B0aW9ucy55bwppbmRl eCBjYmQzZDBmOGUuLmMzYWY4ZGQzMyAxMDA2NDQKLS0tIGEvRG9jL1pzaC9vcHRpb25zLnlvCisr KyBiL0RvYy9ac2gvb3B0aW9ucy55bwpAQCAtMTIxNCw2ICsxMjE0LDkgQEAgTm90ZSB0aGF0LCB3 aGVuIHRoZSB0dChIQVNIX0xJU1RfQUxMKSBvcHRpb24gaXMgbm90IHNldCBvciB3aGVuIHNvbWUK IGRpcmVjdG9yaWVzIGluIHRoZSBwYXRoIGFyZSBub3QgcmVhZGFibGUsIHRoaXMgbWF5IGZhbHNl bHkgcmVwb3J0IHNwZWxsaW5nCiBlcnJvcnMgdGhlIGZpcnN0IHRpbWUgc29tZSBjb21tYW5kcyBh cmUgdXNlZC4KIAorUmVmZXIgdG8gdGhlIHNoZWxsIHZhcmlhYmxlIHR0KFNQUk9NUFQpIGZvciBh biBleHBsYW5hdGlvbiBvZiB0aGUKK2B0dChbbnlhZV0pJyAobm8veWVzL2Fib3J0L2VkaXQpIHBy b21wdCB0aGF0IGlzIG9mZmVyZWQuCisKIFRoZSBzaGVsbCB2YXJpYWJsZSB0dChDT1JSRUNUX0lH Tk9SRSkgbWF5IGJlIHNldCB0byBhIHBhdHRlcm4gdG8KIG1hdGNoIHdvcmRzIHRoYXQgd2lsbCBu ZXZlciBiZSBvZmZlcmVkIGFzIGNvcnJlY3Rpb25zLgogKQpAQCAtMTIyMiw3ICsxMjI1LDEwIEBA IHBpbmRleChOT19DT1JSRUNUX0FMTCkKIHBpbmRleChDT1JSRUNUQUxMKQogcGluZGV4KE5PQ09S UkVDVEFMTCkKIGl0ZW0odHQoQ09SUkVDVF9BTEwpICh0dCgtTykpKSgKLVRyeSB0byBjb3JyZWN0 IHRoZSBzcGVsbGluZyBvZiBhbGwgYXJndW1lbnRzIGluIGEgbGluZS4KK1RyeSB0byBjb3JyZWN0 IHRoZSBzcGVsbGluZyBvZiBhbGwgYXJndW1lbnRzIGluIGEgbGluZSwgaW4gb3JkZXIgZnJvbQor bGVmdCB0byByaWdodCwgdHJlYXRpbmcgZWFjaCBhcyBhIGZpbGUgbmFtZS4gIEFuc3dlcmluZyBg dHQoYSknIG9yCitgdHQoZSknIGF0IGFueSBwcm9tcHQgc3RvcHMgYWxsIGNvcnJlY3Rpb25zLCBv dGhlcndpc2UgZXZlcnkgY29ycmVjdGlvbgoraXMgcHJvbXB0ZWQgZm9yLgogCiBUaGUgc2hlbGwg dmFyaWFibGUgdHQoQ09SUkVDVF9JR05PUkVfRklMRSkgbWF5IGJlIHNldCB0byBhIHBhdHRlcm4g dG8KIG1hdGNoIGZpbGUgbmFtZXMgdGhhdCB3aWxsIG5ldmVyIGJlIG9mZmVyZWQgYXMgY29ycmVj dGlvbnMuCg== --000000000000cdb70e060bbb696a--