merge from no gnus
authorLars Ingebrigtsen <larsi@gnus.org>
Sat, 18 Feb 2012 13:12:22 +0000 (14:12 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Sat, 18 Feb 2012 13:12:22 +0000 (14:12 +0100)
1  2 
lisp/ChangeLog
lisp/shr.el
texi/ChangeLog

diff --combined lisp/ChangeLog
+ 2012-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
+       * shr.el (shr-image-fetched): Make sure we really kill the right
+       buffer.
  2012-02-16  Leo Liu  <sdl.web@gmail.com>
  
        * gnus-start.el (gnus-1): Avoid duplicate entries.
  
 +2012-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * mm-decode.el (mm-dissect-singlepart): Guess what the type of
 +      application/octet-stream parts really is.
 +
 +      * gnus-sum.el (gnus-propagate-marks): Remove.
 +
 +2012-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * imap.el: Remove.
 +
 +      * nntp.el (nntp-coding-system-for-read): Remove.
 +      (nntp-coding-system-for-write): Ditto.
 +      (nntp-open-connection): Just use `binary' directly.
 +
 +      * gnus-start.el (gnus-clean-old-newsrc): Delete `unexist' from pre-Ma
 +      Gnus 0.3.
 +
 +2012-02-15  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * shr.el (shr-rescale-image): Undo previous change; see
 +      <http://lists.gnu.org/archive/html/emacs-devel/2012-02/msg00540.html>.
 +
 +2012-02-15  Lars Magne Ingebrigtsen  <lars@ingebrigtsen.no>
 +
 +      * gnus.el: Ma Gnus v0.3 is released.
 +
 +2012-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus-sum.el (gnus-summary-local-variables): Make
 +      `gnus-newsgroup-unexist' into a local variable.
 +
 +2012-02-14  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * registry.el (registry-usage-test, registry-persistence-test): Move to
 +      tests/gnustest-registry.el.
 +      (registry-make-testable-db, registry-match-test)
 +      (registry-instantiation-test): Move to tests/gnustest-registry.el.
 +
 +      * gnus-registry.el (gnus-registry-misc-test)
 +      (gnus-registry-usage-test): Move to tests/gnustest-registry.el.
 +
 +      * tests/gnustest-registry.el: New file with the registry and
 +      gnus-registry ERT tests.
 +
 +2012-02-13  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-msg.el (gnus-summary-resend-message): Make
 +      gnus-summary-resend-message-insert-gcc be last item in
 +      message-header-setup-hook.
 +
 +2012-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * nnfolder.el (nnfolder-marks-directory, nnfolder-marks-is-evil)
 +      (nnfolder-marks, nnfolder-marks-file-suffix, nnfolder-marks-modtime):
 +      Remove.
 +      (nnfolder-open-server): Don't use marks.
 +      (nnfolder-request-delete-group): Ditto.
 +      (nnfolder-request-rename-group): Ditto.
 +      (nnfolder-request-set-mark, nnfolder-request-marks)
 +      (nnfolder-group-marks-pathname, nnfolder-marks-changed-p)
 +      (nnfolder-save-marks, nnfolder-open-marks): Remove.
 +
 +      * nnml.el (nnml-marks-is-evil, nnml-marks-file-name, nnml-marks)
 +      (nnml-marks-modtime): Remove.
 +      (nnml-request-delete-group): Don't use marks.
 +      (nnml-request-rename-group): Ditto.
 +      (nnml-request-set-mark, nnml-request-marks, nnml-marks-changed-p)
 +      (nnml-save-marks, nnml-open-marks): Remove.
 +
 +      * nntp.el (nntp-marks-is-evil, nntp-marks-file-name, nntp-marks)
 +      (nntp-marks-modtime, nntp-marks-directory, nntp-request-set-mark)
 +      (nntp-request-marks, nntp-marks-directory, nntp-marks-changed-p)
 +      (nntp-save-marks, nntp-open-marks, nntp-possibly-create-directory)
 +      (nntp-server-to-method-cache): Remove.
 +
 +      * shr.el (shr-rescale-image): Fix wrong merge.
 +
++2012-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
++
++      * shr.el (shr-image-fetched): Make sure we really kill the right
++      buffer.
++
++2012-02-16  Leo Liu  <sdl.web@gmail.com>
++
++      * gnus-start.el (gnus-1): Avoid duplicate entries.
++
  2012-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * shr.el (shr-remove-trailing-whitespace): Really delete the padding on
        too-wide lines.
  
+ 2012-02-15  Paul Eggert  <eggert@cs.ucla.edu>
+       * shr.el (shr-rescale-image): Undo previous change; see
+       <http://lists.gnu.org/archive/html/emacs-devel/2012-02/msg00540.html>.
  2012-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * nnimap.el (nnimap-record-commands): New variable.
        * auth-source.el (auth-source-cache-expiry):
        Add missing :version tags to new defcustoms and defgroups.
  
 +2012-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus-sum.el (gnus-adjust-marked-articles): Add to
 +      `gnus-newsgroup-unexist'.
 +
 +      * gnus.el (gnus-article-mark-lists): Add `unexist' to the list of
 +      marks.
 +      (gnus-article-special-mark-lists): Put the `unexist' in the special
 +      marks list instead.
 +
 +      * gnus-sum.el (gnus-articles-to-read): Don't include unexisting
 +      articles in the list of articles to be selected.
 +
 +      * nnimap.el (nnimap-retrieve-group-data-early): Query for unexisting
 +      articles.
 +      (nnimap-update-info): Keep track of unexisting articles.
 +      (nnimap-update-qresync-info): Ditto.
 +
  2012-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * message.el (message-default-send-mail-function): Made into own
        * gnus.el (gnus-method-ephemeral-p): Move after declaration of defsubst
        `gnus-sloppily-equal-method-parameters' to avoid a warning.
  
 +2012-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * mm-archive.el (mm-archive-dissect-and-inline): New function.
 +      (mm-archive-dissect-and-inline): Fix up the undisplayer.
 +
 +      * gnus-compat.el: Define `timer-set-function'.
 +
 +      * mm-decode.el (mm-display-external): Output the text from the command
 +      in the buffer after the command finished.  This makes text-based
 +      commands behave better.
 +
 +2012-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus-compat.el: Add a compat for the old `url-retrieve'.
 +
 +2012-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus-compat.el: Make `help-function-arglist' be compatible on Emacs
 +      23.1.
 +
 +2012-02-07  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-sum.el (gnus-summary-show-thread): Revert last two changes.
 +
 +2012-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * message.el (smtpmail-smtp-user): Silence compiler warning.
 +
 +2012-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * message.el (message-multi-smtp-send-mail): Also allow specifying the
 +      SMTP user name.
 +
 +2012-02-06  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-sum.el (gnus-summary-show-thread):
 +      next-single-char-property-change may return nil in XEmacs.
 +      (gnus-summary-article-map): Fix typo.
 +
  2012-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * gnus-msg.el (gnus-msg-mail): Use `message-mail' if Gnus isn't
        lines that are narrower than the window width.  Otherwise background
        "blocks" will look less readable.
  
 -2012-02-07  Katsumi Yamaoka  <yamaoka@jpl.org>
 -
 -      * gnus-sum.el (gnus-summary-show-thread): Revert last two changes.
 -
  2012-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * nnimap.el (nnimap-transform-headers): Remove unused variable.
        * gnus-sum.el (gnus-summary-exit-no-update): Really deaden the summary
        buffer if `gnus-kill-summary-on-exit' is nil.
  
 -2012-02-06  Katsumi Yamaoka  <yamaoka@jpl.org>
 -
 -      * gnus-sum.el (gnus-summary-show-thread):
 -      next-single-char-property-change may return nil in XEmacs.
 -
  2012-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * gnus-sum.el (gnus-handle-ephemeral-exit): Allow exiting from Gnus
        * gnus-sum.el (gnus-summary-show-thread):
        next-single-char-property-change never returns nil (Bug#8657).
  
 +2012-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * message.el (message-multi-smtp-send-mail): New function.
 +      (message-multi-smtp-send-mail): Respect the X-Message-SMTP-Method
 +      header to implement multi-SMTP functionality.
 +
 +      * gnus-agent.el (gnus-agent-send-mail-function): Removed.
 +      (gnus-agentize): Don't set it.
 +      (gnus-agent-send-mail): Don't use it.
 +
 +      * gnus-sum.el (gnus-summary-widget-backward): New function and
 +      keystroke.
 +
 +      * gnus-compat.el: More the compat functions more compatible.
 +
 +      * shr.el (shr-put-image): Remove underlines from sliced images.
 +      (shr-zoom-image): Compute the region to be replaced more correctly.
 +
 +2012-02-02  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-msg.el (gnus-gcc-self-resent-messages): New user option.
 +      (gnus-summary-resend-message-insert-gcc): New function.
 +      (gnus-summary-resend-message): Modify message-header-setup-hook and
 +      message-sent-hook to make it work for Gcc.
 +      (gnus-inews-do-gcc): Update the number of unread articles of groups
 +      that messages are Gcc'd to.
 +
 +      * message.el (message-resend): Run message-sent-hook to do Gcc.
 +
 +2012-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * lpath.el: Fix an XEmacs compilation warning.
 +
 +      * gnus-compat.el: Require `help-fns' to fix compilation error.
 +
 +      * gnus-registry.el (gnus-registry-fixup-registry): Move the message to
 +      a higher level to silence compilation.
 +
 +      * gnus-art.el (gnus-shr-put-image): Take and pass on a `flags'
 +      parameter to allow controlling the scaling.
 +
 +      * shr.el (shr-zoom-image): New command and keystroke.
 +      (shr-put-image): Take a `size' flag to say how to scale the image.
 +
 +      * gnus-compat.el: Redefine `delete-directory' to provide recursive
 +      deletion unless already defined.
 +
 +      * gnus.el (gnus-compat): Require it.
 +
 +      * gnus-compat.el: New file.
 +
 +      * gnus-start.el (gnus-clean-old-newsrc): New function.
 +      (gnus-read-newsrc-file): Use it.
 +
 +      * mm-archive.el (mm-dissect-archive): Use it to get all file names.
 +      Use recursive deletion.
 +      (mm-dissect-archive): Add support for zip files.
 +
 +      * gnus-util.el (gnus-recursive-directory-files): New function.
 +
 +      * mm-archive.el (mm-archive-list-files): Inline text and image parts.
 +      (mm-archive-decoders): Add tgz support.
 +
 +      * mm-decode.el (mm-shr): Make sure that the HTML ends with a newline.
 +      Otherwise inserting text into the Gnus buffer can look odd.
 +
 +      * gnus-art.el (gnus-mime-inline-part): Slight clean-up.
 +
 +      * mm-archive.el (mm-archive-decoders): Add support for tar.
 +
 +      * gnus.el (gnus-logo-color-alist): Change the colours for Ma Gnus.
 +
 +      * nnmail.el (nnmail-extra-headers): Add Cc to the default.
 +
 +2012-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * mm-decode.el (mm-dissect-singlepart): Check that the decoder exists.
 +
 +      * mm-archive.el: New file.
 +
 +      * mm-decode.el (mm-dissect-singlepart): Use it to decode ms-tnef files.
 +
 +      * mm-util.el (mm-find-buffer-file-coding-system): Comment fix.
 +
 +      * message.el (message-goto-*): Make all the `message-goto-*' commands
 +      push the mark before moving point.  This makes it easier to go back to
 +      where you came from after editing whatever you jumped to.
 +
 +2012-01-31  Lars Magne Ingebrigtsen  <lars@ingebrigtsen.no>
 +
 +      * gnus.el: Ma Gnus v0.1 is released.
 +
  2012-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * nnimap.el (nnimap-open-server): Allow switching the nnoo server
  2012-01-31  Jim Meyering  <jim@meyering.net>
  
        * gnus-agent.el (gnus-agent-expire-unagentized-dirs):
 -        Correct a comment (insert "not") and hide nominally-doubled "to".
 +      Correct a comment (insert "not") and hide nominally-doubled "to".
  
 -2012-01-31  Lars Magne Ingebrigtsen  <lars@ingebrigtsen.no>
 +2012-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
  
 -      * gnus.el: No Gnus v0.19 is released.
 +      * gnus.el (gnus-version): Change name to "Ma Gnus".
  
  2012-01-30  Philipp Haselwarter  <philipp.haselwarter@gmx.de>  (tiny change)
  
diff --combined lisp/shr.el
@@@ -119,7 -119,6 +119,7 @@@ cid: URL as the argument."
    (let ((map (make-sparse-keymap)))
      (define-key map "a" 'shr-show-alt-text)
      (define-key map "i" 'shr-browse-image)
 +    (define-key map "z" 'shr-zoom-image)
      (define-key map "I" 'shr-insert-image)
      (define-key map "u" 'shr-copy-url)
      (define-key map "v" 'shr-browse-url)
@@@ -236,40 -235,6 +236,40 @@@ the URL of the image to the kill buffe
                    (list (current-buffer) (1- (point)) (point-marker))
                    t t))))
  
 +(defun shr-zoom-image ()
 +  "Toggle the image size.
 +The size will be rotated between the default size, the original
 +size, and full-buffer size."
 +  (interactive)
 +  (let ((url (get-text-property (point) 'image-url))
 +      (size (get-text-property (point) 'image-size))
 +      (buffer-read-only nil))
 +    (if (not url)
 +      (message "No image under point")
 +      ;; Delete the old picture.
 +      (while (get-text-property (point) 'image-url)
 +      (forward-char -1))
 +      (forward-char 1)
 +      (let ((start (point)))
 +      (while (get-text-property (point) 'image-url)
 +        (forward-char 1))
 +      (forward-char -1)
 +      (put-text-property start (point) 'display nil)
 +      (when (> (- (point) start) 2)
 +        (delete-region start (1- (point)))))
 +      (message "Inserting %s..." url)
 +      (url-retrieve url 'shr-image-fetched
 +                  (list (current-buffer) (1- (point)) (point-marker)
 +                        (list (cons 'size
 +                                    (cond ((or (eq size 'default)
 +                                               (null size))
 +                                           'original)
 +                                          ((eq size 'original)
 +                                           'full)
 +                                          ((eq size 'full)
 +                                           'default)))))
 +                  t))))
 +
  ;;; Utility functions.
  
  (defun shr-transform-dom (dom)
                    (expand-file-name (file-name-nondirectory url)
                                      directory)))))
  
 -(defun shr-image-fetched (status buffer start end)
 +(defun shr-image-fetched (status buffer start end &optional flags)
-   (when (and (buffer-name buffer)
-            (not (plist-get status :error)))
-     (url-store-in-cache (current-buffer))
-     (when (or (search-forward "\n\n" nil t)
-             (search-forward "\r\n\r\n" nil t))
-       (let ((data (buffer-substring (point) (point-max))))
-         (with-current-buffer buffer
-         (save-excursion
-           (let ((alt (buffer-substring start end))
-                 (properties (text-properties-at start))
-                 (inhibit-read-only t))
-             (delete-region start end)
-             (goto-char start)
-             (funcall shr-put-image-function data alt flags)
-             (while properties
-               (let ((type (pop properties))
-                     (value (pop properties)))
-                 (unless (memq type '(display image-size))
-                   (put-text-property start (point) type value))))))))))
-   (kill-buffer (current-buffer)))
+   (let ((image-buffer (current-buffer)))
+     (when (and (buffer-name buffer)
+              (not (plist-get status :error)))
+       (url-store-in-cache image-buffer)
+       (when (or (search-forward "\n\n" nil t)
+               (search-forward "\r\n\r\n" nil t))
+       (let ((data (buffer-substring (point) (point-max))))
+         (with-current-buffer buffer
+           (save-excursion
+             (let ((alt (buffer-substring start end))
++                  (properties (text-properties-at start))
+                   (inhibit-read-only t))
+               (delete-region start end)
+               (goto-char start)
 -              (funcall shr-put-image-function data alt)))))))
++              (funcall shr-put-image-function data alt flags)
++              (while properties
++                (let ((type (pop properties))
++                      (value (pop properties)))
++                  (unless (memq type '(display image-size))
++                    (put-text-property start (point) type value))))))))))
+     (kill-buffer image-buffer)))
  
 -(defun shr-put-image (data alt)
 +(defun shr-put-image (data alt &optional flags)
    "Put image DATA with a string ALT.  Return image."
    (if (display-graphic-p)
 -      (let ((image (ignore-errors
 -                     (shr-rescale-image data))))
 +      (let* ((size (cdr (assq 'size flags)))
 +           (start (point))
 +           (image (cond
 +                   ((eq size 'original)
 +                    (create-image data nil t :ascent 100))
 +                   ((eq size 'full)
 +                    (ignore-errors
 +                      (shr-rescale-image data t)))
 +                   (t
 +                    (ignore-errors
 +                      (shr-rescale-image data))))))
          (when image
          ;; When inserting big-ish pictures, put them at the
          ;; beginning of the line.
          (when (and (> (current-column) 0)
                     (> (car (image-size image t)) 400))
            (insert "\n"))
 -        (insert-image image (or alt "*"))
 +        (if (eq size 'original)
 +            (let ((overlays (overlays-at (point))))
 +              (insert-sliced-image image (or alt "*") nil 20 1)
 +              (dolist (overlay overlays)
 +                (overlay-put overlay 'face 'default)))
 +          (insert-image image (or alt "*")))
 +        (put-text-property start (point) 'image-size size)
          (when (image-animated-p image)
            (image-animate image nil 60)))
        image)
      (insert alt)))
  
++<<<<<<< HEAD
 +(defun shr-rescale-image (data &optional force)
 +  "Rescale DATA, if too big, to fit the current buffer.
 +If FORCE, rescale the image anyway."
++=======
+ (defun shr-rescale-image (data)
++>>>>>>> origin/no-gnus
    (let ((image (create-image data nil t :ascent 100)))
      (if (or (not (fboundp 'imagemagick-types))
            (not (get-buffer-window (current-buffer))))
             (window-height (truncate (* shr-max-image-proportion
                                         (- (nth 3 edges) (nth 1 edges)))))
             scaled-image)
 -      (when (> height window-height)
 +      (when (or force
 +                (> height window-height))
          (setq image (or (create-image data 'imagemagick t
                                        :height window-height
                                        :ascent 100)
diff --combined texi/ChangeLog
@@@ -2,35 -2,6 +2,39 @@@
  
        * gnus.texi (Posting Styles): Fix cross-refs to other manual.
  
 +2012-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus.texi (Various Summary Stuff): Remove mention of
 +      `gnus-propagate-marks'.
 +
 +2012-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus.texi: Remove mentions of nnml/nnfolder/nntp backend marks, which
 +      no longer exist.
 +
 +2012-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus.texi (Archived Messages): Document gnus-gcc-self-resent-messages.
 +
 +2012-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * message.texi (Mail Variables): Mention the optional user parameter
 +      for X-Message-SMTP-Method.
 +
 +2012-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus.texi (Posting Styles): Mention X-Message-SMTP-Method.
 +
 +      * message.texi (Mail Variables): Document X-Message-SMTP-Method.
 +
 +2012-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnus.texi (Key Index): Change encoding to utf-8.
 +
++2012-02-17  Glenn Morris  <rgm@gnu.org>
++
++      * gnus.texi (Posting Styles): Fix cross-refs to other manual.
++
  2012-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
  
        * gnus.texi (Customizing the IMAP Connection): Mention