?
Current Path : /usr/share/emacs/24.3/lisp/eshell/ |
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/eshell/em-smart.elc |
;ELC ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:52 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/eshell/em-smart.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&\210\310\311\302\312\313\314\315\316\306\301& \210\310\317\320\321\315\316\306\301&\210\310\322\302\323\315\324\306\301&\210\310\325\326\327\315\330\306\301&\210\310\331\332\333\315\334\306\301&\210\310\335\336\337\315\340\306\301&\207" [custom-declare-group eshell-smart nil "This module combines the facility of normal, modern shells with\nsome of the edit/review concepts inherent in the design of Plan 9's\n9term. See the docs for more details.\n\nMost likely you will have to turn this option on and play around with\nit to get a real sense of how it works." :tag "Smart display of output" :group eshell-module custom-declare-variable eshell-smart-load-hook "A list of functions to call when loading `eshell-smart'." :version "24.1" :type hook eshell-smart-unload-hook (list #'(lambda nil (remove-hook 'window-configuration-change-hook 'eshell-refresh-windows))) "A hook that gets run when `eshell-smart' is unloaded." eshell-review-quick-commands "If t, always review commands.\nReviewing means keeping point on the text of the command that was just\ninvoked, to allow corrections to be made easily.\n\nIf set to nil, quick commands won't be reviewed. A quick command is a\ncommand that produces no output, and exits successfully.\n\nIf set to `not-even-short-output', then the definition of \"quick\ncommand\" is extended to include commands that produce output, if and\nonly if that output can be presented in its entirely in the Eshell window." (choice (const :tag "No" nil) (const :tag "Yes" t) (const :tag "Not even short output" not-even-short-output)) eshell-smart-display-navigate-list '(insert-parentheses mouse-yank-at-click mouse-yank-primary mouse-yank-secondary yank-pop yank-rectangle yank) "A list of commands which cause Eshell to jump to the end of buffer." (repeat function) eshell-smart-space-goes-to-end t "If non-nil, space will go to end of buffer when point-max is visible.\nThat is, if a command is running and the user presses SPACE at a time\nwhen the end of the buffer is visible, point will go to the end of the\nbuffer and smart-display will be turned off (that is, subsequently\npressing backspace will not cause the buffer to scroll down).\n\nThis feature is provided to make it very easy to watch the output of a\nlong-running command, such as make, where it's more desirable to see\nthe output go by than to review it afterward.\n\nSetting this variable to nil means that space and backspace will\nalways have a consistent behavior, which is to move back and forth\nthrough displayed output. But it also means that enabling output\ntracking requires the user to manually move point to the end of the\nbuffer using \\[end-of-buffer]." boolean eshell-where-to-jump 'begin "This variable indicates where point should jump to after a command.\nThe options are `begin', `after' or `end'." (radio (const :tag "Beginning of command" begin) (const :tag "After command word" after) (const :tag "End of command" end))] 10) (defvar eshell-smart-displayed nil) (defvar eshell-smart-command-done nil) (defvar eshell-currently-handling-window nil) #@29 Setup Eshell smart display. (defalias 'eshell-smart-initialize #[nil "?\205P \305\301!\210\306\305\302!\210\306\305\303!\210\307\310\311\312\306\307$\210\310\313\314\"\210\310\315\314\307\211$\210\310\316\317\306\307$\210\310\320\321\306\307$\210\305\322!\210\310\323\324\307\211$\210\f\307=?\205P \310\323\325\306\307$\207" [eshell-non-interactive-p eshell-scroll-to-bottom-on-output eshell-scroll-to-bottom-on-input eshell-scroll-show-maximum-output eshell-review-quick-commands make-local-variable nil t add-hook window-scroll-functions eshell-smart-scroll-window window-configuration-change-hook eshell-refresh-windows eshell-output-filter-functions after-change-functions eshell-disable-after-change eshell-input-filter-functions eshell-smart-display-setup eshell-smart-command-done eshell-post-command-hook #[nil "\301\211\207" [eshell-smart-command-done t] 2] eshell-smart-maybe-jump-to-end] 5 (#$ . 3685)]) #@45 Scroll the given Eshell window accordingly. (defalias 'eshell-smart-scroll-window #[(wind start) "?\205 \304\211\305 r\306\216\307!\210\310 -\207" [eshell-currently-handling-window inhibit-point-motion-hooks save-selected-window--state wind t internal--before-save-selected-window ((internal--after-save-selected-window save-selected-window--state)) select-window eshell-smart-redisplay] 2 (#$ . 4611)]) #@37 Refresh all visible Eshell buffers. (defalias 'eshell-refresh-windows #[(&optional frame) "\303\304\305\306 #\210\205 \303\211\307\310\217))\207" [affected frame window-scroll-functions nil walk-windows #[(wind) "r\304!q\210 \205 \305\306\307 \"\210\310\211))\207" [wind eshell-mode window-scroll-functions affected window-buffer nil eshell-smart-scroll-window window-start t] 3] 0 (byte-code "\300\301\211\"\207" [sit-for 0] 3) ((error))] 5 (#$ . 5027)]) #@66 Set the point to somewhere in the beginning of the last command. (defalias 'eshell-smart-display-setup #[nil "\304=\203\f b\210\2027 \305=\203&