bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#40338: 27.0.60; c-fill-paragraph and after-change-functions


From: Yuan Fu
Subject: bug#40338: 27.0.60; c-fill-paragraph and after-change-functions
Date: Tue, 31 Mar 2020 11:27:23 -0400


> 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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]