aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2006-03-09 07:11:51 +0000
committerMiles Bader2006-03-09 07:11:51 +0000
commit61e66a158a521e1ebdaa2e547dcc98d383674a75 (patch)
tree3ec3b148d31daa853ae597aacacdf678bcdfe29e
parent66d43aea54f1d7ad2f489a99112856a3ad108bcc (diff)
downloademacs-61e66a158a521e1ebdaa2e547dcc98d383674a75.tar.gz
emacs-61e66a158a521e1ebdaa2e547dcc98d383674a75.zip
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-143
Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 52-55) - Merge from emacs--devo--0 - Update from CVS: Makefile.in (release-*): New targets. - Update from CVS
-rw-r--r--lisp/gnus/ChangeLog5
-rw-r--r--lisp/gnus/nnmail.el21
-rw-r--r--man/ChangeLog17
-rw-r--r--man/emacs-mime.texi13
-rw-r--r--man/gnus.texi95
5 files changed, 105 insertions, 46 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index f2a76109562..374c3da2994 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -7,6 +7,11 @@
7 7
8 * gnus-topic.el (gnus-topic-prepare-topic): Add gnus-tool-bar-update. 8 * gnus-topic.el (gnus-topic-prepare-topic): Add gnus-tool-bar-update.
9 9
102006-03-08 Katsumi Yamaoka <yamaoka@jpl.org>
11
12 * nnmail.el (nnmail-split-it): Invert match-partial-words behavior
13 if optional last element is specified in splits (FIELD VALUE...).
14
102006-03-06 Katsumi Yamaoka <yamaoka@jpl.org> 152006-03-06 Katsumi Yamaoka <yamaoka@jpl.org>
11 16
12 * mm-view.el (mm-w3m-cid-retrieve-1): Check carefully whether 17 * mm-view.el (mm-w3m-cid-retrieve-1): Check carefully whether
diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el
index edffd6f709a..f4275fa8ed5 100644
--- a/lisp/gnus/nnmail.el
+++ b/lisp/gnus/nnmail.el
@@ -1425,11 +1425,12 @@ See the documentation for the variable `nnmail-split-fancy' for details."
1425 1425
1426 ;; Not in cache, compute a regexp for the field/value pair. 1426 ;; Not in cache, compute a regexp for the field/value pair.
1427 (t 1427 (t
1428 (let* ((field (nth 0 split)) 1428 (let ((field (nth 0 split))
1429 (value (nth 1 split)) 1429 (value (nth 1 split))
1430 partial-front 1430 (split-rest (cddr split))
1431 partial-rear 1431 partial-front
1432 regexp) 1432 partial-rear
1433 regexp)
1433 (if (symbolp value) 1434 (if (symbolp value)
1434 (setq value (cdr (assq value nnmail-split-abbrev-alist)))) 1435 (setq value (cdr (assq value nnmail-split-abbrev-alist))))
1435 (if (and (>= (length value) 2) 1436 (if (and (>= (length value) 2)
@@ -1441,7 +1442,13 @@ See the documentation for the variable `nnmail-split-fancy' for details."
1441 (string= ".*" (substring value -2))) 1442 (string= ".*" (substring value -2)))
1442 (setq value (substring value 0 -2) 1443 (setq value (substring value 0 -2)
1443 partial-rear "")) 1444 partial-rear ""))
1444 (when nnmail-split-fancy-match-partial-words 1445 ;; Invert the match-partial-words behavior if the optional
1446 ;; last element is specified.
1447 (while (eq (car split-rest) '-)
1448 (setq split-rest (cddr split-rest)))
1449 (when (if (cadr split-rest)
1450 (not nnmail-split-fancy-match-partial-words)
1451 nnmail-split-fancy-match-partial-words)
1445 (setq partial-front "" 1452 (setq partial-front ""
1446 partial-rear "")) 1453 partial-rear ""))
1447 (setq regexp (concat "^\\(\\(" 1454 (setq regexp (concat "^\\(\\("
@@ -1456,7 +1463,7 @@ See the documentation for the variable `nnmail-split-fancy' for details."
1456 (or partial-rear "\\>"))) 1463 (or partial-rear "\\>")))
1457 (push (cons split regexp) nnmail-split-cache) 1464 (push (cons split regexp) nnmail-split-cache)
1458 ;; Now that it's in the cache, just call nnmail-split-it again 1465 ;; Now that it's in the cache, just call nnmail-split-it again
1459 ;; on the same split, which will find it immediately in the cache. 1466 ;; on the same split, which will find it immediately in the cache.
1460 (nnmail-split-it split)))))) 1467 (nnmail-split-it split))))))
1461 1468
1462(defun nnmail-expand-newtext (newtext) 1469(defun nnmail-expand-newtext (newtext)
diff --git a/man/ChangeLog b/man/ChangeLog
index f24d77e16e4..c0060317a5c 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,20 @@
12006-03-09 Katsumi Yamaoka <yamaoka@jpl.org>
2
3 * gnus.texi: Markup fix.
4 (Fancy Mail Splitting): Specify new feature.
5
62006-03-08 Katsumi Yamaoka <yamaoka@jpl.org>
7
8 * gnus.texi (Fancy Mail Splitting): Improve descriptions about
9 partial-words matching.
10
112006-03-07 Reiner Steib <Reiner.Steib@gmx.de>
12
13 * emacs-mime.texi (Display Customization): Reword image/.* stuff.
14
15 * gnus.texi (Oort Gnus): Add note about `gnus-load'.
16 (MIME Commands): Fix mm-discouraged-alternatives.
17
12006-03-08 Luc Teirlinck <teirllm@auburn.edu> 182006-03-08 Luc Teirlinck <teirllm@auburn.edu>
2 19
3 * search.texi (Regexps): More accurately describe which characters 20 * search.texi (Regexps): More accurately describe which characters
diff --git a/man/emacs-mime.texi b/man/emacs-mime.texi
index 69c1c21b5aa..1049f95b0fd 100644
--- a/man/emacs-mime.texi
+++ b/man/emacs-mime.texi
@@ -322,13 +322,14 @@ you could say something like:
322 (remove "text/html" mm-automatic-display)) 322 (remove "text/html" mm-automatic-display))
323@end lisp 323@end lisp
324 324
325Adding @code{"image/.*"} might also be useful. Spammers use it as the 325Adding @code{"image/.*"} might also be useful. Spammers use images as
326prefered part of @samp{multipart/alternative} messages, and you might 326the prefered part of @samp{multipart/alternative} messages, so you might
327not notice there are other parts. See also 327not notice there are other parts. See also
328@code{gnus-buttonized-mime-types} (@pxref{MIME Commands, ,MIME Commands, 328@code{gnus-buttonized-mime-types}, @ref{MIME Commands, ,MIME Commands,
329gnus, Gnus Manual}), to which adding @code{"multipart/alternative"} 329gnus, Gnus Manual}. After adding @code{"multipart/alternative"} to
330enables you to choose manually one of two types those mails include. 330@code{gnus-buttonized-mime-types} you can choose manually which
331For example, you can set those variables like: 331alternative you'd like to view. For example, you can set those
332variables like:
332 333
333@lisp 334@lisp
334(setq gnus-buttonized-mime-types 335(setq gnus-buttonized-mime-types
diff --git a/man/gnus.texi b/man/gnus.texi
index 3f60c3f603a..72596ed26ce 100644
--- a/man/gnus.texi
+++ b/man/gnus.texi
@@ -9369,10 +9369,10 @@ Display "multipart/alternative" parts as "multipart/mixed".
9369Display "multipart/related" parts as "multipart/mixed". 9369Display "multipart/related" parts as "multipart/mixed".
9370 9370
9371If displaying "text/html" is discouraged, see 9371If displaying "text/html" is discouraged, see
9372@code{mm-discouraged-alternatives} in @ref{Display Customization, 9372@code{mm-discouraged-alternatives}, images or other material inside a
9373Display Customization, , emacs-mime, Emacs-Mime Manual}. Images or 9373"multipart/related" part might be overlooked when this variable is
9374other material inside a "multipart/related" part might be overlooked 9374@code{nil}. @ref{Display Customization, Display Customization, ,
9375when this variable is @code{nil}. 9375emacs-mime, Emacs-Mime Manual}.
9376 9376
9377@vindex gnus-mime-display-multipart-as-mixed 9377@vindex gnus-mime-display-multipart-as-mixed
9378@item gnus-mime-display-multipart-as-mixed 9378@item gnus-mime-display-multipart-as-mixed
@@ -14006,7 +14006,8 @@ splits. Here are the possible split syntaxes:
14006If the split is a string, that will be taken as a group name. Normal 14006If the split is a string, that will be taken as a group name. Normal
14007regexp match expansion will be done. See below for examples. 14007regexp match expansion will be done. See below for examples.
14008 14008
14009@item (@var{field} @var{value} [- @var{restrict} [@dots{}] ] @var{split}) 14009@c Don't fold this line.
14010@item (@var{field} @var{value} [- @var{restrict} [@dots{}] ] @var{split} [@var{invert-match-partial-words}])
14010If the split is a list, the first element of which is a string, then 14011If the split is a list, the first element of which is a string, then
14011store the message as specified by @var{split}, if header @var{field} 14012store the message as specified by @var{split}, if header @var{field}
14012(a regexp) contains @var{value} (also a regexp). If @var{restrict} 14013(a regexp) contains @var{value} (also a regexp). If @var{restrict}
@@ -14014,6 +14015,11 @@ store the message as specified by @var{split}, if header @var{field}
14014the end of the matched @var{value}, the @var{split} is ignored. If 14015the end of the matched @var{value}, the @var{split} is ignored. If
14015none of the @var{restrict} clauses match, @var{split} is processed. 14016none of the @var{restrict} clauses match, @var{split} is processed.
14016 14017
14018The last element @var{invert-match-partial-words} is optional. If it is
14019not omitted and the value is non-@code{nil}, the match-partial-words
14020behavior controlled by the @code{nnmail-split-fancy-match-partial-words}
14021variable (see below) will be inverted. (New in Gnus 5.10.7)
14022
14017@item (| @var{split} @dots{}) 14023@item (| @var{split} @dots{})
14018If the split is a list, and the first element is @code{|} (vertical 14024If the split is a list, and the first element is @code{|} (vertical
14019bar), then process each @var{split} until one of them matches. A 14025bar), then process each @var{split} until one of them matches. A
@@ -14067,10 +14073,50 @@ If the split is @code{nil}, it is ignored.
14067@end table 14073@end table
14068 14074
14069In these splits, @var{field} must match a complete field name. 14075In these splits, @var{field} must match a complete field name.
14070@var{value} must match a complete word according to the fundamental mode 14076
14071syntax table. You can use @code{.*} in the regexps to match partial 14077Normally, @var{value} in these splits must match a complete @emph{word}
14072field names or words. In other words, all @var{value}'s are wrapped in 14078according to the fundamental mode syntax table. In other words, all
14073@samp{\<} and @samp{\>} pairs. 14079@var{value}'s will be implicitly surrounded by @code{\<...\>} markers,
14080which are word delimiters. Therefore, if you use the following split,
14081for example,
14082
14083@example
14084(any "joe" "joemail")
14085@end example
14086
14087@noindent
14088messages sent from @samp{joedavis@@foo.org} will normally not be filed
14089in @samp{joemail}. If you want to alter this behavior, you can use any
14090of the following three ways:
14091
14092@enumerate
14093@item
14094@vindex nnmail-split-fancy-match-partial-words
14095You can set the @code{nnmail-split-fancy-match-partial-words} variable
14096to non-@code{nil} in order to ignore word boundaries and instead the
14097match becomes more like a grep. This variable controls whether partial
14098words are matched during fancy splitting. The default value is
14099@code{nil}.
14100
14101Note that it influences all @var{value}'s in your split rules.
14102
14103@item
14104@var{value} beginning with @code{.*} ignores word boundaries in front of
14105a word. Similarly, if @var{value} ends with @code{.*}, word boundaries
14106in the rear of a word will be ignored. For example, the @var{value}
14107@code{"@@example\\.com"} does not match @samp{foo@@example.com} but
14108@code{".*@@example\\.com"} does.
14109
14110@item
14111You can set the @var{invert-match-partial-words} flag in your split
14112rules of the @samp{(@var{field} @var{value} @dots{})} types,
14113aforementioned in this section. If the flag is set, word boundaries on
14114both sides of a word are ignored even if
14115@code{nnmail-split-fancy-match-partial-words} is @code{nil}.
14116Contrarily, if the flag is set, word boundaries are not ignored even if
14117@code{nnmail-split-fancy-match-partial-words} is non-@code{nil}. (New
14118in Gnus 5.10.7)
14119@end enumerate
14074 14120
14075@vindex nnmail-split-abbrev-alist 14121@vindex nnmail-split-abbrev-alist
14076@var{field} and @var{value} can also be Lisp symbols, in that case 14122@var{field} and @var{value} can also be Lisp symbols, in that case
@@ -14118,25 +14164,6 @@ groups when users send to an address using different case
14118(i.e. mailing-list@@domain vs Mailing-List@@Domain). The default value 14164(i.e. mailing-list@@domain vs Mailing-List@@Domain). The default value
14119is @code{t}. 14165is @code{t}.
14120 14166
14121@vindex nnmail-split-fancy-match-partial-words
14122@code{nnmail-split-fancy-match-partial-words} controls whether partial
14123words are matched during fancy splitting.
14124
14125Normally, regular expressions given in @code{nnmail-split-fancy} are
14126implicitly surrounded by @code{\<...\>} markers, which are word
14127delimiters. If this variable is true, they are not implicitly
14128surrounded by anything.
14129
14130@example
14131(any "joe" "joemail")
14132@end example
14133
14134In this example, messages sent from @samp{joedavis@@foo.org} will
14135normally not be filed in @samp{joemail}. With
14136@code{nnmail-split-fancy-match-partial-words} set to @code{t},
14137however, the match will happen. In effect, the requirement of a word
14138boundary is removed and instead the match becomes more like a grep.
14139
14140@findex nnmail-split-fancy-with-parent 14167@findex nnmail-split-fancy-with-parent
14141@code{nnmail-split-fancy-with-parent} is a function which allows you to 14168@code{nnmail-split-fancy-with-parent} is a function which allows you to
14142split followups into the same groups their parents are in. Sometimes 14169split followups into the same groups their parents are in. Sometimes
@@ -22295,11 +22322,11 @@ default.
22295@item gnus-use-toolbar 22322@item gnus-use-toolbar
22296@vindex gnus-use-toolbar 22323@vindex gnus-use-toolbar
22297This variable specifies the position to display the toolbar. If 22324This variable specifies the position to display the toolbar. If
22298@code{nil}, don't display toolbars. If it is non-nil, it should be one 22325@code{nil}, don't display toolbars. If it is non-@code{nil}, it should
22299of the symbols @code{default}, @code{top}, @code{bottom}, @code{right}, 22326be one of the symbols @code{default}, @code{top}, @code{bottom},
22300and @code{left}. @code{default} means to use the default toolbar, the 22327@code{right}, and @code{left}. @code{default} means to use the default
22301rest mean to display the toolbar on the place which those names show. 22328toolbar, the rest mean to display the toolbar on the place which those
22302The default is @code{default}. 22329names show. The default is @code{default}.
22303 22330
22304@item gnus-toolbar-thickness 22331@item gnus-toolbar-thickness
22305@vindex gnus-toolbar-thickness 22332@vindex gnus-toolbar-thickness
@@ -26221,6 +26248,8 @@ groups.
26221A new file from Raymond Scholz @email{rscholz@@zonix.de} for deuglifying 26248A new file from Raymond Scholz @email{rscholz@@zonix.de} for deuglifying
26222broken Outlook (Express) articles. 26249broken Outlook (Express) articles.
26223 26250
26251@c FIXME: `gnus-load' is mentioned in README, which is not included in
26252@c CVS. We should find a better place for this item.
26224@item 26253@item
26225@code{(require 'gnus-load)} 26254@code{(require 'gnus-load)}
26226 26255