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 \204t\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)