+Sat Mar 8 08:34:22 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.4.23 is released.
+
+Sat Mar 8 02:09:53 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-font-lock-keywords): Recognize continuation
+ headers.
+
+ * gnus-group.el (gnus-group-expire-articles): Touch dribble
+ buffer.
+
+ * gnus-sum.el (gnus-summary-default-score): Doc fix.
+
+ * gnus.el (gnus-local-organization): Doc fix.
+
+ * gnus-spec.el (gnus-compile): Don't work under XEmacs.
+
+ * gnus-art.el (gnus-article-highlight-headers): Work on bodiless
+ articles.
+
Fri Mar 7 23:33:34 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
* gnus.el: Gnus v5.4.22 is released.
(defface gnus-header-from-face
'((((class color)
(background dark))
- (:foreground "green1" :bold t :italic t))
+ (:foreground "spring green" :bold t :italic t))
(((class color)
(background light))
- (:foreground "MidnightBlue" :bold t :italic t))
+ (:foreground "indianred" :bold t :italic t))
(t
(:bold t :italic t)))
"Face used for displaying from headers."
(defface gnus-header-subject-face
'((((class color)
(background dark))
- (:foreground "green3" :bold t :italic t))
+ (:foreground "SeaGreen3" :bold t :italic t))
(((class color)
(background light))
(:foreground "firebrick" :bold t :italic t))
(:foreground "yellow" :bold t :italic t))
(((class color)
(background light))
- (:foreground "indianred" :bold t :italic t))
+ (:foreground "MidnightBlue" :bold t :italic t))
(t
(:bold t :italic t)))
"Face used for displaying newsgroups headers."
(defface gnus-header-name-face
'((((class color)
(background dark))
- (:foreground "green4" :bold t))
+ (:foreground "SeaGreen"))
(((class color)
(background light))
- (:foreground "DarkGreen" :bold t))
+ (:foreground "maroon"))
(t
(:bold t)))
"Face used for displaying header names."
(:foreground "forest green" :italic t))
(((class color)
(background light))
- (:foreground "DarkGreen" :italic t))
+ (:foreground "indianred4" :italic t))
(t
(:italic t))) "Face used for displaying header content."
:group 'gnus-article-headers
(case-fold-search t)
(inhibit-point-motion-hooks t)
entry regexp header-face field-face from hpoints fpoints)
- (goto-char (point-min))
- (when (search-forward "\n\n" nil t)
- (narrow-to-region (1- (point)) (point-min))
- (while (setq entry (pop alist))
- (goto-char (point-min))
- (setq regexp (concat "^\\("
- (if (string-equal "" (nth 0 entry))
- "[^\t ]"
- (nth 0 entry))
- "\\)")
- header-face (nth 1 entry)
- field-face (nth 2 entry))
- (while (and (re-search-forward regexp nil t)
- (not (eobp)))
- (beginning-of-line)
- (setq from (point))
- (unless (search-forward ":" nil t)
- (forward-char 1))
- (when (and header-face
- (not (memq (point) hpoints)))
- (push (point) hpoints)
- (gnus-put-text-property from (point) 'face header-face))
- (when (and field-face
- (not (memq (setq from (point)) fpoints)))
- (push from fpoints)
- (if (re-search-forward "^[^ \t]" nil t)
- (forward-char -2)
- (goto-char (point-max)))
- (gnus-put-text-property from (point) 'face field-face)))))))))
+ (message-narrow-to-head)
+ (while (setq entry (pop alist))
+ (goto-char (point-min))
+ (setq regexp (concat "^\\("
+ (if (string-equal "" (nth 0 entry))
+ "[^\t ]"
+ (nth 0 entry))
+ "\\)")
+ header-face (nth 1 entry)
+ field-face (nth 2 entry))
+ (while (and (re-search-forward regexp nil t)
+ (not (eobp)))
+ (beginning-of-line)
+ (setq from (point))
+ (unless (search-forward ":" nil t)
+ (forward-char 1))
+ (when (and header-face
+ (not (memq (point) hpoints)))
+ (push (point) hpoints)
+ (gnus-put-text-property from (point) 'face header-face))
+ (when (and field-face
+ (not (memq (setq from (point)) fpoints)))
+ (push from fpoints)
+ (if (re-search-forward "^[^ \t]" nil t)
+ (forward-char -2)
+ (goto-char (point-max)))
+ (gnus-put-text-property from (point) 'face field-face))))))))
(defun gnus-article-highlight-signature ()
"Highlight the signature in an article.
(gnus-uncompress-sequence (cdr expirable)) group))))
(gnus-close-group group))
(gnus-message 6 "Expiring articles in %s...done" group)))
+ (gnus-dribble-touch)
(gnus-group-position-point))))
(defun gnus-group-expire-all-groups ()
(defun gnus-compile ()
"Byte-compile the user-defined format specs."
(interactive)
+ (when gnus-xemacs
+ (error "Can't compile specs under XEmacs"))
(let ((entries gnus-format-specs)
(byte-compile-warnings '(unresolved callargs redefine))
entry gnus-tmp-func)
(defcustom gnus-summary-default-score 0
"*Default article score level.
+All scores generated by the score files will be added to this score.
If this variable is nil, scoring will be disabled."
:group 'gnus-score-default
:type '(choice (const :tag "disable")
:link '(custom-manual "(gnus)Exiting Gnus")
:group 'gnus)
-(defconst gnus-version-number "5.4.22"
+(defconst gnus-version-number "5.4.23"
"Version number for this version of Gnus.")
(defconst gnus-version (format "Gnus v%s" gnus-version-number)
(defcustom gnus-message-archive-group nil
"*Name of the group in which to save the messages you've written.
-This can either be a string, a list of strings; or an alist
+This can either be a string; a list of strings; or an alist
of regexps/functions/forms to be evaluated to return a string (or a list
of strings). The functions are called with the name of the current
group (or nil) as a parameter.
:type '(choice (const :tag "default" nil)
string))
-(defcustom gnus-local-organization nil
+(defvar gnus-local-organization nil
"String with a description of what organization (if any) the user belongs to.
-The ORGANIZATION environment variable is used instead if it is defined.
-If this variable contains a function, this function will be called
-with the current newsgroup name as the argument. The function should
-return a string.
-
-In any case, if the string (either in the variable, in the environment
-variable, or returned by the function) is a file name, the contents of
-this file will be used as the organization."
- :group 'gnus-message
- :type '(choice (const :tag "default" nil)
- string))
+Obsolete variable; use `message-user-organization' instead.")
;; Customization variables
(defface message-header-to-face
'((((class color)
(background dark))
- (:foreground "green2" :italic t))
+ (:foreground "green2" :bold t))
(((class color)
(background light))
(:foreground "MidnightBlue" :bold t))
(:foreground "green4" :bold t))
(((class color)
(background light))
- (:foreground "blue4"))
+ (:foreground "MidnightBlue"))
(t
(:bold t)))
"Face used for displaying Cc headers."
(:foreground "green3"))
(((class color)
(background light))
- (:foreground "firebrick" :bold t))
+ (:foreground "navy blue" :bold t))
(t
(:bold t)))
"Face used for displaying subject headers."
(:foreground "yellow" :bold t :italic t))
(((class color)
(background light))
- (:foreground "indianred" :bold t :italic t))
+ (:foreground "blue4" :bold t :italic t))
(t
(:bold t :italic t)))
"Face used for displaying newsgroups headers."
(:foreground "red4"))
(((class color)
(background light))
- (:foreground "red3"))
+ (:foreground "steel blue"))
(t
(:bold t :italic t)))
"Face used for displaying newsgroups headers."
(:foreground "DarkGreen"))
(((class color)
(background light))
- (:foreground "red4"))
+ (:foreground "cornflower blue"))
(t
(:bold t)))
"Face used for displaying header names."
(:foreground "red"))
(((class color)
(background light))
- (:foreground "DarkGreen"))
+ (:foreground "red"))
(t
(:bold t)))
"Face used for displaying cited text names."
(defvar message-font-lock-keywords
(let* ((cite-prefix "A-Za-z")
- (cite-suffix (concat cite-prefix "0-9_.@-")))
- (list '("^\\(To:\\)[ \t]*\\(.+\\)?"
- (1 'message-header-name-face)
- (2 'message-header-to-face nil t))
- '("^\\(^[GBF]?[Cc][Cc]:\\|^Reply-To:\\)[ \t]*\\(.+\\)?"
- (1 'message-header-name-face)
- (2 'message-header-cc-face nil t))
- '("^\\(Subject:\\)[ \t]*\\(.+\\)?"
- (1 'message-header-name-face)
- (2 'message-header-subject-face nil t))
- '("^\\(Newsgroups:\\|Followup-to:\\)[ \t]*\\(.+\\)?"
- (1 'message-header-name-face)
- (2 'message-header-newsgroups-face nil t))
- '("^\\([^: \n\t]+:\\)[ \t]*\\(.+\\)?"
- (1 'message-header-name-face)
- (2 'message-header-other-face nil t))
- (list (concat "^\\(" (regexp-quote mail-header-separator) "\\)$")
- 1 '(quote message-separator-face))
- `(,(concat "^[ \t]*"
- "\\([" cite-prefix "]+[" cite-suffix "]*\\)?"
- "[>|}].*")
- (0 'message-cited-text-face))
- '("^\\(X-[A-Za-z0-9-]+\\|In-Reply-To\\):.*"
- (0 'message-header-xheader-face))))
+ (cite-suffix (concat cite-prefix "0-9_.@-"))
+ (content "[ \t]*\\(.+\\(\n[ \t].*\\)*\\)"))
+ `((,(concat "^\\(To:\\)" content)
+ (1 'message-header-name-face)
+ (2 'message-header-to-face nil t))
+ (,(concat "^\\(^[GBF]?[Cc][Cc]:\\|^Reply-To:\\)" content)
+ (1 'message-header-name-face)
+ (2 'message-header-cc-face nil t))
+ (,(concat "^\\(Subject:\\)" content)
+ (1 'message-header-name-face)
+ (2 'message-header-subject-face nil t))
+ (,(concat "^\\(Newsgroups:\\|Followup-to:\\)" content)
+ (1 'message-header-name-face)
+ (2 'message-header-newsgroups-face nil t))
+ (,(concat "^\\([^: \n\t]+:\\)" content)
+ (1 'message-header-name-face)
+ (2 'message-header-other-face nil t))
+ (,(concat "^\\(X-[A-Za-z0-9-]+\\|In-Reply-To\\):" content)
+ (1 'message-header-name-face)
+ (2 'message-header-name-face))
+ (,(concat "^\\(" (regexp-quote mail-header-separator) "\\)$")
+ 1 'message-separator-face)
+ (,(concat "^[ \t]*"
+ "\\([" cite-prefix "]+[" cite-suffix "]*\\)?"
+ "[>|}].*")
+ (0 'message-cited-text-face))))
"Additional expressions to highlight in Message mode.")
(defvar message-face-alist
+Sat Mar 8 03:41:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Parameters): Added example.
+ (Duplicates): Fix.
+
Fri Mar 7 10:49:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
* Makefile: New "install" target.
Also @pxref{Topic Parameters}.
+Here's an example group parameter list:
+
+@example
+((to-address . "ding@ifi.uio.no")
+ (auto-expiry . t))
+@end example
+
@node Listing Groups
@section Listing Groups
stored.) If all this sounds scary to you, you can set
@code{nnmail-treat-duplicates} to @code{warn} (which is what it is by
default), and @code{nnmail} won't delete duplicate mails. Instead it
-will generate a brand new @code{Message-ID} for the mail and insert a
-warning into the head of the mail saying that it thinks that this is a
-duplicate of a different message.
+will insert a warning into the head of the mail saying that it thinks
+that this is a duplicate of a different message.
This variable can also be a function. If that's the case, the function
will be called from a buffer narrowed to the message in question with