+2001-06-19 Simon Josefsson <jas@extundo.com>
+
+ * message.el (message-yank-prefix): Doc fix.
+ (message-yank-cited-prefix): Ditto.
+ (message-delete-not-region): Keep citation prefix on first line,
+ if possible and appropriate.
+
+2001-06-19 Simon Josefsson <jas@extundo.com>
+
+ * imap.el (imap-process-connection-type): New variable.
+ (imap-kerberos4-open, imap-gssapi-open): Use it. This makes
+ recent `imtest's work completely (no line length issues), while
+ making making old `imtest's unusable. Thanks to NAGY Andras
+ <nagya@inf.elte.hu> for his work.
+
+2000-12-30 NAGY Andras <nagya@inf.elte.hu>
+
+ * imap.el (imap-ssl-program): Add -quiet to shut up
+ OpenSSL/SSLeay's internal debug talk.
+
+2001-06-19 Matt Armstrong <matt@lickey.com>
+
+ * imap.el (imap-parse-flag-list): Workaround bug in Courier IMAP
+ server.
+
+2001-06-19 10:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * nnmail.el (nnmail-article-buffer): New variable.
+ (nnmail-split-incoming): Use it.
+
2001-06-15 Eli Zaretskii <eliz@is.elta.co.il>
* qp.el (quoted-printable-decode-region): If called interactively,
:group 'imap
:type '(repeat string))
-(defcustom imap-ssl-program '("openssl s_client -ssl3 -connect %s:%p"
- "openssl s_client -ssl2 -connect %s:%p"
- "s_client -ssl3 -connect %s:%p"
- "s_client -ssl2 -connect %s:%p")
+(defcustom imap-ssl-program '("openssl s_client -quiet -ssl3 -connect %s:%p"
+ "openssl s_client -quiet -ssl2 -connect %s:%p"
+ "s_client -quiet -ssl3 -connect %s:%p"
+ "s_client -quiet -ssl2 -connect %s:%p")
"A string, or list of strings, containing commands for SSL connections.
Within a string, %s is replaced with the server address and %p with
port number on server. The program should accept IMAP commands on
:group 'imap
:type '(repeat string))
+(defcustom imap-process-connection-type nil
+ "*Value for `process-connection-type' to use for Kerberos4 and GSSAPI."
+ :group 'imap
+ :type 'boolean)
+
(defvar imap-shell-host "gateway"
"Hostname of rlogin proxy.")
(message "Opening Kerberos 4 IMAP connection with `%s'..." cmd)
(erase-buffer)
(let* ((port (or port imap-default-port))
+ (process-connection-type imap-process-connection-type)
(process (as-binary-process
(start-process
name buffer shell-file-name shell-command-switch
(while (and (not done) (setq cmd (pop cmds)))
(message "Opening GSSAPI IMAP connection with `%s'..." cmd)
(let* ((port (or port imap-default-port))
+ (process-connection-type imap-process-connection-type)
(process (as-binary-process
(start-process
name buffer shell-file-name shell-command-switch
(let (flag-list start)
(assert (eq (char-after) ?\())
(while (and (not (eq (char-after) ?\)))
- (setq start (progn (imap-forward) (point)))
+ (setq start (progn
+ (imap-forward)
+ ;; next line for Courier IMAP bug.
+ (skip-chars-forward " ")
+ (point)))
(> (skip-chars-forward "^ )" (imap-point-at-eol)) 0))
(push (buffer-substring start (point)) flag-list))
(assert (eq (char-after) ?\)))
;;;###autoload
(defcustom message-yank-prefix "> "
"*Prefix inserted on the lines of yanked messages.
-Fix `message-cite-prefix-regexp' if it is set to an abnormal value."
+Fix `message-cite-prefix-regexp' if it is set to an abnormal value.
+See also `message-yank-cited-prefix'."
:type 'string
:group 'message-insertion)
(defcustom message-yank-cited-prefix ">"
"*Prefix inserted on cited lines of yanked messages.
-Fix `message-cite-prefix-regexp' if it is set to an abnormal value."
+Fix `message-cite-prefix-regexp' if it is set to an abnormal value.
+See also `message-yank-prefix'."
:type 'string
:group 'message-insertion)
(defun message-delete-not-region (beg end)
"Delete everything in the body of the current message outside of the region."
(interactive "r")
- (save-excursion
- (goto-char end)
- (delete-region (point) (if (not (message-goto-signature))
- (point)
- (forward-line -2)
- (point)))
- (insert "\n")
- (goto-char beg)
- (delete-region beg (progn (message-goto-body)
- (forward-line 2)
- (point))))
+ (let (citeprefix)
+ (save-excursion
+ (goto-char beg)
+ ;; snarf citation prefix, if appropriate
+ (unless (eq (point) (progn (beginning-of-line) (point)))
+ (when (looking-at message-cite-prefix-regexp)
+ (setq citeprefix (match-string 0))))
+ (goto-char end)
+ (delete-region (point) (if (not (message-goto-signature))
+ (point)
+ (forward-line -2)
+ (point)))
+ (insert "\n")
+ (goto-char beg)
+ (delete-region beg (progn (message-goto-body)
+ (forward-line 2)
+ (point)))
+ (when citeprefix
+ (insert citeprefix))))
(when (message-goto-signature)
(forward-line -2)))
;;; Internal variables.
+(defvar nnmail-article-buffer " *nnmail incoming*"
+ "The buffer used for splitting incoming mails.")
+
(defvar nnmail-split-history nil
"List of group/article elements that say where the previous split put messages.")
nnmail-split-methods)))
(save-excursion
;; Insert the incoming file.
- (set-buffer (get-buffer-create " *nnmail incoming*"))
+ (set-buffer (get-buffer-create nnmail-article-buffer))
(erase-buffer)
(let ((nnheader-file-coding-system nnmail-incoming-coding-system))
(nnheader-insert-file-contents incoming))
+2001-06-19 Simon Josefsson <jas@extundo.com>
+
+ * gnus.texi (IMAP): Fix `imtest' discussion.
+
+ * gnus-faq.texi (Frequently Asked Questions): Fix URL.
+
2001-06-17 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
* gnus.texi (Group Line Specification): Explain why %t is only an
This is the Gnus Frequently Asked Questions list.
If you have a Web browser, the official hypertext version is at
-@file{http://www.ccs.neu.edu/software/gnus/}, and has
+@file{http://www.ccs.neu.edu/software/contrib/gnus/}, and has
probably been updated since you got this manual.
@menu
@end itemize
@vindex imap-kerberos4-program
-@samp{imtest} \e$B%W%m%0%i%`$O\e(B Cyrus IMAPD \e$B$K4^$^$l$F$$$^$9!#\e(B
-nnimap \e$B$O\e(B @samp{imtest} \e$B%P!<%8%g%s\e(B 1.5.x \e$B$H\e(B 1.6.x \e$B$NN>J}$r%5%]!<%H$7$^$9!#\e(B
-\e$BJQ?t\e(B @code{imap-kerberos4-program} \e$B$O\e(B imtest \e$B%W%m%0%i%`$KEO$9%Q%?%a!<%?\e(B
-\e$B$r4^$_$^$9!#\e(B
+@samp{imtest} \e$B%W%m%0%i%`$O\e(B Cyrus IMAPD \e$B$K4^$^$l$F$$$^$9!#$b$7$"$J$?\e(B
+\e$B$,\e(B 2.0.14 \e$BL$K~$N\e(B Cyrus IMAPD \e$B$K4^$^$l$F$$$k\e(B @samp{imtest} (\e$B%P!<%8%g\e(B
+\e$B%s\e(B 1.5.x \e$B$H\e(B 1.6.x) \e$B$r;H$C$F$$$k$J$i!"\e(B
+@code{imap-process-connection-type} \e$B$r$$$8$j2s$7$F!"\e(B
+@code{imap.el} \e$B$,\e(B @samp{imtest} \e$B$HDL?.$9$k$H$-$K%Q%$%W$G$O$J$/\e(B
+\e$B$F\e(B pty \e$B$r;H$&$h$&$K$5$;$kI,MW$,$"$j$^$9!#$=$&$9$k$H$"$J$?$O\e(B IMAP \e$B%3%^%s\e(B
+\e$B%I$N9T$ND9$5$N@)8B$KG:$^$5$l$k$G$7$g$&!#$=$l$O%a!<%k%\%C%/%9$K$?$/$5$s$N\e(B
+\e$B5-;v$,$"$k$H$-$K\e(B Gnus \e$B$rL54|8B$K%O%s%0$5$;$F$7$^$&$+$b$7$l$^$;$s!#JQ\e(B
+\e$B?t\e(B @code{imap-kerberos4-program} \e$B$O\e(B imtest \e$B%W%m%0%i%`$KEO$9%Q%?%a!<%?$r\e(B
+\e$B4^$_$^$9!#\e(B
@vindex imap-ssl-program
SSL \e$B@\B3$N$?$a$N\e(B OpenSSL \e$B%W%m%0%i%`$O\e(B @uref{http://www.openssl.org/} \e$B$+\e(B
@itemize @bullet
@item
-@dfn{gssapi:} Connect with GSSAPI (usually kerberos 5). Require the
+@dfn{gssapi:} Connect with GSSAPI (usually kerberos 5). Requires the
@samp{imtest} program.
@item
-@dfn{kerberos4:} Connect with kerberos 4. Require the @samp{imtest} program.
+@dfn{kerberos4:} Connect with kerberos 4. Requires the @samp{imtest} program.
@item
@dfn{starttls:} Connect via the STARTTLS extension (similar to
-SSL). Require the external library @samp{starttls.el} and program
+SSL). Requires the external library @samp{starttls.el} and program
@samp{starttls}.
@item
-@dfn{ssl:} Connect through SSL. Require OpenSSL (the
+@dfn{ssl:} Connect through SSL. Requires OpenSSL (the
program @samp{openssl}) or SSLeay (@samp{s_client}).
@item
@dfn{shell:} Use a shell command to start @sc{imap} connection.
@end itemize
@vindex imap-kerberos4-program
-The @samp{imtest} program is shipped with Cyrus IMAPD, nnimap support
-both @samp{imtest} version 1.5.x and version 1.6.x. The variable
+The @samp{imtest} program is shipped with Cyrus IMAPD. If you're
+using @samp{imtest} from Cyrus IMAPD < 2.0.14 (which includes version
+1.5.x and 1.6.x) you need to frob @code{imap-process-connection-type}
+to make @code{imap.el} use a pty instead of a pipe when communicating
+with @samp{imtest}. You will then suffer from a line length
+restrictions on IMAP commands, which might make Gnus seem to hang
+indefinitely if you have many articles in a mailbox. The variable
@code{imap-kerberos4-program} contain parameters to pass to the imtest
program.