Simplify XEmacs key bindings
This commit is contained in:
parent
aca565ca61
commit
56ba0892e5
|
@ -1,3 +1,12 @@
|
|||
2010-04-21 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org.el (org-key): Apply the translations defined in
|
||||
`org-xemacs-key-equivalents'.
|
||||
|
||||
* org-mouse.el (org-mode-hook): Use `org-defkey'.
|
||||
|
||||
* org-compat.el (org-xemacs-key-equivalents): New constant.
|
||||
|
||||
2010-04-20 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org-inlinetask.el (org-inlinetask-defaut-state): New option.
|
||||
|
|
|
@ -1662,10 +1662,8 @@ The following commands are available:
|
|||
(org-defkey org-agenda-mode-map "\C-c\C-x\C-mg" 'org-mobile-pull)
|
||||
(org-defkey org-agenda-mode-map "\C-c\C-x\C-mp" 'org-mobile-push)
|
||||
|
||||
(org-defkey org-agenda-mode-map
|
||||
(if (featurep 'xemacs) [(button2)] [(mouse-2)]) 'org-agenda-goto-mouse)
|
||||
(org-defkey org-agenda-mode-map
|
||||
(if (featurep 'xemacs) [(button3)] [(mouse-3)]) 'org-agenda-show-mouse)
|
||||
(org-defkey org-agenda-mode-map [mouse-2] 'org-agenda-goto-mouse)
|
||||
(org-defkey org-agenda-mode-map [mouse-3] 'org-agenda-show-mouse)
|
||||
(when org-agenda-mouse-1-follows-link
|
||||
(org-defkey org-agenda-mode-map [follow-link] 'mouse-face))
|
||||
(easy-menu-define org-agenda-menu org-agenda-mode-map "Agenda menu"
|
||||
|
|
|
@ -88,6 +88,15 @@ any other entries, and any resulting duplicates will be removed entirely."
|
|||
|
||||
;;;; Emacs/XEmacs compatibility
|
||||
|
||||
;; Keys
|
||||
(defconst org-xemacs-key-equivalents
|
||||
'(([mouse-1] . [button1])
|
||||
([mouse-2] . [button2])
|
||||
([mouse-3] . [button3])
|
||||
([C-mouse-4] . [(control mouse-4)])
|
||||
([C-mouse-5] . [(control mouse-5)]))
|
||||
"Translation alist for a couple of keys")
|
||||
|
||||
;; Overlay compatibility functions
|
||||
(defun org-detach-overlay (ovl)
|
||||
(if (featurep 'xemacs) (detach-extent ovl) (delete-overlay ovl)))
|
||||
|
|
|
@ -909,18 +909,18 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
|
|||
(setq org-mouse-context-menu-function 'org-mouse-context-menu)
|
||||
|
||||
(when (memq 'context-menu org-mouse-features)
|
||||
(define-key org-mouse-map (if (featurep 'xemacs) [button3] [mouse-3]) nil)
|
||||
(define-key org-mode-map [mouse-3] 'org-mouse-show-context-menu))
|
||||
(define-key org-mode-map [down-mouse-1] 'org-mouse-down-mouse)
|
||||
(org-defkey org-mouse-map [mouse-3] nil)
|
||||
(org-defkey org-mode-map [mouse-3] 'org-mouse-show-context-menu))
|
||||
(org-defkey org-mode-map [down-mouse-1] 'org-mouse-down-mouse)
|
||||
(when (memq 'context-menu org-mouse-features)
|
||||
(define-key org-mouse-map [C-drag-mouse-1] 'org-mouse-move-tree)
|
||||
(define-key org-mouse-map [C-down-mouse-1] 'org-mouse-move-tree-start))
|
||||
(org-defkey org-mouse-map [C-drag-mouse-1] 'org-mouse-move-tree)
|
||||
(org-defkey org-mouse-map [C-down-mouse-1] 'org-mouse-move-tree-start))
|
||||
(when (memq 'yank-link org-mouse-features)
|
||||
(define-key org-mode-map [S-mouse-2] 'org-mouse-yank-link)
|
||||
(define-key org-mode-map [drag-mouse-3] 'org-mouse-yank-link))
|
||||
(org-defkey org-mode-map [S-mouse-2] 'org-mouse-yank-link)
|
||||
(org-defkey org-mode-map [drag-mouse-3] 'org-mouse-yank-link))
|
||||
(when (memq 'move-tree org-mouse-features)
|
||||
(define-key org-mouse-map [drag-mouse-3] 'org-mouse-move-tree)
|
||||
(define-key org-mouse-map [down-mouse-3] 'org-mouse-move-tree-start))
|
||||
(org-defkey org-mouse-map [drag-mouse-3] 'org-mouse-move-tree)
|
||||
(org-defkey org-mouse-map [down-mouse-3] 'org-mouse-move-tree-start))
|
||||
|
||||
(when (memq 'activate-stars org-mouse-features)
|
||||
(font-lock-add-keywords
|
||||
|
@ -1131,13 +1131,11 @@ SCHEDULED: or DEADLINE: or ANYTHINGLIKETHIS:"
|
|||
(add-hook 'org-agenda-mode-hook
|
||||
'(lambda ()
|
||||
(setq org-mouse-context-menu-function 'org-mouse-agenda-context-menu)
|
||||
(define-key org-agenda-mode-map
|
||||
(if (featurep 'xemacs) [button3] [mouse-3])
|
||||
'org-mouse-show-context-menu)
|
||||
(define-key org-agenda-mode-map [down-mouse-3] 'org-mouse-move-tree-start)
|
||||
(define-key org-agenda-mode-map (if (featurep 'xemacs) [(control mouse-4)] [C-mouse-4]) 'org-agenda-earlier)
|
||||
(define-key org-agenda-mode-map (if (featurep 'xemacs) [(control mouse-5)] [C-mouse-5]) 'org-agenda-later)
|
||||
(define-key org-agenda-mode-map [drag-mouse-3]
|
||||
(org-defkey org-agenda-mode-map [mouse-3] 'org-mouse-show-context-menu)
|
||||
(org-defkey org-agenda-mode-map [down-mouse-3] 'org-mouse-move-tree-start)
|
||||
(org-defkey org-agenda-mode-map [C-mouse-4] 'org-agenda-earlier)
|
||||
(org-defkey org-agenda-mode-map [C-mouse-5] 'org-agenda-later)
|
||||
(org-defkey org-agenda-mode-map [drag-mouse-3]
|
||||
'(lambda (event) (interactive "e")
|
||||
(case (org-mouse-get-gesture event)
|
||||
(:left (org-agenda-earlier 1))
|
||||
|
|
32
lisp/org.el
32
lisp/org.el
|
@ -417,14 +417,17 @@ therefore you'll have to restart Emacs to apply it after changing."
|
|||
|
||||
(defun org-key (key)
|
||||
"Select key according to `org-replace-disputed-keys' and `org-disputed-keys'.
|
||||
Or return the original if not disputed."
|
||||
(if org-replace-disputed-keys
|
||||
(let* ((nkey (key-description key))
|
||||
(x (org-find-if (lambda (x)
|
||||
(equal (key-description (car x)) nkey))
|
||||
org-disputed-keys)))
|
||||
(if x (cdr x) key))
|
||||
key))
|
||||
Or return the original if not disputed.
|
||||
Also apply the trnaslations defined in `org-xemacs-key-equivalents'."
|
||||
(when org-replace-disputed-keys
|
||||
(let* ((nkey (key-description key))
|
||||
(x (org-find-if (lambda (x)
|
||||
(equal (key-description (car x)) nkey))
|
||||
org-disputed-keys)))
|
||||
(setq key (if x (cdr x) key))))
|
||||
(when (featurep 'xemacs)
|
||||
(setq key (or (cdr (assoc key org-xemacs-key-equivalents)) key)))
|
||||
key)
|
||||
|
||||
(defun org-find-if (predicate seq)
|
||||
(catch 'exit
|
||||
|
@ -4480,10 +4483,8 @@ The following commands are available:
|
|||
;;;; Font-Lock stuff, including the activators
|
||||
|
||||
(defvar org-mouse-map (make-sparse-keymap))
|
||||
(org-defkey org-mouse-map
|
||||
(if (featurep 'xemacs) [button2] [mouse-2]) 'org-open-at-mouse)
|
||||
(org-defkey org-mouse-map
|
||||
(if (featurep 'xemacs) [button3] [mouse-3]) 'org-find-file-at-mouse)
|
||||
(org-defkey org-mouse-map [mouse-2] 'org-open-at-mouse)
|
||||
(org-defkey org-mouse-map [mouse-3] 'org-find-file-at-mouse)
|
||||
(when org-mouse-1-follows-link
|
||||
(org-defkey org-mouse-map [follow-link] 'mouse-face))
|
||||
(when org-tab-follows-link
|
||||
|
@ -5481,7 +5482,6 @@ in special contexts.
|
|||
(while (and (not (eobp)) ;; this is like `next-line'
|
||||
(get-char-property (1- (point)) 'invisible))
|
||||
(goto-char (next-single-char-property-change (point) 'invisible))
|
||||
;;;??? (or (bolp) (beginning-of-line 2))))
|
||||
(and (eolp) (beginning-of-line 2))))
|
||||
(setq eol (point)))
|
||||
(outline-end-of-heading) (setq eoh (point))
|
||||
|
@ -13589,10 +13589,8 @@ user."
|
|||
(map (copy-keymap calendar-mode-map))
|
||||
(minibuffer-local-map (copy-keymap minibuffer-local-map)))
|
||||
(org-defkey map (kbd "RET") 'org-calendar-select)
|
||||
(org-defkey map (if (featurep 'xemacs) [button1] [mouse-1])
|
||||
'org-calendar-select-mouse)
|
||||
(org-defkey map (if (featurep 'xemacs) [button2] [mouse-2])
|
||||
'org-calendar-select-mouse)
|
||||
(org-defkey map [mouse-1] 'org-calendar-select-mouse)
|
||||
(org-defkey map [mouse-2] 'org-calendar-select-mouse)
|
||||
(org-defkey minibuffer-local-map [(meta shift left)]
|
||||
(lambda () (interactive)
|
||||
(org-eval-in-calendar '(calendar-backward-month 1))))
|
||||
|
|
Loading…
Reference in New Issue