;ELC
;;; Compiled by LTX@Xue-LingTaos-MacBook-Pro.local on Wed Mar 16 23:09:52 2011
;;; from file /Users/LTX/Projects/Emacs/emacs/lisp/time.el
;;; in Emacs version 24.0.50.1
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`time.el' was compiled for Emacs 23 or later"))

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


(custom-declare-group 'display-time nil "Display time and load in mode line of Emacs." :group 'mode-line :group 'mail)
#@206 File name of mail inbox file, for indicating existence of new mail.
Non-nil and not a string means don't check for mail; nil means use
default, which is system-dependent, and is the same as used by Rmail.
(custom-declare-variable 'display-time-mail-file 'nil '(#$ . 658) :type '(choice (const :tag "None" none) (const :tag "Default" nil) (file :format "%v")) :group 'display-time)
#@199 Name of mail inbox directory, for indicating existence of new mail.
Any nonempty regular file in the directory is regarded as newly arrived mail.
If nil, do not check a directory for arriving mail.
(custom-declare-variable 'display-time-mail-directory 'nil '(#$ . 1046) :type '(choice (const :tag "None" nil) (directory :format "%v")) :group 'display-time)
#@247 Function to call, for indicating existence of new mail.
If nil, that means use the default method: check that the file
specified by `display-time-mail-file' is nonempty or that the
directory `display-time-mail-directory' contains nonempty files.
(custom-declare-variable 'display-time-mail-function 'nil '(#$ . 1410) :type '(choice (const :tag "Default" nil) (function)) :group 'display-time)
#@299 Which load average value will be shown in the mode line.
Almost every system can provide values of load for past 1 minute, past 5 or
past 15 minutes.  The default is to display 1 minute load average.
The value can be one of:

  0   => 1 minute load
  1   => 5 minutes load
  2   => 15 minutes load
(custom-declare-variable 'display-time-default-load-average '0 '(#$ . 1810) :type '(choice (const :tag "1 minute load" 0) (const :tag "5 minutes load" 1) (const :tag "15 minutes load" 2) (const :tag "None" nil)) :group 'display-time)
#@50 Load average currently being shown in mode line.
(defvar display-time-load-average nil (#$ . 2348))
#@71 Load-average values below this value won't be shown in the mode line.
(custom-declare-variable 'display-time-load-average-threshold '0.1 '(#$ . 2454) :type 'number :group 'display-time)
#@76 Non-nil means \[display-time] should display day and date as well as time.
(custom-declare-variable 'display-time-day-and-date 'nil '(#$ . 2646) :type 'boolean :group 'display-time)
(byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list display-time-timer default-boundp set-default nil] 3)
#@51 Seconds between updates of time in the mode line.
(custom-declare-variable 'display-time-interval '60 '(#$ . 2969) :type 'integer :group 'display-time)
#@134 Non-nil indicates time should be displayed as hh:mm, 0 <= hh <= 23.
A value of nil means 1 <= hh <= 12, and an AM/PM suffix is used.
(custom-declare-variable 'display-time-24hr-format 'nil '(#$ . 3128) :type 'boolean :group 'display-time)
(byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list display-time-string default-boundp set-default nil] 3)
#@75 List of functions to be called when the time is updated on the mode line.
(custom-declare-variable 'display-time-hook 'nil '(#$ . 3509) :type 'hook :group 'display-time)
#@114 Time when mail file's file system was recorded to be down.
If that file system seems to be up, the value is nil.
(defvar display-time-server-down-time nil (#$ . 3686))
#@382 Alist of zoneinfo-style time zones and places for `display-time-world'.
Each element has the form (TIMEZONE LABEL).
TIMEZONE should be a string of the form AREA/LOCATION, where AREA is
the name of a region -- a continent or ocean, and LOCATION is the name
of a specific location, e.g., a city, within that region.
LABEL is a string to display as the label of that TIMEZONE's time.
(custom-declare-variable 'zoneinfo-style-world-list ''(("America/Los_Angeles" "Seattle") ("America/New_York" "New York") ("Europe/London" "London") ("Europe/Paris" "Paris") ("Asia/Calcutta" "Bangalore") ("Asia/Tokyo" "Tokyo")) '(#$ . 3861) :group 'display-time :type '(repeat (list string string)) :version "23.1")
#@405 Alist of traditional-style time zones and places for `display-time-world'.
Each element has the form (TIMEZONE LABEL).
TIMEZONE should be a string of the form:

     std[+|-]offset[dst[offset][,date[/time],date[/time]]]

See the documentation of the TZ environment variable on your system,
for more details about the format of TIMEZONE.
LABEL is a string to display as the label of that TIMEZONE's time.
(custom-declare-variable 'legacy-style-world-list ''(("PST8PDT" "Seattle") ("EST5EDT" "New York") ("GMT0BST" "London") ("CET-1CDT" "Paris") ("IST-5:30" "Bangalore") ("JST-9" "Tokyo")) '(#$ . 4564) :group 'display-time :type '(repeat (list string string)) :version "23.1")
#@376 Alist of time zones and places for `display-time-world' to display.
Each element has the form (TIMEZONE LABEL).
TIMEZONE should be in the format supported by `set-time-zone-rule' on
your system.  See the documentation of `zoneinfo-style-world-list' and
`legacy-style-world-list' for two widely used formats.
LABEL is a string to display as the label of that TIMEZONE's time.
(custom-declare-variable 'display-time-world-list '(let (gmt nyt) (set-time-zone-rule "America/New_York") (setq nyt (format-time-string "%z")) (set-time-zone-rule "Europe/London") (setq gmt (format-time-string "%z")) (set-time-zone-rule nil) (if (string-equal nyt gmt) legacy-style-world-list zoneinfo-style-world-list)) '(#$ . 5247) :group 'display-time :type '(repeat (list string string)) :version "23.1")
#@57 Format of the time displayed, see `format-time-string'.
(custom-declare-variable 'display-time-world-time-format '"%A %d %B %R %Z" '(#$ . 6037) :group 'display-time :type 'string :version "23.1")
#@33 Name of the world clock buffer.
(custom-declare-variable 'display-time-world-buffer-name '"*wclock*" '(#$ . 6239) :group 'display-time :type 'string :version "23.1")
#@50 If non-nil, a timer will update the world clock.
(custom-declare-variable 'display-time-world-timer-enable 't '(#$ . 6411) :group 'display-time :type 'boolean :version "23.1")
#@51 Interval in seconds for updating the world clock.
(custom-declare-variable 'display-time-world-timer-second '60 '(#$ . 6593) :group 'display-time :type 'integer :version "23.1")
#@36 Keymap of Display Time World mode.
(defvar display-time-world-mode-map (byte-code "\301 \302\303\304#\210)\207" [map make-sparse-keymap define-key "q" kill-this-buffer] 4) (#$ . 6777))
#@271 Enable display of time, load level, and mail flag in mode lines.
This display updates automatically every minute.
If `display-time-day-and-date' is non-nil, the current day and date
are displayed as well.
This runs the normal hook `display-time-hook' after each update.
(defalias 'display-time #[nil "\300\301!\207" [display-time-mode 1] 2 (#$ . 6972) nil])
#@217 Face to use for `display-time-mail-string'.
If `display-time-use-mail-icon' is non-nil, the image's
background color is the background of this face.  Set this to
make the mail indicator stand out on a color display.
(custom-declare-variable 'display-time-mail-face 'nil '(#$ . 7337) :group 'mode-line-faces :group 'display-time :version "22.1" :type '(choice (const :tag "None" nil) face))
#@137 Image specification to offer as the mail indicator on a graphic display.
See `display-time-use-mail-icon' and `display-time-mail-face'.
(defvar display-time-mail-icon (find-image '((:type xpm :file "letter.xpm" :ascent center) (:type pbm :file "letter.pbm" :ascent center))) (#$ . 7734))
#@200 Non-nil means use an icon as mail indicator on a graphic display.
Otherwise use `display-time-mail-string'.  The icon may consume less
of the mode line.  It is specified by `display-time-mail-icon'.
(custom-declare-variable 'display-time-use-mail-icon 'nil '(#$ . 8029) :group 'display-time :type 'boolean)
#@134 String to use as the mail indicator in `display-time-string-forms'.
This can use the Unicode letter character if you can display it.
(custom-declare-variable 'display-time-mail-string '"Mail" '(#$ . 8343) :group 'display-time :version "22.1" :type '(choice (const "Mail") (const :tag "Unicode letter character" "âœ‰") string))
#@254 String specifying format for displaying the time in the mode line.
See the function `format-time-string' for an explanation of
how to write this string.  If this is nil, the defaults
depend on `display-time-day-and-date' and `display-time-24hr-format'.
(custom-declare-variable 'display-time-format 'nil '(#$ . 8677) :type '(choice (const :tag "Default" nil) string) :group 'display-time)
#@718 List of expressions governing display of the time in the mode line.
For most purposes, you can control the time format using `display-time-format'
which is a more standard interface.

This expression is a list of expressions that can involve the keywords
`load', `day', `month', and `year', `12-hours', `24-hours', `minutes',
`seconds', all numbers in string form, and `monthname', `dayname', `am-pm',
and `time-zone' all alphabetic strings, and `mail' a true/nil value.

For example, the form

  '((substring year -2) "/" month "/" day
    " " 24-hours ":" minutes ":" seconds
    (if time-zone " (") time-zone (if time-zone ")")
    (if mail " Mail" ""))

would give mode line times like `94/12/30 21:07:48 (UTC)'.
(custom-declare-variable 'display-time-string-forms ''((if (and (not display-time-format) display-time-day-and-date) (format-time-string "%a %b %e " now) #1="") (propertize (format-time-string (or display-time-format (if display-time-24hr-format "%H:%M" "%-I:%M%p")) now) 'help-echo (format-time-string "%a %b %e, %Y" now)) load (if mail (concat " " (propertize display-time-mail-string 'display `(when (and display-time-use-mail-icon (display-graphic-p)) ,@display-time-mail-icon ,@(if (and display-time-mail-face (memq (plist-get (cdr display-time-mail-icon) :type) '(pbm xbm))) (let ((bg (face-attribute display-time-mail-face :background))) (if (stringp bg) (list :background bg))))) 'face display-time-mail-face 'help-echo "You have new mail; mouse-2: Read mail" 'mouse-face 'mode-line-highlight 'local-map (make-mode-line-mouse-map 'mouse-2 read-mail-command))) #1#)) '(#$ . 9073) :type 'sexp :group 'display-time)
(defalias 'display-time-event-handler #[nil "\305 \210\306\307!\210\310 	\311\n\312H\n\313H\n\314HE\n\315H\316_\307#\211@@V\206a@@U\2039A@A@V\206a@@U\203UA@A@U\203U\3138\3138V\206a\317\n\320\f\"\f#\210\321\n!+\207" [current display-time-timer timer next-time display-time-interval display-time-update sit-for 0 current-time timer-relative-time 1 2 3 4 5 timer-set-time timer-next-integral-multiple-of-time timer-activate] 6])
(defalias 'display-time-next-load-average #[nil "T\211\301U\203\302\303 \210\304\302!\207" [display-time-load-average 3 0 display-time-update sit-for] 2 nil nil])
(defalias 'display-time-mail-check-directory #[nil "\303\304\"\305\211\203,	\305U\203,	\306\n@!\203\"\307\310\n@!8\206#\305\\\nA\211\204	\305V\2053	*\207" [display-time-mail-directory size mail-files directory-files t 0 file-regular-p 7 file-attributes] 5])
#@193 Update the display-time info for the mode line.
However, don't redisplay right now.

This is used for things like Rmail `g' that want to force an
update which can wait for the next redisplay.
(defalias 'display-time-update #[nil "\306 \307!\n\204\310\202\311\312\313\217\f\206\"\314\315!\206\"
\316 P./\203// \206\2060\2039\317 \206\206.;\205\2061\203cA@1Z\320V\204cA@1W\205\206A@1Z\321V\205\206\306 2\322.!\306 A@2A@Z\323V\203\202\306 A@1\202\205\3111)3	\324\325O4\3264!5\3275\324\\\330\246T!65\330Y\203\252\331\202\253\3327	\333\334O8	\335\336O9\337!A@:	\340\341O;	\323\342O<	\343\344O=\345=\346\"A>	\347\350O?\351\352@\310#A\353\354!\210.\355 \207" [now time display-time-load-average load display-time-mail-file rmail-spool-directory current-time current-time-string #1="" nil (byte-code "\303_	\304 8V\203
\305\207\306\307	\304 8\"\310\n\311\312O\313\n\312\314OQ\315\316\317\320\"\321\322\323\324	\311U\2033\325\202>	\326U\203=\327\202>\330\331Q&)\207" [display-time-load-average-threshold display-time-load-average str 100 load-average #1# format " %03d" propertize 0 -2 "." nil local-map make-mode-line-mouse-map mouse-2 display-time-next-load-average mouse-face mode-line-highlight help-echo "System load average for past " "1 minute" 1 "5 minutes" "15 minutes" "; mouse-2: next"] 10) ((error #1#)) getenv "MAIL" user-login-name display-time-mail-check-directory 1200 -64336 display-time-file-nonempty-p 20 11 13 string-to-number int-to-string 12 "pm" "am" 14 16 17 19 current-time-zone 8 10 24 4 7 assoc (("Jan" . "1") ("Feb" . "2") ("Mar" . "3") ("Apr" . "4") ("May" . "5") ("Jun" . "6") ("Jul" . "7") ("Aug" . "8") ("Sep" . "9") ("Oct" . "10") ("Nov" . "11") ("Dec" . "12")) 0 3 mapconcat eval run-hooks display-time-hook force-mode-line-update mail-spool-file display-time-mail-function display-time-mail-directory display-time-server-down-time start-time mail 24-hours hour 12-hours am-pm minutes seconds time-zone day year monthname month dayname display-time-string-forms display-time-string] 4 (#$ . 11603)])
(defalias 'display-time-file-nonempty-p #[(file) "\303Z\304\n!\205\305\306\307\310\n!!8W)\207" [display-time-interval remote-file-name-inhibit-cache file 5 file-exists-p 0 7 file-attributes file-chase-links] 5])
#@272 Non-nil if Display-Time mode is enabled.
See the command `display-time-mode' for a description of this minor mode.
Setting this variable directly does not take effect;
either customize it (see the info node `Easy Customization')
or call the function `display-time-mode'.
(custom-declare-variable 'display-time-mode 'nil '(#$ . 13920) :set 'custom-set-minor-mode :initialize 'custom-initialize-default :group 'display-time :type 'boolean)
#@447 Toggle display of time, load level, and mail flag in mode lines.
With a numeric arg, enable this display if arg is positive.

When this display is enabled, it updates automatically every minute
(you can control the number of seconds between updates by
customizing `display-time-interval').
If `display-time-day-and-date' is non-nil, the current day and date
are displayed as well.
This runs the normal hook `display-time-hook' after each update.
(defalias 'display-time-mode #[(&optional arg) "\306 	\307=\203\n?\202\310	!\311V\203\312!\210\313\314
\204&\315#$\n\203K\304
>\2049\316
\317\"\320\321%\322#\323 \210\324\325\322\"\210\202P\326\325\322\"\210\327\330\n\203Z\331\202[\332\"\210\333\334!\203\200\335\302!\210\306 \203s\306 \232\203\200\336\337\n\203}\340\202~\341\"\210)\342 \210\n\207" [#1=#:last-message arg display-time-mode display-time-timer display-time-string global-mode-string current-message toggle prefix-numeric-value 0 cancel-timer nil #2="" (#2#) append (display-time-string) run-at-time t display-time-event-handler display-time-update add-hook rmail-after-get-new-mail-hook remove-hook run-hooks display-time-mode-hook display-time-mode-on-hook display-time-mode-off-hook called-interactively-p any customize-mark-as-set message "Display-Time mode %sabled" "en" "dis" force-mode-line-update display-time-default-load-average display-time-load-average display-time-interval] 4 (#$ . 14365) (list (or current-prefix-arg 'toggle))])
(byte-code "\303\304\305\306\300!\205\n\305\211%\210\307\310N\204\311\307\310\312\313!#\210\306\314!\204(\311\314\315\316#\210\314	B\317\314!\2048\320\314\321 \"\210\314\310N\204F\311\314\310\312\322!#\210\306\323!\204R\311\323\315\316#\210\323	B\317\323!\204b\320\323\324 \"\210\323\310N\204p\311\323\310\312\325!#\210\311\302\315\316#\210\302	B\317\302!\204\212\320\302\326\302\305\"\210\n\"\210\302\310N\204\230\311\302\310\312\327!#\210\311\316\330\305#\207" [display-time-mode-map current-load-list display-time-world-mode-abbrev-table add-minor-mode display-time-mode nil boundp display-time-world-mode-hook variable-documentation put purecopy "Hook run when entering World clock mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" display-time-world-mode-map definition-name display-time-world-mode default-boundp set-default make-sparse-keymap "Keymap for `display-time-world-mode'." display-time-world-mode-syntax-table make-syntax-table "Syntax table for `display-time-world-mode'." define-abbrev-table "Abbrev table for `display-time-world-mode'." derived-mode-parent] 6)
#@222 Major mode for buffer that displays times in various time zones.
See `display-time-world'.

This mode runs the hook `display-time-world-mode-hook', as the final step
during initialization.

\{display-time-world-mode-map}
(defalias 'display-time-world-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210
\315)\316\317!\207" [delay-mode-hooks major-mode mode-name display-time-world-mode-map display-time-world-mode-syntax-table display-time-world-mode-abbrev-table make-local-variable t fundamental-mode display-time-world-mode "World clock" use-local-map set-syntax-table nil run-mode-hooks display-time-world-mode-hook local-abbrev-table show-trailing-whitespace] 2 (#$ . 17037) nil])
#@74 Replace current buffer text with times in various zones, based on ALIST.
(defalias 'display-time-world-display #[(alist) "\306\211\307 \210\310\311\211\312\216
\311\211\203Q@\211\211A@)\313!\314@!\210\315!BB\fV\203G*A\211\204+\316\317\f!\320Q\237\311\211\203}@\321\n@A#c\210A\211\204d-\322\323!*\207" [buffer-undo-list inhibit-read-only fmt result max-width alist t erase-buffer 0 nil ((set-time-zone-rule nil)) string-width set-time-zone-rule format-time-string "%-" int-to-string "s %s\n" format delete-char -1 zone #1=#:--cl-dolist-temp-- x label width display-time-world-time-format timedata #2=#:--cl-dolist-temp--] 5 (#$ . 17752)])
#@172 Enable updating display of times in various time zones.
`display-time-world-list' specifies the zones.
To turn off the world time display, go to that window and type `q'.
(defalias 'display-time-world #[nil "\203\304	!\204\305\306\n\307#\210r\310	!q\210\311!\210)\312	!\210\313 \210\314 \207" [display-time-world-timer-enable display-time-world-buffer-name display-time-world-timer-second display-time-world-list get-buffer run-at-time t display-time-world-timer get-buffer-create display-time-world-display pop-to-buffer fit-window-to-buffer display-time-world-mode] 4 (#$ . 18459) nil])
(defalias 'display-time-world-timer #[nil "\305!\203r\305!q\210\306	!)\207\n\205/\211A@\307\f\310H!\311\232\203+\312\f!\210)\202)\207" [display-time-world-buffer-name display-time-world-list timer-list list elt get-buffer display-time-world-display symbol-name 5 "display-time-world-timer" cancel-timer] 3])
#@192 Return a string giving the uptime of this instance of Emacs.
FORMAT is a string to format the result, using `format-seconds'.
For example, the Unix uptime command format is "%D, %z%2h:%.2m".
(defalias 'emacs-uptime #[(&optional format) "\303\206\304\305\306\307 	\"!\"\310\311!\203\312\313\n\"\202\n)\207" [format before-init-time str format-seconds "%Y, %D, %H, %M, %z%S" float-time time-subtract current-time called-interactively-p interactive message "%s"] 6 (#$ . 19382) nil])
#@66 Return a string giving the duration of the Emacs initialization.
(defalias 'emacs-init-time #[nil "\303\304\305\306	\"!\"\307\310!\203\311\312\n\"\202\n)\207" [after-init-time before-init-time str format "%.1f seconds" float-time time-subtract called-interactively-p interactive message "%s"] 6 (#$ . 19877) nil])
(provide 'time)
