;ELC
;;; Compiled by LTX@Xue-LingTaos-MacBook-Pro.local on Wed Mar 16 23:13:13 2011
;;; from file /Users/LTX/Projects/Emacs/emacs/lisp/eshell/em-prompt.el
;;; in Emacs version 24.0.50.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.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(custom-declare-group 'eshell-prompt nil "This module provides command prompts, and navigation between them,\nas is common with most shells." :tag "Command prompts" :group 'eshell-module)
#@59 A list of functions to call when loading `eshell-prompt'.
(custom-declare-variable 'eshell-prompt-load-hook 'nil '(#$ . 738) :version "24.1" :type 'hook :group 'eshell-prompt)
#@129 A function that returns the Eshell prompt string.
Make sure to update `eshell-prompt-regexp' so that it will match your
prompt.
(custom-declare-variable 'eshell-prompt-function '#'(lambda nil (concat (abbreviate-file-name (eshell/pwd)) (if (= (user-uid) 0) " # " " $ "))) '(#$ . 921) :type 'function :group 'eshell-prompt)
#@254 A regexp which fully matches your eshell prompt.
This setting is important, since it affects how eshell will interpret
the lines that are passed to it.
If this variable is changed, all Eshell buffers must be exited and
re-entered for it to take effect.
(custom-declare-variable 'eshell-prompt-regexp '"^[^#$\n]* [#$] " '(#$ . 1251) :type 'regexp :group 'eshell-prompt)
#@49 If non-nil, Eshell should highlight the prompt.
(custom-declare-variable 'eshell-highlight-prompt 't '(#$ . 1626) :type 'boolean :group 'eshell-prompt)
(byte-code "\300\301\302\303\304\301%\210\305\306\307\301#\210\305\306\310\311\312!\206\313#\207" [custom-declare-face eshell-prompt ((((class color) (background light)) (:foreground "Red" :bold t)) (((class color) (background dark)) (:foreground "Pink" :bold t)) (t (:bold t))) "The face used to highlight prompt strings.\nFor highlighting other kinds of strings -- similar to shell mode's\nbehavior -- simply use an output filer which changes text properties." :group put eshell-prompt-face face-alias obsolete-face purecopy "22.1" t] 6)
#@59 A list of functions to call before outputting the prompt.
(custom-declare-variable 'eshell-before-prompt-hook 'nil '(#$ . 2326) :type 'hook :options '(eshell-begin-on-new-line) :group 'eshell-prompt)
#@278 A list of functions to call after outputting the prompt.
Note that if `eshell-scroll-show-maximum-output' is non-nil, then
setting `eshell-show-maximum-output' here won't do much.  It depends
on whether the user wants the resizing to happen while output is
arriving, or after.
(custom-declare-variable 'eshell-after-prompt-hook 'nil '(#$ . 2533) :type 'hook :options '(eshell-show-maximum-output) :group 'eshell-prompt)
#@32 Initialize the prompting code.
(defalias 'eshell-prompt-initialize #[nil "?\205+\305\306\307\310\311$\210\312\301!\210	\203\312\302!\210	\312\303!\210\313\314\f\315\316#\210\314\f\317\320#\207" [eshell-non-interactive-p eshell-prompt-regexp paragraph-start eshell-skip-prompt-function eshell-command-map add-hook eshell-post-command-hook eshell-emit-prompt nil t make-local-variable eshell-skip-prompt define-key [(control 110)] eshell-next-prompt [(control 112)] eshell-previous-prompt] 5 (#$ . 2959)])
#@54 Emit a prompt if eshell is being used interactively.
(defalias 'eshell-emit-prompt #[nil "\305\306!\210\204	`\307\223\210\202' \203\310\311\nG\312\n$\210\n\313\307\f\"\210*\305\314!\207" [eshell-prompt-function eshell-last-output-end prompt eshell-highlight-prompt string run-hooks eshell-before-prompt-hook nil add-text-properties 0 (read-only t face eshell-prompt rear-nonsticky (face read-only)) eshell-output-filter eshell-after-prompt-hook] 5 (#$ . 3475)])
#@229 Search backward through buffer for match for REGEXP.
Matches are searched for on lines that match `eshell-prompt-regexp'.
With prefix argument N, search for Nth previous match.
If N is negative, find the next or Nth next match.
(defalias 'eshell-backward-matching-input #[(regexp arg) "\305	Q\212\306V\203\306\202\307\210\310\n\311\312$\205`)\211\204,\313\314!\210\315 \2021\fb\210\316 *\207" [eshell-prompt-regexp regexp re arg pos ".*" 0 1 re-search-backward nil t message "Not found" ding eshell-bol] 6 (#$ . 3954) (eshell-regexp-arg "Backward input matching (regexp): ")])
#@237 Search forward through buffer for match for REGEXP.
Matches are searched for on lines that match `eshell-prompt-regexp'.
With prefix argument N, search for Nth following match.
If N is negative, find the previous or Nth previous match.
(defalias 'eshell-forward-matching-input #[(regexp arg) "\302	[\"\207" [regexp arg eshell-backward-matching-input] 3 (#$ . 4552) (eshell-regexp-arg "Forward input matching (regexp): ")])
#@75 Move to end of Nth next prompt in the buffer.
See `eshell-prompt-regexp'.
(defalias 'eshell-next-prompt #[(n) "\301!\210\302 \207" [n forward-paragraph eshell-skip-prompt] 2 (#$ . 4982) "p"])
#@79 Move to end of Nth previous prompt in the buffer.
See `eshell-prompt-regexp'.
(defalias 'eshell-previous-prompt #[(n) "\301T[!\207" [n eshell-next-prompt] 2 (#$ . 5181) "p"])
#@130 Skip past the text matching regexp `eshell-prompt-regexp'.
If this takes us past the end of the current line, don't skip at all.
(defalias 'eshell-skip-prompt #[nil "\302 \303	!\205\304\225X\205\304\225b)\207" [eol eshell-prompt-regexp line-end-position looking-at 0] 2 (#$ . 5364)])
(provide 'em-prompt)
