*** empty log message ***
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Fri, 9 Jul 1999 22:21:47 +0000 (22:21 +0000)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Fri, 9 Jul 1999 22:21:47 +0000 (22:21 +0000)
lisp/ChangeLog
lisp/gnus-art.el
lisp/gnus-topic.el
lisp/gnus.el
lisp/mail-source.el
lisp/mm-decode.el
lisp/mm-encode.el
texi/ChangeLog
texi/gnus.texi
texi/message.texi

index 58ad48c..09a7cf5 100644 (file)
@@ -1,3 +1,18 @@
+Fri Jul  9 22:21:16 1999  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+       * gnus.el: Pterodactyl Gnus v0.95 is released.
+
+1999-07-09 21:46:05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * mm-decode.el (mm-mailcap-command): New function.
+       (mm-display-external): Use it.
+
+       * gnus-art.el (article-make-date-line): Work for India.
+
+       * mm-encode.el (mm-qp-or-base64): Typo.
+
+       * gnus-topic.el (gnus-topic-goto-topic): Made into command.
+
 Fri Jul  9 19:28:29 1999  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
 
        * gnus.el: Pterodactyl Gnus v0.94 is released.
index b17bf7b..9836d8a 100644 (file)
@@ -1844,8 +1844,8 @@ should replace the \"Date:\" one, or should be added below it."
      ;; buggy dates.
      ((eq type 'local)
       (let ((tz (car (current-time-zone))))
-       (format "Date: %s %s%04d" (current-time-string time)
-               (if (> tz 0) "+" "-") (abs (/ tz 36)))))
+       (format "Date: %s %s%02d%02d" (current-time-string time)
+               (if (> tz 0) "+" "-") (/ tz 3600) (/ (% tz 3600) 60))))
      ;; Convert to Universal Time.
      ((eq type 'ut)
       (concat "Date: "
index ed63e62..97da766 100644 (file)
@@ -149,11 +149,20 @@ with some simple extensions.
       (gnus-group-topic group))))
 
 (defun gnus-topic-goto-topic (topic)
-  "Go to TOPIC."
   (when topic
     (gnus-goto-char (text-property-any (point-min) (point-max)
                                       'gnus-topic (intern topic)))))
 
+(defun gnus-topic-jump-to-topic (topic)
+  "Go to TOPIC."
+  (interactive
+   (list (completing-read "Go to topic: "
+                         (mapcar 'list (gnus-topic-list))
+                         nil t)))
+  (dolist (topic (gnus-current-topics topic))
+    (gnus-topic-fold t))
+  (gnus-topic-goto-topic topic))
+  
 (defun gnus-current-topic ()
   "Return the name of the current topic."
   (let ((result
@@ -507,9 +516,9 @@ articles in the topic and its subtopics."
    (car gnus-group-list-mode) (cdr gnus-group-list-mode)
    nil nil topic level))
 
-(defun gnus-topic-fold (&optional insert)
+(defun gnus-topic-fold (&optional insert topic)
   "Remove/insert the current topic."
-  (let ((topic (gnus-group-topic-name)))
+  (let ((topic (or topic (gnus-group-topic-name))))
     (when topic
       (save-excursion
        (if (not (gnus-group-active-topic-p))
@@ -932,6 +941,7 @@ articles in the topic and its subtopics."
     "c" gnus-topic-copy-group
     "h" gnus-topic-hide-topic
     "s" gnus-topic-show-topic
+    "j" gnus-topic-jump-to-topic
     "M" gnus-topic-move-matching
     "C" gnus-topic-copy-matching
     "\C-i" gnus-topic-indent
@@ -963,6 +973,7 @@ articles in the topic and its subtopics."
        ["Copy matching" gnus-topic-copy-matching t]
        ["Move matching" gnus-topic-move-matching t])
        ("Topics"
+       ["Goto" gnus-topic-jump-to-topic t]
        ["Show" gnus-topic-show-topic t]
        ["Hide" gnus-topic-hide-topic t]
        ["Delete" gnus-topic-delete t]
index a0b0b31..6b317de 100644 (file)
@@ -260,7 +260,7 @@ is restarted, and sometimes reloaded."
   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
-(defconst gnus-version-number "0.94"
+(defconst gnus-version-number "0.95"
   "Version number for this version of Gnus.")
 
 (defconst gnus-version (format "Pterodactyl Gnus v%s" gnus-version-number)
index 63929ca..de61819 100644 (file)
@@ -309,8 +309,7 @@ If ARGS, PROMPT is used as an argument to `format'."
     (if (and (symbolp script) (fboundp script))
        (funcall script)
       (mail-source-call-script
-       (format-spec
-       script spec))))
+       (format-spec script spec))))
   (when delay
     (sleep-for delay)))
 
@@ -398,9 +397,8 @@ If ARGS, PROMPT is used as an argument to `format'."
              (mail-source-callback callback server)
            (mail-source-run-script
             postscript
-            (format-spec-make
-                             ?p password ?t mail-source-crash-box
-                             ?s server ?P port ?u user)))
+            (format-spec-make ?p password ?t mail-source-crash-box
+                              ?s server ?P port ?u user)))
        ;; We nix out the password in case the error
        ;; was because of a wrong password being given.
        (setq mail-source-password-cache
index 91894cb..0b5f57f 100644 (file)
@@ -350,16 +350,36 @@ external if displayed external."
                      (start-process "*display*" nil
                                     "xterm"
                                     "-e" shell-file-name "-c"
-                                    (format method
-                                            (mm-quote-arg file)))
+                                    (mm-mailcap-command
+                                     method file (mm-handle-type handle)))
                    (start-process "*display*"
                                   (setq buffer (generate-new-buffer "*mm*"))
                                   shell-file-name
-                                  "-c" (format method
-                                               (mm-quote-arg file)))))
+                                  "-c"
+                                  (mm-mailcap-command
+                                   method file (mm-handle-type handle)))))
          (mm-handle-set-undisplayer handle (cons file buffer)))
        (message "Displaying %s..." (format method file))))))
 
+(defun mm-mailcap-command (method file type-list)
+  (let ((ctl (cdr type-list))
+       (beg 0)
+       out sub total)
+    (while (string-match "%{\\([^}]+\\)}\\|%s\\|%t" method beg)
+      (push (substring method beg (match-beginning 0)) out)
+      (setq beg (match-end 0)
+           total (match-string 0 method)
+           sub (match-string 1 method))
+      (cond
+       ((string= total "%s")
+       (push (mm-quote-arg file) out))
+       ((string= total "%t")
+       (push (mm-quote-arg (car type-list)) out))
+       (t
+       (push (mm-quote-arg (or (cdr (assq (intern sub) ctl)) "")) out))))
+    (push (substring method beg (length method)) out)
+    (mapconcat 'identity (nreverse out) "")))
+    
 (defun mm-remove-parts (handles)
   "Remove the displayed MIME parts represented by HANDLE."
   (if (and (listp handles)
index 7f9d1f6..d2de87d 100644 (file)
@@ -141,9 +141,9 @@ The encoding used is returned."
            (unless (eobp)
              (forward-char 1)
              (incf 8bit)))))
-       (if (> (/ (* 8bit 1.0) (buffer-size)) 0.2)
-           'quoted-base64
-         'printable)))))
+       (if (> (/ (* 8bit 1.0) (buffer-size)) 0.166)
+           'quoted-printable
+         'base64)))))
 
 (provide 'mm-encode)
 
index 1c5ffaa..42c9e20 100644 (file)
@@ -1,6 +1,7 @@
 1999-07-09 19:41:34  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * gnus.texi (Using MIME): Addition.
+       (Topic Commands): Addition.
 
 1999-07-06 05:37:46  Alexandre Oliva  <oliva@dcc.unicamp.br>
 
index 634af8f..93f8e06 100644 (file)
@@ -1,7 +1,7 @@
 @c \input texinfo                  @c -*-texinfo-*-
 
 @setfilename gnus
-@settitle Pterodactyl Gnus 0.94 Manual
+@settitle Pterodactyl Gnus 0.95 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
@@ -319,7 +319,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
-@title Pterodactyl Gnus 0.94 Manual
+@title Pterodactyl Gnus 0.95 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -355,7 +355,7 @@ can be gotten by any nefarious means you can think of---@sc{nntp}, local
 spool or your mbox file.  All at the same time, if you want to push your
 luck.
 
-This manual corresponds to Pterodactyl Gnus 0.94.
+This manual corresponds to Pterodactyl Gnus 0.95.
 
 @end ifinfo
 
@@ -2721,6 +2721,11 @@ Move the current group to some other topic
 (@code{gnus-topic-move-group}).  This command uses the process/prefix
 convention (@pxref{Process/Prefix}).
 
+@item T j
+@kindex T j (Topic)
+@findex gnus-topic-jump-to-topic
+Go to a topic (@code{gnus-topic-jump-to-topic}).  
+
 @item T c
 @kindex T c (Topic)
 @findex gnus-topic-copy-group
index 0f16d29..9cb2fa4 100644 (file)
@@ -1,7 +1,7 @@
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename message
-@settitle Pterodactyl Message 0.94 Manual
+@settitle Pterodactyl Message 0.95 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
@@ -42,7 +42,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
-@title Pterodactyl Message 0.94 Manual
+@title Pterodactyl Message 0.95 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -83,7 +83,7 @@ Message mode buffers.
 * Key Index::         List of Message mode keys.
 @end menu
 
-This manual corresponds to Pterodactyl Message 0.94.  Message is
+This manual corresponds to Pterodactyl Message 0.95.  Message is
 distributed with the Gnus distribution bearing the same version number
 as this manual.