X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fest.git;a=blobdiff_plain;f=cwiki-common.el;h=a5fc345fb72782dc5b957b3b4d217c6349919c19;hp=291a138348cf82d721cf3f065d0b9b43ec0f3449;hb=HEAD;hpb=ebe341d23879fafeffb99e9bf85e4b8e869f1493 diff --git a/cwiki-common.el b/cwiki-common.el index 291a138..f4e7e6f 100644 --- a/cwiki-common.el +++ b/cwiki-common.el @@ -63,23 +63,50 @@ (mount-char-attribute-table 'abstract-glyph@iwds-1) (mount-char-attribute-table 'abstract-glyph@iwds-1/confluented) +(mount-char-attribute-table '=hdic-tsj-glyph-id) +(mount-char-attribute-table '=hdic-syp-entry-id) +(mount-char-attribute-table '=hdic-ktb-entry-id) +(mount-char-attribute-table '=hdic-ktb-seal-glyph-id) +(mount-char-attribute-table 'hdic-tsj-word-id) +(mount-char-attribute-table 'hdic-tsj-word) +(mount-char-attribute-table 'hdic-tsj-word-description) +(mount-char-attribute-table 'hdic-tsj-word-remarks) +(mount-char-attribute-table 'hdic-syp-description) +(mount-char-attribute-table 'hdic-ktb-description) +(mount-char-attribute-table 'hdic-ktb-entry-type) +(mount-char-attribute-table 'hdic-ktb-diff) +(mount-char-attribute-table 'hdic-ktb-syp-id) +(mount-char-attribute-table 'hdic-ktb-yy-id) +(mount-char-attribute-table 'hdic-ktb-ndl-pid) +(mount-char-attribute-table '<-HDIC-SYP@tenrei-bansho-meigi) +(mount-char-attribute-table '->HDIC-SYP@tenrei-bansho-meigi) +(mount-char-attribute-table '<-Small-Seal@tenrei-bansho-meigi) +(mount-char-attribute-table '->Small-Seal@tenrei-bansho-meigi) + +(mount-char-attribute-table 'sound@fanqie) (defvar est-hide-cgi-mode nil) (defvar est-view-url-prefix "..") (defvar chise-wiki-view-url "view.cgi") (defvar chise-wiki-edit-url "edit.cgi") -(defvar chise-wiki-bitmap-glyphs-url - "http://www.chise.org/glyphs") +(defvar chise-wiki-bitmap-glyph-image-url + "https://image.chise.org/glyphs") + +(defvar chise-wiki-legacy-bitmap-glyphs-url + "https://www.chise.org/glyphs") (defvar chise-wiki-hng-bitmap-glyphs-url - "http://hng.chise.org/glyphs/HNG") + "https://image.hng-data.org/glyphs/HNG") (defvar chise-wiki-daijiten-bitmap-glyphs-url - "http://hng.chise.org/glyphs/daijiten") + "https://image.hng-data.org/glyphs/daijiten") + +(defvar chise-wiki-glyphwiki-glyph-image-url + "https://glyphwiki.org/glyph") (defvar chise-wiki-glyph-cgi-url - "http://www.chise.org/chisewiki/glyph.cgi") + "https://www.chise.org/chisewiki/glyph.cgi") (defvar chise-wiki-displayed-features nil) @@ -98,8 +125,8 @@ =zinbun-oracle =>zinbun-oracle =daikanwa =gt =gt-k - =>>>adobe-japan1 - =>>>jis-x0208 =>>>jis-x0213-1 =>>>jis-x0213-2 + ==adobe-japan1 + ==jis-x0208 ==jis-x0213-1 ==jis-x0213-2 =>>jis-x0208 =>>jis-x0213-1 =>>jis-x0213-2 =>>adobe-japan1 =+>jis-x0208 =+>jis-x0213-1 =+>jis-x0213-2 @@ -112,8 +139,8 @@ =+>ucs@iso =+>ucs@unicode =>>ucs@iso =>>ucs@unicode =>>ucs@jis =>>ucs@cns =>>ucs@ks - =>>>ucs@iso =>>>ucs@unicode - =>>>ucs@jis =>>>ucs@cns =>>>ucs@ks + ==ucs@iso ==ucs@unicode + ==ucs@jis ==ucs@cns ==ucs@ks ===ucs@iso =ruimoku-v6 =big5 @@ -148,6 +175,7 @@ ===gt =>ucs@iwds-1 =>ucs@component + =>ucs@cognate =>ucs-itaiji-001 =>ucs-itaiji-002 =>ucs-itaiji-003 @@ -161,6 +189,111 @@ ===cns11643-4 ===cns11643-5 ===cns11643-6 ===cns11643-7 )) +(defvar est-coded-charset-entity-reference-alist + (list* + '(=gt "GT-" 5 d) + '(=mj "MJ" 6 d) + '(=hanyo-denshi/ja "HD-JA-" 4 X) + '(=hanyo-denshi/jb "HD-JB-" 4 X) + '(=hanyo-denshi/jc "HD-JC-" 4 X) + '(=hanyo-denshi/jd "HD-JD-" 4 X) + '(=hanyo-denshi/ft "HD-FT-" 4 X) + '(=hanyo-denshi/ia "HD-IA-" 4 X) + '(=hanyo-denshi/ib "HD-IB-" 4 X) + '(=hanyo-denshi/hg "HD-HG-" 4 X) + '(=hanyo-denshi/ip "HD-IP-" 4 X) + '(=hanyo-denshi/jt "HD-JT-" 4 X) + '(=hanyo-denshi/ks "HD-KS-" 6 d) + '(=>>hanyo-denshi/ja "G-HD-JA-" 4 X) + '(=>>hanyo-denshi/jb "G-HD-JB-" 4 X) + '(=>>hanyo-denshi/jc "G-HD-JC-" 4 X) + '(=>>hanyo-denshi/jd "G-HD-JD-" 4 X) + '(=>>hanyo-denshi/ft "G-HD-FT-" 4 X) + '(=>>hanyo-denshi/ia "G-HD-IA-" 4 X) + '(=>>hanyo-denshi/ib "G-HD-IB-" 4 X) + '(=>>hanyo-denshi/hg "G-HD-HG-" 4 X) + '(=>>hanyo-denshi/ip "G-HD-IP-" 4 X) + '(=>>hanyo-denshi/jt "G-HD-JT-" 4 X) + '(=>>hanyo-denshi/ks "G-HD-KS-" 6 d) + '(==mj "g2-MJ" 6 d) + '(==hanyo-denshi/ja "g2-HD-JA-" 4 X) + '(==hanyo-denshi/jb "g2-HD-JB-" 4 X) + '(==hanyo-denshi/jc "g2-HD-JC-" 4 X) + '(==hanyo-denshi/jd "g2-HD-JD-" 4 X) + '(==hanyo-denshi/ft "g2-HD-FT-" 4 X) + '(==hanyo-denshi/ia "g2-HD-IA-" 4 X) + '(==hanyo-denshi/ib "g2-HD-IB-" 4 X) + '(==hanyo-denshi/hg "g2-HD-HG-" 4 X) + '(==hanyo-denshi/ip "g2-HD-IP-" 4 X) + '(==hanyo-denshi/jt "g2-HD-JT-" 4 X) + '(==hanyo-denshi/ks "g2-HD-KS-" 6 d) + '(==daijiten "g2-DJT-" 5 d) + '(=cns11643-1 "C1-" 4 X) + '(=cns11643-2 "C2-" 4 X) + '(=cns11643-3 "C3-" 4 X) + '(=cns11643-4 "C4-" 4 X) + '(=cns11643-5 "C5-" 4 X) + '(=cns11643-6 "C6-" 4 X) + '(=cns11643-7 "C7-" 4 X) + '(=adobe-japan1-6 "AJ1-" 5 d) + '(=big5-cdp "CDP-" 4 X) + '(=>big5-cdp "A-CDP-" 4 X) + '(=gb2312 "G0-" 4 X) + '(=gb12345 "G1-" 4 X) + '(=jis-x0208@1990 "J90-" 4 X) + '(=jis-x0212 "JSP-" 4 X) + '(=cbeta "CB" 5 d) + '(=jis-x0208@1997 "J97-" 4 X) + '(=jis-x0208@1978 "J78-" 4 X) + '(=jis-x0208@1983 "J83-" 4 X) + '(=ruimoku-v6 "RUI6-" 4 X) + '(=zinbun-oracle "ZOB-" 4 d) + '(=daijiten "DJT-" 5 d) + '(=>ucs-itaiji-001 "A-U-i001+" 4 X) + '(=>ucs-itaiji-002 "A-U-i002+" 4 X) + '(=>ucs-itaiji-003 "A-U-i003+" 4 X) + '(=>ucs-itaiji-004 "A-U-i004+" 4 X) + '(=>ucs-itaiji-005 "A-U-i005+" 4 X) + '(=>ucs-itaiji-006 "A-U-i006+" 4 X) + '(=>ucs-itaiji-007 "A-U-i007+" 4 X) + '(=>ucs-itaiji-008 "A-U-i008+" 4 X) + '(=>ucs-itaiji-009 "A-U-i009+" 4 X) + '(=>ucs-itaiji-010 "A-U-i010+" 4 X) + '(=>ucs-itaiji-011 "A-U-i011+" 4 X) + '(=>ucs-itaiji-001@iwds-1 "A-IWDSU-i001+" 4 X) + '(=>ucs-itaiji-002@iwds-1 "A-IWDSU-i002+" 4 X) + '(=>ucs-itaiji-003@iwds-1 "A-IWDSU-i003+" 4 X) + '(=>ucs-itaiji-006@iwds-1 "A-IWDSU-i006+" 4 X) + '(=jef-china3 "JC3-" 4 X) + '(=ucs@unicode "UU+" 4 X) + '(=ucs@JP/hanazono "hanaJU+" 4 X) + '(==cns11643-1 "R-C1-" 4 X) + '(==cns11643-2 "R-C2-" 4 X) + '(==cns11643-3 "R-C3-" 4 X) + '(==cns11643-4 "R-C4-" 4 X) + '(==cns11643-5 "R-C5-" 4 X) + '(==cns11643-6 "R-C6-" 4 X) + '(==cns11643-7 "R-C7-" 4 X) + '(=hanziku-1 "HZK01-" 4 X) + '(=hanziku-2 "HZK02-" 4 X) + '(=hanziku-3 "HZK03-" 4 X) + '(=hanziku-4 "HZK04-" 4 X) + '(=hanziku-5 "HZK05-" 4 X) + '(=hanziku-6 "HZK06-" 4 X) + '(=hanziku-7 "HZK07-" 4 X) + '(=hanziku-8 "HZK08-" 4 X) + '(=hanziku-9 "HZK09-" 4 X) + '(=hanziku-10 "HZK10-" 4 X) + '(=hanziku-11 "HZK11-" 4 X) + '(=hanziku-12 "HZK12-" 4 X) + '(==>daijiten "A2-DJT-" 5 d) + '(==cbeta "CB" 5 d) + '(=big5 "B-" 4 X) + '(=daikanwa "M-" 5 d) + '(=>>daikanwa "G-M-" 5 d) + '(===ucs@ks "R-KU+" 4 X) + coded-charset-entity-reference-alist)) + (defun decode-uri-string (string &optional coding-system) (if (> (length string) 0) (let ((i 0) @@ -229,6 +362,8 @@ 'space-separated) ((eq type 'structure) 'space-separated-ids) + ((eq type 'domain-list) + 'space-separated-source-list) ((eq type 'stext) 'wiki-text) )) @@ -460,142 +595,142 @@ ;; (t (char-to-string c)))) ;; feature "")) -(defun www-uri-decode-feature-name (uri-feature) - (let (feature) - (setq uri-feature (decode-uri-string uri-feature 'utf-8-mcs-er)) - (cond - ((string-match "^from\\." uri-feature) - (intern (format "<-%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^to\\." uri-feature) - (intern (format "->%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^rep\\." uri-feature) - (intern (format "=%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^rep[2i]\\." uri-feature) - (intern (format "===%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^g\\." uri-feature) - (intern (format "=>>%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^g[i2]\\." uri-feature) - (intern (format "==%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^gi\\([0-9]+\\)\\." uri-feature) - (intern (format "=>>%s%s" - (make-string (string-to-int - (match-string 1 uri-feature)) - ?>) - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^o\\." uri-feature) - (intern (format "=+>%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^a\\." uri-feature) - (intern (format "=>%s" - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((string-match "^a\\([0-9]+\\)\\." uri-feature) - (intern (format "%s>%s" - (make-string (string-to-int - (match-string 1 uri-feature)) - ?=) - (est-uri-decode-feature-name-body - (substring uri-feature (match-end 0))))) - ) - ((and (setq uri-feature (est-uri-decode-feature-name-body uri-feature)) - (setq feature (intern (format "=>%s" uri-feature))) - (find-charset feature)) - feature) - ((and (setq feature (intern (format "=>>%s" uri-feature))) - (find-charset feature)) - feature) - ((and (setq feature (intern (format "=>>>%s" uri-feature))) - (find-charset feature)) - feature) - ((and (setq feature (intern (format "=%s" uri-feature))) - (find-charset feature)) - feature) - (t (intern uri-feature))))) - -(defun www-uri-encode-feature-name (feature-name) - (setq feature-name (symbol-name feature-name)) - (cond - ((string-match "^=\\+>\\([^=>]+\\)" feature-name) - (concat "o." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^=\\([^=>]+\\)" feature-name) - (concat "rep." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^==\\([^=>]+\\)" feature-name) - (concat "g2." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^===\\([^=>]+\\)" feature-name) - (concat "repi." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^=>>\\([^=>]+\\)" feature-name) - (concat "g." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^=>>>\\([^=>]+\\)" feature-name) - (concat "gi." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^=>>\\(>+\\)" feature-name) - (format "gi%d.%s" - (length (match-string 1 feature-name)) - (est-uri-encode-feature-name-body - (substring feature-name (match-end 1)))) - ) - ((string-match "^=>\\([^=>]+\\)" feature-name) - (concat "a." - (est-uri-encode-feature-name-body - (substring feature-name (match-beginning 1)))) - ) - ((string-match "^\\(=+\\)>" feature-name) - (format "a%d.%s" - (length (match-string 1 feature-name)) - (est-uri-encode-feature-name-body - (substring feature-name (match-end 0)))) - ) - ((string-match "^->" feature-name) - (concat "to." - (est-uri-encode-feature-name-body - (substring feature-name (match-end 0)))) - ) - ((string-match "^<-" feature-name) - (concat "from." - (est-uri-encode-feature-name-body - (substring feature-name (match-end 0)))) - ) - (t (est-uri-encode-feature-name-body feature-name)))) +;; (defun www-uri-decode-feature-name (uri-feature) +;; (let (feature) +;; (setq uri-feature (decode-uri-string uri-feature 'utf-8-mcs-er)) +;; (cond +;; ((string-match "^from\\." uri-feature) +;; (intern (format "<-%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^to\\." uri-feature) +;; (intern (format "->%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^rep\\." uri-feature) +;; (intern (format "=%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^rep[2i]\\." uri-feature) +;; (intern (format "===%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^g\\." uri-feature) +;; (intern (format "=>>%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^g[i2]\\." uri-feature) +;; (intern (format "==%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^gi\\([0-9]+\\)\\." uri-feature) +;; (intern (format "=>>%s%s" +;; (make-string (string-to-int +;; (match-string 1 uri-feature)) +;; ?>) +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^o\\." uri-feature) +;; (intern (format "=+>%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^a\\." uri-feature) +;; (intern (format "=>%s" +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((string-match "^a\\([0-9]+\\)\\." uri-feature) +;; (intern (format "%s>%s" +;; (make-string (string-to-int +;; (match-string 1 uri-feature)) +;; ?=) +;; (est-uri-decode-feature-name-body +;; (substring uri-feature (match-end 0))))) +;; ) +;; ((and (setq uri-feature (est-uri-decode-feature-name-body uri-feature)) +;; (setq feature (intern (format "=>%s" uri-feature))) +;; (find-charset feature)) +;; feature) +;; ((and (setq feature (intern (format "=>>%s" uri-feature))) +;; (find-charset feature)) +;; feature) +;; ((and (setq feature (intern (format "=>>>%s" uri-feature))) +;; (find-charset feature)) +;; feature) +;; ((and (setq feature (intern (format "=%s" uri-feature))) +;; (find-charset feature)) +;; feature) +;; (t (intern uri-feature))))) + +;; (defun www-uri-encode-feature-name (feature-name) +;; (setq feature-name (symbol-name feature-name)) +;; (cond +;; ((string-match "^=\\+>\\([^=>]+\\)" feature-name) +;; (concat "o." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^=\\([^=>]+\\)" feature-name) +;; (concat "rep." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^==\\([^=>]+\\)" feature-name) +;; (concat "g2." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^===\\([^=>]+\\)" feature-name) +;; (concat "repi." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^=>>\\([^=>]+\\)" feature-name) +;; (concat "g." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^=>>>\\([^=>]+\\)" feature-name) +;; (concat "gi." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^=>>\\(>+\\)" feature-name) +;; (format "gi%d.%s" +;; (length (match-string 1 feature-name)) +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-end 1)))) +;; ) +;; ((string-match "^=>\\([^=>]+\\)" feature-name) +;; (concat "a." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-beginning 1)))) +;; ) +;; ((string-match "^\\(=+\\)>" feature-name) +;; (format "a%d.%s" +;; (length (match-string 1 feature-name)) +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-end 0)))) +;; ) +;; ((string-match "^->" feature-name) +;; (concat "to." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-end 0)))) +;; ) +;; ((string-match "^<-" feature-name) +;; (concat "from." +;; (est-uri-encode-feature-name-body +;; (substring feature-name (match-end 0)))) +;; ) +;; (t (est-uri-encode-feature-name-body feature-name)))) (defun www-uri-make-feature-name-url (uri-genre uri-feature-name uri-object) (if est-hide-cgi-mode @@ -680,8 +815,8 @@ (format (if est-hide-cgi-mode "rep.id=%s" "rep.id:%s") - (est-uri-encode-feature-name-body - (format "%s" (concord-object-id object)))))) + (www-uri-encode-feature-name + (concord-object-id object))))) (defun est-format-object (object &optional readable) (if (characterp object) @@ -689,7 +824,8 @@ (let ((ret (or (if readable (or (concord-object-get object 'name) (concord-object-get object '=name) - (concord-object-get object 'title))) + (concord-object-get object 'title) + (concord-object-get object '=title))) (concord-object-id object)))) (format "%s" ret)))) @@ -822,92 +958,7 @@ (if without-tags (encode-coding-region (point-min)(point-max) 'utf-8-mcs-er) (let ((coded-charset-entity-reference-alist - (list* - '(=gt "GT-" 5 d) - '(=mj "MJ" 6 d) - '(=hanyo-denshi/ja "HD-JA-" 4 X) - '(=hanyo-denshi/jb "HD-JB-" 4 X) - '(=hanyo-denshi/jc "HD-JC-" 4 X) - '(=hanyo-denshi/jd "HD-JD-" 4 X) - '(=hanyo-denshi/ft "HD-FT-" 4 X) - '(=hanyo-denshi/ia "HD-IA-" 4 X) - '(=hanyo-denshi/ib "HD-IB-" 4 X) - '(=hanyo-denshi/hg "HD-HG-" 4 X) - '(=hanyo-denshi/ip "HD-IP-" 4 X) - '(=hanyo-denshi/jt "HD-JT-" 4 X) - '(=hanyo-denshi/ks "HD-KS-" 6 d) - '(=>>hanyo-denshi/ja "G-HD-JA-" 4 X) - '(=>>hanyo-denshi/jb "G-HD-JB-" 4 X) - '(=>>hanyo-denshi/jc "G-HD-JC-" 4 X) - '(=>>hanyo-denshi/jd "G-HD-JD-" 4 X) - '(=>>hanyo-denshi/ft "G-HD-FT-" 4 X) - '(=>>hanyo-denshi/ia "G-HD-IA-" 4 X) - '(=>>hanyo-denshi/ib "G-HD-IB-" 4 X) - '(=>>hanyo-denshi/hg "G-HD-HG-" 4 X) - '(=>>hanyo-denshi/ip "G-HD-IP-" 4 X) - '(=>>hanyo-denshi/jt "G-HD-JT-" 4 X) - '(=>>hanyo-denshi/ks "G-HD-KS-" 6 d) - '(==mj "g2-MJ" 6 d) - '(==hanyo-denshi/ja "g2-HD-JA-" 4 X) - '(==hanyo-denshi/jb "g2-HD-JB-" 4 X) - '(==hanyo-denshi/jc "g2-HD-JC-" 4 X) - '(==hanyo-denshi/jd "g2-HD-JD-" 4 X) - '(==hanyo-denshi/ft "g2-HD-FT-" 4 X) - '(==hanyo-denshi/ia "g2-HD-IA-" 4 X) - '(==hanyo-denshi/ib "g2-HD-IB-" 4 X) - '(==hanyo-denshi/hg "g2-HD-HG-" 4 X) - '(==hanyo-denshi/ip "g2-HD-IP-" 4 X) - '(==hanyo-denshi/jt "g2-HD-JT-" 4 X) - '(==hanyo-denshi/ks "g2-HD-KS-" 6 d) - '(==daijiten "g2-DJT-" 5 d) - '(=cns11643-1 "C1-" 4 X) - '(=cns11643-2 "C2-" 4 X) - '(=cns11643-3 "C3-" 4 X) - '(=cns11643-4 "C4-" 4 X) - '(=cns11643-5 "C5-" 4 X) - '(=cns11643-6 "C6-" 4 X) - '(=cns11643-7 "C7-" 4 X) - '(=adobe-japan1-6 "AJ1-" 5 d) - '(=big5-cdp "CDP-" 4 X) - '(=>big5-cdp "A-CDP-" 4 X) - '(=gb2312 "G0-" 4 X) - '(=gb12345 "G1-" 4 X) - '(=jis-x0208@1990 "J90-" 4 X) - '(=jis-x0212 "JSP-" 4 X) - '(=cbeta "CB" 5 d) - '(=jis-x0208@1997 "J97-" 4 X) - '(=jis-x0208@1978 "J78-" 4 X) - '(=jis-x0208@1983 "J83-" 4 X) - '(=ruimoku-v6 "RUI6-" 4 X) - '(=zinbun-oracle "ZOB-" 4 d) - '(=daijiten "DJT-" 5 d) - '(=jef-china3 "JC3-" 4 X) - '(=ucs@unicode "UU+" 4 X) - '(=ucs@JP/hanazono "hanaJU+" 4 X) - '(==cns11643-1 "R-C1-" 4 X) - '(==cns11643-2 "R-C2-" 4 X) - '(==cns11643-3 "R-C3-" 4 X) - '(==cns11643-4 "R-C4-" 4 X) - '(==cns11643-5 "R-C5-" 4 X) - '(==cns11643-6 "R-C6-" 4 X) - '(==cns11643-7 "R-C7-" 4 X) - '(=hanziku-1 "HZK01-" 4 X) - '(=hanziku-2 "HZK02-" 4 X) - '(=hanziku-3 "HZK03-" 4 X) - '(=hanziku-4 "HZK04-" 4 X) - '(=hanziku-5 "HZK05-" 4 X) - '(=hanziku-6 "HZK06-" 4 X) - '(=hanziku-7 "HZK07-" 4 X) - '(=hanziku-8 "HZK08-" 4 X) - '(=hanziku-9 "HZK09-" 4 X) - '(=hanziku-10 "HZK10-" 4 X) - '(=hanziku-11 "HZK11-" 4 X) - '(=hanziku-12 "HZK12-" 4 X) - '(==>daijiten "A2-DJT-" 5 d) - '(==cbeta "CB" 5 d) - '(=big5 "B-" 4 X) - '(=daikanwa "M-" 5 d) - coded-charset-entity-reference-alist))) + est-coded-charset-entity-reference-alist)) (encode-coding-region (point-min)(point-max) 'utf-8-mcs-er) (goto-char (point-min)) @@ -917,7 +968,7 @@ (format "\"CB%05d\"" code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url (/ code 1000) code www-format-char-img-style) t 'literal)) @@ -930,7 +981,7 @@ style=\"%s\">" (format "\"J%s-%04X\"" plane code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url plane (- (lsh code -8) 32) (- (logand code 255) 32) @@ -944,7 +995,7 @@ style=\"%s\">" (format "\"J0-%04X\"" code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url (- (lsh code -8) 32) (- (logand code 255) 32) www-format-char-img-style) @@ -958,7 +1009,7 @@ style=\"%s\">" (format "\"HD-%s-%04X\"" plane code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url plane (- (lsh code -8) 32) (- (logand code 255) 32) @@ -973,7 +1024,7 @@ style=\"%s\">" (format "\"HD-%s-%04X\"" plane code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url plane code www-format-char-img-style) t 'literal)) @@ -985,7 +1036,7 @@ style=\"%s\">" (format "\"HD-KS%06d\"" code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url code www-format-char-img-style) t 'literal)) @@ -997,7 +1048,7 @@ style=\"vertical-align:middle\">" (format "\"HD-KS%06d\"" code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url code www-format-char-img-style) t 'literal)) @@ -1010,7 +1061,7 @@ style=\"vertical-align:middle\">" (format "\"GB%d-%04X\"" plane code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url plane (- (lsh code -8) 32) (- (logand code 255) 32) @@ -1025,7 +1076,7 @@ style=\"%s\">" (format "\"CNS%d-%04X\"" plane code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url plane code www-format-char-img-style) t 'literal)) @@ -1034,8 +1085,8 @@ style=\"%s\">" (while (re-search-forward "&\\(R-\\)?JC3-\\([0-9A-F][0-9A-F][0-9A-F][0-9A-F]\\);" nil t) (setq code (string-to-int (match-string 2) 16)) (replace-match - (format "\"JC3-%04X\"" - code code) + (format "\"JC3-%04X\"" + code chise-wiki-bitmap-glyph-image-url code) t 'literal)) (goto-char (point-min)) @@ -1043,9 +1094,9 @@ style=\"%s\">" (setq code (string-to-int (match-string 2))) (replace-match (format "\"ZOB-%04d\"" +style=\"vertical-align:middle; width: auto; max-height: 80px\">" code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url code www-format-char-img-style) t 'literal)) @@ -1063,9 +1114,9 @@ style=\"vertical-align:middle; width: auto; max-height: 60px\">" t 'literal)) (goto-char (point-min)) - (while (re-search-forward "&SW-JIGUGE\\([45]?\\)-\\([0-9]+\\);" nil t) - (setq subcode (match-string 1) - code (string-to-int (match-string 2))) + (while (re-search-forward "&\\(A-\\)?SW-JIGUGE\\([45]?\\)-\\([0-9]+\\);" nil t) + (setq subcode (match-string 2) + code (string-to-int (match-string 3))) (setq plane (if (string= subcode "") "5" @@ -1075,7 +1126,7 @@ style=\"vertical-align:middle; width: auto; max-height: 60px\">" style=\"vertical-align:middle; width: auto; max-height: 80px\">%s" plane code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url plane code (charset-description (if (string= subcode "") @@ -1109,13 +1160,69 @@ class=\"tooltiptext\">%s" t 'literal)) (goto-char (point-min)) + (while (re-search-forward "&\\(R-\\)?CHISE-HDIC-TSJ\\([0-9A-F]+\\);" nil t) + (setq code (string-to-int (match-string 2) 16)) + (setq char (decode-char '===chise-hdic-tsj code)) + (when (setq ret (get-char-attribute char '=hdic-tsj-glyph-id)) + (replace-match + (format + "
\"HDIC-TSJ-%s\"%s
" + ret ret + (charset-description '===chise-hdic-tsj)) + t 'literal))) + + (goto-char (point-min)) + (while (re-search-forward "&\\(R-\\)?CHISE-HDIC-SYP\\([0-9A-F]+\\);" nil t) + (setq code (string-to-int (match-string 2) 16)) + (setq char (decode-char '===chise-hdic-syp code)) + (when (setq ret (get-char-attribute char '=hdic-syp-entry-id)) + (replace-match + (format + "
\"HDIC-SYP-%s\"%s
" + ret ret + (charset-description '===chise-hdic-syp)) + t 'literal))) + + (goto-char (point-min)) + (while (re-search-forward "&\\(R-\\)?CHISE-HDIC-KTB\\([0-9A-F]+\\);" nil t) + (setq code (string-to-int (match-string 2) 16)) + (setq char (decode-char '===chise-hdic-ktb code)) + (when (setq ret (get-char-attribute char '=hdic-ktb-entry-id)) + (replace-match + (format + "
\"HDIC-KTB-%s\"%s
" + ret ret + (charset-description '===chise-hdic-ktb)) + t 'literal))) + + (goto-char (point-min)) + (while (re-search-forward "&\\(R-\\)?CHISE-HDIC-KTBS\\([0-9A-F]+\\);" nil t) + (setq code (string-to-int (match-string 2) 16)) + (setq char (decode-char '===chise-hdic-ktb-seal code)) + (when (setq ret (get-char-attribute char '=hdic-ktb-seal-glyph-id)) + (replace-match + (format + "
\"HDIC-KTBS-%s\"%s
" + ret ret + (charset-description '===chise-hdic-ktb-seal)) + t 'literal))) + + (goto-char (point-min)) (while (re-search-forward "&\\(o-\\|G-\\|g2-\\|R-\\)?AJ1-\\([0-9]+\\);" nil t) (setq code (string-to-int (match-string 2))) (replace-match (format "\"AJ1-%05d\"" code - chise-wiki-bitmap-glyphs-url + chise-wiki-legacy-bitmap-glyphs-url code www-format-char-img-style) t 'literal)) @@ -1124,7 +1231,7 @@ style=\"vertical-align:middle\">" (while (re-search-forward "&\\(A-\\|o-\\|G-\\|g2-\\|R-\\)?MJ\\([0-9]+\\);" nil t) (setq code (string-to-int (match-string 2))) (replace-match - (format "\"MJ%06d\"" code code @@ -1135,9 +1242,22 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (while (re-search-forward "&\\(o-\\|G-\\|g2-\\)?IU[+-]\\([0-9A-F]+\\);" nil t) (setq code (string-to-int (match-string 2) 16)) (replace-match - (format "\"u%04x\"" code + chise-wiki-glyphwiki-glyph-image-url + code + www-format-char-img-style) + t 'literal)) + + (goto-char (point-min)) + (while (re-search-forward "&\\(o-\\|G-\\|g2-\\|R-\\)?KU[+-]\\([0-9A-F]+\\);" nil t) + (setq code (string-to-int (match-string 2) 16)) + (replace-match + (format "\"u%04x-k\"" + code + chise-wiki-glyphwiki-glyph-image-url code www-format-char-img-style) t 'literal)) @@ -1146,24 +1266,26 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (while (re-search-forward "&A-\\(comp\\|cgn\\)U[+-]\\([0-9A-F]+\\);" nil t) (setq code (string-to-int (match-string 2) 16)) (replace-match - (format "\"u%04x\"" code + chise-wiki-glyphwiki-glyph-image-url code www-format-char-img-style) t 'literal)) (goto-char (point-min)) (while (re-search-forward - "&\\(A-\\|g2-\\)?U-i\\([0-9]+\\)\\+\\([0-9A-F]+\\);" + "&\\(A-\\|g2-\\)?\\(IWDS\\)?U-i\\([0-9]+\\)\\+\\([0-9A-F]+\\);" nil t) - (setq plane (string-to-int (match-string 2)) - code (string-to-int (match-string 3) 16)) + (setq plane (string-to-int (match-string 3)) + code (string-to-int (match-string 4) 16)) (replace-match - (format "\"u%04x-itaiji-%03d\"" code plane + chise-wiki-glyphwiki-glyph-image-url code plane www-format-char-img-style) @@ -1173,9 +1295,10 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (while (re-search-forward "&A-IWDSU\\+\\([0-9A-F]+\\);" nil t) (setq code (string-to-int (match-string 1) 16)) (replace-match - (format "\"A-IWDSU+%04x\"" code + chise-wiki-glyphwiki-glyph-image-url code www-format-char-img-style) t 'literal)) @@ -1187,10 +1310,11 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (setq plane (string-to-int (match-string 2)) code (string-to-int (match-string 3) 16)) (replace-match - (format "\"cdp-%04x-itaiji-%03d\"" code plane + chise-wiki-glyphwiki-glyph-image-url code plane www-format-char-img-style) @@ -1203,10 +1327,11 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (setq plane (string-to-int (match-string 2)) code (string-to-int (match-string 3) 16)) (replace-match - (format "\"cdp-%04x-var-%03d\"" code plane + chise-wiki-glyphwiki-glyph-image-url code plane www-format-char-img-style) @@ -1214,13 +1339,14 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (goto-char (point-min)) (while (re-search-forward - "&\\(A-\\|g2-\\)?M-\\([0-9]+\\);" + "&\\(A-\\|G-\\|g2-\\|R-\\)?M-\\([0-9]+\\);" nil t) (setq code (string-to-int (match-string 2))) (replace-match - (format "\"dkw-%05d\"" code + chise-wiki-glyphwiki-glyph-image-url code www-format-char-img-style) t 'literal)) @@ -1230,10 +1356,11 @@ style=\"vertical-align:middle; width: 48px; height: 48px\">" (setq plane (string-to-int (match-string 2)) code (string-to-int (match-string 3) 16)) (replace-match - (format "\"u%04x-var-%03d\"" code plane + chise-wiki-glyphwiki-glyph-image-url code plane www-format-char-img-style) @@ -1277,7 +1404,7 @@ style=\"%s\">" (goto-char (point-min)) (while (re-search-forward - "&\\(A-\\|G-\\|g2-\\|R-\\)?CDP-\\([0-9A-F]+\\);" nil t) + "&\\(A-\\|G-\\|g2-\\|R-\\|A-IWDS\\)?CDP-\\([0-9A-F]+\\);" nil t) (setq code (string-to-int (match-string 2) 16)) (replace-match (format "\"CDP-%04X\"" (while (re-search-forward "&\\(A-\\|G-\\|g2-\\|R-\\)?\\(UU\\+\\|U-\\)\\([0-9A-F]+\\);" nil t) (setq code (string-to-int (match-string 3) 16)) (replace-match - (format "\"UU+%04X\"" code code @@ -1432,6 +1559,7 @@ style=\"vertical-align:middle\">" (===ucs@jis "u" 4 x "-j") (===daikanwa "dkw-" 5 d nil) (===ucs@ks "u" 4 x "-k") + (===jis-x0208@1978 "j78-" 4 x nil) (==ucs-itaiji-005 "u" 4 x "-itaiji-005") (=ucs-var-001 "u" 4 x "-var-001") (=ucs-var-002 "u" 4 x "-var-002")