Function: hmouse-get-bindings
hmouse-get-bindings is a byte-compiled function defined in
hmouse-sh.el.
Signature
(hmouse-get-bindings MIDDLE-FLAG)
Documentation
Return the list of active bindings of mouse keys used by Hyperbole.
If MIDDLE-FLAG is non-nil, include the middle mouse key binding as well. These may be the bindings prior to initializing Hyperbole or the Hyperbole bindings.
Source Code
;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hmouse-sh.el
(defun hmouse-get-bindings (middle-flag)
"Return the list of active bindings of mouse keys used by Hyperbole.
If MIDDLE-FLAG is non-nil, include the middle mouse key
binding as well. These may be the bindings prior to initializing
Hyperbole or the Hyperbole bindings."
;; Do nothing when running in batch mode.
(unless noninteractive
(nconc
(when middle-flag (hmouse-get-unshifted-bindings))
;; Get mouse bindings under Emacs, even if not under a window
;; system, since there can be frames on ttys and windowed
;; displays at the same time.
(mapcar (lambda (key) (cons key (key-binding key)))
(if (eq window-system 'dps)
;; NEXTSTEP offers only 2 shift-mouse buttons which we use
;; as the Smart Keys.
'([S-down-mouse-1] [S-drag-mouse-1] [S-mouse-1]
[S-down-mouse-2] [S-drag-mouse-2] [S-mouse-2]
[S-double-mouse-1] [S-triple-mouse-1]
[S-double-mouse-2] [S-triple-mouse-2]
[header-line S-down-mouse-1] [header-line S-drag-mouse-1]
[header-line S-mouse-1]
[header-line S-down-mouse-2] [header-line S-drag-mouse-2]
[header-line S-mouse-2]
[left-fringe S-down-mouse-1] [left-fringe S-drag-mouse-1]
[left-fringe S-mouse-1]
[left-fringe S-down-mouse-2] [left-fringe S-drag-mouse-2]
[left-fringe S-mouse-2]
[right-fringe S-down-mouse-1] [right-fringe S-drag-mouse-1]
[right-fringe S-mouse-1]
[right-fringe S-down-mouse-2] [right-fringe S-drag-mouse-2]
[right-fringe S-mouse-2]
[vertical-line S-down-mouse-1] [vertical-line S-drag-mouse-1]
[vertical-line S-mouse-1]
[vertical-line S-down-mouse-2] [vertical-line S-drag-mouse-2]
[vertical-line S-mouse-2]
[mode-line S-down-mouse-1] [mode-line S-drag-mouse-1]
[mode-line S-mouse-1]
[mode-line S-down-mouse-2] [mode-line S-drag-mouse-2]
[mode-line S-mouse-2])
;; X, macOS or MS Windows
'([S-down-mouse-2] [S-drag-mouse-2] [S-mouse-2]
[S-down-mouse-3] [S-drag-mouse-3] [S-mouse-3]
[S-double-mouse-2] [S-triple-mouse-2]
[S-double-mouse-3] [S-triple-mouse-3]
[header-line S-down-mouse-2] [header-line S-drag-mouse-2]
[header-line S-mouse-2]
[header-line S-down-mouse-3] [header-line S-drag-mouse-3]
[header-line S-mouse-3]
[left-fringe S-down-mouse-2] [left-fringe S-drag-mouse-2]
[left-fringe S-mouse-2]
[left-fringe S-down-mouse-3] [left-fringe S-drag-mouse-3]
[left-fringe S-mouse-3]
[right-fringe S-down-mouse-2] [right-fringe S-drag-mouse-2]
[right-fringe S-mouse-2]
[right-fringe S-down-mouse-3] [right-fringe S-drag-mouse-3]
[right-fringe S-mouse-3]
[vertical-line S-down-mouse-2] [vertical-line S-drag-mouse-2]
[vertical-line S-mouse-2]
[vertical-line S-down-mouse-3] [vertical-line S-drag-mouse-3]
[vertical-line S-mouse-3]
[mode-line S-down-mouse-2] [mode-line S-drag-mouse-2]
[mode-line S-mouse-2]
[mode-line S-down-mouse-3] [mode-line S-drag-mouse-3]
[mode-line S-mouse-3])))
(nconc
(mapcar (lambda (key)
(cons key (key-binding key)))
'([(shift button2)] [(shift button2up)]
[(shift button3)] [(shift button3up)]))
(when (boundp 'mode-line-map)
(mapcar (lambda (key)
(cons key (lookup-key mode-line-map key)))
'([(shift button3)] [(shift button3up)])))))))