Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
;ELC
;;; Compiled by leavens@LEAVENS on Mon Sep 15 16:19:43 2003
;;; from file d:/emacs/ecb/ecb-eshell.el
;;; in Emacs version 21.3.1
;;; 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 "`ecb-eshell.el' was compiled for Emacs 19.29 or later"))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312&\207" [require ecb-util ecb-compilation custom-declare-group ecb-eshell nil "Settings for eshell integration within the ECB." :group ecb :prefix "ecb-eshell-"] 8)
#@118 *Enlarge the compile-window if it is selected by `eshell'.
This takes only effect if the command `eshell' is called!
(custom-declare-variable 'ecb-eshell-enlarge-when-eshell 't '(#$ . -831) :group 'ecb-eshell :type 'boolean)
#@227 *Fit the compile-window after an eshell-command to the output.
This is done by the function `ecb-eshell-fit-window-to-output' which is added
to `eshell-post-command-hook' ie. which is running autom. after each
eshell-command.
(custom-declare-variable 'ecb-eshell-fit-window-to-command-output 't '(#$ . -1063) :group 'ecb-eshell :type 'boolean)
#@167 *Startup the eshell and display it in the compile-window.
If current layout does not display a compile-window (see
`ecb-compile-window-height') then nothing is done.
(custom-declare-variable 'ecb-eshell-auto-activate 'nil '(#$ . -1414) :group 'ecb-eshell :type 'boolean)
#@244 *Synchronize eshell with the default-directory of current source-buffer.
The synchronization is done by `ecb-eshell-current-buffer-sync' which can be
called interactively but normally it is called autom. by the
`ecb-current-buffer-sync-hook'.
(custom-declare-variable 'ecb-eshell-synchronize 't '(#$ . -1692) :group 'ecb-eshell :type 'boolean)
#@61 Point in the buffer we are at before we executed a command.
(defvar ecb-eshell-pre-command-point nil (#$ . 2042))
#@148 List of eshell-buffers created until now.
Background: `eshell' creates new eshell-buffers with `generate-new-buffer' if
called with an prefix arg!
(defvar ecb-eshell-buffer-list nil (#$ . 2163))
#@368 These functions of eshell are adviced if ehsell is active during ECB is
active. Each element of the list is a cons-cell where the car is the
function-symbol and the cdr the advice-class (before, around or after). If a
function should be adviced with more than one class (e.g. with a before and
an after-advice) then for every class a cons must be added to this list.
(defconst ecb-eshell-adviced-functions '((eshell . around)) (#$ . 2365))
(ad-add-advice 'eshell '(ecb nil t (advice lambda nil "Ensure that ehsell is running in the ECB-compile-window if any." (let ((new-elem (cons (concat ".*" (regexp-quote eshell-buffer-name) ".*") t))) (if (or ecb-compile-window-height (numberp (car (get 'ecb-compile-window-height 'saved-value)))) (progn (add-to-list 'ecb-compilation-buffer-names-internal new-elem) (add-to-list 'ecb-compilation-major-modes-internal 'eshell-mode)) (setq ecb-compilation-buffer-names-internal (delete new-elem ecb-compilation-buffer-names-internal)) (setq ecb-compilation-major-modes-internal (delete 'eshell-mode ecb-compilation-major-modes-internal)))) (when (and (numberp (car (get 'ecb-compile-window-height 'saved-value))) (not (ecb-compile-window-live-p))) (ecb-layout-debug-error "eshell around-advice: comp-win will be toggled.") (ecb-toggle-compile-window 1)) (add-hook 'ecb-current-buffer-sync-hook 'ecb-eshell-current-buffer-sync) (add-hook 'eshell-post-command-hook 'ecb-eshell-recenter) (add-hook 'eshell-post-command-hook 'ecb-eshell-fit-window-to-output) (add-hook 'eshell-pre-command-hook 'ecb-eshell-precommand-hook) (add-hook 'window-size-change-functions 'ecb-eshell-window-size-change) (ecb-eshell-save-buffer-history ad-do-it) (add-to-list 'ecb-eshell-buffer-list ad-return-value) (when ecb-eshell-enlarge-when-eshell (ecb-toggle-compile-window-height 1)) (ecb-eshell-recenter) (ecb-eshell-current-buffer-sync))) 'around nil)
#@153 Does all necessary to activate the eshell-integration. But this doesn not
load or activate eshell - it just prepares ECB to work perfectly with eshell.
(defalias 'ecb-eshell-activate-integration #[nil "\301!\207" [ecb-eshell-adviced-functions ecb-enable-advices] 2 (#$ . 4242)])
(defalias 'ecb-eshell-deactivate-integration #[nil "\301!\210\302\303\304\"\210\302\305\306\"\210\302\305\307\"\210\302\310\311\"\210\302\312\313\"\207" [ecb-eshell-adviced-functions ecb-disable-advices remove-hook ecb-current-buffer-sync-hook ecb-eshell-current-buffer-sync eshell-post-command-hook ecb-eshell-recenter ecb-eshell-fit-window-to-output eshell-pre-command-hook ecb-eshell-precommand-hook window-size-change-functions ecb-eshell-window-size-change] 3])
#@243 Synchronize the eshell with the directory of current source-buffer.
This is only done if the eshell is currently visible in the compile-window of
ECB and if either this function is called interactively or
`ecb-eshell-synchronize' is not nil.
(defalias 'ecb-eshell-current-buffer-sync #[nil "\306 \232\205\205 \204 t\205\205 \307 \205\205 \310 ?\205\205 \311\n!\235@
\312\f!\2050 \212\fq\210
)\312\f!\205\204 ;\205\204 ;\205\204 \313!\313!\230?\205\204 \314\306 \315\"\316\216\212\fq\210db\210\317 \210`\320 |\210\321!\210)\322 \323\216\324\n!\210\325 \210,\326 \210\327!+\207" [ecb-frame ecb-eshell-synchronize ecb-compile-window ecb-eshell-buffer-list my-eshell-buffer default-directory selected-frame ecb-compile-window-live-p ecb-point-in-compile-window window-buffer bufferp ecb-fix-filename ecb-frame-parameter buffer-list ((byte-code "\301\302\303BC\"\207" [#1=#:my-buffer-list modify-frame-parameters nil buffer-list] 4)) eshell-bol point-at-eol eshell/cd selected-window ((byte-code "\301!\203\n \302!\210\301\207" [save-selected-window-window window-live-p select-window] 2)) select-window eshell-send-input ecb-eshell-recenter bury-buffer my-reference-directory my-eshell-directory #1# save-selected-window-window eshell-buffer-name] 3 (#$ . 4997) nil])
#@136 Protect the buffer-list so that the eshell buffer name is not placed early
in the buffer list or at all if it currently doesn't exist.
(defalias 'ecb-eshell-save-buffer-history '(macro . #[(&rest body) "\302\303!\304\305BC\306\307 B\310\311\312\313\314EDEEE)\207" [eshell-buffer-list body make-symbol "my-buffer-list" let ((ecb-frame-parameter (selected-frame) 'buffer-list)) unwind-protect progn modify-frame-parameters nil list cons 'buffer-list] 10 (#$ . 6296)]))
#@69 Recenter the eshell window so that the prompt is at the buffer-end.
(defalias 'ecb-eshell-recenter #[(&optional display-errors) "\305 \232\203% \306 \203% \307 !\n\235\203% \310 \311\216\312 !\210db\210\313\314!*\207\f\205, \315\316!\207" [ecb-frame ecb-compile-window ecb-eshell-buffer-list save-selected-window-window display-errors selected-frame ecb-compile-window-live-p window-buffer selected-window ((byte-code "\301!\203\n \302!\210\301\207" [save-selected-window-window window-live-p select-window] 2)) select-window recenter -2 ecb-error "Eshell not running or compile-window not visible!"] 2 (#$ . 6772) (list t)])
(defalias 'ecb-eshell-precommand-hook #[nil "`\211\207" [ecb-eshell-pre-command-point] 2])
#@419 Fit window of eshell to the output of last command. This function is added
to `eshell-post-command-hook' and only called there. This function tries to
fit the height of the compile-window best to the last command-output. The
algorithm fit the window to the height of the last command-output but do not
enlarge the compile-window over half of the frame-height and also not below
`ecb-compile-window-height' (in lines).
(defalias 'ecb-eshell-fit-window-to-output #[nil "\306 \232\205R \307 \205R \310 !\n\235\205R \205R \311\f!\205R \312
\313 S\"\212\310 !q\210\2035 \314\2026 \315\316\f`\"\\)\313 S\317\245^]\320\321!\210\322 \210*\323\211\207" [ecb-frame ecb-compile-window ecb-eshell-buffer-list ecb-eshell-fit-window-to-command-output ecb-eshell-pre-command-point ecb-compile-window-height selected-frame ecb-compile-window-live-p window-buffer integer-or-marker-p ecb-normalize-number frame-height 4 3 count-lines 2 ecb-toggle-compile-window-height 1 ecb-eshell-recenter nil compile-window-height-lines ecb-running-xemacs ecb-enlarged-compilation-window-max-height] 4 (#$ . 7501)])
#@76 Activate the eshell when ECB is activated. See `ecb-eshell-auto-activate'.
(defalias 'ecb-eshell-auto-activate-hook #[nil "\205 \301\302\303\217\207" [ecb-eshell-auto-activate #1=#:G47325 (eshell) ((error))] 3 (#$ . 8603)])
#@67 Called when we change window sizes so that the eshell can resize.
(defalias 'ecb-eshell-window-size-change #[(frame) "\205 \n\232\205 \303\304\305\217\207" [ecb-minor-mode frame ecb-frame #1=#:G47326 (ecb-eshell-recenter) ((error))] 3 (#$ . 8835)])
(byte-code "\300\301\302\"\210\303\304!\207" [add-hook ecb-activate-hook ecb-eshell-auto-activate-hook provide ecb-eshell] 3)