GNU bug report logs -
#37455
27.0.50; insert-behind-hooks and insert-in-front-hooks in text properties do nothing when font-lock-mode is on
Previous Next
Reported by: 'Ihor Radchenko' <yantar92 <at> gmail.com>
Date: Thu, 19 Sep 2019 00:53:02 UTC
Severity: normal
Found in version 27.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Thu, 19 Sep 2019 20:35:13 +0300
with message-id <83h858tcj2.fsf <at> gnu.org>
and subject line Re: bug#37455: 27.0.50; insert-behind-hooks and insert-in-front-hooks in text properties do nothing when font-lock-mode is on
has caused the debbugs.gnu.org bug report #37455,
regarding 27.0.50; insert-behind-hooks and insert-in-front-hooks in text properties do nothing when font-lock-mode is on
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
37455: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=37455
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Expected behaviour:
According to the manual, adding insert-in-front-hooks or
insert-behind-hooks text properties should trigger the functions listed
in the hooks when the text is inserted in front/behind the text.
Observed behaviour:
The functions never run unless I type very fast (with my own config) or
when font-lock-mode is enabled.
Steps to reproduce (the font-lock part):
1. emacs -Q
2. Insert the following elisp into scratch (the code is from https://www.reddit.com/r/emacs/comments/d5waor/how_to_use_modification_hooks_in_text_properties/):
(defun test-property ()
(put-text-property (point) (mark) 'insert-behind-hooks
(list (lambda (beg end)
(message "before %d %d" beg end))))
(put-text-property (point) (mark) 'insert-in-front-hooks
(list (lambda (beg end)
(message "in front %d %d" beg end)))))
1. Select the region containing all the text in the scratch buffer
2. M-: (test-property) RET
3. Try to type anything
4. No message is shown
5. Disable font-lock-mode
6. Try to type anything
7. The message is shown
Regards,
Ihor
--
Ihor Radchenko,
PhD,
Center for Advancing Materials Performance from the Nanoscale (CAMP-nano)
State Key Laboratory for Mechanical Behavior of Materials, Xi'an Jiaotong University, Xi'an, China
Email: yantar92 <at> gmail.com, ihor_radchenko <at> alumni.sutd.edu.sg
[Message part 3 (message/rfc822, inline)]
> From: Ihor Radchenko <yantar92 <at> gmail.com>
> Cc: 37455 <at> debbugs.gnu.org
> Date: Fri, 20 Sep 2019 00:46:52 +0800
>
> Thanks!
> I can confirm that the hooks work as expected in master.
Thanks, I'm therefore closing this bug report.
> "Too bad they have names that end in -hooks, which is misleading. Even
> if they were actually hooks (which are variables), because their
> functions take arguments they would be considered "abnormal
> hooks", and abnormal hooks are conventionally named with the
> suffix -functions (not -hooks). Following that convention would
> also be less misleading, lessening the suggestion that they're
> hooks."
>
> Would it make sense to change the text and overlay property names to
> something like insert-in-front-functions, insert-behind-functions, and
> modification-functions?
I don't see a serious enough reason to change names of these
properties, which were introduced in Emacs 19(!). The person who
wrote that raises many similar arguments, so I'm not surprised to hear
this one.
IOW, this ship has sailed decades ago, and it's too late to rename it
now.
Thanks.
This bug report was last modified 5 years and 299 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.