unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#8989: keymap text property applies beyond the region it is set to
@ 2011-07-03  6:25 Dmitry Kurochkin
  2011-07-03 14:57 ` Stefan Monnier
  0 siblings, 1 reply; 3+ messages in thread
From: Dmitry Kurochkin @ 2011-07-03  6:25 UTC (permalink / raw)
  To: 8989

Package: emacs
Version: 23.3.1

When keymap text property is set, it changes key binding for one
character after the region it is set to.  The following code
demonstrates the problem:

  (let ((map (make-sparse-keymap)))
    (define-key map (kbd "RET") 'bug)
    (switch-to-buffer "test")
    (insert "123456")
    (put-text-property 1 4 'keymap map)
    (goto-char 4)
    (message "keymap: %s"
             (get-text-property (point) 'keymap)) ; no keymap property here
    (message "key-binding: %s"
             (key-binding (kbd "RET")))) ; but the key binding is changed

Regards,
  Dmitry





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#8989: keymap text property applies beyond the region it is set to
  2011-07-03  6:25 bug#8989: keymap text property applies beyond the region it is set to Dmitry Kurochkin
@ 2011-07-03 14:57 ` Stefan Monnier
  2011-07-03 21:47   ` Dmitry Kurochkin
  0 siblings, 1 reply; 3+ messages in thread
From: Stefan Monnier @ 2011-07-03 14:57 UTC (permalink / raw)
  To: Dmitry Kurochkin; +Cc: 8989

tags 8989 +notabug
thanks

> When keymap text property is set, it changes key binding for one
> character after the region it is set to.  The following code
> demonstrates the problem:

No: in your case, the text property covers characters between positions
1 to 4, and point is at position 4 (right in front of the char at
position 4 and right after the char at position 3), i.e. right on the
boundary of the text-property.  When on the boundary, the behavior will
depend on whether the property is sticky or not, so you can control it
by twiddling the "front-advance, read-advance" settings of your overlays
or the rear-non-stick and front-sticky text-properties.


        Stefan





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#8989: keymap text property applies beyond the region it is set to
  2011-07-03 14:57 ` Stefan Monnier
@ 2011-07-03 21:47   ` Dmitry Kurochkin
  0 siblings, 0 replies; 3+ messages in thread
From: Dmitry Kurochkin @ 2011-07-03 21:47 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 8989

On Sun, 03 Jul 2011 10:57:51 -0400, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
> tags 8989 +notabug
> thanks
> 
> > When keymap text property is set, it changes key binding for one
> > character after the region it is set to.  The following code
> > demonstrates the problem:
> 
> No: in your case, the text property covers characters between positions
> 1 to 4, and point is at position 4 (right in front of the char at
> position 4 and right after the char at position 3), i.e. right on the
> boundary of the text-property.  When on the boundary, the behavior will
> depend on whether the property is sticky or not, so you can control it
> by twiddling the "front-advance, read-advance" settings of your overlays
> or the rear-non-stick and front-sticky text-properties.
> 

Stefan, thank you for the explanation and sorry for a false but report!

Regards,
  Dmitry

> 
>         Stefan





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-07-03 21:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-03  6:25 bug#8989: keymap text property applies beyond the region it is set to Dmitry Kurochkin
2011-07-03 14:57 ` Stefan Monnier
2011-07-03 21:47   ` Dmitry Kurochkin

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).