mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-16 17:24:23 +00:00
lisp/mouse.el: Fix some lambdas quoted with ` or '
Also prefer #' to quote named functions. * lisp/mouse.el (minor-mode-menu-from-indicator, context-menu-entry) ([C-down-mouse-3]): Don't abuse lambda lists for functions. (context-menu-mode): Remove redundant `:group`. (mouse-drag-line): Remove unused var `draggable`. (mouse-yank-primary): Make it work for non-mouse events.
This commit is contained in:
parent
00d107ebea
commit
aa3434369e
1 changed files with 72 additions and 73 deletions
145
lisp/mouse.el
145
lisp/mouse.el
|
|
@ -184,8 +184,8 @@ items `Turn Off' and `Help'."
|
|||
"-" " " (format "%S" minor-mode))))
|
||||
(turn-off menu-item "Turn off minor mode" ,mm-fun)
|
||||
(help menu-item "Help for minor mode"
|
||||
(lambda () (interactive)
|
||||
(describe-function ',mm-fun)))))))
|
||||
,(lambda () (interactive)
|
||||
(describe-function mm-fun)))))))
|
||||
(if menu
|
||||
(popup-menu menu)
|
||||
(message "No menu available")))))
|
||||
|
|
@ -271,7 +271,7 @@ not it is actually displayed."
|
|||
;; FIXME: We have a problem here: we have to use the global/local/minor
|
||||
;; so they're displayed in the expected order, but later on in the command
|
||||
;; loop, they're actually looked up in the opposite order.
|
||||
(apply 'append
|
||||
(apply #'append
|
||||
global-menu
|
||||
local-menu
|
||||
minor-mode-menus)))
|
||||
|
|
@ -525,7 +525,7 @@ Some context functions add menu items below the separator."
|
|||
|
||||
(defvar context-menu-entry
|
||||
`(menu-item ,(purecopy "Context Menu") ,(make-sparse-keymap)
|
||||
:filter (lambda (_) (context-menu-map)))
|
||||
:filter ,(lambda (_) (context-menu-map)))
|
||||
"Menu item that creates the context menu and can be bound to a mouse key.")
|
||||
|
||||
(defvar context-menu-mode-map
|
||||
|
|
@ -546,7 +546,7 @@ Some context functions add menu items below the separator."
|
|||
|
||||
When Context Menu mode is enabled, clicking the mouse button down-mouse-3
|
||||
activates the menu whose contents depends on its surrounding context."
|
||||
:global t :group 'mouse)
|
||||
:global t)
|
||||
|
||||
(defun context-menu-open ()
|
||||
"Start key navigation of the context menu.
|
||||
|
|
@ -558,7 +558,7 @@ This is the keyboard interface to \\[context-menu-map]."
|
|||
(call-interactively map)
|
||||
(popup-menu map (point)))))
|
||||
|
||||
(global-set-key [S-f10] 'context-menu-open)
|
||||
(global-set-key [S-f10] #'context-menu-open)
|
||||
|
||||
(defun mark-thing-at-mouse (click thing)
|
||||
"Activate the region around THING found near the mouse CLICK."
|
||||
|
|
@ -613,7 +613,7 @@ This command must be bound to a mouse click."
|
|||
(or (eq frame oframe)
|
||||
(set-mouse-position (selected-frame) (1- (frame-width)) 0))))
|
||||
|
||||
(define-obsolete-function-alias 'mouse-tear-off-window 'tear-off-window "24.4")
|
||||
(define-obsolete-function-alias 'mouse-tear-off-window #'tear-off-window "24.4")
|
||||
(defun tear-off-window (click)
|
||||
"Delete the selected window, and create a new frame displaying its buffer."
|
||||
(interactive (list last-nonmenu-event))
|
||||
|
|
@ -689,7 +689,6 @@ must be one of the symbols `header', `mode', or `vertical'."
|
|||
;; previously sampled position. The difference of `position'
|
||||
;; and `last-position' determines the size change of WINDOW.
|
||||
(last-position position)
|
||||
(draggable t)
|
||||
posn-window growth dragged)
|
||||
;; Decide on whether we are allowed to track at all and whose
|
||||
;; window's edge we drag.
|
||||
|
|
@ -742,7 +741,7 @@ must be one of the symbols `header', `mode', or `vertical'."
|
|||
(setq dragged t)
|
||||
(adjust-window-trailing-edge window growth t t))
|
||||
(setq last-position position))
|
||||
(draggable
|
||||
(t
|
||||
;; Drag bottom edge of `window'.
|
||||
(setq start (event-start event))
|
||||
;; Set `posn-window' to the window where `event' was recorded.
|
||||
|
|
@ -1842,7 +1841,7 @@ If MODE is 2 then do the same for lines."
|
|||
event)))
|
||||
(setcar last new)
|
||||
(if (and (not (equal modifiers old-modifiers))
|
||||
(key-binding (apply 'vector events)))
|
||||
(key-binding (apply #'vector events)))
|
||||
t
|
||||
(setcar last event)
|
||||
nil)))
|
||||
|
|
@ -1896,12 +1895,12 @@ regardless of where you click."
|
|||
(setq mouse-selection-click-count 0)
|
||||
(yank arg))
|
||||
|
||||
(defun mouse-yank-primary (click)
|
||||
"Insert the primary selection at the position clicked on.
|
||||
(defun mouse-yank-primary (&optional event)
|
||||
"Insert the primary selection,
|
||||
Move point to the end of the inserted text, and set mark at
|
||||
beginning. If `mouse-yank-at-point' is non-nil, insert at point
|
||||
regardless of where you click."
|
||||
(interactive "e")
|
||||
otherwise insert it at the position of EVENT."
|
||||
(interactive (list last-nonmenu-event))
|
||||
;; Give temporary modes such as isearch a chance to turn off.
|
||||
(run-hooks 'mouse-leave-buffer-hook)
|
||||
;; Without this, confusing things happen upon e.g. inserting into
|
||||
|
|
@ -1909,7 +1908,7 @@ regardless of where you click."
|
|||
(when select-active-regions
|
||||
(let (select-active-regions)
|
||||
(deactivate-mark)))
|
||||
(or mouse-yank-at-point (mouse-set-point click))
|
||||
(or mouse-yank-at-point (mouse-set-point event))
|
||||
(let ((primary (gui-get-primary-selection)))
|
||||
(push-mark)
|
||||
(insert-for-yank primary)))
|
||||
|
|
@ -2049,11 +2048,11 @@ if `mouse-drag-copy-region' is non-nil)."
|
|||
(setq mouse-save-then-kill-posn click-pt)))))
|
||||
|
||||
|
||||
(global-set-key [M-mouse-1] 'mouse-start-secondary)
|
||||
(global-set-key [M-drag-mouse-1] 'mouse-set-secondary)
|
||||
(global-set-key [M-down-mouse-1] 'mouse-drag-secondary)
|
||||
(global-set-key [M-mouse-3] 'mouse-secondary-save-then-kill)
|
||||
(global-set-key [M-mouse-2] 'mouse-yank-secondary)
|
||||
(global-set-key [M-mouse-1] #'mouse-start-secondary)
|
||||
(global-set-key [M-drag-mouse-1] #'mouse-set-secondary)
|
||||
(global-set-key [M-down-mouse-1] #'mouse-drag-secondary)
|
||||
(global-set-key [M-mouse-3] #'mouse-secondary-save-then-kill)
|
||||
(global-set-key [M-mouse-2] #'mouse-yank-secondary)
|
||||
|
||||
(defconst mouse-secondary-overlay
|
||||
(let ((ol (make-overlay (point-min) (point-min))))
|
||||
|
|
@ -3213,78 +3212,78 @@ is copied instead of being cut."
|
|||
|
||||
;;; Bindings for mouse commands.
|
||||
|
||||
(global-set-key [down-mouse-1] 'mouse-drag-region)
|
||||
(global-set-key [mouse-1] 'mouse-set-point)
|
||||
(global-set-key [drag-mouse-1] 'mouse-set-region)
|
||||
(global-set-key [down-mouse-1] #'mouse-drag-region)
|
||||
(global-set-key [mouse-1] #'mouse-set-point)
|
||||
(global-set-key [drag-mouse-1] #'mouse-set-region)
|
||||
|
||||
(defun mouse--strip-first-event (_prompt)
|
||||
(substring (this-single-command-raw-keys) 1))
|
||||
|
||||
(define-key function-key-map [left-fringe mouse-1] 'mouse--strip-first-event)
|
||||
(define-key function-key-map [right-fringe mouse-1] 'mouse--strip-first-event)
|
||||
(define-key function-key-map [left-fringe mouse-1] #'mouse--strip-first-event)
|
||||
(define-key function-key-map [right-fringe mouse-1] #'mouse--strip-first-event)
|
||||
|
||||
(global-set-key [mouse-2] 'mouse-yank-primary)
|
||||
(global-set-key [mouse-2] #'mouse-yank-primary)
|
||||
;; Allow yanking also when the corresponding cursor is "in the fringe".
|
||||
(define-key function-key-map [right-fringe mouse-2] 'mouse--strip-first-event)
|
||||
(define-key function-key-map [left-fringe mouse-2] 'mouse--strip-first-event)
|
||||
(global-set-key [mouse-3] 'mouse-save-then-kill)
|
||||
(define-key function-key-map [right-fringe mouse-3] 'mouse--strip-first-event)
|
||||
(define-key function-key-map [left-fringe mouse-3] 'mouse--strip-first-event)
|
||||
(define-key function-key-map [right-fringe mouse-2] #'mouse--strip-first-event)
|
||||
(define-key function-key-map [left-fringe mouse-2] #'mouse--strip-first-event)
|
||||
(global-set-key [mouse-3] #'mouse-save-then-kill)
|
||||
(define-key function-key-map [right-fringe mouse-3] #'mouse--strip-first-event)
|
||||
(define-key function-key-map [left-fringe mouse-3] #'mouse--strip-first-event)
|
||||
|
||||
;; By binding these to down-going events, we let the user use the up-going
|
||||
;; event to make the selection, saving a click.
|
||||
(global-set-key [C-down-mouse-1] 'mouse-buffer-menu)
|
||||
(global-set-key [C-down-mouse-1] #'mouse-buffer-menu)
|
||||
(if (not (eq system-type 'ms-dos))
|
||||
(global-set-key [S-down-mouse-1] 'mouse-appearance-menu))
|
||||
(global-set-key [S-down-mouse-1] #'mouse-appearance-menu))
|
||||
;; C-down-mouse-2 is bound in facemenu.el.
|
||||
(global-set-key [C-down-mouse-3]
|
||||
`(menu-item ,(purecopy "Menu Bar") ignore
|
||||
:filter (lambda (_)
|
||||
(if (zerop (or (frame-parameter nil 'menu-bar-lines) 0))
|
||||
(mouse-menu-bar-map)
|
||||
(mouse-menu-major-mode-map)))))
|
||||
:filter ,(lambda (_)
|
||||
(if (zerop (or (frame-parameter nil 'menu-bar-lines) 0))
|
||||
(mouse-menu-bar-map)
|
||||
(mouse-menu-major-mode-map)))))
|
||||
|
||||
;; Binding mouse-1 to mouse-select-window when on mode-, header-, or
|
||||
;; vertical-line prevents Emacs from signaling an error when the mouse
|
||||
;; button is released after dragging these lines, on non-toolkit
|
||||
;; versions.
|
||||
(global-set-key [header-line down-mouse-1] 'mouse-drag-header-line)
|
||||
(global-set-key [header-line mouse-1] 'mouse-select-window)
|
||||
(global-set-key [tab-line down-mouse-1] 'mouse-drag-tab-line)
|
||||
(global-set-key [tab-line mouse-1] 'mouse-select-window)
|
||||
(global-set-key [header-line down-mouse-1] #'mouse-drag-header-line)
|
||||
(global-set-key [header-line mouse-1] #'mouse-select-window)
|
||||
(global-set-key [tab-line down-mouse-1] #'mouse-drag-tab-line)
|
||||
(global-set-key [tab-line mouse-1] #'mouse-select-window)
|
||||
;; (global-set-key [mode-line drag-mouse-1] 'mouse-select-window)
|
||||
(global-set-key [mode-line down-mouse-1] 'mouse-drag-mode-line)
|
||||
(global-set-key [mode-line mouse-1] 'mouse-select-window)
|
||||
(global-set-key [mode-line mouse-2] 'mouse-delete-other-windows)
|
||||
(global-set-key [mode-line mouse-3] 'mouse-delete-window)
|
||||
(global-set-key [mode-line C-mouse-2] 'mouse-split-window-horizontally)
|
||||
(global-set-key [vertical-scroll-bar C-mouse-2] 'mouse-split-window-vertically)
|
||||
(global-set-key [horizontal-scroll-bar C-mouse-2] 'mouse-split-window-horizontally)
|
||||
(global-set-key [vertical-line down-mouse-1] 'mouse-drag-vertical-line)
|
||||
(global-set-key [vertical-line mouse-1] 'mouse-select-window)
|
||||
(global-set-key [vertical-line C-mouse-2] 'mouse-split-window-vertically)
|
||||
(global-set-key [right-divider down-mouse-1] 'mouse-drag-vertical-line)
|
||||
(global-set-key [right-divider mouse-1] 'ignore)
|
||||
(global-set-key [right-divider C-mouse-2] 'mouse-split-window-vertically)
|
||||
(global-set-key [bottom-divider down-mouse-1] 'mouse-drag-mode-line)
|
||||
(global-set-key [bottom-divider mouse-1] 'ignore)
|
||||
(global-set-key [bottom-divider C-mouse-2] 'mouse-split-window-horizontally)
|
||||
(global-set-key [left-edge down-mouse-1] 'mouse-drag-left-edge)
|
||||
(global-set-key [left-edge mouse-1] 'ignore)
|
||||
(global-set-key [top-left-corner down-mouse-1] 'mouse-drag-top-left-corner)
|
||||
(global-set-key [top-left-corner mouse-1] 'ignore)
|
||||
(global-set-key [top-edge down-mouse-1] 'mouse-drag-top-edge)
|
||||
(global-set-key [top-edge mouse-1] 'ignore)
|
||||
(global-set-key [top-right-corner down-mouse-1] 'mouse-drag-top-right-corner)
|
||||
(global-set-key [top-right-corner mouse-1] 'ignore)
|
||||
(global-set-key [right-edge down-mouse-1] 'mouse-drag-right-edge)
|
||||
(global-set-key [right-edge mouse-1] 'ignore)
|
||||
(global-set-key [bottom-right-corner down-mouse-1] 'mouse-drag-bottom-right-corner)
|
||||
(global-set-key [bottom-right-corner mouse-1] 'ignore)
|
||||
(global-set-key [bottom-edge down-mouse-1] 'mouse-drag-bottom-edge)
|
||||
(global-set-key [bottom-edge mouse-1] 'ignore)
|
||||
(global-set-key [bottom-left-corner down-mouse-1] 'mouse-drag-bottom-left-corner)
|
||||
(global-set-key [bottom-left-corner mouse-1] 'ignore)
|
||||
(global-set-key [mode-line down-mouse-1] #'mouse-drag-mode-line)
|
||||
(global-set-key [mode-line mouse-1] #'mouse-select-window)
|
||||
(global-set-key [mode-line mouse-2] #'mouse-delete-other-windows)
|
||||
(global-set-key [mode-line mouse-3] #'mouse-delete-window)
|
||||
(global-set-key [mode-line C-mouse-2] #'mouse-split-window-horizontally)
|
||||
(global-set-key [vertical-scroll-bar C-mouse-2] #'mouse-split-window-vertically)
|
||||
(global-set-key [horizontal-scroll-bar C-mouse-2] #'mouse-split-window-horizontally)
|
||||
(global-set-key [vertical-line down-mouse-1] #'mouse-drag-vertical-line)
|
||||
(global-set-key [vertical-line mouse-1] #'mouse-select-window)
|
||||
(global-set-key [vertical-line C-mouse-2] #'mouse-split-window-vertically)
|
||||
(global-set-key [right-divider down-mouse-1] #'mouse-drag-vertical-line)
|
||||
(global-set-key [right-divider mouse-1] #'ignore)
|
||||
(global-set-key [right-divider C-mouse-2] #'mouse-split-window-vertically)
|
||||
(global-set-key [bottom-divider down-mouse-1] #'mouse-drag-mode-line)
|
||||
(global-set-key [bottom-divider mouse-1] #'ignore)
|
||||
(global-set-key [bottom-divider C-mouse-2] #'mouse-split-window-horizontally)
|
||||
(global-set-key [left-edge down-mouse-1] #'mouse-drag-left-edge)
|
||||
(global-set-key [left-edge mouse-1] #'ignore)
|
||||
(global-set-key [top-left-corner down-mouse-1] #'mouse-drag-top-left-corner)
|
||||
(global-set-key [top-left-corner mouse-1] #'ignore)
|
||||
(global-set-key [top-edge down-mouse-1] #'mouse-drag-top-edge)
|
||||
(global-set-key [top-edge mouse-1] #'ignore)
|
||||
(global-set-key [top-right-corner down-mouse-1] #'mouse-drag-top-right-corner)
|
||||
(global-set-key [top-right-corner mouse-1] #'ignore)
|
||||
(global-set-key [right-edge down-mouse-1] #'mouse-drag-right-edge)
|
||||
(global-set-key [right-edge mouse-1] #'ignore)
|
||||
(global-set-key [bottom-right-corner down-mouse-1] #'mouse-drag-bottom-right-corner)
|
||||
(global-set-key [bottom-right-corner mouse-1] #'ignore)
|
||||
(global-set-key [bottom-edge down-mouse-1] #'mouse-drag-bottom-edge)
|
||||
(global-set-key [bottom-edge mouse-1] #'ignore)
|
||||
(global-set-key [bottom-left-corner down-mouse-1] #'mouse-drag-bottom-left-corner)
|
||||
(global-set-key [bottom-left-corner mouse-1] #'ignore)
|
||||
|
||||
(provide 'mouse)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue