`gnus-summary-show-thread' by hand or use `gnus-select-article-hook'
to expose hidden threads."
:group 'gnus-thread
- :type 'boolean)
+ :type '(radio (sexp :format "Non-nil\n"
+ :match (lambda (widget value)
+ (not (or (consp value) (functionp value))))
+ :value t)
+ (const nil)
+ (sexp :tag "Predicate specifier" :size 0)))
(defcustom gnus-thread-hide-killed t
"*If non-nil, hide killed threads automatically."
default-high: The default score for high scored articles.
default-low: The default score for low scored articles.
below: The score below which articles are automatically marked as read.
-mark: The articles mark."
+mark: The article's mark.
+uncached: Non-nil if the article is uncached."
:group 'gnus-summary-visual
:type '(repeat (cons (sexp :tag "Form" nil)
face)))
(defcustom gnus-read-all-available-headers nil
"Whether Gnus should parse all headers made available to it.
-This is mostly relevant for slow backends where the user may
+This is mostly relevant for slow back ends where the user may
wish to widen the summary buffer to include all headers
that were fetched. Say, for nnultimate groups."
:group 'gnus-summary
gnus-unseen-mark)
(t gnus-no-mark)))
(gnus-tmp-downloaded
- (cond (undownloaded
+ (cond (undownloaded
gnus-undownloaded-mark)
(gnus-newsgroup-agentized
gnus-downloaded-mark)
(gnus-run-hooks 'gnus-summary-prepare-hook)))
(defsubst gnus-general-simplify-subject (subject)
- "Simply subject by the same rules as gnus-gather-threads-by-subject."
+ "Simplify subject by the same rules as `gnus-gather-threads-by-subject'."
(setq subject
(cond
;; Truncate the subject.
(forward-line 1)))))))
(defun gnus-summary-update-article-line (article header)
- "Update the line for ARTICLE using HEADERS."
+ "Update the line for ARTICLE using HEADER."
(let* ((id (mail-header-id header))
(thread (gnus-id-to-thread id)))
(unless thread
(let ((inserted (- (point)
(progn
(gnus-summary-insert-line
- header level nil
+ header level nil
(memq article gnus-newsgroup-undownloaded)
(gnus-article-mark article)
(memq article gnus-newsgroup-replied)
(point)))))
(when (cdr datal)
(gnus-data-update-list
- (cdr datal)
+ (cdr datal)
(- (gnus-data-pos data) (gnus-data-pos (cadr datal)) inserted)))))))
(defun gnus-summary-update-article (article &optional iheader)
(mapcar
(lambda (header)
(setq previous-time
- (time-to-seconds
- (condition-case ()
- (mail-header-parse-date (mail-header-date header))
- (error previous-time)))))
+ (condition-case ()
+ (time-to-seconds (mail-header-parse-date
+ (mail-header-date header)))
+ (error previous-time))))
(sort
(message-flatten-list thread)
(lambda (h1 h2)
(defcustom gnus-sum-thread-tree-root "> "
"With %B spec, used for the root of a thread.
If nil, use subject instead."
- :type 'string
+ :type '(radio (const :format "%v " nil) (string :size 0))
:group 'gnus-thread)
(defcustom gnus-sum-thread-tree-false-root "> "
"With %B spec, used for a false root of a thread.
If nil, use subject instead."
- :type 'string
+ :type '(radio (const :format "%v " nil) (string :size 0))
:group 'gnus-thread)
(defcustom gnus-sum-thread-tree-single-indent ""
"With %B spec, used for a thread with just one message.
If nil, use subject instead."
- :type 'string
+ :type '(radio (const :format "%v " nil) (string :size 0))
:group 'gnus-thread)
(defcustom gnus-sum-thread-tree-vertical "| "
"With %B spec, used for drawing a vertical line."
gnus-unseen-mark)
(t gnus-no-mark))
gnus-tmp-downloaded
- (cond ((memq number gnus-newsgroup-undownloaded)
+ (cond ((memq number gnus-newsgroup-undownloaded)
gnus-undownloaded-mark)
(gnus-newsgroup-agentized
gnus-downloaded-mark)
(gnus-set-active group (cons (caar alist) (cdr active)))))
(setq gnus-summary-use-undownloaded-faces
- (not (gnus-agent-find-parameter
+ (not (gnus-agent-find-parameter
group
'agent-disable-undownloaded-faces))))
'list))
(defun gnus-article-unpropagatable-p (mark)
- "Return whether MARK should be propagated to backend."
+ "Return whether MARK should be propagated to back end."
(memq mark gnus-article-unpropagated-mark-lists))
(defun gnus-adjust-marked-articles (info)
(if unread
(progn
(while data
- (unless (memq (gnus-data-number (car data))
+ (unless (memq (gnus-data-number (car data))
(cond
((eq gnus-auto-goto-ignores
'always-undownloaded)
(defun gnus-summary-toggle-truncation (&optional arg)
"Toggle truncation of summary lines.
-With arg, turn line truncation on if arg is positive."
+With ARG, turn line truncation on if ARG is positive."
(interactive "P")
(setq truncate-lines
(if (null arg) (not truncate-lines)
"Go to the first subject satisfying any non-nil constraint.
If UNREAD is non-nil, the article should be unread.
If UNDOWNLOADED is non-nil, the article should be undownloaded.
-If UNSEED is non-nil, the article should be unseen.
+If UNSEEN is non-nil, the article should be unseen.
Returns the article selected or nil if there are no matching articles."
(interactive "P")
(cond
(and unseen
(memq num gnus-newsgroup-unseen)))))))
(setq data (cdr data)))
- (prog1
+ (prog1
(if data
(progn
(goto-char (gnus-data-pos (car data)))
(interactive)
(let ((mm-verify-option 'known)
(mm-decrypt-option 'known)
+ (gnus-article-emulate-mime t)
(gnus-buttonized-mime-types (append (list "multipart/signed"
"multipart/encrypted")
gnus-buttonized-mime-types)))
(gnus-summary-position-point))))
(defun gnus-summary-insert-dormant-articles ()
- "Insert all the dormat articles for this group into the current buffer."
+ "Insert all the dormant articles for this group into the current buffer."
(interactive)
(let ((gnus-verbose (max 6 gnus-verbose)))
(if (not gnus-newsgroup-dormant)
thread)
(defun gnus-cut-threads (threads)
- "Cut off all uninteresting articles from the beginning of threads."
+ "Cut off all uninteresting articles from the beginning of THREADS."
(when (or (eq gnus-fetch-old-headers 'some)
(eq gnus-fetch-old-headers 'invisible)
(numberp gnus-fetch-old-headers)
(set-buffer gnus-original-article-buffer)
(nnheader-narrow-to-headers)
(unless (setq ref (message-fetch-field "references"))
- (setq ref (message-fetch-field "in-reply-to")))
+ (when (setq ref (message-fetch-field "in-reply-to"))
+ (setq ref (gnus-extract-message-id-from-in-reply-to ref))))
(widen))
(setq ref
;; It's not the current article, so we take a bet on
gnus-newsgroup-name limit))
'nov)
(gnus-build-all-threads)
- (error "Can't fetch thread from backends that don't support NOV"))
+ (error "Can't fetch thread from back ends that don't support NOV"))
(gnus-message 5 "Fetching headers for %s...done" gnus-newsgroup-name))
(gnus-summary-limit-include-thread id)))
(progn
(copy-to-buffer buffer (point-min) (point-max))
(set-buffer buffer)
- (gnus-article-delete-invisible-text)
(gnus-remove-text-with-property 'gnus-decoration)
(when (gnus-visual-p 'article-highlight 'highlight)
;; Copy-to-buffer doesn't copy overlay. So redo
;; highlight.
(let ((gnus-article-buffer buffer))
(gnus-article-highlight-citation t)
- (gnus-article-highlight-signature)))
+ (gnus-article-highlight-signature)
+ (gnus-article-emphasize)
+ (gnus-article-delete-invisible-text)))
(let ((ps-left-header
(list
(concat "("
article gnus-newsgroup-name (current-buffer))))
;; run the move/copy/crosspost/respool hook
- (run-hook-with-args 'gnus-summary-article-move-hook
+ (run-hook-with-args 'gnus-summary-article-move-hook
action
- (gnus-data-header
+ (gnus-data-header
(assoc article (gnus-data-list nil)))
gnus-newsgroup-name
to-newsgroup
(unless (memq (car articles) not-deleted)
(gnus-summary-mark-article (car articles) gnus-canceled-mark))
(let* ((article (car articles))
- (id (mail-header-id (gnus-data-header
+ (id (mail-header-id (gnus-data-header
(assoc article (gnus-data-list nil))))))
(run-hook-with-args 'gnus-summary-article-delete-hook
'delete id gnus-newsgroup-name nil
(defun gnus-summary-update-download-mark (article)
"Update the download mark."
(gnus-summary-update-mark
- (cond ((memq article gnus-newsgroup-undownloaded)
+ (cond ((memq article gnus-newsgroup-undownloaded)
gnus-undownloaded-mark)
(gnus-newsgroup-agentized
gnus-downloaded-mark)
(defvar gnus-summary-highlight-line-trigger nil)
(defun gnus-summary-highlight-line-0 ()
- (if (and (eq gnus-summary-highlight-line-trigger
+ (if (and (eq gnus-summary-highlight-line-trigger
gnus-summary-highlight)
gnus-summary-highlight-line-cached)
gnus-summary-highlight-line-cached