[xyzzy:05130] iso-8859-1 の判別
- Subject: [xyzzy:05130] iso-8859-1 の判別
- From: "Makoto Takahashi" <GGB01067@xxxxxxxxxxx>
- X-mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0)
便利に使わせていただいています。
htmlでiso-8859-1を指定して開くのが面倒なので、
http://www.asahi-net.or.jp/~ez3k-msym/comp/mule-ucs.htm
の益山さんの<meta>タグによる自動判別の真似ができないかと
(defvar html-xml-charset-decl-alist
'(("\\.html?$" nil
"<meta\\b[^>]+content-type[^>]+charset *= *\\([a-zA-Z0-9_.-]+\\)")
("\\.xml$" utf-8
"<\\?xml\\b[^>]+encoding=['\"]\\([a-zA-Z0-9_.-]+\\)")))
(defvar html-xml-auto-coding-chain)
(defun html-xml-auto-coding (filename size)
(or (funcall html-xml-auto-coding-chain filename size)
(let ((case-fold-search t) (alist html-xml-charset-decl-alist)
search-limit pat cs string)
(while (and alist (not pat))
(if (string-match (car (car alist)) filename)
(setq pat (cdr (car alist))))
(setq alist (cdr alist)))
(when pat
(goto-char (point-min))
(setq search-limit (+ (min size 4096) (point)))
(if (not (search-forward-regexp (cadr pat) search-limit t))
(car pat)
(setq string (downcase (match-string 1)))
(while (string-match "^x-" string)
(setq string (substring string 2)))
(setq cs (intern string))
(if (coding-system-p cs) cs))))))
(setq html-xml-auto-coding-chain set-auto-coding-function
set-auto-coding-function 'html-xml-auto-coding)
を持ってきてみたのですが、うまくxyzzy化できません。直接には最後のfunctionが
not-foundになっています。
何かヒントをいただけないでしょうか?
高橋誠