(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 "..")
===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)
'space-separated)
((eq type 'structure)
'space-separated-ids)
+ ((eq type 'domain-list)
+ 'space-separated-source-list)
((eq type 'stext)
'wiki-text)
))
(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))))
(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)
- '(=>>daikanwa "G-M-" 5 d)
- '(===ucs@ks "R-KU+" 4 X)
- 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))
(setq code (string-to-int (match-string 2)))
(replace-match
(format "<img alt=\"ZOB-%04d\" src=\"%s/ZOB-1968/%04d.png\"
-style=\"vertical-align:middle\">"
+style=\"vertical-align:middle; width: auto; max-height: 80px\">"
code
chise-wiki-legacy-bitmap-glyphs-url
code
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"
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
+ "<div class=\"tooltip\"><img alt=\"HDIC-TSJ-%s\" src=\"https://viewer.hdic.jp/img/tsj/%s.jpg\" style=\"
+vertical-align:middle; width: auto; max-height: 60px\"><span
+class=\"tooltiptext\">%s</span></div>"
+ 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
+ "<div class=\"tooltip\"><img alt=\"HDIC-SYP-%s\" src=\"https://viewer.hdic.jp/img/syp/%s\" style=\"
+vertical-align:middle; width: auto; max-height: 60px\"><span
+class=\"tooltiptext\">%s</span></div>"
+ 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
+ "<div class=\"tooltip\"><img alt=\"HDIC-KTB-%s\" src=\"https://hdic.chise.org/img/ktb/%s.jpg\" style=\"
+vertical-align:middle; width: auto; max-height: 60px\"><span
+class=\"tooltiptext\">%s</span></div>"
+ 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
+ "<div class=\"tooltip\"><img alt=\"HDIC-KTBS-%s\" src=\"https://hdic.jp/glyphs/KTB-Seal/%s.png\" style=\"
+vertical-align:middle; width: auto; max-height: 60px\"><span
+class=\"tooltiptext\">%s</span></div>"
+ 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
(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 "<img alt=\"MJ%06d\" src=\"https://mojikiban.ipa.go.jp/MJ%06d.png\"
+ (format "<img alt=\"MJ%06d\" src=\"https://moji.or.jp/mojikibansearch/img/MJ/MJ%06d.png\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
code
(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 "<img alt=\"u%04x-itaiji-%03d\" src=\"%s/u%04x-itaiji-%03d.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
(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 "<img alt=\"CDP-%04X\" src=\"%s?char=CDP-%04X\"