emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/gnus/gnus-sum.el [lexbind]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/gnus/gnus-sum.el [lexbind]
Date: Thu, 28 Oct 2004 22:27:59 -0400

Index: emacs/lisp/gnus/gnus-sum.el
diff -c emacs/lisp/gnus/gnus-sum.el:1.32.2.8 
emacs/lisp/gnus/gnus-sum.el:1.32.2.9
*** emacs/lisp/gnus/gnus-sum.el:1.32.2.8        Mon Oct 25 04:22:24 2004
--- emacs/lisp/gnus/gnus-sum.el Fri Oct 29 02:05:07 2004
***************
*** 3225,3267 ****
    (save-excursion
      (when (gnus-buffer-exists-p gnus-summary-buffer)
        (set-buffer gnus-summary-buffer))
!     (let ((gnus-replied-mark 129)
!         (gnus-score-below-mark 130)
!         (gnus-score-over-mark 130)
!         (gnus-undownloaded-mark 131)
!         (spec gnus-summary-line-format-spec)
!         gnus-visual pos)
        (save-excursion
        (gnus-set-work-buffer)
!       (let ((gnus-summary-line-format-spec spec)
              (gnus-newsgroup-downloadable '(0))
!             marks)
!         (insert ?\200 "\200" ?\201 "\201" ?\202 "\202" ?\203 "\203")
!         (while (not (bobp))
!           (push (buffer-substring (1- (point)) (point)) marks)
!           (backward-char))
          (erase-buffer)
!         (gnus-summary-insert-line
!          [0 "" "" "05 Apr 2001 23:33:09 +0400" "" "" 0 0 "" nil]
!          0 nil t 128 t nil "" nil 1)
          (goto-char (point-min))
          (setq pos (list (cons 'unread
!                               (and (or (search-forward (nth 0 marks) nil t)
!                                        (search-forward (nth 1 marks) nil t))
                                     (- (point) (point-min) 1)))))
          (goto-char (point-min))
!         (push (cons 'replied (and (or (search-forward (nth 2 marks) nil t)
!                                       (search-forward (nth 3 marks) nil t))
                                    (- (point) (point-min) 1)))
                pos)
          (goto-char (point-min))
!         (push (cons 'score (and (or (search-forward (nth 4 marks) nil t)
!                                     (search-forward (nth 5 marks) nil t))
                                  (- (point) (point-min) 1)))
                pos)
          (goto-char (point-min))
!         (push (cons 'download (and (or (search-forward (nth 6 marks) nil t)
!                                        (search-forward (nth 7 marks) nil t))
                                     (- (point) (point-min) 1)))
                pos)))
        (setq gnus-summary-mark-positions pos))))
--- 3225,3278 ----
    (save-excursion
      (when (gnus-buffer-exists-p gnus-summary-buffer)
        (set-buffer gnus-summary-buffer))
!     (let ((spec gnus-summary-line-format-spec)
!         pos)
        (save-excursion
        (gnus-set-work-buffer)
!       (let ((gnus-tmp-unread ?Z)
!             (gnus-replied-mark ?Z)
!             (gnus-score-below-mark ?Z)
!             (gnus-score-over-mark ?Z)
!             (gnus-undownloaded-mark ?Z)
!             (gnus-summary-line-format-spec spec)
              (gnus-newsgroup-downloadable '(0))
!             (header [0 "" "" "05 Apr 2001 23:33:09 +0400" "" "" 0 0 "" nil])
!             case-fold-search ignores)
!         ;; Here, all marks are bound to Z.
!         (gnus-summary-insert-line header
!                                   0 nil t gnus-tmp-unread t nil "" nil 1)
!         (goto-char (point-min))
!         ;; Memorize the positions of the same characters as dummy marks.
!         (while (re-search-forward "[A-D]" nil t)
!           (push (point) ignores))
          (erase-buffer)
!         ;; We use A-D as dummy marks in order to know column positions
!         ;; where marks should be inserted.
!         (setq gnus-tmp-unread ?A
!               gnus-replied-mark ?B
!               gnus-score-below-mark ?C
!               gnus-score-over-mark ?C
!               gnus-undownloaded-mark ?D)
!         (gnus-summary-insert-line header
!                                   0 nil t gnus-tmp-unread t nil "" nil 1)
!         ;; Ignore characters which aren't dummy marks.
!         (dolist (p ignores)
!           (delete-region (goto-char (1- p)) p)
!           (insert ?Z))
          (goto-char (point-min))
          (setq pos (list (cons 'unread
!                               (and (search-forward "A" nil t)
                                     (- (point) (point-min) 1)))))
          (goto-char (point-min))
!         (push (cons 'replied (and (search-forward "B" nil t)
                                    (- (point) (point-min) 1)))
                pos)
          (goto-char (point-min))
!         (push (cons 'score (and (search-forward "C" nil t)
                                  (- (point) (point-min) 1)))
                pos)
          (goto-char (point-min))
!         (push (cons 'download (and (search-forward "D" nil t)
                                     (- (point) (point-min) 1)))
                pos)))
        (setq gnus-summary-mark-positions pos))))
***************
*** 3559,3567 ****
             (gnus-active gnus-newsgroup-name)))
        ;; You can change the summary buffer in some way with this hook.
        (gnus-run-hooks 'gnus-select-group-hook)
!       (gnus-update-format-specifications
!        nil 'summary 'summary-mode 'summary-dummy)
!       (gnus-update-summary-mark-positions)
        ;; Do score processing.
        (when gnus-use-scoring
        (gnus-possibly-score-headers))
--- 3570,3580 ----
             (gnus-active gnus-newsgroup-name)))
        ;; You can change the summary buffer in some way with this hook.
        (gnus-run-hooks 'gnus-select-group-hook)
!       (when (memq 'summary (gnus-update-format-specifications
!                           nil 'summary 'summary-mode 'summary-dummy))
!       ;; The format specification for the summary line was updated,
!       ;; so we need to update the mark positions as well.
!       (gnus-update-summary-mark-positions))
        ;; Do score processing.
        (when gnus-use-scoring
        (gnus-possibly-score-headers))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]