Function: gnus-summary-limit-include-thread

gnus-summary-limit-include-thread is an interactive and byte-compiled function defined in gnus-sum.el.gz.

Signature

(gnus-summary-limit-include-thread ID &optional THREAD-ONLY)

Documentation

Display all hidden articles belonging to thread ID.

When called interactively, ID is the Message-ID of the current article. If thread-only is non-nil limit the summary buffer to these articles.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-sum.el.gz
(defun gnus-summary-limit-include-thread (id &optional thread-only)
  "Display all hidden articles belonging to thread ID.
When called interactively, ID is the Message-ID of the current
article.  If thread-only is non-nil limit the summary buffer to
these articles."
  (interactive
   (list
    (mail-header-id
     (gnus-summary-article-header))
    current-prefix-arg)
   gnus-summary-mode)
  (let ((articles (gnus-articles-in-thread
		   (gnus-id-to-thread (gnus-root-id id))))
	;;we REALLY want the whole thread---this prevents cut-threads
	;;from removing the thread we want to include.
	(gnus-fetch-old-headers nil)
	(gnus-build-sparse-threads nil))
    (prog1
        (gnus-summary-limit (if thread-only articles
                              (nconc articles gnus-newsgroup-limit)))
      (let ((matching-subject (gnus-general-simplify-subject
                               (mail-header-subject (gnus-id-to-header id)))))
        (when matching-subject
          (gnus-summary-limit-include-matching-articles
           "subject"
           (regexp-quote matching-subject))
          ;; Each of the previous two limit calls push a limit onto
          ;; the limit stack. Presumably we want to think of the
          ;; thread and its associated subject matches as a single
          ;; thing so we probably want a single pop to restore the
          ;; original view. Hence we pop this last limit off.
          (pop gnus-newsgroup-limits)))
      (gnus-summary-position-point))))