[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r99940: * tmm.el: Add missing key-bin
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r99940: * tmm.el: Add missing key-binding shortcuts. |
Date: |
Mon, 19 Apr 2010 10:34:01 -0400 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 99940
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Mon 2010-04-19 10:34:01 -0400
message:
* tmm.el: Add missing key-binding shortcuts.
(tmm-prompt): Remove obsolete call to x-popup-menu.
(tmm-get-keymap): Add key-binding shortcuts now that they're not
available in the "keyseq cache" any more.
modified:
lisp/ChangeLog
lisp/tmm.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2010-04-19 02:32:47 +0000
+++ b/lisp/ChangeLog 2010-04-19 14:34:01 +0000
@@ -1,5 +1,9 @@
2010-04-19 Stefan Monnier <address@hidden>
+ * tmm.el (tmm-prompt): Remove obsolete call to x-popup-menu.
+ (tmm-get-keymap): Add key-binding shortcuts now that they're not
+ available in the "keyseq cache" any more.
+
* custom.el (defcustom): Add edebug spec.
2010-04-18 Juri Linkov <address@hidden>
=== modified file 'lisp/tmm.el'
--- a/lisp/tmm.el 2010-04-02 15:15:05 +0000
+++ b/lisp/tmm.el 2010-04-19 14:34:01 +0000
@@ -262,9 +262,6 @@
(condition-case nil
(require 'mouse)
(error nil))
- (condition-case nil
- (x-popup-menu nil choice) ; Get the shortcuts
- (error nil))
(tmm-prompt choice))
;; We just handled a menu keymap and found a command.
(choice
@@ -445,7 +442,7 @@
`x-popup-menu' argument (when IN-X-MENU is not-nil).
This function adds the element only if it is not already present.
It uses the free variable `tmm-table-undef' to keep undefined keys."
- (let (km str cache plist filter visible enable (event (car elt)))
+ (let (km str plist filter visible enable (event (car elt)))
(setq elt (cdr elt))
(if (eq elt 'undefined)
(setq tmm-table-undef (cons (cons event nil) tmm-table-undef))
@@ -468,11 +465,7 @@
(and (symbolp (cdr-safe (cdr-safe elt)))
(fboundp (cdr-safe (cdr-safe elt)))))
(setq km (cddr elt))
- (and (stringp (car elt)) (setq str (car elt)))
- (and str
- (stringp (cdr-safe (cadr elt))) ; keyseq cache
- (setq cache (cdr (cadr elt)))
- cache (setq str (concat str cache))))
+ (and (stringp (car elt)) (setq str (car elt))))
((eq (car-safe elt) 'menu-item)
;; (menu-item TITLE COMMAND KEY ...)
@@ -489,13 +482,7 @@
(setq km (and (eval visible) km)))
(setq enable (plist-get plist :enable))
(if enable
- (setq km (if (eval enable) km 'ignore)))
- (and str
- (consp (nth 3 elt))
- (stringp (cdr (nth 3 elt))) ; keyseq cache
- (setq cache (cdr (nth 3 elt)))
- cache
- (setq str (concat str cache))))
+ (setq km (if (eval enable) km 'ignore))))
((if (listp (cdr-safe (cdr-safe (cdr-safe elt))))
(or (keymapp (cdr-safe (cdr-safe (cdr-safe elt))))
@@ -504,16 +491,25 @@
(fboundp (cdr-safe (cdr-safe (cdr-safe elt))))))
; New style of easy-menu
(setq km (cdr (cddr elt)))
- (and (stringp (car elt)) (setq str (car elt)))
- (and str
- (stringp (cdr-safe (car (cddr elt)))) ; keyseq cache
- (setq cache (cdr (car (cdr (cdr elt)))))
- cache (setq str (concat str cache))))
+ (and (stringp (car elt)) (setq str (car elt))))
((stringp event) ; x-popup or x-popup element
(if (or in-x-menu (stringp (car-safe elt)))
(setq str event event nil km elt)
- (setq str event event nil km (cons 'keymap elt))))))
+ (setq str event event nil km (cons 'keymap elt)))))
+ (unless (eq km 'ignore)
+ (let ((binding (where-is-internal km nil t)))
+ (when binding
+ (setq binding (key-description binding))
+ ;; Try to align the keybindings.
+ (let ((colwidth (min 30 (- (/ (window-width) 2) 10))))
+ (setq str
+ (concat str
+ (make-string (max 2 (- colwidth
+ (string-width str)
+ (string-width binding)))
+ ?\s)
+ binding)))))))
(and km (stringp km) (setq str km))
;; Verify that the command is enabled;
;; if not, don't mention it.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r99940: * tmm.el: Add missing key-binding shortcuts.,
Stefan Monnier <=