all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: David Kastrup <dak@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: Getting the click position in a string
Date: Wed, 26 Apr 2006 14:54:20 +0200	[thread overview]
Message-ID: <85u08gpkeb.fsf@lola.goethe.zz> (raw)
In-Reply-To: <85y7xspkgk.fsf@lola.goethe.zz> (David Kastrup's message of "Wed, 26 Apr 2006 14:52:59 +0200")

[-- Attachment #1: Type: text/plain, Size: 93 bytes --]

David Kastrup <dak@gnu.org> writes:

> Well, here is the current patch.

Uh, actually here.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 2209 bytes --]

*** help.el	25 Mar 2006 20:49:31 +0100	1.308
--- help.el	26 Apr 2006 14:09:59 +0200	
***************
*** 525,550 ****
  	  (princ string)))))
    nil)
  
! (defun string-key-binding (key)
!   "Value is the binding of KEY in a string.
! If KEY is an event on a string, and that string has a `local-map'
! or `keymap' property, return the binding of KEY in the string's keymap."
    (let* ((defn nil)
! 	 (start (when (vectorp key)
! 		  (if (memq (aref key 0)
  			    '(mode-line header-line left-margin right-margin))
! 		      (event-start (aref key 1))
! 		    (and (consp (aref key 0))
! 			 (event-start (aref key 0))))))
  	 (string-info (and (consp start) (nth 4 start))))
      (when string-info
        (let* ((string (car string-info))
  	     (pos (cdr string-info))
! 	     (local-map (and (>= pos 0)
! 			     (< pos (length string))
! 			     (or (get-text-property pos 'local-map string)
! 				 (get-text-property pos 'keymap string)))))
! 	(setq defn (and local-map (lookup-key local-map key)))))
      defn))
  
  (defun help-key-description (key untranslated)
--- 525,554 ----
  	  (princ string)))))
    nil)
  
! (defun string-key-binding (event &optional key)
!   "With some EVENT on a string, return the local binding of KEY.
! If EVENT is an event on a string, and that string has a `local-map'
! or `keymap' property, return the binding of KEY in the string's keymap.
! If KEY is not specified, it is taken from the event."
    (let* ((defn nil)
! 	 (start (when (vectorp event)
! 		  (if (memq (aref event 0)
  			    '(mode-line header-line left-margin right-margin))
! 		      (event-start (aref event 1))
! 		    (and (consp (aref event 0))
! 			 (event-start (aref event 0))))))
  	 (string-info (and (consp start) (nth 4 start))))
      (when string-info
        (let* ((string (car string-info))
  	     (pos (cdr string-info))
! 	     (maps '(keymap local-map))
! 	     local-map)
! 	(when (and (>= pos 0)
! 		   (< pos (length string)))
! 	  (while (and maps (not defn))
! 	    (when
! 		(setq local-map (get-text-property pos (pop maps) string))
! 	      (setq defn (lookup-key local-map (or key event))))))))
      defn))
  
  (defun help-key-description (key untranslated)

[-- Attachment #3: Type: text/plain, Size: 52 bytes --]



-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

[-- Attachment #4: Type: text/plain, Size: 142 bytes --]

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

  reply	other threads:[~2006-04-26 12:54 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-25  9:53 Getting the click position in a string David Kastrup
2006-04-25 14:36 ` Kim F. Storm
2006-04-25 14:55   ` David Kastrup
2006-04-26  8:13     ` Kim F. Storm
2006-04-26  8:17 ` David Kastrup
2006-04-26 11:32   ` Kim F. Storm
2006-04-26 11:56     ` David Kastrup
2006-04-26 12:52       ` David Kastrup
2006-04-26 12:54         ` David Kastrup [this message]
2006-04-26 13:58         ` Stefan Monnier
2006-04-27 12:08           ` David Kastrup
2006-04-27 16:05             ` Stefan Monnier
2006-04-27 18:33               ` David Kastrup
2006-04-27 21:24                 ` Stefan Monnier
2006-04-27 21:39                   ` David Kastrup
2006-04-28 16:16                     ` Stefan Monnier
2006-04-29 21:55                       ` David Kastrup
2006-04-29 23:33                         ` Stefan Monnier
2006-04-30 21:55                           ` David Kastrup
2006-05-01  0:48                             ` Stefan Monnier
2006-05-01  5:55                               ` David Kastrup
2006-05-01 12:52                                 ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=85u08gpkeb.fsf@lola.goethe.zz \
    --to=dak@gnu.org \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.