From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Yuan Fu Newsgroups: gmane.emacs.bugs Subject: bug#40338: Fwd: bug#40338: 27.0.60; c-fill-paragraph and after-change-functions Date: Tue, 31 Mar 2020 13:09:18 -0400 Message-ID: References: <67980875-3F21-489B-9182-D33F3570BF64@gmail.com> Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\)) Content-Type: multipart/alternative; boundary="Apple-Mail=_49B6E92D-A289-4C14-ADA0-2113C689BC71" Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="77976"; mail-complaints-to="usenet@ciao.gmane.io" To: 40338-done@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Mar 31 19:10:14 2020 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 1jJKOz-000KCd-4u for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 31 Mar 2020 19:10:13 +0200 Original-Received: from localhost ([::1]:41964 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jJKOy-00064k-74 for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 31 Mar 2020 13:10:12 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:47879) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jJKOp-00064X-Ol for bug-gnu-emacs@gnu.org; Tue, 31 Mar 2020 13:10:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jJKOo-0002mL-Jj for bug-gnu-emacs@gnu.org; Tue, 31 Mar 2020 13:10:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:53625) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jJKOo-0002mE-Fg for bug-gnu-emacs@gnu.org; Tue, 31 Mar 2020 13:10:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jJKOo-0003xC-AL for bug-gnu-emacs@gnu.org; Tue, 31 Mar 2020 13:10:02 -0400 In-Reply-To: Resent-From: Yuan Fu Original-Sender: "Debbugs-submit" Resent-To: bug-gnu-emacs@gnu.org Resent-Date: Tue, 31 Mar 2020 17:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: cc-closed 40338 X-GNU-PR-Package: emacs Mail-Followup-To: 40338@debbugs.gnu.org, casouri@gmail.com, casouri@gmail.com Original-Received: via spool by 40338-done@debbugs.gnu.org id=D40338.158567456715142 (code D ref 40338); Tue, 31 Mar 2020 17:10:02 +0000 Original-Received: (at 40338-done) by debbugs.gnu.org; 31 Mar 2020 17:09:27 +0000 Original-Received: from localhost ([127.0.0.1]:36936 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jJKOF-0003wA-8W for submit@debbugs.gnu.org; Tue, 31 Mar 2020 13:09:27 -0400 Original-Received: from mail-qk1-f172.google.com ([209.85.222.172]:34041) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jJKOE-0003vx-Fa for 40338-done@debbugs.gnu.org; Tue, 31 Mar 2020 13:09:26 -0400 Original-Received: by mail-qk1-f172.google.com with SMTP id i6so23839264qke.1 for <40338-done@debbugs.gnu.org>; Tue, 31 Mar 2020 10:09:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:mime-version:subject:message-id:references:to:date; bh=sNOqMucD1REwehrLzZL3zl4P+LJX2Oz1DRILVttXvr4=; b=cIrClUHE0l3lKVuzRUDn10uFS9h5ahtiTSLzIgtf52JnMd/jJoUeFEgfDf9i05GtkC q5ye6ka8SvbwlVPK+r334OmXWTFPVah+y1zpXWHBnnmD8sf2Zc8VwKenbNQ2Mv+LhsOx Szi30lOaWcRmaB/JiIa1aUipjsDqRPiYbFsz2agSM+jFpSyiTcHbaZ/yIPlEbqDo3CF6 DEeKpf2wOsE8bUQuuZYY2hYx0KzWzM55tuAX/fbDCr4omPvJMQME6kF+6xgKFsUHuyAj yhiqXuzm9IxbpAMDhqIFhSNleG0HFeXQVmT+3RQTVe7gSgwNlQUg4h51fwDj4T/BsZ+J bpcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:message-id:references :to:date; bh=sNOqMucD1REwehrLzZL3zl4P+LJX2Oz1DRILVttXvr4=; b=oMc5Mu3gvKNg6Fw881rnIMxq8s2yMdvZl8DbfA/rDhMk8zbaEYTuqeMnwW/ROkJnLd SlkpZ/ox8wxm/sEK5Z31TpA/YpNM+k92ci4foJtiAqkP9I7KIbjx7m8Hvn2VbolfDKIe TuQd1UXk04jV/UB2VALsuG2dFqbOV3GseN5MdwMJpgxrlqnUbf8E+aawHXiRAxIvKdrl leJ4Fj1QGfI8Ue3GT9jr8BHeeRZVKyFnX6SNS4Z/gHbH/nMPGsSgOc5RMxF3zdHEkqPF iq4mUioUWTRMBB6d89h+jA6pSgzZ8DfvuBrkoOmtAUXLaJKg1xRmsWRDBJKHPfQ8u8Ze yVWQ== X-Gm-Message-State: ANhLgQ1dysCgngbkY5w3GpdvfDM8WinutdNqNCEwT/9ET7tOyApSc1ke 0WK9sc4u7mVZ8Q17UyRSbyV1fT3QHU4MQGRG X-Google-Smtp-Source: ADFU+vv0VJeFMVeM/r78kgZK/miuIZ/0OUZWMY5NAeiS0G3elPVEh8iZxDcv28l0Dq05LSXB1m9yOg== X-Received: by 2002:a05:620a:a86:: with SMTP id v6mr5816186qkg.156.1585674560673; Tue, 31 Mar 2020 10:09:20 -0700 (PDT) Original-Received: from [192.168.1.5] (c-174-60-229-153.hsd1.pa.comcast.net. [174.60.229.153]) by smtp.gmail.com with ESMTPSA id p38sm14326100qtf.50.2020.03.31.10.09.19 for <40338-done@debbugs.gnu.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 31 Mar 2020 10:09:19 -0700 (PDT) X-Mailer: Apple Mail (2.3608.80.23.2.2) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 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" Xref: news.gmane.io gmane.emacs.bugs:177924 Archived-At: --Apple-Mail=_49B6E92D-A289-4C14-ADA0-2113C689BC71 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > Begin forwarded message: >=20 > From: Yuan Fu > Subject: Re: bug#40338: 27.0.60; c-fill-paragraph and = after-change-functions > Date: March 31, 2020 at 11:27:23 AM GMT-4 > To: Noam Postavsky > Cc: 40338@debbugs.gnu.org >=20 >=20 >=20 >> On Mar 30, 2020, at 9:56 PM, Noam Postavsky = wrote: >>=20 >> Yuan Fu writes: >>=20 >>> (defun mytrack-hook (beg end len) >>> (if (> len 0) >>> ;; delete >>> (with-current-buffer trackbuf >>> (delete-region beg (+ beg len))) >>> ;; insert >>> (let ((content (buffer-substring beg end))) >>> (with-current-buffer trackbuf >>> (goto-char beg) >>> (insert content))))) >>=20 >> I'm not very familiar with either eglot or cc-mode, but I can say the >> problem in your example lies with mytrack-hook: there can be kinds of >> changes other than just pure delete or insert (replace, for example). >> It can be fixed like this: >>=20 >> (defun mytrack-hook (beg end len) >> (when (> len 0) >> ;; Delete old text. >> (with-current-buffer "trackbuf" >> (delete-region beg (+ beg len)))) >> ;; Insert new text. >> (let ((content (buffer-substring beg end))) >> (with-current-buffer "trackbuf" >> (goto-char beg) >> (insert content)))) >>=20 >=20 > Thank you. Indeed this works. Maybe the problem is not in = c-fill-paragraph.=20 >=20 > Yuan --Apple-Mail=_49B6E92D-A289-4C14-ADA0-2113C689BC71 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii

