# HG changeset patch # User Katsumi Yamaoka # Date 1289341056 0 # Node ID eb9988805a376dc584610a679f2309f5352ca061 # Parent 132f2dfd549f0352478361c36b073a5479c55d24 Merge changes made in Gnus trunk. message.el (message-mailto): New function. message.el (message-mailto): Should accept other parameters. message.el (message-mailto): Remove since it duplicates browse-url-mailto functionality. shr.el (shr-browse-url): Call browse-url-mailto for mailto: links. message.el (message-subject-trailing-was-ask-regexp): A ] in a [] regexp doesn't need quoting. gnus-art.el (article-treat-non-ascii): New command and keystroke. shr.el (browse-url-mailto): Autoload. gnus.texi (Article Washing): Document gnus-article-treat-non-ascii. diff -r 132f2dfd549f -r eb9988805a37 doc/misc/ChangeLog --- a/doc/misc/ChangeLog Tue Nov 09 15:07:10 2010 -0500 +++ b/doc/misc/ChangeLog Tue Nov 09 22:17:36 2010 +0000 @@ -1,3 +1,7 @@ +2010-11-09 Lars Magne Ingebrigtsen + + * gnus.texi (Article Washing): Document gnus-article-treat-non-ascii. + 2010-11-09 Jay Belanger * calc.texi: Use emacsver.texi to determine Emacs version. diff -r 132f2dfd549f -r eb9988805a37 doc/misc/gnus.texi --- a/doc/misc/gnus.texi Tue Nov 09 15:07:10 2010 -0500 +++ b/doc/misc/gnus.texi Tue Nov 09 22:17:36 2010 +0000 @@ -9664,6 +9664,17 @@ like @code{\222} or @code{\264} where you're expecting some kind of apostrophe or quotation mark, then try this wash. +@item W A +@kindex W A (Summary) +@findex gnus-article-treat-non-ascii +@cindex Unicode +@cindex Non-@acronym{ASCII} +Translate many non-@acronym{ASCII} characters into their +@acronym{ASCII} equivalents (@code{gnus-article-treat-non-ascii}). +This is mostly useful if you're on a terminal that has a limited font +and does't show accented characters, ``advanced'' punctuation, and the +like. For instance, @samp{»} is tranlated into @samp{>>}, and so on. + @item W Y f @kindex W Y f (Summary) @findex gnus-article-outlook-deuglify-article diff -r 132f2dfd549f -r eb9988805a37 lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Tue Nov 09 15:07:10 2010 -0500 +++ b/lisp/gnus/ChangeLog Tue Nov 09 22:17:36 2010 +0000 @@ -1,3 +1,12 @@ +2010-11-09 Lars Magne Ingebrigtsen + + * shr.el (browse-url-mailto): Autoload. + + * gnus-art.el (article-treat-non-ascii): New command and keystroke. + + * message.el (message-subject-trailing-was-ask-regexp): A ] in a [] + regexp doesn't need quoting. + 2010-11-09 Sven Joachim * message.el (message-subject-trailing-was-ask-regexp) @@ -8,9 +17,14 @@ * nnbabyl.el (nnbabyl-request-move-article, nnbabyl-delete-mail) (nnbabyl-check-mbox): Use point-at-bol. -2010-11-09 Katsumi Yamaoka - - * message.el (message-subject-trailing-was-regexp): Fix default value. +2010-11-08 Lars Magne Ingebrigtsen + + * shr.el (shr-browse-url): Call browse-url-mailto for mailto: links. + + * message.el (message-mailto): New function. + (message-mailto): Should accept other parameters. + (message-mailto): Remove since it duplicates browse-url-mailto + functionality. 2010-11-07 Lars Magne Ingebrigtsen diff -r 132f2dfd549f -r eb9988805a37 lisp/gnus/gnus-art.el --- a/lisp/gnus/gnus-art.el Tue Nov 09 15:07:10 2010 -0500 +++ b/lisp/gnus/gnus-art.el Tue Nov 09 22:17:36 2010 +0000 @@ -2114,6 +2114,27 @@ (interactive) (article-translate-strings gnus-article-dumbquotes-map)) +(defun article-treat-non-ascii () + "Translate many Unicode characters into their ASCII equivalents." + (interactive) + (require 'org-entities) + (let ((table (make-char-table nil))) + (dolist (elem org-entities) + (when (and (listp elem) + (= (length (nth 6 elem)) 1)) + (set-char-table-range table + (aref (nth 6 elem) 0) + (nth 4 elem)))) + (save-excursion + (when (article-goto-body) + (let ((inhibit-read-only t) + replace) + (while (not (eobp)) + (if (not (setq replace (aref table (following-char)))) + (forward-char 1) + (delete-char 1) + (insert replace)))))))) + (defun article-translate-characters (from to) "Translate all characters in the body of the article according to FROM and TO. FROM is a string of characters to translate from; to is a string of @@ -4248,6 +4269,7 @@ article-date-lapsed article-emphasize article-treat-dumbquotes + article-treat-non-ascii article-normalize-headers ;;(article-show-all . gnus-article-show-all-headers) ))) diff -r 132f2dfd549f -r eb9988805a37 lisp/gnus/gnus-sum.el --- a/lisp/gnus/gnus-sum.el Tue Nov 09 15:07:10 2010 -0500 +++ b/lisp/gnus/gnus-sum.el Tue Nov 09 22:17:36 2010 +0000 @@ -2096,6 +2096,7 @@ "a" gnus-article-strip-headers-in-body ;; mnemonic: wash archive "p" gnus-article-verify-x-pgp-sig "d" gnus-article-treat-dumbquotes + "U" gnus-article-treat-non-ascii "i" gnus-summary-idna-message) (gnus-define-keys (gnus-summary-wash-deuglify-map "Y" gnus-summary-wash-map) @@ -2420,6 +2421,7 @@ gnus-article-remove-leading-whitespace t]) ["Overstrike" gnus-article-treat-overstrike t] ["Dumb quotes" gnus-article-treat-dumbquotes t] + ["Non-ASCII" gnus-article-treat-non-ascii t] ["Emphasis" gnus-article-emphasize t] ["Word wrap" gnus-article-fill-cited-article t] ["Fill long lines" gnus-article-fill-long-lines t] diff -r 132f2dfd549f -r eb9988805a37 lisp/gnus/message.el --- a/lisp/gnus/message.el Tue Nov 09 15:07:10 2010 -0500 +++ b/lisp/gnus/message.el Tue Nov 09 22:17:36 2010 +0000 @@ -322,7 +322,7 @@ :group 'message-various) (defcustom message-subject-trailing-was-ask-regexp - "[ \t]*\\([[(]+[Ww][Aa][Ss]:?[ \t]*.*[\])]+\\)" + "[ \t]*\\([[(]+[Ww][Aa][Ss]:?[ \t]*.*[])]+\\)" "*Regexp matching \"(was: )\" in the subject line. The function `message-strip-subject-trailing-was' uses this regexp if @@ -331,20 +331,20 @@ `message-subject-trailing-was-regexp' instead. It is okay to create some false positives here, as the user is asked." - :version "24.1" + :version "22.1" :group 'message-various :link '(custom-manual "(message)Message Headers") :type 'regexp) (defcustom message-subject-trailing-was-regexp - "[ \t]*\\((*[Ww][Aa][Ss]:?[ \t]*.*)\\)" + "[ \t]*\\((*[Ww][Aa][Ss]:[ \t]*.*)\\)" "*Regexp matching \"(was: )\" in the subject line. If `message-subject-trailing-was-query' is set to t, the subject is matched against `message-subject-trailing-was-regexp' in `message-strip-subject-trailing-was'. You should use a regexp creating very few false positives here." - :version "24.1" + :version "22.1" :group 'message-various :link '(custom-manual "(message)Message Headers") :type 'regexp) diff -r 132f2dfd549f -r eb9988805a37 lisp/gnus/shr.el --- a/lisp/gnus/shr.el Tue Nov 09 15:07:10 2010 -0500 +++ b/lisp/gnus/shr.el Tue Nov 09 22:17:36 2010 +0000 @@ -344,7 +344,7 @@ ((not url) (message "No link under point")) ((string-match "^mailto:" url) - (gnus-url-mailto url)) + (browse-url-mailto url)) (t (browse-url url))))) @@ -418,6 +418,7 @@ ;; url-cache-extract autoloads url-cache. (declare-function url-cache-create-filename "url-cache" (url)) (autoload 'mm-disable-multibyte "mm-util") +(autoload 'browse-url-mailto "browse-url") (defun shr-get-image-data (url) "Get image data for URL.