%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/obsolete/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/obsolete/mouse-sel.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\301%\210\310\311\312\313\314\315\307\304&\210\310\316\312\317\314\315\307\304&\210\310\320\312\321\314\322\307\304&\207" [require mouse thingatpt custom-declare-group mouse-sel nil "Mouse selection enhancement." :group custom-declare-variable mouse-sel-leave-point-near-mouse t "Leave point near last mouse position.\nIf non-nil, \\[mouse-select] and \\[mouse-extend] will leave point at the end\nof the region nearest to where the mouse last was.\nIf nil, point will always be placed at the beginning of the region." :type boolean mouse-sel-cycle-clicks "If non-nil, \\[mouse-select] cycles the click-counts after 4 clicks." mouse-sel-default-bindings "Control mouse bindings." (choice (const :tag "none" nil) (const :tag "cut and paste" interprogram-cut-paste) (other :tag "default bindings" t))] 8)
#@49 An alist of events that `mouse-sel-mode' binds.
(defconst mouse-sel-bound-events '(([mouse-1] . ignore) ([drag-mouse-1] . ignore) ([mouse-3] . ignore) ([down-mouse-1] . mouse-select) ([down-mouse-3] . mouse-extend) ([mouse-2] . mouse-insert-selection) ([M-mouse-1] . ignore) ([M-drag-mouse-1] . ignore) ([M-mouse-3] . ignore) ([M-down-mouse-1] . mouse-select-secondary) ([M-mouse-2] . mouse-insert-secondary) ([M-down-mouse-3] . mouse-extend-secondary)) (#$ . 1272))
(defvar mouse-sel-original-bindings nil)
(byte-code "\300\301\302\"\210\303\304\305\306\307\310\311\312\313\314\315\316&\207" [defalias mouse-sel--ignore ignore custom-declare-variable mouse-sel-mode nil "Non-nil if Mouse-Sel mode is enabled.\nSee the `mouse-sel-mode' command\nfor a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `mouse-sel-mode'." :set custom-set-minor-mode :initialize custom-initialize-default :group mouse-sel :type boolean] 12)
#@1143 Toggle Mouse Sel mode.

If called interactively, enable Mouse-Sel mode if ARG is positive, and
disable it if ARG is zero or negative.  If called from Lisp, also
enable the mode if ARG is omitted or nil, and toggle it if ARG is
`toggle'; disable the mode otherwise.

Mouse Sel mode is a global minor mode.  When enabled, mouse
selection is enhanced in various ways:

- Double-clicking on symbol constituents selects symbols.
Double-clicking on quotes or parentheses selects sexps.
Double-clicking on whitespace selects whitespace.
Triple-clicking selects lines.
Quad-clicking selects paragraphs.

- Selecting sets the region & X primary selection, but does NOT affect
the `kill-ring', nor do the kill-ring functions change the X selection.
Because the mouse handlers set the primary selection directly,
mouse-sel sets the variables `interprogram-cut-function' and
`interprogram-paste-function' to nil.

- Clicking mouse-2 inserts the contents of the primary selection at
the mouse position (or point, if `mouse-yank-at-point' is non-nil).

- mouse-2 while selecting or extending copies selection to the
kill ring; mouse-1 or mouse-3 kills it.
(defalias 'mouse-sel-mode #[(&optional arg) "\306 \307\302	\310=\203\311\302!?\202\312	!\313V\"\210\n\203L\314\315\316\317#\210\320\321\322\"\210\203\241\323\324\f\"\325=\204\241\326\327\330\331B\332\333$\210\326\327\334\335B\332\333$\210\202\241\336\321\322\"\210
\3330\2111\203r1@0\3370@0A\"\2101A\2111\204[*\340\311\341!\332\"\2112\311\341!=\204\211\307\3412\"\210)\340\311\342!\332\"\2113\311\342!=\204\240\307\3423\"\210)\343\344\311\302!\203\255\345\202\256\346\"\210\347\350!\203\333\351\302!\210\306 \203\306\306 \232\203\333\3524\353\354\311\302!\203\325\355\202\326\3564#\210))\357 \210\311\302!\207" [#1=#:last-message arg mouse-sel-mode mouse-sel-default-bindings mouse-sel-bound-events mouse-sel-original-bindings current-message set-default toggle default-value prefix-numeric-value 0 put mouse-2 event-kind mouse-click add-hook x-lost-selection-functions mouse-sel-lost-selection-hook mapcar #[(binding) "@\211\303\n	\"B\304	A\"\210)\207" [binding event global-map lookup-key global-set-key] 5] interprogram-cut-paste advice--add-function :override #[nil "\300\301!\207" [default-value interprogram-cut-function] 2] #[#2=(gv--val) "\301\302\"\207" [gv--val set-default interprogram-cut-function] 3] mouse-sel--ignore nil #[nil "\300\301!\207" [default-value interprogram-paste-function] 2] #[#2# "\301\302\"\207" [gv--val set-default interprogram-paste-function] 3] remove-hook global-set-key advice--remove-function interprogram-cut-function interprogram-paste-function run-hooks mouse-sel-mode-hook mouse-sel-mode-on-hook mouse-sel-mode-off-hook called-interactively-p any customize-mark-as-set "" message "Mouse-Sel mode %sabled%s" "en" "dis" force-mode-line-update binding --dolist-tail-- #3=#:new #4=#:new local] 6 (#$ . 2322) (list (or current-prefix-arg 'toggle))])
(defvar mouse-sel-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\307\211%\210\311\306\312\313#\207" [mouse-sel-mode-map mouse-sel-mode-hook variable-documentation put "Hook run after entering or leaving `mouse-sel-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode mouse-sel-mode nil boundp make-obsolete "use the normal mouse modes" "24.3"] 6)
#@46 Type of PRIMARY selection in current buffer.
(defvar mouse-sel-primary-thing nil (#$ . 5791))
(make-variable-buffer-local 'mouse-sel-primary-thing)
#@48 Type of SECONDARY selection in current buffer.
(defvar mouse-sel-secondary-thing nil (#$ . 5945))
(byte-code "\301\302!\210\303!\204\304\305\211\"\306\307\310#\210\301\207" [mouse-secondary-overlay make-variable-buffer-local mouse-sel-secondary-thing overlayp make-overlay 1 overlay-put face secondary-selection] 4)
#@94 An overlay which records the current primary selection.
This is used by Mouse Sel mode only.
(defconst mouse-sel-primary-overlay (byte-code "\301ee\"\302!\210\303\304\305#\210)\207" [ol make-overlay delete-overlay overlay-put face region] 4) (#$ . 6272))
#@385 Alist associating selections with variables.
Each element is of the form:

   (SELECTION-NAME OVERLAY-SYMBOL SELECTION-THING-SYMBOL)

where   SELECTION-NAME          = name of selection
        OVERLAY-SYMBOL          = name of variable containing overlay to use
	SELECTION-THING-SYMBOL 	= name of variable where the current selection
 				  type for this selection should be stored.
(defconst mouse-sel-selection-alist '((PRIMARY mouse-sel-primary-overlay mouse-sel-primary-thing) (SECONDARY mouse-secondary-overlay mouse-sel-secondary-thing)) (#$ . 6538))
#@237 Function to call to set selection.
Called with two arguments:

  SELECTION, the name of the selection concerned, and
  VALUE, the text to store.

This sets the selection, unless `mouse-sel-default-bindings'
is `interprogram-cut-paste'.
(defvar mouse-sel-set-selection-function (byte-code "\301=\203\302\207\303\207" [mouse-sel-default-bindings interprogram-cut-paste gui-set-selection #[(selection value) "\302=\203\n\303	!\207\304	\"\207" [selection value PRIMARY gui-select-text gui-set-selection] 3]] 2) (#$ . 7103))
#@118 Function to call to get the selection.
Called with one argument:

   SELECTION: the name of the selection concerned.
(defvar mouse-sel-get-selection-function #[(selection) "\303=\203\304 \206\305\301!\203	\206\n\207\306!\207" [selection x-last-selected-text-primary gui--last-selected-text-primary PRIMARY gui-selection-value boundp gui-get-selection] 2] (#$ . 7636))
#@519 Determine what `thing' `mouse-sel' should operate on.
The first argument is NCLICKS, is the number of consecutive
mouse clicks at the same position.

Double-clicking on word constituents selects words.
Double-clicking on symbol constituents selects symbols.
Double-clicking on quotes or parentheses selects sexps.
Double-clicking on whitespace selects whitespace.
Triple-clicking selects lines.
Quad-clicking selects paragraphs.

Feel free to re-define this function to support your own desired
multi-click semantics.
(defalias 'mouse-sel-determine-selection-thing #[(nclicks) "`f\211\205	z\n\203S\304\246T\305U\203\306\202[\307U\203(\310\202[\304Y\2032\311\202[	\312>\203<\313\202[\314>\203F\315\202[	\316\267\202T\317\202[\320\202[\314>\205[\315*\207" [next-char char-syntax mouse-sel-cycle-clicks nclicks 4 1 nil 3 line paragraph (40 41 34 39) sexp (32 9 10) whitespace #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (95 76 119 80)) symbol word] 3 (#$ . 8021)])
#@39 Set the specified SELECTION to VALUE.
(defalias 'mouse-sel-set-selection #[(selection value) "\203		\n\"\207\303\304	\n#\207" [mouse-sel-set-selection-function selection value put mouse-sel-internal-selection] 4 (#$ . 9058)])
#@43 Get the value of the specified SELECTION.
(defalias 'mouse-sel-get-selection #[(selection) "\203	!\207\302	N\207" [mouse-sel-get-selection-function selection mouse-sel-internal-selection] 2 (#$ . 9293)])
#@44 Return overlay corresponding to SELECTION.
(defalias 'mouse-sel-selection-overlay #[(selection) "\303	\"A@\211\204\304\305\"\210\nJ)\207" [selection mouse-sel-selection-alist symbol assoc error "No overlay corresponding to %s selection"] 4 (#$ . 9507)])
#@44 Return overlay corresponding to SELECTION.
(defalias 'mouse-sel-selection-thing #[(selection) "\303\304	\"8\211\204\305\306\"\210\n)\207" [selection mouse-sel-selection-alist symbol 2 assoc error "No symbol corresponding to %s selection"] 5 (#$ . 9772)])
#@223 Convert region to PRIMARY overlay and deactivate region.
Argument ORIG-WINDOW specifies the window the cursor was in when the
originating command was issued, and is used to determine whether the
region was visible or not.
(defalias 'mouse-sel-region-to-primary #[(orig-window) "\205<\305\306!\n\203#\204\f\307 =\203#\310	\311 \312 p$\210\2028\f\307 =\2034\310	``p$\210\2028\313	!\210\314\211)\207" [transient-mark-mode overlay mark-active highlight-nonselected-windows orig-window mouse-sel-selection-overlay PRIMARY selected-window move-overlay region-beginning region-end delete-overlay nil] 5 (#$ . 10039)])
#@205 Convert PRIMARY overlay to region.
Optional argument DIRECTION specifies the mouse drag direction: a value of
1 indicates that the mouse was dragged left-to-right, otherwise it was
dragged right-to-left.
(defalias 'mouse-sel-primary-to-region #[(&optional direction) "\306\307!\310!\311!	\n=\203	\203	b\210\312 \210\202>\2035\f\313=\2035\nb\210\314	\315\316#\210\202>	b\210\314\n\315\316#\210
\205E\317!+\207" [overlay start end mouse-sel-leave-point-near-mouse direction transient-mark-mode mouse-sel-selection-overlay PRIMARY overlay-start overlay-end deactivate-mark 1 push-mark nomsg active delete-overlay] 4 (#$ . 10669)])
#@124 Evaluate forms at mouse position.
Move to the end position of EVENT, execute FORMS, and restore original
point and window.
(defalias 'mouse-sel-eval-at-event-end '(macro . #[(event &rest forms) "\302\303\304DDC\305\303\306DE\307\302\310\311\312\313\314\315\316	B\317BB\257\257\207" [event forms let posn event-end if mouse-minibuffer-check (if (and posn (not (windowp (posn-window posn)))) (error "Cursor not in text area of window")) (orig-window orig-point-marker) (setq orig-window (selected-window)) (if posn (select-window (posn-window posn))) (setq orig-point-marker (point-marker)) (if (and posn (numberp (posn-point posn))) (goto-char (posn-point posn))) unwind-protect progn ((goto-char (marker-position orig-point-marker)) (move-marker orig-point-marker nil) (select-window orig-window))] 13 (#$ . 11320)]))
(put 'mouse-sel-eval-at-event-end 'lisp-indent-hook 1)
#@391 Set region/selection using the mouse.

Click sets point & mark to click position.
Dragging extends region/selection.

Multi-clicking selects word/lines/paragraphs, as determined by
'mouse-sel-determine-selection-thing.

Clicking mouse-2 while selecting copies selected text to the kill-ring.
Clicking mouse-1 or mouse-3 kills the selected text.

This should be bound to a down-mouse event.
(defalias 'mouse-select #[(event) "\302\303\216\304\305	\"\211*\207" [select event nil #[nil "\203<\203\303	AB\nB\211\207\304!\207" [select event unread-command-events mouse-2 mouse-sel-primary-to-region] 2] mouse-select-internal PRIMARY] 3 (#$ . 12204) "@e"])
#@425 Set secondary selection using the mouse.

Click sets the start of the secondary selection to click position.
Dragging extends the secondary selection.

Multi-clicking selects word/lines/paragraphs, as determined by
'mouse-sel-determine-selection-thing.

Clicking mouse-2 while selecting copies selected text to the kill-ring.
Clicking mouse-1 or mouse-3 kills the selected text.

This should be bound to a down-mouse event.
(defalias 'mouse-select-secondary #[(event) "\301\302\"\207" [event mouse-select-internal SECONDARY] 3 (#$ . 12872) "e"])
#@433 Set SELECTION using the mouse, with EVENT as the initial down-event.
Normally, this returns the direction in which the selection was
made: a value of 1 indicates that the mouse was dragged
left-to-right, otherwise it was dragged right-to-left.

However, if `mouse-1-click-follows-link' is non-nil and the
subsequent mouse events specify following a link, this returns
the final mouse-event.  In that case, the selection is not set.
(defalias 'mouse-select-internal #[(selection event) "\306!\211\203\f\307!\210	\203\310	\211@\262!\204\311\312!\210\313\211\314 	\2031\315	\211@\262!\210\316 	\203D\317	!\247\203D\317	!b\210\320\216\321\f!\322\f!\211\323\211:\203f\3248\250\203f\3248\262\202i\325\262!L\210\326J!\211\203\205\327
@Ap$\210\202\214\327
``p$\210+\3302\227\331\f\332#0,\207" [event posn orig-point-marker orig-window selection overlay event-end mouse-minibuffer-check windowp error "Cursor not in text area of window" nil selected-window select-window point-marker posn-point #[nil "\302!b\210\303\211\223\210\304	!\207" [orig-point-marker orig-window marker-position nil select-window] 3] mouse-sel-selection-thing mouse-sel-selection-overlay mouse-sel-determine-selection-thing 2 1 bounds-of-thing-at-point move-overlay follow-link mouse-extend-internal t thing-symbol object-bounds] 6 (#$ . 13426)])
#@42 Extend region/selection using the mouse.
(defalias 'mouse-extend #[(event) "\303 \304\305\306\n!\211@\262!\210\307\216\310	!\210\311\312\n\"\211+\207" [direction orig-window event selected-window nil select-window event-end #[nil "\301!\207" [direction mouse-sel-primary-to-region] 2] mouse-sel-region-to-primary mouse-extend-internal PRIMARY] 3 (#$ . 14787) "e"])
#@45 Extend secondary selection using the mouse.
(defalias 'mouse-extend-secondary #[(event) "\302 \303\216\304\305	\"*\207" [#1=#:wconfig event current-window-configuration #[nil "\301!\207" [#1# set-window-configuration] 2] mouse-extend-internal SECONDARY] 3 (#$ . 15163) "e"])
#@314 Extend specified SELECTION using the mouse.
Track mouse-motion events, adjusting the SELECTION appropriately.
Optional argument INITIAL-EVENT specifies an initial down-mouse event.
Optional argument NO-PROCESS means not to process the initial
event.

See documentation for mouse-select-internal for more details.
(defalias 'mouse-extend-internal #[(selection &optional initial-event no-process) "\306!\211\203\f\307!\210	\203\310	\211@\262!\204\311\312!\210\313\211\314 	\2031\315	\211@\262!\210\316 	\203D\317	!\247\203D\317	!b\210\320\216\321\322\323\324 !\"A\325\216\326
!2\327
!3\314 \330!A@4\331\330!85\3136\3327\313\21189\313\211:;\3333!p=\203\226\3343!8\3353!9\202\241`\211892\313L\210\336\337!\203\255\337\324 \340\"\210\341\342!\210\343;\"\203\277\344\345;\"\210\3343!\3353!\211=\204\333\346
{\"\210\313<\347=!\350=\203\367\351\"\210\352 \210\352 \210\202B\347=!\353>\203!\354\355=!>\203!\356\"\210\3573\211#\210\352 \210\352 \210\202B\347=!\360=\203B\361\355=!>\203B\356\"\210\3573\211#\210+:.\207" [initial-event posn orig-point-marker orig-window orig-cursor-type selection event-end mouse-minibuffer-check windowp error "Cursor not in text area of window" nil selected-window select-window point-marker posn-point #[nil "\302!b\210\303\211\223\210\304	!\207" [orig-point-marker orig-window marker-position nil select-window] 3] assoc cursor-type frame-parameters selected-frame #[nil "\301\302!\205\302\303 \304BC\"\207" [orig-cursor-type fboundp modify-frame-parameters selected-frame cursor-type] 4] mouse-sel-selection-thing mouse-sel-selection-overlay window-edges 3 0 overlay-buffer overlay-start overlay-end fboundp modify-frame-parameters ((cursor-type . bar)) internal--track-mouse #[nil "\203	\204\211\306\202\307 \211:\205\225\n@\310>\205\225J\311\n!\n\242\312=\204\305\f\211@\262\203U\f\211@\262\313!\203J\314!\202L)\314!=\203\305\f\211@\262=\204\253\315 AA\211\203\207o\204\207W\203\207\316Z$\210\202\247\203\247m\204\247Y\203\247\316ZT$\210)\202\305\317\f!\320=\203\300\316\321$\210\202\305\317\f!b\210 \204\350=\204\350`\\\322\245W\203\342\323\202\343\321 \202
 \323=\204\374`X\203\374\323 \202
 \321=\204
`Y\203
\321 
\203q \321=\203m\204\321u\210`! \321=\203.\2020b\210\3241k !`Z_\325V\203K\326
 \"\210\2026`\326
 [\"\210 !`Z_\325V\203d\f\202e`b)0\202o\210\202p\210)\327 \321=\203\200\202\201` \323=\203\215\202\216`p$\210*\202\207" [initial-event no-process event thing-symbol end selection-thing nil read-event (mouse-movement switch-frame) event-end switch-frame windowp window-frame mouse-position mouse-scroll-subr posn-point mode-line 1 2 -1 (error) 0 forward-thing move-overlay posn-w orig-window end-row top overlay max bottom min direction goal] 6] mouse-sel-follow-link-p throw follow-link mouse-sel-set-selection event-basic-type mouse-2 copy-region-as-kill read-event (mouse-1 mouse-3) down event-modifiers kill-region move-overlay mouse-3 double thing-symbol overlay top bottom mark-active echo-keystrokes min max direction event this-command last-input-event] 5 (#$ . 15447)])
#@226 Return t if we should follow a link, given INITIAL and FINAL mouse events.
See `mouse-1-click-follows-link' for details.  Currently, Mouse
Sel mode does not support using a `double' value to follow links
using double-clicks.
(defalias 'mouse-sel-follow-link-p #[(initial final) "\205|	\205|\n\205|@\305=\205|\306\307!!\205|\310\307!!\310\311	!!U\205|\211:\203>\3128\250\203>\3128\262\202A\313\262\313U\205|\n\250?\206|\307!\3148\262\311	!\3148\262\211\250\205{\250\205{\n\315V\203v\fZ\nX\202{\fZ\nW*\207" [initial final mouse-1-click-follows-link t1 t0 down-mouse-1 mouse-on-link-p event-start posn-point event-end 2 1 3 0] 5 (#$ . 18726)])
#@124 Insert the contents of the PRIMARY selection at mouse click.
If `mouse-yank-at-point' is non-nil, insert at point instead.
(defalias 'mouse-insert-selection #[(event arg) "\303=\203\304	\n\"\207\305\306	\"\207" [mouse-sel-default-bindings event arg interprogram-cut-paste mouse-yank-at-click mouse-insert-selection-internal PRIMARY] 3 (#$ . 19408) "e\nP"])
#@126 Insert the contents of the SECONDARY selection at mouse click.
If `mouse-yank-at-point' is non-nil, insert at point instead.
(defalias 'mouse-insert-secondary #[(event) "\301\302\"\207" [event mouse-insert-selection-internal SECONDARY] 3 (#$ . 19775) "e"])
#@122 Insert the contents of the named SELECTION at mouse click.
If `mouse-yank-at-point' is non-nil, insert at point instead.
(defalias 'mouse-insert-selection-internal #[(selection event) "\204\304	!\210\n\205\305`\306\"\210\307\n!\206\310!\207" [mouse-yank-at-point event mouse-sel-get-selection-function selection mouse-set-point push-mark nomsg insert-for-yank ""] 3 (#$ . 20040)])
#@42 Remove the overlay for a lost selection.
(defalias 'mouse-sel-lost-selection-hook #[(selection) "\302!\303	!)\207" [selection overlay mouse-sel-selection-overlay delete-overlay] 2 (#$ . 20435)])
(provide 'mouse-sel)

Zerion Mini Shell 1.0