* gnus-sum.el (gnus-summary-limit-include-expunged): Really
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Sat, 30 Dec 2000 00:14:12 +0000 (00:14 +0000)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Sat, 30 Dec 2000 00:14:12 +0000 (00:14 +0000)
include the expunged articles.

* gnus-group.el (gnus-group-sort-by-server): New function.

* gnus.el (gnus-method-to-server-name): New function.
(gnus-group-prefixed-name): Use it.

* gnus-group.el (gnus-group-sort-function): Doc fix.
(gnus-group-sort-groups-by-server): New command.

lisp/ChangeLog
lisp/gnus-art.el
lisp/gnus-cite.el
lisp/gnus-group.el
lisp/gnus-sum.el
lisp/gnus.el
lisp/message.el

index f789721..026a5f9 100644 (file)
@@ -1,5 +1,36 @@
+2000-12-30 00:17:38  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-sum.el (gnus-summary-limit-include-expunged): Really
+       include the expunged articles.
+
+       * gnus-group.el (gnus-group-sort-by-server): New function.
+
+       * gnus.el (gnus-method-to-server-name): New function.
+       (gnus-group-prefixed-name): Use it.
+
+       * gnus-group.el (gnus-group-sort-function): Doc fix.
+       (gnus-group-sort-groups-by-server): New command.
+
 2000-12-29 13:25:10  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
+       * gnus-art.el (gnus-treat-date-english): New variable.
+       (article-date-english): New command.
+       (gnus-english-month-names): New variable.
+       (article-make-date-line): Do 'english.
+
+       * gnus-cite.el (gnus-article-fill-cited-article): Add a space
+       after the fill prefix.
+
+       * gnus-sum.el (gnus-summary-make-menu-bar): Removed "Enter
+       score...". 
+
+       * gnus-art.el (gnus-ignored-headers): Hide more headers.
+
+       * message.el (message-mode-map): Bind comment-region.
+
+       * gnus-art.el (gnus-mime-display-part): Let w3 display
+       multipart/related.
+
        * mm-bodies.el (mm-long-lines-p): New function.
        (mm-body-encoding): Use it.
        (mm-body-encoding): Encode articles with lines longer than 1000
index 146ae90..b55f266 100644 (file)
     "^List-[A-Za-z]+:" "^X-Listprocessor-Version:"
     "^X-Received:" "^X-Distribute:" "^X-Sequence:" "^X-Juno-Line-Breaks:"
     "^X-Notes-Item:" "^X-MS-TNEF-Correlator:" "^x-uunet-gateway:"
-    "^X-Received:" "^Content-length:" "X-precedence:")
+    "^X-Received:" "^Content-length:" "X-precedence:"
+    "^X-Authenticated-User:" "^X-Comment" "^X-Report:" "^X-Abuse-Info:"
+    "^X-HTTP-Proxy:" "^X-Mydeja-Info:")
   "*All headers that start with this regexp will be hidden.
 This variable can also be a list of regexps of headers to be ignored.
 If `gnus-visible-headers' is non-nil, this variable will be ignored."
@@ -897,6 +899,13 @@ See the manual for details."
   :group 'gnus-article-treat
   :type gnus-article-treat-head-custom)
 
+(defcustom gnus-treat-date-english nil
+  "Display the Date in a format that can be read aloud in English.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
+  :group 'gnus-article-treat
+  :type gnus-article-treat-head-custom)
+
 (defcustom gnus-treat-date-lapsed nil
   "Display the Date header in a way that says how much time has elapsed.
 Valid values are nil, t, `head', `last', an integer or a predicate.
@@ -1051,6 +1060,10 @@ It is a string, such as \"PGP\". If nil, ask user."
 
 ;;; Internal variables
 
+(defvar gnus-english-month-names
+  '("January" "February" "March" "April" "May" "June" "July" "August"
+    "September" "October" "November" "December"))
+
 (defvar article-goto-body-goes-to-point-min-p nil)
 (defvar gnus-article-wash-types nil)
 (defvar gnus-article-emphasis-alist nil)
@@ -1080,6 +1093,7 @@ It is a string, such as \"PGP\". If nil, ask user."
     (gnus-treat-highlight-signature gnus-article-highlight-signature)
     (gnus-treat-date-ut gnus-article-date-ut)
     (gnus-treat-date-local gnus-article-date-local)
