Changes committed gnus/lisp (5 files)
"Miles Bader" <[email protected]>
| Newsgroups | gmane.emacs.gnus.commits |
|---|---|
| Message-ID | <[email protected]> |
Modified: ChangeLog deuglify.el gnus-art.el mm-util.el time-date.el Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 1056, 1060, 1062, 1073-1074, 1076) - Remove incorrect entries from lisp/gnus/ChangeLog - Update from CVS - Merge from gnus--devo--0 - Merge from emacs--rel--22 - Revert removal of `mm-hack-charsets' in Gnus * emacs--rel--22 (patch 217, 222, 232) - Update from CVS - Merge from gnus--rel--5.10 2008-02-14 Glenn Morris <[email protected]> * lisp/calendar/time-date.el (format-seconds): New function. 2008-02-10 Reiner Steib <[email protected]> * lisp/mm-util.el (mm-codepage-setup): If cp-supported-codepages isn't fbound (Emacs 23 unicode), signal an error. 2008-02-08 Glenn Morris <[email protected]> * lisp/gnus-art.el (pgg-display-output-buffer): Declare as function. Revision: [email protected]/gnus--devo--0--patch-460 Index: ChangeLog diff -u gnus/lisp/ChangeLog:7.1756 gnus/lisp/ChangeLog:7.1757 --- ChangeLog:7.1756 Sun Feb 24 11:29:15 2008 +++ ChangeLog Sun Feb 24 16:39:37 2008 @@ -10,6 +10,10 @@ * gnus-util.el (gnus-y-or-n-p, gnus-y-or-n-p): Update comments. +2008-02-14 Glenn Morris <[email protected]> + + * calendar/time-date.el (format-seconds): New function. + 2008-02-14 Reiner Steib <[email protected]> * nnmail.el (nnmail-message-id-cache-file): Derive from @@ -39,6 +43,15 @@ * Makefile.in (datarootdir): Define. (EMACS_COMP, install-el, install-elc, install-el-elc): Quote directory name that might contain whitespace. + +2008-02-10 Reiner Steib <[email protected]> + + * mm-util.el (mm-codepage-setup): If cp-supported-codepages isn't + fbound (Emacs 23 unicode), signal an error. + +2008-02-08 Glenn Morris <[email protected]> + + * gnus-art.el (pgg-display-output-buffer): Declare as function. 2008-02-07 Tassilo Horn <[email protected]> Index: deuglify.el diff -u gnus/lisp/deuglify.el:7.17 gnus/lisp/deuglify.el:7.18 --- deuglify.el:7.17 Sun Jan 20 06:23:57 2008 +++ deuglify.el Sun Feb 24 16:39:37 2008 @@ -68,7 +68,7 @@ ;; > verb. This sentence no verb. This sentence no verb. This ;; > sentence no verb. ;; -;; Unwrapping "You forgot in all your sentences." would be illegal as +;; Unwrapping "You forgot in all your sentences." would be invalid as ;; this part wasn't intended to be cited text. ;; `gnus-article-outlook-unwrap-lines' will only unwrap lines if the resulting ;; citation line will be of a certain maximum length. You can control Index: gnus-art.el diff -u gnus/lisp/gnus-art.el:7.260 gnus/lisp/gnus-art.el:7.261 --- gnus-art.el:7.260 Fri Feb 1 07:44:02 2008 +++ gnus-art.el Sun Feb 24 16:39:37 2008 @@ -7895,6 +7895,9 @@ (Info-directory) (Info-menu url)) +;; Called after pgg-snarf-keys-region, which autoloads pgg.el. +(declare-function pgg-display-output-buffer "pgg" (start end status)) + (defun gnus-button-openpgp (url) "Retrieve and add an OpenPGP key given URL from an OpenPGP header." (with-temp-buffer Index: mm-util.el diff -u gnus/lisp/mm-util.el:7.75 gnus/lisp/mm-util.el:7.76 --- mm-util.el:7.75 Sun Feb 24 07:23:40 2008 +++ mm-util.el Sun Feb 24 16:39:37 2008 @@ -219,7 +219,10 @@ the alias. Else windows-NUMBER is used." (interactive (let ((completion-ignore-case t) - (candidates (cp-supported-codepages))) + (candidates (if (fboundp 'cp-supported-codepages) + (cp-supported-codepages) + ;; Removed in Emacs 23 (unicode), sosignal an error: + (error "`codepage-setup' is obsolete in this Emacs version.")))) (list (completing-read "Setup DOS Codepage: (default 437) " candidates nil t nil nil "437")))) (when alias Index: time-date.el diff -u gnus/lisp/time-date.el:7.12 gnus/lisp/time-date.el:7.13 --- time-date.el:7.12 Sun Jan 20 06:23:57 2008 +++ time-date.el Sun Feb 24 16:39:37 2008 @@ -1,7 +1,7 @@ ;;; time-date.el --- Date and time handling functions -;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 -;; Free Software Foundation, Inc. +;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +;; 2007, 2008 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen <[email protected]> ;; Masanobu Umeda <[email protected]> @@ -252,6 +252,85 @@ (condition-case () (date-to-time date) (error '(0 0)))) + + +;;;###autoload +(defun format-seconds (string seconds) + "Use format control STRING to format the number SECONDS. +The valid format specifiers are: +%y is the number of (365-day) years. +%d is the number of days. +%h is the number of hours. +%m is the number of minutes. +%s is the number of seconds. +%z is a non-printing control flag (see below). +%% is a literal \"%\". + +Upper-case specifiers are followed by the unit-name (e.g. \"years\"). +Lower-case specifiers return only the unit. + +\"%\" may be followed by a number specifying a width, with an +optional leading \".\" for zero-padding. For example, \"%.3Y\" will +return something of the form \"001 year\". + +The \"%z\" specifier does not print anything. When it is used, specifiers +must be given in order of decreasing size. To the left of \"%z\", nothing +is output until the first non-zero unit is encountered. + +This function does not work for SECONDS greater than `most-positive-fixnum'." + (let ((start 0) + (units '(("y" "year" 31536000) + ("d" "day" 86400) + ("h" "hour" 3600) + ("m" "minute" 60) + ("s" "second" 1) + ("z"))) + (case-fold-search t) + spec match usedunits zeroflag larger prev name unit num zeropos) + (while (string-match "%\\.?[0-9]*\\(.\\)" string start) + (setq start (match-end 0) + spec (match-string 1 string)) + (unless (string-equal spec "%") + (or (setq match (assoc-string spec units t)) + (error "Bad format specifier: `%s'" spec)) + (if (assoc-string spec usedunits t) + (error "Multiple instances of specifier: `%s'" spec)) + (if (string-equal (car match) "z") + (setq zeroflag t) + (unless larger + (setq unit (nth 2 match) + larger (and prev (> unit prev)) + prev unit))) + (push match usedunits))) + (and zeroflag larger + (error "Units are not in decreasing order of size")) + (dolist (u units) + (setq spec (car u) + name (cadr u) + unit (nth 2 u)) + (when (string-match (format "%%\\(\\.?[0-9]+\\)?\\(%s\\)" spec) string) + (if (string-equal spec "z") ; must be last in units + (setq string + (replace-regexp-in-string + "%z" "" + (substring string (min (or zeropos (match-end 0)) + (match-beginning 0))))) + ;; Cf article-make-date-line in gnus-art. + (setq num (floor seconds unit) + seconds (- seconds (* num unit))) + ;; Start position of the first non-zero unit. + (or zeropos + (setq zeropos (unless (zerop num) (match-beginning 0)))) + (setq string + (replace-match + (format (concat "%" (match-string 1 string) "d%s") num + (if (string-equal (match-string 2 string) spec) + "" ; lower-case, no unit-name + (format " %s%s" name + (if (= num 1) "" "s")))) + t t string)))))) + (replace-regexp-in-string "%%" "%" string)) + (provide 'time-date)