(defvar chise-wiki-edit-url "edit/edit.cgi")
(defvar chise-wiki-add-url "edit/add.cgi")
-(defun www-char-display-feature-default (char feature-name &optional value
- lang uri-char)
- (unless value
- (setq value (www-char-feature char feature-name)))
- (unless uri-char
- (setq uri-char (char-to-string char)))
- (www-html-display-paragraph
- (format "[[%s|%?feature=%s&char=%s]] : %s [[[edit|%s?char=%s&feature=%s]]]"
- (www-format-feature-name feature-name lang)
- chise-wiki-view-url
- (www-uri-encode-feature-name feature-name)
- uri-char
- (www-format-value value feature-name)
- chise-wiki-edit-url
- uri-char
- (www-uri-encode-feature-name feature-name)
- )))
-
-(defun www-char-display-feature-as-ucs (char feature-name &optional value)
- (unless value
- (setq value (www-char-feature char feature-name)))
- (www-html-display-paragraph
- (format "= [[U+%s|http://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=%s]] (%d)"
- (www-format-value-as-HEX value)
- (www-format-value-as-HEX value)
- value)))
-
(defun www-display-char-desc (uri-char &optional lang level)
(unless level
(setq level 1))
(let ((char (www-uri-decode-char uri-char))
- feature-name logical-feature displayed-features)
+ logical-feature displayed-features
+ parents
+ GlyphWiki-id)
(when (characterp char)
(when (= (length uri-char) 1)
(setq uri-char (www-uri-encode-char char)))
(decode-uri-string uri-char 'utf-8-mcs-er))
'utf-8-mcs-er))
(princ "<body>\n"))
- (princ (format "<h%d>%s</h%d>\n"
+ (dolist (feature (char-feature-property '$object 'additional-features))
+ (mount-char-attribute-table
+ (char-feature-name-at-domain feature '$rev=latest)))
+ (when (setq parents (www-char-feature char '<-denotational))
+ (princ (format "<p>%s %s</p>\n<hr>\n"
+ (www-format-value-as-char-list parents)
+ (www-format-feature-name '->denotational lang))))
+ (when (setq parents (www-char-feature char '<-subsumptive))
+ (princ (format "<p>%s %s</p>\n<hr>\n"
+ (www-format-value-as-char-list parents)
+ (www-format-feature-name '->subsumptive lang))))
+ (setq GlyphWiki-id (char-GlyphWiki-id char))
+ (princ (format "<h%d>%s%s</h%d>\n"
level
(www-format-encode-string (char-to-string char))
+ (if GlyphWiki-id
+ (format
+ " <a href=\"http://glyphwiki.org/wiki/%s\"><img alt=\"%s\" src=\"http://glyphwiki.org/glyph/%s.50px.png\" /></a>"
+ GlyphWiki-id
+ GlyphWiki-id GlyphWiki-id)
+ "")
level))
(if (> level 1)
(princ "<ul>"))
(dolist (cell (sort (char-attribute-alist char)
(lambda (a b)
- (char-attribute-name< (car a)(car b)))))
- (setq feature-name (symbol-name (car cell)))
- (setq logical-feature
- (if (string-match "[@/]\\$rev=latest$" feature-name)
- (intern (substring feature-name 0 (match-beginning 0)))
- (car cell)))
+ (char-attribute-name<
+ (char-feature-name-sans-versions (car a))
+ (char-feature-name-sans-versions (car b))))))
+ (setq logical-feature (char-feature-name-sans-versions (car cell)))
(unless (memq logical-feature displayed-features)
(push logical-feature displayed-features)
(princ
logical-feature ; (car cell)
lang uri-char))
(princ
- (format " <a href=\"%s?char=%s&feature=%s\"
+ (format " <a href=\"%s?char=%s&feature=%s&format=wiki-text\"
><input type=\"submit\" value=\"note\" /></a>"
chise-wiki-edit-url
(www-format-encode-string uri-char)
(www-format-encode-string uri-char)))
(princ
(if (= level 1)
+ "<p>\n"
+ "<li>\n"))
+ (princ
+ "<form action=\"http://chise.zinbun.kyoto-u.ac.jp/ids-find\">\n")
+ (princ
+ (www-format-encode-string
+ (format "%c" char)))
+ (princ
+ (format
+ " <input type=\"text\" name=\"components\"
+size=\"30\" maxlength=\"30\" value=\"%s\" />"
+ (encode-coding-string (char-to-string char) 'utf-8-jp-er)))
+ ;; (princ (www-format-encode-string "と"))
+ ;; (princ "<input type=\"text\" name=\"additional-components\"
+size=\;; "30\" maxlength=\"30\" value=\"\" />")
+ (princ
+ (www-format-encode-string
+ "を\u542Bむ\u6F22\u5B57を\u63A2す"))
+ (princ " <input type=\"submit\" value=\"search\" />\n")
+ (princ "</form>\n")
+ (princ
+ (if (= level 1)
"</p>\n"
"<li>\n"))
)))
(symbol-name feature-name))))
(princ (format "<p>name : %s "
(or (www-format-feature-name feature-name) "")))
- (www-html-display-text
- (format "[[[edit|%s?feature=%s&property=name&char=%s]]]"
- ;; (char-feature-property feature-name 'name)
+ (princ
+ (format " <a href=\"%s?feature=%s&property=name&format=string&char=%s\"
+><input type=\"submit\" value=\"edit\" /></a>"
chise-wiki-edit-url
- uri-feature-name ; (www-uri-encode-feature-name feature-name)
+ uri-feature-name
uri-char))
+ ;; (www-html-display-text
+ ;; (format "[[[edit|%s?feature=%s&property=name&char=%s]]]"
+ ;; ;; (char-feature-property feature-name 'name)
+ ;; chise-wiki-edit-url
+ ;; uri-feature-name ; (www-uri-encode-feature-name feature-name)
+ ;; uri-char))
(princ "</p>")
(when lang
(princ "<p>")
(format "%s : %s"
name@lang
(or (char-feature-property feature-name name@lang) ""))))
- (www-html-display-text
- (format " [[[edit|%s?feature=%s&property=%s&char=%s]]]"
+ (princ
+ (format " <a href=\"%s?feature=%s&property=%s&format=string&char=%s\"
+><input type=\"submit\" value=\"edit\" /></a>"
chise-wiki-edit-url
uri-feature-name
name@lang
uri-char))
+ ;; (www-html-display-text
+ ;; (format " [[[edit|%s?feature=%s&property=%s&char=%s]]]"
+ ;; chise-wiki-edit-url
+ ;; uri-feature-name
+ ;; name@lang
+ ;; uri-char))
(princ "</p>"))
(www-html-display-paragraph
(format "type : %s"
(or (www-feature-type feature-name)
;; (char-feature-property feature-name 'type)
'generic)))
+ (princ (format "<p>value-format : %s "
+ (www-format-value
+ nil 'value-format
+ (or (www-feature-value-format feature-name)
+ 'default)
+ 'default
+ 'without-tags)))
+ ;; (www-html-display-paragraph
+ ;; (format "value-format : %s"
+ ;; (www-xml-format-list
+ ;; (or (www-feature-value-format feature-name)
+ ;; 'default))))
+ (princ
+ (format
+ " <a href=\"%s?feature=%s&property=value-format&format=wiki-text&char=%s\"
+><input type=\"submit\" value=\"edit\" /></a></p>"
+ chise-wiki-edit-url
+ uri-feature-name
+ uri-char))
+
+ (www-html-display-paragraph
+ (format "format : %s"
+ (www-xml-format-list
+ (or (char-feature-property feature-name 'format)
+ '((name) " : " (value))))))
(www-html-display-paragraph
(format "description : %s"
(or (char-feature-property feature-name 'description)
")
(cond
((stringp target)
+ (when (string-match "^char=\\(&[^&;]+;\\)" target)
+ (setq ret (match-end 0))
+ (setq target
+ (concat "char="
+ (www-uri-encode-char
+ (www-uri-decode-char (match-string 1 target)))
+ (substring target ret))))
(setq target
(mapcar (lambda (cell)
(if (string-match "=" cell)