comparison lisp/gnus/gnus-score.el @ 32:e04119814345 r19-15b99

Import from CVS: tag r19-15b99
author cvs
date Mon, 13 Aug 2007 08:52:56 +0200
parents ec9a17fef872
children 8b8b7f3559a2
comparison
equal deleted inserted replaced
31:b9328a10c56c 32:e04119814345
2179 (gnus-score-load-file bufnam))) 2179 (gnus-score-load-file bufnam)))
2180 2180
2181 (defun gnus-score-find-trace () 2181 (defun gnus-score-find-trace ()
2182 "Find all score rules that applies to the current article." 2182 "Find all score rules that applies to the current article."
2183 (interactive) 2183 (interactive)
2184 (let ((gnus-newsgroup-headers 2184 (let ((old-scored gnus-newsgroup-scored))
2185 (list (gnus-summary-article-header))) 2185 (let ((gnus-newsgroup-headers
2186 (gnus-newsgroup-scored nil) 2186 (list (gnus-summary-article-header)))
2187 trace) 2187 (gnus-newsgroup-scored nil)
2188 (save-excursion 2188 trace)
2189 (nnheader-set-temp-buffer "*Score Trace*")) 2189 (save-excursion
2190 (setq gnus-score-trace nil) 2190 (nnheader-set-temp-buffer "*Score Trace*"))
2191 (gnus-possibly-score-headers 'trace) 2191 (setq gnus-score-trace nil)
2192 (if (not (setq trace gnus-score-trace)) 2192 (gnus-possibly-score-headers 'trace)
2193 (gnus-error 1 "No score rules apply to the current article.") 2193 (if (not (setq trace gnus-score-trace))
2194 (set-buffer "*Score Trace*") 2194 (gnus-error
2195 (gnus-add-current-to-buffer-list) 2195 1 "No score rules apply to the current article (default score %d)."
2196 (while trace 2196 gnus-summary-default-score)
2197 (insert (format "%S -> %s\n" (cdar trace) 2197 (set-buffer "*Score Trace*")
2198 (file-name-nondirectory (caar trace)))) 2198 (gnus-add-current-to-buffer-list)
2199 (setq trace (cdr trace))) 2199 (while trace
2200 (goto-char (point-min)) 2200 (insert (format "%S -> %s\n" (cdar trace)
2201 (gnus-configure-windows 'score-trace)))) 2201 (file-name-nondirectory (caar trace))))
2202 (setq trace (cdr trace)))
2203 (goto-char (point-min))
2204 (gnus-configure-windows 'score-trace)))
2205 (set-buffer gnus-summary-buffer)
2206 (setq gnus-newsgroup-scored old-scored)))
2202 2207
2203 (defun gnus-score-find-favourite-words () 2208 (defun gnus-score-find-favourite-words ()
2204 "List words used in scoring." 2209 "List words used in scoring."
2205 (interactive) 2210 (interactive)
2206 (let ((alists (gnus-score-load-files (gnus-all-score-files))) 2211 (let ((alists (gnus-score-load-files (gnus-all-score-files)))
2614 (while (and score-files 2619 (while (and score-files
2615 (member (car score-files) (cdr score-files))) 2620 (member (car score-files) (cdr score-files)))
2616 (pop score-files)) 2621 (pop score-files))
2617 (let ((files score-files)) 2622 (let ((files score-files))
2618 (while (cdr files) 2623 (while (cdr files)
2619 (when (member (cadr files) (cddr files)) 2624 (if (member (cadr files) (cddr files))
2620 (setcdr files (cddr files))) 2625 (setcdr files (cddr files))
2621 (pop files))) 2626 (pop files))))
2622 ;; Do the scoring if there are any score files for this group. 2627 ;; Do the scoring if there are any score files for this group.
2623 score-files)) 2628 score-files))
2624 2629
2625 (defun gnus-possibly-score-headers (&optional trace) 2630 (defun gnus-possibly-score-headers (&optional trace)
2626 "Do scoring if scoring is required." 2631 "Do scoring if scoring is required."