Received: (at 71017) by debbugs.gnu.org; 22 Mar 2025 11:00:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 22 07:00:46 2025 Received: from localhost ([127.0.0.1]:41022 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tvwar-00039k-Ty for submit <at> debbugs.gnu.org; Sat, 22 Mar 2025 07:00:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:48768) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1tvwap-00039W-Dp for 71017 <at> debbugs.gnu.org; Sat, 22 Mar 2025 07:00:43 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1tvwaj-0006Hx-F9; Sat, 22 Mar 2025 07:00:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=jxFRIdz5frruhD3FStGVnzj9cpgP6EnjN7M2s203xRs=; b=FrzHKHj+KWve LGuj2yE+eFHrYty1pHhPXKMpYeCFwQ+X9N3T51+jN2OeRUWwwi8V0mkouldZ0V988XK+A0dkdGdpW ilLOpcqUpZZcyiUy2R6wHtCkLwFyBf9GIF7AkFPFFjNvI5TKxyVkUkzMiWbkyxG4Sa03aseOxdBtk 4vXMrLxRvqEbn1eYiISh3SmUiTb4Ay1nZxb6aYu76MHRBbJTgsVXlxT20l6azu5921fyO4OV1dq/l ksXkotBAy7SQXGqll9OJTnaZ5vz3LQTTOmFSGsWO1vTovPLWiSiv+r45rC4uM7jDU8tpU/bbERMgZ MqMKieGCFJGBVm4kpWo6ew==; Date: Sat, 22 Mar 2025 13:00:30 +0200 Message-Id: <86msddjpo1.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Sandra Snan <sandra.snan@HIDDEN> In-Reply-To: <87y0wx7b61.fsf@HIDDEN> (bug-gnu-emacs@HIDDEN) Subject: Re: bug#71017: fill-flowed-encode References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> <87v7sov6zu.fsf_-_@HIDDEN> <87a5a0v538.fsf@HIDDEN> <875xkdcg3i.fsf@HIDDEN> <87y0wx7b61.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71017 Cc: pablo@HIDDEN, 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Cc: 71017 <at> debbugs.gnu.org > Date: Sat, 22 Mar 2025 08:54:30 +0100 > From: Sandra Snan via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > I.e. the idea user writes super long lines and there are no > "soft" newlines, instead relying on visual-line-mode [which, I > dunno, maybe that uses soft newlines under the hood, I haven't > looked] It doesn't.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 22 Mar 2025 07:54:38 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 22 03:54:38 2025 Received: from localhost ([127.0.0.1]:40644 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tvtgk-00031X-DT for submit <at> debbugs.gnu.org; Sat, 22 Mar 2025 03:54:38 -0400 Received: from halsen.idiomdrottning.org ([2600:3c02:e000:179::7]:51750) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1tvtgi-00031I-8V for 71017 <at> debbugs.gnu.org; Sat, 22 Mar 2025 03:54:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1742630073; bh=JuhHvyazYrZ81lZ/nbHyk45d5qY9rEJjBAgcLYONUME=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=NOfy42o5tS/M7itH0bknb8igM1zxU8jDDWC6BeG11nilZ32g63603T5bXhxpCj+Sx 2Vs81WFDG5A7sRqzuo7obf4xiZYBmtktdvl3wUJiB+THiBS+HwveN+AQPzTxV+RGSE 9gjBeCQ+DTmHzsYYxtFO4doNHx9BO2Q4fXakPn5tzJvRuBbC9MDW1m6KBfuqNarr4D DnkhILgDk0Y+3UKn5FZ8KGX88Ebos1HPuQXdBm+7iuS36uSyxfGuM8b6DM1mQSbgtg cYRHhpKQLWzHdGqyMZJbq1PBkH+QU5kHskPnqbP1yfP+BSHC8ip4k6OUwDXgDoyx/q XwG9dNj0LX8XA== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 5D52D2E51D; Sat, 22 Mar 2025 08:54:32 +0100 (CET) From: Sandra Snan <sandra.snan@HIDDEN> To: Henrik Ahlgren <pablo@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode In-Reply-To: <875xkdcg3i.fsf@HIDDEN> References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> <87v7sov6zu.fsf_-_@HIDDEN> <87a5a0v538.fsf@HIDDEN> <875xkdcg3i.fsf@HIDDEN> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata= mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9pa0LFNh bmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+iJMEExYIADsCGwMFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AWIQSM+QwgZjV9IBEt0Difw0TKEvFISgUCZWJbSgIZAQAKCRCf w0TKEvFIShsYAPsFMXn+tFcAwdI2hrkqqQY8I5EC9UWYC9t57VjiYv2uYQD+PUNVHVSBGQDycf3V /nXqXvZvTfcFMOz0PVMzibPl0AiIkAQTFggAOBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgS AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ/DRMoS8UhK07EA/iV2B5e3r8t8/StJT38d x9YbuoSBmbYZJ6JHH9hoyv0hAPwMiH1M8zZUeQK/TQDqkg2Hjk0xL+U7i9ggocLJEAWQDbg4BGVh CBISCisGAQQBl1UBBQEBB0BqHjRRmoXeZmeeUZOqL1ebAflzYFA3jHwxl2sLMLlMCgMBCAeIeAQY FggAIBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgSAhsMAAoJEJ/DRMoS8UhK4o0BAOB7ChkN Jc0oxRDg9WvrbUCnpLU/QdjMFcC8ymLRdzxaAP4gZVL0JQfxulc/JAxotCevk1PAF+UXpY8QalTI dooaAA== Date: Sat, 22 Mar 2025 08:54:30 +0100 Message-ID: <87y0wx7b61.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) I said all that but then yesterday, just a little over a week after I was boasting that I never mess things up, I too forgot to "harden-region" a paste of a shell output. Ergo, approach three is starting to looking like the winner as far as my vote goes! I.e. the idea user writes super long lines and there are no "soft" newlines, instead relying on visual-line-mode [which, I dunno, maybe that uses soft newlines under the hood, I haven't looked] and visual-fill-column-mode (or however else the user wants to do it, like a few years ago I also made https://idiomdrottning.org/gmihw that people could pipe their text through), and that then we or I write code that breaks those long lines according to format flowed so that the wire format is still ff wrapped.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 13 Mar 2025 11:42:01 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Mar 13 07:42:01 2025 Received: from localhost ([127.0.0.1]:53991 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tsgwq-00031X-St for submit <at> debbugs.gnu.org; Thu, 13 Mar 2025 07:42:01 -0400 Received: from halsen.idiomdrottning.org ([2600:3c02:e000:179::7]:51692) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1tsgwn-00031K-LZ for 71017 <at> debbugs.gnu.org; Thu, 13 Mar 2025 07:41:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1741866115; bh=XTSCLRtNPXwPIutPZ1Xd9Et04XhEe+f8dKCReg5+36s=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=rdyLfl0HdE7VZClvgQic3GloFah2oVgePgfPWGghV3/vXqz5NIEX/muYMxD8iDx6j +VDkAGVdL+lVkL3CuDWj4rbXz9G6Upt9BBzkkBfVoZjfd1C86vERaBTMdUr+yhdPy8 U+zo/2qSDSE4iIR28VjE0oTDvBPqkg3aHdlKqseoKT8mJSEP8CGajGqcVX3am58hQc Q8pRTnmrzeV4g9Rh7+7QDs55Yc8wQ+BeiOXE9aIx/WVF2PYUviZUHnEnO3369UyC/Q 8/bWIgWb6czJwoQE/GILTHXWukZ5ktuP5R5iWhBQFTCn9ViM75oPHiR3NljXPbavKD jwf458NcJevPQ== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id AA10E215B0; Thu, 13 Mar 2025 12:41:54 +0100 (CET) From: Sandra Snan <sandra.snan@HIDDEN> To: Henrik Ahlgren <pablo@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode In-Reply-To: <87a5a0v538.fsf@HIDDEN> References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> <87v7sov6zu.fsf_-_@HIDDEN> <87a5a0v538.fsf@HIDDEN> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata= mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9pa0LFNh bmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+iJMEExYIADsCGwMFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AWIQSM+QwgZjV9IBEt0Difw0TKEvFISgUCZWJbSgIZAQAKCRCf w0TKEvFIShsYAPsFMXn+tFcAwdI2hrkqqQY8I5EC9UWYC9t57VjiYv2uYQD+PUNVHVSBGQDycf3V /nXqXvZvTfcFMOz0PVMzibPl0AiIkAQTFggAOBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgS AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ/DRMoS8UhK07EA/iV2B5e3r8t8/StJT38d x9YbuoSBmbYZJ6JHH9hoyv0hAPwMiH1M8zZUeQK/TQDqkg2Hjk0xL+U7i9ggocLJEAWQDbg4BGVh CBISCisGAQQBl1UBBQEBB0BqHjRRmoXeZmeeUZOqL1ebAflzYFA3jHwxl2sLMLlMCgMBCAeIeAQY FggAIBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgSAhsMAAoJEJ/DRMoS8UhK4o0BAOB7ChkN Jc0oxRDg9WvrbUCnpLU/QdjMFcC8ymLRdzxaAP4gZVL0JQfxulc/JAxotCevk1PAF+UXpY8QalTI dooaAA== Date: Thu, 13 Mar 2025 12:41:53 +0100 Message-ID: <875xkdcg3i.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Even though my setup works well with this "harden-region" stuff (and I keep double-checking how what I send from Emacs look in e.g. Delta Chat), I've been thinking that maybe this entire hard/soft newlines as invisibly delineated by props might fundamentally not be the best approach. Let's call it "approach one". This is what I'm still currently working for email and I haven't had any mishaps in a while thanks my patched messages-are-flowing. I hacked it so that newlines that are paragraph breaks do NOT show those annoying li'l return signs, but hard newlines that are in the middle of a paragraph (for code or poetry) do show them. That was very scary to deploy (as hiding information from myself always is) but it has been working. Now, for all three approaches, I'm talking about the local writing format in the buffer for the Emacs user. The wire format shall the same for all three approaches i.e. the current approach which follows the RFC without stuffing > marks. https://idiomdrottning.org/format-flowed One idea, "approach two", might be to use an idea from markdown: Paragraphs (i.e. \n\n+) are always hard, lines that start with four spaces or end with two spaces have those spaces removed and are also made hard, and all other newlines are soft. With approach two you still need to remember to add spaces to code sections (for example with markdown-pre-region) so it keeps some of the same "harden-region" problem of the approach one. This approach two is what I am and have been using for many years to write for my blog. I personally only ever use the four spaces with markdown-pre-region rather than the three backtick "code fence" method but if we were to go with approach two, we'd probably better support both. And then "approach three" would be... All newlines are hard. I've been using approach three to post on Fediverse and I've been using visual-fill-column-mode together with some hooks that make it and visual-line-mode toggle in lockstep so there's never one without the other. I need to remember to have autofill *off* when using this, but it's been so great! I know, I know, this is a very "Windows and Mac" approach to text (and don't worry, the wire format will still be wrapped using the flowed RFC, we're not actually *sending* these hyper long lines here) but it works. I've always thought visual-line-mode was completely useless and ugly but with visual-fill-column-mode it works really well. It's not as fire-and-forget as the other two approaches since the one drawback to approach three is that if I'm not sure I accidentally made a newline, I won't see it. So when that creeping insecurity starts rearing, I toggle visual-line-mode (which also toggles visual-fill-column-mode) to double check. Or if it's just one line I can delete the "is it a space or a newline" character and insert a space, but, I'm more likely to do the toggle check since I have it on the keymap & on the mode line. So, hmm, all three approaches have their drawbacks. The first two requires deliberately hardening and softening, the third matches many other modern apps but can (rarely) accidentally insert stray hards. A harder-to-detect but less-catastrophic error than accidentally softening a huge code patch or poem. So what do y'all think, keep on polishing the first approach or switch to two or three (and maybe polish them further)? For me this itch has been well scratched with my patches both here and to messages-are-flowing ( https://github.com/legoscia/messages-are-flowing/pull/15/ ).
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 21:51:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 16:51:31 2025 Received: from localhost ([127.0.0.1]:33311 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpaAk-0002Q3-OQ for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:51:30 -0500 Received: from halsen.idiomdrottning.org ([2600:3c02:e000:179::7]:54968) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1tpaAh-0002Pr-Ps for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:51:28 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1741125086; bh=8ODTxw0e0aZ1Xx++WVTwRwGiuuBHLjFxrw+XZJnBl0M=; h=From:To:Subject:Date:In-Reply-To:References:From; b=1w3teZuiXxztkzJ+hJ1ky944dxLAv5faea8EamYzCsBlIpYRM/XQiqET6EiZ7mK1E mrjYXqyby2YVj/Y0EXbUVglA87E2G78OkQCVP8jPtumHRmCXxkfYlx9+WawfXbBKuv 4yTOnAj8OTewop1NetZxRKIixlSxMrSf/kWE4MNwE4d3hOHV2SyxMxDWtymvTyUfwB A5lWivpW/UaC5aPOUdvvguFBDq7hNQdOwWeOjyLcfJ2zvVimRGvuu2o/MrT6OZhpnA GslMvVOnYWiNAPP0tZxjKi/QrAQIChpTB4n5YITRP+cydrlnegIBLKtKS5TLyvuCju a0ydT4ZwEghMQ== Received: from [127.0.0.1] (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with UTF8SMTPSA id 963602E439; Tue, 4 Mar 2025 22:51:26 +0100 (CET) From: Sandra Snan <sandra.snan@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, <71017 <at> debbugs.gnu.org>, Eric Abrahamsen <eric@HIDDEN> Subject: =?utf-8?q?Re=3A_Re=3A_bug=2371017=3A_fill-flowed-encode?= Date: Tue, 4 Mar 2025 21:51:26 +0000 In-Reply-To: <TvMmKwaHxtkQHpSsC-9v5Jn6@localhost> References: <87v7sov6zu.fsf_-_@HIDDEN> <87a5a0v538.fsf@HIDDEN> <TvMmKwaHxtkQHpSsC-9v5Jn6@localhost> Chat-Version: 1.0 Chat-Group-Name: =?utf-8?q?Re=3A_bug=2371017=3A_fill-flowed-encode?= MIME-Version: 1.0 Message-ID: <-7QrMD7j3-y_xdXmtsaEPbBY@localhost> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata=mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9p a0LFNhbmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+wo0EEBYIADUCGQEF AmVj0UYCGwMFCwkIBwIGFQoJCAsCBBYCAwEWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCfw0TKEv FISm5WAQC0iU4SECQOo4f90vQ3XJ6mtyd7Yps5Az6v7IhIiIZ/wwD/WH+8te3Wi6STHNILohPOh1bH wfEY9cfmvBgr1bfbawG4OARlYQgSEgorBgEEAZdVAQUBAQdAah40UZqF3mZnnlGTqi9XmwH5c2BQN4 x8MZdrCzC5TAoDAQgHwngEGBYIACAFAmVj0UYCGwwWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCf w0TKEvFISpmoAP9A4VTP2HLMWNde1KvEG+Cef1XzwBCcrVCVVK2BWY0CDwD/TJFAr3bdDN+WDvNMg7 9wt6tW1SG52BJ6CTE4PnO01wM= Content-Type: multipart/mixed; boundary="zIYNnVssoXStdAI3emzhzgl1LFz1N9" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --zIYNnVssoXStdAI3emzhzgl1LFz1N9 Content-Transfer-Encoding: quoted-printable Message-ID: <-7QrMD7j3-y_xdXmtsaEPbBY@localhost> Content-Type: text/plain; charset=utf-8 And I have signed FSF papers so feel free to use it. --zIYNnVssoXStdAI3emzhzgl1LFz1N9--
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 21:51:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 16:51:00 2025 Received: from localhost ([127.0.0.1]:33305 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpaAG-0002Oj-B3 for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:51:00 -0500 Received: from halsen.idiomdrottning.org ([74.207.231.133]:57102) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1tpaAD-0002OY-6T for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:50:58 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1741125056; bh=ObqsGKPvPqDw+uzsA3xRqFqSrInP5J6M28rRyHfhaiA=; h=From:To:Subject:Date:In-Reply-To:References:From; b=SbzsLsjMovngOXottZ75EKUe8iIh3BnLTidz1VzUK+vupv6ssnbDJh1zwotWaBu2p Ct2bZvleDC/TulmAkFeUp4CFnS1DK1gCKLGNPIDO5k9oqzgXZZU2XeOhET3IPQUeBX JWzrJu2/OlI2xFwjWxmukv5FrwMPO7WVHwhRza/mg3aMzeUtDQUerXaGyu3A31aglF Jf0X78McOyx0GXEwhp8lSW9cCUSnYq+av5rLE+ulUiaafbLmhjsz7Zg9V3ryniUVPX D39dxKSbnh3s8D53EnuLIGMKwTCkJd1znMfVhR7HjdKr5oJksuNskR5UMVOQ7OpIv+ M1SQuV/S4upzA== Received: from [127.0.0.1] (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with UTF8SMTPSA id 6FB542E48A; Tue, 4 Mar 2025 22:50:55 +0100 (CET) From: Sandra Snan <sandra.snan@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, <71017 <at> debbugs.gnu.org>, Eric Abrahamsen <eric@HIDDEN> Subject: =?utf-8?q?Re=3A_Re=3A_bug=2371017=3A_fill-flowed-encode?= Date: Tue, 4 Mar 2025 21:50:54 +0000 In-Reply-To: <87a5a0v538.fsf@HIDDEN> References: <20240707090448.2550042-1-sandra.snan@HIDDEN> <87v7sov6zu.fsf_-_@HIDDEN> <87a5a0v538.fsf@HIDDEN> Chat-Version: 1.0 Chat-Group-Name: =?utf-8?q?Re=3A_bug=2371017=3A_fill-flowed-encode?= MIME-Version: 1.0 Message-ID: <TvMmKwaHxtkQHpSsC-9v5Jn6@localhost> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata=mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9p a0LFNhbmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+wo0EEBYIADUCGQEF AmVj0UYCGwMFCwkIBwIGFQoJCAsCBBYCAwEWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCfw0TKEv FISm5WAQC0iU4SECQOo4f90vQ3XJ6mtyd7Yps5Az6v7IhIiIZ/wwD/WH+8te3Wi6STHNILohPOh1bH wfEY9cfmvBgr1bfbawG4OARlYQgSEgorBgEEAZdVAQUBAQdAah40UZqF3mZnnlGTqi9XmwH5c2BQN4 x8MZdrCzC5TAoDAQgHwngEGBYIACAFAmVj0UYCGwwWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCf w0TKEvFISpmoAP9A4VTP2HLMWNde1KvEG+Cef1XzwBCcrVCVVK2BWY0CDwD/TJFAr3bdDN+WDvNMg7 9wt6tW1SG52BJ6CTE4PnO01wM= Content-Type: multipart/mixed; boundary="wrfSy21Wkves1fUBCbYjN9E2Xm6WR2" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --wrfSy21Wkves1fUBCbYjN9E2Xm6WR2 Content-Transfer-Encoding: quoted-printable Message-ID: <TvMmKwaHxtkQHpSsC-9v5Jn6@localhost> Content-Type: text/plain; charset=utf-8 That PR was made by me. --wrfSy21Wkves1fUBCbYjN9E2Xm6WR2--
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 21:50:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 16:50:00 2025 Received: from localhost ([127.0.0.1]:33296 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpa9I-0002GZ-FC for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:50:00 -0500 Received: from fout-b3-smtp.messagingengine.com ([202.12.124.146]:50321) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <pablo@HIDDEN>) id 1tpa9F-0002GE-6Z for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:49:58 -0500 Received: from phl-compute-01.internal (phl-compute-01.phl.internal [10.202.2.41]) by mailfout.stl.internal (Postfix) with ESMTP id 501ED1140175; Tue, 4 Mar 2025 16:49:51 -0500 (EST) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-01.internal (MEProxy); Tue, 04 Mar 2025 16:49:51 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seestieto.com; h=cc:cc:content-type:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=fm1; t=1741124991; x= 1741211391; bh=hEMTfbXBv/yYGzdTvujii8Akq1NlI8HKj3TUChWuAF8=; b=j 8hPWUzSJz2mV0eOFt2Z4OKEoho9aX1UQg+CiLhkPAL1o+HlsLr0BE2RZsR6oGDpZ I8iOqfw6r1DHtGxMJ72Rujyfwf+qMLbpbxo6Bg4CXlaqE3bWV/Xd7nj/bFB6V4vR kGeuiE4jPJp+IgRw6gtYOBGlbfm/8mO/OtKzKPhn3DlcVS3jpfzxv97wLPTfIRWO 0a/Gtt87KKxGNVJWIdUOyX8eyWPm6RdNPnlWabIW+z7M7fOkxtdq7g4p9ipDe0lP HcTbB+EqvZCJG7I+dgBbeqRqj6OZPMX/aIXrRCpdUqkEzThT3QYshfIrOqLFwZWs maGD/bChYtTmIU9ax26cQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1741124991; x=1741211391; bh=hEMTfbXBv/yYGzdTvujii8Akq1NlI8HKj3T UChWuAF8=; b=vhNLE0Mqs7bKv9wgLfHAeQFLlTR7w3jyXJ3gswvgdgxuaXV+Ieb Ws6vmzKgvvkypHtRb2MmOPNgWykY8lXtfHA8nVSWH/+NTPWoeGjvlYI+3oj82Evr 7aZpmJdvUBfhF43WRiD5l4PHrYUAkfYjewAPIPbk4hlKGGZayHKyBgkIEddKXqTZ nxtQjJ5KqVcTaNnldz9xSvGsIZ648al4KalOGXkZzOODHTOjLcVr6YDy77Ueoe95 R9ldQO+FbPhD0sIgKF/ROxADyV6qMcydRAemPODBpSu3ZkRocVdwUqD0GT+CpLou 42oYdAXZ5JYS87CC+MpN0hJIlAk4Z+eS+9Q== X-ME-Sender: <xms:fnXHZ8ryBue-oDcFHxUp0b23SnajoeUv4uj_kZvXEM4uahWUxyy2QQ> <xme:fnXHZyr4ROK47JTJZCsyCgAdLSOmMltPnCPx3nIpmokAeXL93s47dLrJVp-aZ1O8n kZLQcu1FDdX3w> X-ME-Received: <xmr:fnXHZxO-a3g6dkiOAIkUMWfN7OVvj-bzoRGgsfXnK1YQmstDsemTgAES-2Hj_jTmqoxPSnM5owiUGKTBwv9gTek> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgddutdeftdelucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpih gvnhhtshculddquddttddmnecujfgurhephffvvefujghffffkfgggtgesthdtredttder tdenucfhrhhomhepjfgvnhhrihhkucethhhlghhrvghnuceophgrsghlohesshgvvghsth hivghtohdrtghomheqnecuggftrfgrthhtvghrnhepleeugedutddvudekueekudelffdu hfeltefffffgtedvfeevlefgffejudfgjefhnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepphgrsghlohesshgvvghsthhivghtohdrtghomhdp nhgspghrtghpthhtohepvddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtohepjedutd dujeesuggvsggsuhhgshdrghhnuhdrohhrghdprhgtphhtthhopehsrghnughrrgdrshhn rghnsehiughiohhmughrohhtthhnihhnghdrohhrgh X-ME-Proxy: <xmx:fnXHZz5sDAvpJ4gGilYvd0DOk2BwxJCKp5yKDoLLU8AZ7WAGgG0_Iw> <xmx:fnXHZ76O9aZWoqTqvdlM2Y9pQIhZfS45pK8vmh2lStuvCQOHDy_4nw> <xmx:fnXHZzgX25DElWLhDBrtAjie1Y-_U0ROVlm-od8j-B-mQmF3L2rCfA> <xmx:fnXHZ17EYu7R0ToKZTZSQR4SrK2Go5fhINRzBnjX1XPACWYJz1dXhA> <xmx:f3XHZ9krasi3WDxP3YDTfjrGbhrUUXrcJhU7pTpg8S7S82KQp6YO2HR8> Feedback-ID: i8ea641e4:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 4 Mar 2025 16:49:49 -0500 (EST) From: Henrik Ahlgren <pablo@HIDDEN> To: Sandra Snan <sandra.snan@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode In-Reply-To: <87v7sov6zu.fsf_-_@HIDDEN> (Henrik Ahlgren's message of "Tue, 04 Mar 2025 23:08:37 +0200") References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> <87v7sov6zu.fsf_-_@HIDDEN> Date: Tue, 04 Mar 2025 23:49:47 +0200 Message-ID: <87a5a0v538.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Henrik Ahlgren <pablo@HIDDEN> writes: > Sandra Snan <sandra.snan@HIDDEN> writes: > >> -If DELETE-SPACE, delete RFC2646 spaces padding at the end of >> +If DELETE-SPACE, delete RFC3676 spaces padding at the end of >> lines." (with-current-buffer (or buffer (current-buffer)) >> (let ((fill-column (eval fill-flowed-display-column t))) @@ >> -154,7 +164,7 @@ lines." ;; Delete the newline. (when (eq >> (following-char) ?\s) (delete-char 1)) - ;; >> Hack: Don't do the flowing on the signature line. + ;; >> As per RFC3767: Don't do the flowing on the signature line. And here we have a clear example of another issue: I quoted (with C-c C-y) a hard-wrapped git-send-email message when replying, but it was soft-wrapped upon sending, making the patch nearly unreadable. While editing, the quoted part appeared normal. Not sure how to determine the correct behaviour and how to ensure it, but this surely isn't ideal. The `messages-are-flowing` package has an open PR with a utility function aimed at "hardening" the region. However, users must be aware of the issue and remember to manually apply the fix manually. Since most users don't have the package installed, and it apparently is no longer actively maintained (last commit was 8 years ago), it may be beneficial to incorporate similar functionality directly into Emacs.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 21:14:52 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 16:14:52 2025 Received: from localhost ([127.0.0.1]:33220 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpZbH-0000XS-Si for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:14:52 -0500 Received: from halsen.idiomdrottning.org ([74.207.231.133]:51934) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1tpZbF-0000XC-TM for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:14:50 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1741122887; bh=tUTcNfrVbzVOO0NZdBWsOWivAOjcVDIeY8y8/AleQJs=; h=From:To:Subject:Date:In-Reply-To:References:From; b=rfrCYeRRe7FgyHzcouDRGP+dzdim+EJBMN53JKnCFX2XvqZsw2GydaMt9uNvBMDv6 U6W61YiCnRIAmpm/+VH803Ki2vmgKJh1IyHtUxiqUIXitWQeZbeaZ/OgTUlcmwdjuw kHwBHtawK0jUHcNBBT8a9y8cVd1tU+LJ586ZRJ6nRGZSUF4OYF2k52LcB/AUaKGUqr fpnZXjzEqhnJ+PSXZ9ql1ySfdMxiJOWib0TiU4HwsmXreZ9EH80iipYAB4amlgYCd/ GIFDvxP3PDmrQUBgNpUsXaYmDie5r6aQxrZWc+zpQkI22bNKDtIVTaZmhc+3QtWdCz 2ozEe0XYRU79A== Received: from [127.0.0.1] (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with UTF8SMTPSA id EC46D21750; Tue, 4 Mar 2025 22:14:46 +0100 (CET) From: Sandra Snan <sandra.snan@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, <71017 <at> debbugs.gnu.org>, Eric Abrahamsen <eric@HIDDEN> Subject: =?utf-8?q?Re=3A_Re=3A_bug=2371017=3A_fill-flowed-encode?= Date: Tue, 4 Mar 2025 21:14:45 +0000 In-Reply-To: <87v7sov6zu.fsf_-_@HIDDEN> References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> <87v7sov6zu.fsf_-_@HIDDEN> Chat-Version: 1.0 Chat-Group-Name: =?utf-8?q?Re=3A_bug=2371017=3A_fill-flowed-encode?= MIME-Version: 1.0 Message-ID: <bOUkR4JfWniQ_e3Peydkz6W0@localhost> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata=mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9p a0LFNhbmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+wo0EEBYIADUCGQEF AmVj0UYCGwMFCwkIBwIGFQoJCAsCBBYCAwEWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCfw0TKEv FISm5WAQC0iU4SECQOo4f90vQ3XJ6mtyd7Yps5Az6v7IhIiIZ/wwD/WH+8te3Wi6STHNILohPOh1bH wfEY9cfmvBgr1bfbawG4OARlYQgSEgorBgEEAZdVAQUBAQdAah40UZqF3mZnnlGTqi9XmwH5c2BQN4 x8MZdrCzC5TAoDAQgHwngEGBYIACAFAmVj0UYCGwwWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCf w0TKEvFISpmoAP9A4VTP2HLMWNde1KvEG+Cef1XzwBCcrVCVVK2BWY0CDwD/TJFAr3bdDN+WDvNMg7 9wt6tW1SG52BJ6CTE4PnO01wM= Content-Type: multipart/mixed; boundary="gzaXS8S4U1L5g4XQeiJIYoZJA9x4Su" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --gzaXS8S4U1L5g4XQeiJIYoZJA9x4Su Content-Transfer-Encoding: quoted-printable Message-ID: <bOUkR4JfWniQ_e3Peydkz6W0@localhost> Chat-User-Avatar: base64:/9j/4AAQSkZJRgABAgAAAQABAAD/wAARCADpAQADAREAAhEBAxEB/9sAQwAIBgYHBgUIBwcHCQkI CgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy/9sAQwEJ CQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIy/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3 ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3 uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+gAo AKACgAoAKAM7RBiwk/6+7n/0e9AGjQAUAFABQAUAFABQAUActbfO+vyA8G+VMkbumzgA9T1wB1J9 8AAhuZPL16WLnYZhubGMZA57Zx1z2A9TkAE8Yj8ya3VgrjPl5b0PQfngn3oAdBF5tsqs+fJBb6qT kE+3BwPTGaAK+s6mbANMrRQRvGC7M3EQ6Fm6AAfLx6/TBAPB/iJ4su0ubnRrfzoSViYOJGyQrFh8 oOF7N0Bxt4HNAHnsP9pXd59isYpjdMhjcI253yMNyOxHXHXvmgD0LQvgbrd9mW52NCqqxMUgG7/Z UkYJxjnoDxk84AO78OeErHTotHjiiP2XUpmMv7oArHlMq+f7xYxHaSMEDoWoA9a1vK6Z5g4WKaGV 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 Content-Type: text/plain; charset=utf-8 That's right. --gzaXS8S4U1L5g4XQeiJIYoZJA9x4Su--
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 21:08:50 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 16:08:50 2025 Received: from localhost ([127.0.0.1]:33198 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpZVS-0000E3-30 for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:08:50 -0500 Received: from fout-b2-smtp.messagingengine.com ([202.12.124.145]:58029) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <pablo@HIDDEN>) id 1tpZVO-0000Dj-Ld for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 16:08:48 -0500 Received: from phl-compute-12.internal (phl-compute-12.phl.internal [10.202.2.52]) by mailfout.stl.internal (Postfix) with ESMTP id 82F09114025B; Tue, 4 Mar 2025 16:08:40 -0500 (EST) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-12.internal (MEProxy); Tue, 04 Mar 2025 16:08:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seestieto.com; h=cc:cc:content-type:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=fm1; t=1741122520; x= 1741208920; bh=3ZJ5P12KyMsKU/kInWHVFRXhQYrqTtpKYc34IijMAQQ=; b=Y dZtIliKJATPn7koCzOQZ1Cq8E6wmD8YtgaWRLRkAShOS89sASMFjO4PQeK8erUOT bJy3j5NMeNPF1XKwmZiJTk1q3vDTYZsaXO1v40ANpZKytW62qb8BlhChOb+SUbK8 sQmVq55du+OXQAI+7cizmIHwWNC2cCudmgDmLY8KfJH1rUy+4vJhWOKGEhXAglmJ YtuuZdf9gzHknOzYkDD1OoHkK6a1V88K+b+bX1YdzAVqKMWa9GlGLJtnH89a7kik 3CobX4xpFRfvJiaH9YCBjCSH1w3oyHudGnfam1HnAZhDdjFN37r+o8yeRTLsABkp uIGvdwU5qkMnTz4u8DwBw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1741122520; x=1741208920; bh=3ZJ5P12KyMsKU/kInWHVFRXhQYrqTtpKYc3 4IijMAQQ=; b=1vCp8M1p99wtWmzRVrn7Y9thje4qcb52FVrW0j2/QZdSPRyiKeV 0B6PD0dLEbFNrNJS//2xYd3RoA9Znbm6wfm0fPV1MR5ZG+SrmtN5RhUXhfeS4x72 zHOOjSXbChI0IDvucLMMjNADhgfAi2r4xKh+UGtq9BOMa+Ga1sWp0XbNPJoN/DeD jJMhoxL2ujAy0nDMHqKeekb26nNO8abGgY1inutr2hOyHY4cz4FmG6om/qFWPGMZ BSoWSFh7T3Y6z7uvj0Ayv+vAV6p8X7ze7DfF9QZBC7jguN9KzrOlUaOe83XuEa8z Qo51oH3hLk4k6NrGld814D1OOkmE4nmYqmA== X-ME-Sender: <xms:2GvHZ2EjzrZAR5-7nTFWyOz_vwhcNeA0_YXMk1q-5jEhjlE7hHPUDA> <xme:2GvHZ3VS8Az0ewgXtRWEI_4RBp5x95iSGt45h87_t8GIJvKfWO5HyRslRZW3GOtjR 3o80kqT6DTYBA> X-ME-Received: <xmr:2GvHZwKSpN3cfdUg1t_aWgFT5p6BYBwedQzPQPvSWIlEUw82g0WDw7NMM6wmQDCX_JBVKBUzvODsg9whMMTaN3Q> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgddutdeftdehucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpih gvnhhtshculddquddttddmnecujfgurhephffvvefujghffffkfgggtgesthdtredttder tdenucfhrhhomhepjfgvnhhrihhkucethhhlghhrvghnuceophgrsghlohesshgvvghsth hivghtohdrtghomheqnecuggftrfgrthhtvghrnhepleeugedutddvudekueekudelffdu hfeltefffffgtedvfeevlefgffejudfgjefhnecuvehluhhsthgvrhfuihiivgeptdenuc frrghrrghmpehmrghilhhfrhhomhepphgrsghlohesshgvvghsthhivghtohdrtghomhdp nhgspghrtghpthhtohepvddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtohepjedutd dujeesuggvsggsuhhgshdrghhnuhdrohhrghdprhgtphhtthhopehsrghnughrrgdrshhn rghnsehiughiohhmughrohhtthhnihhnghdrohhrgh X-ME-Proxy: <xmx:2GvHZwFj-9Sk2sGNn_9tNm5bHEhQvjvbaaAqaXuodwig-S72E_THdw> <xmx:2GvHZ8XRK-mYH5sCx-D_g3mA-Rmb5oHr2hcd4GMrt9AG_ZPVB64vHw> <xmx:2GvHZzProV7zq24etraC95NfoAPPrcELIAzihWyjtyzM8A8xx043IA> <xmx:2GvHZz2I4kOb_YainUWo1UAnVC9Ffsn4kUtZa7PWtutlPXXVqYEc2Q> <xmx:2GvHZ6wBlFvBL1OZK00e-tIWFfx-JjS15AfCmptpV46hiKhCLaCLhXAE> Feedback-ID: i8ea641e4:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 4 Mar 2025 16:08:38 -0500 (EST) From: Henrik Ahlgren <pablo@HIDDEN> To: Sandra Snan <sandra.snan@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode In-Reply-To: <20240707090448.2550042-1-sandra.snan@HIDDEN> (Sandra Snan's message of "Sun, 7 Jul 2024 11:04:48 +0200") References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> Date: Tue, 04 Mar 2025 23:08:37 +0200 Message-ID: <87v7sov6zu.fsf_-_@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Sandra Snan <sandra.snan@HIDDEN> writes: > -If DELETE-SPACE, delete RFC2646 spaces padding at the end of > +If DELETE-SPACE, delete RFC3676 spaces padding at the end of > lines." > (with-current-buffer (or buffer (current-buffer)) > (let ((fill-column (eval fill-flowed-display-column t))) > @@ -154,7 +164,7 @@ lines." > ;; Delete the newline. (when (eq (following-char) > ?\s) > (delete-char 1)) > - ;; Hack: Don't do the flowing on the signature line. > + ;; As per RFC3767: Don't do the flowing on the > signature line. I believe this is a typo; the comment should refer to RFC3676.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 14:14:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 09:14:33 2025 Received: from localhost ([127.0.0.1]:56475 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpT2X-0005aR-1q for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 09:14:33 -0500 Received: from halsen.idiomdrottning.org ([74.207.231.133]:40730) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1tpT2M-0005a1-3Y for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 09:14:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1741097660; bh=SU3kUHwWVRo6oTmZDdStorhoBfEomfW5cwaiDem5IHo=; h=From:To:Subject:Date:In-Reply-To:References:From; b=KLN2FZM7/RxVivHZhzgyN7CKy4Bz8PAmbf1wpQIsJlBmspxuPvJwKBRa9EY2PPJCw gBpuNZkoc7/sojXPuP3bIehzUafH3Q1ha/Hu5a74JU5SrVrNfBU3h3xxemLh30O8ef SGsCb3nZgX/kKPJ6ZhgMcwLSm7sI1uJu4wYZ38aR50JzyZ6Kxz1jd3Us4mnL1oqUct zvlNijnneQwvfqX6HhwPnSDC/g1Hlp9m4VNb0rYwDwBuhyZAJttCPv/TneN/ktC1to iYMMlv6EWxBZSJUQDAExsKZynH0UMsHV1CeZurdfubHcfQ85YEQIg/T0HTMQiG3utF UBa/TORa6qA3g== Received: from [127.0.0.1] (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with UTF8SMTPSA id E04952E482; Tue, 4 Mar 2025 15:14:19 +0100 (CET) From: Sandra Snan <sandra.snan@HIDDEN> To: <71017 <at> debbugs.gnu.org> Subject: =?utf-8?q?Re=3A_bug=2371017=3A_fill-flowed-encode?= Date: Tue, 4 Mar 2025 14:14:18 +0000 In-Reply-To: <87plixw1v6.fsf_-_@HIDDEN> References: <87le2dblzz.fsf@HIDDEN> <20240707100252.2553609-1-sandra.snan@HIDDEN> <87plixw1v6.fsf_-_@HIDDEN> Chat-Version: 1.0 MIME-Version: 1.0 Message-ID: <AigYz7stw8WvdxWu2nURS4st@localhost> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata=mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9p a0LFNhbmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+wo0EEBYIADUCGQEF AmVj0UYCGwMFCwkIBwIGFQoJCAsCBBYCAwEWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCfw0TKEv FISm5WAQC0iU4SECQOo4f90vQ3XJ6mtyd7Yps5Az6v7IhIiIZ/wwD/WH+8te3Wi6STHNILohPOh1bH wfEY9cfmvBgr1bfbawG4OARlYQgSEgorBgEEAZdVAQUBAQdAah40UZqF3mZnnlGTqi9XmwH5c2BQN4 x8MZdrCzC5TAoDAQgHwngEGBYIACAFAmVj0UYCGwwWIQSM+QwgZjV9IBEt0Difw0TKEvFISgAKCRCf w0TKEvFISpmoAP9A4VTP2HLMWNde1KvEG+Cef1XzwBCcrVCVVK2BWY0CDwD/TJFAr3bdDN+WDvNMg7 9wt6tW1SG52BJ6CTE4PnO01wM= Content-Type: multipart/mixed; boundary="pWayTnaWcqzCAYI4qVxRREIgnG5jyk" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --pWayTnaWcqzCAYI4qVxRREIgnG5jyk Content-Transfer-Encoding: quoted-printable Message-ID: <AigYz7stw8WvdxWu2nURS4st@localhost> Chat-User-Avatar: base64:/9j/4AAQSkZJRgABAgAAAQABAAD/wAARCADpAQADAREAAhEBAxEB/9sAQwAIBgYHBgUIBwcHCQkI CgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy/9sAQwEJ CQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIy/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3 ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3 uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+gAo AKACgAoAKAM7RBiwk/6+7n/0e9AGjQAUAFABQAUAFABQAUActbfO+vyA8G+VMkbumzgA9T1wB1J9 8AAhuZPL16WLnYZhubGMZA57Zx1z2A9TkAE8Yj8ya3VgrjPl5b0PQfngn3oAdBF5tsqs+fJBb6qT kE+3BwPTGaAK+s6mbANMrRQRvGC7M3EQ6Fm6AAfLx6/TBAPB/iJ4su0ubnRrfzoSViYOJGyQrFh8 oOF7N0Bxt4HNAHnsP9pXd59isYpjdMhjcI253yMNyOxHXHXvmgD0LQvgbrd9mW52NCqqxMUgG7/Z UkYJxjnoDxk84AO78OeErHTotHjiiP2XUpmMv7oArHlMq+f7xYxHaSMEDoWoA9a1vK6Z5g4WKaGV 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 Content-Type: text/plain; charset=utf-8 That's something I haven't seen since I switched to my own patch --pWayTnaWcqzCAYI4qVxRREIgnG5jyk--
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 4 Mar 2025 10:02:02 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 04 05:02:02 2025 Received: from localhost ([127.0.0.1]:55410 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tpP6A-0002sL-6N for submit <at> debbugs.gnu.org; Tue, 04 Mar 2025 05:02:02 -0500 Received: from fhigh-b4-smtp.messagingengine.com ([202.12.124.155]:52025) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <pablo@HIDDEN>) id 1tpP66-0002ry-R9 for 71017 <at> debbugs.gnu.org; Tue, 04 Mar 2025 05:02:00 -0500 Received: from phl-compute-07.internal (phl-compute-07.phl.internal [10.202.2.47]) by mailfhigh.stl.internal (Postfix) with ESMTP id C0AE02540130; Tue, 4 Mar 2025 05:01:52 -0500 (EST) Received: from phl-mailfrontend-02 ([10.202.2.163]) by phl-compute-07.internal (MEProxy); Tue, 04 Mar 2025 05:01:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seestieto.com; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=fm1; t=1741082512; x=1741168912; bh=32vSuwwfiJC/sVLFNv9a5nswGPTXFVdU Gt8VNX4+rfw=; b=ienkAhRWgZUW6exLFSNVSlVzOAy3dVhj2z3dS8BsDvU+Cg1R lonzygo1+395+NQg8wVWwIHMOSS6xKXuWUVnE8hpovQ0b6O13X5mjEMWegyALN7Z LZZZQoAvnPEq3MXEoAsQs//MjjyZjvnQGmLPiqvPN7R+Jj93lyphdfLXG8VuMzKr nowyydJjRZjou3iKwbf/QOnTdKZkxey5nAHWyNMNKqLpc/yOOK4N1tmJT3gKh9JF snkRp0AFq1xRvLTB7HOhKBh44BivHxditsZz9s2iurp60VDbLQ8KyFZtkGfslSol Rdytw/osA0c7klr9ILGBR0AAUGJFQu6qhfFBgQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1741082512; x= 1741168912; bh=32vSuwwfiJC/sVLFNv9a5nswGPTXFVdUGt8VNX4+rfw=; b=d MvMUZ6a0h0iVWN4Q+As9NsLXkaUHRxyJVEBaqKaDj6EVUSfa3VUa/XX4UoDxMvgq 0Tw0R/JvjXCZJzlEo0jD1k+GrVx9aJyrNEjaCOXycriyXBsP41gDcowxFqGAOVvN HivtWnKq5kFTEQPNG5nJSUl0cJp3rt7AddbPOzuq8E+8XD0WARHWD8HPpuZ6V7wh x8ey0qTjb61vxIBiGpBkJP8KsTksLfckm3EELGO9OtWXPEgQPXlZVxyOSnHERJtU QT86HC36h+LoRgUITbBwjMHUiQ7KjHxPuXtTnbnYpzyFMRWpM+/X70KkWrDYH2ia uCaAkpcwpF7g6Gr0M/l5A== X-ME-Sender: <xms:kM_GZ0DLQxSqtApYyzwDxuqIPMUPVU8LXTY1lW4TM9PTsLmr0vtGQg> <xme:kM_GZ2gmb7Dptba3Y1bVyNWKRNJV1Q8tbC-nqarcm4GA1OLmVOBxL8yKcZMZq9H5o fFsDn-lOc5-Hw> X-ME-Received: <xmr:kM_GZ3kiFYtAPsu-lmKm0-5_OFCG1pfR6lv91DKzIKynm6YbvVkJ0dv-JtGZ3wE6RoTaO2UCloVXeh2xK8SZNZY> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgddutddujeefucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpih gvnhhtshculddquddttddmnecujfgurhephffvvefujghffffkfgggtgfgsehtqhertddt reejnecuhfhrohhmpefjvghnrhhikhcutehhlhhgrhgvnhcuoehprggslhhosehsvggvsh htihgvthhordgtohhmqeenucggtffrrghtthgvrhhnpeevtdejieevveeiieeuffethfff veffleetfeevhfegleefleelhfevkeefveegieenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpehprggslhhosehsvggvshhtihgvthhordgtohhm pdhnsggprhgtphhtthhopedvpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopeejud dtudejseguvggssghughhsrdhgnhhurdhorhhgpdhrtghpthhtohepshgrnhgurhgrrdhs nhgrnhesihguihhomhgurhhothhtnhhinhhgrdhorhhg X-ME-Proxy: <xmx:kM_GZ6zPZy-UyxGTsTTtPIYE1yvpI28UgoDozn9cyePmIhD4saZ_eA> <xmx:kM_GZ5S4m0qJiX3-hxTw6VSvBV50qs92bFFoPXgRflyI9dCUIuzLPQ> <xmx:kM_GZ1Yrea2imYhbUVCJJJNh0qt_KJA45p-QN47LYiA_avU9uVPqtw> <xmx:kM_GZyRJbLOGnSrIqYybJcPm1VO2cWUq85JelQLo_ctuYUlC9E5pwg> <xmx:kM_GZ7dlnzF9n6p_GHGaJ37lytDscsIz2CPgTwghVuP_tjbx7U6YlhkC> Feedback-ID: i8ea641e4:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 4 Mar 2025 05:01:50 -0500 (EST) From: Henrik Ahlgren <pablo@HIDDEN> To: Sandra Snan <sandra.snan@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode In-Reply-To: <20240707100252.2553609-1-sandra.snan@HIDDEN> (Sandra Snan's message of "Sun, 7 Jul 2024 12:02:52 +0200") References: <87le2dblzz.fsf@HIDDEN> <20240707100252.2553609-1-sandra.snan@HIDDEN> Date: Tue, 04 Mar 2025 12:01:49 +0200 Message-ID: <87plixw1v6.fsf_-_@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Thank you, Sandra, for addressing this bug. It=E2=80=99s one reason I=20 hesitate to send f=3Df messages with Gnus, despite the clear=20 advantages of a properly functioning f=3Df implementation. I=E2=80=99m curious if others have experienced the following behavior: when sending a f=3Df message with use-hard-newlines enabled, the last paragraph sometimes gets filled into the previous one, with two or three spaces in between. I=E2=80=99m unsure how to consistently reproduce this issue.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Stefan Kangas <stefankangas@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 7 Jul 2024 10:03:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 07 06:03:34 2024 Received: from localhost ([127.0.0.1]:47392 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQOk2-0004ny-43 for submit <at> debbugs.gnu.org; Sun, 07 Jul 2024 06:03:34 -0400 Received: from halsen.idiomdrottning.org ([74.207.231.133]:54818) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1sQOjz-0004np-Kf for 71017 <at> debbugs.gnu.org; Sun, 07 Jul 2024 06:03:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1720346576; bh=uQqaOZhGUrFHaabyMbvirHH/NJ5sVn1KviiTsenJuKk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=WY6KaiATl1aZR00GgzZ3pqoL9Td2BDwbiM7/a9si/6FX4jXA29SzVsdoPdlAr5Ymc zIBwjT70yBMxryHuDinYvLNF5Emtbtaodki3VOhbahKOAkbHlLyMiaZzf7HrUcDAMz edHv7pfp5GK4wprHFOloifoV/h8tFrSEAT6equVJJht+Ie7e+SZYebuDL7HMGCBqCi x3Ozcl3hiXtEmIpvpEt91JM8Buezlw9hUFy41E7P8z/DubXQPHmgVtTvCOcnohPdN0 GXAbdmzCbGqjNDqQRSF6IWfm52GGQsRBLyd/KbvdPdNOtoKdFZ2MXgE+P8arz0mwrg FnIn/oRL5+Qzw== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 0239C21B94; Sun, 7 Jul 2024 12:02:55 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: 71017 <at> debbugs.gnu.org Subject: [PATCH] Flow single-paragraph messages Date: Sun, 7 Jul 2024 12:02:52 +0200 Message-Id: <20240707100252.2553609-1-sandra.snan@HIDDEN> X-Mailer: git-send-email 2.39.2 In-Reply-To: <87le2dblzz.fsf@HIDDEN> References: <87le2dblzz.fsf@HIDDEN> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: Sandra Snan <sandra.snan@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) See discussion in #71017. In short: if mml-flowed-enable is nil: no change to behavior if mml-flowed-enable is t and use-hard-newlines is on: several bugs fixed, some (multi-paragraph messages) of which were counter to documentation and some (single-paragraph messages) that were along documentation lines but which messed up messages royally. if mml-flowed-enable is t but use-hard-newlines was accidentally forgotten by user: new behavior; reflow but don't reflow together separate paragraphs nor reflow across lines that markdown would've considered hard. --- doc/misc/emacs-mime.texi | 7 +-- lisp/gnus/mml.el | 29 ++++++------- lisp/mail/flow-fill.el | 93 ++++++++++++++++++++++++---------------- 3 files changed, 69 insertions(+), 60 deletions(-) diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi index ef7ea61..7621a9a 100644 --- a/doc/misc/emacs-mime.texi +++ b/doc/misc/emacs-mime.texi @@ -1087,13 +1087,10 @@ terminated by soft newline characters are filled together and wrapped after the column decided by @code{fill-flowed-encode-column}. Quotation marks (matching @samp{^>* ?}) are respected. The variable controls how the text will look in a client that does not support -flowed text, the default is to wrap after 66 characters. If hard -newline characters are not present in the buffer, no flow encoding -occurs. +flowed text, the default is to wrap after 66 characters. You can customize the value of the @code{mml-enable-flowed} variable -to enable or disable the flowed encoding usage when newline -characters are present in the buffer. +to enable or disable the flowed encoding usage. On decoding flowed text, lines with soft newline characters are filled together and wrapped after the column decided by diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index e3bc393..2db39dc 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -691,23 +691,18 @@ type detected." (t ;; Only perform format=flowed filling on text/plain ;; parts where there either isn't a format parameter - ;; in the mml tag or it says "flowed" and there - ;; actually are hard newlines in the text. - (let (use-hard-newlines) - (when (and mml-enable-flowed - (string= type "text/plain") - (not (string= (cdr (assq 'sign cont)) "pgp")) - (or (null (assq 'format cont)) - (string= (cdr (assq 'format cont)) - "flowed")) - (setq use-hard-newlines - (text-property-any - (point-min) (point-max) 'hard 't))) - (fill-flowed-encode) - ;; Indicate that `mml-insert-mime-headers' should - ;; insert a "; format=flowed" string unless the - ;; user has already specified it. - (setq flowed (null (assq 'format cont))))) + ;; in the mml tag or it says "flowed". + (when (and mml-enable-flowed + (string= type "text/plain") + (not (string= (cdr (assq 'sign cont)) "pgp")) + (or (null (assq 'format cont)) + (string= (cdr (assq 'format cont)) + "flowed"))) + (fill-flowed-encode) + ;; Indicate that `mml-insert-mime-headers' should + ;; insert a "; format=flowed" string unless the + ;; user has already specified it. + (setq flowed (null (assq 'format cont)))) ;; Prefer `utf-8' for text/calendar parts. (if (or charset (not (string= type "text/calendar"))) diff --git a/lisp/mail/flow-fill.el b/lisp/mail/flow-fill.el index 919490e..793088a 100644 --- a/lisp/mail/flow-fill.el +++ b/lisp/mail/flow-fill.el @@ -73,50 +73,67 @@ RFC 2646 suggests 66 characters for readability." ;;;###autoload (defun fill-flowed-encode (&optional buffer) (with-current-buffer (or buffer (current-buffer)) - ;; No point in doing this unless hard newlines is used. - (when use-hard-newlines - (let ((start (point-min)) end) - ;; Go through each paragraph, filling it and adding SPC - ;; as the last character on each line. - (while (setq end (text-property-any start (point-max) 'hard 't)) - (save-restriction - (narrow-to-region start end) - (let ((fill-column (eval fill-flowed-encode-column t))) - (fill-flowed-fill-buffer)) - (goto-char (point-min)) - (while (re-search-forward "\n" nil t) - (replace-match " \n" t t)) - (goto-char (setq start (1+ (point-max))))))) - t))) - -(defun fill-flowed-fill-buffer () - (let ((prefix nil) - (prev-prefix nil) - (start (point-min))) - (goto-char (point-min)) - (while (not (eobp)) - (setq prefix (and (looking-at "[> ]+") - (match-string 0))) - (if (equal prefix prev-prefix) - (forward-line 1) + (let ((fill-column (eval fill-flowed-encode-column t)) + (start (point-min)) + (end (point-max))) + ;; Only when we've been called to reflow a buffer that doesn't + ;; have any hard newlines: + (unless (text-property-any start end 'hard 't) + (save-excursion + ;; Harden between paras: + (goto-char start) + (while (re-search-forward "\n[> ]*\n" end t) + (set-hard-newline-properties + (match-beginning 0) (point)) + (backward-char)) + ;; Harden before a quote starts: + (goto-char start) + (while (re-search-forward "\n[^>][^\n]*\n>" end t) + (backward-char) + (set-hard-newline-properties + (1- (point)) (point))) + ;; Harden " $" + (goto-char start) + (while (search-forward " \n" end t) + (backward-char) + (backward-delete-char 2) + (set-hard-newline-properties + (point) (1+ (point)))) + ;; Harden "^ " + (goto-char start) + (while (search-forward "\n " end t) + (set-hard-newline-properties + (- (point) 5) (- (point) 4))))) + ;; Go through each paragraph, filling it and adding SPC + ;; as the last character on each line. + (while (and (< start (point-max)) + (setq end (or (text-property-any start (point-max) 'hard 't) + (point-max)))) (save-restriction - (narrow-to-region start (point)) - (let ((fill-prefix prev-prefix)) - (fill-region (point-min) (point-max) t 'nosqueeze 'to-eop)) - (goto-char (point-max))) - (setq prev-prefix prefix - start (point)))) - (save-restriction - (narrow-to-region start (point)) - (let ((fill-prefix prev-prefix)) - (fill-region (point-min) (point-max) t 'nosqueeze 'to-eop))))) + (narrow-to-region start end) + (let ((prefix + (concat "\n" + (or (and (looking-at ">[> ]*") + (match-string 0)) "")))) + (goto-char start) + (while (search-forward prefix nil t) + (replace-match " " t t)) + (goto-char start) + (while (< (+ (point) fill-column) (point-max)) + (let ((start (point))) + (forward-char fill-column) + (when (search-backward " " start t) + (forward-char) + (insert prefix))))) + (setq start (1+ (point-max)))))) + t)) ;;;###autoload (defun fill-flowed (&optional buffer delete-space) "Apply RFC2646 decoding to BUFFER. If BUFFER is nil, default to the current buffer. -If DELETE-SPACE, delete RFC2646 spaces padding at the end of +If DELETE-SPACE, delete RFC3676 spaces padding at the end of lines." (with-current-buffer (or buffer (current-buffer)) (let ((fill-column (eval fill-flowed-display-column t))) @@ -154,7 +171,7 @@ lines." ;; Delete the newline. (when (eq (following-char) ?\s) (delete-char 1)) - ;; Hack: Don't do the flowing on the signature line. + ;; As per RFC3767: Don't do the flowing on the signature line. (when (and (not (looking-at "-- $")) (eq (char-before (line-end-position)) ?\s)) (while (and (not (eobp)) -- 2.39.2
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 7 Jul 2024 09:16:25 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 07 05:16:24 2024 Received: from localhost ([127.0.0.1]:47377 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQO0O-0003d0-M7 for submit <at> debbugs.gnu.org; Sun, 07 Jul 2024 05:16:24 -0400 Received: from halsen.idiomdrottning.org ([74.207.231.133]:49760) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1sQO0N-0003cq-4W for 71017 <at> debbugs.gnu.org; Sun, 07 Jul 2024 05:16:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1720343778; bh=ww3EPRTzHBlIXk0l8dhfz27BzTtlMkNmN4L5rFk8sJ4=; h=From:To:Subject:In-Reply-To:References:Date:From; b=11ddRnnmgjUbuba8KTrzpQoNzpJm58Hw6zRb4jXsjYpI7k6iAOHtVKJQBxEIy/6it Oqap4rBx30VQVhVQf6aEcz7ATnA6LQievXK+jbxc7VFHH53BNvT3H61mSEOzx5GODg JLQsin5zffAEnzYAe6cUQSQ1GCs3XNdjAXDGdo4YjxhKy0wAijIV238/7tkyGjCM89 LPXsXV0vxISCcvV0WpqYklfCqBlg+AhGCB5sd2X2KO58bPq7uNqzUgXtdPpC0lZvKr og41YPAE9zxqXJdFn6XdkfVS1/WsdjHctC/VownHjejLoBzRvT7Ip+CaFn90ERkHrG mJCCiu+H+RRCw== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 038B91E3F3; Sun, 7 Jul 2024 11:16:17 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: 71017 <at> debbugs.gnu.org Subject: Re: [PATCH] Flow single-paragraph messages In-Reply-To: <20240707090448.2550042-1-sandra.snan@HIDDEN> References: <87plrpbnye.fsf@HIDDEN> <20240707090448.2550042-1-sandra.snan@HIDDEN> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata= mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9pa0LFNh bmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+iJMEExYIADsCGwMFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AWIQSM+QwgZjV9IBEt0Difw0TKEvFISgUCZWJbSgIZAQAKCRCf w0TKEvFIShsYAPsFMXn+tFcAwdI2hrkqqQY8I5EC9UWYC9t57VjiYv2uYQD+PUNVHVSBGQDycf3V /nXqXvZvTfcFMOz0PVMzibPl0AiIkAQTFggAOBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgS AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ/DRMoS8UhK07EA/iV2B5e3r8t8/StJT38d x9YbuoSBmbYZJ6JHH9hoyv0hAPwMiH1M8zZUeQK/TQDqkg2Hjk0xL+U7i9ggocLJEAWQDbg4BGVh CBISCisGAQQBl1UBBQEBB0BqHjRRmoXeZmeeUZOqL1ebAflzYFA3jHwxl2sLMLlMCgMBCAeIeAQY FggAIBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgSAhsMAAoJEJ/DRMoS8UhK4o0BAOB7ChkN Jc0oxRDg9WvrbUCnpLU/QdjMFcC8ymLRdzxaAP4gZVL0JQfxulc/JAxotCevk1PAF+UXpY8QalTI dooaAA== Date: Sun, 07 Jul 2024 11:16:16 +0200 Message-ID: <87le2dblzz.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eww, I forgot about quote handling for this autoharden fallback.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 7 Jul 2024 09:05:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 07 05:05:31 2024 Received: from localhost ([127.0.0.1]:47372 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQNpr-0003N8-0h for submit <at> debbugs.gnu.org; Sun, 07 Jul 2024 05:05:31 -0400 Received: from halsen.idiomdrottning.org ([74.207.231.133]:56622) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1sQNpo-0003My-TX for 71017 <at> debbugs.gnu.org; Sun, 07 Jul 2024 05:05:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1720343094; bh=czRuG8HQfuDOspi4AYIxA3cv6da6L3pQ6BuB5QJQakk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Wm6/cR+BzXdgMQ+pEK/Nt0Ey9dwyXa4pT4+HaOnT3BBal/iz5Xzm9U38AhnE9mRHs C+pWPd4XsDLINuWPhNE6rdKvlvOvH+qblxJvcMyBYBzYFzR2Jue14UdTS2UeyfXRGF 1rDXt+mgQsFj0aMkmIolufpwXUWW4zLo+LA/+Rv6tCKgEG84ATqauu025RHv2dlihM hhxPfpfqCS9IZqd+/hFGp9Qhllq78DgJBuJgFNJqjan2pCS1IhB2ja9YYvbdza6jMG UtxDNQDZ1yP5kFray+AH+Bkjr2gGHRVTJOzQek4BOEb/L4GqLQdVGBqTDIeYnVutLY sdo92jjXn01kA== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 6412320407; Sun, 7 Jul 2024 11:04:53 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: 71017 <at> debbugs.gnu.org Subject: [PATCH] Flow single-paragraph messages Date: Sun, 7 Jul 2024 11:04:48 +0200 Message-Id: <20240707090448.2550042-1-sandra.snan@HIDDEN> X-Mailer: git-send-email 2.39.2 In-Reply-To: <87plrpbnye.fsf@HIDDEN> References: <87plrpbnye.fsf@HIDDEN> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: Sandra Snan <sandra.snan@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) See discussion in #71017. In short: if mml-flowed-enable is nil: no change to behavior if mml-flowed-enable is t and use-hard-newlines is on: several bugs fixed, some (multi-paragraph messages) of which were counter to documentation and some (single-paragraph messages) that were along documentation lines but which messed up messages royally. if mml-flowed-enable is t but use-hard-newlines was accidentally forgotten by user: new behavior; reflow but don't reflow together separate paragraphs nor reflow across lines that markdown would've considered hard. --- doc/misc/emacs-mime.texi | 7 +--- lisp/gnus/mml.el | 29 ++++++-------- lisp/mail/flow-fill.el | 86 ++++++++++++++++++++++------------------ 3 files changed, 62 insertions(+), 60 deletions(-) diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi index ef7ea61..7621a9a 100644 --- a/doc/misc/emacs-mime.texi +++ b/doc/misc/emacs-mime.texi @@ -1087,13 +1087,10 @@ terminated by soft newline characters are filled together and wrapped after the column decided by @code{fill-flowed-encode-column}. Quotation marks (matching @samp{^>* ?}) are respected. The variable controls how the text will look in a client that does not support -flowed text, the default is to wrap after 66 characters. If hard -newline characters are not present in the buffer, no flow encoding -occurs. +flowed text, the default is to wrap after 66 characters. You can customize the value of the @code{mml-enable-flowed} variable -to enable or disable the flowed encoding usage when newline -characters are present in the buffer. +to enable or disable the flowed encoding usage. On decoding flowed text, lines with soft newline characters are filled together and wrapped after the column decided by diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index e3bc393..2db39dc 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -691,23 +691,18 @@ type detected." (t ;; Only perform format=flowed filling on text/plain ;; parts where there either isn't a format parameter - ;; in the mml tag or it says "flowed" and there - ;; actually are hard newlines in the text. - (let (use-hard-newlines) - (when (and mml-enable-flowed - (string= type "text/plain") - (not (string= (cdr (assq 'sign cont)) "pgp")) - (or (null (assq 'format cont)) - (string= (cdr (assq 'format cont)) - "flowed")) - (setq use-hard-newlines - (text-property-any - (point-min) (point-max) 'hard 't))) - (fill-flowed-encode) - ;; Indicate that `mml-insert-mime-headers' should - ;; insert a "; format=flowed" string unless the - ;; user has already specified it. - (setq flowed (null (assq 'format cont))))) + ;; in the mml tag or it says "flowed". + (when (and mml-enable-flowed + (string= type "text/plain") + (not (string= (cdr (assq 'sign cont)) "pgp")) + (or (null (assq 'format cont)) + (string= (cdr (assq 'format cont)) + "flowed"))) + (fill-flowed-encode) + ;; Indicate that `mml-insert-mime-headers' should + ;; insert a "; format=flowed" string unless the + ;; user has already specified it. + (setq flowed (null (assq 'format cont)))) ;; Prefer `utf-8' for text/calendar parts. (if (or charset (not (string= type "text/calendar"))) diff --git a/lisp/mail/flow-fill.el b/lisp/mail/flow-fill.el index 919490e..932aa8f 100644 --- a/lisp/mail/flow-fill.el +++ b/lisp/mail/flow-fill.el @@ -73,50 +73,60 @@ RFC 2646 suggests 66 characters for readability." ;;;###autoload (defun fill-flowed-encode (&optional buffer) (with-current-buffer (or buffer (current-buffer)) - ;; No point in doing this unless hard newlines is used. - (when use-hard-newlines - (let ((start (point-min)) end) - ;; Go through each paragraph, filling it and adding SPC - ;; as the last character on each line. - (while (setq end (text-property-any start (point-max) 'hard 't)) - (save-restriction - (narrow-to-region start end) - (let ((fill-column (eval fill-flowed-encode-column t))) - (fill-flowed-fill-buffer)) - (goto-char (point-min)) - (while (re-search-forward "\n" nil t) - (replace-match " \n" t t)) - (goto-char (setq start (1+ (point-max))))))) - t))) - -(defun fill-flowed-fill-buffer () - (let ((prefix nil) - (prev-prefix nil) - (start (point-min))) - (goto-char (point-min)) - (while (not (eobp)) - (setq prefix (and (looking-at "[> ]+") - (match-string 0))) - (if (equal prefix prev-prefix) - (forward-line 1) + (let ((fill-column (eval fill-flowed-encode-column t)) + (start (point-min)) + (end (point-max))) + ;; Only when we've been called to reflow a buffer that doesn't + ;; have any hard newlines: + (unless (text-property-any start end 'hard 't) + (save-excursion + ;; Harden between paras: + (goto-char start) + (while (search-forward "\n\n" end t) + (set-hard-newline-properties + (- (point) 2) (point))) + ;; Harden " $" + (goto-char start) + (while (search-forward " \n" end t) + (backward-char) + (backward-delete-char 2) + (set-hard-newline-properties + (point) (1+ (point)))) + ;; Harden "^ " + (goto-char start) + (while (search-forward "\n " end t) + (set-hard-newline-properties + (- (point) 5) (- (point) 4))))) + ;; Go through each paragraph, filling it and adding SPC + ;; as the last character on each line. + (while (and (< start (point-max)) + (setq end (or (text-property-any start (point-max) 'hard 't) + (point-max)))) (save-restriction - (narrow-to-region start (point)) - (let ((fill-prefix prev-prefix)) - (fill-region (point-min) (point-max) t 'nosqueeze 'to-eop)) - (goto-char (point-max))) - (setq prev-prefix prefix - start (point)))) - (save-restriction - (narrow-to-region start (point)) - (let ((fill-prefix prev-prefix)) - (fill-region (point-min) (point-max) t 'nosqueeze 'to-eop))))) + (narrow-to-region start end) + (let ((prefix + (concat "\n" + (or (and (looking-at ">[> ]*") + (match-string 0)) "")))) + (goto-char start) + (while (search-forward prefix nil t) + (replace-match " " t t)) + (goto-char start) + (while (< (+ (point) fill-column) (point-max)) + (let ((start (point))) + (forward-char fill-column) + (when (search-backward " " start t) + (forward-char) + (insert prefix))))) + (setq start (1+ (point-max)))))) + t)) ;;;###autoload (defun fill-flowed (&optional buffer delete-space) "Apply RFC2646 decoding to BUFFER. If BUFFER is nil, default to the current buffer. -If DELETE-SPACE, delete RFC2646 spaces padding at the end of +If DELETE-SPACE, delete RFC3676 spaces padding at the end of lines." (with-current-buffer (or buffer (current-buffer)) (let ((fill-column (eval fill-flowed-display-column t))) @@ -154,7 +164,7 @@ lines." ;; Delete the newline. (when (eq (following-char) ?\s) (delete-char 1)) - ;; Hack: Don't do the flowing on the signature line. + ;; As per RFC3767: Don't do the flowing on the signature line. (when (and (not (looking-at "-- $")) (eq (char-before (line-end-position)) ?\s)) (while (and (not (eobp)) -- 2.39.2
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 7 Jul 2024 08:34:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 07 04:34:42 2024 Received: from localhost ([127.0.0.1]:47337 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQNM2-0002ar-34 for submit <at> debbugs.gnu.org; Sun, 07 Jul 2024 04:34:42 -0400 Received: from halsen.idiomdrottning.org ([74.207.231.133]:54550) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1sQNLz-0002ah-Gm for 71017 <at> debbugs.gnu.org; Sun, 07 Jul 2024 04:34:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1720341243; bh=xDmA02pY/dqwjXErU8a7G0d37PWYBVptSbS89HjDGWo=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=lT7+Mnowh53s1wFpkEOrq23RW1Bxwc7quJCIaquBzHYTADJbMxptedCjNfThtcRuT phwK58qqUqx8qXGFEvq/x9XLAv1+OBYEOFMH2cYDZfRayvWOdoYYsv1FpbjuO/BEyV Dcy3EEzuqcNr4qeE+/jmAbZgW6w23jOb2sLd1O2pj7SQx9j0DvJPhEtgaIL00NwZR3 hLCa7sseA894RbJxhoL9NmxYsrBarEp9hbM9KgQCFkbWXIQ/MAGZw2chdVJG03j5xy 5poanjIVqatrfokwoSWy0yxZTcASZvi34vu6eCKBxa4+/tKDK9pqLZaHyDgMHqlXZv gIfAVQW28YeuQ== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 8259320F46; Sun, 7 Jul 2024 10:34:02 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN>, Eric Abrahamsen <eric@HIDDEN> Subject: Re: bug#71017: [PATCH] Flow single-paragraph messages In-Reply-To: <86h6d13gf6.fsf@HIDDEN> References: <CADwFkm=GGEz=a=uJR+fffdVKqiqG_D+athgYuZgKduE68aTEew@HIDDEN> <20240706204950.2437581-1-sandra.snan@HIDDEN> <86h6d13gf6.fsf@HIDDEN> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata= mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9pa0LFNh bmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+iJMEExYIADsCGwMFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AWIQSM+QwgZjV9IBEt0Difw0TKEvFISgUCZWJbSgIZAQAKCRCf w0TKEvFIShsYAPsFMXn+tFcAwdI2hrkqqQY8I5EC9UWYC9t57VjiYv2uYQD+PUNVHVSBGQDycf3V /nXqXvZvTfcFMOz0PVMzibPl0AiIkAQTFggAOBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgS AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ/DRMoS8UhK07EA/iV2B5e3r8t8/StJT38d x9YbuoSBmbYZJ6JHH9hoyv0hAPwMiH1M8zZUeQK/TQDqkg2Hjk0xL+U7i9ggocLJEAWQDbg4BGVh CBISCisGAQQBl1UBBQEBB0BqHjRRmoXeZmeeUZOqL1ebAflzYFA3jHwxl2sLMLlMCgMBCAeIeAQY FggAIBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgSAhsMAAoJEJ/DRMoS8UhK4o0BAOB7ChkN Jc0oxRDg9WvrbUCnpLU/QdjMFcC8ymLRdzxaAP4gZVL0JQfxulc/JAxotCevk1PAF+UXpY8QalTI dooaAA== Date: Sun, 07 Jul 2024 10:34:01 +0200 Message-ID: <87plrpbnye.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Eli Zaretskii <eliz@HIDDEN> writes: > Thanks. (I also see RFC 3676 mentioned -- what is this about?) I mentioned RFC 3676 twice for different reasons. First, it's introduced the delsp parameter which wasn't in 2646 so code related to that parameter shouldn't talk about 2646 but rather 3676. Second, I saw a comment referring to not tampering with the sig line as a hack. I happened to have the section of RFC 3676 open that mandates that behavior so I changed the comment, however, this might be in RFC 2646 also, I don't know that, so in that case that comment might better change to refer to 2646 instead. >> First, the old code didn't refill or encode the last paragraph >> at all unless there was at least one hard newline EOF. > > Isn't this the documented behavior? Re multi-paragraph messages: No, it's not the documented behavior, it was an unrelated bug in fill-flowed-encode. It would refill all the other paragraphs, separated by hard newlines, just not the last one. That was a bug and broke documented behavior. I fixed that bug + another unrelated reflow bug. That was in fill-flowed-encode and that bugfix doesn't rely on the change in mml. With my fix in fill-flowed-encode, multi-paragraph-messages started working fine. Re single-paragraph messages: However, according to the old documented behavior, a message that contained no hard newlines should not be refilled. This documented behavior in mml-generate-mime-1 meant that single-paragraph messages would not be filled even with the fill-flowed-encode bug fixed. That is an unintended bad consequence of the documented behavior, a "bug in the design". I did change that but I updated the documentation to match. > The change seems to be an incompatible behavior change, so I > wonder whether we'd need some way for users to get back old > behavior. There is still the (neglected) defcustom mml-enable-flowed which now becomes more relevant since it's a way to turn off all this meddling and reflowing in the first place. The old documented behavior was bugged-by-design. It's not right that single paragraph messages are hardwrapped and not reflowed. In my day-to-day I write many messages in Emacs that I later see in threads in another MUA (Delta Chat) and these messages stand out in a way that something is wrong with them. However, one intent behind the old behavior was, in spirit, good: It'd be good to detect whether or not users with mml-enable-flowed on have remembered to also turn on use-hard-newlines, which is important for users with that on to do, especially since mml-enable-flowed defaults to t. The old attempt at doing that was flawed since it only worked reliably for multi-paragraph messages. Unfortunately there's currently no way to detect in a single-paragraph message whether or not use-hard-newlines have been turned on, since the variable it sets is buffer local. (One extremely klugy workaround would be to change the message-send-and-exit command to check whether use-hard-newlines is on and if it is, add an extra hard newline EOT just for detecting this. Not super into that solution so hopefully there are other ways.) With this patch, the defcustom mml-enable-flowed becomes _the_ setting for this, which does match a lot of documentation on the books. Perhaps it shall no longer default to t though since it completely borks messages up if it's t but use-hard-newlines are not on! So here we are: The new behavior has a problem: messages will get reflowed if mml-enable-flowed is t (the default!) even when use-hard-newlines is off, meaning that even separate "\n\n" paragraphs will get flowed together which is not what people want. Use-hard-newlines should be mandatory whenever mml-enable-flowed is on. The old behavior is not OK since single-paragraph messages will get messed up, hardwrapped even when those newlines were advertised as "soft", or not softwrapped even when the paragraph consists of just one single super long unbroken line. I also have sent a patch to the messages-are-flowing project highlighting the importance of this variable: https://github.com/legoscia/messages-are-flowing/pull/15/commits/ae432723c2565ceced5d01d9aa2d314bd42aaa3c So how about this idea: If mml-enable-flowed is on but fill-flowed-encode is asked to flow a message that doesn't have any hard newlines, assume Markdown semantics, i.e. special treatment for "\n\n+", " $", and "^ ". I'll see if I have time to implement that this morning. I think I'd place that change in fill-flowed-encode. That wouldn't affect people with mml-enable-flowed off, or people with both mml-enable-flowed and use-hard-newlines on, it'd just be a sort of DWIM fallback based on the guess that markdown semantics are somewhat widely known or expected in 2024, to prevent separate paragraphs to be flowed together for people with "incorrect" settings. Again, if there were a cross-buffer way to reliably detect whether use-hard-newlines is on, that dwimmy fallback wouldn't be needed. I thought about whether it'd have been better if it was instead soft newlines that were marked with a text property, not hard ones, but in the end that wouldn't properly softwrap messages with just one single overly long line.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 7 Jul 2024 05:44:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 07 01:44:11 2024 Received: from localhost ([127.0.0.1]:47093 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQKh0-0000gE-PQ for submit <at> debbugs.gnu.org; Sun, 07 Jul 2024 01:44:11 -0400 Received: from eggs.gnu.org ([209.51.188.92]:41824) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1sQKgy-0000g0-TG for 71017 <at> debbugs.gnu.org; Sun, 07 Jul 2024 01:44:09 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1sQKgp-0000c1-8q; Sun, 07 Jul 2024 01:43:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=eTfDt4SKyk9XXbLNEieXGpihpkivrx9PPS4c+wx5/D4=; b=nmjp8T6Y8c2n3EdcJxlh 53qkJKT5dBBjc5z5Qooon9CE1eGm5sa75hXNFiaf7L4ce+rmmRqLsr/JLvw7chtMZsgD8V4yUK8wG q0HXR/wgKxdcn2MBCZNWY2rE4AGrebvBrNz4+WKDRtH9ArrLBxeYwZOdqOioEAafkkTm3MIIOWk1k 5XgHLIY0dH322oXkCSvFPCi6DQVu/3gt0jLRP6rX+gzS70U1VRn7C6+NzrJIf9hInSleM3rhs89gx GhVdOtmPm2/fPg72NPsFVY8Tr31uwQBjpHTHerMdTOsy4J2nHLxrP8BsHF9ledtlHKjoFHok+t+rA QI+vmTfxE+PLvg==; Date: Sun, 07 Jul 2024 08:43:57 +0300 Message-Id: <86h6d13gf6.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Sandra Snan <sandra.snan@HIDDEN>, Eric Abrahamsen <eric@HIDDEN> In-Reply-To: <20240706204950.2437581-1-sandra.snan@HIDDEN> (bug-gnu-emacs@HIDDEN) Subject: Re: bug#71017: [PATCH] Flow single-paragraph messages References: <CADwFkm=GGEz=a=uJR+fffdVKqiqG_D+athgYuZgKduE68aTEew@HIDDEN> <20240706204950.2437581-1-sandra.snan@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Cc: Sandra Snan <sandra.snan@HIDDEN> > Date: Sat, 6 Jul 2024 22:49:50 +0200 > From: Sandra Snan via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > This fixes two bugs when sending RFC 2646–formatted email. Thanks. (I also see RFC 3676 mentioned -- what is this about?) > First, the old code didn't refill or encode the last paragraph at all > unless there was at least one hard newline EOF. Isn't this the documented behavior? > But for months dogfooding those two changes, sometimes a hardwrapped > email would still be sent. I finally managed to debug and figure it out > and it took all day. Turns out mml just plain didn't call the > fill-flowed-encode function if the message doesn't have any hard > newlines (newlines with the hard text property). Well, of course a > single-paragraph email isn't gonna have any hard newlines! But it still > needs reflowing! > > So I've now changed that and updated the documentation to match those > news semantics. I went all the way, but a possible compromise might be > to not-flow a message that has \n\n but no hard text props, since that's > a sign that something is wrong. The change seems to be an incompatible behavior change, so I wonder whether we'd need some way for users to get back old behavior. Eric, WDYT? I'll leave it to Eric to comment on the code changes.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 6 Jul 2024 20:50:38 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 06 16:50:38 2024 Received: from localhost ([127.0.0.1]:46817 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQCMf-0003wk-Ji for submit <at> debbugs.gnu.org; Sat, 06 Jul 2024 16:50:38 -0400 Received: from halsen.idiomdrottning.org ([74.207.231.133]:52762) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1sQCMd-0003wc-87 for 71017 <at> debbugs.gnu.org; Sat, 06 Jul 2024 16:50:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1720299000; bh=lmuQGTjWN4927bO4vKX5iEfXrWxxAbGq4HODUc/uCjQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ne1SrF7uOmnq4i4ulU9Siilr+Y76/0vHmsdBqUdZzr59QqZdFI7ySEzJaJ+89fO2j ksDAjZWSzJ5AFFy7xyp/l0fKZz41ZJaXUkQl5eBj7QZ/emlMhzLObScdzPav3tIHur 8c3Og/y+7s2Mz7ImmUkJywkEa06NSTvhqqKQCpEMWdSm+4zxcHdpm5cpYeTupe/APb KSHoeouyC8JY4cWeqzPqdlYqc2J4OCQBq1yL0OSQR4JbJJ/LIqe6DTWLVpVeTuavtn +IeaHyBOmqIGrO7vUO3j9FoPiMOtKm5oGciamve2Tjs8eHWRiFwF1SwgZLeaCnVPB3 VSppWo58iCdJA== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id B3E231ECA6; Sat, 6 Jul 2024 22:49:58 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: 71017 <at> debbugs.gnu.org Subject: [PATCH] Flow single-paragraph messages Date: Sat, 6 Jul 2024 22:49:50 +0200 Message-Id: <20240706204950.2437581-1-sandra.snan@HIDDEN> X-Mailer: git-send-email 2.39.2 In-Reply-To: <CADwFkm=GGEz=a=uJR+fffdVKqiqG_D+athgYuZgKduE68aTEew@HIDDEN> References: <CADwFkm=GGEz=a=uJR+fffdVKqiqG_D+athgYuZgKduE68aTEew@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: Sandra Snan <sandra.snan@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) This fixes two bugs when sending RFC 2646–formatted email. First, the old code didn't refill or encode the last paragraph at all unless there was at least one hard newline EOF. This was a bee to track down because there were two separate issues at play. One was a a bug in flow-fill.el where every paragraph except the last paragraph was reflowed, but the last paragraph would stay hardwrapped. Manually placing a hard newline at the end of the file was a workaround but I don't always remember to do that. I managed to fix that bug a few months ago. Second, the old code borked up code indented with tabs and spaces (iff that code had overly long lines), such as Lisp code. It could sometimes insert extra whitespace in the middle of such long lines. I fixed that bug shortly after the first one. But for months dogfooding those two changes, sometimes a hardwrapped email would still be sent. I finally managed to debug and figure it out and it took all day. Turns out mml just plain didn't call the fill-flowed-encode function if the message doesn't have any hard newlines (newlines with the hard text property). Well, of course a single-paragraph email isn't gonna have any hard newlines! But it still needs reflowing! So I've now changed that and updated the documentation to match those news semantics. I went all the way, but a possible compromise might be to not-flow a message that has \n\n but no hard text props, since that's a sign that something is wrong. Since the use-hard-newlines variable is buffer local and all this reflowing is being done in a temp buffer, that variable is more than useless so I've removed references to it. --- doc/misc/emacs-mime.texi | 7 ++--- lisp/gnus/mml.el | 29 ++++++++---------- lisp/mail/flow-fill.el | 65 +++++++++++++++++----------------------- 3 files changed, 41 insertions(+), 60 deletions(-) diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi index ef7ea61..7621a9a 100644 --- a/doc/misc/emacs-mime.texi +++ b/doc/misc/emacs-mime.texi @@ -1087,13 +1087,10 @@ terminated by soft newline characters are filled together and wrapped after the column decided by @code{fill-flowed-encode-column}. Quotation marks (matching @samp{^>* ?}) are respected. The variable controls how the text will look in a client that does not support -flowed text, the default is to wrap after 66 characters. If hard -newline characters are not present in the buffer, no flow encoding -occurs. +flowed text, the default is to wrap after 66 characters. You can customize the value of the @code{mml-enable-flowed} variable -to enable or disable the flowed encoding usage when newline -characters are present in the buffer. +to enable or disable the flowed encoding usage. On decoding flowed text, lines with soft newline characters are filled together and wrapped after the column decided by diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index e3bc393..2db39dc 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -691,23 +691,18 @@ type detected." (t ;; Only perform format=flowed filling on text/plain ;; parts where there either isn't a format parameter - ;; in the mml tag or it says "flowed" and there - ;; actually are hard newlines in the text. - (let (use-hard-newlines) - (when (and mml-enable-flowed - (string= type "text/plain") - (not (string= (cdr (assq 'sign cont)) "pgp")) - (or (null (assq 'format cont)) - (string= (cdr (assq 'format cont)) - "flowed")) - (setq use-hard-newlines - (text-property-any - (point-min) (point-max) 'hard 't))) - (fill-flowed-encode) - ;; Indicate that `mml-insert-mime-headers' should - ;; insert a "; format=flowed" string unless the - ;; user has already specified it. - (setq flowed (null (assq 'format cont))))) + ;; in the mml tag or it says "flowed". + (when (and mml-enable-flowed + (string= type "text/plain") + (not (string= (cdr (assq 'sign cont)) "pgp")) + (or (null (assq 'format cont)) + (string= (cdr (assq 'format cont)) + "flowed"))) + (fill-flowed-encode) + ;; Indicate that `mml-insert-mime-headers' should + ;; insert a "; format=flowed" string unless the + ;; user has already specified it. + (setq flowed (null (assq 'format cont)))) ;; Prefer `utf-8' for text/calendar parts. (if (or charset (not (string= type "text/calendar"))) diff --git a/lisp/mail/flow-fill.el b/lisp/mail/flow-fill.el index 919490e..5c9ae21 100644 --- a/lisp/mail/flow-fill.el +++ b/lisp/mail/flow-fill.el @@ -73,50 +73,39 @@ RFC 2646 suggests 66 characters for readability." ;;;###autoload (defun fill-flowed-encode (&optional buffer) (with-current-buffer (or buffer (current-buffer)) - ;; No point in doing this unless hard newlines is used. - (when use-hard-newlines - (let ((start (point-min)) end) - ;; Go through each paragraph, filling it and adding SPC - ;; as the last character on each line. - (while (setq end (text-property-any start (point-max) 'hard 't)) - (save-restriction - (narrow-to-region start end) - (let ((fill-column (eval fill-flowed-encode-column t))) - (fill-flowed-fill-buffer)) - (goto-char (point-min)) - (while (re-search-forward "\n" nil t) - (replace-match " \n" t t)) - (goto-char (setq start (1+ (point-max))))))) - t))) - -(defun fill-flowed-fill-buffer () - (let ((prefix nil) - (prev-prefix nil) - (start (point-min))) - (goto-char (point-min)) - (while (not (eobp)) - (setq prefix (and (looking-at "[> ]+") - (match-string 0))) - (if (equal prefix prev-prefix) - (forward-line 1) + (let ((fill-column (eval fill-flowed-encode-column t)) + (start (point-min)) + end) + ;; Go through each paragraph, filling it and adding SPC + ;; as the last character on each line. + (while (and (< start (point-max)) + (setq end (or (text-property-any start (point-max) 'hard 't) + (point-max)))) (save-restriction - (narrow-to-region start (point)) - (let ((fill-prefix prev-prefix)) - (fill-region (point-min) (point-max) t 'nosqueeze 'to-eop)) - (goto-char (point-max))) - (setq prev-prefix prefix - start (point)))) - (save-restriction - (narrow-to-region start (point)) - (let ((fill-prefix prev-prefix)) - (fill-region (point-min) (point-max) t 'nosqueeze 'to-eop))))) + (narrow-to-region start end) + (let ((prefix + (concat "\n" + (or (and (looking-at ">[> ]*") + (match-string 0)) "")))) + (goto-char start) + (while (search-forward prefix nil t) + (replace-match " " t t)) + (goto-char start) + (while (< (+ (point) fill-column) (point-max)) + (let ((start (point))) + (forward-char fill-column) + (when (search-backward " " start t) + (forward-char) + (insert prefix))))) + (setq start (1+ (point-max)))))) + t)) ;;;###autoload (defun fill-flowed (&optional buffer delete-space) "Apply RFC2646 decoding to BUFFER. If BUFFER is nil, default to the current buffer. -If DELETE-SPACE, delete RFC2646 spaces padding at the end of +If DELETE-SPACE, delete RFC3676 spaces padding at the end of lines." (with-current-buffer (or buffer (current-buffer)) (let ((fill-column (eval fill-flowed-display-column t))) @@ -154,7 +143,7 @@ lines." ;; Delete the newline. (when (eq (following-char) ?\s) (delete-char 1)) - ;; Hack: Don't do the flowing on the signature line. + ;; As per RFC3767: Don't do the flowing on the signature line. (when (and (not (looking-at "-- $")) (eq (char-before (line-end-position)) ?\s)) (while (and (not (eobp)) -- 2.39.2
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 30 Jun 2024 14:35:26 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 30 10:35:25 2024 Received: from localhost ([127.0.0.1]:58632 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sNveH-00062F-HV for submit <at> debbugs.gnu.org; Sun, 30 Jun 2024 10:35:25 -0400 Received: from mail-ed1-f49.google.com ([209.85.208.49]:56580) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1sNveF-000627-OG for 71017 <at> debbugs.gnu.org; Sun, 30 Jun 2024 10:35:24 -0400 Received: by mail-ed1-f49.google.com with SMTP id 4fb4d7f45d1cf-57cd26347d3so2651318a12.1 for <71017 <at> debbugs.gnu.org>; Sun, 30 Jun 2024 07:35:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719758063; x=1720362863; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=tW0tsHROR4p5YLwOqk8xa2rUpWs/nOmcbPjxjCZxRFM=; b=AwJCFnZsxY7tiQ9HK+0wC8XB0RSvwVct/tsWJK0SGtAw4xM4gy8oLjRH4q1kk7PxHZ DzsIqKIppFkFWyl2h/Nl+cVERFQwCThOAsOfCzEBw5RRx2lHA7mNstEILW7miHxrQW6j 8r+ZDcwrbjDkct0xuGTY3R/Kf6FGLugAWci/1KjXF5f5bMNwb0E+Sf1kYPNrZefWYqDG Vz2n9qa6iRJNYpzbSYoitRCSyC9ouI0kTDJUDtG3Jt9GQRCWsAvflnXCNJALSOeBbUKu clALvAG39xcwZzaE87yilHHerXzINtsMh2ghPxZa4JaLeSddCnbyO93nvvv9UtjVHofh x4Xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719758063; x=1720362863; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=tW0tsHROR4p5YLwOqk8xa2rUpWs/nOmcbPjxjCZxRFM=; b=wV3nISKPHR+wVNeqvm02eauZOOVnj8WYkFBO6C38CBGOk8V85EwgM9f1TRbDw3RHzL O9brwYmub2ASEBYufD5xea7C+48AWVewLr+N0ykfmvTZ+/plx6Tysg2uT+204WqOFAKK bNtkTULbj/qww7Z6g+cjNCzC2fed2Ria41McBG+kq86E43K+28luqIYpgH4FOjwuoJV/ DsK5boQLSUgVxCyFwMY0F49FJV7JnDcsjdOQBixImzKpX1QLFO5WQ5NhMj2ZRdmop3nI Be7eOATOvghFNy5FfIEWHqBGr2qBUxG4mP1BR02ewWaHIKADAlMaT/iaNaU+XxIX1Nuc /YUQ== X-Gm-Message-State: AOJu0YzFYN1JdsFG5vTzwIAhenP0Ckum9wQXvTaGQkqf9VHep5i0D09y d1ekY5NqBn+7l7l06FD2mFEGStWFklRAJziBmbAxszLkB2xI0YIjJhz4hLC6gBVCzdjX4avuDoP AWElfHTy0orKUAmEROc5qa0bns55Wooki X-Google-Smtp-Source: AGHT+IH1QgS20yo0+t1KWI13Ec9xYoZGHkO0qaupsvBauSvEsf5FZMeasGP26dQZQNImvWOOJIZpnCJ/WPk0yubnv/A= X-Received: by 2002:a05:6402:5111:b0:57c:da58:51e7 with SMTP id 4fb4d7f45d1cf-5879eaff6cemr2386501a12.1.1719758062591; Sun, 30 Jun 2024 07:34:22 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 30 Jun 2024 07:34:21 -0700 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <871q4ej0f1.fsf@HIDDEN> References: <87v83cfaqx.fsf@HIDDEN> <CADwFkm=fhoQGLgEHv6XsDPTzyeJBO+--krz+4RkoBoLjtGg1bQ@HIDDEN> <871q4ej0f1.fsf@HIDDEN> MIME-Version: 1.0 Date: Sun, 30 Jun 2024 07:34:21 -0700 Message-ID: <CADwFkm=GGEz=a=uJR+fffdVKqiqG_D+athgYuZgKduE68aTEew@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode To: Sandra Snan <sandra.snan@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Sandra Snan <sandra.snan@HIDDEN> writes: > I'm glad I'm gonna get a chance to resend because I've fixed some > more bugs in the version I've been dogfooding since I first sent > that so I wanna send an updated version that has that. Great, thanks. > Normally when I'm sending Emacs lisp patches, it's on packages and > they're usually in git already. Here it's a core file so the > question I've got is what is the git repo I should make the change > in? Then I could git send-email to this In-Reply-To thread id. https://git.savannah.gnu.org/cgit/emacs.git Please have a look at the CONTRIBUTE file in the Emacs source distribution. https://git.savannah.gnu.org/cgit/emacs.git/tree/CONTRIBUTE
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 30 Jun 2024 08:32:41 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 30 04:32:41 2024 Received: from localhost ([127.0.0.1]:54956 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sNpzF-0000oj-4B for submit <at> debbugs.gnu.org; Sun, 30 Jun 2024 04:32:41 -0400 Received: from halsen.idiomdrottning.org ([74.207.231.133]:55062) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1sNpzD-0000ob-Ks for 71017 <at> debbugs.gnu.org; Sun, 30 Jun 2024 04:32:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1719736359; bh=+bzUEKMoxMOX88JNCeSx8uxV33R8fjq6rhTWeFG+5r4=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=qVqfLg7jferlNcjc3Xpn07HQ5Me9xkpWf5o5KoDWHPxQB+ODuHdOeknON+nllmBsp WxJiVeKLLFKfBvGJmiEKEQmuEG1aCMs6i5ztieoRZhvJnfVnnukfHuaJiYBoGLLnEK UhxrKE0hOYHlOMIMN+ZVWfKuaaBYTLewrbgP9uWC4blf3mWIGx4TgNLmysJaFGcWnC 3T2kBI7cN6z2xZQw/bHS/oueI76YR4v7R5JxHiVlTdnkgF3dro6Ht3C4P7acHJh5yY 8zF73q8BNi8COe+2a2LRnw+bog3dOslUOSbqQZEgttM03rt0wXlbKGlN05zh+DFk5i h3iynErDbt/ew== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 12CEC21B05; Sun, 30 Jun 2024 10:32:35 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: Stefan Kangas <stefankangas@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode In-Reply-To: <CADwFkm=fhoQGLgEHv6XsDPTzyeJBO+--krz+4RkoBoLjtGg1bQ@HIDDEN> References: <87v83cfaqx.fsf@HIDDEN> <CADwFkm=fhoQGLgEHv6XsDPTzyeJBO+--krz+4RkoBoLjtGg1bQ@HIDDEN> Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata= mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9pa0LFNh bmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+iJMEExYIADsCGwMFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AWIQSM+QwgZjV9IBEt0Difw0TKEvFISgUCZWJbSgIZAQAKCRCf w0TKEvFIShsYAPsFMXn+tFcAwdI2hrkqqQY8I5EC9UWYC9t57VjiYv2uYQD+PUNVHVSBGQDycf3V /nXqXvZvTfcFMOz0PVMzibPl0AiIkAQTFggAOBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgS AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ/DRMoS8UhK07EA/iV2B5e3r8t8/StJT38d x9YbuoSBmbYZJ6JHH9hoyv0hAPwMiH1M8zZUeQK/TQDqkg2Hjk0xL+U7i9ggocLJEAWQDbg4BGVh CBISCisGAQQBl1UBBQEBB0BqHjRRmoXeZmeeUZOqL1ebAflzYFA3jHwxl2sLMLlMCgMBCAeIeAQY FggAIBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgSAhsMAAoJEJ/DRMoS8UhK4o0BAOB7ChkN Jc0oxRDg9WvrbUCnpLU/QdjMFcC8ymLRdzxaAP4gZVL0JQfxulc/JAxotCevk1PAF+UXpY8QalTI dooaAA== Date: Sun, 30 Jun 2024 10:32:34 +0200 Message-ID: <871q4ej0f1.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Stefan Kangas <stefankangas@HIDDEN> writes: > Could you please resend the above as patches formatted by > > git format-patch -1 > > ? > I'm glad I'm gonna get a chance to resend because I've fixed some=20 more bugs in the version I've been dogfooding since I first sent=20 that so I wanna send an updated version that has that. Normally when I'm sending Emacs lisp patches, it's on packages and=20 they're usually in git already. Here it's a core file so the=20 question I've got is what is the git repo I should make the change=20 in? Then I could git send-email to this In-Reply-To thread id. Stefan Kangas <stefankangas@HIDDEN> writes: > Sandra Snan <sandra.snan@HIDDEN> writes: > >> Hi y'all. > > Hi Sandra, > >> flow-fill.el.gz has a pair of functions, fill-flowed-encode and=20 >> fill-flowed-fill-buffer (the latter is only called from the=20 >> former). >> Here is a fixed version of the former that then also=20 >> deprecates the latter (I have signed FSF copyright papers): >>=20 >> (defun fill-flowed-encode (&optional buffer) (with-current-buffer=20 >> (or buffer (current-buffer)) ;; No point in doing this unless=20 >> hard newlines is used. (when use-hard-newlines (let ((start=20 >> (point-min)) end) ;; Go through each paragraph, filling it and=20 >> adding SPC ;; as the last character on each line. (while (and (<=20 >> start (point-max)) (setq end (or (text-property-any start=20 >> (point-max) 'hard 't) (point-max)))) (save-restriction=20=09=20= =20=20 >> (narrow-to-region start end) (let ((fill-column (eval=20 >> fill-flowed-encode-column t)) (prefix (concat "\n"=20=09=09=09= =20=20=20 >> (or (and (looking-at ">[> ]*") (match-string 0)) ""))))=20=09=20= =20=20 >> (while (search-forward prefix nil t) (replace-match " " t t))=20 >> (goto-char start) (while (< (+ (point) fill-column)=20 >> (point-max)) (forward-char fill-column) (search-backward " ")=20 >> (forward-char) (insert prefix))) (setq start (1+=20 >> (point-max)))))) t))) >> This fixes two bugs when sending RFC=20 >> 2646=E2=80=93formatted email. >> First, the old code didn't refill or=20 >> encode the last paragraph at all unless there was at least one hard=20 >> newline EOF. >> Second, the old code borked up code indented with=20 >> tabs and spaces (iff that code had overly long lines), such as the=20 >> Lisp code in this email. It could sometimes insert extra in the=20 >> middle of such long lines. >> Here is an example of what it would=20 >> do. It would turn this: >> (defun lorem (ipsum) (dolor sit amet)=20=20 >> (consectetur adipiscing elit (sed do eiusmod tempor incididunt ut=20 >> labore et dolore magna aliqua)) (ut enim ad minim veniam=20=20=20=20=20= =20 >> (quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea=20 >> commodo consequat (duis aute irure dolor in reprehenderit=20 >> in voluptate velit esse cillum dolore eu fugiat nulla=20 >> pariatur) excepteur sint occaecat cupidatat non proident=20=09=20= =20=20=20 >> (sunt in culpa qui officia deserunt mollit anim id est=20 >> laborumd)))) >> into this: >> (defun lorem (ipsum) (dolor sit=20 >> amet) (consectetur adipiscing elit (sed do eiusmod tempor=20 >> incididunt ut labore et dolore magna aliqua)) (ut enim ad minim=20 >> veniam (quis nostrud exercitation ullamco laboris nisi ut=20 >> aliquip ex ea commodo consequat (duis aute irure dolor in=20 >> reprehenderit in voluptate velit esse cillum dolore eu=20 >> fugiat nulla pariatur) excepteur sint occaecat cupidatat non=20 >> proident (sunt in culpa qui officia deserunt mollit anim id=20 >> est laborumd)))) >> It was breaking lines awkwardly so when=20 >> they're reconnected they have extra whitespace in the mkddle of=20 >> lines. > > Could you please resend the above as patches formatted by > > git format-patch -1 > > ? > > It will make it easier for us to review and install the proposed=20 > changes. Thanks in advance.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at 71017) by debbugs.gnu.org; 30 Jun 2024 05:45:18 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 30 01:45:18 2024 Received: from localhost ([127.0.0.1]:54536 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sNnNF-00051M-CC for submit <at> debbugs.gnu.org; Sun, 30 Jun 2024 01:45:18 -0400 Received: from mail-ed1-f48.google.com ([209.85.208.48]:55649) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1sNnND-0004e1-FU for 71017 <at> debbugs.gnu.org; Sun, 30 Jun 2024 01:45:16 -0400 Received: by mail-ed1-f48.google.com with SMTP id 4fb4d7f45d1cf-57d1d45ba34so2339312a12.3 for <71017 <at> debbugs.gnu.org>; Sat, 29 Jun 2024 22:45:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719726250; x=1720331050; darn=debbugs.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:from:to:cc:subject:date :message-id:reply-to; bh=sd6qnd+OyvkN07DJryFTTSAaftrzkwtzuRoPVcN53Ro=; b=kCZsYKxHBFFrllkETckVduA5sSPlPNx3BKIfK5kXkPJCiIY0IyH0aTpPu8T5wIpTLD NEcmpAjZpDNSlg9LX3EJoKEIfJcfOigiKhivU5ev4S8YrYr0P9qI6KiZLFOZR0eu70uo 2p7VcfZIJLr7I+RAlmoULO2HWWpZRvW2I+xM/F9vpsuAIxOUj2ql6AVv0HFczDxJn5Jf eJDthdEcICyOYwmvNZwHV6s7qCIJBQF69+90PTK2em7waAtA/Ee5vSRcBFVsEiXDQbLg ApqQEp+RjfGkRL3Lx9qvyxMRxvpl8qxglePMcAZMwB+gyJ7nqGyq8hN5sLzTz+BqeZnl l73Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719726250; x=1720331050; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=sd6qnd+OyvkN07DJryFTTSAaftrzkwtzuRoPVcN53Ro=; b=RXu+FnCmAZ4OUZG5I2OGavs84UmlpZehDATmnXpPDUKMvDL8xdkZ32QlY7p8nr9ZNc UefxlHyo8f43MKlUrzFP7juZBX09Zdw/OJsb/S/K14tPdVwWXWSRBDfWlQxwLMbInP87 fZikI36Nm+WurJDUugzQpslfg4mTZFwXl1wyqXTKUyEjUV9kQdUZVhjo0f/HB8sGs6lu GXD+cFF93SOYUjZGJoVUYCIWDzlpQtJaq5MCuNqEXTSknzcGOh3Rn3lnyofQViOCusnP /jrvuK68f6s4/f9k6NrvztlgBPXLoiM5ccaG7g4I3q9I1OY5GC7t6JyuK0VDiBsFoOSi Ye3Q== X-Gm-Message-State: AOJu0YxRQQ9XMnOdlI71gCmhbYHqKGAPgcL+7IbPFq0ajIxBNb4t3H7i H3Ch4uBZObBmDcQ5qjYD8qaZw5JjGxWlrE+N4rHifTpTiHdm/fLbMabXG+07UW8aFXZwmA+UXzg Jo0zyMeU3KvHPq+brNNsJyWx9xjUIWo3ZILM= X-Google-Smtp-Source: AGHT+IH5kV9nxgj/jh12zTBY466KRzzldJi78weHBjoAnHo6fj79Z2e61SYkOuHJoV8banEx20J5AcxlMOfBXNJckPI= X-Received: by 2002:a05:6402:37b:b0:57c:c712:a3c7 with SMTP id 4fb4d7f45d1cf-587a10d9892mr1164219a12.36.1719726249827; Sat, 29 Jun 2024 22:44:09 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sat, 29 Jun 2024 22:44:09 -0700 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <87v83cfaqx.fsf@HIDDEN> (Sandra Snan's message of "Fri, 17 May 2024 22:23:50 +0200") References: <87v83cfaqx.fsf@HIDDEN> MIME-Version: 1.0 Date: Sat, 29 Jun 2024 22:44:09 -0700 Message-ID: <CADwFkm=fhoQGLgEHv6XsDPTzyeJBO+--krz+4RkoBoLjtGg1bQ@HIDDEN> Subject: Re: bug#71017: fill-flowed-encode To: Sandra Snan <sandra.snan@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71017 Cc: 71017 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Sandra Snan <sandra.snan@HIDDEN> writes: > Hi y'all. Hi Sandra, > flow-fill.el.gz has a pair of functions, fill-flowed-encode and > fill-flowed-fill-buffer (the latter is only called from the former). > > Here is a fixed version of the former that then also deprecates the latte= r (I > have signed FSF copyright papers): > > (defun fill-flowed-encode (&optional buffer) > (with-current-buffer (or buffer (current-buffer)) > ;; No point in doing this unless hard newlines is used. > (when use-hard-newlines > (let ((start (point-min)) end) > ;; Go through each paragraph, filling it and adding SPC > ;; as the last character on each line. > (while (and (< start (point-max)) > (setq end (or (text-property-any start (point-max) 'hard 't) > (point-max)))) > (save-restriction > (narrow-to-region start end) > (let ((fill-column (eval fill-flowed-encode-column t)) > (prefix > (concat "\n" > (or (and (looking-at ">[> ]*") > (match-string 0)) "")))) > (while (search-forward prefix nil t) > (replace-match " " t t)) > (goto-char start) > (while (< (+ (point) fill-column) (point-max)) > (forward-char fill-column) > (search-backward " ") > (forward-char) > (insert prefix))) > (setq start (1+ (point-max)))))) > t))) > > This fixes two bugs when sending RFC 2646=E2=80=93formatted email. > > First, the old code didn't refill or encode the last paragraph at all unl= ess > there was at least one hard newline EOF. > > Second, the old code borked up code indented with tabs and spaces (iff th= at code > had overly long lines), such as the Lisp code in this email. It could som= etimes > insert extra in the middle of such long lines. > > Here is an example of what it would do. It would turn this: > > (defun lorem (ipsum) > (dolor sit amet) > (consectetur adipiscing elit (sed do eiusmod tempor incididunt ut labore= et > dolore magna aliqua)) > (ut enim ad minim veniam > (quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea com= modo > consequat > (duis aute irure dolor in reprehenderit in > voluptate velit esse cillum dolore > eu fugiat nulla pariatur) > excepteur sint occaecat cupidatat non proident > (sunt in culpa qui officia deserunt mollit anim id est laborumd)))) > > into this: > > (defun lorem (ipsum) > (dolor sit amet) > (consectetur adipiscing elit (sed do eiusmod tempor incididunt > ut labore et dolore magna aliqua)) > (ut enim ad minim veniam > (quis nostrud exercitation ullamco laboris nisi ut aliquip > ex ea commodo consequat > (duis aute irure dolor in reprehenderit in > voluptate velit esse cillum dolore > eu fugiat nulla pariatur) > excepteur sint occaecat cupidatat non proident > (sunt in culpa qui officia deserunt mollit anim id est > laborumd)))) > > It was breaking lines awkwardly so when they're reconnected they have ext= ra > whitespace in the mkddle of lines. Could you please resend the above as patches formatted by git format-patch -1 ? It will make it easier for us to review and install the proposed changes. Thanks in advance.
bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 17 May 2024 20:24:03 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 17 16:24:03 2024 Received: from localhost ([127.0.0.1]:57098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s847X-0000vK-CP for submit <at> debbugs.gnu.org; Fri, 17 May 2024 16:24:03 -0400 Received: from lists.gnu.org ([209.51.188.17]:55324) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <sandra.snan@HIDDEN>) id 1s847V-0000ux-Aw for submit <at> debbugs.gnu.org; Fri, 17 May 2024 16:24:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <sandra.snan@HIDDEN>) id 1s847R-0000EU-VQ for bug-gnu-emacs@HIDDEN; Fri, 17 May 2024 16:23:57 -0400 Received: from halsen.idiomdrottning.org ([2600:3c02:e000:179::7]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <sandra.snan@HIDDEN>) id 1s847Q-0004lQ-4Y for bug-gnu-emacs@HIDDEN; Fri, 17 May 2024 16:23:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=idiomdrottning.org; s=idiomdrottningorg; t=1715977433; bh=625oJ9asc1AuPwGhH9RwhVYK9NzLY3xmpBPfbkPpI+E=; h=From:To:Subject:Date:From; b=pg3mNRuaT//9hc8v+j0IwS3ME5IA19lyOTEkm83NIlIjGV32xCHCPT+FeVMIeBdR8 KcdQZCDNsVV34q7AJeDz/Pm9tgw5tivj6JwYY9cxYJxnb4MClAzxDwcARmduB/xD3U Z4f/2Bz0xeCEg0seheu4Kfh8KF3gP1RcNNnLDnPTiV4ElYHMY3fcVXh/DNASVnzSwi CX5UkJEuvtDEefBcFanO46IdQCrt9xCUatrhxIQUCZ2nuRQeEXdo2DItbUPjc08gie eeVfdf3Wj/AYfj0nwH9sq2/C1U3PFlfL5BR0w34A9IkJPSigKH0CkB4qfuPgcjOZib 6PVZa7K0v87cw== Received: from localhost (31-211-247-254.customers.ownit.se [31.211.247.254]) by halsen.idiomdrottning.org (Postfix) with ESMTPSA id 427281FB6B; Fri, 17 May 2024 22:23:52 +0200 (CEST) From: Sandra Snan <sandra.snan@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: fill-flowed-encode Autocrypt: addr=sandra.snan@HIDDEN; prefer-encrypt=mutual; keydata= mDMEZWEIEhYJKwYBBAHaRw8BAQdAahVPtpoqkiV62AL3GSY4JaPS0i3Bu3fhbe5WIFQG9pa0LFNh bmRyYSBTbmFuIDxzYW5kcmEuc25hbkBpZGlvbWRyb3R0bmluZy5vcmc+iJMEExYIADsCGwMFCwkI BwIGFQoJCAsCBBYCAwECHgECF4AWIQSM+QwgZjV9IBEt0Difw0TKEvFISgUCZWJbSgIZAQAKCRCf w0TKEvFIShsYAPsFMXn+tFcAwdI2hrkqqQY8I5EC9UWYC9t57VjiYv2uYQD+PUNVHVSBGQDycf3V /nXqXvZvTfcFMOz0PVMzibPl0AiIkAQTFggAOBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgS AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEJ/DRMoS8UhK07EA/iV2B5e3r8t8/StJT38d x9YbuoSBmbYZJ6JHH9hoyv0hAPwMiH1M8zZUeQK/TQDqkg2Hjk0xL+U7i9ggocLJEAWQDbg4BGVh CBISCisGAQQBl1UBBQEBB0BqHjRRmoXeZmeeUZOqL1ebAflzYFA3jHwxl2sLMLlMCgMBCAeIeAQY FggAIBYhBIz5DCBmNX0gES3QOJ/DRMoS8UhKBQJlYQgSAhsMAAoJEJ/DRMoS8UhK4o0BAOB7ChkN Jc0oxRDg9WvrbUCnpLU/QdjMFcC8ymLRdzxaAP4gZVL0JQfxulc/JAxotCevk1PAF+UXpY8QalTI dooaAA== Date: Fri, 17 May 2024 22:23:50 +0200 Message-ID: <87v83cfaqx.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=2600:3c02:e000:179::7; envelope-from=sandra.snan@HIDDEN; helo=halsen.idiomdrottning.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) Hi y'all. flow-fill.el.gz has a pair of functions, fill-flowed-encode and=20 fill-flowed-fill-buffer (the latter is only called from the=20 former). Here is a fixed version of the former that then also deprecates=20 the latter (I have signed FSF copyright papers): (defun fill-flowed-encode (&optional buffer) (with-current-buffer (or buffer (current-buffer)) ;; No point in doing this unless hard newlines is used. (when use-hard-newlines (let ((start (point-min)) end) ;; Go through each paragraph, filling it and adding SPC ;; as the last character on each line. (while (and (< start (point-max)) (setq end (or (text-property-any start (point-max) 'hard 't) (point-max)))) (save-restriction (narrow-to-region start end) (let ((fill-column (eval fill-flowed-encode-column t)) (prefix (concat "\n" (or (and (looking-at ">[> ]*") (match-string 0)) "")))) (while (search-forward prefix nil t) (replace-match " " t t)) (goto-char start) (while (< (+ (point) fill-column) (point-max)) (forward-char fill-column) (search-backward " ") (forward-char) (insert prefix))) (setq start (1+ (point-max)))))) t))) This fixes two bugs when sending RFC 2646=E2=80=93formatted email. First, the old code didn't refill or encode the last paragraph at=20 all unless there was at least one hard newline EOF. Second, the old code borked up code indented with tabs and spaces=20 (iff that code had overly long lines), such as the Lisp code in=20 this email. It could sometimes insert extra in the middle of such=20 long lines. Here is an example of what it would do. It would turn this: (defun lorem (ipsum) (dolor sit amet) (consectetur adipiscing elit (sed do eiusmod tempor incididunt=20 ut labore et dolore magna aliqua)) (ut enim ad minim veniam (quis nostrud exercitation ullamco laboris nisi ut aliquip=20 ex ea commodo consequat (duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur) excepteur sint occaecat cupidatat non proident (sunt in culpa qui officia deserunt mollit anim id est=20 laborumd)))) into this: (defun lorem (ipsum) (dolor sit amet) (consectetur adipiscing elit (sed do eiusmod tempor incididunt ut labore et dolore magna aliqua)) (ut enim ad minim veniam (quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat (duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur) excepteur sint occaecat cupidatat non proident (sunt in culpa qui officia deserunt mollit anim id est laborumd)))) It was breaking lines awkwardly so when they're reconnected they=20 have extra whitespace in the mkddle of lines.=20
Sandra Snan <sandra.snan@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#71017
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.