;ELC ;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:48:17 2003 ;;; from file /home/pot/gnu/emacs-pretest.new/lisp/mouse.el ;;; in Emacs version 21.3 ;;; with bytecomp version 2.85.4.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`mouse.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (put 'track-mouse 'lisp-indent-function 0) #@69 *If non-nil, mouse yank commands yank at point instead of at click. (custom-declare-variable 'mouse-yank-at-point 'nil '(#$ . -655) :type 'boolean :group 'mouse) #@310 Popup the given menu and call the selected option. MENU can be a keymap, an easymenu-style menu or a list of keymaps as for `x-popup-menu'. POSITION can be a click event or ((XOFFSET YOFFSET) WINDOW) and defaults to the current mouse position. PREFIX is the prefix argument (if any) to pass to the command. (defalias 'popup-menu #[(menu &optional position prefix) "\306!\203\n\202:<\203\306@!\203\202:\307@A\"\2119\205,\310 \311N\312\"\211\2038\n K!\2029 *\313\313 \204]\314 \211\211A@)\211AA)D@D) \203\276\315 \316 !\"\211\203\276\306 !\204\246 <\203\246\317\320 \"\313 \203\240\204\240\321 @\"\211\247\203\231\313 A\211\204\204*\202\255\321 \317\320 \"\"\322\323!\210\306\f!\205\271\f\211\204a ?\205\326\324\f!\205\326\325 !@\326\f!+\207" [menu map filter event cmd position keymapp easy-menu-create-menu plist-get menu-prop :filter nil mouse-pixel-position x-popup-menu indirect-function apply vector lookup-key message "" commandp last call-interactively mp x binding mouse-click prefix prefix-arg last-command-event] 6 (#$ . 824)]) (byte-code "\301B\301\207" [current-load-list mouse-major-mode-menu-prefix] 2) #@114 Pop up a mode-specific menu of mouse commands. Default to the Edit menu if the major mode doesn't define a menu. (defalias 'mouse-major-mode-menu #[(event prefix) "\306\307\310\"\210\311\312\313 \205\314\315!!\211\203\316\n\317P!\202 \311 \203+\320\f \"\210\321\f#,\207" [mouse-major-mode-menu-prefix ancestor mode-name menu-bar-edit-menu newmap result run-hooks activate-menubar-hook menu-bar-update-hook nil mouse-major-mode-menu-1 current-local-map local-key-binding [menu-bar] make-sparse-keymap " Mode" set-keymap-parent popup-menu event prefix] 5 (#$ . 2022) "@e\nP"]) (defalias 'mouse-major-mode-menu-1 #[(menubar) "\205;\304\211\203%\n@:\203 \203\305\202\n@\nA\211\204\f \305=\203/\202: @C\306\307 @!\"*\207" [menubar submap tail mouse-major-mode-menu-prefix nil t lookup-key vector] 5]) #@171 Pops up a menu equiavlent to the menu bar a keyboard EVENT with PREFIX. The contents are the items that would be in the menu bar whether or not it is actually displayed. (defalias 'mouse-popup-menubar #[(event prefix) "\306\307\310\"\210\311 \205\312\311 \313\"\312 \314\"\315\316\317\320!\"\205&\211A@)\n\211A@)\203B ;\204B\321\322PABB;\204O\321\323\nABB\324\325\nC\205YC ##-\207" [local-menu global-map global-menu minor-mode-menus x local-title-or-map run-hooks activate-menubar-hook menu-bar-update-hook current-local-map lookup-key [menu-bar] [menu-bar] mapcar #[(menu) "@A\211\211A@)\211;\204#\304\305\306\307\310\311 !#!\312PABB+\207" [menu minor-mode x title-or-map keymap capitalize subst-char-in-string 45 32 symbol-name " Menu"] 8] minor-mode-key-binding [menu-bar] keymap " Mode Menu" "Global Menu" popup-menu append global-title-or-map mode-name event prefix] 6 (#$ . 2861) "@e \nP"]) #@141 Popup a menu like either `mouse-major-mode-menu' or `mouse-popup-menubar'. Use the former if the menu bar is showing, otherwise the latter. (defalias 'mouse-popup-menubar-stuff #[(event prefix) "\302\303\304\305 \306\307$!\203\310 \"\207\311 \"\207" [event prefix zerop assoc-default menu-bar-lines frame-parameters eq 0 mouse-popup-menubar mouse-major-mode-menu] 6 (#$ . 3807) "@e \nP"]) (defalias 'mouse-minibuffer-check #[(event) "\3038)\304 8)\305\n!\203\306\n!\204\307\310!\210)\311\312!\207" [event position w 1 0 window-minibuffer-p minibuffer-window-active-p error "Minibuffer window is not active" run-hooks mouse-leave-buffer-hook] 2]) #@123 Delete the window you click on. Do nothing if the frame has just one window. This command must be bound to a mouse click. (defalias 'mouse-delete-window #[(click) "\303\304!?\205\305!\210\306\211A@)\211@)!\207" [click event position one-window-p t mouse-minibuffer-check delete-window] 3 (#$ . 4473) "e"]) #@49 Select the window clicked on; don't move point. (defalias 'mouse-select-window #[(click) "\305!\210\306 \307\310 8)\311\n8)!\312\310 8)\311\n8)!\210\313 !\210\314 !\210 \f=\2069\315\306 \316 S\311#*\207" [click event position frame oframe mouse-minibuffer-check selected-frame window-frame 1 0 select-window raise-frame select-frame set-mouse-position frame-width] 4 (#$ . 4791) "e"]) #@77 Delete the window clicked on, and create a new frame displaying its buffer. (defalias 'mouse-tear-off-window #[(click) "\306!\210\307 8)\310\n8)\311 !\312 \313 !\210\314\f!\210\315 !+\207" [click event position window buf frame mouse-minibuffer-check 1 0 window-buffer make-frame select-frame switch-to-buffer delete-window] 2 (#$ . 5192) "e"]) #@49 Delete all windows except the one you click on. (defalias 'mouse-delete-other-windows #[nil "\300 \207" [delete-other-windows] 1 (#$ . 5550) "@"]) #@157 Select Emacs window mouse is on, then split it vertically in half. The window is split at the line clicked on. This command must be bound to a mouse click. (defalias 'mouse-split-window-vertically #[(click) "\306!\210\307 8)\310\n\311 8)!\210\312\313 8:\203\"\313\202#\307 8)!AT\f\314 \fZ W\203@\315\316!\202I\317] ^!,\207" [click event start position window-min-height last-line mouse-minibuffer-check 1 select-window 0 posn-col-row 2 window-height error "Window too short to split" split-window-vertically first-line new-height] 4 (#$ . 5704) "@e"]) #@161 Select Emacs window mouse is on, then split it horizontally in half. The window is split at the column clicked on. This command must be bound to a mouse click. (defalias 'mouse-split-window-horizontally #[(click) "\306!\210\307 8)\310\n\311 8)!\210\312\313 8:\203\"\313\202#\307 8)!@T\f\314 \fZ W\203@\315\316!\202I\317] ^!,\207" [click event start position window-min-width last-col mouse-minibuffer-check 1 select-window 0 posn-col-row 2 window-width error "Window too narrow to split" split-window-horizontally first-col new-width] 4 (#$ . 6285) "@e"]) #@181 Change the height of a window by dragging on the mode or header line. START-EVENT is the starting mouse-event of the drag action. MODE-LINE-P non-nil means a mode line is dragged. (defalias 'mouse-drag-mode-line-1 #[(start-event mode-line-p) "\306\307!\210\310\311\n\312 8)\211\311 8)\313!\314\315!\316 \317\310\320\"\310\310\310\310\310\310\310\310\310\321 .\207" [done echo-keystrokes start-event event start position run-hooks mouse-leave-buffer-hook nil 0 1 window-frame count-windows t selected-window frame-parameter minibuffer (lambda nil (track-mouse (byte-code "\306!\210 \205\n\205\307\310!?\205\311 !A@\312\311 8U\f?\205&\313 \314  \250\2035\310\211\202 @\315=\204 @\316>\204T :\203N B\310\211\202@=\203A@\203AA\311 \211A@\3128\n\203\237Z\317Z W\203\223 \\\317\\Z\317Z!\202\270Z W\203\261 ZZ!\320 \"!\321U\204\321 \204\321\307\310!\203\321\322\323!\210 \203\376\306 !\210!\321V\203\361\324 !!Z\325W\203\361\324 !S!\326![!\210\306!\210\202\326!!\210#\327\310!U\203 \204\n\203\311 A@U\204\330\"!\210\202\207" [start-event-window minibuffer mode-line-p should-enlarge-minibuffer done event select-window one-window-p t window-edges 3 read-event mouse-position switch-frame (mouse-movement scroll-bar-movement) -1 current-window-configuration 0 error "Attempt to resize sole window" window-height 1 enlarge-window count-windows set-window-configuration mouse unread-command-events start-event-frame y edges top bot window-min-height growth wconfig start-nwindows] 4))) start-event-window start-event-frame start-nwindows old-selected-window should-enlarge-minibuffer mouse y top bot edges wconfig growth] 4 (#$ . 6870)]) #@61 Change the height of a window by dragging on the mode line. (defalias 'mouse-drag-mode-line #[(start-event) "\301\302\"\207" [start-event mouse-drag-mode-line-1 t] 3 (#$ . 8652) "e"]) #@167 Change the height of a window by dragging on the header line. Windows whose header-lines are at the top of the frame cannot be resized by dragging their header-line. (defalias 'mouse-drag-header-line #[(start-event) "\306 8)\211\307 8)\310\f!\311 !\f=\204-\312\f!A@\312!A@U\2031\313\314!\210\315\316\",\207" [start-event event start position window frame 1 0 window-frame frame-first-window window-edges error "Cannot move header-line at the top of the frame" mouse-drag-mode-line-1 nil first-window] 4 (#$ . 8844) "e"]) #@64 Change the width of a window by dragging on the vertical line. (defalias 'mouse-drag-vertical-line #[(start-event) "\306\307!\210\310\311\312\nA@@!\nA@@\313\314!\315 \310\310\310\310\310\310\310 \310!\316\317 !\236A\206>\320\"\321\314!\203J\322\323!\210\"\320=\203d\324\325\f!8\326 !U\203q\322\327!\210\202q\325\f!@\311U\203q\322\330!\210\331 .\207" [done echo-keystrokes start-event start-event-frame start-event-window start-nwindows run-hooks mouse-leave-buffer-hook nil 0 window-frame count-windows t selected-window vertical-scroll-bars frame-parameters right one-window-p error "Attempt to resize sole ordinary window" 2 window-edges frame-width "Attempt to drag rightmost scrollbar" "Attempt to drag leftmost scrollbar" (lambda nil (track-mouse (byte-code "\306!\210 ?\205\272\307 \310 \n\250\203\311\211\202\n@\312=\204\n@\313>\2047\n:\2031\n\fB\311\211\202 @ =\203 A@\203\314 \315\216\316=\204V\306\317 !\210 A@\316=\203d\320\202e\321Z\322 \211@\3218Z\323ZW\203\214\\\323\\Z\323Z\324 \325\311\"\210 \326\311!U\203\261\322 @U\204\266\327!\210*\202\207" [start-event-window done event mouse unread-command-events start-event-frame select-window read-event mouse-position t switch-frame (mouse-movement scroll-bar-movement) selected-window ((byte-code "\301!\203\n\302!\210\301\207" [save-selected-window-window window-live-p select-window] 2)) right previous-window 0 2 window-edges -1 current-window-configuration enlarge-window count-windows set-window-configuration save-selected-window-window which-side x edges left window-min-width growth wconfig start-nwindows] 4))) old-selected-window event mouse x left edges wconfig growth which-side] 3 (#$ . 9386) "e"]) #@105 Move point to the position clicked on with the mouse. This should be bound to a mouse click event type. (defalias 'mouse-set-point #[(event) "\303!\210\3048:\203\304\202\3058)\306 \307\n8)!\204%\310\311!\210\312 \307\n8)!\210 \305\n8:\203>\305\n8@\202A\305\n8)\247\205[ \305\n8:\203V\305\n8@\202Y\305\n8)b)\207" [event posn position mouse-minibuffer-check 2 1 windowp 0 error "Cursor not in text area of window" select-window] 3 (#$ . 11171) "e"]) (byte-code "\301B\304\301!\204\f\305\302B\304\302!\204\305\303B\304\303!\204$\305\305\207" [current-load-list mouse-last-region-beg mouse-last-region-end mouse-last-region-tick boundp nil] 2) #@73 Return non-nil if there's an active region that was set with the mouse. (defalias 'mouse-region-match #[nil "\304\305!\205\205 \306 =\205\n\307 =\205 \310 =\207" [mark-active mouse-last-region-beg mouse-last-region-end mouse-last-region-tick mark t region-beginning region-end buffer-modified-tick] 2 (#$ . 11850)]) #@109 Set the region to the text dragged over, and copy to kill ring. This should be bound to a mouse drag event. (defalias 'mouse-set-region #[(click) "\306!\210\307 8)\310 8:\203\310\202\307 8)\311 \312\f8)!\210 \307\f8:\2036\307\f8@\2029\307\f8)\247\203T \307\f8:\203N\307\f8@\202Q\307\f8)b\210 \204e\313\314 !\315>\204e\316\307!\210\317 \210\320`!\210\n\307\f8:\203|\307\f8@\202\307\f8)\247\203\232\n\307\f8:\203\224\307\f8@\202\227\307\f8)b\210\321\211\211\322\323 `\"\210+\324 *\207" [click event end posn position transient-mark-mode mouse-minibuffer-check 1 2 select-window 0 framep selected-frame (x pc w32) sit-for push-mark set-mark nil copy-region-as-kill mark mouse-set-region-1 deactivate-mark last-command this-command] 3 (#$ . 12182) "e"]) (defalias 'mouse-set-region-1 #[nil "\303 \304 \305 \211\207" [mouse-last-region-beg mouse-last-region-end mouse-last-region-tick region-beginning region-end buffer-modified-tick] 2]) #@438 *The pause between scroll steps caused by mouse drags, in seconds. If you drag the mouse beyond the edge of a window, Emacs scrolls the window to bring the text beyond that edge into view, with a delay of this many seconds between scroll steps. Scrolling stops when you move the mouse back into the window, or release the button. This variable's value may be non-integral. Setting this to zero causes Emacs to scroll as fast as it can. (custom-declare-variable 'mouse-scroll-delay '0.25 '(#$ . -13161) :type 'number :group 'mouse) #@379 *The minimum number of lines scrolled by dragging mouse out of window. Moving the mouse out the top or bottom edge of the window begins scrolling repeatedly. The number of lines scrolled per repetition is normally equal to the number of lines beyond the window edge that the mouse has moved. However, it always scrolls at least the number of lines specified by this variable. (custom-declare-variable 'mouse-scroll-min-lines '1 '(#$ . -13700) :type 'integer :group 'mouse) #@232 Scroll the window WINDOW, JUMP lines at a time, until new input arrives. If OVERLAY is an overlay, let it stretch from START to the far edge of the newly visible text. Upon exit, point is at the far edge of the newly visible text. (defalias 'mouse-scroll-subr #[(window jump &optional overlay start) "\306V\203 W\203 \202!\306W\203![ W\203! [`\307 !b\210\310\311 \"!\204{\312 `\"\210\313!\203[\314 !\203P\314 !b\210\311S \"\210\202`\311\315 !\316Z!\210\202`\307 !b\210\f\203j\317\f `#\210 \320 =\204t\nb\210\321!\204# \320 =\206\204\nb)\207" [jump mouse-scroll-min-lines opoint window overlay start 0 window-start zerop vertical-motion set-window-start natnump window-end window-height 2 move-overlay selected-window sit-for mouse-scroll-delay] 4 (#$ . 14182)]) (byte-code "\301B\304\301!\204\305\306\211\"\307 !\210\310 \311\312#\210\302B\304\302!\204%\313\303B\304\303!\2041\314\314\207" [current-load-list mouse-drag-overlay mouse-selection-click-count mouse-selection-click-count-buffer boundp make-overlay 1 delete-overlay overlay-put face region 0 nil] 4) #@292 Set the region to the text that the mouse is dragged over. Highlight the drag area as you move the mouse. This must be bound to a button-down mouse event. In Transient Mark mode, the highlighting remains as long as the mark remains active. Otherwise, it remains until the next input event. (defalias 'mouse-drag-region #[(start-event) "\306!\210\307\310\n8)\211\310\f8:\203\310\f8@\202 \310\f8) \307\f8)'\311'!(\312'!)\313'!\211*A@+\314'!\203O\315*8\202T\315*8S,\316\n8\250\203e\316\n8\202f\310)S\211-.p/\317!\210` W\203} b\210`\320 \211-#0\32110@0A@\322'!$\210)2\203\244\3233\324\325!\210\323\211\211\211`4567\326 \210\327\330\n\242!>\203'\n\316\n8:\203\313\316\202\314\310\n8)\2117\310\f8:\203\341\310\f8@\202\344\310\f8)\2116\203'7\307\f8)'=\203'\3316!\203' b\2106b\210\332-\315\246!\203`4\320 `-#0\32110@0A@#\210)\n:\203\333\334\n@!!8\3351!\3361!U\204\364\n\316\n8:\203M\316\202N\310\n8)\310\f8:\203`\310\f8@\202c\310\f8)\247\203\217\n\316\n8:\203u\316\202v\310\n8)\310\f8:\203\210\310\f8@\202\213\310\f8)\202\2215\2119\203\2459 W\203\245\3351!\202\251\3361!:\3361!\3351!\\:Z;\323<\323=\337;\340\211#\210:b\210\323>\341`\342\340!\"\210)p?\343 \210\342\340!\205\3573\205\357?p=\205\357\344 .\202\3451!\210\3468!\205)\312'!U\205\n@B\211@)\202\3451!.\207" [start-event echo-keystrokes event start-posn position start-point mouse-minibuffer-check 0 1 window-frame window-hscroll window-edges window-minibuffer-p 3 2 mouse-set-point mouse-start-end move-overlay window-buffer nil run-hooks deactivate-mark-hook (lambda nil (track-mouse (byte-code "\306 \211\211:\205 @\307=)\204\242\310=\205\325\242\310=\204\3118:\203-\311\202.\3128)\211\211A@:\203B A@@\202E A@)\211\247\203N\f\n\211@)=\203\213\313\f!\203\213b\210\fb\210\314\315\246!\203r`\316`#\317@A@#\210)\202\320 AA\211\203\321W\203\264\321Z$\210\322!\202\321Y\203\321\321ZT$\210\323!)\202\207" [event object end position end-point last-end-point read-event mouse-movement switch-frame 2 1 integer-or-marker-p zerop 3 mouse-start-end move-overlay mouse-position mouse-scroll-subr overlay-start overlay-end start-window start-point click-count end-of-range range mouse-drag-overlay mouse-row top bottom] 6))) drag event-modifiers integer-or-marker-p zerop key-binding vector overlay-start overlay-end push-mark t copy-region-as-kill mark mouse-show-mark mouse-set-region-1 delete-overlay functionp start-window start-frame start-hscroll bounds top bottom click-count mouse-selection-click-count mouse-selection-click-count-buffer range mouse-drag-overlay transient-mark-mode mark-active end-of-range last-end-point end-point end fun stop-point region-termination region-commencement last-command this-command deactivate-mark buffer unread-command-events] 7 (#$ . 15292) "e"]) #@126 Skip over word, over whitespace, or over identical punctuation. If DIR is positive skip forward; if negative, skip backward. (defalias 'mouse-skip-word #[(dir) "g\303z!\211\304\230\2031\n\305W\203\306\307!?\205\211\310v\202\211\306\307!\204,\306\311!?\205\211\312v\202\211 \313\230\203I\n\305W\203C\314 !\202\211\315 !\202\211 \316\230\203a\n\305W\203[\314\317!\202\211\315\317!\202\211\n\305W\203xo?\205\211hU\205\211\310u\210\202gm?\205\211gU\205\211\312u\210\202x*\207" [char syntax dir char-to-string "w" 0 looking-at "\\<" -1 "\\>" 1 " " skip-syntax-backward skip-syntax-forward "_" "w_"] 3 (#$ . 18260)]) (defalias 'mouse-start-end #[(start end mode) " V\203  \n)\305 \306\"\211\307U\203 D\207 \310U\203B U\203Bf\203Bfz\311U\203B\212b\210\312\310!\210`)D\207 \310U\203j U\203jf\203jfz\313U\203j\212Tb\210\314\310!\210`)TD\207 \310U\203\255 U\203\255f\203\255fz\315U\203\255e=\206\222\212Sb\210\316\317!)\211\203\242\212\320\321\322\217)D\202\253\212\320\323\324\217)TD)\207 \310U\203\311\212b\210\325\326!\210`)\212 b\210\325\310!\210`)D\207 \327U\205\343\212b\210\330\310!\210`)\212 b\210\310y\210`)D\207" [start end temp mode open mod 3 0 1 40 forward-sexp 41 backward-sexp 34 looking-at "\\s(\\|\\s \\|\\s>" nil (byte-code "b\210\301\302!\210`\207" [start forward-sexp 1] 2) ((error end)) (byte-code "Tb\210\301\302!\210`\207" [start backward-sexp 1] 2) ((error end)) mouse-skip-word -1 2 beginning-of-line] 5]) (defalias 'mouse-set-mark-fast #[(click) "\304!\210\305 8)\306\n\307 8)!\210\n\305 8:\203$\305 8@\202'\305 8)\247\205D\310\n\305 8:\203=\305 8@\202@\305 8)\311\211#)\207" [click event posn position mouse-minibuffer-check 1 select-window 0 push-mark t] 4]) (defalias 'mouse-undouble-last-event #[(events) "GS\211\233\211@\306 !\307 !\310\311\310\312\313 !\"\" :\2031\314\315\fB!! AB\2022 \n\240\210 \232\204M\316\317\320\"!\203M\321\202R\n \240\210\322.\207" [events index last event basic old-modifiers event-basic-type event-modifiers delq double triple copy-sequence event-convert-list reverse key-binding apply vector t nil modifiers new] 7]) #@64 List of keys which shall cause the mouse region to be deleted. (defvar mouse-region-delete-keys '([delete]) (#$ . 20446)) (defalias 'mouse-show-mark #[nil "\203\306 !\207\307\310\311\211\211\211\211\312\302\313\"\210\314 `\315\307!#\210\316\317\215\210 \204F\f\235\203@\320 !\321 !|\210\202F \244\311\306 !\210.\212\315\307!b\210\322\323!)\207" [transient-mark-mode mouse-drag-overlay x-lost-selection-hooks ignore key events delete-overlay t 0 nil add-hook #[(seltype) "\302=\205\f\303\304\305\303\"\207" [seltype ignore PRIMARY t throw mouse-show-mark] 3] move-overlay mark mouse-show-mark (byte-code "\306 \307 C\"\310\311 \":\203@\312=\204b:\203H\3138:\203,\313\202-\3148)\314 8:\203?\314 8@\202B\314 8)\315=\204b\316\317!>\203\260\320\n!\204\260\321 !\204\260\n\f\235\204\260:\203@\312=\204\227\3138:\203{\313\202|\3148)\314 8:\203\216\314 8@\202\221\314 8)\315=\203\311\315\"\320 !\203\254\322\320 !\323 #\210\323)\202\323\207" [event events key position mouse-region-delete-keys keys read-event append apply vector switch-frame 2 1 vertical-scroll-bar down event-modifiers key-binding mouse-undouble-last-event call-interactively nil] 4) overlay-start overlay-end sit-for 1 event echo-keystrokes inhibit-quit mouse-region-delete-keys unread-command-events quit-flag] 7]) #@136 Set mark at the position clicked on with the mouse. Display cursor at that position for a second. This must be bound to a mouse click. (defalias 'mouse-set-mark #[(click) "\305!\210\306\307 8)\310\n8)!\210`\311\216\312!\210\313\314\315\211#\210\f\206'\316\307!*\207" [click event position point-save transient-mark-mode mouse-minibuffer-check select-window 1 0 ((goto-char point-save)) mouse-set-point push-mark nil t sit-for] 4 (#$ . 21807) "e"]) #@112 Kill the region between point and the mouse click. The text is saved in the kill ring, as with \[kill-region]. (defalias 'mouse-kill #[(click) "\305!\210\306 8)\211\306 8:\203\306 8@\202\306 8)\307\n\310 8)!\210\f\247\2056\311`\f^`\f]\"*\207" [click event posn position click-posn mouse-minibuffer-check 1 select-window 0 kill-region] 5 (#$ . 22269) "e"]) #@307 Insert the last stretch of killed text at the position clicked on. Also move point to one end of the text thus inserted (normally the end), and set mark at the beginning.. Prefix arguments are interpreted as with \[yank]. If `mouse-yank-at-point' is non-nil, insert at point regardless of where you click. (defalias 'mouse-yank-at-click #[(click arg) "\305\306!\210\204\f\307 !\210\310\311\310\f!\207" [mouse-yank-at-point click this-command mouse-selection-click-count arg run-hooks mouse-leave-buffer-hook mouse-set-point yank 0] 2 (#$ . 22644) "e\nP"]) #@134 Copy the region between point and the mouse click in the kill ring. This does not delete the region; it acts like \[kill-ring-save]. (defalias 'mouse-kill-ring-save #[(click) "\303!\210\304\211\305`\306\307!\"\210*\310 \207" [click last-command this-command mouse-set-mark-fast nil kill-ring-save mark t mouse-show-mark] 4 (#$ . 23211) "e"]) (byte-code "\301B\302\301!\204\f\303\303\207" [current-load-list mouse-save-then-kill-posn boundp nil] 2) (defalias 'mouse-save-then-kill-delete-region #[(beg end) "\306 \210 U\204\n\307=\203 |\210\202x\310\211\211 V\203&\311\202'\312\\|\210*\n\310\211\313\311\n\"\210*\307 @G ] ^ZU\204K\314\315!\210 |\210)\n\211\203h@@;\204hA\211\204W\203w @ ^B\240\210)\306 \207" [beg end buffer-undo-list after-change-functions before-change-functions kill-ring undo-boundary t nil 1 -1 primitive-undo error "Lossage in mouse-save-then-kill-delete-region" tail] 5]) #@563 Save text to point in kill ring; the second time, kill the text. If the text between point and the mouse is the same as what's at the front of the kill ring, this deletes the text. Otherwise, it adds the text to the kill ring, like \[kill-ring-save], which prepares for a second click to delete the text. If you have selected words or lines, this command extends the selection through the word or line clicked on. If you do this again in a different position, it extends the selection again. If you do this twice in the same position, the selection is killed. (defalias 'mouse-save-then-kill #[(click) "r\306\307 8)\310\n8)!q\210 )\311!\210\307 8)\307\n8:\203,\307\n8@\202/\307\n8) \212\306\211A@)\211@)!q\210\312\313!\205W\314\315\"\310V\205Wp=)\203\302\316=\203m\243\243@\232\204\262\317\211# \320\312\313!Z!\320`Z!W\203\221\321 @!\210\202\227 A@b\210\322`\312\313!{\313\"\210\323 \210!@`E\324 )\202\234\325\312 `\"\210\310\326\211\202\234\316=\203\360\203\360@!@=\203\360A`D\232\203\360\325`\312 \"\210\326\211\202\234\316=\203\374\204\"\203#\204\327>\203v$\204#\204v\307 8)\211%\307\n8:\203/\307\n8@\2022\307\n8)&\330%\310\n8)!\210&\247\203f\320&`Z!\320&\312\313!Z!X\203^&b\210\202c\321&!\210\326'\322`\312\313!{\313\"\210\324 \210*\202\217\331!\210\f\203\201\fb\210\332 \210\322`\312\313!{!\210\324 \210\323 \210!@`E\211+\207" [click event position point-before-scroll before-scroll this-command window-buffer 1 0 mouse-minibuffer-check mark t mod 3 mouse-save-then-kill mouse-start-end abs set-mark kill-new mouse-set-region-1 mouse-show-mark mouse-save-then-kill-delete-region nil (mouse-drag-region mouse-set-region) select-window mouse-set-mark-fast exchange-point-and-mark click-posn mouse-selection-click-count mouse-selection-click-count-buffer last-command mouse-save-then-kill-posn range kill-ring mark-active transient-mark-mode mark-even-if-inactive posn new deactivate-mark] 6 (#$ . 24158) "e"]) (byte-code "\304\305\306\"\210\304\307\310\"\210\304\311\312\"\210\304\313\314\"\210\304\315\316\"\210\301B\317\301!\204%\320\302B\317\302!\2041\321\303B\317\303!\204=\320\320\207" [current-load-list mouse-secondary-overlay mouse-secondary-click-count mouse-secondary-start global-set-key [M-mouse-1] mouse-start-secondary [M-drag-mouse-1] mouse-set-secondary [M-down-mouse-1] mouse-drag-secondary [M-mouse-3] mouse-secondary-save-then-kill [M-mouse-2] mouse-yank-secondary boundp nil 0] 3) #@165 Set one end of the secondary selection to the position clicked on. Use \[mouse-secondary-save-then-kill] to set the other end and complete the secondary selection. (defalias 'mouse-start-secondary #[(click) "\306!\210\307 8)\212\310\n\311 8)!q\210\f\203\312\f!\210\n\307 8:\203.\307 8@\2021\307 8)\247\205T \204=\313  \n\307 8:\203N\307 8@\202Q\307 8)\314\223*\207" [click event posn position mouse-secondary-overlay mouse-secondary-start mouse-minibuffer-check 1 window-buffer 0 delete-overlay make-marker nil] 3 (#$ . 26703) "e"]) #@115 Set the secondary selection to the text that the mouse is dragged over. This must be bound to a mouse drag event. (defalias 'mouse-set-secondary #[(click) "\306!\210\307 8)\310\311 8:\203\311\202\307 8)\212\312\f\313 8)!q\210\f\307 8:\203:\307 8@\202=\307 8)\247\203W\f\307 8:\203R\307 8@\202U\307 8)\203y\314 \n\307 8:\203p\307 8@\202s\307 8)#\210\202\222\315 \n\307 8:\203\213\307 8@\202\216\307 8)\"\316\317\320#,\207" [click event end beg posn position mouse-minibuffer-check 1 nil 2 window-buffer 0 move-overlay make-overlay overlay-put face secondary-selection mouse-secondary-overlay] 5 (#$ . 27259) "e"]) #@243 Set the secondary selection to the text that the mouse is dragged over. Highlight the drag area as you move the mouse. This must be bound to a button-down mouse event. The function returns a non-nil value if it creates a secondary selection. (defalias 'mouse-drag-secondary #[(start-event) "\306!\210\307\310\n8)\211\310\f8:\203\310\f8@\202 \310\f8) \307\f8) \311 !!\312 !\211\"A@#\313 !\203I\314\"8\202N\314\"8S$\315\n8\250\203_\315\n8\202`\310)S%\212\316 !q\210%&'\204z\317``\"'\320'\321\322#\210\323%\314\"\307V\203\270\324 \211%#()\325\211\223\210\326'\310\211\316 !$\210\326'(@(A@\316 !$\210)\202\314)\204\301\327 )) \325\223\210\330'!\210\325\211\211*+\331 \210\n:\205\364\332)!\203\350\333\213\202\364\334\335\336'!\337'!{\". \207" [start-event echo-keystrokes event start-posn position start-point mouse-minibuffer-check 0 1 window-frame window-edges window-minibuffer-p 3 2 window-buffer make-overlay overlay-put face secondary-selection mod mouse-start-end nil move-overlay make-marker delete-overlay (lambda nil (track-mouse (byte-code "\306 \211\211:\205 @\307=)\204\242\310=\205\300\242\310=\204\3118:\203-\311\202.\3128)\211\211A@:\203B A@@\202E A@)\n\211@) =\203\204\313\f!\203\204\314\f#\fU\203n\315!\204\200\316\211\223\210\317@A@#\210)\202\320 AA\211\203\274W\203\246\321 Z$\210\202\274Y\203\274\321 ZT$\210)\202\207" [event object end position end-point start-window read-event mouse-movement switch-frame 2 1 integer-or-marker-p mouse-start-end marker-position nil move-overlay mouse-position mouse-scroll-subr start-point click-count range mouse-secondary-start mouse-secondary-overlay mouse-row top bottom] 6))) marker-position ((byte-code "\303!\210\304\305\306\"\210\307 !\210\212\nb\210\310\311!\210)\306\207" [mouse-secondary-overlay start-window mouse-secondary-start delete-overlay x-set-selection SECONDARY nil select-window sit-for 1] 3)) x-set-selection SECONDARY overlay-start overlay-end start-window start-frame bounds top bottom click-count mouse-secondary-click-count mouse-secondary-overlay range mouse-secondary-start end-point end] 7 (#$ . 27916) "e"]) #@188 Insert the secondary selection at the position clicked on. Move point to the end of the inserted text. If `mouse-yank-at-point' is non-nil, insert at point regardless of where you click. (defalias 'mouse-yank-secondary #[(click) "\302\303!\210\204\f\304 !\210\305\306!c\207" [mouse-yank-at-point click run-hooks mouse-leave-buffer-hook mouse-set-point x-get-selection SECONDARY] 2 (#$ . 30156) "e"]) #@310 Kill the text in the secondary selection. This is intended more as a keyboard command than as a mouse command but it can work as either one. The current buffer (in case of keyboard use), or the buffer clicked on, must be the one that the secondary selection is in. This requirement is to prevent accidents. (defalias 'mouse-kill-secondary #[nil "\304 \211\211GS\234\305\n! <\203\306\307\310 !!!\202p=\204$\311\312!\210*\313\212\305\n!q\210\314\315\n!\316\n!\"\210*\317\n!\210\313\211\207" [keys click mouse-secondary-overlay this-command this-command-keys overlay-buffer window-buffer posn-window event-start error "Select or click on the buffer where the secondary selection is" nil kill-region overlay-start overlay-end delete-overlay] 6 (#$ . 30565) nil]) #@737 Save text to point in kill ring; the second time, kill the text. You must use this in a buffer where you have recently done \[mouse-start-secondary]. If the text between where you did \[mouse-start-secondary] and where you use this command matches the text at the front of the kill ring, this command deletes the text. Otherwise, it adds the text to the kill ring, like \[kill-ring-save], which prepares for a second click with this command to delete the text. If you have already made a secondary selection in that buffer, this command extends or retracts the selection to where you click. If you do this again in a different position, it extends or retracts again. If you do this twice in the same position, it kills the selection. (defalias 'mouse-secondary-save-then-kill #[(click) "\306!\210\307 8)\307 8)\307\n8:\203\307\n8@\202\"\307\n8) \310\311 !!$\2038\312$!\206A%\205A\313%!=\204I\314\315!\210\212\310 \316\n8)!q\210\317&\320\"\316V\203\331'\321=\203o\f(\243\243@\232\204\300\322\f\211&#)\323\f\324$!Z!\323\f\325$!Z!W\203\232\326$)@\325$!#\210\202\247\326$\324$!)A@#\210\327\324$!\325$!{\330\"\210*@`\fE()\202\252\331\324$!\325$!\"\210\332(\316&\333$!\210\202\252'\321=\203(\203(@*@=\203(A`\fD\232\203\331\324$!\325$!\"\210\332(\333$!\210\202\252\324$!\203r\f\247\203I\323\f\324$!Z!\323\f\325$!Z!W\203<\326$\f\325$!#\210\202F\326$\324$!\f#\210\332+'\321=\203`\327\324$!\325$!{\330\"\210\202\242\332+\334\324$!\325$!\"\210)\202\242%\203\242%\316\\,\335,\f\"\210$\203\223\326$,\f#\210\202\232\336,\f\"$\337$\340\341#\210)*@`\fE(\312$!\205\275\342\343\324$!\325$!{\",\207" [click event position this-command click-posn posn mouse-minibuffer-check 1 window-buffer posn-window overlay-buffer marker-buffer error "Wrong buffer" 0 mod 3 mouse-secondary-save-then-kill mouse-start-end abs overlay-start overlay-end move-overlay kill-new t mouse-save-then-kill-delete-region nil delete-overlay copy-region-as-kill kill-ring-save make-overlay overlay-put face secondary-selection x-set-selection SECONDARY mouse-secondary-overlay mouse-secondary-start mouse-secondary-click-count last-command mouse-save-then-kill-posn range kill-ring deactivate-mark start] 5 (#$ . 31342) "e"]) #@187 *Number of buffers in one pane (submenu) of the buffer menu. If we have lots of buffers, divide them into groups of `mouse-buffer-menu-maxlen' and make a pane (or submenu) for each one. (custom-declare-variable 'mouse-buffer-menu-maxlen '20 '(#$ . -33639) :type 'integer :group 'mouse) #@392 *Group the buffers by the major mode groups on \[mouse-buffer-menu]? This number which determines (in a hairy way) whether \[mouse-buffer-menu] will split the buffer menu by the major modes (see `mouse-buffer-menu-mode-groups') or just by menu length. Set to 1 (or even 0!) if you want to group by major mode always, and to a large number if you prefer a mixed multitude. The default is 4. (custom-declare-variable 'mouse-buffer-menu-mode-mult '4 '(#$ . -33932) :type 'integer :group 'mouse :version "20.3") #@187 How to group various major modes together in \[mouse-buffer-menu]. Each element has the form (REGEXP . GROUPNAME). If the major mode's name string matches REGEXP, use GROUPNAME instead. (defvar mouse-buffer-menu-mode-groups '(("Info\\|Help\\|Apropos\\|Man" . "Help") ("\\bVM\\b\\|\\bMH\\b\\|Message\\|Mail\\|Group\\|Score\\|Summary\\|Article" . "Mail/News") ("\\" . "C") ("ObjC" . "C") ("Text" . "Text") ("Outline" . "Text") ("Lisp" . "Lisp")) (#$ . 34448)) #@138 Pop up a menu of buffers for selection with the mouse. This switches buffers in the window that you clicked on, and selects that window. (defalias 'mouse-buffer-menu #[(event) "\306!\210\307 \310\211\211\211\211\211\203\210r@q\210 \310!\"\211\203E\311@@#\"\203<@A A\211\204+)\312 \n\"\211!\204f \211;\203] \202_#D\211!\nB@!AA>\204~!A@!AAB\241\210+A\211\204)\n\313\203\253 @AAG\211$\211_)\\A\211\204\223) %_ G G_W\203+\310 G&'\314\n\315\"\211\203\n@G\316V\203&\317_ GV\203\320\n@AA!\211(\203\363\n@A@(B'B')&\n@AGZ&\nA\211\204\311\n\203!\320\321\322\323\324\n\"\"!\211)\203 \325)B'B')\326'\237B*\2026\320 !\326\327\330\f\"B\331 \"\3328)*\313*8)+\211,\205_\333+!\204[\334+!\210\335,!.\207" [event sum-of-squares split-by-major-mode menu alist buffers mouse-minibuffer-check buffer-list nil string-match assoc 0 sort #[(elt1 elt2) "G GV\207" [elt1 elt2] 2] 3 10 mouse-buffer-menu-alist apply nconc mapcar cddr "Others" "Buffer Menu" mouse-buffer-menu-split "Select Buffer" x-popup-menu 1 framep select-window switch-to-buffer tail major-mode adjusted-major-mode elt mouse-buffer-menu-mode-groups mode-name len mouse-buffer-menu-mode-mult buffers-left subdivided-menus this-mode-list others-list position window buf] 7 (#$ . 34918) "e"]) (defalias 'mouse-buffer-menu-alist #[(buffers) "\306\307\306\310 \311\"\211\211\203+\312\n@!\307H\313=\204$ \312\n@!G]\nA\211\204 \211\203\205\n@\312\f!\307H\313U\204}\314\211\315 \"\312\f!\316\f!\203P\317\202Q\320\212\fq\210 \203]\321\202^\320)\322\f!\206w\212\fq\210\205r\323!)\206w\324%\fBB)\nA\211\2041\237+\207" [head maxlen tail buffers elt buffer-read-only nil 0 sort #[(elt1 elt2) "\302!\302 !\231\207" [elt1 elt2 buffer-name] 3] buffer-name 32 format "%%%ds %%s%%s %%s" buffer-modified-p "*" " " "%" buffer-file-name expand-file-name "" list-buffers-directory] 8]) (defalias 'mouse-buffer-menu-split #[(title alist) "G \306_\307\245V\203<\310\211\311\211\2038 \233\211\203& S\233\310\241\210\312\313\n\"B\fB\nT \211\204\f\237,\207 BC\207" [alist mouse-buffer-menu-maxlen i next sublists title 3 2 nil 1 format "Buffers %d"] 5]) #@69 Click on an alternative in the `*Completions*' buffer to choose it. (defalias 'mouse-choose-completion #[(event) "\306\307!\210\310 \311\211\212\310 \312 8)\313\f8)!q\210 \203! \212 \312 8)\312\f8:\203:\312\f8@\202=\312\f8)b\210\311\211m\204X\314`\315\"\203X``T\204a\316\317!\210\320\315\"\321\315\"\206qd{,\322 \323 \312 8)\313\f8)!\210\324\325\326\"\203\242\327\322 !\203\242\330\326 !\210\202\254\327\322 !\204\254\331 \210\323!\210)\332 \n#+\207" [base-size choice buffer event position completion-reference-buffer run-hooks mouse-leave-buffer-hook window-buffer nil 1 0 get-text-property mouse-face error "No completion here" previous-single-property-change next-single-property-change selected-window select-window one-window-p t selected-frame window-dedicated-p iconify-frame bury-buffer choose-completion-string completion-base-size end beg owindow] 4 (#$ . 37164) "e"]) (defalias 'font-menu-add-default #[nil "\304\305\306 !\236A \307\310\n\"\206\nA@\307\311 \"\203$\312\307\311 \" \"\210 \311D AB\241+\207" [default x-fixed-font-alist font-alist elt font frame-parameters selected-frame assoc "Misc" "Default" delete] 4]) #@36 X fonts suitable for use in Emacs. (defvar x-fixed-font-alist '("Font menu" ("Misc" ("fixed" "fixed") ("6x10" "-misc-fixed-medium-r-normal--10-*-*-*-c-60-iso8859-1" "6x10") ("6x12" "-misc-fixed-medium-r-semicondensed--12-*-*-*-c-60-iso8859-1" "6x12") ("6x13" "-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1" "6x13") ("7x13" "-misc-fixed-medium-r-normal--13-*-*-*-c-70-iso8859-1" "7x13") ("7x14" "-misc-fixed-medium-r-normal--14-*-*-*-c-70-iso8859-1" "7x14") ("8x13" "-misc-fixed-medium-r-normal--13-*-*-*-c-80-iso8859-1" "8x13") ("9x15" "-misc-fixed-medium-r-normal--15-*-*-*-c-90-iso8859-1" "9x15") ("10x20" "-misc-fixed-medium-r-normal--20-*-*-*-c-100-iso8859-1" "10x20") ("11x18" "-misc-fixed-medium-r-normal--18-*-*-*-c-110-iso8859-1" "11x18") ("12x24" "-misc-fixed-medium-r-normal--24-*-*-*-c-120-iso8859-1" "12x24") ("") ("clean 5x8" "-schumacher-clean-medium-r-normal--8-*-*-*-c-50-iso8859-1") ("clean 6x8" "-schumacher-clean-medium-r-normal--8-*-*-*-c-60-iso8859-1") ("clean 8x8" "-schumacher-clean-medium-r-normal--8-*-*-*-c-80-iso8859-1") ("clean 8x10" "-schumacher-clean-medium-r-normal--10-*-*-*-c-80-iso8859-1") ("clean 8x14" "-schumacher-clean-medium-r-normal--14-*-*-*-c-80-iso8859-1") ("clean 8x16" "-schumacher-clean-medium-r-normal--16-*-*-*-c-80-iso8859-1") ("") ("sony 8x16" "-sony-fixed-medium-r-normal--16-*-*-*-c-80-iso8859-1") ("lucidasanstypewriter-12" "-b&h-lucidatypewriter-medium-r-normal-sans-*-120-*-*-*-*-iso8859-1") ("lucidasanstypewriter-bold-14" "-b&h-lucidatypewriter-bold-r-normal-sans-*-140-*-*-*-*-iso8859-1") ("lucidasanstypewriter-bold-24" "-b&h-lucidatypewriter-bold-r-normal-sans-*-240-*-*-*-*-iso8859-1")) ("Courier" ("8" "-adobe-courier-medium-r-normal--*-80-*-*-m-*-iso8859-1") ("10" "-adobe-courier-medium-r-normal--*-100-*-*-m-*-iso8859-1") ("12" "-adobe-courier-medium-r-normal--*-120-*-*-m-*-iso8859-1") ("14" "-adobe-courier-medium-r-normal--*-140-*-*-m-*-iso8859-1") ("18" "-adobe-courier-medium-r-normal--*-180-*-*-m-*-iso8859-1") ("24" "-adobe-courier-medium-r-normal--*-240-*-*-m-*-iso8859-1") ("8 bold" "-adobe-courier-bold-r-normal--*-80-*-*-m-*-iso8859-1") ("10 bold" "-adobe-courier-bold-r-normal--*-100-*-*-m-*-iso8859-1") ("12 bold" "-adobe-courier-bold-r-normal--*-120-*-*-m-*-iso8859-1") ("14 bold" "-adobe-courier-bold-r-normal--*-140-*-*-m-*-iso8859-1") ("18 bold" "-adobe-courier-bold-r-normal--*-180-*-*-m-*-iso8859-1") ("24 bold" "-adobe-courier-bold-r-normal--*-240-*-*-m-*-iso8859-1") ("8 slant" "-adobe-courier-medium-o-normal--*-80-*-*-m-*-iso8859-1") ("10 slant" "-adobe-courier-medium-o-normal--*-100-*-*-m-*-iso8859-1") ("12 slant" "-adobe-courier-medium-o-normal--*-120-*-*-m-*-iso8859-1") ("14 slant" "-adobe-courier-medium-o-normal--*-140-*-*-m-*-iso8859-1") ("18 slant" "-adobe-courier-medium-o-normal--*-180-*-*-m-*-iso8859-1") ("24 slant" "-adobe-courier-medium-o-normal--*-240-*-*-m-*-iso8859-1") ("8 bold slant" "-adobe-courier-bold-o-normal--*-80-*-*-m-*-iso8859-1") ("10 bold slant" "-adobe-courier-bold-o-normal--*-100-*-*-m-*-iso8859-1") ("12 bold slant" "-adobe-courier-bold-o-normal--*-120-*-*-m-*-iso8859-1") ("14 bold slant" "-adobe-courier-bold-o-normal--*-140-*-*-m-*-iso8859-1") ("18 bold slant" "-adobe-courier-bold-o-normal--*-180-*-*-m-*-iso8859-1") ("24 bold slant" "-adobe-courier-bold-o-normal--*-240-*-*-m-*-iso8859-1"))) (#$ . 38362)) #@68 Select an emacs font from a list of known good fonts and fontsets. (defalias 'mouse-set-font #[(&rest fonts) "\205\302\203\302\303\304\217\210\202 ?\205\305\306!)\207" [fonts font nil (byte-code "\302@!\210@\303\303\207" [fonts font set-default-font nil] 2) ((error (byte-code "A\301\207" [fonts nil] 1))) error "Font not found"] 3 (#$ . 41717) (byte-code "\302\303 \304 C\"\"\207" [last-nonmenu-event x-fixed-font-alist x-popup-menu append generate-fontset-menu] 5)]) (byte-code "\302\303\304#\210\305\306\307\"\210\305\310\311\"\210\305\312\307\"\210\305\313\307\"\210\305\314\315\"\210\305\316\317\"\210\305\320\321\"\210 \322=\2044\305\323\324\"\210\305\325\326\"\210\305\327\330\"\210\305\331\330\"\210\305\332\333\"\210\305\334\335\"\210\305\336\330\"\210\305\337\340\"\210\305\341\342\"\210\305\343\344\"\210\305\345\346\"\210\305\347\346\"\210\305\350\351\"\210\305\352\330\"\210\353\354!\210\355\356\333\"\210\355\357\351\"\210\360\356\333\361#\210\360\357\351\361#\210\353\362!\207" [global-map system-type define-key [down-mouse-1] mouse-drag-region global-set-key [mouse-1] mouse-set-point [drag-mouse-1] mouse-set-region [double-mouse-1] [triple-mouse-1] [mouse-2] mouse-yank-at-click [mouse-3] mouse-save-then-kill [C-down-mouse-1] mouse-buffer-menu ms-dos [S-down-mouse-1] mouse-set-font [C-down-mouse-3] mouse-popup-menubar-stuff [mode-line mouse-1] mouse-select-window [mode-line drag-mouse-1] [mode-line down-mouse-1] mouse-drag-mode-line [header-line down-mouse-1] mouse-drag-header-line [header-line mouse-1] [mode-line mouse-2] mouse-delete-other-windows [mode-line mouse-3] mouse-delete-window [mode-line C-mouse-2] mouse-split-window-horizontally [vertical-scroll-bar C-mouse-2] mouse-split-window-vertically [vertical-line C-mouse-2] [vertical-line down-mouse-1] mouse-drag-vertical-line [vertical-line mouse-1] provide mouse defalias mldrag-drag-mode-line mldrag-drag-vertical-line make-obsolete "21.1" mldrag] 4)