+2003-03-26 Kevin Ryde <user42@zip.com.au>
+
+ * gnus-sum.el (gnus-summary-find-for-reselect): Renamed from
+ gnus-summary-find-uncancelled, skip temporary articles inserted by
+ "refer" functions.
+
+2003-03-26 Vasily Korytov <deskpot@myrealbox.com>
+
+ * smiley.el (smiley-buffer): New function.
+
+2003-03-26 Kevin Greiner <kgreiner@xpediantsolutions.com>
+
+ * gnus-agent.el (gnus-agent-fetch-selected-article): Replaced
+ gnus-summary-update-line (which updated the article's face) with
+ gnus-summary-update-download-mark (which updates the article's
+ face by calling gnus-summary-update-line AND updates the download
+ mark to show that the article was fetched).
+
2003-03-23 Kevin Greiner <kgreiner@xpediantsolutions.com>
* gnus-agent.el (gnus-agent-expire-unagentized-dirs): Provides
(list gnus-current-article))
(setq gnus-newsgroup-undownloaded
(delq gnus-current-article gnus-newsgroup-undownloaded))
- (gnus-summary-update-line gnus-current-article)))))
+ (gnus-summary-update-download-mark gnus-current-article)))))
;;;
;;; Internal functions
(> (prefix-numeric-value arg) 0)))
(redraw-display))
-(defun gnus-summary-find-uncancelled ()
- "Return the number of an uncancelled article.
+(defun gnus-summary-find-for-reselect ()
+ "Return the number of an article to stay on across a reselect.
The current article is considered, then following articles, then previous
-articles. If all articles are cancelled then return a dummy 0."
+articles. An article is sought which is not cancelled and isn't a temporary
+insertion from another group. If there's no such then return a dummy 0."
(let (found)
(dolist (rev '(nil t))
(unless found ; don't demand the reverse list if we don't need it
(let ((data (gnus-data-find-list
(gnus-summary-article-number) (gnus-data-list rev))))
(while (and data (not found))
- (if (not (eq gnus-canceled-mark (gnus-data-mark (car data))))
+ (if (and (< 0 (gnus-data-number (car data)))
+ (not (eq gnus-canceled-mark (gnus-data-mark (car data)))))
(setq found (gnus-data-number (car data))))
(setq data (cdr data))))))
(or found 0)))
(interactive "P")
(when (gnus-ephemeral-group-p gnus-newsgroup-name)
(error "Ephemeral groups can't be reselected"))
- (let ((current-subject (gnus-summary-find-uncancelled))
+ (let ((current-subject (gnus-summary-find-for-reselect))
(group gnus-newsgroup-name))
(setq gnus-newsgroup-begin nil)
(gnus-summary-exit)
(put-text-property beg (or end (point-max)) 'smilified nil)
images))))
+;;;###autoload
+(defun smiley-buffer (&optional buffer)
+ "Run `smiley-region' at the buffer, specified in the argument or
+interactively. If there's no argument, do it at the current buffer"
+ (interactive "bBuffer to run smiley-region: ")
+ (save-excursion
+ (if buffer
+ (set-buffer (get-buffer buffer)))
+ (smiley-region (point-min) (point-max))))
+
(defun smiley-toggle-buffer (&optional arg)
"Toggle displaying smiley faces in article buffer.
With arg, turn displaying on if and only if arg is positive."