" (" (decimal) ") <" (ku-ten) ">")
'("0x" (HEX) " (" (decimal) ")")))))
+(defun char-feature-name-at-domain (feature-name domain)
+ (let ((name (symbol-name feature-name)))
+ (cond
+ ((string-match "@[^*]+$" name)
+ (intern (format "%s/%s" name domain))
+ )
+ (t
+ (intern (format "%s@%s" name domain))
+ ))))
+
+(defun www-char-feature (character feature)
+ (let ((latest-feature (char-feature-name-at-domain feature '$rev=latest)))
+ (mount-char-attribute-table latest-feature)
+ (or (char-feature character latest-feature)
+ (char-feature character feature))))
+
;;; @ URI representation
;;;
(setq start (match-beginning 0)
end (match-end 0))
(setq char (decode-char 'system-char-id code))
- (setq variants (or (char-feature char '->subsumptive)
- (char-feature char '->denotational)))
+ (setq variants (or (www-char-feature char '->subsumptive)
+ (www-char-feature char '->denotational)))
(while (and variants
(setq ret (www-format-encode-string
(char-to-string (car variants))))
feature-name
&optional format lang uri-char value)
(unless value
- (setq value (char-feature char feature-name)))
+ (setq value (www-char-feature char feature-name)))
(unless format
(setq format (www-feature-value-format feature-name)))
(cond
(defun www-format-eval-unit (exp char feature-name
&optional lang uri-char value)
(unless value
- (setq value (char-feature char feature-name)))
+ (setq value (www-char-feature char feature-name)))
(unless uri-char
(setq uri-char (www-uri-encode-char char)))
(cond