;ELC
;;; Compiled
;;; in Emacs version 26.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.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defalias 'internal--before-save-selected-window #[0 "\300 \301\302\303\304\305 \"\"B\207" [selected-window apply append mapcar #[257 "\300!\301!\302\203 \303\"B\262\211\203* \211@\211\304!BB\262A\266\202\202 \210\207" [frames-on-display-list tty-top-frame nil delq frame-selected-window] 9 "\n\n(fn TERMINAL)"] terminal-list] 6])
#@14
(fn STATE)
(defalias 'internal--after-save-selected-window #[257 "\211A\211\203% \211@\300@!\203 \301A!\203 \302@A\303#\210A\266\202\202 \210\301@!\2052 \304@\303\"\207" [frame-live-p window-live-p set-frame-selected-window norecord select-window] 7 (#$ . 753)])
#@748 Execute BODY, then select the previously selected window.
The value returned is the value of the last form in BODY.
This macro saves and restores the selected window, as well as the
selected window in each frame. If the previously selected window
is no longer live, then whatever window is selected at the end of
BODY remains selected. If the previously selected window of some
frame is no longer live at the end of BODY, that frame's selected
window is left alone.
This macro saves and restores the current buffer, since otherwise
its normal operation could make a different buffer current. The
order of recently selected windows and the buffer list ordering
are not altered by this macro (unless they are altered in BODY).
(fn &rest BODY)
(defalias 'save-selected-window '(macro . #[128 "\300\301\302\303\304B\305BBDE\207" [let ((save-selected-window--state (internal--before-save-selected-window))) save-current-buffer unwind-protect progn ((internal--after-save-selected-window save-selected-window--state))] 7 (#$ . 1035)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put save-selected-window lisp-indent-function 0 put edebug-form-spec t] 5)
#@156 Normal hook run by `with-temp-buffer-window' before buffer display.
This hook is run by `with-temp-buffer-window' with the buffer to be
displayed current.
(defvar temp-buffer-window-setup-hook nil (#$ . 2216))
#@177 Normal hook run by `with-temp-buffer-window' after buffer display.
This hook is run by `with-temp-buffer-window' with the buffer
displayed and current and its window selected.
(defvar temp-buffer-window-show-hook nil (#$ . 2433))
#@94 Set up temporary buffer specified by BUFFER-OR-NAME.
Return the buffer.
(fn BUFFER-OR-NAME)
(defalias 'temp-buffer-window-setup #[257 "\306!r\211q\210\307 \210\310 \210\311\211\312\211\312\313 \210\314\315!\210+\207" [default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only get-buffer-create kill-all-local-variables delete-all-overlays nil t erase-buffer run-hooks temp-buffer-window-setup-hook] 6 (#$ . 2669)])
#@160 Show temporary buffer BUFFER in a window.
Return the window showing BUFFER. Pass ACTION as action argument
to `display-buffer'.
(fn BUFFER &optional ACTION)
(defalias 'temp-buffer-window-show #[513 "\304\211rq\210\305\304!\210\306eb\210 \307=\204 \310=\203# \n\203# \306\202$ \311\"\211\262)\205l \312!\262\211\313 =\204@ \314!\210\315\316\"\210\317!r\320\316\321\322\323!\324\"\325$\216\326@\327\"\210\330\331!\210\n\203i \332!\210*\210)\207" [buffer-read-only window-combination-limit temp-buffer-resize-mode minibuffer-scroll-window nil set-buffer-modified-p t temp-buffer temp-buffer-resize display-buffer window-frame selected-frame raise-frame set-window-hscroll 0 internal--before-with-selected-window make-byte-code "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord run-hooks temp-buffer-window-show-hook resize-temp-buffer-window] 11 (#$ . 3157)])
#@1961 Bind `standard-output' to BUFFER-OR-NAME, eval BODY, show the buffer.
BUFFER-OR-NAME must specify either a live buffer, or the name of
a buffer (if it does not exist, this macro creates it).
Make the buffer specified by BUFFER-OR-NAME empty before running
BODY and bind `standard-output' to that buffer, so that output
generated with `prin1' and similar functions in BODY goes into
that buffer. Do not make that buffer current for running the
forms in BODY. Use `with-current-buffer-window' instead if you
need to run BODY with that buffer current.
At the end of BODY, mark the specified buffer unmodified and
read-only, and display it in a window (but do not select it).
The display happens by calling `display-buffer' passing it the
ACTION argument. If `temp-buffer-resize-mode' is enabled, the
corresponding window may be resized automatically.
Return the value returned by BODY, unless QUIT-FUNCTION specifies
a function. In that case, run that function with two arguments -
the window showing the specified buffer and the value returned by
BODY - and return the value returned by that function.
If the buffer is displayed on a new frame, the window manager may
decide to select that frame. In that case, it's usually a good
strategy if QUIT-FUNCTION selects the window showing the buffer
before reading any value from the minibuffer; for example, when
asking a `yes-or-no-p' question.
This runs the hook `temp-buffer-window-setup-hook' before BODY,
with the specified buffer temporarily current. It runs the hook
`temp-buffer-window-show-hook' after displaying the buffer, with
that buffer temporarily current, and the window that was used to
display it temporarily selected.
This construct is similar to `with-output-to-temp-buffer' but,
neither runs `temp-buffer-setup-hook' which usually puts the
buffer in Help mode, nor `temp-buffer-show-function' (the ACTION
argument replaces this).
(fn BUFFER-OR-NAME ACTION QUIT-FUNCTION &rest BODY)
(defalias 'with-temp-buffer-window '(macro . #[899 "\300\301!\300\302!\300\303!\304!\203 \211\202 \300\305!\304!\203$ \211\202' \300\306!\304!\2033 \211\2026 \300\307!\310 \311DD\312D\n\nF\313 \314BE\315\f\313
\316EEE\317\320D\321F
F\257=\203y \211\202\200 \322DC\"\266\203=\203\214 \211\202\223 \322DC\"\266\203=\203\237 \211\202\246 \322DC\"\266\203\207" [make-symbol "buffer" "window" "value" macroexp-const-p "vbuffer-or-name" "vaction" "vquit-function" let* temp-buffer-window-setup standard-output setq progn with-current-buffer temp-buffer-window-show if functionp funcall macroexp-let*] 23 (#$ . 4089)]))
(put 'with-temp-buffer-window 'edebug-form-spec t)
#@263 Evaluate BODY with a buffer BUFFER-OR-NAME current and show that buffer.
This construct is like `with-temp-buffer-window' but unlike that
makes the buffer specified by BUFFER-OR-NAME current for running
BODY.
(fn BUFFER-OR-NAME ACTION QUIT-FUNCTION &rest BODY)
(defalias 'with-current-buffer-window '(macro . #[899 "\300\301!\300\302!\300\303!\304!\203 \211\202 \300\305!\304!\203$ \211\202' \300\306!\304!\2033 \211\2026 \300\307!\310 \311DD\312D\n\nF\313\314\315BE\314
\316EEF\317\320D\321F\fFF=\203w \211\202~ \322DC\"\266\203=\203\212 \211\202\221 \322DC\"\266\203=\203\235 \211\202\244 \322DC\"\266\203\207" [make-symbol "buffer" "window" "value" macroexp-const-p "vbuffer-or-name" "vaction" "vquit-function" let* temp-buffer-window-setup standard-output with-current-buffer setq progn temp-buffer-window-show if functionp funcall macroexp-let*] 23 (#$ . 6772)]))
(put 'with-current-buffer-window 'edebug-form-spec t)
#@254 Show a buffer BUFFER-OR-NAME and evaluate BODY in that buffer.
This construct is like `with-current-buffer-window' but unlike that
displays the buffer specified by BUFFER-OR-NAME before running BODY.
(fn BUFFER-OR-NAME ACTION QUIT-FUNCTION &rest BODY)
(defalias 'with-displayed-buffer-window '(macro . #[899 "\300\301!\300\302!\300\303!\304!\203 \211\202 \300\305!\304!\203$ \211\202' \300\306!\304!\2033 \211\2026 \300\307!\310 \311DD\312D\313\314\315\316\317\320DEDC\321BBD\322\323\313\324\325D\324\326\327\330\320\331DDEEEED\f\f\257\332\333\f\334\335\322\fEEEE\314\336\333\f\337BEE\340\f\341BB\323\313\342\343\344BB\345\313EEE\323\346\320\316\347\320DEDD\350\351\352\316\353\320DEDF\350\354\355\316\356\320DEDFF\357\360 D\345\nFF\257=\203\346 \211\202\355 \361DC\"\266\203=\203\371 \211\202 \361DC\"\266\203=\203\f\211\202\361DC\"\266\203\207" [make-symbol "buffer" "window" "value" macroexp-const-p "vbuffer-or-name" "vaction" "vquit-function" let* temp-buffer-window-setup standard-output vheight-function let window-height assq 'window-height cdr ((when (functionp (cdr window-height)) (cdr window-height))) vaction-copied when cons car '(window-height . t) assq-delete-all 'window-height copy-sequence with-current-buffer setq temp-buffer-window-show or ((inhibit-read-only t) (inhibit-modification-hooks t)) progn set-window-point ((point-min)) ignore-errors set-window-parameter ('preserve-size nil) funcall consp 'preserve-size window-preserve-size t cadr 'preserve-size nil cddr 'preserve-size if functionp macroexp-let*] 30 (#$ . 7755)]))
(put 'with-displayed-buffer-window 'edebug-form-spec t)
#@126 Return WINDOW's right sibling.
Return nil if WINDOW is the root window of its frame. WINDOW can
be any window.
(fn WINDOW)
(defalias 'window-right #[257 "\211\205
\300!\205
\301!\207" [window-parent window-next-sibling] 3 (#$ . 9447)])
#@125 Return WINDOW's left sibling.
Return nil if WINDOW is the root window of its frame. WINDOW can
be any window.
(fn WINDOW)
(defalias 'window-left #[257 "\211\205
\300!\205
\301!\207" [window-parent window-prev-sibling] 3 (#$ . 9696)])
#@76 Return WINDOW's first child window.
WINDOW can be any window.
(fn WINDOW)
(defalias 'window-child #[257 "\300!\206 \301!\207" [window-top-child window-left-child] 3 (#$ . 9942)])
#@81 Return number of WINDOW's child windows.
WINDOW can be any window.
(fn WINDOW)
(defalias 'window-child-count #[257 "\300\301!\203 \302!\211\262\203 \203 \211T\262\303!\262\202 \211\207" [0 windowp window-child window-next-sibling] 4 (#$ . 10131)])
#@76 Return last child window of WINDOW.
WINDOW can be any window.
(fn WINDOW)
(defalias 'window-last-child #[257 "\300!\203 \301!\211\262\203 \302!\203 \302!\262\202 \207" [windowp window-child window-next-sibling] 3 (#$ . 10397)])
#@343 Return buffer specified by BUFFER-OR-NAME.
BUFFER-OR-NAME must be a live buffer, a string naming a live
buffer or nil which means to return the current buffer.
This function is commonly used to process the (usually optional)
"BUFFER-OR-NAME" argument of window related functions where nil
stands for the current buffer.
(fn BUFFER-OR-NAME)
(defalias 'window-normalize-buffer #[257 "\211\204 p\202! \300!\203 \211\202! \211;\203 \301!\202! \302\303\"\304!\203+ \211\202/ \302\305\"\207" [bufferp get-buffer error "No such buffer %s" buffer-live-p "No such live buffer %s"] 5 (#$ . 10643)])
#@284 Return frame specified by FRAME.
FRAME must be a live frame or nil which means to return the
selected frame.
This function is commonly used to process the (usually optional)
"FRAME" argument of window and frame related functions where
nil stands for the selected frame.
(fn FRAME)
(defalias 'window-normalize-frame #[257 "\211\203 \300!\203 \207\301\302\"\207\303 \207" [frame-live-p error "%s is not a live frame" selected-frame] 4 (#$ . 11249)])
#@430 Return window specified by WINDOW.
If WINDOW is nil, return the selected window. Otherwise, if
WINDOW is a live or an internal window, return WINDOW; if
LIVE-ONLY is non-nil, return WINDOW for a live window only.
Otherwise, signal an error.
This function is commonly used to process the (usually optional)
"WINDOW" argument of window related functions where nil stands
for the selected window.
(fn WINDOW &optional LIVE-ONLY)
(defalias 'window-normalize-window #[513 "\204 \300 \207\211\203 \301!\203 \207\302\303\"\207\304!\203 \207\302\305\"\207" [selected-window window-live-p error "%s is not a live window" window-valid-p "%s is not a valid window"] 5 (#$ . 11710)])
#@492 Return the value of `frame-char-height' for WINDOW-OR-FRAME.
If WINDOW-OR-FRAME is a live frame, return the value of
`frame-char-height' for that frame. If WINDOW-OR-FRAME is a
valid window, return the value of `frame-char-height' for that
window's frame. In any other case, return the value of
`frame-char-height' for the selected frame.
Optional argument HORIZONTAL non-nil means to return the value of
`frame-char-width' for WINDOW-OR-FRAME.
(fn &optional WINDOW-OR-FRAME HORIZONTAL)
(defalias 'frame-char-size #[512 "\300!\203\f \301!\202 \302!\203 \202 \303 \203\" |