• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.10/emacs-93/emacs/lisp/gnus/

Lines Matching +refs:ps +refs:get +refs:buffer +refs:name

59   "*If non-nil, kill the summary buffer when you exit from it.
60 If nil, the summary will become a \"*Dead Summary*\" buffer, and
69 displayed in the Summary buffer. If this variable is t, Gnus
98 scattered all over the summary buffer, Gnus can gather them.
238 "*Fuzziness factor for the zcore in the summary buffer.
395 "*If non-nil, always center the current summary buffer.
405 "*If non-nil, always center the group buffer.")
418 (defcustom gnus-single-article-buffer t
419 "*If non-nil, display all articles in the same buffer.
420 If nil, each group will get its own article buffer."
648 "*The format specification for the dummy roots in the summary buffer.
665 %G Group name
666 %p Unprefixed group name
673 %g Shortish group name
676 %s Current score file name
695 This variable is local to each summary buffer and usually set by the
701 "*List of functions used for sorting articles in the summary buffer.
729 "*List of functions used for sorting threads in the summary buffer.
791 This hook is run before any variables are set in the summary buffer."
809 "*A hook called on exit from the summary buffer.
810 It will be called with point in the group buffer."
815 "*A hook called after the summary buffer has been generated.
816 If you want to modify the summary buffer, you can use this hook."
821 "*A hook called as the last thing after the summary buffer has been generated."
826 "*A hook run just before generating the summary buffer.
858 "*Hook run after selecting an article in the summary buffer.
898 (defcustom gnus-ps-print-hook nil
899 "*A hook run before ps-printing something from Gnus."
930 "Face used for highlighting the current article in the summary buffer."
974 "*Controls the highlighting of summary buffer lines.
1091 "*All orphans get this score added. Set in the score file."
1107 wish to widen the summary buffer to include all headers
1181 (?n gnus-tmp-name ?s)
1232 `((?G gnus-tmp-group-name ?s)
1233 (?g (gnus-short-group-name gnus-tmp-group-name) ?s)
1234 (?p (gnus-group-real-name gnus-tmp-group-name) ?s)
1257 "Locally bound in each summary buffer to indicate whether the server has been agentized.")
1376 '(gnus-newsgroup-name
1416 "Variables that are buffer-local to the summary buffers.")
1420 A list of newsgroup (summary buffer) local variables, or cons of
1422 values are not nil), that should be made global while the summary buffer
1479 (eq gnus-newsgroup-name
1481 (setq gnus-decode-encoded-word-methods-cache (list gnus-newsgroup-name))
1485 (if (and gnus-newsgroup-name
1486 (string-match (car x) gnus-newsgroup-name))
1546 (defsubst gnus-simplify-buffer-fuzzy-step (regexp &optional newtext)
1551 (defun gnus-simplify-buffer-fuzzy ()
1552 "Simplify string in the buffer fuzzily.
1553 The string in the accessible portion of the current buffer is simplified.
1560 (gnus-simplify-buffer-fuzzy-step "\t" " ")
1562 (while (not (eq modified-tick (buffer-modified-tick)))
1563 (setq modified-tick (buffer-modified-tick))
1566 (mapcar 'gnus-simplify-buffer-fuzzy-step
1569 (gnus-simplify-buffer-fuzzy-step gnus-simplify-subject-fuzzy-regexp)))
1570 (gnus-simplify-buffer-fuzzy-step "^ *\\[[-+?*!][-+?*!]\\] *")
1571 (gnus-simplify-buffer-fuzzy-step
1573 (gnus-simplify-buffer-fuzzy-step "^[[].*:\\( .*\\)[]]$" "\\1"))
1575 (gnus-simplify-buffer-fuzzy-step " *[[{(][^()\n]*[]})] *$")
1576 (gnus-simplify-buffer-fuzzy-step " +" " ")
1577 (gnus-simplify-buffer-fuzzy-step " $")
1578 (gnus-simplify-buffer-fuzzy-step "^ +")))
1582 See `gnus-simplify-buffer-fuzzy' for details."
1584 (gnus-set-work-buffer)
1591 (inline (gnus-simplify-buffer-fuzzy))
1592 (buffer-string))))
1625 (gnus-group-add-score gnus-newsgroup-name))
1746 "h" gnus-summary-select-article-buffer
1844 (gnus-define-keys (gnus-summary-buffer-map "Y" gnus-summary-mode-map)
2041 "b" gnus-uu-mark-buffer
2129 ["Rescore buffer" gnus-summary-rescore t]
2133 ;; Define both the Article menu in the summary buffer and the
2134 ;; equivalent Commands menu in the article buffer here for
2205 `[,(symbol-name cs) ,command t]))
2277 'request-move-article gnus-newsgroup-name)]
2281 'request-replace-article gnus-newsgroup-name)]
2284 'request-accept-article gnus-newsgroup-name)]
2287 'request-accept-article gnus-newsgroup-name)]
2293 'request-expire-articles gnus-newsgroup-name)]
2298 'request-expire-articles gnus-newsgroup-name)])
2314 ["Select article buffer" gnus-summary-select-article-buffer t]
2315 ["Enter digest buffer" gnus-summary-enter-digest-group t]
2469 ["Mark buffer" gnus-uu-mark-buffer t]
2540 'request-expire-articles gnus-newsgroup-name)]
2576 (when (gnus-buffer-live-p gnus-summary-buffer)
2577 (with-current-buffer gnus-summary-buffer
2628 gnus-newsgroup-name))
2632 (spam-group-ham-contents-p gnus-newsgroup-name))
2637 (spam-group-spam-contents-p gnus-newsgroup-name)))
2774 (let ((ps perms)
2776 (while ps
2780 (caar ps)
2794 (nth 1 (car ps))
2798 (setq ps (cdr ps)))
2815 Each line in this buffer represents one article. To read an
2820 You can also post articles and send mail from this buffer. To
2825 buffer; read the info pages for more information (`\\[gnus-info-find-node]').
2841 (setq mode-name "Summary")
2844 (buffer-disable-undo)
2845 (setq buffer-read-only t) ;Disable modification
2851 (setq gnus-newsgroup-name group)
2866 "Make all the local summary buffer variables."
3038 '(let ((to (get-text-property (point) 'gnus-intangible)))
3043 '(get-text-property (point) 'gnus-intangible))
3061 (or (get-text-property (point) 'gnus-number)
3072 (get-text-property (point) 'gnus-intangible))
3182 (while (get-text-property (point) 'gnus-intangible)
3200 (let (point buffer-read-only)
3242 (setq buffer-display-table table)))
3257 (current-buffer))))))
3259 (defun gnus-summary-setup-buffer (group)
3260 "Initialize summary buffer."
3261 (let ((buffer (gnus-summary-buffer-name group))
3262 (dead-name (concat "*Dead Summary "
3263 (gnus-group-decoded-name group) "*")))
3264 ;; If a dead summary buffer exists, we kill it.
3265 (when (gnus-buffer-live-p dead-name)
3266 (gnus-kill-buffer dead-name))
3267 (if (get-buffer buffer)
3269 (set-buffer buffer)
3270 (setq gnus-summary-buffer (current-buffer))
3273 (setq gnus-summary-buffer (set-buffer (gnus-get-buffer-create buffer)))
3276 (gnus-carpal-setup-buffer 'summary))
3277 (unless gnus-single-article-buffer
3278 (make-local-variable 'gnus-article-buffer)
3280 (make-local-variable 'gnus-original-article-buffer))
3281 (setq gnus-newsgroup-name group)
3283 (gnus-summary-set-local-parameters gnus-newsgroup-name)
3287 "Set the global equivalents of the buffer-local variables.
3289 buffer that was in action when the last article was fetched."
3291 (setq gnus-summary-buffer (current-buffer))
3292 (let ((name gnus-newsgroup-name)
3298 (summary gnus-summary-buffer)
3299 (article-buffer gnus-article-buffer)
3300 (original gnus-original-article-buffer)
3314 (set-buffer gnus-group-buffer)
3315 (setq gnus-newsgroup-name name
3322 gnus-summary-buffer summary
3323 gnus-article-buffer article-buffer
3324 gnus-original-article-buffer original
3334 ;; The article buffer also has local variables.
3335 (when (gnus-buffer-live-p gnus-article-buffer)
3336 (set-buffer gnus-article-buffer)
3337 (setq gnus-summary-buffer summary))))))
3344 "Return whether ARTICLE is the first article in the buffer."
3350 "Return whether ARTICLE is the last article in the buffer."
3371 (when (gnus-buffer-exists-p gnus-summary-buffer)
3372 (set-buffer gnus-summary-buffer))
3376 (gnus-set-work-buffer)
3393 (erase-buffer)
3426 "Insert a dummy root in the summary buffer."
3441 (save-excursion (set-buffer gnus-summary-buffer)
3501 (gnus-tmp-name
3515 (buffer-read-only nil))
3516 (when (string= gnus-tmp-name "")
3517 (setq gnus-tmp-name gnus-tmp-from))
3623 kill-buffer no-display backward
3628 If NO-DISPLAY, don't generate a summary buffer."
3635 kill-buffer no-display
3640 (set-buffer gnus-group-buffer)
3646 (if (not (equal group (gnus-group-group-name)))
3647 (setq group (gnus-group-group-name))
3652 kill-buffer no-display
3659 (gnus-group-decoded-name group))
3660 (let* ((new-group (gnus-summary-setup-buffer group))
3665 ;; This summary buffer exists already, so we just select it.
3668 (when kill-buffer
3669 (gnus-kill-or-deaden-summary kill-buffer))
3678 (not (equal (current-buffer) kill-buffer)))
3679 (kill-buffer (current-buffer))
3685 (set-buffer gnus-group-buffer)
3689 (let ((grpinfo (gnus-get-info group)))
3692 (gnus-group-decoded-name group))
3699 (not (equal (current-buffer) kill-buffer))
3700 (kill-buffer (current-buffer)))
3701 (when kill-buffer
3702 (gnus-kill-or-deaden-summary kill-buffer))
3705 (set-buffer gnus-group-buffer)
3718 (gnus-active gnus-newsgroup-name)))
3719 ;; You can change the summary buffer in some way with this hook.
3737 ;; Generate the summary buffer.
3744 ;; If the summary buffer is empty, but there are some low-scored
3746 ;; buffer.
3747 (when (and (zerop (buffer-size))
3755 (if (and (zerop (buffer-size))
3761 (when kill-buffer
3762 (gnus-kill-or-deaden-summary kill-buffer))
3769 (when kill-buffer
3770 (gnus-kill-or-deaden-summary kill-buffer))
3789 (get-buffer-window gnus-group-buffer t))
3791 ;; the current buffer ain't the displayed window.
3793 (select-window (get-buffer-window gnus-group-buffer t))
3797 ;; Mark this buffer as "prepared".
3823 "Generate the summary buffer."
3825 (let ((buffer-read-only nil))
3826 (erase-buffer)
3830 ;; Generate the buffer, either with threads or without.
3841 ;; Call hooks for modifying summary buffer.
4112 (nnheader-set-temp-buffer " *gnus sparse threads*")
4124 (setq new-child (buffer-substring (point) end))
4131 (erase-buffer)))
4132 (kill-buffer (current-buffer)))
4166 (setq id (symbol-name refs))
4167 (while (and (setq id (gnus-build-get-header id))
4183 (buffer (current-buffer))
4229 (defun gnus-build-get-header (id)
4230 "Look through the buffer of NOV lines and find the header to ID.
4237 (set-buffer nntp-server-buffer)
4251 (read (current-buffer)) deps))
4273 (set-buffer nntp-server-buffer)
4278 (setq article (read (current-buffer))
4282 (set-buffer gnus-summary-buffer)
4306 (buffer-read-only nil)
4343 "Update ARTICLE in the summary buffer."
4344 (set-buffer gnus-summary-buffer)
4357 (buffer-read-only nil)
4373 (let ((buffer-read-only nil)
4401 ;; We then insert this thread into the summary buffer.
4413 ;;!!! then we want to insert at the beginning of the buffer.
4697 (gnus-date-get-time (mail-header-date h1))
4698 (gnus-date-get-time (mail-header-date h2))))
4837 "Prepare summary buffer from THREADS and indentation LEVEL.
4855 gnus-tmp-score-char gnus-tmp-from gnus-tmp-name
4871 (switch-to-buffer (buffer-name)))
5071 gnus-tmp-name
5104 (when (string= gnus-tmp-name "")
5105 (setq gnus-tmp-name gnus-tmp-from))
5146 "Generate an unthreaded summary buffer based on HEADERS."
5209 (let ((name (gnus-group-decoded-name gnus-newsgroup-name)))
5210 (gnus-message 5 "Fetching headers for %s..." name)
5215 articles gnus-newsgroup-name
5223 (gnus-get-newsgroup-headers-xover
5224 articles nil nil gnus-newsgroup-name t)
5225 (gnus-get-newsgroup-headers))
5226 (gnus-message 5 "Fetching headers for %s...done" name))))
5250 (gnus-kill-buffer (current-buffer)))
5252 (gnus-group-decoded-name group) (gnus-status-message group))))
5256 (gnus-kill-buffer (current-buffer)))
5258 (gnus-group-decoded-name group) (gnus-status-message group)))
5268 (setq gnus-newsgroup-name group
5373 (gnus-agent-get-undownloaded-list))
5380 ;; Set up the article buffer now, if necessary.
5381 (unless gnus-single-article-buffer
5382 (gnus-article-setup-buffer))
5416 (gnus-get-predicate display)))
5502 gnus-newsgroup-name))
5508 (gnus-group-decoded-name gnus-newsgroup-name)
5522 (gnus-group-decoded-name group)
5551 gnus-newsgroup-name articles)
5672 (info (gnus-get-info gnus-newsgroup-name))
5705 'request-set-mark gnus-newsgroup-name)
5720 (unless (gnus-check-group gnus-newsgroup-name)
5721 (error "Can't open server for %s" gnus-newsgroup-name))
5722 (gnus-request-set-mark gnus-newsgroup-name delta-marks))
5747 ;; We evaluate this in the summary buffer since these
5748 ;; variables are buffer-local to that buffer.
5749 (set-buffer gnus-summary-buffer)
5755 (gnus-tmp-group-name (gnus-mode-string-quote
5756 (gnus-group-decoded-name
5757 gnus-newsgroup-name)))
5782 (buffer-name
5785 (get-buffer gnus-article-buffer))))
5801 (setq mode-line-buffer-identification
5802 (gnus-mode-line-buffer-identification (list mode-string)))
5803 (set-buffer-modified-p t))))
5835 name entry info xref-hashtb idlist method nth4)
5837 (set-buffer gnus-group-buffer)
5842 (unless (string= from-newsgroup (setq name (symbol-name group)))
5846 (setq entry (gnus-gethash name gnus-newsrc-hashtb)
5865 (gnus-group-make-articles-read name idlist))))
5881 ;; obscure situation. If you re-scan a group and get
5883 ;; group that has not been re-scanned, you might get
5913 (set-buffer gnus-group-buffer)
5918 (gnus-get-unread-articles-in-group ',info (gnus-active ,group))
5942 ;; Update the group buffer.
5948 (defun gnus-get-newsgroup-headers (&optional dependencies force-new)
5949 (let ((cur nntp-server-buffer)
5952 (save-excursion (set-buffer gnus-summary-buffer)
5958 (set-buffer gnus-summary-buffer)
5962 (set-buffer nntp-server-buffer)
6020 (buffer-substring (match-beginning 1)
6034 (buffer-substring
6084 (concat "\n" (symbol-name (car extra)) ":") nil t)
6106 (defun gnus-get-newsgroup-headers-xover (sequence &optional
6109 "Parse the news overview data in the server buffer.
6114 (setq gnus-article-internal-prepare-hook '(gnus-article-get-xrefs))
6117 (cur nntp-server-buffer)
6129 (set-buffer nntp-server-buffer)
6166 (gnus-get-newsgroup-headers))))))))
6168 (defun gnus-article-get-xrefs ()
6171 (let ((headers (save-excursion (set-buffer gnus-summary-buffer)
6187 (setq xref (buffer-substring (point) (gnus-point-at-eol)))
6247 ;;; Process/prefix in the summary buffer
6254 (set-buffer gnus-summary-buffer)
6340 (set-buffer gnus-group-buffer)
6343 (gnus-group-group-name))))
6346 "Find the name of the best unread group.
6349 (set-buffer gnus-group-buffer)
6469 If `gnus-auto-center-summary' is nil, or the article buffer isn't
6485 (window (get-buffer-window (current-buffer))))
6486 (when (get-buffer-window gnus-article-buffer)
6487 ;; Only do recentering when the article buffer is displayed,
6508 (when (and (get-buffer-window (current-buffer) t)
6511 (select-window (get-buffer-window (current-buffer) t))
6517 "Move point to NEWSGROUP in group mode buffer."
6518 ;; Keep update point of group mode buffer if visible.
6519 (if (eq (current-buffer) (get-buffer gnus-group-buffer))
6522 (when (get-buffer-window gnus-group-buffer)
6523 (pop-to-buffer gnus-group-buffer))
6527 (if (get-buffer-window gnus-group-buffer)
6528 (pop-to-buffer gnus-group-buffer)
6529 (set-buffer gnus-group-buffer))
6536 (let* ((read (gnus-info-read (gnus-get-info group)))
6573 (let* ((info (gnus-get-info group))
6589 (let* ((read (gnus-info-read (gnus-get-info group)))
6627 (defun gnus-summary-select-article-buffer ()
6628 "Reconfigure windows to show article buffer."
6630 (if (not (gnus-buffer-live-p gnus-article-buffer))
6631 (error "There is no article buffer for this summary buffer")
6633 (select-window (get-buffer-window gnus-article-buffer))))
6687 (when (gnus-ephemeral-group-p gnus-newsgroup-name)
6690 (group gnus-newsgroup-name))
6693 ;; We have to adjust the point of group mode buffer because
6698 (gnus-group-get-new-news-this-group 1)))
6709 (let ((group gnus-newsgroup-name))
6724 (set-buffer gnus-group-buffer)
6740 ;; Do not switch windows but change the buffer to work.
6741 (set-buffer gnus-group-buffer)
6746 "Save the current number of read/marked articles in the dribble buffer.
6747 The dribble buffer will then be saved.
6760 (when (gnus-buffer-live-p gnus-article-buffer)
6762 (set-buffer gnus-article-buffer)
6767 (gnus-kill-save-kill-buffer)
6769 (let* ((group gnus-newsgroup-name)
6770 (quit-config (gnus-group-quit-config gnus-newsgroup-name))
6774 (buf (current-buffer)))
6783 (unless gnus-single-article-buffer
6784 (gnus-kill-buffer gnus-original-article-buffer)
6797 (nnmail-purge-split-history (gnus-group-real-name group))
6804 (set-buffer gnus-group-buffer)
6810 ;; buffer, don't skip forwards.
6811 (not (string= group (gnus-group-group-name))))
6817 (unless gnus-single-article-buffer
6818 (gnus-kill-buffer gnus-article-buffer)
6819 (gnus-kill-buffer gnus-original-article-buffer)
6821 (set-buffer buf)
6826 ;; We set all buffer-local variables to nil. It is unclear why
6827 ;; this is needed, but if we don't, buffer-local variables are
6833 (when (get-buffer gnus-article-buffer)
6834 (bury-buffer gnus-article-buffer))
6835 ;; We clear the global counterparts of the buffer-local
6837 (set-buffer gnus-group-buffer)
6841 ;; Return to group mode buffer.
6843 (gnus-kill-buffer buf)))
6845 (set-buffer gnus-group-buffer)
6849 ;; If gnus-group-buffer is already displayed, make sure we also move
6851 (let ((win (get-buffer-window (current-buffer) 0)))
6855 ;; Clear the current group name.
6857 (setq gnus-newsgroup-name nil)))))
6863 (let* ((group gnus-newsgroup-name)
6872 (when (gnus-buffer-live-p gnus-article-buffer)
6874 (set-buffer gnus-article-buffer)
6880 (unless gnus-single-article-buffer
6881 (gnus-kill-buffer gnus-article-buffer)
6882 (gnus-kill-buffer gnus-original-article-buffer)
6890 (set-buffer gnus-group-buffer)
6894 (gnus-kill-buffer gnus-summary-buffer))
6895 (unless gnus-single-article-buffer
6900 (when (get-buffer gnus-article-buffer)
6901 (bury-buffer gnus-article-buffer))
6902 ;; Return to the group buffer.
6904 ;; Clear the current group name.
6905 (setq gnus-newsgroup-name nil)
6908 (when (equal (gnus-group-group-name) group)
6916 (if (not (buffer-name (car quit-config)))
6918 (set-buffer (car quit-config))
6923 ;; The `gnus-summary-buffer' variable may point
6924 ;; to the old summary buffer when using a single
6925 ;; article buffer.
6926 (unless (gnus-buffer-live-p gnus-summary-buffer)
6927 (set-buffer gnus-group-buffer))
6928 (set-buffer gnus-summary-buffer)
6961 (define-key gnus-dead-summary-mode-map key 'bury-buffer)))
6979 "Make the current summary buffer into a dead summary buffer."
6980 ;; Kill any previous dead summary buffer.
6982 (buffer-name gnus-dead-summary))
6984 (set-buffer gnus-dead-summary)
6986 (kill-buffer (current-buffer)))))
6988 (setq gnus-dead-summary (current-buffer))
6990 (let ((name (buffer-name)))
6991 (when (string-match "Summary" name)
6992 (rename-buffer
6993 (concat (substring name 0 (match-beginning 0)) "Dead "
6994 (substring name (match-beginning 0)))
6996 (bury-buffer))))
6998 (defun gnus-kill-or-deaden-summary (buffer)
7001 (when (and (buffer-name buffer)
7002 (not gnus-single-article-buffer))
7004 (set-buffer buffer)
7005 (gnus-kill-buffer gnus-article-buffer)
7006 (gnus-kill-buffer gnus-original-article-buffer)))
7008 ;; Kill the buffer.
7011 (gnus-buffer-exists-p buffer))
7013 (set-buffer buffer)
7014 (gnus-tree-close gnus-newsgroup-name)))
7015 (gnus-kill-buffer buffer))
7016 ;; Deaden the buffer.
7017 ((gnus-buffer-exists-p buffer)
7019 (set-buffer buffer)
7023 "Wake up the dead summary buffer."
7026 (let ((name (buffer-name)))
7027 (when (string-match "Dead " name)
7028 (rename-buffer
7029 (concat (substring name 0 (match-beginning 0))
7030 (substring name (match-end 0)))
7046 (let (gnus-faq-buffer)
7047 (when (setq gnus-faq-buffer
7048 (gnus-group-fetch-faq gnus-newsgroup-name faq-dir))
7055 (gnus-group-describe-group force gnus-newsgroup-name))
7062 ;; Walking around group mode buffer from summary mode.
7072 (let ((current-group gnus-newsgroup-name)
7073 (current-buffer (current-buffer))
7082 (set-buffer gnus-group-buffer)
7087 (gnus-summary-best-group gnus-newsgroup-name)
7091 ;; buffer.
7093 (gnus-message 5 "Returning to the group buffer")
7095 (when (gnus-buffer-live-p current-buffer)
7096 (set-buffer current-buffer)
7106 (and (buffer-name current-buffer) current-buffer)
7211 "Insert the subject header for ARTICLES in the current buffer."
7249 "Make the summary buffer take up the entire Emacs frame.
7250 Given a prefix, will force an `article' buffer configuration."
7257 "Display ARTICLE in article buffer."
7258 (when (gnus-buffer-live-p gnus-article-buffer)
7259 (with-current-buffer gnus-article-buffer
7262 (when (gnus-buffer-live-p gnus-article-buffer)
7263 (with-current-buffer gnus-article-buffer
7289 the article buffer. If PSEUDO is non-nil, pseudo-articles will also
7291 ;; Make sure we are in the summary buffer to work around bbdb bug.
7293 (set-buffer gnus-summary-buffer))
7301 (set-buffer gnus-summary-buffer)
7302 (if (or (and gnus-single-article-buffer
7305 (null (get-buffer gnus-article-buffer))
7308 gnus-newsgroup-name))))
7309 (and (not gnus-single-article-buffer)
7316 (when (gnus-buffer-live-p gnus-article-buffer)
7317 (with-current-buffer gnus-article-buffer
7346 ;; Make sure we are in the summary buffer.
7348 (set-buffer gnus-summary-buffer))
7361 ;; Try to get next/previous article not displayed in this group.
7369 (unless (gnus-ephemeral-group-p gnus-newsgroup-name)
7370 (gnus-summary-jump-to-group gnus-newsgroup-name))
7374 (set-buffer gnus-group-buffer)
7378 (gnus-summary-best-group gnus-newsgroup-name)
7382 (select-window (get-buffer-window (current-buffer)))
7394 (if (gnus-ephemeral-group-p gnus-newsgroup-name)
7403 (gnus-summary-walk-group-buffer
7404 gnus-newsgroup-name cmd unread backward point))))))))
7406 (defun gnus-summary-walk-group-buffer (from-group cmd unread backward start)
7412 (set-buffer gnus-group-buffer)
7416 (gnus-summary-best-group gnus-newsgroup-name)
7423 (not (gnus-ephemeral-group-p gnus-newsgroup-name)))
7426 (gnus-group-decoded-name group)
7430 (gnus-group-decoded-name gnus-newsgroup-name)))))
7436 (let ((obuf (current-buffer)))
7437 (switch-to-buffer gnus-group-buffer)
7441 (setq group (gnus-group-group-name))
7442 (switch-to-buffer obuf))
7446 (gnus-ephemeral-group-p gnus-newsgroup-name))
7489 (setq gnus-summary-buffer (current-buffer))
7492 (article-window (get-buffer-window gnus-article-buffer t))
7494 ;; If the buffer is empty, we have no article.
7506 (not (equal (car gnus-article-current) gnus-newsgroup-name)))
7510 (gnus-eval-in-buffer-window gnus-article-buffer
7532 the beginning of the buffer."
7535 (article-window (get-buffer-window gnus-article-buffer t))
7541 (not (equal (car gnus-article-current) gnus-newsgroup-name)))
7546 (gnus-eval-in-buffer-window gnus-article-buffer
7572 (gnus-eval-in-buffer-window gnus-article-buffer
7759 ;; Summary commands and functions for limiting the summary buffer.
7762 "Limit the summary buffer to the next N articles.
7786 "Limit the summary buffer to articles that have subjects that match a regexp.
7806 "Limit the summary buffer to articles that have authors that match a regexp.
7816 "Limit the summary buffer to articles that are older than (or equal) AGE days.
7817 If YOUNGER-P (the prefix) is non-nil, limit the summary buffer to
7860 "Limit the summary buffer to articles that match an 'extra' header."
7865 (symbol-name (car gnus-extra-headers))
7870 (cons (symbol-name x) x))
7890 "Limit the summary buffer to the predicated in the `display' group parameter."
7906 "Limit the summary buffer to articles that are not marked as read.
7927 If REVERSE, limit the summary buffer to articles that are marked
7934 "Limit the summary buffer to articles that are marked with MARKS (e.g. \"DK\").
7935 If REVERSE (the prefix), limit the summary buffer to articles that are
7999 "Insert all the dormant articles for this group into the current buffer."
8088 ;; This will do all the work of generating the new summary buffer
8110 ;; buffer as a result of the new limit.
8207 ;; First we get the number of visible children to this thread. This
8311 (equal gnus-newsgroup-name
8319 (set-buffer gnus-original-article-buffer)
8370 (gnus-message 5 "Fetching headers for %s..." gnus-newsgroup-name)
8379 gnus-newsgroup-name (* limit 2))
8383 gnus-newsgroup-name limit))
8387 (gnus-message 5 "Fetching headers for %s...done" gnus-newsgroup-name))
8413 ;; If the article is present in the buffer we just go to it.
8461 (gnus-group-edit-group gnus-newsgroup-name 'params))
8466 (gnus-group-customize gnus-newsgroup-name))
8481 (let* ((name (format "%s-%d"
8482 (gnus-group-prefixed-name
8483 gnus-newsgroup-name (list 'nndoc ""))
8485 (set-buffer gnus-summary-buffer)
8487 (ogroup gnus-newsgroup-name)
8488 (params (append (gnus-info-params (gnus-get-info ogroup))
8493 (buf (current-buffer))
8496 (set-buffer gnus-original-article-buffer)
8506 (setq dig (nnheader-set-temp-buffer " *gnus digest buffer*"))
8507 (insert-buffer-substring gnus-original-article-buffer)
8521 name `(nndoc ,name (nndoc-address ,(get-buffer dig))
8525 `((adapt-file . ,(gnus-score-file-name gnus-newsgroup-name
8528 (nconc (gnus-info-params (gnus-get-info name))
8531 (switch-to-buffer buf)
8535 (kill-buffer dig)))))
8544 (ogroup gnus-newsgroup-name)
8545 (params (append (gnus-info-params (gnus-get-info ogroup))
8549 (setq group (format "%s-%d" gnus-newsgroup-name article))
8553 (with-temp-buffer
8554 (insert-buffer-substring gnus-original-article-buffer)
8563 group `(nndoc ,group (nndoc-address ,(current-buffer))
8568 (nconc (gnus-info-params (gnus-get-info egroup))
8579 "nnvirtual:%s-%s" gnus-newsgroup-name
8583 (cons (current-buffer) 'summary)))
8593 (gnus-eval-in-buffer-window gnus-article-buffer
8643 (gnus-use-trees nil) ;Inhibit updating tree buffer.
8650 (sum (current-buffer))
8656 (set-buffer gnus-article-buffer)
8657 (goto-char (window-point (get-buffer-window (current-buffer))))
8670 (get-buffer-window (current-buffer))
8674 (get-buffer-window (current-buffer))
8676 (set-buffer sum)
8679 (set-buffer sum)
8691 (set-buffer gnus-article-buffer)
8760 "Header name: "
8796 (gnus-eval-in-buffer-window gnus-article-buffer
8807 (gnus-eval-in-buffer-window gnus-article-buffer
8827 process-marked. With prefix arg, prompt the user for the name of the
8837 that name. If FILENAME is a number, prompt the user for the name of the file
8839 (interactive (list (ps-print-preprint current-prefix-arg)))
8842 (gnus-eval-in-buffer-window gnus-article-buffer
8843 (gnus-print-buffer))
8845 (ps-despool filename))
8847 (defun gnus-print-buffer ()
8848 (let ((buffer (generate-new-buffer " *print*")))
8851 (copy-to-buffer buffer (point-min) (point-max))
8852 (set-buffer buffer)
8855 ;; Copy-to-buffer doesn't copy overlay. So redo
8857 (let ((gnus-article-buffer buffer))
8862 (let ((ps-left-header
8872 (ps-right-header
8877 (gnus-run-hooks 'gnus-ps-print-hook)
8880 (ps-spool-buffer-with-faces)
8881 (ps-spool-buffer)))))
8882 (kill-buffer buffer))))
8901 (set-buffer gnus-article-buffer)
8908 (set-buffer gnus-original-article-buffer)
8911 (setq head (buffer-string))
8917 (with-temp-buffer
8923 (let ((nntp-server-buffer (current-buffer)))
8924 (setq header (car (gnus-get-newsgroup-headers deps t))))))
8947 (when (gnus-buffer-live-p gnus-article-buffer)
8949 (set-buffer gnus-article-buffer)
8981 (let ((window (and (gnus-buffer-live-p gnus-article-buffer)
8982 (get-buffer-window gnus-article-buffer t))))
8983 (with-current-buffer gnus-article-buffer
8986 (let* ((buffer-read-only nil)
8994 (with-current-buffer gnus-original-article-buffer
8999 (insert-buffer-substring gnus-original-article-buffer s e)
9013 (let ((buffer-read-only nil))
9030 (gnus-eval-in-buffer-window gnus-article-buffer
9034 buffer-read-only)
9035 (message-caesar-buffer-body arg)
9036 (set-window-start (get-buffer-window (current-buffer)) start)))))
9049 (gnus-eval-in-buffer-window gnus-article-buffer
9054 buffer-read-only)
9063 (set-window-start (get-buffer-window (current-buffer)) pos)))))))
9069 (gnus-eval-in-buffer-window gnus-article-buffer
9072 (let ((buffer-read-only nil))
9103 'request-move-article gnus-newsgroup-name)))
9107 'request-replace-article gnus-newsgroup-name)))
9111 'request-move-article gnus-newsgroup-name)
9112 (gnus-group-real-prefix gnus-newsgroup-name)
9118 (nnheader-set-temp-buffer " *copy article*")))
9122 ;; Read the newsgroup name.
9128 (gnus-buffer-live-p gnus-original-article-buffer))))
9130 ;; select an article to give `gnus-read-move-group-name' an
9138 (gnus-read-move-group-name
9166 gnus-newsgroup-name ; From newsgroup
9168 gnus-newsgroup-name)) ; Server
9176 (set-buffer copy-buf)
9177 (when (gnus-request-article-this-buffer article gnus-newsgroup-name)
9185 (setq new-xref (concat (gnus-group-real-name gnus-newsgroup-name)
9188 (setq xref (list (system-name))))
9196 (set-buffer copy-buf)
9198 (gnus-request-article-this-buffer article gnus-newsgroup-name)
9209 (cdr art-group) to-newsgroup (current-buffer) t)
9215 (nnheader-get-report (car to-method))))
9225 gnus-newsgroup-name nil
9228 (let* ((pto-group (gnus-group-prefixed-name
9265 (when (and (equal to-group gnus-newsgroup-name)
9280 (when (equal to-group gnus-newsgroup-name)
9296 (gnus-prin1-to-string (gnus-get-info to-group))
9303 (set-buffer copy-buf)
9304 (gnus-request-article-this-buffer article gnus-newsgroup-name)
9307 article gnus-newsgroup-name (current-buffer) t)))
9314 gnus-newsgroup-name
9319 (set-buffer gnus-summary-buffer)
9327 (set-buffer gnus-group-buffer)
9329 (gnus-group-get-new-news-this-group nil t)))
9331 (gnus-kill-buffer copy-buf)
9358 "If non-nil, show and update the summary buffer as it's being built.
9359 If the value is t, update the buffer after every line is inserted. If
9385 (symbol-name (or gnus-summary-respool-default-method
9387 gnus-newsgroup-name)))))
9401 (cdr (assoc (completing-read "Server name: " ms-alist nil t)
9405 (if (assoc (symbol-name
9406 (car (gnus-find-method-for-group gnus-newsgroup-name)))
9414 (let ((group gnus-newsgroup-name)
9423 (set-buffer (gnus-get-buffer-create " *import file*"))
9424 (erase-buffer)
9446 (kill-buffer (current-buffer)))
9456 (let ((group gnus-newsgroup-name)
9462 (set-buffer (gnus-get-buffer-create " *import file*"))
9463 (erase-buffer)
9471 (kill-buffer (current-buffer)))
9495 'request-expire-articles gnus-newsgroup-name))
9497 (let* ((total (gnus-group-total-expirable-p gnus-newsgroup-name))
9505 (gnus-list-of-read-articles gnus-newsgroup-name))
9510 gnus-newsgroup-name 'expiry-wait)))
9512 (or (gnus-group-find-parameter gnus-newsgroup-name 'expiry-target)
9519 (unless (gnus-check-group gnus-newsgroup-name)
9520 (error "Can't open server for %s" gnus-newsgroup-name))
9527 expirable gnus-newsgroup-name)))
9529 expirable gnus-newsgroup-name)))
9544 gnus-newsgroup-name
9575 gnus-newsgroup-name)
9577 (unless (gnus-check-server (gnus-find-method-for-group gnus-newsgroup-name))
9592 articles gnus-newsgroup-name 'force))
9603 'delete id gnus-newsgroup-name nil
9632 (and (gnus-buffer-live-p gnus-article-buffer)
9633 (with-current-buffer gnus-article-buffer
9640 (member gnus-newsgroup-name '("nndraft:delayed"
9644 gnus-newsgroup-name))
9646 (set-buffer gnus-summary-buffer)
9654 (when (and (not raw) (gnus-buffer-live-p gnus-article-buffer))
9655 (with-current-buffer gnus-article-buffer
9657 (if (member gnus-newsgroup-name '("nndraft:delayed" "nndraft:drafts"))
9662 (let ((mbl mml-buffer-list))
9663 (setq mml-buffer-list nil)
9666 (let ((mbl1 mml-buffer-list))
9667 (setq mml-buffer-list mbl)
9668 (set (make-local-variable 'mml-buffer-list) mbl1))
9669 (gnus-make-local-hook 'kill-buffer-hook)
9670 (add-hook 'kill-buffer-hook 'mml-destroy-buffers t t))))
9680 (remove-hook 'kill-buffer-hook
9682 (kill-local-variable 'mml-buffer-list)))
9686 ,gnus-summary-buffer no-highlight))))))))
9690 (defun gnus-summary-edit-article-done (&optional references read-only buffer
9695 ;; The buffer restriction contains the entire article if it exists.
9715 (let ((buf (current-buffer)))
9716 (with-temp-buffer
9717 (insert-buffer-substring buf)
9722 (current-buffer) t)))
9724 ;; Update the summary buffer.
9733 (let ((head (buffer-substring-no-properties
9736 (with-temp-buffer
9741 (let ((nntp-server-buffer (current-buffer)))
9742 (setq header (car (gnus-get-newsgroup-headers
9745 (set-buffer gnus-summary-buffer)
9756 (set-buffer (or buffer gnus-summary-buffer))
9761 ;; Prettify the article buffer again.
9764 (set-buffer gnus-article-buffer)
9767 (set-buffer gnus-original-article-buffer)
9770 (car gnus-article-current) (current-buffer))))
9771 ;; Prettify the summary buffer line.
9776 "Perform editing command KEY in the article buffer."
9795 (set-buffer gnus-original-article-buffer)
9806 Display a buffer showing all fancy splitting patterns which matched."
9956 (let ((buffer-read-only nil))
9966 (let ((buffer-read-only nil))
9973 (when (or (not (get-buffer gnus-article-buffer))
9976 (not (equal gnus-newsgroup-name (car gnus-article-current))))
9985 (set-buffer gnus-article-buffer)
10079 (setq mark (gnus-request-update-mark gnus-newsgroup-name article mark))
10085 (setq mark (gnus-request-update-mark gnus-newsgroup-name article mark))
10087 ;; Set the mark in the buffer.
10096 (setq mark (gnus-request-update-mark gnus-newsgroup-name article mark))
10132 gnus-newsgroup-name article
10161 (setq mark (gnus-request-update-mark gnus-newsgroup-name article mark))
10179 gnus-newsgroup-name article
10184 (let ((buffer-read-only nil))
10228 (buffer-read-only nil))
10414 (set-buffer gnus-summary-buffer)
10444 (set-buffer gnus-summary-buffer)
10457 (let ((buffer-read-only nil))
10486 If TO-HERE is non-nil, it should be a point in the buffer. All
10491 in the current summary buffer limitation.
10577 (if (and (not (gnus-group-quit-config gnus-newsgroup-name))
10603 "Select ARTICLE and perform FORMS in the original article buffer.
10609 (set-buffer gnus-original-article-buffer)
10616 (current-buffer) t)
10691 (let ((gnus-article-buffer " *reparent*")
10699 (error "Beginning of summary buffer"))))))
10717 (set-buffer gnus-summary-buffer)
10743 (let ((buffer-read-only nil))
10751 (let ((buffer-read-only nil)
10810 (let ((buffer-read-only nil)
10814 ;; Go forward until either the buffer ends or the subthread
10951 "Sort the summary buffer by article number.
10957 "Randomize the order in the summary buffer.
10963 "Sort the summary buffer by author name alphabetically.
10970 "Sort the summary buffer by subject alphabetically. `Re:'s are ignored.
10977 "Sort the summary buffer by date.
10983 "Sort the summary buffer by score.
10989 "Sort the summary buffer by the number of lines.
10995 "Sort the summary buffer by article length.
11001 "Sort the summary buffer using the default sorting method.
11004 (let* ((buffer-read-only)
11012 "Sort summary buffer by PREDICATE. REVERSE means reverse order."
11027 (buffer-read-only)
11049 (save-buffer (save-excursion
11050 (nnheader-set-temp-buffer " *Gnus Save*")))
11054 (get gnus-default-article-saver :decode)))
11057 (saver2 (get gnus-default-article-saver :function))
11067 (if (assq 'name header)
11068 (gnus-copy-file (cdr (assq 'name header)))
11079 (set-buffer save-buffer)
11080 (erase-buffer)
11081 (insert-buffer-substring (if decode
11082 gnus-article-buffer
11083 gnus-original-article-buffer)))
11084 (setq file (gnus-article-save save-buffer file num))
11091 (gnus-kill-buffer save-buffer)
11108 (let ((buffer (get-buffer "*Shell Command Output*")))
11109 (when (and buffer
11110 (not (zerop (buffer-size buffer))))
11195 (gnus-eval-in-buffer-window gnus-article-buffer
11199 buffer-read-only)
11200 (message-pipe-buffer-body program)
11201 (set-window-start (get-buffer-window (current-buffer)) start))))))
11203 (defun gnus-get-split-value (methods)
11205 (let (split-name method result match)
11208 (set-buffer gnus-original-article-buffer)
11211 (while (and methods (not split-name))
11224 (setq result (funcall match gnus-newsgroup-name))))
11230 (setq split-name (cdr method))
11232 (push (expand-file-name
11234 split-name))
11236 (setq split-name (append result split-name)))))))))
11237 (nreverse split-name)))
11241 (symbol-name group)
11243 (gnus-get-function (gnus-find-method-for-group
11244 (symbol-name group)) 'request-accept-article t)))
11246 (defun gnus-read-move-group-name (prompt default articles prefix)
11247 "Read a group name."
11248 (let* ((split-name (gnus-get-split-value gnus-move-split-methods))
11258 ((null split-name)
11265 ((= 1 (length split-name))
11267 (car split-name) prom
11276 (nreverse split-name))
11285 (error "No group name entered"))
11307 (read-file-name "Save to directory: "
11316 (set-buffer gnus-article-buffer)
11318 (mm-dissect-buffer nil gnus-article-loose-mime)
11333 (let ((file (expand-file-name
11335 mm-file-name-rewrite-functions
11336 (file-name-nondirectory
11338 (mail-content-type-get
11340 (mail-content-type-get
11341 (mm-handle-type handle) 'name)
11342 (concat gnus-newsgroup-name
11352 (let ((buffer-read-only nil)
11361 (let ((ps (setq pslist (sort pslist 'gnus-pseudos<)))
11363 (while ps
11364 (setq action (cdr (assq 'action (car ps))))
11365 (setq files (list (cdr (assq 'name (car ps)))))
11366 (while (and ps (cdr ps)
11368 (or (cdr (assq 'action (cadr ps))) "2")))
11369 (push (cdr (assq 'name (cadr ps))) files)
11370 (setcdr ps (cddr ps)))
11375 (when (assq 'execute (car ps))
11376 (setcdr (assq 'execute (car ps))
11386 (setq ps (cdr ps)))))
11400 (insert " " (file-name-nondirectory
11401 (cdr (assq 'name (car pslist))))
11430 (gnus-article-setup-buffer)
11431 (set-buffer gnus-article-buffer)
11432 (setq buffer-read-only nil)
11435 (erase-buffer)
11438 (start-process "gnus-execute" (current-buffer) shell-file-name
11440 (call-process shell-file-name nil t nil
11455 (gnus-summary-article-number) gnus-newsgroup-name))
11461 (let ((group gnus-newsgroup-name)
11465 (and (gnus-news-group-p gnus-newsgroup-name)
11481 (set-buffer nntp-server-buffer)
11493 (current-buffer))
11496 (not (setq header (car (gnus-get-newsgroup-headers nil t)))))
11500 (not (string= (gnus-group-real-name group)
11507 (set-buffer gnus-summary-buffer)
11532 "Highlight selected article in summary buffer."
11539 (from (if (get-text-property beg gnus-mouse-face-prop)
11558 gnus-newsgroup-selected-overlay from to (current-buffer))
11600 (unless (eq face (get-text-property beg 'face))
11660 (set-buffer gnus-group-buffer)
11665 (gnus-get-unread-articles-in-group ',info
11672 (gnus-get-unread-articles-in-group info (gnus-active group))
11679 (dolist (buffer (buffer-list))
11680 (when (and (setq buffer (buffer-name buffer))
11681 (string-match "Summary" buffer)
11683 (set-buffer buffer)
11684 ;; We check that this is, indeed, a summary buffer.
11689 ;; dead summary buffer.
11691 (push buffer buffers)))
11696 "Update summary buffer %s? "
11698 (switch-to-buffer buf)
11704 (if (member gnus-newsgroup-name '("nndraft:delayed" "nndraft:drafts"))
11709 (and gnus-newsgroup-name
11710 (gnus-parameter-ignored-charsets gnus-newsgroup-name))
11714 (and gnus-newsgroup-name
11715 (gnus-parameter-charset gnus-newsgroup-name))
11725 "Display the current article buffer fully MIME-buttonized.
11744 (let ((separator (buffer-substring (point) (gnus-point-at-eol))))
11755 "Toggle the buttonizing of the article buffer."
11784 (defun gnus-summary-make-marking-command (name mark keystroke)
11793 mark (car lway) lway name)))
11797 (defun gnus-summary-make-marking-command-1 (mark way lway name)
11800 name (if (eq way 'nomove)
11802 (concat "-" (symbol-name way)))))
11810 name (cadr lway))
11817 (error "This command can only be used in the summary buffer"))
11863 (gnus-agent-get-undownloaded-list))
11915 gnus-newsgroup-name))
11921 (gnus-group-decoded-name gnus-newsgroup-name) 35)
11958 (gnus-activate-group gnus-newsgroup-name 'scan))