From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.bugs Subject: bug#56682: locked narrowing Date: Fri, 02 Dec 2022 08:54:31 +0000 Message-ID: <20f32a53dcb449dbd509@heytings.org> References: <97049541-f5b4-ed3b-b8de-7c0bdc86f0f5@yandex.ru> <6e305c9b-7702-133a-3347-f64db05ade3f@yandex.ru> <83mt89kt10.fsf@gnu.org> <834juglesn.fsf@gnu.org> <83r0xkjw5s.fsf@gnu.org> <83pmd3ioxx.fsf@gnu.org> <47153506021498df087c@heytings.org> <83bkomhlmn.fsf@gnu.org> <4715350602cf2ec6860b@heytings.org> <83a646hkat.fsf@gnu.org> <47153506028bbb3bc8b3@heytings.org> <47153506021115866615@heytings.org> <20f32a53dc3f5fbc5b65@heytings.org> Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="16328"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 56682@debbugs.gnu.org, Eli Zaretskii , dgutov@yandex.ru To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Dec 02 09:55:17 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p11pE-00042b-BM for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 02 Dec 2022 09:55:16 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p11p3-0004LB-2b; Fri, 02 Dec 2022 03:55:05 -0500 Original-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 ) id 1p11p0-0004Kh-Cd for bug-gnu-emacs@gnu.org; Fri, 02 Dec 2022 03:55:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p11p0-0007xt-3t for bug-gnu-emacs@gnu.org; Fri, 02 Dec 2022 03:55:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p11oz-0004Ak-W3 for bug-gnu-emacs@gnu.org; Fri, 02 Dec 2022 03:55:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 02 Dec 2022 08:55:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56682 X-GNU-PR-Package: emacs Original-Received: via spool by 56682-submit@debbugs.gnu.org id=B56682.166997127816013 (code B ref 56682); Fri, 02 Dec 2022 08:55:01 +0000 Original-Received: (at 56682) by debbugs.gnu.org; 2 Dec 2022 08:54:38 +0000 Original-Received: from localhost ([127.0.0.1]:45428 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p11oc-0004AD-GT for submit@debbugs.gnu.org; Fri, 02 Dec 2022 03:54:38 -0500 Original-Received: from heytings.org ([95.142.160.155]:40510) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p11oW-0004A3-NU for 56682@debbugs.gnu.org; Fri, 02 Dec 2022 03:54:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1669971271; bh=ngWwP+owHZEbdFbjdhvsXXfGeunO+6Tf4/QsDi9FTyU=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=c9MAQXIyFMzUxjJSp1ZttDOK5wxwJDVzSpq1z7rYeU+rU1dW6Z2NdHiUL6DDyeNvh QWcKdLjoHqn5wG0U7970EBDH8NVavEtP73Fou5Igwcx6Gnr9nEQ+Zki5tAp4AmxrSL rRxLLf775N/lv82iQxgBWYEAU5FQxcpxhOd8gDTfGWA6bsuHGeoaETPhGMYj+65TzF aUYcfOj800i2aNRWzYPOXquSmsvQsgE791eN27omYDJtGMj5xRaBO8mCjGEfVXZy+b SrPfvTk5ZAxHy2wG8gxQfAAFlo4DoJXCueo+PTzYtciya+n5opH58yNxf7RBZhsH5w RjbFjXRZTg87g== In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:249722 Archived-At: >>> Maybe another option is to do the scan more lazily, keeping track more >>> precisely of what was scanned and/or needs rescanning. >> >> Thanks. It's an option indeed, the problem here is how to keep track >> of what was scanned or needs rescanning. > > My suggestion was to have as "steady state" that "everything is scanned > except for a region between BEG...END and no line was found to be larger > than MAX_SEEN_LINE_LENGTH". So it requires keeping track of a BEG..END > (BEG can be an integer but END would likely be an (insert-before) > marker) plus an integer keeping track of MAX_SEEN_LINE_LENGTH. Initially > BEG is 1 and END is Z. > I'm not sure I understand how that would work, concretely. After the initial scan, we would have beg=BEG / end=Z. Now the buffer is modified, say 1000 characters are added at position 1000 and 10000 characters are added at position 10000. What would be the values of beg and end after these two operations? The two portions of the buffer that did not change are BEG .. 1000 and 20000 .. Z, so it seems to me that it's better to keep track of the portion of the buffer that did change, in this case 1000 .. 20000.