emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/gnus/gnus-logic.el [emacs-unicode-2]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/gnus/gnus-logic.el [emacs-unicode-2]
Date: Thu, 09 Sep 2004 06:03:26 -0400

Index: emacs/lisp/gnus/gnus-logic.el
diff -c emacs/lisp/gnus/gnus-logic.el:1.7.14.1 
emacs/lisp/gnus/gnus-logic.el:1.7.14.2
*** emacs/lisp/gnus/gnus-logic.el:1.7.14.1      Fri Mar 12 00:02:57 2004
--- emacs/lisp/gnus/gnus-logic.el       Thu Sep  9 09:36:25 2004
***************
*** 1,5 ****
  ;;; gnus-logic.el --- advanced scoring code for Gnus
! ;; Copyright (C) 1996, 1997, 1998, 1999, 2000
  ;;        Free Software Foundation, Inc.
  
  ;; Author: Lars Magne Ingebrigtsen <address@hidden>
--- 1,5 ----
  ;;; gnus-logic.el --- advanced scoring code for Gnus
! ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
  ;;        Free Software Foundation, Inc.
  
  ;; Author: Lars Magne Ingebrigtsen <address@hidden>
***************
*** 59,82 ****
  
  (defun gnus-score-advanced (rule &optional trace)
    "Apply advanced scoring RULE to all the articles in the current group."
!   (let ((headers gnus-newsgroup-headers)
!       gnus-advanced-headers score)
!     (while (setq gnus-advanced-headers (pop headers))
!       (when (gnus-advanced-score-rule (car rule))
!       ;; This rule was successful, so we add the score to
!       ;; this article.
        (if (setq score (assq (mail-header-number gnus-advanced-headers)
                              gnus-newsgroup-scored))
            (setcdr score
!                   (+ (cdr score)
!                      (or (nth 1 rule)
!                          gnus-score-interactive-default-score)))
          (push (cons (mail-header-number gnus-advanced-headers)
!                     (or (nth 1 rule)
!                         gnus-score-interactive-default-score))
                gnus-newsgroup-scored)
          (when trace
            (push (cons "A file" rule)
                  gnus-score-trace)))))))
  
  (defun gnus-advanced-score-rule (rule)
--- 59,83 ----
  
  (defun gnus-score-advanced (rule &optional trace)
    "Apply advanced scoring RULE to all the articles in the current group."
!   (let (new-score score multiple)
!     (dolist (gnus-advanced-headers gnus-newsgroup-headers)
!       (when (setq multiple (gnus-advanced-score-rule (car rule)))
!       (setq new-score (or (nth 1 rule)
!                           gnus-score-interactive-default-score))
!       (when (numberp multiple)
!         (setq new-score (* multiple new-score)))
!       ;; This rule was successful, so we add the score to this
!       ;; article.
        (if (setq score (assq (mail-header-number gnus-advanced-headers)
                              gnus-newsgroup-scored))
            (setcdr score
!                   (+ (cdr score) new-score))
          (push (cons (mail-header-number gnus-advanced-headers)
!                     new-score)
                gnus-newsgroup-scored)
          (when trace
            (push (cons "A file" rule)
+                 ;; Must be synced with `gnus-score-edit-file-at-point'.
                  gnus-score-trace)))))))
  
  (defun gnus-advanced-score-rule (rule)
***************
*** 116,122 ****
                  ;; 1- type redirection.
                  (string-to-number
                   (substring (symbol-name type)
!                             (match-beginning 0) (match-end 0)))
                ;; ^^^ type redirection.
                (length (symbol-name type))))))
        (when gnus-advanced-headers
--- 117,123 ----
                  ;; 1- type redirection.
                  (string-to-number
                   (substring (symbol-name type)
!                             (match-beginning 1) (match-end 1)))
                ;; ^^^ type redirection.
                (length (symbol-name type))))))
        (when gnus-advanced-headers
***************
*** 129,137 ****
        (error "Unknown advanced score type: %s" rule)))))
  
  (defun gnus-advanced-score-article (rule)
!   ;; `rule' is a semi-normal score rule, so we find out
!   ;; what function that's supposed to do the actual
!   ;; processing.
    (let* ((header (car rule))
         (func (assoc (downcase header) gnus-advanced-index)))
      (if (not func)
--- 130,137 ----
        (error "Unknown advanced score type: %s" rule)))))
  
  (defun gnus-advanced-score-article (rule)
!   ;; `rule' is a semi-normal score rule, so we find out what function
!   ;; that's supposed to do the actual processing.
    (let* ((header (car rule))
         (func (assoc (downcase header) gnus-advanced-index)))
      (if (not func)
***************
*** 162,168 ****
  (defun gnus-advanced-integer (index match type)
    (if (not (memq type '(< > <= >= =)))
        (error "No such integer score type: %s" type)
!     (funcall type match (or (aref gnus-advanced-headers index) 0))))
  
  (defun gnus-advanced-date (index match type)
    (let ((date (apply 'encode-time (parse-time-string
--- 162,168 ----
  (defun gnus-advanced-integer (index match type)
    (if (not (memq type '(< > <= >= =)))
        (error "No such integer score type: %s" type)
!     (funcall type (or (aref gnus-advanced-headers index) 0) match)))
  
  (defun gnus-advanced-date (index match type)
    (let ((date (apply 'encode-time (parse-time-string
***************
*** 189,196 ****
                                'gnus-request-body)
                               (t 'gnus-request-article)))
           ofunc article)
!       ;; Not all backends support partial fetching.  In that case,
!       ;; we just fetch the entire article.
        (unless (gnus-check-backend-function
               (intern (concat "request-" header))
               gnus-newsgroup-name)
--- 189,196 ----
                                'gnus-request-body)
                               (t 'gnus-request-article)))
           ofunc article)
!       ;; Not all backends support partial fetching.  In that case, we
!       ;; just fetch the entire article.
        (unless (gnus-check-backend-function
               (intern (concat "request-" header))
               gnus-newsgroup-name)
***************
*** 201,208 ****
        (when (funcall request-func article gnus-newsgroup-name)
        (goto-char (point-min))
        ;; If just parts of the article is to be searched and the
!       ;; backend didn't support partial fetching, we just narrow
!       ;; to the relevant parts.
        (when ofunc
          (if (eq ofunc 'gnus-request-head)
              (narrow-to-region
--- 201,208 ----
        (when (funcall request-func article gnus-newsgroup-name)
        (goto-char (point-min))
        ;; If just parts of the article is to be searched and the
!       ;; backend didn't support partial fetching, we just narrow to
!       ;; the relevant parts.
        (when ofunc
          (if (eq ofunc 'gnus-request-head)
              (narrow-to-region




reply via email to

[Prev in Thread] Current Thread [Next in Thread]