+Thu Mar 4 01:38:00 1999 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Pterodactyl Gnus v0.80 is released.
+
+1999-03-02 16:04:30 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-mm-display-part): Narrow to the part itself.
+
+ * gnus-sum.el (gnus-with-article): Moved here.
+
+ * mail-source.el (mail-source-fetch-pop): Ask for password even
+ when program.
+
+1999-02-28 13:16:12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-msg.el (gnus-bug): Add description.
+
+ * mml.el (mml-insert-mml-markup): Insert disposition.
+
+ * message.el (message-send-mail): Always encode mail headers.
+
+ * smiley.el (gnus-smiley-display): Goto body.
+
+1999-02-28 13:15:47 Petr Konecny <pekon@informatics.muni.cz>
+
+ * smiley.el (gnus-smiley-display): Don't search to blank line.
+
+1999-02-28 00:38:40 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-treat-article): Only run the highlight stuff
+ when requested.
+
+ * nnmail.el (nnmail-current-spool): Removed.
+
+ * gnus-salt.el (gnus-tree-inhibit): New varible.
+
+ * gnus.el (mm-util): Required.
+
+1999-02-27 23:44:52 paul stevenson <spaul@mail.phy.ornl.gov>
+
+ * gnus-sum.el (gnus-summary-toggle-header): Narrow to head first.
+
+1999-02-27 17:17:47 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * mail-source.el (mail-source-bind): Doc fix.
+
+1999-02-26 20:35:57 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * message.el (message-mode): Doc fix.
+
+ * mm-encode.el (mm-content-transfer-encoding-defaults): Use 8bit
+ encoding.
+
+ * gnus.el (gnus-methods-equal-p): Moved here.
+
+ * mail-source.el: pop at 110.
+
+ * pop3.el (pop3-movemail): Use write-region instead of
+ append-to-file to avoid excessive messaging.
+
+1999-02-27 lantz moore <lmoore@contigo.com>
+
+ * nnmail.el (nnmail-get-new-mail): honor suffix for spool-files of
+ type directory.
+
Fri Feb 26 18:54:16 1999 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
* gnus.el: Pterodactyl Gnus v0.79 is released.
-
;;; gnus-art.el --- article mode commands for Gnus
;; Copyright (C) 1996,97,98,99 Free Software Foundation, Inc.
"^X-Pgp-Public-Key-Url:" "^X-Auth:" "^X-From-Line:"
"^X-Gnus-Article-Number:" "^X-Majordomo:" "^X-Url:" "^X-Sender:"
"^X-Mailing-List:" "^MBOX-Line" "^Priority:" "^X-Pgp" "^X400-[-A-Za-z]+:"
- "^Status:")
+ "^Status:" "^X-Gnus-Mail-Source:")
"*All headers that start with this regexp will be hidden.
This variable can also be a list of regexps of headers to be ignored.
If `gnus-visible-headers' is non-nil, this variable will be ignored."
"Whether to inhibit treatment.")
(defcustom gnus-treat-highlight-signature '(or last (typep "text/x-vcard"))
- "Highlight the signature."
+ "Highlight the signature.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
+(put 'gnus-treat-highlight-signature 'highlight t)
(defcustom gnus-treat-buttonize t
- "Add buttons."
+ "Add buttons.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
+(put 'gnus-treat-buttonize 'highlight t)
(defcustom gnus-treat-buttonize-head 'head
- "Add buttons to the head."
+ "Add buttons to the head.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
+(put 'gnus-treat-buttonize-head 'highlight t)
(defcustom gnus-treat-emphasize t
- "Emphasize text."
+ "Emphasize text.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
+(put 'gnus-treat-emphasize 'highlight t)
(defcustom gnus-treat-strip-cr nil
- "Remove carriage returns."
+ "Remove carriage returns.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-hide-headers 'head
- "Hide headers."
+ "Hide headers.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-hide-boring-headers nil
- "Hide boring headers."
+ "Hide boring headers.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-hide-signature nil
- "Hide the signature."
+ "Hide the signature.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-fill-article nil
- "Fill the article."
+ "Fill the article.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-hide-citation nil
- "Hide cited text."
+ "Hide cited text.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-strip-pgp t
- "Strip PGP signatures."
+ "Strip PGP signatures.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-strip-pem nil
- "Strip PEM signatures."
+ "Strip PEM signatures.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-strip-banner t
"Strip banners from articles.
-The banner to be stripped is specified in the `banner' group parameter."
+The banner to be stripped is specified in the `banner' group parameter.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-highlight-headers 'head
- "Highlight the headers."
+ "Highlight the headers.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
+(put 'gnus-treat-highlight-headers 'highlight t)
(defcustom gnus-treat-highlight-citation t
- "Highlight cited text."
+ "Highlight cited text.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
+(put 'gnus-treat-highlight-citation 'highlight t)
(defcustom gnus-treat-date-ut nil
- "Display the Date in UT (GMT)."
+ "Display the Date in UT (GMT).
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-date-local nil
- "Display the Date in the local timezone."
+ "Display the Date in the local timezone.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-date-lapsed nil
- "Display the Date header in a way that says how much time has elapsed."
+ "Display the Date header in a way that says how much time has elapsed.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-date-original nil
- "Display the date in the original timezone."
+ "Display the date in the original timezone.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-date-iso8601 nil
- "Display the date in the ISO8601 format."
+ "Display the date in the ISO8601 format.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-date-user-defined nil
"Display the date in a user-defined format.
-The format is defined by the `gnus-article-time-format' variable."
+The format is defined by the `gnus-article-time-format' variable.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
(defcustom gnus-treat-strip-trailing-blank-lines nil
- "Strip trailing blank lines."
+ "Strip trailing blank lines.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-strip-leading-blank-lines nil
- "Strip leading blank lines."
+ "Strip leading blank lines.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-strip-multiple-blank-lines nil
- "Strip multiple blank lines."
+ "Strip multiple blank lines.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-strip-blank-lines nil
- "Strip all blank lines."
+ "Strip all blank lines.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-overstrike t
- "Treat overstrike highlighting."
+ "Treat overstrike highlighting.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
+(put 'gnus-treat-overstrike 'highlight t)
(defcustom gnus-treat-display-xface (if (and gnus-xemacs (featurep 'xface))
'head nil)
- "Display X-Face headers."
+ "Display X-Face headers.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
+(put 'gnus-treat-display-xface 'highlight t)
(defcustom gnus-treat-display-smileys (if (and gnus-xemacs
(featurep 'xpm))
t nil)
- "Display smileys."
+ "Display smileys.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
+(put 'gnus-treat-display-smileys 'highlight t)
(defcustom gnus-treat-display-picons (if gnus-xemacs 'head nil)
- "Display picons."
+ "Display picons.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-head-custom)
+(put 'gnus-treat-display-picons 'highlight t)
(defcustom gnus-treat-capitalize-sentences nil
- "Capitalize sentence-starting words."
+ "Capitalize sentence-starting words.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-fill-long-lines nil
- "Fill long lines."
+ "Fill long lines.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(defcustom gnus-treat-play-sounds nil
- "Fill long lines."
+ "Fill long lines.
+Valid values are nil, t, `head', `last', an integer or a predicate.
+See the manual for details."
:group 'gnus-article-treat
:type gnus-article-treat-custom)
(put-text-property
(max (1- b) (point-min))
b 'intangible (cddr (memq 'intangible props)))))
-
-(defmacro gnus-with-article (article &rest forms)
- "Select ARTICLE and perform FORMS in the original article buffer.
-Then replace the article with the result."
- `(progn
- ;; We don't want the article to be marked as read.
- (let (gnus-mark-article-hook)
- (gnus-summary-select-article t t nil ,article))
- (set-buffer gnus-original-article-buffer)
- ,@forms
- (if (not (gnus-check-backend-function
- 'request-replace-article (car gnus-article-current)))
- (gnus-message 5 "Read-only group; not replacing")
- (unless (gnus-request-replace-article
- ,article (car gnus-article-current)
- (current-buffer) t)
- (error "Couldn't replace article")))
- ;; The cache and backlog have to be flushed somewhat.
- (when gnus-keep-backlog
- (gnus-backlog-remove-article
- (car gnus-article-current) (cdr gnus-article-current)))
- (when gnus-use-cache
- (gnus-cache-update-article
- (car gnus-article-current) (cdr gnus-article-current)))))
-
-(put 'gnus-with-article 'lisp-indent-function 1)
-(put 'gnus-with-article 'edebug-form-spec '(form body))
-
(defsubst gnus-article-unhide-text (b e)
"Remove hidden text properties from region between B and E."
(remove-text-properties b e gnus-hidden-properties)
(save-restriction
(narrow-to-region (point) (1+ (point)))
(mm-display-part handle)
+ ;; We narrow to the part itself and
+ ;; then call the treatment functions.
+ (goto-char (point-min))
+ (forward-line 1)
+ (narrow-to-region (point) (point-max))
(gnus-treat-article
nil id
(1- (length gnus-article-mime-handles))
(while list
(when (string-match (pop list) type)
(throw 'found t)))))))
+ (highlightp (gnus-visual-p 'article-highlight 'highlight))
val elem)
- (when (gnus-visual-p 'article-highlight 'highlight)
- (gnus-run-hooks 'gnus-part-display-hook)
- (while (setq elem (pop alist))
- (setq val (symbol-value (car elem)))
- (when (and (or (consp val)
- treated-type)
- (gnus-treat-predicate val))
- (save-restriction
- (funcall (cadr elem))))))))
+ (gnus-run-hooks 'gnus-part-display-hook)
+ (while (setq elem (pop alist))
+ (setq val (symbol-value (car elem)))
+ (when (and (or (consp val)
+ treated-type)
+ (gnus-treat-predicate val)
+ (or (not (get (car elem) 'highlight))
+ highlightp))
+ (save-restriction
+ (funcall (cadr elem)))))))
;; Dynamic variables.
(defvar part-number)
(defcustom gnus-group-posting-charset-alist
'(("^no\\." iso-8859-1)
- (".*" iso-8859-1)
- (message-this-is-news iso-8859-1)
(message-this-is-mail nil)
- )
+ (".*" iso-8859-1)
+ (message-this-is-news iso-8859-1))
"Alist of regexps (to match group names) and default charsets to be unencoded when posting."
:type '(repeat (list (regexp :tag "Group")
(symbol :tag "Charset")))
(save-excursion
(set-buffer (gnus-get-buffer-create " *gnus environment info*"))
(gnus-debug))
- (insert "<#part type=application/emacs-lisp buffer=\" *gnus environment info*\" disposition=inline><#/part>")
+ (insert "<#part type=application/emacs-lisp buffer=\" *gnus environment info*\" disposition=inline description=\"User settings\"><#/part>")
(goto-char (point-min))
(search-forward "Subject: " nil t)
(message "")))
"u" gnus-pick-unmark-article-or-thread
"." gnus-pick-article-or-thread
gnus-down-mouse-2 gnus-pick-mouse-pick-region
- "\r" gnus-pick-start-reading
- ))
+ "\r" gnus-pick-start-reading))
(defun gnus-pick-make-menu-bar ()
(unless (boundp 'gnus-pick-menu)
(defvar gnus-selected-tree-overlay nil)
(defvar gnus-tree-displayed-thread nil)
+(defvar gnus-tree-inhibit nil)
(defvar gnus-tree-mode-map nil)
(put 'gnus-tree-mode 'mode-class 'special)
(defun gnus-tree-read-summary-keys (&optional arg)
"Read a summary buffer key sequence and execute it."
(interactive "P")
- (let ((buf (current-buffer))
- win)
- (set-buffer gnus-article-buffer)
- (gnus-article-read-summary-keys arg nil t)
- (when (setq win (get-buffer-window buf))
- (select-window win)
- (when gnus-selected-tree-overlay
- (goto-char (or (gnus-overlay-end gnus-selected-tree-overlay) 1)))
- (gnus-tree-minimize))))
+ (unless gnus-tree-inhibit
+ (let ((buf (current-buffer))
+ (gnus-tree-inhibit t)
+ win)
+ (set-buffer gnus-article-buffer)
+ (gnus-article-read-summary-keys arg nil t)
+ (when (setq win (get-buffer-window buf))
+ (select-window win)
+ (when gnus-selected-tree-overlay
+ (goto-char (or (gnus-overlay-end gnus-selected-tree-overlay) 1)))
+ (gnus-tree-minimize)))))
(defun gnus-tree-show-summary ()
"Reconfigure windows to show summary buffer."
;; Update the group buffer.
(gnus-group-update-group group t)))))
-(defun gnus-methods-equal-p (m1 m2)
- (let ((m1 (or m1 gnus-select-method))
- (m2 (or m2 gnus-select-method)))
- (or (equal m1 m2)
- (and (eq (car m1) (car m2))
- (or (not (memq 'address (assoc (symbol-name (car m1))
- gnus-valid-select-methods)))
- (equal (nth 1 m1) (nth 1 m2)))))))
-
(defvar gnus-newsgroup-none-id 0)
(defun gnus-get-newsgroup-headers (&optional dependencies force-new)
(save-restriction
(let* ((buffer-read-only nil)
(inhibit-point-motion-hooks t)
- (hidden (gnus-article-hidden-text-p 'headers))
- e)
+ hidden e)
+ (save-restriction
+ (message-narrow-to-head)
+ (setq hidden (gnus-article-hidden-text-p 'headers)))
(goto-char (point-min))
(when (search-forward "\n\n" nil t)
(delete-region (point-min) (1- (point))))
(gnus-summary-show-article))
(gnus-summary-show-article)))
+;;;
+;;; with article
+;;;
+
+(defmacro gnus-with-article (article &rest forms)
+ "Select ARTICLE and perform FORMS in the original article buffer.
+Then replace the article with the result."
+ `(progn
+ ;; We don't want the article to be marked as read.
+ (let (gnus-mark-article-hook)
+ (gnus-summary-select-article t t nil ,article))
+ (set-buffer gnus-original-article-buffer)
+ ,@forms
+ (if (not (gnus-check-backend-function
+ 'request-replace-article (car gnus-article-current)))
+ (gnus-message 5 "Read-only group; not replacing")
+ (unless (gnus-request-replace-article
+ ,article (car gnus-article-current)
+ (current-buffer) t)
+ (error "Couldn't replace article")))
+ ;; The cache and backlog have to be flushed somewhat.
+ (when gnus-keep-backlog
+ (gnus-backlog-remove-article
+ (car gnus-article-current) (cdr gnus-article-current)))
+ (when gnus-use-cache
+ (gnus-cache-update-article
+ (car gnus-article-current) (cdr gnus-article-current)))))
+
+(put 'gnus-with-article 'lisp-indent-function 1)
+(put 'gnus-with-article 'edebug-form-spec '(form body))
+
+
(gnus-ems-redefine)
(provide 'gnus-sum)
(eval '(run-hooks 'gnus-load-hook))
(eval-when-compile (require 'cl))
+(require 'mm-util)
(require 'custom)
(eval-and-compile
:link '(custom-manual "(gnus)Exiting Gnus")
:group 'gnus)
-(defconst gnus-version-number "0.79"
+(defconst gnus-version-number "0.80"
"Version number for this version of Gnus.")
(defconst gnus-version (format "Pterodactyl Gnus v%s" gnus-version-number)
(setq s1 (cdr s1)))
(null s1))))))
+(defun gnus-methods-equal-p (m1 m2)
+ (let ((m1 (or m1 gnus-select-method))
+ (m2 (or m2 gnus-select-method)))
+ (or (equal m1 m2)
+ (and (eq (car m1) (car m2))
+ (or (not (memq 'address (assoc (symbol-name (car m1))
+ gnus-valid-select-methods)))
+ (equal (nth 1 m1) (nth 1 m2)))))))
+
(defun gnus-server-equal (m1 m2)
"Say whether two methods are equal."
(let ((m1 (cond ((null m1) gnus-select-method)
(:prescript)
(:postscript)
(:server (getenv "MAILHOST"))
- (:port "pop")
+ (:port 110)
(:user (or (user-login-name) (getenv "LOGNAME") (getenv "USER")))
(:program)
(:function)
(defmacro mail-source-bind (type-source &rest body)
"Return a `let' form that binds all variables in source TYPE.
+TYPE-SOURCE is a list where the first element is the TYPE, and
+the second variable is the SOURCE.
At run time, the mail source specifier SOURCE will be inspected,
and the variables will be set according to it. Variables not
specified will be given default values.
After this is done, BODY will be executed in the scope
-of the `let' form."
+of the `let' form.
+
+The variables bound and their default values are described by
+the `mail-source-keyword-map' variable."
`(let ,(mail-source-bind-1 (car type-source))
(mail-source-set-1 ,(cadr type-source))
,@body))
(let ((from (format "%s:%s:%s" server user port))
(mail-source-string (format "pop:%s@%s" user server))
result)
- (when (and (not (eq authentication 'apop))
- (not program))
+ (when (not (eq authentication 'apop))
(setq password
(or password
(cdr (assoc from mail-source-password-cache))
postscript
(format-spec-make
?p password ?t mail-source-crash-box
- ?s server ?P port ?u user)))))
- 1)
+ ?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
C-c C-v message-delete-not-region (remove the text outside the region).
C-c C-z message-kill-to-signature (kill the text up to the signature).
C-c C-r message-caesar-buffer-body (rot13 the message body).
-C-c C-a message-mime-attach-file (attach a file as MIME)."
+C-c C-a mml-attach-file (attach a file as MIME)."
(interactive)
(kill-all-local-variables)
(set (make-local-variable 'message-reply-buffer) nil)
(let ((message-deletable-headers
(if news nil message-deletable-headers)))
(message-generate-headers message-required-mail-headers))
- (let ((mail-parse-charset message-posting-charset))
- (mail-encode-encoded-word-buffer))
+ (mail-encode-encoded-word-buffer)
;; Let the user do all of the above.
(run-hooks 'message-header-hook))
(unwind-protect
(mm-insert-part handle)
(prog1
(setq spec
- (make-glyph `[,(intern type) :data ,(buffer-string)]))
+ (ignore-errors
+ (make-glyph
+ (cond
+ ((equal type "xbm")
+ (let ((height 32)
+ (width 32))
+ (forward-line 2)
+ (vector 'xbm :data (list height width
+ (buffer-substring
+ (point) (point-max))))))
+ (t
+ (vector (intern type) :data (buffer-string)))))))
(mm-handle-set-cache handle spec))))))
(defun mm-image-fit-p (handle)
(defvar mm-content-transfer-encoding-defaults
'(("text/.*" quoted-printable)
- ("message/rfc822" quoted-printable)
+ ("message/rfc822" 8bit)
("application/emacs-lisp" 8bit)
("application/x-patch" 8bit)
(".*" base64))
(setq charset (mm-encode-body))
(setq encoding (mm-body-encoding charset))
(setq coded (buffer-string)))
- (mm-with-unibyte-buffer
+ (with-temp-buffer
(cond
((cdr (assq 'buffer cont))
(insert-buffer-substring (cdr (assq 'buffer cont))))
(dolist (elem (append (cdr (mm-handle-type handle))
(cdr (mm-handle-disposition handle))))
(insert " " (symbol-name (car elem)) "=\"" (cdr elem) "\""))
+ (when (mm-handle-disposition handle)
+ (insert " disposition=" (car (mm-handle-disposition handle))))
(when buffer
(insert " buffer=\"" (buffer-name buffer) "\""))
(when (mm-handle-description handle)
(define-key map "b" 'mml-attach-buffer)
(define-key map "q" 'mml-quote-region)
(define-key map "m" 'mml-insert-multipart)
- (define-key map "q" 'mml-insert-part)
+ (define-key map "p" 'mml-insert-part)
(define-key map "v" 'mml-validate)
+ (define-key map "P" 'mml-preview)
(define-key main "\M-m" map)
main))
(defvar nnmail-split-history nil
"List of group/article elements that say where the previous split put messages.")
-(defvar nnmail-current-spool nil)
-
(defvar nnmail-split-fancy-syntax-table nil
"Syntax table used by `nnmail-split-fancy'.")
(unless (syntax-table-p nnmail-split-fancy-syntax-table)
(if (not (and (re-search-forward "^From " nil t)
(goto-char (match-beginning 0))))
;; Possibly wrong format?
- (progn
- (pop-to-buffer (nnheader-find-file-noselect nnmail-current-spool))
- (error "Error, unknown mail format! (Possibly corrupted.)"))
+ (error "Error, unknown mail format! (Possibly corrupted.)")
;; Carry on until the bitter end.
(while (not (eobp))
(setq start (point)
(if (not (and (re-search-forward delim nil t)
(forward-line 1)))
;; Possibly wrong format?
- (progn
- (pop-to-buffer (nnheader-find-file-noselect nnmail-current-spool))
- (error "Error, unknown mail format! (Possibly corrupted.)"))
+ (error "Error, unknown mail format! (Possibly corrupted.)")
;; Carry on until the bitter end.
(while (not (eobp))
(setq start (point))
(list nnmail-spool-file)))
(group-in group)
(i 0)
- nnmail-current-spool incoming incomings source)
+ incoming incomings source)
(when (and (nnmail-get-value "%s-get-new-mail" method)
nnmail-spool-file)
;; We first activate all the groups.
;; Hack to only fetch the contents of a single group's spool file.
(when (and (eq (car source) 'directory)
group)
- (setq source (append source
- (list :predicate
- `(lambda (file)
- (string-match
- ,(concat (regexp-quote group) "$")
- file))))))
+ (mail-source-bind (directory source)
+ (setq source (append source
+ (list
+ :predicate
+ `(lambda (file)
+ (string-match
+ ,(concat
+ (regexp-quote (concat group suffix))
+ "$")
+ file)))))))
(when nnmail-fetched-sources
(if (member source nnmail-fetched-sources)
(setq source nil)
;; Author: Richard L. Pieri <ratinox@peorth.gweep.net>
;; Keywords: mail, pop3
-;; Version: 1.3m
+;; Version: 1.3q
;; This file is part of GNU Emacs.
(pop3-retr process n crashbuf)
(save-excursion
(set-buffer crashbuf)
- (append-to-file (point-min) (point-max) crashbox)
+ (write-region (point-min) (point-max) crashbox t 'nomesg)
(set-buffer (process-buffer process))
(while (> (buffer-size) 5000)
(goto-char (point-min))
(interactive)
(save-excursion
(set-buffer gnus-article-buffer)
- (goto-char (point-min))
- ;; We skip the headers.
- (unless (search-forward "\n\n" nil t)
- (goto-char (point-max)))
- (smiley-buffer (current-buffer) (point))))
+ (article-goto-body)
+ (smiley-buffer (current-buffer) (point-min) (point-max))))
(provide 'smiley)
+1999-03-01 16:41:42 Rob Browning <rlb@cs.utexas.edu>
+
+ * gnus.texi (Score Variables): Clarify.
+
+1999-02-26 Andreas Jaeger <aj@arthur.rhein-neckar.de>
+
+ * gnus.texi: Add ',' after @xrefs.
+
+1999-02-26 20:54:34 Jason R. Mastaler <jason@4b.org>
+
+ * gnus.texi (Article Date): Added joke by Colin Rafferty
+ (colin@xemacs.org).
+
1999-02-26 08:26:10 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus.texi (Mail Source Specifiers): Fix.
\input texinfo @c -*-texinfo-*-
@setfilename gnus
-@settitle Pterodactyl Gnus 0.79 Manual
+@settitle Pterodactyl Gnus 0.80 Manual
@synindex fn cp
@synindex vr cp
@synindex pg cp
@tex
@titlepage
-@title Pterodactyl Gnus 0.79 Manual
+@title Pterodactyl Gnus 0.80 Manual
@author by Lars Magne Ingebrigtsen
@page
spool or your mbox file. All at the same time, if you want to push your
luck.
-This manual corresponds to Pterodactyl Gnus 0.79.
+This manual corresponds to Pterodactyl Gnus 0.80.
@end ifinfo
(@code{gnus-group-add-to-virtual}). Uses the process/prefix convention.
@end table
-@xref{Select Methods} for more information on the various select
+@xref{Select Methods}, for more information on the various select
methods.
@vindex gnus-activate-foreign-newsgroups
@end table
-@xref{Sorting Groups} for more information about group sorting.
+@xref{Sorting Groups}, for more information about group sorting.
@node Topic Topology
@end table
-@xref{Customizing Articles} for how to highlight articles automatically.
+@xref{Customizing Articles}, for how to highlight articles automatically.
@node Article Fontisizing
(copy-face 'red 'gnus-emphasis-italic)
@end lisp
-@xref{Customizing Articles} for how to fontize articles automatically.
+@xref{Customizing Articles}, for how to fontize articles automatically.
@node Article Hiding
Also @pxref{Article Highlighting} for further variables for
citation customization.
-@xref{Customizing Articles} for how to hide article elements
+@xref{Customizing Articles}, for how to hide article elements
automatically.
@kindex W l (Summary)
@findex gnus-summary-stop-page-breaking
Remove page breaks from the current article
-(@code{gnus-summary-stop-page-breaking}). @xref{Misc Article} for page
+(@code{gnus-summary-stop-page-breaking}). @xref{Misc Article}, for page
delimiters.
@item W r
@end table
-@xref{Customizing Articles} for how to wash articles automatically.
+@xref{Customizing Articles}, for how to wash articles automatically.
@node Article Buttons
@end table
-@xref{Customizing Articles} for how to buttonize articles automatically.
+@xref{Customizing Articles}, for how to buttonize articles automatically.
@node Article Date
@findex gnus-start-date-timer
@findex gnus-stop-date-timer
Say how much time has elapsed between the article was posted and now
-(@code{gnus-article-date-lapsed}). If you want to have this line
-updated continually, you can put
+(@code{gnus-article-date-lapsed}). It looks something like:
+
+@example
+X-Sent: 29 years, 6 weeks, 4 days, 10 hours, 3 minutes, 28 seconds ago
+@end example
+
+An advantage of using Gnus to read mail is that it converts simple bugs
+into wonderful absurdities.
+
+If you want to have this line updated continually, you can put
@lisp
(gnus-start-date-timer)
@end table
-@xref{Customizing Articles} for how to display the date in your
+@xref{Customizing Articles}, for how to display the date in your
preferred format automatically.
scoring, then you might set this variable to @code{t}. This will make
Gnus save the scores into the @file{.newsrc.eld} file.
+If you do not set this to @code{t}, then manual scores (like those set
+with @kbd{V s} (@code{gnus-summary-set-score})) will not be preserved
+across group visits.
+
@item gnus-score-interactive-default-score
@vindex gnus-score-interactive-default-score
Score used by all the interactive raise/lower commands to raise/lower
timeout for all commands.
@item
+When stading on a topic line and `t'-ing, point goes to the last line.
+It should go somewhere else.
+
+@item
Solve the halting problem.
@c TODO
\input texinfo @c -*-texinfo-*-
@setfilename message
-@settitle Pterodactyl Message 0.79 Manual
+@settitle Pterodactyl Message 0.80 Manual
@synindex fn cp
@synindex vr cp
@synindex pg cp
@tex
@titlepage
-@title Pterodactyl Message 0.79 Manual
+@title Pterodactyl Message 0.80 Manual
@author by Lars Magne Ingebrigtsen
@page
* Key Index:: List of Message mode keys.
@end menu
-This manual corresponds to Pterodactyl Message 0.79. Message is
+This manual corresponds to Pterodactyl Message 0.80. Message is
distributed with the Gnus distribution bearing the same version number
as this manual.