Begin forwarded message:

From: = Yuan Fu <casouri@gmail.com>
Subject: = Re: bug#40338: = 27.0.60; c-fill-paragraph and after-change-functions
Date: = March 31, 2020 at 11:27:23 AM = GMT-4
To: = Noam Postavsky <npostavs@gmail.com>



On Mar 30, 2020, at 9:56 = PM, Noam Postavsky <npostavs@gmail.com> wrote:

Yuan Fu <casouri@gmail.com> writes:

(defun mytrack-hook (beg = end len)
(if (> len 0)
=     ;; delete
=     (with-current-buffer trackbuf
=       (delete-region beg (+ beg len)))
  ;; insert
  (let = ((content (buffer-substring beg end)))
=     (with-current-buffer trackbuf
=       (goto-char beg)
=       (insert content)))))

I'm not very familiar with either = eglot or cc-mode, but I can say the
problem in your = example lies with mytrack-hook: there can be kinds of
changes other than just pure delete or insert (replace, for = example).
It can be fixed like this:

(defun mytrack-hook (beg end len)
(when (> = len 0)
  ;; Delete old text.
=   (with-current-buffer "trackbuf"
=     (delete-region beg (+ beg len))))
= ;; Insert new text.
(let ((content (buffer-substring beg = end)))
  (with-current-buffer "trackbuf"
    (goto-char beg)
=     (insert content))))


Thank you. Indeed this works. = Maybe the problem is not in c-fill-paragraph.

Yuan

= --Apple-Mail=_49B6E92D-A289-4C14-ADA0-2113C689BC71--