+    (gnus-treat-date-english gnus-article-date-english)
     (gnus-treat-date-lapsed gnus-article-date-lapsed)
     (gnus-treat-date-original gnus-article-date-original)
     (gnus-treat-date-user-defined gnus-article-date-user)
@@ -2229,6 +2243,26 @@ should replace the \"Date:\" one, or should be added below it."
           (if (> real-sec 0)
               " ago"
             " in the future"))))))
+     ;; Display the date in proper English
+     ((eq type 'english)
+      (let ((dtime (decode-time time)))
+       (concat
+        "Date: the "
+        (number-to-string (nth 3 dtime))
+        (let ((digit (% (nth 3 dtime) 10)))
+          (cond
+           ((= digit 1) "st")
+           ((= digit 2) "nd")
+           ((= digit 3) "rd")
+           (t "th")))
+        " of "
+        (nth (1- (nth 4 dtime)) gnus-english-month-names)
+        " "
+        (number-to-string (nth 5 dtime))
+        " at "
+        (number-to-string (nth 0 dtime))
+        ":"
+        (number-to-string (nth 1 dtime)))))
      (t
       (error "Unknown conversion type: %s" type)))))
 
@@ -2237,6 +2271,11 @@ should replace the \"Date:\" one, or should be added below it."
   (interactive (list t))
   (article-date-ut 'local highlight))
 
+(defun article-date-english (&optional highlight)
+  "Convert the current article date to something that is proper English."
+  (interactive (list t))
+  (article-date-ut 'english highlight))
+
 (defun article-date-original (&optional highlight)
   "Convert the current article date to what it was originally.
 This is only useful if you have used some other date conversion
@@ -2751,6 +2790,7 @@ If variable `gnus-use-long-file-name' is non-nil, it is
      article-strip-blank-lines
      article-strip-all-blank-lines
      article-date-local
+     article-date-english
      article-date-iso8601
      article-date-original
      article-date-ut
@@ -3667,7 +3707,9 @@ In no internal viewer is available, use an external viewer."
     ;;;!!! Most multipart/related is an HTML message plus images.
     ;;;!!! Unfortunately we are unable to let W3 display those 
     ;;;!!! included images, so we just display it as a mixed multipart.
-    (gnus-mime-display-mixed (cdr handle)))
+    ;;(gnus-mime-display-mixed (cdr handle))
+    ;;;!!! No, w3 can display everything just fine.
+    (gnus-mime-display-part (cadr handle)))
    ((equal (car handle) "multipart/signed")
     (or (memq 'signed gnus-article-wash-types)
        (push 'signed gnus-article-wash-types))
index acbd0bb..e3e9c57 100644 (file)
@@ -439,7 +439,7 @@ If WIDTH (the numerical prefix), use that text width when filling."
          (narrow-to-region (caar marks) (caadr marks))
          (let ((adaptive-fill-regexp
                 (concat "^" (regexp-quote (cdar marks)) " *"))
-               (fill-prefix (cdar marks)))
+               (fill-prefix (concat (cdar marks) " ")))
            (fill-region (point-min) (point-max)))
          (set-marker (caar marks) nil)
          (setq marks (cdr marks)))
index fc0d383..b1dca09 100644 (file)
@@ -118,8 +118,8 @@ This function will be called with group info entries as the arguments
 for the groups to be sorted.  Pre-made functions include
 `gnus-group-sort-by-alphabet', `gnus-group-sort-by-real-name',
 `gnus-group-sort-by-unread', `gnus-group-sort-by-level',
-`gnus-group-sort-by-score', `gnus-group-sort-by-method', and
-`gnus-group-sort-by-rank'.
+`gnus-group-sort-by-score', `gnus-group-sort-by-method',
+`gnus-group-sort-by-server', and `gnus-group-sort-by-rank'.
 
 This variable can also be a list of sorting functions. In that case,
 the most significant sort function should be the last function in the
@@ -132,6 +132,7 @@ list."
                (function-item gnus-group-sort-by-level)
                (function-item gnus-group-sort-by-score)
                (function-item gnus-group-sort-by-method)
+               (function-item gnus-group-sort-by-server)
                (function-item gnus-group-sort-by-rank)
                (function :tag "other" nil)))
 
@@ -2644,6 +2645,12 @@ If REVERSE, sort in reverse order."
   (interactive "P")
   (gnus-group-sort-groups 'gnus-group-sort-by-method reverse))
 
+(defun gnus-group-sort-groups-by-server (&optional reverse)
+  "Sort the group buffer alphabetically by server name.
+If REVERSE, sort in reverse order."
+  (interactive "P")
+  (gnus-group-sort-groups 'gnus-group-sort-by-server reverse))
+
 ;;; Selected group sorting.
 
 (defun gnus-group-sort-selected-groups (n func &optional reverse)
@@ -2748,6 +2755,15 @@ sort in reverse order."
           (symbol-name (car (gnus-find-method-for-group
                              (gnus-info-group info2) info2)))))
 
+(defun gnus-group-sort-by-server (info1 info2)
+  "Sort alphabetically by server name."
+  (string< (gnus-method-to-server-name
+           (gnus-find-method-for-group
+            (gnus-info-group info1) info1))
+          (gnus-method-to-server-name
+           (gnus-find-method-for-group
+            (gnus-info-group info2) info2))))
+
 (defun gnus-group-sort-by-score (info1 info2)
   "Sort by group score."
   (< (gnus-info-score info1) (gnus-info-score info2)))
index 25300a1..460b47e 100644 (file)
@@ -1633,6 +1633,7 @@ increase the score of each group you read."
     "z" gnus-article-date-ut
     "u" gnus-article-date-ut
     "l" gnus-article-date-local
+    "p" gnus-article-date-english
     "e" gnus-article-date-lapsed
     "o" gnus-article-date-original
     "i" gnus-article-date-iso8601
@@ -1705,7 +1706,6 @@ increase the score of each group you read."
       "Score"
       (nconc
        (list
-       ["Enter score..." gnus-summary-score-entry t]
        ["Customize" gnus-score-customize t])
        (gnus-make-score-map 'increase)
        (gnus-make-score-map 'lower)
@@ -8753,7 +8753,7 @@ even ticked and dormant ones."
     (let ((scored gnus-newsgroup-scored)
          headers h)
       (while scored
-       (unless (gnus-summary-goto-subject (caar scored))
+       (unless (gnus-number-to-header (caar scored))
          (and (setq h (gnus-summary-article-header (caar scored)))
               (< (cdar scored) gnus-summary-expunge-below)
               (push h headers)))
index 8c96da4..10950f8 100644 (file)
@@ -2553,21 +2553,24 @@ that that variable is buffer-local to the summary buffers."
       (and active
           (file-exists-p active))))))
 
+(defsubst gnus-method-to-server-name (method)
+  (concat
+   (format "%s" (car method))
+   (when (and
+         (or (assoc (format "%s" (car method))
+                    (gnus-methods-using 'address))
+             (gnus-server-equal method gnus-message-archive-method))
+         (nth 1 method)
+         (not (string= (nth 1 method) "")))
+     (concat "+" (nth 1 method)))))
+
 (defun gnus-group-prefixed-name (group method)
   "Return the whole name from GROUP and METHOD."
   (and (stringp method) (setq method (gnus-server-to-method method)))
   (if (or (not method)
          (gnus-server-equal method "native"))
       group
-    (concat (format "%s" (car method))
-           (when (and
-                  (or (assoc (format "%s" (car method))
-                             (gnus-methods-using 'address))
-                      (gnus-server-equal method gnus-message-archive-method))
-                  (nth 1 method)
-                  (not (string= (nth 1 method) "")))
-             (concat "+" (nth 1 method)))
-           ":" group)))
+    (concat (gnus-method-to-server-name method) ":" group)))
 
 (defun gnus-group-real-prefix (group)
   "Return the prefix of the current group name."
index 3db7427..e76018f 100644 (file)
@@ -1432,7 +1432,8 @@ Point is left at the beginning of the narrowed-to region."
 
   (define-key message-mode-map "\C-c\C-a" 'mml-attach-file)
 
-  (define-key message-mode-map "\t" 'message-tab))
+  (define-key message-mode-map "\t" 'message-tab)
+  (define-key message-mode-map "\M-;" 'comment-region))
 
 (easy-menu-define
  message-mode-menu message-mode-map "Message Menu."
@@ -1553,8 +1554,6 @@ M-RET    message-newline-and-reformat (break the line and reformat)."
   (message-setup-fill-variables)
   ;; Allow using comment commands to add/remove quoting.
   (set (make-local-variable 'comment-start) message-yank-prefix)
-  ;;(when (fboundp 'mail-hist-define-keys)
-  ;;  (mail-hist-define-keys))
   (if (featurep 'xemacs)
       (message-setup-toolbar)
     (set (make-local-variable 'font-lock-defaults)