diff options
| author | Gnus developers | 2010-10-01 23:08:25 +0000 |
|---|---|---|
| committer | Katsumi Yamaoka | 2010-10-01 23:08:25 +0000 |
| commit | a3f57c41e2c6e84264e13c893e7e0f9b85d6ca1f (patch) | |
| tree | 3bafa1c838714641cae96dd9d44e83e22b2c389b | |
| parent | 0ebf79dee20548de437ddd1080f027e571d528f9 (diff) | |
| download | emacs-a3f57c41e2c6e84264e13c893e7e0f9b85d6ca1f.tar.gz emacs-a3f57c41e2c6e84264e13c893e7e0f9b85d6ca1f.zip | |
Merge changes made in Gnus trunk.
gnus-registry.el: Fix and extend header docs. Move the nnregistry feature check.
nnimap.el (nnimap-update-info): Ignore groups that have no UIDNEXT values.
nnimap.el: Implement nnimap-request-newgroups.
gnus-group.el (gnus-group-completing-read): Return the symbol name, not the value from the collection.
nnimap.el: Don't error out on empty non-UIDNEXT groups.
nnmail.el (nnmail-article-group): Allow using the fancy split method directly.
gnus.el (gnus-continuum-version): Make inactive, since it doesn't really message anything to the user.
gnus-msg.el (gnus-summary-resend-message): When resending, don't externalize attachments.
gnus.el (gnus-large-newsgroup): Mention gnus-large-ephemeral-newsgroup.
gnus-sum.el (gnus-summary-scroll-up): Add more documentation.
message.el (message-shorten-references): Comment on the number "21".
mm-encode.el (mm-content-transfer-encoding-defaults): Try to make the documentation clearer.
ChangeLog: jidanni -> Dan Jacobson.
nnmbox.el (nnmbox-read-mbox): Mark buffer for deletion on Gnus exit.
gnus-sum.el, gnus-win.el: Change the `h' command to only show the article buffer.
gnus-art.el (gnus-summary-save-in-file, gnus-summary-save-in-rmail): Use with-current-buffer instead of gnus-eval-in-buffer-window to avoid popping up frames.
gnus-sum.el (gnus-summary-clear-local-variables): Removed.
gnus-async.el (gnus-async-delete-prefetched-entry): Remove from hash table, too.
gnus-async.el: Try to keep the async hash table size reasonable.
nndoc.el (nndoc-type-alist): Do babyl before mime-parts.
gnus-start.el (gnus-check-bogus-newsgroups): Say how many groups we're being queried about.
| -rw-r--r-- | doc/misc/gnus.texi | 11 | ||||
| -rw-r--r-- | lisp/gnus/ChangeLog | 78 | ||||
| -rw-r--r-- | lisp/gnus/gnus-art.el | 10 | ||||
| -rw-r--r-- | lisp/gnus/gnus-async.el | 7 | ||||
| -rw-r--r-- | lisp/gnus/gnus-group.el | 12 | ||||
| -rw-r--r-- | lisp/gnus/gnus-msg.el | 3 | ||||
| -rw-r--r-- | lisp/gnus/gnus-registry.el | 20 | ||||
| -rw-r--r-- | lisp/gnus/gnus-start.el | 2 | ||||
| -rw-r--r-- | lisp/gnus/gnus-sum.el | 32 | ||||
| -rw-r--r-- | lisp/gnus/gnus-win.el | 3 | ||||
| -rw-r--r-- | lisp/gnus/gnus.el | 5 | ||||
| -rw-r--r-- | lisp/gnus/mailcap.el | 7 | ||||
| -rw-r--r-- | lisp/gnus/message.el | 1 | ||||
| -rw-r--r-- | lisp/gnus/mm-encode.el | 11 | ||||
| -rw-r--r-- | lisp/gnus/nndoc.el | 6 | ||||
| -rw-r--r-- | lisp/gnus/nnimap.el | 23 | ||||
| -rw-r--r-- | lisp/gnus/nnmail.el | 46 | ||||
| -rw-r--r-- | lisp/gnus/nnmbox.el | 1 |
18 files changed, 192 insertions, 86 deletions
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index 61a2171baac..3365e05943a 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi | |||
| @@ -9477,6 +9477,14 @@ signature should be removed, or other symbol, meaning that the | |||
| 9477 | corresponding regular expression in @code{gnus-article-banner-alist} is | 9477 | corresponding regular expression in @code{gnus-article-banner-alist} is |
| 9478 | used. | 9478 | used. |
| 9479 | 9479 | ||
| 9480 | For instance: | ||
| 9481 | |||
| 9482 | @lisp | ||
| 9483 | (setq gnus-article-banner-alist | ||
| 9484 | ((googleGroups . | ||
| 9485 | "^\n*--~--~---------\\(.+\n\\)+"))) | ||
| 9486 | @end lisp | ||
| 9487 | |||
| 9480 | Regardless of a group, you can hide things like advertisements only when | 9488 | Regardless of a group, you can hide things like advertisements only when |
| 9481 | the sender of an article has a certain mail address specified in | 9489 | the sender of an article has a certain mail address specified in |
| 9482 | @code{gnus-article-address-banner-alist}. | 9490 | @code{gnus-article-address-banner-alist}. |
| @@ -15102,6 +15110,9 @@ arguments in a buffer narrowed to the headers of an incoming mail | |||
| 15102 | message. The function should return a list of group names that it | 15110 | message. The function should return a list of group names that it |
| 15103 | thinks should carry this mail message. | 15111 | thinks should carry this mail message. |
| 15104 | 15112 | ||
| 15113 | This variable can also be a fancy split method. See @xref{Fancy Mail | ||
| 15114 | Splitting} for the syntax. | ||
| 15115 | |||
| 15105 | Note that the mail back ends are free to maul the poor, innocent, | 15116 | Note that the mail back ends are free to maul the poor, innocent, |
| 15106 | incoming headers all they want to. They all add @code{Lines} headers; | 15117 | incoming headers all they want to. They all add @code{Lines} headers; |
| 15107 | some add @code{X-Gnus-Group} headers; most rename the Unix mbox | 15118 | some add @code{X-Gnus-Group} headers; most rename the Unix mbox |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 3cc5be14af5..75651936bb0 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,5 +1,83 @@ | |||
| 1 | 2010-10-01 Lars Magne Ingebrigtsen <larsi@gnus.org> | 1 | 2010-10-01 Lars Magne Ingebrigtsen <larsi@gnus.org> |
| 2 | 2 | ||
| 3 | * gnus-start.el (gnus-check-bogus-newsgroups): Say how many groups | ||
| 4 | we're being queried about. Suggested by Dan Jacobson. | ||
| 5 | |||
| 6 | * nndoc.el (nndoc-type-alist): Do babyl before mime-parts. Suggested | ||
| 7 | by Jason Eisner. | ||
| 8 | |||
| 9 | * gnus-async.el (gnus-async-delete-prefetched-entry): Remove from hash | ||
| 10 | table, too. Suggested by Stefan Wiens. | ||
| 11 | (gnus-async-prefetched-article-entry): Use intern-soft to avoid growing | ||
| 12 | the table unnecessary. Suggested by Stefan Wiens. | ||
| 13 | |||
| 14 | * gnus-sum.el (gnus-summary-clear-local-variables): This is probably no | ||
| 15 | longer needed, and probably doesn't work either, as pointed out by | ||
| 16 | Stefan Wiens. | ||
| 17 | (gnus-summary-exit): Remove call to the clearing function. | ||
| 18 | (gnus-summary-exit-no-update): Ditto. | ||
| 19 | |||
| 20 | * gnus-art.el (gnus-summary-save-in-file): Use with-current-buffer | ||
| 21 | instead of gnus-eval-in-buffer-window to avoid popping up frames. | ||
| 22 | Reported by Stefan Monnier. | ||
| 23 | (gnus-summary-save-in-rmail): Ditto. | ||
| 24 | |||
| 25 | * gnus-sum.el (gnus-summary-select-article-buffer): Show only the | ||
| 26 | article buffer, instead of both the article buffer and the summary | ||
| 27 | buffer. Sort of suggested by Dan Jacobson. | ||
| 28 | |||
| 29 | * gnus-win.el (gnus-buffer-configuration): Add an only-article spec. | ||
| 30 | |||
| 31 | * nnmbox.el (nnmbox-read-mbox): Mark buffer for deletion on Gnus exit. | ||
| 32 | Suggested by Dan Jacobson. | ||
| 33 | |||
| 34 | * mm-encode.el (mm-content-transfer-encoding-defaults): Try to make the | ||
| 35 | documentation clearer. | ||
| 36 | |||
| 37 | * message.el (message-shorten-references): Comment on the number "21". | ||
| 38 | Suggested by Stefan Monnier. | ||
| 39 | |||
| 40 | * gnus-sum.el (gnus-summary-scroll-up): Add more documentation. | ||
| 41 | Suggested by Dan Jacobson. | ||
| 42 | |||
| 43 | * gnus.el (gnus-large-newsgroup): Mention | ||
| 44 | gnus-large-ephemeral-newsgroup. Suggested by Dan Jacobson. | ||
| 45 | |||
| 46 | * gnus-msg.el (gnus-summary-resend-message): When resending, don't | ||
| 47 | externalize attachments. Bug reported by Steve Wen. | ||
| 48 | |||
| 49 | * gnus.el (gnus-continuum-version): Make inactive, since it doesn't | ||
| 50 | really message anything to the user. | ||
| 51 | |||
| 52 | * nnmail.el (nnmail-article-group): Allow using the fancy split method | ||
| 53 | directly. | ||
| 54 | |||
| 55 | * nnimap.el (nnimap-request-group): Low higher than high to signal no | ||
| 56 | messages in empty groups. | ||
| 57 | |||
| 58 | 2010-10-01 Ted Zlatanov <tzz@lifelogs.com> | ||
| 59 | |||
| 60 | * nnimap.el (nnimap-request-group): Don't bug out when there's an empty | ||
| 61 | non-UIDNEXT group. | ||
| 62 | |||
| 63 | 2010-10-01 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 64 | |||
| 65 | * gnus-group.el (gnus-group-completing-read): Return the symbol name, | ||
| 66 | not the value from the collection. | ||
| 67 | |||
| 68 | * nnimap.el (nnimap-update-info): Ignore groups that have no UIDNEXT | ||
| 69 | values. This sometimes happens on some groups that have no info. | ||
| 70 | (nnimap-request-newgroups): New function. | ||
| 71 | |||
| 72 | 2010-10-01 Teodor Zlatanov <tzz@lifelogs.com> | ||
| 73 | |||
| 74 | * gnus-registry.el (gnus-registry-install-nnregistry): Move the feature | ||
| 75 | check into `gnus-registry-initialize'. | ||
| 76 | (gnus-registry-initialize): Ditto. | ||
| 77 | Fix and extend header docs. | ||
| 78 | |||
| 79 | 2010-10-01 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 80 | |||
| 3 | * gnus-html.el (gnus-html-prefetch-images): Adjust regexp to avoid | 81 | * gnus-html.el (gnus-html-prefetch-images): Adjust regexp to avoid |
| 4 | regexp backtrace overflows. | 82 | regexp backtrace overflows. |
| 5 | 83 | ||
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 91ff355b6d2..8a0193b26d7 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el | |||
| @@ -3958,7 +3958,7 @@ Directory to save to is default to `gnus-article-save-directory'." | |||
| 3958 | "Save %s in rmail file" filename | 3958 | "Save %s in rmail file" filename |
| 3959 | gnus-rmail-save-name gnus-newsgroup-name | 3959 | gnus-rmail-save-name gnus-newsgroup-name |
| 3960 | gnus-current-headers 'gnus-newsgroup-last-rmail)) | 3960 | gnus-current-headers 'gnus-newsgroup-last-rmail)) |
| 3961 | (gnus-eval-in-buffer-window gnus-save-article-buffer | 3961 | (with-current-buffer gnus-save-article-buffer |
| 3962 | (save-excursion | 3962 | (save-excursion |
| 3963 | (save-restriction | 3963 | (save-restriction |
| 3964 | (widen) | 3964 | (widen) |
| @@ -3976,7 +3976,7 @@ Directory to save to is default to `gnus-article-save-directory'." | |||
| 3976 | "Save %s in Unix mail file" filename | 3976 | "Save %s in Unix mail file" filename |
| 3977 | gnus-mail-save-name gnus-newsgroup-name | 3977 | gnus-mail-save-name gnus-newsgroup-name |
| 3978 | gnus-current-headers 'gnus-newsgroup-last-mail)) | 3978 | gnus-current-headers 'gnus-newsgroup-last-mail)) |
| 3979 | (gnus-eval-in-buffer-window gnus-save-article-buffer | 3979 | (with-current-buffer gnus-save-article-buffer |
| 3980 | (save-excursion | 3980 | (save-excursion |
| 3981 | (save-restriction | 3981 | (save-restriction |
| 3982 | (widen) | 3982 | (widen) |
| @@ -3997,7 +3997,7 @@ Directory to save to is default to `gnus-article-save-directory'." | |||
| 3997 | "Save %s in file" filename | 3997 | "Save %s in file" filename |
| 3998 | gnus-file-save-name gnus-newsgroup-name | 3998 | gnus-file-save-name gnus-newsgroup-name |
| 3999 | gnus-current-headers 'gnus-newsgroup-last-file)) | 3999 | gnus-current-headers 'gnus-newsgroup-last-file)) |
| 4000 | (gnus-eval-in-buffer-window gnus-save-article-buffer | 4000 | (with-current-buffer gnus-save-article-buffer |
| 4001 | (save-excursion | 4001 | (save-excursion |
| 4002 | (save-restriction | 4002 | (save-restriction |
| 4003 | (widen) | 4003 | (widen) |
| @@ -4029,7 +4029,7 @@ The directory to save in defaults to `gnus-article-save-directory'." | |||
| 4029 | "Save %s body in file" filename | 4029 | "Save %s body in file" filename |
| 4030 | gnus-file-save-name gnus-newsgroup-name | 4030 | gnus-file-save-name gnus-newsgroup-name |
| 4031 | gnus-current-headers 'gnus-newsgroup-last-file)) | 4031 | gnus-current-headers 'gnus-newsgroup-last-file)) |
| 4032 | (gnus-eval-in-buffer-window gnus-save-article-buffer | 4032 | (with-current-buffer gnus-save-article-buffer |
| 4033 | (save-excursion | 4033 | (save-excursion |
| 4034 | (save-restriction | 4034 | (save-restriction |
| 4035 | (widen) | 4035 | (widen) |
| @@ -4108,7 +4108,7 @@ and the raw article including all headers will be piped." | |||
| 4108 | (if default | 4108 | (if default |
| 4109 | (setq command default) | 4109 | (setq command default) |
| 4110 | (error "A command is required"))) | 4110 | (error "A command is required"))) |
| 4111 | (gnus-eval-in-buffer-window save-buffer | 4111 | (with-current-buffer save-buffer |
| 4112 | (save-restriction | 4112 | (save-restriction |
| 4113 | (widen) | 4113 | (widen) |
| 4114 | (shell-command-on-region (point-min) (point-max) command nil))) | 4114 | (shell-command-on-region (point-min) (point-max) command nil))) |
diff --git a/lisp/gnus/gnus-async.el b/lisp/gnus/gnus-async.el index a2ab54bea8b..9bb28f3a05d 100644 --- a/lisp/gnus/gnus-async.el +++ b/lisp/gnus/gnus-async.el | |||
| @@ -316,7 +316,8 @@ that was fetched." | |||
| 316 | (set-marker (caddr entry) nil)) | 316 | (set-marker (caddr entry) nil)) |
| 317 | (gnus-async-with-semaphore | 317 | (gnus-async-with-semaphore |
| 318 | (setq gnus-async-article-alist | 318 | (setq gnus-async-article-alist |
| 319 | (delq entry gnus-async-article-alist)))) | 319 | (delq entry gnus-async-article-alist)) |
| 320 | (unintern (car entry) gnus-async-hashtb))) | ||
| 320 | 321 | ||
| 321 | (defun gnus-async-prefetch-remove-group (group) | 322 | (defun gnus-async-prefetch-remove-group (group) |
| 322 | "Remove all articles belonging to GROUP from the prefetch buffer." | 323 | "Remove all articles belonging to GROUP from the prefetch buffer." |
| @@ -332,8 +333,8 @@ that was fetched." | |||
| 332 | "Return the entry for ARTICLE in GROUP if it has been prefetched." | 333 | "Return the entry for ARTICLE in GROUP if it has been prefetched." |
| 333 | (let ((entry (save-excursion | 334 | (let ((entry (save-excursion |
| 334 | (gnus-async-set-buffer) | 335 | (gnus-async-set-buffer) |
| 335 | (assq (intern (format "%s-%d" group article) | 336 | (assq (intern-soft (format "%s-%d" group article) |
| 336 | gnus-async-hashtb) | 337 | gnus-async-hashtb) |
| 337 | gnus-async-article-alist)))) | 338 | gnus-async-article-alist)))) |
| 338 | ;; Perhaps something has emptied the buffer? | 339 | ;; Perhaps something has emptied the buffer? |
| 339 | (if (and entry | 340 | (if (and entry |
diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index eb594f3e71f..2ea5cce7846 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el | |||
| @@ -2170,21 +2170,21 @@ be permanent." | |||
| 2170 | The arguments are the same as `completing-read' except that COLLECTION | 2170 | The arguments are the same as `completing-read' except that COLLECTION |
| 2171 | and HIST default to `gnus-active-hashtb' and `gnus-group-history' | 2171 | and HIST default to `gnus-active-hashtb' and `gnus-group-history' |
| 2172 | respectively if they are omitted." | 2172 | respectively if they are omitted." |
| 2173 | (let* ((choices (mapcar (lambda (symbol) | 2173 | (let* ((collection (or collection (or gnus-active-hashtb [0]))) |
| 2174 | (choices (mapcar (lambda (symbol) | ||
| 2174 | (let ((group (symbol-name symbol))) | 2175 | (let ((group (symbol-name symbol))) |
| 2175 | (if (string-match "[^\000-\177]" group) | 2176 | (if (string-match "[^\000-\177]" group) |
| 2176 | (gnus-group-decoded-name group) | 2177 | (gnus-group-decoded-name group) |
| 2177 | group))) | 2178 | group))) |
| 2178 | (remove-if-not | 2179 | (remove-if-not 'symbolp collection))) |
| 2179 | 'symbolp | ||
| 2180 | (or collection (or gnus-active-hashtb [0]))))) | ||
| 2181 | (group | 2180 | (group |
| 2182 | (gnus-completing-read (or prompt "Group") choices | 2181 | (gnus-completing-read (or prompt "Group") choices |
| 2183 | require-match initial-input | 2182 | require-match initial-input |
| 2184 | (or hist 'gnus-group-history) | 2183 | (or hist 'gnus-group-history) |
| 2185 | def))) | 2184 | def))) |
| 2186 | (or (symbol-value (intern-soft group collection)) | 2185 | (if (symbol-value (intern-soft group collection)) |
| 2187 | (mm-encode-coding-string group (gnus-group-name-charset nil group))))) | 2186 | group |
| 2187 | (mm-encode-coding-string group (gnus-group-name-charset nil group))))) | ||
| 2188 | 2188 | ||
| 2189 | ;;;###autoload | 2189 | ;;;###autoload |
| 2190 | (defun gnus-fetch-group (group &optional articles) | 2190 | (defun gnus-fetch-group (group &optional articles) |
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el index a3794f28a93..891718e65b8 100644 --- a/lisp/gnus/gnus-msg.el +++ b/lisp/gnus/gnus-msg.el | |||
| @@ -1265,7 +1265,8 @@ For the `inline' alternatives, also see the variable | |||
| 1265 | (dolist (article (gnus-summary-work-articles n)) | 1265 | (dolist (article (gnus-summary-work-articles n)) |
| 1266 | (gnus-summary-select-article nil nil nil article) | 1266 | (gnus-summary-select-article nil nil nil article) |
| 1267 | (with-current-buffer gnus-original-article-buffer | 1267 | (with-current-buffer gnus-original-article-buffer |
| 1268 | (message-resend address)) | 1268 | (let ((gnus-gcc-externalize-attachments nil)) |
| 1269 | (message-resend address))) | ||
| 1269 | (gnus-summary-mark-article-as-forwarded article))) | 1270 | (gnus-summary-mark-article-as-forwarded article))) |
| 1270 | 1271 | ||
| 1271 | ;; From: Matthieu Moy <Matthieu.Moy@imag.fr> | 1272 | ;; From: Matthieu Moy <Matthieu.Moy@imag.fr> |
diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el index 4e6dca536a9..cbea1e17ed8 100644 --- a/lisp/gnus/gnus-registry.el +++ b/lisp/gnus/gnus-registry.el | |||
| @@ -36,10 +36,12 @@ | |||
| 36 | 36 | ||
| 37 | ;; Put this in your startup file (~/.gnus.el for instance) | 37 | ;; Put this in your startup file (~/.gnus.el for instance) |
| 38 | 38 | ||
| 39 | ;; (require 'nnregistry) ;; optional, or see below (automatically calls `gnus-registry-install-nnregistry' when `gnus-registry-initialize' is called) | ||
| 39 | ;; (setq gnus-registry-max-entries 2500 | 40 | ;; (setq gnus-registry-max-entries 2500 |
| 40 | ;; gnus-registry-use-long-group-names t) | 41 | ;; gnus-registry-use-long-group-names t) |
| 41 | 42 | ||
| 42 | ;; (gnus-registry-initialize) | 43 | ;; (gnus-registry-initialize) |
| 44 | ;; (gnus-registry-install-nnregistry) ;; optional, or see above (loading nnregistry makes it unnecessary) | ||
| 43 | 45 | ||
| 44 | ;; Then use this in your fancy-split: | 46 | ;; Then use this in your fancy-split: |
| 45 | 47 | ||
| @@ -1129,7 +1131,8 @@ Returns the first place where the trail finds a group name." | |||
| 1129 | (setq gnus-registry-install t) ; in case it was 'ask or nil | 1131 | (setq gnus-registry-install t) ; in case it was 'ask or nil |
| 1130 | (gnus-registry-install-hooks) | 1132 | (gnus-registry-install-hooks) |
| 1131 | (gnus-registry-install-shortcuts) | 1133 | (gnus-registry-install-shortcuts) |
| 1132 | (gnus-registry-install-nnregistry) | 1134 | (when (featurep 'nnregistry) |
| 1135 | (gnus-registry-install-nnregistry)) | ||
| 1133 | (gnus-registry-read)) | 1136 | (gnus-registry-read)) |
| 1134 | 1137 | ||
| 1135 | ;;;###autoload | 1138 | ;;;###autoload |
| @@ -1150,14 +1153,13 @@ Returns the first place where the trail finds a group name." | |||
| 1150 | (defun gnus-registry-install-nnregistry () | 1153 | (defun gnus-registry-install-nnregistry () |
| 1151 | "Install the nnregistry refer method in `gnus-refer-article-method'." | 1154 | "Install the nnregistry refer method in `gnus-refer-article-method'." |
| 1152 | (interactive) | 1155 | (interactive) |
| 1153 | (when (featurep 'nnregistry) | 1156 | (setq gnus-refer-article-method |
| 1154 | (setq gnus-refer-article-method | 1157 | (delete-dups |
| 1155 | (delete-dups | 1158 | (append |
| 1156 | (append | 1159 | (if (listp gnus-refer-article-method) |
| 1157 | (if (listp gnus-refer-article-method) | 1160 | gnus-refer-article-method |
| 1158 | gnus-refer-article-method | 1161 | (list gnus-refer-article-method)) |
| 1159 | (list gnus-refer-article-method)) | 1162 | (list 'nnregistry))))) |
| 1160 | (list 'nnregistry)))))) | ||
| 1161 | 1163 | ||
| 1162 | (defun gnus-registry-unload-hook () | 1164 | (defun gnus-registry-unload-hook () |
| 1163 | "Uninstall the registry hooks." | 1165 | "Uninstall the registry hooks." |
diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index 68f26ea143b..e5a3ec7737d 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el | |||
| @@ -1465,7 +1465,7 @@ newsgroup." | |||
| 1465 | (push group bogus))) | 1465 | (push group bogus))) |
| 1466 | (if confirm | 1466 | (if confirm |
| 1467 | (map-y-or-n-p | 1467 | (map-y-or-n-p |
| 1468 | "Remove bogus group %s? " | 1468 | (format "Remove bogus group %%s (of %d groups)? " (length bogus)) |
| 1469 | (lambda (group) | 1469 | (lambda (group) |
| 1470 | ;; Remove all bogus subscribed groups by first killing them, and | 1470 | ;; Remove all bogus subscribed groups by first killing them, and |
| 1471 | ;; then removing them from the list of killed groups. | 1471 | ;; then removing them from the list of killed groups. |
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el index cc1c3823c9f..d9a7621baa2 100644 --- a/lisp/gnus/gnus-sum.el +++ b/lisp/gnus/gnus-sum.el | |||
| @@ -3109,16 +3109,6 @@ The following commands are available: | |||
| 3109 | ;; Simple nil-valued local variable. | 3109 | ;; Simple nil-valued local variable. |
| 3110 | (set (make-local-variable local) nil))))) | 3110 | (set (make-local-variable local) nil))))) |
| 3111 | 3111 | ||
| 3112 | (defun gnus-summary-clear-local-variables () | ||
| 3113 | (let ((locals gnus-summary-local-variables)) | ||
| 3114 | (while locals | ||
| 3115 | (if (consp (car locals)) | ||
| 3116 | (and (symbolp (caar locals)) | ||
| 3117 | (set (caar locals) nil)) | ||
| 3118 | (and (symbolp (car locals)) | ||
| 3119 | (set (car locals) nil))) | ||
| 3120 | (setq locals (cdr locals))))) | ||
| 3121 | |||
| 3122 | ;; Summary data functions. | 3112 | ;; Summary data functions. |
| 3123 | 3113 | ||
| 3124 | (defmacro gnus-data-number (data) | 3114 | (defmacro gnus-data-number (data) |
| @@ -6939,12 +6929,12 @@ displayed, no centering will be performed." | |||
| 6939 | ;; Various summary commands | 6929 | ;; Various summary commands |
| 6940 | 6930 | ||
| 6941 | (defun gnus-summary-select-article-buffer () | 6931 | (defun gnus-summary-select-article-buffer () |
| 6942 | "Reconfigure windows to show article buffer." | 6932 | "Reconfigure windows to show the article buffer." |
| 6943 | (interactive) | 6933 | (interactive) |
| 6944 | (if (not (gnus-buffer-live-p gnus-article-buffer)) | 6934 | (if (not (gnus-buffer-live-p gnus-article-buffer)) |
| 6945 | (error "There is no article buffer for this summary buffer") | 6935 | (error "There is no article buffer for this summary buffer") |
| 6946 | (gnus-configure-windows 'article) | 6936 | (select-window (get-buffer-window gnus-article-buffer)) |
| 6947 | (select-window (get-buffer-window gnus-article-buffer)))) | 6937 | (gnus-configure-windows 'only-article t))) |
| 6948 | 6938 | ||
| 6949 | (defun gnus-summary-universal-argument (arg) | 6939 | (defun gnus-summary-universal-argument (arg) |
| 6950 | "Perform any operation on all articles that are process/prefixed." | 6940 | "Perform any operation on all articles that are process/prefixed." |
| @@ -7129,13 +7119,6 @@ If FORCE (the prefix), also save the .newsrc file(s)." | |||
| 7129 | (progn | 7119 | (progn |
| 7130 | (gnus-deaden-summary) | 7120 | (gnus-deaden-summary) |
| 7131 | (setq mode nil)) | 7121 | (setq mode nil)) |
| 7132 | ;; We set all buffer-local variables to nil. It is unclear why | ||
| 7133 | ;; this is needed, but if we don't, buffer-local variables are | ||
| 7134 | ;; not garbage-collected, it seems. This would the lead to en | ||
| 7135 | ;; ever-growing Emacs. | ||
| 7136 | (gnus-summary-clear-local-variables) | ||
| 7137 | (let ((gnus-summary-local-variables gnus-newsgroup-variables)) | ||
| 7138 | (gnus-summary-clear-local-variables)) | ||
| 7139 | (when (get-buffer gnus-article-buffer) | 7122 | (when (get-buffer gnus-article-buffer) |
| 7140 | (bury-buffer gnus-article-buffer)) | 7123 | (bury-buffer gnus-article-buffer)) |
| 7141 | ;; Return to group mode buffer. | 7124 | ;; Return to group mode buffer. |
| @@ -7194,9 +7177,6 @@ If FORCE (the prefix), also save the .newsrc file(s)." | |||
| 7194 | (if (not gnus-kill-summary-on-exit) | 7177 | (if (not gnus-kill-summary-on-exit) |
| 7195 | (gnus-deaden-summary) | 7178 | (gnus-deaden-summary) |
| 7196 | (gnus-close-group group) | 7179 | (gnus-close-group group) |
| 7197 | (gnus-summary-clear-local-variables) | ||
| 7198 | (let ((gnus-summary-local-variables gnus-newsgroup-variables)) | ||
| 7199 | (gnus-summary-clear-local-variables)) | ||
| 7200 | (gnus-kill-buffer gnus-summary-buffer)) | 7180 | (gnus-kill-buffer gnus-summary-buffer)) |
| 7201 | (unless gnus-single-article-buffer | 7181 | (unless gnus-single-article-buffer |
| 7202 | (setq gnus-article-current nil)) | 7182 | (setq gnus-article-current nil)) |
| @@ -7844,7 +7824,8 @@ If at the beginning of the article, go to the next article." | |||
| 7844 | 7824 | ||
| 7845 | (defun gnus-summary-scroll-up (lines) | 7825 | (defun gnus-summary-scroll-up (lines) |
| 7846 | "Scroll up (or down) one line current article. | 7826 | "Scroll up (or down) one line current article. |
| 7847 | Argument LINES specifies lines to be scrolled up (or down if negative)." | 7827 | Argument LINES specifies lines to be scrolled up (or down if negative). |
| 7828 | If no article is selected, then the current article will be selected first." | ||
| 7848 | (interactive "p") | 7829 | (interactive "p") |
| 7849 | (gnus-configure-windows 'article) | 7830 | (gnus-configure-windows 'article) |
| 7850 | (gnus-summary-show-thread) | 7831 | (gnus-summary-show-thread) |
| @@ -7860,7 +7841,8 @@ Argument LINES specifies lines to be scrolled up (or down if negative)." | |||
| 7860 | 7841 | ||
| 7861 | (defun gnus-summary-scroll-down (lines) | 7842 | (defun gnus-summary-scroll-down (lines) |
| 7862 | "Scroll down (or up) one line current article. | 7843 | "Scroll down (or up) one line current article. |
| 7863 | Argument LINES specifies lines to be scrolled down (or up if negative)." | 7844 | Argument LINES specifies lines to be scrolled down (or up if negative). |
| 7845 | If no article is selected, then the current article will be selected first." | ||
| 7864 | (interactive "p") | 7846 | (interactive "p") |
| 7865 | (gnus-summary-scroll-up (- lines))) | 7847 | (gnus-summary-scroll-up (- lines))) |
| 7866 | 7848 | ||
diff --git a/lisp/gnus/gnus-win.el b/lisp/gnus/gnus-win.el index 4956be9fd87..df883769b77 100644 --- a/lisp/gnus/gnus-win.el +++ b/lisp/gnus/gnus-win.el | |||
| @@ -107,6 +107,9 @@ used to display Gnus windows." | |||
| 107 | (vertical 1.0 | 107 | (vertical 1.0 |
| 108 | (summary 0.25) | 108 | (summary 0.25) |
| 109 | (faq 1.0 point))) | 109 | (faq 1.0 point))) |
| 110 | (only-article | ||
| 111 | (vertical 1.0 | ||
| 112 | (article 1.0 point))) | ||
| 110 | (edit-article | 113 | (edit-article |
| 111 | (vertical 1.0 | 114 | (vertical 1.0 |
| 112 | (article 1.0 point))) | 115 | (article 1.0 point))) |
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index 9f2ea1e3471..4a5f0f79d64 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el | |||
| @@ -1491,7 +1491,9 @@ newsgroups." | |||
| 1491 | "*The number of articles which indicates a large newsgroup. | 1491 | "*The number of articles which indicates a large newsgroup. |
| 1492 | If the number of articles in a newsgroup is greater than this value, | 1492 | If the number of articles in a newsgroup is greater than this value, |
| 1493 | confirmation is required for selecting the newsgroup. | 1493 | confirmation is required for selecting the newsgroup. |
| 1494 | If it is nil, no confirmation is required." | 1494 | If it is nil, no confirmation is required. |
| 1495 | |||
| 1496 | Also see `gnus-large-ephemeral-newsgroup'." | ||
| 1495 | :group 'gnus-group-select | 1497 | :group 'gnus-group-select |
| 1496 | :type '(choice (const :tag "No limit" nil) | 1498 | :type '(choice (const :tag "No limit" nil) |
| 1497 | integer)) | 1499 | integer)) |
| @@ -3206,7 +3208,6 @@ If ARG, insert string at point." | |||
| 3206 | 3208 | ||
| 3207 | (defun gnus-continuum-version (&optional version) | 3209 | (defun gnus-continuum-version (&optional version) |
| 3208 | "Return VERSION as a floating point number." | 3210 | "Return VERSION as a floating point number." |
| 3209 | (interactive) | ||
| 3210 | (unless version | 3211 | (unless version |
| 3211 | (setq version gnus-version)) | 3212 | (setq version gnus-version)) |
| 3212 | (when (or (string-match "^\\([^ ]+\\)? ?Gnus v?\\([0-9.]+\\)$" version) | 3213 | (when (or (string-match "^\\([^ ]+\\)? ?Gnus v?\\([0-9.]+\\)$" version) |
diff --git a/lisp/gnus/mailcap.el b/lisp/gnus/mailcap.el index 524928586fc..36a710d58c9 100644 --- a/lisp/gnus/mailcap.el +++ b/lisp/gnus/mailcap.el | |||
| @@ -812,7 +812,10 @@ If NO-DECODE is non-nil, don't decode STRING." | |||
| 812 | ;;; | 812 | ;;; |
| 813 | 813 | ||
| 814 | (defvar mailcap-mime-extensions | 814 | (defvar mailcap-mime-extensions |
| 815 | '(("" . "text/plain") | 815 | '(("" . "text/plain") |
| 816 | (".1" . "text/plain") ;; Manual pages | ||
| 817 | (".3" . "text/plain") | ||
| 818 | (".8" . "text/plain") | ||
| 816 | (".abs" . "audio/x-mpeg") | 819 | (".abs" . "audio/x-mpeg") |
| 817 | (".aif" . "audio/aiff") | 820 | (".aif" . "audio/aiff") |
| 818 | (".aifc" . "audio/aiff") | 821 | (".aifc" . "audio/aiff") |
| @@ -828,6 +831,7 @@ If NO-DECODE is non-nil, don't decode STRING." | |||
| 828 | (".css" . "text/css") | 831 | (".css" . "text/css") |
| 829 | (".dvi" . "application/x-dvi") | 832 | (".dvi" . "application/x-dvi") |
| 830 | (".diff" . "text/x-patch") | 833 | (".diff" . "text/x-patch") |
| 834 | (".dpatch". "test/x-patch") | ||
| 831 | (".el" . "application/emacs-lisp") | 835 | (".el" . "application/emacs-lisp") |
| 832 | (".eps" . "application/postscript") | 836 | (".eps" . "application/postscript") |
| 833 | (".etx" . "text/x-setext") | 837 | (".etx" . "text/x-setext") |
| @@ -869,6 +873,7 @@ If NO-DECODE is non-nil, don't decode STRING." | |||
| 869 | (".pict" . "image/pict") | 873 | (".pict" . "image/pict") |
| 870 | (".png" . "image/png") | 874 | (".png" . "image/png") |
| 871 | (".pnm" . "image/x-portable-anymap") | 875 | (".pnm" . "image/x-portable-anymap") |
| 876 | (".pod" . "text/plain") | ||
| 872 | (".ppm" . "image/portable-pixmap") | 877 | (".ppm" . "image/portable-pixmap") |
| 873 | (".ps" . "application/postscript") | 878 | (".ps" . "application/postscript") |
| 874 | (".qt" . "video/quicktime") | 879 | (".qt" . "video/quicktime") |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 59d3485f7d7..d5a620b3b74 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -6049,6 +6049,7 @@ If the current line has `message-yank-prefix', insert it on the new line." | |||
| 6049 | When sending via news, also check that the REFERENCES are less | 6049 | When sending via news, also check that the REFERENCES are less |
| 6050 | than 988 characters long, and if they are not, trim them until | 6050 | than 988 characters long, and if they are not, trim them until |
| 6051 | they are." | 6051 | they are." |
| 6052 | ;; 21 is the number suggested by USEAGE. | ||
| 6052 | (let ((maxcount 21) | 6053 | (let ((maxcount 21) |
| 6053 | (count 0) | 6054 | (count 0) |
| 6054 | (cut 2) | 6055 | (cut 2) |
diff --git a/lisp/gnus/mm-encode.el b/lisp/gnus/mm-encode.el index c6ca4c40d04..296a24351bb 100644 --- a/lisp/gnus/mm-encode.el +++ b/lisp/gnus/mm-encode.el | |||
| @@ -42,15 +42,8 @@ | |||
| 42 | If the encoding is `qp-or-base64', then either quoted-printable | 42 | If the encoding is `qp-or-base64', then either quoted-printable |
| 43 | or base64 will be used, depending on what is more efficient. | 43 | or base64 will be used, depending on what is more efficient. |
| 44 | 44 | ||
| 45 | `qp-or-base64' has another effect. It will fold long lines so that | 45 | This list is only consulted when encoding MIME parts in the |
| 46 | MIME parts may not be broken by MTA. So do `quoted-printable' and | 46 | bodies -- not for the regular non-MIME-ish messages." |
| 47 | `base64'. | ||
| 48 | |||
| 49 | Note: It affects body encoding only when a part is a raw forwarded | ||
| 50 | message (which will be made by `gnus-summary-mail-forward' with the | ||
| 51 | arg 2 for example) or is neither the text/* type nor the message/* | ||
| 52 | type. Even though in those cases, you can use the `encoding' MML tag | ||
| 53 | to specify encoding of non-ASCII MIME parts." | ||
| 54 | :type '(repeat (list (regexp :tag "MIME type") | 47 | :type '(repeat (list (regexp :tag "MIME type") |
| 55 | (choice :tag "encoding" | 48 | (choice :tag "encoding" |
| 56 | (const 7bit) | 49 | (const 7bit) |
diff --git a/lisp/gnus/nndoc.el b/lisp/gnus/nndoc.el index 588eeb11680..46d775a345f 100644 --- a/lisp/gnus/nndoc.el +++ b/lisp/gnus/nndoc.el | |||
| @@ -74,14 +74,14 @@ from the document.") | |||
| 74 | (mbox | 74 | (mbox |
| 75 | (article-begin-function . nndoc-mbox-article-begin) | 75 | (article-begin-function . nndoc-mbox-article-begin) |
| 76 | (body-end-function . nndoc-mbox-body-end)) | 76 | (body-end-function . nndoc-mbox-body-end)) |
| 77 | (mime-parts | ||
| 78 | (generate-head-function . nndoc-generate-mime-parts-head) | ||
| 79 | (article-transform-function . nndoc-transform-mime-parts)) | ||
| 80 | (babyl | 77 | (babyl |
| 81 | (article-begin . "\^_\^L *\n") | 78 | (article-begin . "\^_\^L *\n") |
| 82 | (body-end . "\^_") | 79 | (body-end . "\^_") |
| 83 | (body-begin-function . nndoc-babyl-body-begin) | 80 | (body-begin-function . nndoc-babyl-body-begin) |
| 84 | (head-begin-function . nndoc-babyl-head-begin)) | 81 | (head-begin-function . nndoc-babyl-head-begin)) |
| 82 | (mime-parts | ||
| 83 | (generate-head-function . nndoc-generate-mime-parts-head) | ||
| 84 | (article-transform-function . nndoc-transform-mime-parts)) | ||
| 85 | (exim-bounce | 85 | (exim-bounce |
| 86 | (article-begin . "^------ This is a copy of the message, including all the headers. ------\n\n") | 86 | (article-begin . "^------ This is a copy of the message, including all the headers. ------\n\n") |
| 87 | (body-end-function . nndoc-exim-bounce-body-end-function)) | 87 | (body-end-function . nndoc-exim-bounce-body-end-function)) |
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el index 70aa573525f..0aaa797b835 100644 --- a/lisp/gnus/nnimap.el +++ b/lisp/gnus/nnimap.el | |||
| @@ -623,10 +623,11 @@ textual parts.") | |||
| 623 | (nnimap-update-infos marks (list info))) | 623 | (nnimap-update-infos marks (list info))) |
| 624 | (goto-char (point-max)) | 624 | (goto-char (point-max)) |
| 625 | (let ((uidnext (nth 5 (car marks)))) | 625 | (let ((uidnext (nth 5 (car marks)))) |
| 626 | (setq high (if uidnext | 626 | (setq high (or (if uidnext |
| 627 | (1- uidnext) | 627 | (1- uidnext) |
| 628 | (nth 3 (car marks))) | 628 | (nth 3 (car marks))) |
| 629 | low (or (nth 4 (car marks)) uidnext))))) | 629 | 0) |
| 630 | low (or (nth 4 (car marks)) uidnext 1))))) | ||
| 630 | (erase-buffer) | 631 | (erase-buffer) |
| 631 | (insert | 632 | (insert |
| 632 | (format | 633 | (format |
| @@ -912,6 +913,16 @@ textual parts.") | |||
| 912 | (or highest exists))))))))) | 913 | (or highest exists))))))))) |
| 913 | t)))) | 914 | t)))) |
| 914 | 915 | ||
| 916 | (deffoo nnimap-request-newgroups (date &optional server) | ||
| 917 | (nnimap-possibly-change-group nil server) | ||
| 918 | (with-current-buffer nntp-server-buffer | ||
| 919 | (erase-buffer) | ||
| 920 | (dolist (group (with-current-buffer (nnimap-buffer) | ||
| 921 | (nnimap-get-groups))) | ||
| 922 | (unless (assoc group nnimap-current-infos) | ||
| 923 | ;; Insert dummy numbers here -- they don't matter. | ||
| 924 | (insert (format "%S 0 1 y\n" group)))))) | ||
| 925 | |||
| 915 | (deffoo nnimap-retrieve-group-data-early (server infos) | 926 | (deffoo nnimap-retrieve-group-data-early (server infos) |
| 916 | (when (nnimap-possibly-change-group nil server) | 927 | (when (nnimap-possibly-change-group nil server) |
| 917 | (with-current-buffer (nnimap-buffer) | 928 | (with-current-buffer (nnimap-buffer) |
| @@ -990,7 +1001,9 @@ textual parts.") | |||
| 990 | (nnimap-update-info info (cdr (assoc group flags)))))) | 1001 | (nnimap-update-info info (cdr (assoc group flags)))))) |
| 991 | 1002 | ||
| 992 | (defun nnimap-update-info (info marks) | 1003 | (defun nnimap-update-info (info marks) |
| 993 | (when marks | 1004 | (when (and marks |
| 1005 | ;; Ignore groups with no UIDNEXT values. | ||
| 1006 | (nth 4 marks)) | ||
| 994 | (destructuring-bind (existing flags high low uidnext start-article | 1007 | (destructuring-bind (existing flags high low uidnext start-article |
| 995 | permanent-flags) marks | 1008 | permanent-flags) marks |
| 996 | (let ((group (gnus-info-group info)) | 1009 | (let ((group (gnus-info-group info)) |
diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el index 23cb604d552..463f87e44fc 100644 --- a/lisp/gnus/nnmail.el +++ b/lisp/gnus/nnmail.el | |||
| @@ -104,7 +104,9 @@ mail belongs in that group. | |||
| 104 | 104 | ||
| 105 | The last element should always have \"\" as the regexp. | 105 | The last element should always have \"\" as the regexp. |
| 106 | 106 | ||
| 107 | This variable can also have a function as its value." | 107 | This variable can also have a function as its value, and it can |
| 108 | also have a fancy split method as its value. See | ||
| 109 | `nnmail-split-fancy' for an explanation of that syntax." | ||
| 108 | :group 'nnmail-split | 110 | :group 'nnmail-split |
| 109 | :type '(choice (repeat :tag "Alist" (group (string :tag "Name") | 111 | :type '(choice (repeat :tag "Alist" (group (string :tag "Name") |
| 110 | (choice regexp function))) | 112 | (choice regexp function))) |
| @@ -1145,21 +1147,33 @@ FUNC will be called with the group name to determine the article number." | |||
| 1145 | (run-hooks 'nnmail-split-hook) | 1147 | (run-hooks 'nnmail-split-hook) |
| 1146 | (when (setq nnmail-split-tracing trace) | 1148 | (when (setq nnmail-split-tracing trace) |
| 1147 | (setq nnmail-split-trace nil)) | 1149 | (setq nnmail-split-trace nil)) |
| 1148 | (if (and (symbolp nnmail-split-methods) | 1150 | (if (or (and (symbolp nnmail-split-methods) |
| 1149 | (fboundp nnmail-split-methods)) | 1151 | (fboundp nnmail-split-methods)) |
| 1150 | (let ((split | 1152 | (and (listp nnmail-split-methods) |
| 1151 | (condition-case error-info | 1153 | ;; Not a regular split method, so it has to be a |
| 1152 | ;; `nnmail-split-methods' is a function, so we | 1154 | ;; fancy one. |
| 1153 | ;; just call this function here and use the | 1155 | (not (let ((top-element (car-safe nnmail-split-methods))) |
| 1154 | ;; result. | 1156 | (and (= 2 (length top-element)) |
| 1155 | (or (funcall nnmail-split-methods) | 1157 | (stringp (nth 0 top-element)) |
| 1156 | (and (not nnmail-inhibit-default-split-group) | 1158 | (stringp (nth 1 top-element))))))) |
| 1157 | '("bogus"))) | 1159 | (let* ((method-function |
| 1158 | (error | 1160 | (if (and (symbolp nnmail-split-methods) |
| 1159 | (nnheader-message | 1161 | (fboundp nnmail-split-methods)) |
| 1160 | 5 "Error in `nnmail-split-methods'; using `bogus' mail group: %S" error-info) | 1162 | nnmail-split-methods |
| 1161 | (sit-for 1) | 1163 | 'nnmail-split-fancy)) |
| 1162 | '("bogus"))))) | 1164 | (split |
| 1165 | (condition-case error-info | ||
| 1166 | ;; `nnmail-split-methods' is a function, so we | ||
| 1167 | ;; just call this function here and use the | ||
| 1168 | ;; result. | ||
| 1169 | (or (funcall method-function) | ||
| 1170 | (and (not nnmail-inhibit-default-split-group) | ||
| 1171 | '("bogus"))) | ||
| 1172 | (error | ||
| 1173 | (nnheader-message | ||
| 1174 | 5 "Error in `nnmail-split-methods'; using `bogus' mail group: %S" error-info) | ||
| 1175 | (sit-for 1) | ||
| 1176 | '("bogus"))))) | ||
| 1163 | (setq split (mm-delete-duplicates split)) | 1177 | (setq split (mm-delete-duplicates split)) |
| 1164 | ;; The article may be "cross-posted" to `junk'. What | 1178 | ;; The article may be "cross-posted" to `junk'. What |
| 1165 | ;; to do? Just remove the `junk' spec. Don't really | 1179 | ;; to do? Just remove the `junk' spec. Don't really |
diff --git a/lisp/gnus/nnmbox.el b/lisp/gnus/nnmbox.el index bc5c01e51ad..003c424f58d 100644 --- a/lisp/gnus/nnmbox.el +++ b/lisp/gnus/nnmbox.el | |||
| @@ -640,6 +640,7 @@ | |||
| 640 | nnmbox-mbox-file t t)))) | 640 | nnmbox-mbox-file t t)))) |
| 641 | (mm-enable-multibyte) | 641 | (mm-enable-multibyte) |
| 642 | (buffer-disable-undo) | 642 | (buffer-disable-undo) |
| 643 | (gnus-add-buffer) | ||
| 643 | 644 | ||
| 644 | ;; Go through the group alist and compare against the mbox file. | 645 | ;; Go through the group alist and compare against the mbox file. |
| 645 | (while alist | 646 | (while alist |