(vc-svn-admin-directory): New var.
[bpt/emacs.git] / lisp / time.el
index ba1b66f..74812bf 100644 (file)
@@ -1,7 +1,7 @@
 ;;; time.el --- display time, load and mail indicator in mode line of Emacs -*-coding: utf-8 -*-
 
-;; Copyright (C) 1985, 86, 87, 93, 94, 96, 2000, 2001, 2002, 2003
-;;   Free Software Foundation, Inc.
+;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1996, 2000, 2001, 2002,
+;;   2003, 2004, 2005, 2006 Free Software Foundation, Inc.
 
 ;; Maintainer: FSF
 
@@ -19,8 +19,8 @@
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
 
 ;;; Commentary:
 
@@ -31,7 +31,7 @@
 
 (defgroup display-time nil
   "Display time and load in mode line of Emacs."
-  :group 'modeline
+  :group 'mode-line
   :group 'mail)
 
 
@@ -127,11 +127,11 @@ This runs the normal hook `display-time-hook' after each update."
 (defcustom display-time-mail-face nil
   "Face to use for `display-time-mail-string'.
 If `display-time-use-mail-icon' is non-nil, the image's
-background colour is the background of this face.  Set this to
-make the mail indicator stand out on a colour display."
-  :group 'faces
+background color is the background of this face.  Set this to
+make the mail indicator stand out on a color display."
+  :group 'mode-line-faces
   :group 'display-time
-  :version "21.4"
+  :version "22.1"
   :type '(choice (const :tag "None" nil) face))
 
 (defvar display-time-mail-icon
@@ -142,7 +142,7 @@ See `display-time-use-mail-icon' and `display-time-mail-face'.")
 
 ;; Fixme: Default to icon on graphical display?
 (defcustom display-time-use-mail-icon nil
-  "Non-nil means use an icon as the mail indicator on a graphic display.
+  "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'."
   :group 'display-time
@@ -153,7 +153,7 @@ of the mode line.  It is specified by `display-time-mail-icon'."
   "String to use as the mail indicator in `display-time-string-forms'.
 This can use the Unicode letter character if you can display it."
   :group 'display-time
-  :version "21.4"
+  :version "22.1"
   :type '(choice (const "Mail")
                 ;; Use :tag here because the Lucid menu won't display
                 ;; multibyte text.
@@ -161,7 +161,7 @@ This can use the Unicode letter character if you can display it."
                 string))
 
 (defcustom display-time-format nil
-  "*A string specifying the format for displaying the time in the mode line.
+  "*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'."
@@ -173,9 +173,11 @@ depend on `display-time-day-and-date' and `display-time-24hr-format'."
   '((if (and (not display-time-format) display-time-day-and-date)
        (format-time-string "%a %b %e " now)
       "")
-    (format-time-string (or display-time-format
-                           (if display-time-24hr-format "%H:%M" "%-I:%M%p"))
-                       now)
+    (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
        ;; Build the string every time to act on customization.
@@ -198,10 +200,11 @@ depend on `display-time-day-and-date' and `display-time-24hr-format'."
                                  (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)))
       ""))
-  "*A list of expressions governing display of the time in the mode line.
+  "*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.
 
@@ -291,6 +294,7 @@ update which can wait for the next redisplay."
                          (concat (substring str 0 -2) "." (substring str -2))
                          'local-map (make-mode-line-mouse-map
                                      'mouse-2 'display-time-next-load-average)
+                         'mouse-face 'mode-line-highlight
                          'help-echo (concat
                                      "System load average for past "
                                      (if (= 0 display-time-load-average)
@@ -329,7 +333,7 @@ update which can wait for the next redisplay."
                              ;; Record that mail file is accessible.
                              (setq display-time-server-down-time nil)))))))
          (24-hours (substring time 11 13))
-         (hour (string-to-int 24-hours))
+         (hour (string-to-number 24-hours))
          (12-hours (int-to-string (1+ (% (+ hour 11) 12))))
          (am-pm (if (>= hour 12) "pm" "am"))
          (minutes (substring time 14 16))