;; -*- coding: utf-8-mcs-er -*-
(require 'char-db-util)
+(require 'chiset-common)
;; (require 'concord-images)
(setq file-name-coding-system 'utf-8-mcs-er)
+(concord-assign-genre 'code-point "/usr/local/var/chise-ipld/db")
+(concord-assign-genre 'coded-character "/usr/local/var/chise-ipld/db")
+(concord-assign-genre 'glyph "/usr/local/var/chise-ipld/db")
(concord-assign-genre 'image-resource "/usr/local/var/photo/db")
(concord-assign-genre 'glyph-image "/usr/local/var/photo/db")
(mount-char-attribute-table '*instance@morpheme-entry/zh-classical)
+(concord-assign-genre 'ud@zh-classical "/usr/local/var/kanbun/db")
+
(concord-assign-genre 'hng-card "/usr/local/var/hng-card/db")
(mount-char-attribute-table '->HNG)
(mount-char-attribute-table '<-HNG)
+(mount-char-attribute-table '->HNG@CN/manuscript)
+(mount-char-attribute-table '<-HNG@CN/manuscript)
+(mount-char-attribute-table '->HNG@CN/printed)
+(mount-char-attribute-table '<-HNG@CN/printed)
+(mount-char-attribute-table '->HNG@JP/manuscript)
+(mount-char-attribute-table '<-HNG@JP/manuscript)
+(mount-char-attribute-table '->HNG@JP/printed)
+(mount-char-attribute-table '<-HNG@JP/printed)
+(mount-char-attribute-table '->HNG@KR)
+(mount-char-attribute-table '<-HNG@KR)
+(mount-char-attribute-table '->HNG@MISC)
+(mount-char-attribute-table '<-HNG@MISC)
+
+(mount-char-attribute-table 'abstract-glyph@iwds-1)
+(mount-char-attribute-table 'abstract-glyph@iwds-1/confluented)
(defvar est-hide-cgi-mode nil)
(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
+ "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)
=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
=+>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
=ucs-var-002
=ucs-var-003
=ucs-var-004
+ =ucs-var-010
=ucs@unicode
==ucs@unicode
===ucs@unicode
+ ==>daijiten
==>ucs@bucs
===daikanwa/+p
===gt
=>ucs@iwds-1
=>ucs@component
+ =>ucs@cognate
=>ucs-itaiji-001
=>ucs-itaiji-002
=>ucs-itaiji-003
=>ucs-itaiji-005
=>ucs-itaiji-006
=>ucs-itaiji-007
+ =>ucs-itaiji-008
===adobe-japan1
===cns11643-1 ===cns11643-2 ===cns11643-3
===cns11643-4 ===cns11643-5 ===cns11643-6 ===cns11643-7
;;; @ URI representation
;;;
-(defun est-uri-decode-feature-name-body (uri-feature)
- (let ((len (length uri-feature))
- (i 0)
- ch dest)
- (while (< i len)
- (setq dest
- (concat
- dest
- (if (eq (aref uri-feature i) ?\.)
- (if (and (< (+ i 2) len)
- (eq (aref uri-feature (+ i 2)) ?\.))
- (prog1
- (cond
- ((eq (setq ch (aref uri-feature (1+ i))) ?\.)
- "/")
- ((eq ch ?-)
- "*")
- (t
- (substring uri-feature i (+ i 3))
- ))
- (setq i (+ i 3)))
- (setq i (1+ i))
- ".")
- (prog1
- (char-to-string (aref uri-feature i))
- (setq i (1+ i)))))))
- dest))
-
-(defun est-uri-encode-feature-name-body (feature)
- (mapconcat (lambda (c)
- (cond ((eq c ?*)
- ".-.")
- ((eq c ?/)
- "...")
- (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 est-uri-decode-feature-name-body (uri-feature)
+;; (let ((len (length uri-feature))
+;; (i 0)
+;; ch dest)
+;; (while (< i len)
+;; (setq dest
+;; (concat
+;; dest
+;; (if (eq (aref uri-feature i) ?\.)
+;; (if (and (< (+ i 2) len)
+;; (eq (aref uri-feature (+ i 2)) ?\.))
+;; (prog1
+;; (cond
+;; ((eq (setq ch (aref uri-feature (1+ i))) ?\.)
+;; "/")
+;; ((eq ch ?-)
+;; "*")
+;; ((eq ch ?_)
+;; "+")
+;; (t
+;; (substring uri-feature i (+ i 3))
+;; ))
+;; (setq i (+ i 3)))
+;; (setq i (1+ i))
+;; ".")
+;; (prog1
+;; (char-to-string (aref uri-feature i))
+;; (setq i (1+ i)))))))
+;; dest))
+
+;; (defun est-uri-encode-feature-name-body (feature)
+;; (mapconcat (lambda (c)
+;; (cond ((eq c ?*)
+;; ".-.")
+;; ((eq c ?/)
+;; "...")
+;; ((eq c ?+)
+;; "._.")
+;; (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-make-feature-name-url (uri-genre uri-feature-name uri-object)
(if est-hide-cgi-mode
(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)
'(==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)
'(=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)
'(=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)))
(encode-coding-region (point-min)(point-max) 'utf-8-mcs-er)
(format "<img alt=\"CB%05d\" src=\"%s/cb-gaiji/%02d/CB%05d.gif\"
style=\"%s\">"
code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
(/ code 1000) code
www-format-char-img-style)
t 'literal))
(format "<img alt=\"J%s-%04X\" src=\"%s/JIS-%s/%02d-%02d.gif\"
style=\"%s\">"
plane code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
plane
(- (lsh code -8) 32)
(- (logand code 255) 32)
(format "<img alt=\"J0-%04X\" src=\"%s/JIS-90/%02d-%02d.gif\"
style=\"%s\">"
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)
(format "<img alt=\"HD-%s-%04X\" src=\"%s/IVD/HanyoDenshi/%s%02d%02d.png\"
style=\"%s\">"
plane code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
plane
(- (lsh code -8) 32)
(- (logand code 255) 32)
(format "<img alt=\"HD-%s-%04X\" src=\"%s/IVD/HanyoDenshi/%s%04X.png\"
style=\"%s\">"
plane code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
plane code
www-format-char-img-style)
t 'literal))
(format "<img alt=\"HD-KS%06d\" src=\"%s/IVD/HanyoDenshi/KS%06d.png\"
style=\"vertical-align:middle\">"
code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
+ code
+ www-format-char-img-style)
+ t 'literal))
+
+ (goto-char (point-min))
+ (while (re-search-forward "&\\(o-\\|G-\\|g2-\\|R-\\)?HD-TK-\\([0-9]+\\);" nil t)
+ (setq code (string-to-int (match-string 2)))
+ (replace-match
+ (format "<img alt=\"HD-KS%06d\" src=\"%s/IVD/HanyoDenshi/TK%08d.png\"
+style=\"vertical-align:middle\">"
+ code
+ chise-wiki-legacy-bitmap-glyphs-url
code
www-format-char-img-style)
t 'literal))
(format "<img alt=\"GB%d-%04X\" src=\"%s/GB%d/%02d-%02d.gif\"
style=\"%s\">"
plane code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
plane
(- (lsh code -8) 32)
(- (logand code 255) 32)
(format "<img alt=\"CNS%d-%04X\" src=\"%s/CNS%d/%04X.gif\"
style=\"%s\">"
plane code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
plane code
www-format-char-img-style)
t 'literal))
(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 "<img alt=\"JC3-%04X\" src=\"http://kanji.zinbun.kyoto-u.ac.jp/db/CHINA3/Gaiji/%04x.gif\">"
- code code)
+ (format "<img alt=\"JC3-%04X\" src=\"%s/JEF-CHINA3/%04X.png\">"
+ code chise-wiki-bitmap-glyph-image-url code)
t 'literal))
(goto-char (point-min))
(format "<img alt=\"ZOB-%04d\" src=\"%s/ZOB-1968/%04d.png\"
style=\"vertical-align:middle\">"
code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
code
www-format-char-img-style)
t 'literal))
(goto-char (point-min))
+ (while (re-search-forward "&\\(A2-\\|g2-\\|R-\\)?DJT-\\([0-9]+\\);" nil t)
+ (setq code (string-to-int (match-string 2)))
+ (replace-match
+ (format "<img alt=\"DJT-%05d\" src=\"%s/%05d.png\"
+style=\"vertical-align:middle; width: auto; max-height: 60px\">"
+ code
+ chise-wiki-daijiten-bitmap-glyphs-url
+ code
+ www-format-char-img-style)
+ 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)))
+ (setq plane
+ (if (string= subcode "")
+ "5"
+ subcode))
+ (replace-match
+ (format "<div class=\"tooltip\"><img alt=\"SW-JIGUGE%s-%05d\" src=\"%s/ShuoWen/Jiguge%s/%05d.png\"
+style=\"vertical-align:middle; width: auto; max-height: 80px\"><span
+class=\"tooltiptext\">%s</span></div>"
+ plane code
+ chise-wiki-legacy-bitmap-glyphs-url
+ plane code
+ (charset-description
+ (if (string= subcode "")
+ '=shuowen-jiguge
+ (intern (format "===shuowen-jiguge%s" subcode)))))
+ t 'literal))
+
+ (goto-char (point-min))
(while (re-search-forward "&HNG\\([0-9]+\\)-\\([0-9][0-9][0-9][0-9]\\)\\([0-9]\\);" nil t)
(setq plane (match-string 1)
code (string-to-int (match-string 2))
(replace-match
(format
"<div class=\"tooltip\"><img alt=\"HNG%s-%04d%s\" src=\"%s/%s/%04d%s.png\" style=\"
-vertical-align:middle; width: 48px; height: 48px\"><span
+vertical-align:middle; width: auto; max-height: 60px\"><span
class=\"tooltiptext\">%s</span></div>"
plane code subcode
chise-wiki-hng-bitmap-glyphs-url
(format "<img alt=\"AJ1-%05d\" src=\"%s/IVD/AdobeJapan1/CID+%d.png\"
style=\"vertical-align:middle\">"
code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
code
www-format-char-img-style)
t 'literal))
(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=\"http://mojikiban.ipa.go.jp/MJ%06d.png\"
+ (format "<img alt=\"MJ%06d\" src=\"https://mojikiban.ipa.go.jp/MJ%06d.png\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
code
(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 "<img alt=\"u%04x\" src=\"http://glyphwiki.org/glyph/u%04x.100px.png\"
+ (format "<img alt=\"u%04x\" src=\"%s/u%04x.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
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 "<img alt=\"u%04x-k\" src=\"%s/u%04x-k.svg\"
+style=\"vertical-align:middle; width: 48px; height: 48px\">"
+ code
+ chise-wiki-glyphwiki-glyph-image-url
code
www-format-char-img-style)
t 'literal))
(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 "<img alt=\"u%04x\" src=\"http://glyphwiki.org/glyph/u%04x.100px.png\"
+ (format "<img alt=\"u%04x\" src=\"%s/u%04x.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
+ chise-wiki-glyphwiki-glyph-image-url
code
www-format-char-img-style)
t 'literal))
(setq plane (string-to-int (match-string 2))
code (string-to-int (match-string 3) 16))
(replace-match
- (format "<img alt=\"u%04x-itaiji-%03d\" src=\"http://glyphwiki.org/glyph/u%04x-itaiji-%03d.100px.png\"
+ (format "<img alt=\"u%04x-itaiji-%03d\" src=\"%s/u%04x-itaiji-%03d.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
plane
+ chise-wiki-glyphwiki-glyph-image-url
code
plane
www-format-char-img-style)
(while (re-search-forward "&A-IWDSU\\+\\([0-9A-F]+\\);" nil t)
(setq code (string-to-int (match-string 1) 16))
(replace-match
- (format "<img alt=\"A-IWDSU+%04x\" src=\"http://glyphwiki.org/glyph/u%04x.100px.png\"
+ (format "<img alt=\"A-IWDSU+%04x\" src=\"%s/u%04x.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
+ chise-wiki-glyphwiki-glyph-image-url
code
www-format-char-img-style)
t 'literal))
(setq plane (string-to-int (match-string 2))
code (string-to-int (match-string 3) 16))
(replace-match
- (format "<img alt=\"cdp-%04x-itaiji-%03d\" src=\"http://glyphwiki.org/glyph/cdp-%04x-itaiji-%03d.100px.png\"
+ (format "<img alt=\"cdp-%04x-itaiji-%03d\" src=\"%s/cdp-%04x-itaiji-%03d.svg\"
+style=\"vertical-align:middle; width: 48px; height: 48px\">"
+ code
+ plane
+ chise-wiki-glyphwiki-glyph-image-url
+ code
+ plane
+ www-format-char-img-style)
+ t 'literal))
+
+ (goto-char (point-min))
+ (while (re-search-forward
+ "&\\(A-\\)?CDP-v\\([0-9]+\\)-\\([0-9A-F]+\\);"
+ nil t)
+ (setq plane (string-to-int (match-string 2))
+ code (string-to-int (match-string 3) 16))
+ (replace-match
+ (format "<img alt=\"cdp-%04x-var-%03d\" src=\"%s/cdp-%04x-var-%03d.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
plane
+ chise-wiki-glyphwiki-glyph-image-url
code
plane
www-format-char-img-style)
t 'literal))
(goto-char (point-min))
+ (while (re-search-forward
+ "&\\(A-\\|G-\\|g2-\\|R-\\)?M-\\([0-9]+\\);"
+ nil t)
+ (setq code (string-to-int (match-string 2)))
+ (replace-match
+ (format "<img alt=\"dkw-%05d\" src=\"%s/dkw-%05d.svg\"
+style=\"vertical-align:middle; width: 48px; height: 48px\">"
+ code
+ chise-wiki-glyphwiki-glyph-image-url
+ code
+ www-format-char-img-style)
+ t 'literal))
+
+ (goto-char (point-min))
(while (re-search-forward "&\\(g2-\\)?U-v\\([0-9]+\\)\\+\\([0-9A-F]+\\);" nil t)
(setq plane (string-to-int (match-string 2))
code (string-to-int (match-string 3) 16))
(replace-match
- (format "<img alt=\"u%04x-var-%03d\" src=\"http://glyphwiki.org/glyph/u%04x-var-%03d.100px.png\"
+ (format "<img alt=\"u%04x-var-%03d\" src=\"%s/u%04x-var-%03d.svg\"
style=\"vertical-align:middle; width: 48px; height: 48px\">"
code
plane
+ chise-wiki-glyphwiki-glyph-image-url
code
plane
www-format-char-img-style)
(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 "<img alt=\"UU+%04X\" src=\"http://www.unicode.org/cgi-bin/refglyph?24-%04X\"
+ (format "<img alt=\"UU+%04X\" src=\"https://www.unicode.org/cgi-bin/refglyph?24-%04X\"
style=\"vertical-align:middle\">"
code
code
(===adobe-japan1-4 "aj1-" 5 d nil)
(===adobe-japan1-5 "aj1-" 5 d nil)
(===adobe-japan1-6 "aj1-" 5 d nil)
- (===ucs@jis "u" 4 x nil)
+ (===mj "jmj-" 6 d nil)
+ (===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")
(=ucs-var-003 "u" 4 x "-var-003")
(=ucs-var-004 "u" 4 x "-var-004")
+ (=ucs-var-006 "u" 4 x "-var-006")
+ (=ucs-var-010 "u" 4 x "-var-010")
(=ucs-itaiji-001 "u" 4 x "-itaiji-001")
(=ucs-itaiji-002 "u" 4 x "-itaiji-002")
(=ucs-itaiji-003 "u" 4 x "-itaiji-003")
+ (=ucs-itaiji-004 "u" 4 x "-itaiji-004")
+ (=ucs-itaiji-005 "u" 4 x "-itaiji-005")
+ (=ucs-itaiji-006 "u" 4 x "-itaiji-006")
+ (=ucs-itaiji-007 "u" 4 x "-itaiji-007")
+ (=ucs-itaiji-008 "u" 4 x "-itaiji-008")
(=ucs-itaiji-084 "u" 4 x "-itaiji-084")
(=>ucs-itaiji-001 "u" 4 x "-itaiji-001")
+ (=>ucs-itaiji-002 "u" 4 x "-itaiji-002")
+ (=>ucs-itaiji-003 "u" 4 x "-itaiji-003")
+ (=>ucs-itaiji-004 "u" 4 x "-itaiji-004")
+ (=>ucs-itaiji-005 "u" 4 x "-itaiji-005")
(=>ucs-itaiji-006 "u" 4 x "-itaiji-006")
+ (=>ucs-itaiji-007 "u" 4 x "-itaiji-007")
+ (=>ucs-itaiji-008 "u" 4 x "-itaiji-008")
(==adobe-japan1-0 "aj1-" 5 d nil)
(==adobe-japan1-1 "aj1-" 5 d nil)
(==adobe-japan1-2 "aj1-" 5 d nil)
(==adobe-japan1-4 "aj1-" 5 d nil)
(==adobe-japan1-5 "aj1-" 5 d nil)
(==adobe-japan1-6 "aj1-" 5 d nil)
- (==ucs@jis "u" 4 x nil)
+ (==mj "jmj-" 6 d nil)
+ (==ucs@jis "u" 4 x "-j")
(==ucs@iso "u" 4 x nil)
- (==ucs@cns "u" 4 x "-t")
+ ;; (==ucs@cns "u" 4 x "-t")
(==ucs@unicode "u" 4 x "-us")
+ (==ucs@JP/hanazono "u" 4 x "-jv")
+ (==gt "gt-" 5 d nil)
+ (==gt-k "gt-k" 5 d nil)
(==daikanwa "dkw-" 5 d nil)
(==ucs@ks "u" 4 x "-k")
(==jis-x0208@1978 "j78-" 4 x nil)
(=adobe-japan1-4 "aj1-" 5 d nil)
(=adobe-japan1-5 "aj1-" 5 d nil)
(=adobe-japan1-6 "aj1-" 5 d nil)
+ (=hanyo-denshi/ks "koseki-" 6 d nil)
+ (=mj "jmj-" 6 d nil)
(=decomposition@cid)
(=decomposition@hanyo-denshi)
- (=hanyo-denshi/ks "koseki-" 6 d nil)
(=koseki "koseki-" 6 d nil)
- (=ucs@jis "u" 4 x nil)
- (=ucs@cns "u" 4 x "-t")
+ (=hanyo-denshi/tk "toki-" 8 d nil)
+ (=ucs@jis "u" 4 x "-j")
+ ;; (=ucs@cns "u" 4 x "-t")
(=ucs@ks "u" 4 x "-k")
- (=ucs@JP "u" 4 x nil)
+ (=ucs@JP "u" 4 x "-jv")
+ (=ucs@JP/hanazono "u" 4 x "-jv")
(=ucs@gb "u" 4 x "-g")
- (=ucs@iso "u" 4 x "-u")
- (=ucs@unicode "u" 4 x "-us")
(=big5-cdp "cdp-" 4 x nil)
(=>big5-cdp "cdp-" 4 x nil)
+ (=+>big5-cdp "cdp-" 4 x nil)
+ (=>big5-cdp@iwds-1 "cdp-" 4 x nil)
(=cbeta "cbeta-" 5 d nil)
- (=big5-cdp-var-3 "cdp-" 4 x "-var-3")
- (=big5-cdp-var-5 "cdp-" 4 x "-var-5")
+ (=>cbeta "cbeta-" 5 d nil)
+ (=big5-cdp-var-001 "cdp-" 4 x "-var-001")
+ (=big5-cdp-var-003 "cdp-" 4 x "-var-003")
+ (=big5-cdp-var-005 "cdp-" 4 x "-var-005")
(=big5-cdp-itaiji-001 "cdp-" 4 x "-itaiji-001")
(=big5-cdp-itaiji-002 "cdp-" 4 x "-itaiji-002")
+ (=big5-cdp-itaiji-003 "cdp-" 4 x "-itaiji-003")
(=>big5-cdp-itaiji-001 "cdp-" 4 x "-itaiji-001")
+ (=>big5-cdp-itaiji-002 "cdp-" 4 x "-itaiji-002")
+ (=>big5-cdp-itaiji-003 "cdp-" 4 x "-itaiji-003")
(=jef-china3 "jc3-" 4 x nil)
(=jis-x0212 "jsp-" 4 x nil)
(=jis-x0213-1@2000 "jx1-2000-" 4 x nil)
(=jis-x0213-1@2004 "jx1-2004-" 4 x nil)
(=jis-x0213-2 "jx2-" 4 x nil)
+ (=gt "gt-" 5 d nil)
(=gt-k "gt-k" 5 d nil)
+ (=>gt-k "gt-k" 5 d nil)
+ (=daikanwa "dkw-" 5 d nil)
+ (=ruimoku-v6 "rui6-" 4 x nil)
+ (=>ruimoku-v6 "rui6-" 4 x nil)
+ (=ucs@iso "u" 4 x "-u")
+ (=ucs@unicode "u" 4 x "-us")
(=jis-x0208@1978/1pr "j78-" 4 x nil)
(=jis-x0208@1978/-4pr "j78-" 4 x nil)
(=jis-x0208@1978 "j78-" 4 x nil)
(=+>jis-x0208@1983 "j83-" 4 x nil)
(=ucs "u" 4 x nil)
(=big5 "b-" 4 x nil)
- (=daikanwa "dkw-" 5 d nil)
- (=gt "gt-" 5 d nil)
- (=ruimoku-v6 "rui6-" 4 x nil)
- (=>ruimoku-v6 "rui6-" 4 x nil)
(=ks-x1001 "k0-" 4 x nil)
- (=cns11643-1 "c1-" 4 x nil)
- (=cns11643-2 "c2-" 4 x nil)
- (=cns11643-3 "c3-" 4 x nil)
- (=cns11643-4 "c4-" 4 x nil)
- (=cns11643-5 "c5-" 4 x nil)
- (=cns11643-6 "c6-" 4 x nil)
- (=cns11643-7 "c7-" 4 x nil)
+ ;; (=cns11643-1 "c1-" 4 x nil)
+ ;; (=cns11643-2 "c2-" 4 x nil)
+ ;; (=cns11643-3 "c3-" 4 x nil)
+ ;; (=cns11643-4 "c4-" 4 x nil)
+ ;; (=cns11643-5 "c5-" 4 x nil)
+ ;; (=cns11643-6 "c6-" 4 x nil)
+ ;; (=cns11643-7 "c7-" 4 x nil)
(=jis-x0208 "j90-" 4 x nil)
(=jis-x0208@1990 "j90-" 4 x nil)
(=jis-x0208@1983 "j83-" 4 x nil)
(encode-char char '=jis-x0213-1)
(encode-char char '=jis-x0213-2))
(setq code (encode-char char '=ucs@jis)))
- (format "u%04x" code)
+ (format "u%04x-j" code)
)
((and (or (encode-char char '=gb2312)
(encode-char char '=gb12345))
(setq code (encode-char char '=ucs@gb)))
(format "u%04x-g" code)
)
- ((and (or (encode-char char '=cns11643-1)
- (encode-char char '=cns11643-2)
- (encode-char char '=cns11643-3)
- (encode-char char '=cns11643-4)
- (encode-char char '=cns11643-5)
- (encode-char char '=cns11643-6)
- (encode-char char '=cns11643-7))
- (setq code (encode-char char '=ucs@cns)))
- (format "u%04x-t" code)
- )
+ ;; ((and (or (encode-char char '=cns11643-1)
+ ;; (encode-char char '=cns11643-2)
+ ;; (encode-char char '=cns11643-3)
+ ;; (encode-char char '=cns11643-4)
+ ;; (encode-char char '=cns11643-5)
+ ;; (encode-char char '=cns11643-6)
+ ;; (encode-char char '=cns11643-7))
+ ;; (setq code (encode-char char '=ucs@cns)))
+ ;; (format "u%04x-t" code)
+ ;; )
((and (encode-char char '=ks-x1001)
(setq code (encode-char char '=ucs@ks)))
(format "u%04x-k" code)