Gnus development mailing list
 help / color / mirror / Atom feed
From: Danny Siu <dsiu@adobe.com>
Subject: Re: Gnus lies about downloaded state
Date: Wed, 15 Jan 2003 17:21:03 -0800	[thread overview]
Message-ID: <ud6mxx534.fsf@adobe.com> (raw)

Kevin Greiner writes:

  Kevin> Well, the good news is that you and Danny are reporting consistent
  Kevin> results.  The bad news is that we've narrowed the problem to
  Kevin> gnus-sum!

  Kevin> What value do you have for gnus-summary-mark-positions?  (It's
  Kevin> buffer local to the summary buffer.)

gnus-summary-mark-positions's value is 
((download . 8)
 (score . 2)
 (replied . 1)
 (unread . 0))

  Kevin> You should see (download . #) where # is the column number where
  Kevin> you expect to see the +/- download mark.

  Kevin> If that looks right, try adding this statement to the beginning of
  Kevin> gnus-summary-insert-line

  Kevin> (princ (format "%s %s\n" gnus-tmp-current undownloaded (get-buffer
  Kevin> "**scratch**")))

nil t
nil t

This is strange.  gnus-summary-insert-line only called twice?  I have ~250
unread articles.  and Why article number is nil?  hmmm...

  Kevin> This will print the article number and download status (downloaded
  Kevin> ==> nil / undownloaded ==> t) to the scratch buffer.

  Kevin> After displaying the summary, check scratch to see if the download
  Kevin> flag matches what is displayed.  By your descriptions it should not
  Kevin> match.

  Kevin> Pls send me the value of your gnus-format-specs.

((summary-dummy "                %(|---------------------------|%) %S\n"
                (progn
                  (insert "                ")
                  (gnus-put-text-property
                   (point)
                   (progn
                     (insert "|---------------------------|")
                     (point))
                   gnus-mouse-face-prop gnus-mouse-face)
                  (insert " " gnus-tmp-subject "\n")))
 (summary-mode "Gnus: %g [%A] %Z"
               (concat
                (format "Gnus: %s [%d] %s"
                        (gnus-short-group-name gnus-tmp-group-name)
                        gnus-tmp-article-number gnus-tmp-unread-and-unselected)))
 (summary "%U%R%z%5N%O %(%8&user-date; %~(pad 2)~(max 2)~(ignore \"1\")t%[%5k:%* %-20,20n%] %B%s%)\n"
          (let
              (gnus-position)
            (insert
             (format "%c%c%c%5d%c " gnus-tmp-unread gnus-tmp-replied gnus-tmp-score-char
                     (aref gnus-tmp-header 0)
                     gnus-tmp-downloaded))
            (gnus-put-text-property
             (point)
             (progn
               (insert
                (format "%8s %2s%c%5s:"
                        (gnus-user-date
                         (aref gnus-tmp-header 3))
                        (let*
                            ((val
                              (eval
                               (let
                                   ((val
                                     (eval
                                      (let
                                          ((val
                                            (eval
                                             (int-to-string
                                              (gnus-summary-number-of-articles-in-thread
                                               (and
                                                (boundp 'thread)
                                                (car thread))
                                               gnus-tmp-level)))))
                                        (if
                                            (equal val "1")
                                            "" val)))))
                                 (if
                                     (>
                                      (string-width val)
                                      2)
                                     (gnus-correct-substring val 0 2)
                                   val))))
                             (need
                              (- 2
                                 (string-width val))))
                          (if
                              (> need 0)
                              (concat
                               (make-string need 32)
                               val nil)
                            val))
                        gnus-tmp-opening-bracket
                        (gnus-summary-line-message-size gnus-tmp-header)))
               (setq gnus-position
                     (point))
               (insert
                (format " %-20s%c %s%s"
                        (let*
                            ((val
                              (eval
                               (if
                                   (>
                                    (string-width gnus-tmp-name)
                                    20)
                                   (gnus-correct-substring gnus-tmp-name 0 20)
                                 gnus-tmp-name)))
                             (need
                              (- 20
                                 (string-width val))))
                          (if
                              (> need 0)
                              (concat nil val
                                      (make-string need 32))
                            val))
                        gnus-tmp-closing-bracket gnus-tmp-thread-tree-header-string gnus-tmp-subject-or-nil))
               (point))
             gnus-mouse-face-prop gnus-mouse-face)
            (insert "\n")
            (if gnus-position
                (gnus-put-text-property gnus-position
                                        (1+ gnus-position)
                                        'gnus-position t))))
 (group-mode "Gnus: %%b {%M%:%S}"
             (concat
              (format "Gnus: %%b {%s%s%s}" gnus-tmp-news-method gnus-tmp-colon gnus-tmp-news-server)))
 (group "%m%M%S%P%2L [.%~(ignore 0)-3U !%~(ignore 0)-3T] %4y: %(%-20uG%) %20ue\n"
        (progn
          (insert
           (format "%c%c%c%s%2d [.%-3s !%-3s] %4s: "
                   (gnus-group-new-mail gnus-tmp-group)
                   gnus-tmp-marked-mark gnus-tmp-subscribed gnus-group-indentation gnus-tmp-level
                   (let*
                       ((val
                         (eval
                          (let
                              ((val
                                (eval
                                 (int-to-string
                                  (gnus-number-of-unseen-articles-in-group gnus-tmp-group)))))
                            (if
                                (equal val "0")
                                "" val))))
                        (need
                         (- 3
                            (string-width val))))
                     (if
                         (> need 0)
                         (concat nil val
                                 (make-string need 32))
                       val))
                   (let*
                       ((val
                         (eval
                          (let
                              ((val
                                (eval
                                 (int-to-string
                                  (gnus-range-length
                                   (cdr
                                    (assq 'tick gnus-tmp-marked)))))))
                            (if
                                (equal val "0")
                                "" val))))
                        (need
                         (- 3
                            (string-width val))))
                     (if
                         (> need 0)
                         (concat nil val
                                 (make-string need 32))
                       val))
                   gnus-tmp-number-of-unread))
          (gnus-put-text-property
           (point)
           (progn
             (insert
              (format "%-20s"
                      (gnus-user-format-function-G gnus-tmp-header)))
             (point))
           gnus-mouse-face-prop gnus-mouse-face)
          (insert
           (format " %20s\n"
                   (gnus-user-format-function-e gnus-tmp-header)))))
 (version . "21.2.1")
 (article-mode "Gnus: %g [%w] %S%m"
               (concat
                (format "Gnus: %s [%s] %s%s"
                        (gnus-short-group-name gnus-tmp-group-name)
                        (gnus-article-wash-status)
                        gnus-tmp-subject
                        (gnus-article-mime-part-status)))))

  Kevin> Kevin


-- 
Danny Siu




             reply	other threads:[~2003-01-16  1:21 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-16  1:21 Danny Siu [this message]
  -- strict thread matches above, loose matches on Subject: below --
2003-01-14 17:28 Kai Großjohann
2003-01-14 21:42 ` kgreiner
2003-01-15  7:11   ` Kai Großjohann
2003-01-15  7:12   ` Kai Großjohann
2003-01-15  7:16   ` Kai Großjohann
2003-01-14 22:19 ` Danny Siu
2003-01-15  6:08   ` Kevin Greiner
2003-01-15  8:56     ` Danny Siu
2003-01-15 14:16     ` Kai Großjohann
2003-01-15 15:12       ` Kevin Greiner
2003-01-15 16:07         ` Kai Großjohann
2003-01-15 21:07           ` Kevin Greiner
2003-01-16  4:29           ` Kevin Greiner
2003-01-16  7:52             ` Danny Siu
2003-01-16 13:02               ` Kevin Greiner
2003-01-16 20:53                 ` Danny Siu
2003-01-16 22:31                   ` Kevin Greiner
2003-01-16 23:08                     ` Danny Siu
2003-01-17  3:35                       ` Kevin Greiner
2003-01-18 13:49             ` Kai Großjohann
2003-01-19 16:42               ` Kevin Greiner
2003-01-22 19:38                 ` Danny Siu
2003-01-23  4:10                   ` Kevin Greiner
2003-01-23 10:39                     ` Kai Großjohann
2003-01-23 13:16                       ` Kevin Greiner
2003-01-23 14:11                         ` Kai Großjohann
2003-01-23 19:45                     ` Danny Siu
2003-01-23 10:30                   ` Kai Großjohann
2003-01-15 18:27         ` Danny Siu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ud6mxx534.fsf@adobe.com \
    --to=dsiu@adobe.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).