diff options
author | Jirka Kosek <jirka@kosek.cz> | 2011-10-18 11:02:47 +0300 |
---|---|---|
committer | Juri Linkov <juri@jurta.org> | 2011-10-18 11:02:47 +0300 |
commit | b31a56772363013e4aed416c6b05e77c7b5a9f07 (patch) | |
tree | 2806d7ca535392bdf9d2418305dfc16e4a24af3f /lisp | |
parent | 80c6d77f2dd99752b1a4090350414a66b7409e7e (diff) | |
download | emacs-b31a56772363013e4aed416c6b05e77c7b5a9f07.tar.gz |
* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
Add support for detecting encoding in HTML5 specified only as
<meta charset="UTF-8">. Implementation just makes http-equiv and
content-type parts from HTML4 encoding string optional.
Fixes: debbugs:9716
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/ChangeLog | 7 | ||||
-rw-r--r-- | lisp/international/mule.el | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0562f2f2fa0..7f03894e728 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2011-10-18 Jirka Kosek <jirka@kosek.cz> (tiny change) + + * international/mule.el (sgml-html-meta-auto-coding-function): + Add support for detecting encoding in HTML5 specified only as + <meta charset="UTF-8">. Implementation just makes http-equiv and + content-type parts from HTML4 encoding string optional. (Bug#9716) + 2011-10-18 Glenn Morris <rgm@gnu.org> * vc/vc.el (vc-initial-comment): Mark as obsolete. (Bug#9745) diff --git a/lisp/international/mule.el b/lisp/international/mule.el index 4a387a233a0..cac37b3b8c5 100644 --- a/lisp/international/mule.el +++ b/lisp/international/mule.el @@ -2403,8 +2403,8 @@ This function is intended to be added to `auto-coding-functions'." ;; (allowing for whitespace at bob). Note: 'DOCTYPE NETSCAPE' is ;; useful for Mozilla bookmark files. (when (and (re-search-forward "\\`[[:space:]\n]*\\(<!doctype[[:space:]\n]+\\(html\\|netscape\\)\\|<html\\)" size t) - (re-search-forward "<meta\\s-+http-equiv=[\"']?content-type[\"']?\\s-+content=[\"']text/\\sw+;\\s-*charset=\\(.+?\\)[\"']" size t)) - (let* ((match (match-string 1)) + (re-search-forward "<meta\\s-+\\(http-equiv=[\"']?content-type[\"']?\\s-+content=[\"']text/\\sw+;\\s-*\\)?charset=[\"']?\\(.+?\\)[\"'\\s-/>]" size t)) + (let* ((match (match-string 2)) (sym (intern (downcase match)))) (if (coding-system-p sym) sym |