?
Current Path : /usr/share/emacs/24.3/lisp/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : //usr/share/emacs/24.3/lisp/windmove.elc |
;ELC ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:06:34 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/windmove.el ;;; in Emacs version 24.3.1 ;;; 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\302\303\304\305\306\307\310\311\310\312&\210\313\314\302\315\316\317\310\301&\210\313\320\321\322\316\323\310\301&\207" [custom-declare-group windmove nil "Directional selection of windows in a frame." :prefix "windmove-" :version "21.1" :group windows convenience custom-declare-variable windmove-wrap-around "Whether movement off the edge of the frame wraps around.\nIf this variable is set to t, moving left from the leftmost window in\na frame will find the rightmost one, and similarly for the other\ndirections. The minibuffer is skipped over in up/down movements if it\nis inactive." :type boolean windmove-window-distance-delta 1 "How far away from the current window to look for an adjacent window.\nMeasured in characters either horizontally or vertically; setting this\nto a value larger than 1 may be useful in getting around window-\nplacement bugs in old versions of Emacs." number] 12) #@136 Add the two coordinates. Both COORD1 and COORD2 are coordinate cons pairs, (HPOS . VPOS). The result is another coordinate cons pair. (defalias 'windmove-coord-add #[(coord1 coord2) "@ @\\A A\\B\207" [coord1 coord2] 3 (#$ . 1478)]) #@145 Ensure that N is between MIN-N and MAX-N inclusive by constraining. If N is less than MIN-N, return MIN-N; if greater than MAX-N, return MAX-N. (defalias 'windmove-constrain-to-range #[(n min-n max-n) " \n^]\207" [min-n n max-n] 3 (#$ . 1720)]) #@141 Ensure that N is between MIN-N and MAX-N inclusive by wrapping. If N is less than MIN-N, return MAX-N; if greater than MAX-N, return MIN-N. (defalias 'windmove-constrain-around-range #[(n min-n max-n) " W\203 \n\207\nV\203 \207\207" [n min-n max-n] 2 (#$ . 1973)]) #@421 Return (X-MIN Y-MIN X-MAX Y-MAX) for the frame containing WINDOW. If WINDOW is nil, return the edges for the selected frame. (X-MIN, Y-MIN) is the zero-based coordinate of the top-left corner of the frame; (X-MAX, Y-MAX) is the zero-based coordinate of the bottom-right corner of the frame. For example, if a frame has 76 rows and 181 columns, the return value from `windmove-frame-edges' will be the list (0 0 180 75). (defalias 'windmove-frame-edges #[(window) "\203\n \306!\202\f \307 \310\311 !!\211@\nA@\312 !S\313 !S\f\f \fF.\207" [window frame top-left x-min y-min x-max window-frame selected-frame window-edges frame-first-window frame-width frame-height y-max] 5 (#$ . 2251)]) #@591 Constrain COORD so that it is reasonable for the given movement. This involves two things: first, make sure that the "off" coordinate -- the one not being moved on, e.g., y for horizontal movement -- is within frame boundaries; second, if the movement is down and we're not moving from the minibuffer, make sure that the y coordinate does not exceed the frame max-y, so that we don't overshoot the minibuffer accidentally. WINDOW is the window that movement is relative to; DIR is the direction of the movement, one of `left', `up', `right', or `down'. Returns the constrained coordinate. (defalias 'windmove-constrain-loc-for-movement #[(coord window dir) "\306!\307!\211@\nA@\310\n8\311\n8\312>\203* \313@\f#\202- @\314>\204? \315=\203I \204I \313A #\202L A\211.B\207" [window in-minibuffer frame-edges max-y max-x min-y windmove-frame-edges window-minibuffer-p 2 3 (up down) windmove-constrain-to-range (left right) down min-x dir coord new-y new-x] 6 (#$ . 2955)]) #@348 Takes the constrained COORD and wraps it around for the movement. This makes an out-of-range x or y coordinate and wraps it around the frame, giving a coordinate (hopefully) in the window on the other edge of the frame. WINDOW is the window that movement is relative to (nil means the currently selected window). Returns the wrapped coordinate. (defalias 'windmove-wrap-loc-for-movement #[(coord window) "\306!\307\203 \310!\202 \311 !\312\n! @ A@\313 8\204- \314 8\315\n!Z\2020 \314 8\316@ #\316A\f#.B\207" [window frame-edges frame-minibuffer minibuffer-active max-y max-x windmove-frame-edges minibuffer-window window-frame selected-frame minibuffer-window-active-p 2 3 window-height windmove-constrain-around-range min-y min-x coord] 6 (#$ . 3966)]) #@405 Return the reference location for directional window selection. Return a coordinate (HPOS . VPOS) that is frame-based. If ARG is nil or not supplied, the reference point is the buffer's point in the currently-selected window, or WINDOW if supplied; otherwise, it is the top-left or bottom-right corner of the selected window, or WINDOW if supplied, if ARG is greater or smaller than zero, respectively. (defalias 'windmove-reference-loc #[(&optional arg window) "\204 \306\202 \307!\310 !\n@\nA@B\311\n8S\312\n8SB\306V\203+ \202F \306W\2035 \f\202F \306U\205F \313 \314\315\316 ! \"!\",\207" [arg window edges effective-arg bottom-right top-left 0 prefix-numeric-value window-inside-edges 2 3 windmove-coord-add posn-col-row posn-at-point window-point] 6 (#$ . 4753)]) #@283 Return a location in the window to be moved to. Return value is a frame-based (HPOS . VPOS) value that should be moved to. DIR is one of `left', `up', `right', or `down'; an optional ARG is handled as by `windmove-reference-loc'; WINDOW is the window that movement is relative to. (defalias 'windmove-other-window-loc #[(dir &optional arg window) "\306!\307 \"\f\310=\203 @ Z\nAB\202R \f\311=\203* \n@A@ ZB\202R \f\312=\203<