+2003-10-19 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus-sum.el (gnus-remove-odd-characters): Use
+ mm-subst-char-in-string instead of subst-char-in-string.
+ (gnus-summary-refer-article): Use gnus-replace-in-string instead
+ of replace-regexp-in-string.
+
+2003-10-19 Jesper Harder <harder@ifa.au.dk>
+
+ * gnus-uu.el (gnus-uu-uustrip-article): Really strip directory
+ from file name.
+
+2003-10-18 Jesper Harder <harder@ifa.au.dk>
+
+ * gnus-sum.el (gnus-summary-save-parts-last-directory): Default
+ to mm-default-directory.
+ (gnus-summary-save-parts-1): Use mm-file-name-rewrite-functions.
+
+2003-10-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * pop3.el (pop3-read-response): Check whether the process is
+ alive.
+
+ * gnus-sum.el (gnus-summary-refer-article): Strip spaces.
+
+ * rfc2047.el (rfc2047-encode-region): Do error out on invalid
+ strings.
+
+ * nntp.el (nntp-retrieve-headers-with-xover): Get error messages
+ right.
+
+ * gnus-agent.el (gnus-agent-read-servers): Remove sit-for.
+
+ * gnus-art.el (article-treat-dumbquotes): Doc fix.
+
+ * message.el (message-field-value): New function.
+ (message-insert-disposition-notification-to): Use Reply-To, too.
+
+ * imap.el (imap-mailbox-status): Upcase STATUS commands.
+
+ * gnus-sum.el (gnus-remove-odd-characters): New function.
+ (gnus-nov-parse-line): Use it.
+
+2003-10-18 Matt Swift <swift@alum.mit.edu>
+
+ * mm-decode.el (mm-inline-media-tests): Recognize pjpeg as jpeg.
+
+2003-10-18 Romain FRANCOISE <romain@orebokech.com>
+
+ * message.el (message-forward-make-body): does both
+ m-f-make-body-mml and m-f-make-body-plain, resulting in a strange
+ message buffer.
+
+2003-10-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-narrow-to-page): Only break page if it's
+ broken.
+
+ * nnrss.el (nnrss-find-rss-via-syndic8): Return nil if xml-rpc
+ isn't available.
+
+ * message.el (message-hidden-headers): Doc fix.
+
2003-10-18 Jesper Harder <harder@ifa.au.dk>
* gnus-msg.el (gnus-summary-resend-message-edit): Avoid error when
(if method
(unless (member method gnus-agent-covered-methods)
(push method gnus-agent-covered-methods))
- (gnus-message 1 "Ignoring disappeared server `%s'" m)
- (sit-for 1))))
+ (gnus-message 1 "Ignoring disappeared server `%s'" m))))
(gnus-agent-read-file
(nnheader-concat gnus-agent-directory "lib/servers"))))
(forward-line 1))))))
(defun article-treat-dumbquotes ()
- "Translate M****s*** sm*rtq**t*s into proper text.
+ "Translate M****s*** sm*rtq**t*s and other symbols into proper text.
Note that this function guesses whether a character is a sm*rtq**t* or
not, so it should only be used interactively.
-Sm*rtq**t*s are M****s***'s unilateral extension to the character map
-in an attempt to provide more quoting characters. If you see
-something like \\222 or \\264 where you're expecting some kind of
-apostrophe or quotation mark, then try this wash."
+Sm*rtq**t*s are M****s***'s unilateral extension to the
+iso-8859-1 character map in an attempt to provide more quoting
+characters. If you see something like \\222 or \\264 where
+you're expecting some kind of apostrophe or quotation mark, then
+try this wash."
(interactive)
(article-translate-strings gnus-article-dumbquotes-map))
(re-search-forward page-delimiter nil 'move arg)))
(setq gnus-page-broken t)
(goto-char (match-end 0)))
- (narrow-to-region
- (point)
- (if (re-search-forward page-delimiter nil 'move)
- (match-beginning 0)
- (point)))
- (when (and (gnus-visual-p 'page-marker)
- (not (= (point-min) 1)))
- (save-excursion
- (goto-char (point-min))
- (gnus-insert-prev-page-button)))
- (when (and (gnus-visual-p 'page-marker)
- (< (+ (point-max) 2) (buffer-size)))
- (save-excursion
- (goto-char (point-max))
- (gnus-insert-next-page-button)))))
+ (when gnus-page-broken
+ (narrow-to-region
+ (point)
+ (if (re-search-forward page-delimiter nil 'move)
+ (match-beginning 0)
+ (point)))
+ (when (and (gnus-visual-p 'page-marker)
+ (not (= (point-min) 1)))
+ (save-excursion
+ (goto-char (point-min))
+ (gnus-insert-prev-page-button)))
+ (when (and (gnus-visual-p 'page-marker)
+ (< (+ (point-max) 2) (buffer-size)))
+ (save-excursion
+ (goto-char (point-max))
+ (gnus-insert-next-page-button))))))
;; Article mode commands
(setq heads nil)))))
gnus-newsgroup-dependencies)))
+(defsubst gnus-remove-odd-characters (string)
+ "Translate STRING into something that doesn't contain weird characters."
+ (mm-subst-char-in-string
+ ?\r ?\-
+ (mm-subst-char-in-string
+ ?\n ?\- string)))
+
;; This function has to be called with point after the article number
;; on the beginning of the line.
(defsubst gnus-nov-parse-line (number dependencies &optional force-new)
(interactive "sMessage-ID: ")
(when (and (stringp message-id)
(not (zerop (length message-id))))
+ (setq message-id (gnus-replace-in-string message-id " " ""))
;; Construct the correct Message-ID if necessary.
;; Suggested by tale@pawl.rpi.edu.
(unless (string-match "^<" message-id)
(not (string-match type (mm-handle-media-type handle)))
(string-match type (mm-handle-media-type handle)))
(let ((file (expand-file-name
- (file-name-nondirectory
- (or
- (mail-content-type-get
- (mm-handle-disposition handle) 'filename)
- (concat gnus-newsgroup-name
- "." (number-to-string
- (cdr gnus-article-current)))))
+ (gnus-map-function
+ mm-file-name-rewrite-functions
+ (file-name-nondirectory
+ (or
+ (mail-content-type-get
+ (mm-handle-disposition handle) 'filename)
+ (concat gnus-newsgroup-name
+ "." (number-to-string
+ (cdr gnus-article-current))))))
dir)))
(unless (file-exists-p file)
(mm-save-part-to-file handle file))))))
(imap-send-command-wait (list "STATUS \""
(imap-utf7-encode mailbox)
"\" "
- (format "%s"
- (if (listp items)
- items
- (list items))))))
+ (upcase
+ (format "%s"
+ (if (listp items)
+ items
+ (list items)))))))
(if (listp items)
(mapcar (lambda (item)
(imap-mailbox-get item mailbox))
(defcustom message-hidden-headers nil
"Regexp of headers to be hidden when composing new messages.
This can also be a list of regexps to match headers. Or a list
-starting with `not' and followed by regexps.."
+starting with `not' and followed by regexps."
:group 'message
:type '(repeat regexp))
(set-text-properties 0 (length value) nil value)
value)))
+(defun message-field-value (header &optional not-all)
+ "The same as `message-fetch-field', only narrow to the headers first."
+ (save-excursion
+ (save-restriction
+ (message-narrow-to-headers-or-head)
+ (message-fetch-field header not-all))))
+
(defun message-narrow-to-field ()
"Narrow the buffer to the header on the current line."
(beginning-of-line)
(message-remove-header "Disposition-Notification-To"))
(message-goto-eoh)
(insert (format "Disposition-Notification-To: %s\n"
- (or (save-excursion
- (save-restriction
- (message-narrow-to-headers)
- (message-fetch-field "From")))
+ (or (message-field-value "Reply-to")
+ (message-field-value "From")
(message-make-from))))))
(defun message-elide-region (b e)
:group 'mime-display)
(defcustom mm-inline-media-tests
- '(("image/jpeg"
+ '(("image/p?jpeg"
mm-inline-image
(lambda (handle)
(mm-valid-and-fit-image-p 'jpeg handle)))
;; Default to displaying as text
(".*" mm-inline-text mm-readable-p))
"Alist of media types/tests saying whether types can be displayed inline."
- :type '(repeat (list (string :tag "MIME type")
+ :type '(repeat (list (regexp :tag "MIME type")
(function :tag "Display function")
(function :tag "Display test")))
:group 'mime-display)
(defun nnrss-find-rss-via-syndic8 (url)
"query syndic8 for the rss feeds it has for the url."
(if (not (locate-library "xml-rpc"))
- (message "XML-RPC is not available... not checking Syndic8.")
+ (progn
+ (message "XML-RPC is not available... not checking Syndic8.")
+ nil)
(require 'xml-rpc)
(let ((feedid (xml-rpc-method-call
"http://www.syndic8.com/xmlrpc.php"
(goto-char pos)
(if (looking-at (regexp-quote command))
(delete-region pos (progn (forward-line 1)
- (gnus-point-at-bol))))
- )))
+ (gnus-point-at-bol)))))))
(nnheader-report 'nntp "Couldn't open connection to %s."
nntp-address))))
in-process-buffer-p
(buf nntp-server-buffer)
(process-buffer (nntp-find-connection-buffer nntp-server-buffer))
- first
- last)
+ first last status)
;; We have to check `nntp-server-xover'. If it gets set to nil,
;; that means that the server does not understand XOVER, but we
;; won't know that until we try.
(while (progn
(goto-char (or last-point (point-min)))
;; Count replies.
- (while (re-search-forward "^[0-9][0-9][0-9] .*\n" nil t)
- (incf received))
+ (while (re-search-forward "^\\([0-9][0-9][0-9]\\) .*\n"
+ nil t)
+ (incf received)
+ (setq status (match-string 1))
+ (if (string-match "^[45]" status)
+ (setq status 'error)
+ (setq status 'ok)))
(setq last-point (point))
(or (< received count)
- ;; I haven't started reading the final response
- (progn
- (goto-char (point-max))
- (forward-line -1)
- (not (looking-at "^\\.\r?\n")))))
+ (if (eq status 'error)
+ nil
+ ;; I haven't started reading the final response
+ (progn
+ (goto-char (point-max))
+ (forward-line -1)
+ (not (looking-at "^\\.\r?\n"))))))
;; I haven't read the end of the final response
(nntp-accept-response)
(set-buffer process-buffer))))
(save-excursion
(set-buffer (process-buffer process))
(goto-char pop3-read-point)
- (while (not (search-forward "\r\n" nil t))
+ (while (and (memq (process-status process) '(open run))
+ (not (search-forward "\r\n" nil t)))
(nnheader-accept-process-output process)
(goto-char pop3-read-point))
(setq match-end (point))
(rfc2047-encode start end)
(setq last-encoded t)))))
(error
- (message "Invalid data for rfc2047 encoding: %s"
- (buffer-substring b e)))))))
+ (error "Invalid data for rfc2047 encoding: %s"
+ (buffer-substring b e)))))))
(rfc2047-fold-region b (point))))
(defun rfc2047-encode-string (string)
+2003-10-12 Adrian Aichner <adrian@xemacs.org>
+
+ * gnus.texi (Mail Source Specifiers): uref fixes.
+
2003-10-18 Jesper Harder <harder@ifa.au.dk>
* gnus.texi (Group Mail Splitting)
egrep -v "end\{document\}" $< > gnus.tmplatexi
cat $(srcdir)/postamble.tex >> gnus.tmplatexi
TEXINPUTS=$(srcdir):$$TEXINPUTS $(PDFLATEX) gnus.tmplatexi
- thumbpdf gnus.pdf
- TEXINPUTS=$(srcdir):$$TEXINPUTS $(PDFLATEX) gnus.tmplatexi
+ #thumbpdf gnus.pdf
+ #TEXINPUTS=$(srcdir):$$TEXINPUTS $(PDFLATEX) gnus.tmplatexi
mv gnus.pdf $@
latexps: gnus.dvi-x
@end lisp
@item webmail
-@uref{www.hotmail.com}, @uref{webmail.netscape.com},
-@uref{www.netaddress.com}, @uref{www.yahoo.com} \e$B$J$I$N%&%'%V%a!<%k%5!<%P!<\e(B
-\e$B$+$i%a!<%k$r<hF@$7$^$9!#\e(B
+@uref{http://www.hotmail.com/}, @uref{http://webmail.netscape.com/},
+@uref{http://www.netaddress.com/}, @uref{http://www.yahoo.com/} \e$B$J$I$N%&%'\e(B
+\e$B%V%a!<%k%5!<%P!<$+$i%a!<%k$r<hF@$7$^$9!#\e(B
\e$BCm\e(B: \e$B%&%'%V%a!<%k$O%/%C%-!<$KBg$-$/0MB8$7$^$9!#\e(Burl "4.0pre.46" \e$B$r;H$&>l9g\e(B
\e$B$O\e(B "one-line-cookie" \e$B%Q%C%A$rEv$F$kI,MW$,$"$j$^$9!#\e(B
@end lisp
@item webmail
-Get mail from a webmail server, such as @uref{www.hotmail.com},
-@uref{webmail.netscape.com}, @uref{www.netaddress.com},
-@uref{mail.yahoo.com}.
+Get mail from a webmail server, such as @uref{http://www.hotmail.com/},
+@uref{http://webmail.netscape.com/}, @uref{http://www.netaddress.com/},
+@uref{http://mail.yahoo.com/}.
-NOTE: Webmail largely depends cookies. A "one-line-cookie" patch is
+NOTE: Webmail largely depends on cookies. A "one-line-cookie" patch is
required for url "4.0pre.46".
WARNING: Mails may be lost. NO WARRANTY.