;;; time-stamp.el --- Maintain last change time stamps in files edited by Emacs
-;; Copyright (C) 1989, 1993-1995, 1997, 2000-2011
-;; Free Software Foundation, Inc.
+;; Copyright (C) 1989, 1993-1995, 1997, 2000-2015 Free Software
+;; Foundation, Inc.
;; This file is part of GNU Emacs.
;; static char *ts = "sdmain.c Time-stamp: <2001-08-13 10:20:51 gildea>";
;; See the top of `time-stamp.el' for another example.
-;; To use time-stamping, add this line to your .emacs file:
+;; To use time-stamping, add this line to your init file:
;; (add-hook 'before-save-hook 'time-stamp)
;; Now any time-stamp templates in your files will be updated automatically.
(defun time-stamp ()
"Update the time stamp string(s) in the buffer.
A template in a file can be automatically updated with a new time stamp
-every time you save the file. Add this line to your .emacs file:
+every time you save the file. Add this line to your init file:
(add-hook 'before-save-hook 'time-stamp)
or customize `before-save-hook' through Custom.
Normally the template must appear in the first 8 lines of a file and
(let ((ts-real-time-zone (getenv "TZ")))
(unwind-protect
(progn
- (set-time-zone-rule time-stamp-time-zone)
+ (setenv "TZ" time-stamp-time-zone)
(format-time-string
(time-stamp-string-preprocess ts-format)))
- (set-time-zone-rule ts-real-time-zone)))
+ (setenv "TZ" ts-real-time-zone)))
(format-time-string
(time-stamp-string-preprocess ts-format)))
;; handle version 1 compatibility
(result "")
field-width
field-result
- alt-form change-case require-padding
+ alt-form change-case
(paren-level 0))
(while (< ind fmt-len)
(setq cur-char (aref format ind))
(cond
((eq cur-char ?%)
;; eat any additional args to allow for future expansion
- (setq alt-form nil change-case nil require-padding nil field-width "")
+ (setq alt-form nil change-case nil field-width "")
(while (progn
(setq ind (1+ ind))
(setq cur-char (if (< ind fmt-len)