+2022-06-19 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-format-encode-string): Format
+ &A-SW-JIGUGE[45]-ddddd;
+
+2022-06-14 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-format-encode-string): Use "width: auto;
+ max-height: 80px" for Zinbun-Oracle-Bones characters.
+
+2022-06-10 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el:
+ - Mount `=hdic-ktb-seal-glyph-id'.
+ - Use `<-HDIC-SYP@tenrei-bansho-meigi' instead of `<-HDIC-SYP@ktb'.
+ - Use `->HDIC-SYP@tenrei-bansho-meigi' instead of `->HDIC-SYP@ktb'.
+ - Mount `<-Small-Seal@tenrei-bansho-meigi' and
+ `->Small-Seal@tenrei-bansho-meigi'.
+ (www-format-encode-string): Add setting for `===chise-hdic-ktb-seal'.
+
+2022-05-20 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el
+ (est-eval-value-as-hdic-tsj-character-with-description): New
+ function.
+ (est-eval-value-as-hdic-tsj-entry-character-list): New function.
+ (est-eval-apply-value): Use
+ `est-eval-value-as-hdic-tsj-entry-character-list' for
+ `hdic-tsj-entry-character-list'.
+
+2022-05-20 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el (est-eval-value-as-object-with-description): New
+ function.
+ (est-eval-value-as-entry-character-list): New function.
+ (est-eval-apply-value): Use
+ `est-eval-value-as-entry-character-list' to support new formats
+ `entry-character-list' and `unordered-entry-character-list'.
+
+2022-04-28 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el:
+ - Mount `<-HDIC-SYP@ktb' instead of `<-HDIC-SYP@KTB'.
+ - Mount `->HDIC-SYP@ktb' instead of `->HDIC-SYP@KTB'.
+
+2022-03-18 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc): Fixed.
+
+2022-03-17 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el: Mount `sound@fanqie'.
+ (www-feature-value-format): Use `space-separated-source-list' for
+ `domain-list'.
+ (est-format-object): Accept feature `=title' as the same as
+ `title'.
+
+2022-03-15 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el (est-eval-value-as-object): Accept `=title' as the
+ same as `=name'.
+ (est-eval-value-as-sources): New function.
+ (est-eval-apply-value):
+ - Use `est-eval-value-as-sources' instead of
+ `est-eval-value-as-domain-list' for format
+ `space-separated-domain-list'.
+ - Support new format `space-separated-source-list'.
+
+2022-01-21 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc): Use `hdic-tsj-word-id'
+ instead of `=hdic-tsj-entry-id'.
+
+2022-01-19 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el:
+ - Mount `hdic-tsj-word-id' instead of `=hdic-tsj-entry-id'.
+ - Mount `hdic-tsj-word', `hdic-tsj-word-description' and
+ `hdic-tsj-word-remarks'.
+
+2022-01-19 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-format-encode-string): Add setting for
+ `=>big5-cdp@iwds-1'.
+
+ * est-eval.el
+ (est-eval-value-as-HDIC-Yuanben-Yupian-volume-leaf-line-number):
+ New function.
+ (est-eval-apply-value): Use
+ `est-eval-value-as-HDIC-Yuanben-Yupian-volume-leaf-line-number'
+ for format `hdic-yy-readable'.
+ (est-eval-unit): Treat `hdic-yy-readable' as a value getter.
+
+2022-01-17 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el (est-eval-value-as-ndl-page-by-tify): New function.
+ (est-eval-apply-value): Use `est-eval-value-as-ndl-page-by-tify'
+ for format `tify-url-for-ndl'.
+ (est-eval-unit): Treat `tify-url-for-ndl' as a value getter.
+
+ * cwiki-common.el:
+ - Mount `hdic-ktb-entry-type' instead of `hdic-ktb-type'.
+ - Mount `hdic-ktb-ndl-pid'.
+ - Mount `<-HDIC-SYP@KTB' instead of `<-same@SYP/KTB'.
+ - Mount `->HDIC-SYP@KTB' instead of `->same@SYP/KTB'.
+ (www-format-encode-string): Add settings for `===chise-hdic-ktb' and
+ `=chise-hdic-ktb'.
+
+2022-01-16 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el: Mount `=hdic-ktb-entry-id',
+ `hdic-ktb-description', `hdic-ktb-type', `hdic-ktb-diff',
+ `hdic-ktb-syp-id', `hdic-ktb-yy-id', `<-same@SYP/KTB' and
+ `->same@SYP/KTB'.
+
+2022-01-15 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc): Add code to link HDIC
+ Viewer from HDIC-SYP characters.
+
+ * cwiki-common.el: Mount `=hdic-syp-entry-id' and
+ `hdic-syp-description'.
+ (www-format-encode-string): Add settings for `===chise-hdic-syp'
+ and `=chise-hdic-syp'.
+
+2022-01-14 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc):
+ - Add code to link HDIC Viewer from HDIC-TSJ characters.
+ - New implementation to add clickable image of clipped source
+ image for `=shuowen-jiguge', `===shuowen-jiguge5' and
+ `===shuowen-jiguge4' characters.
+
+ * cwiki-common.el: Mount `=hdic-tsj-entry-id' and
+ `=hdic-tsj-glyph-id'.
+ (www-format-encode-string): Add settings for `===chise-hdic-tsj'
+ and `=chise-hdic-tsj'.
+
+2021-06-12 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (est-coded-charset-entity-reference-alist): New
+ variable.
+ (www-format-encode-string):
+ - Use `est-coded-charset-entity-reference-alist'.
+ - Format &A-IWDSU-hhhh; to display with GlyphWiki glyphs.
+
+2021-06-11 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-batch-view-smart): Support
+ .../index.<lang>.html to specify language.
+
+2021-05-02 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-format-encode-string): Use
+ https://moji.or.jp/mojikibansearch/img/MJ/MJ<dddddd>.png instead
+ of https://mojikiban.ipa.go.jp/MJ<dddddd>.png as the URL of MJ
+ glyph-image.
+
+2021-03-02 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (est-coded-charset-priority-list): Add
+ `=>ucs@cognate'.
+
+2021-02-23 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc):
+ - Add CSS setting for `h1'.
+ - Use `chise-wiki-glyphwiki-glyph-image-url' instead of
+ `https://glyphwiki.org/glyph'; use SVG instead of 50px PNG.
+
+2021-02-22 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (chise-wiki-bitmap-glyph-image-url): New
+ variable.
+ (chise-wiki-legacy-bitmap-glyphs-url): Renamed from
+ `chise-wiki-bitmap-glyphs-url'; use "https://www.chise.org/glyphs"
+ instead of "http://www.chise.org/glyphs".
+ (chise-wiki-hng-bitmap-glyphs-url): Use
+ "https://image.hng-data.org/glyphs/HNG" instead of
+ "http://hng.chise.org/glyphs/HNG".
+ (chise-wiki-daijiten-bitmap-glyphs-url): Use
+ "https://image.hng-data.org/glyphs/daijiten" instead of
+ "http://hng.chise.org/glyphs/daijiten".
+ (chise-wiki-glyph-cgi-url): Use
+ "https://www.chise.org/chisewiki/glyph.cgi" instead of
+ "http://www.chise.org/chisewiki/glyph.cgi".
+ (www-format-encode-string):
+ - Add settings for `=>>daikanwa' and `===ucs@ks'.
+ - Use `chise-wiki-legacy-bitmap-glyphs-url' instead of
+ `chise-wiki-bitmap-glyphs-url'.
+ - Use `chise-wiki-bitmap-glyph-image-url' for glyph-image path of
+ JEF-CHINA3 instead of
+ http://kanji.zinbun.kyoto-u.ac.jp/db/CHINA3/Gaiji/; use
+ JEF-CHINA3/<HHHH>.png instead of CHINA3/Gaiji/<hhhh>.gif.
+ - Use https://mojikiban.ipa.go.jp/ instead of
+ http://mojikiban.ipa.go.jp/.
+ - Use chise-wiki-glyphwiki-glyph-image-url instead of
+ "http://glyphwiki.org/glyph"; use SVG instead of 100px PNG.
+ - Add setting for &(o-|G-|g2-|R-)KU(+<HHHH>|-<HHHHHHHH>);.
+ - Use "https://www.unicode.org/cgi-bin/refglyph?24-<HHHH>" instead
+ of "http://www.unicode.org/cgi-bin/refglyph?24-<HHHH>".
+ (coded-charset-GlyphWiki-id-alist): Add setting for
+ `===jis-x0208@1978'.
+
+2021-02-22 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc):
+ - Use https://image.chise.org/openseadragon/openseadragon.min.js
+ instead of
+ http://hng.chise.org/openseadragon/openseadragon.min.js.
+ - Use https://image.chise.org/openseadragon/images/ instead of
+ http://hng.chise.org/openseadragon/images/.
+ - Use https://image.hng-data.org/images/HNG/<ddd>/card/<dddd>.jpg
+ instead of
+ http://hng.chise.org/images/HNG/<ddd>/card/<dddd>.jpg.
+ - Use https://glyphwiki.org/ instead of http://glyphwiki.org/.
+ - Use https://www.chise.org/ids-find instead of
+ http://www.chise.org/ids-find.
+ - Use https://www.chise.org/hng-ids-find instead of
+ http://www.chise.org/hng-ids-find.
+
+2021-02-11 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-uri-encode-object): Use
+ `www-uri-encode-feature-name' instead of
+ `est-uri-encode-feature-name-body'.
+
+2021-02-08 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (est-coded-charset-priority-list): Use
+ `==[name]' instead of `=>>>[name]'.
+ (www-uri-decode-feature-name): Abolished; use implementation in
+ tomoyo-tools/chiset-common.el.
+ (www-uri-encode-feature-name): Likewise.
+
+2020-12-15 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el (est-eval-value-as-Web-yunzi-char): New function.
+ (est-eval-value-as-Web-yunzi-char-list): New function.
+ (est-eval-apply-value): Use
+ `est-eval-value-as-Web-yunzi-char-list' for format
+ `space-separated-Web-yunzi-char-list'.
+
+2020-12-07 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-format-encode-string): Format
+ &(o-|G-|g2-|R-)HD-TK-dddddddd;
+
+2020-10-21 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el (est-eval-value-as-shuowen-radical): New function.
+ (est-eval-apply-value): Use `est-eval-value-as-shuowen-radical'
+ for format `shuowen-radical'.
+ (est-eval-unit): Treat `shuowen-radical' in a similar way to
+ `kangxi-radical'.
+
+2020-10-05 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (est-coded-charset-priority-list): Add
+ `=ucs-var-010' and `=>ucs-itaiji-008'.
+ (www-format-encode-string): Format "&g2-M-ddddd;" to display with
+ GlyphWiki glyphs.
+ (coded-charset-GlyphWiki-id-alist): Add settings for
+ `=ucs-var-006', `=ucs-var-010', `=ucs-itaiji-004',
+ `=ucs-itaiji-005', `=ucs-itaiji-006', `=ucs-itaiji-007',
+ `=ucs-itaiji-008', `=>ucs-itaiji-002', `=>ucs-itaiji-003',
+ `=>ucs-itaiji-004', `=>ucs-itaiji-005', `=>ucs-itaiji-007',
+ `=>ucs-itaiji-008', `==gt', `==gt-k', `=+>big5-cdp',
+ `=>big5-cdp@iwds-1', `=>cbeta', `=big5-cdp-var-001',
+ `=big5-cdp-itaiji-003', `=>big5-cdp-itaiji-002',
+ `=>big5-cdp-itaiji-003' and `=>gt-k'; omit settings for
+ `==ucs@cns' and `=cns11643-*'; modify priority of
+ `=hanyo-denshi/ks', `=hanyo-denshi/tk', `=gt', `=daikanwa',
+ `=ruimoku-v6', `=>ruimoku-v6', `=ucs@iso' and `=ucs@unicode'; use
+ `=big5-cdp-var-00{3|5}' instead of `=big5-cdp-var-{3|5}'.
+ (char-GlyphWiki-id): Omit fallback code for `=cns11643-{1..7}'.
+
+2020-06-15 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (www-format-encode-string): Format
+ &(A-)CDP-vddd-hhhh; and &(A-)M-ddddd; to display with GlyphWiki
+ glyphs.
+
+2020-03-13 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (coded-charset-GlyphWiki-id-alist):
+ - Add settings for `===mj', `==mj' `==ucs@JP/hanazono', `=mj' and
+ `=ucs@JP/hanazono'.
+ - Use uXXXX-j instead of uXXXX for `===ucs@jis', `==ucs@jis' and
+ `=ucs@jis'.
+ - Use uXXXX-jv instead of uXXXX for `=ucs@JP'.
+ (char-GlyphWiki-id): Use uXXXX-j instead of uXXXX for character
+ objects which have `=jis-x0208@1990', `=jis-x0212', `=jis-x0213-1'
+ and `=jis-x0213-2'.
+
+2020-02-05 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc): For each character
+ object to represent HNG glyph-image, generate feature
+ `sources@gallica' and display them if the corresponding HNG-card
+ object has feature `->glyph-image@gallica'.
+
+2019-10-30 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc): Add [HNG-data] button
+ for each character which has the corresponding HNG glyphs.
+
+2019-10-26 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-view.el (www-display-object-desc): For genre `hng-card',
+ add a link to card image for the corresponding image-resource
+ page.
+
+2019-05-02 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el: Mount `abstract-glyph@iwds-1/confluented'.
+
+2019-05-01 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el: Mount `abstract-glyph@iwds-1'.
+
+2019-03-30 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * est-eval.el (daijiten-page-number-to-ndl-950498): New function.
+ (est-eval-value-as-daijiten-page): New function.
+ (est-eval-value-as-daijiten-page-list): New function.
+ (est-eval-apply-value): Use `est-eval-value-as-daijiten-page-list'
+ for format `space-separated-daijiten-page-list'.
+
+2019-03-18 MORIOKA Tomohiko <tomo.git@chise.org>
+
+ * cwiki-common.el (chise-wiki-daijiten-bitmap-glyphs-url): New
+ variable.
+ (est-coded-charset-priority-list): Add `==>daijiten'.
+ (www-format-encode-string): Add settings for `==daijiten',
+ `=daijiten' and `==>daijiten'; add code to display Daijiten
+ characters.
+
2019-03-15 MORIOKA Tomohiko <tomo.git@chise.org>
* cwiki-common.el:
(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)
+
+(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)
=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
===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
))
+(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)
))
;; (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
(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)
(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)
- 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))
(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))
(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-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
code
www-format-char-img-style)
t 'literal))
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"
style=\"vertical-align:middle; width: auto; max-height: 80px\"><span
class=\"tooltiptext\">%s</span></div>"
plane code
- chise-wiki-bitmap-glyphs-url
+ chise-wiki-legacy-bitmap-glyphs-url
plane code
(charset-description
(if (string= subcode "")
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
(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://moji.or.jp/mojikibansearch/img/MJ/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))
(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=\"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)
(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\"
(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)
genre-o 'object-representative-feature))
'name))
(www-get-feature-value value '=name)
+ (www-get-feature-value value '=title)
(est-eval-value-default value))
))
)))
(mapconcat #'char-to-string ret ""))
(est-eval-value-as-object value))))
+(defun est-eval-value-as-object-with-description (value
+ object feature-name
+ &optional lang uri-object list-props)
+ (let (ret)
+ (cond
+ ((characterp value)
+ (setq ret (or (get-char-attribute value 'description)
+ (get-char-attribute value 'hdic-syp-description)
+ (get-char-attribute value 'hdic-ktb-description)))
+ )
+ ((concord-object-p value)
+ (setq ret (concord-object-get value 'description))
+ ))
+ (if ret
+ (list 'list nil
+ (est-eval-value-as-object value)
+ (est-eval-list ret
+ object feature-name
+ lang uri-object list-props))
+ (est-eval-value-as-object value))))
+
+(defun est-eval-value-as-hdic-tsj-character-with-description (value
+ object feature-name
+ &optional
+ lang uri-object list-props)
+ (let (word desc ret)
+ (cond
+ ((characterp value)
+ (when (setq word (get-char-attribute value 'hdic-tsj-word))
+ (if (and (= (length word) 1)
+ (setq ret (get-char-attribute value '<-HDIC-TSJ))
+ (memq (aref word 0) ret))
+ (setq desc (or (get-char-attribute value 'hdic-tsj-word-description)
+ (get-char-attribute value 'description)))
+ (setq desc (list "(" word ")"))))
+ )
+ ((concord-object-p value)
+ (setq desc (concord-object-get value 'description))
+ ))
+ (if desc
+ (list 'list nil
+ (est-eval-value-as-object value)
+ (est-eval-list (append desc '(" "))
+ object feature-name
+ lang uri-object list-props))
+ (est-eval-value-as-object value))))
+
(defun est-eval-value-as-location (value)
(let (ret)
(if (and (concord-object-p value)
(format "%c" (ideographic-radical value)))
(est-eval-value-as-S-exp value)))
+(defun est-eval-value-as-shuowen-radical (value)
+ (if (and (integerp value)
+ (<= 0 value)
+ (<= value 540))
+ (list 'shuowen-radical
+ nil
+ (format "%c" (shuowen-radical value)))
+ (est-eval-value-as-S-exp value)))
+
+(defun daijiten-page-number-to-ndl-950498 (page)
+ (+ (/ page 2)
+ (cond ((< page 229)
+ 23)
+ ((< page 261)
+ 24)
+ ((< page 263)
+ 25)
+ ((< page 516) ; 284=285
+ 26)
+ (t
+ 27))))
+
+(defun est-eval-value-as-daijiten-page (value)
+ (if (integerp value)
+ (list 'link
+ (list :ref
+ (format "http://image.chise.org/tify/?manifest=https://www.dl.ndl.go.jp/api/iiif/950498/manifest.json&tify={%%22pages%%22:[%d]}"
+ (daijiten-page-number-to-ndl-950498 value)))
+ value)))
+
+(defun est-eval-value-as-ndl-page-by-tify (value)
+ (if (symbolp value)
+ (setq value (symbol-name value)))
+ (if (stringp value)
+ (if (string-match "/" value)
+ (format "http://image.chise.org/tify/?manifest=https://www.dl.ndl.go.jp/api/iiif/%s/manifest.json&tify={%%22pages%%22:[%s]}"
+ (substring value 0 (match-beginning 0))
+ (substring value (match-end 0)))
+ (format "http://image.chise.org/tify/?manifest=https://www.dl.ndl.go.jp/api/iiif/%s/manifest.json"
+ value))
+ value))
+
+(defun est-eval-value-as-Web-yunzi-char (value)
+ (if (char-or-char-int-p value)
+ (list 'link
+ (list :ref
+ (format "http://suzukish.s252.xrea.com/search/inkyo/yunzi/%c"
+ value))
+ (format "/%s/" (char-to-string value)))))
+
+(defun est-eval-value-as-HDIC-Yuanben-Yupian-volume-leaf-line-number (value)
+ (if (symbolp value)
+ (setq value (symbol-name value)))
+ (if (and (stringp value)
+ (string-match
+ "^Y\\([0-9][0-9]\\)\\([0-9][0-9][0-9]\\)\\([0-9][0-9][0-9]\\)-\\([0-9]\\)$"
+ value))
+ (format "%d巻 %d紙 %d列 %d字目 (%s)"
+ (string-to-int (match-string 1 value))
+ (string-to-int (match-string 2 value))
+ (string-to-int (match-string 3 value))
+ (string-to-int (match-string 4 value))
+ value)
+ value))
+
(defun est-eval-value-as-object-list (value &optional separator subtype)
(if (and (listp value)
(listp (cdr value)))
(error (format "%s" value)))
(format "%s" value)))
+(defun est-eval-value-as-entry-character-list (value
+ object feature-name
+ &optional separator subtype
+ lang uri-object list-props)
+ (if (and (listp value)
+ (listp (cdr value)))
+ (condition-case nil
+ (let (props)
+ (if separator
+ (setq props (list :separator separator)))
+ (if subtype
+ (setq props (list* :subtype subtype props)))
+ (list* 'list props
+ (mapcar (lambda (cell)
+ (est-eval-value-as-object-with-description
+ cell
+ object feature-name
+ lang uri-object list-props))
+ value)))
+ (error (format "%s" value)))
+ (format "%s" value)))
+
+(defun est-eval-value-as-hdic-tsj-entry-character-list (value
+ object feature-name
+ &optional separator subtype
+ lang uri-object list-props)
+ (if (and (listp value)
+ (listp (cdr value)))
+ (condition-case nil
+ (let (props)
+ (if separator
+ (setq props (list :separator separator)))
+ (if subtype
+ (setq props (list* :subtype subtype props)))
+ (list* 'list props
+ (mapcar (lambda (cell)
+ (est-eval-value-as-hdic-tsj-character-with-description
+ cell
+ object feature-name
+ lang uri-object list-props))
+ value)))
+ (error (format "%s" value)))
+ (format "%s" value)))
+
+
;; (defun est-eval-value-as-ids (value)
;; (if (listp value)
;; (list 'ids nil (ideographic-structure-to-ids value))
value)))
(est-eval-value-default value)))
+(defun est-eval-value-as-sources (value)
+ (if (listp value)
+ (let (unit-str
+ source item source-objs source0 start end num
+ source-cobj title)
+ (list* 'res-list
+ '(:separator " ")
+ (mapcar
+ (lambda (unit)
+ (setq unit-str
+ (if (symbolp unit)
+ (symbol-name unit)
+ (format "%s" unit)))
+ (if (string-match "=" unit-str)
+ (setq source (intern
+ (substring unit-str 0 (match-beginning 0)))
+ item (car (read-from-string
+ (substring unit-str (match-end 0)))))
+ (setq source unit
+ item nil))
+ (cond
+ ((and (setq source-cobj (concord-decode-object
+ '=chise-bib-id source 'bibliography))
+ (setq title (concord-object-get source-cobj '=title)))
+ (setq source-objs
+ (if item
+ (list (est-eval-value-as-object source-cobj)
+ "="
+ item)
+ (list (est-eval-value-as-object source-cobj))))
+ )
+ ((eq source 'bos)
+ (setq source-objs
+ (list
+ (est-eval-value-as-object
+ (or (concord-decode-object
+ '=id item 'book@ruimoku)
+ (concord-decode-object
+ '=id item 'article@ruimoku)
+ unit))))
+ )
+ ((memq source '(zob1959 zob1968))
+ (if (and (symbolp item)
+ (setq num (symbol-name item))
+ (string-match
+ "^\\([0-9]+\\)-\\([0-9]+\\)$" num))
+ (setq start (string-to-number
+ (match-string 1 num))
+ end (string-to-number
+ (match-string 2 num)))
+ (setq start item
+ end item))
+ (if (not (numberp start))
+ (setq source-objs
+ (list
+ (est-eval-value-as-object unit)))
+ (if (eq source source0)
+ (setq source-objs
+ (list
+ (list 'link
+ (list :ref
+ (format "http://chise.zinbun.kyoto-u.ac.jp/koukotsu/rubbings/%04d"
+ start))
+ start)))
+ (setq source0 source)
+ (setq source-objs
+ (list
+ (list 'link
+ (list :ref
+ (format "http://chise.zinbun.kyoto-u.ac.jp/koukotsu/rubbings/%04d"
+ start))
+ start)
+ "="
+ '(link
+ (:ref "http://chise.zinbun.kyoto-u.ac.jp/koukotsu/")
+ "\u4EAC大人\u6587研甲\u9AA8")))
+ )
+ (setq num (1+ start))
+ (while (<= num end)
+ (setq source-objs
+ (cons
+ (list 'link
+ (list :ref
+ (format "http://chise.zinbun.kyoto-u.ac.jp/koukotsu/rubbings/%04d"
+ num))
+ num)
+ source-objs))
+ (setq num (1+ num)))
+ (setq source-objs (nreverse source-objs)))
+ )
+ (t
+ (setq source-objs
+ (list (est-eval-value-as-object unit)))
+ ))
+ (list* 'res-link
+ (list :separator " "
+ :source source :item item)
+ source-objs)
+ )
+ value)))
+ (est-eval-value-default value)))
+
+(defun est-eval-value-as-daijiten-page-list (value &optional separator subtype)
+ (if (and (listp value)
+ (listp (cdr value)))
+ (condition-case nil
+ (let (props)
+ (if separator
+ (setq props (list :separator separator)))
+ (if subtype
+ (setq props (list* :subtype subtype props)))
+ (list* 'list props
+ (mapcar #'est-eval-value-as-daijiten-page value)))
+ (error (format "%s" value)))
+ (format "%s" value)))
+
+(defun est-eval-value-as-Web-yunzi-char-list (value &optional separator subtype)
+ (if (and (listp value)
+ (listp (cdr value)))
+ (condition-case nil
+ (let (props)
+ (if separator
+ (setq props (list :separator separator)))
+ (if subtype
+ (setq props (list* :subtype subtype props)))
+ (list* 'list props
+ (mapcar #'est-eval-value-as-Web-yunzi-char value)))
+ (error (format "%s" value)))
+ (format "%s" value)))
+
(defun est-eval-value-as-creators-names (value &optional subtype)
(if (listp value)
(let (role-name)
(est-eval-value-as-kuten value))
((eq format 'kangxi-radical)
(est-eval-value-as-kangxi-radical value))
+ ((eq format 'tify-url-for-ndl)
+ (est-eval-value-as-ndl-page-by-tify value)
+ )
+ ((eq format 'hdic-yy-readable)
+ (est-eval-value-as-HDIC-Yuanben-Yupian-volume-leaf-line-number value)
+ )
+ ((eq format 'shuowen-radical)
+ (est-eval-value-as-shuowen-radical value))
((eq format 'ids)
(est-eval-value-as-ids value))
((eq format 'decomposition)
(est-eval-value-as-object-list value nil 'unordered-list))
((eq format 'unordered-composition-list)
(est-eval-value-as-composition-list value nil 'unordered-list))
+ ((eq format 'entry-character-list)
+ (est-eval-value-as-entry-character-list
+ value
+ object feature-name
+ nil nil
+ lang uri-object list-props))
+ ((eq format 'unordered-entry-character-list)
+ (est-eval-value-as-entry-character-list
+ value
+ object feature-name
+ nil 'unordered-list
+ lang uri-object list-props))
+ ((eq format 'hdic-tsj-entry-character-list)
+ (est-eval-value-as-hdic-tsj-entry-character-list
+ value
+ object feature-name
+ nil nil
+ lang uri-object list-props))
((eq format 'space-separated-ids)
(est-eval-value-as-space-separated-ids value))
((eq format 'space-separated-domain-list)
- (est-eval-value-as-domain-list value))
+ ;; (est-eval-value-as-domain-list value)
+ (est-eval-value-as-sources value))
+ ((eq format 'space-separated-source-list)
+ (est-eval-value-as-sources value))
((eq format 'space-separated-creator-name-list)
(est-eval-value-as-creators-names value))
((eq format 'unordered-creator-name-list)
(est-eval-value-as-created-works value 'unordered-list))
((eq format 'journal-volume-list)
(est-eval-value-as-journal-volumes value))
+ ((eq format 'space-separated-daijiten-page-list)
+ (est-eval-value-as-daijiten-page-list value " "))
+ ((eq format 'space-separated-Web-yunzi-char-list)
+ (est-eval-value-as-Web-yunzi-char-list value " "))
(t
(est-eval-value-default value)
))
((null exp) "")
((consp exp)
(cond
- ((memq (car exp) '(value decimal hex HEX ku-ten kangxi-radical
- S-exp string default))
+ ((memq (car exp) '(value decimal hex HEX ku-ten
+ kangxi-radical shuowen-radical
+ S-exp string default
+ tify-url-for-ndl hdic-yy-readable))
(let ((fn (plist-get (nth 1 exp) :feature))
domain domain-fn ret)
(when fn