articles (`gnus-article-treat-ansi-sequences').
** International host names (IDNA) can now be decoded inside article
-bodies using `W i' (`gnus-summary-idna-message').
+bodies using `W i' (`gnus-summary-idna-message'). This require that
+GNU Libidn (`http://www.gnu.org/software/libidn/') has been installed.
** Gnus includes an Emacs Lisp SASL library.
2005-01-16 Simon Josefsson <jas@extundo.com>
+ * gnus-sum.el (gnus-summary-idna-message): Fail gracefully if
+ idn/idna.el isn't available.
+ (gnus-summary-idna-message): Doc fix. Suggested by Michael Cook
+ <michael@waxrat.com>.
+
* hashcash.el: Remove non-FSF copyright header.
* hashcash.el (hashcash-extra-generate-parameters): New variable.
"Decode IDNA encoded domain names in the current articles.
IDNA encoded domain names looks like `xn--bar'. If a string
remain unencoded after running this function, it is likely an
-invalid IDNA string (`xn--bar' is invalid)."
+invalid IDNA string (`xn--bar' is invalid).
+
+You must have GNU Libidn (`http://www.gnu.org/software/libidn/')
+installed for this command to work."
(interactive "P")
- (gnus-summary-select-article)
- (let ((mail-header-separator ""))
- (gnus-eval-in-buffer-window gnus-article-buffer
- (save-restriction
- (widen)
- (let ((start (window-start))
- buffer-read-only)
- (while (re-search-forward "\\(xn--[-0-9a-z]+\\)" nil t)
- (replace-match (idna-to-unicode (match-string 1))))
- (set-window-start (get-buffer-window (current-buffer)) start))))))
+ (if (not (and (condition-case nil (require 'idna)
+ (file-error))
+ (mm-coding-system-p 'utf-8)
+ (executable-find idna-program)))
+ (gnus-message
+ 5 "GNU Libidn not installed properly (`idn' or `idna.el' missing)")
+ (gnus-summary-select-article)
+ (let ((mail-header-separator ""))
+ (gnus-eval-in-buffer-window gnus-article-buffer
+ (save-restriction
+ (widen)
+ (let ((start (window-start))
+ buffer-read-only)
+ (while (re-search-forward "\\(xn--[-0-9a-z]+\\)" nil t)
+ (replace-match (idna-to-unicode (match-string 1))))
+ (set-window-start (get-buffer-window (current-buffer)) start)))))))
(autoload 'unmorse-region "morse"
"Convert morse coded text in region to ordinary ASCII text."
+2005-01-16 Simon Josefsson <jas@extundo.com>
+
+ * gnus.texi (Article Washing): Add libidn URL. Suggested by
+ Michael Cook <michael@waxrat.com>.
+
+ * gnus-news.texi: Ditto.
+
2005-01-16 Xavier Maillard <zedek@gnu-rox.org> (tiny change)
* gnus-faq.texi ([4.1]): Typo.
\e$B8=:_$N5-;v$K$"$k\e(B IDNA \e$B%(%s%3!<%I$5$l$?%I%a%$%sL>$r%G%3!<%I$7$^$9!#\e(B
IDNA \e$B%(%s%3!<%I$5$l$?%I%a%$%sL>$O\e(B @samp{xn--bar} \e$B$N$h$&$K8+$($^$9!#$3$l\e(B
\e$B$r<B9T$7$?8e$GJ8;zNs$,%G%3!<%I$5$l$J$$$^$^$@$C$?$i!"$*$=$i$/$=$l$OIT@5\e(B
-\e$B$J\e(B IDNA \e$BJ8;zNs$G$7$g$&\e(B (@samp{xn--bar} \e$B$OIT@5$G$9\e(B)\e$B!#\e(B
+\e$B$J\e(B IDNA \e$BJ8;zNs$G$7$g$&\e(B (@samp{xn--bar} \e$B$OIT@5$G$9\e(B)\e$B!#$3$N%3%^%s%I$rF0$+$9\e(B
+\e$B$?$a$K!"\e(BGNU Libidn (@url{http://www.gnu.org/software/libidn/}) \e$B$r%$%s%9\e(B
+\e$B%H!<%k$7$F$$$J$1$l$P$J$j$^$;$s!#\e(B
@item W t
@item t
@item International host names (@acronym{IDNA}) can now be decoded
inside article bodies using @kbd{W i}
-(@code{gnus-summary-idna-message}).
+(@code{gnus-summary-idna-message}). This require that GNU Libidn
+(@url{http://www.gnu.org/software/libidn/}) has been installed.
@item Gnus includes an Emacs Lisp @acronym{SASL} library.
Decode IDNA encoded domain names in the current articles. IDNA
encoded domain names looks like @samp{xn--bar}. If a string remain
unencoded after running invoking this, it is likely an invalid IDNA
-string (@samp{xn--bar} is invalid).
+string (@samp{xn--bar} is invalid). You must have GNU Libidn
+(@url{http://www.gnu.org/software/libidn/}) installed for this command
+to work.
@item W t
@item t