emacs-devel
[Top][All Lists]
Advanced

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

Re: 31395511: "Don’t attempt to modify constant strings"


From: João Távora
Subject: Re: 31395511: "Don’t attempt to modify constant strings"
Date: Wed, 03 Jun 2020 22:52:01 +0100

Hi Paul,

After a lengthy git bisect, I discovered that this commit is responsible
for breaking a very big part of my SLY extension, a Common Lisp IDE for
Emacs.  The reason is this change to make-text-button

-    (when (stringp beg)
-      (setq object beg beg 0 end (length object)))
+      (setq object (copy-sequence beg) beg 0 end (length object)))

I don't pretend to understand the reason for the change, but I know it
hasn't worked like this for a long time (SLY came about for Emacs 24.3).,

I didn't investigate much, but SLY has a lot of

   (insert (sly-make-action-button "[SOMEBUTTON]" ..))

and sly-make-action-button is

   (defun sly-make-action-button (label action &rest props)
     (apply #'sly--make-text-button
            label nil :type 'sly-action
            'action action
            'mouse-action action
            props)
     label)

and sly--make-text-button is

   (defun sly--make-text-button (beg end &rest properties)
     "Just like `make-text-button', but add sly-specifics."
     (apply #'make-text-button beg end
            'sly-connection (sly-current-connection)
            properties))

Not sure where the problem lies but every button inserted by SLY is now
just plain text.

Maybe you have an alternative formulation that I can apply in SLY,
otherwise I'd really appreciate that you could revert or find an
alternative to this change

Thanks in advance,
João



reply via email to

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