1 (setq debug-on-error t)
3 (defvar egg-face-color-Japanese '("Blue" . "Cyan"))
4 (defvar egg-face-color-Chinese-GB '("Red" . "OrangeRed"))
5 (defvar egg-face-color-Chinese-CNS '("Purple" . "Violet"))
6 (defvar egg-face-color-Korean '("ForestGreen" . "Green"))
7 (defvar egg-face-color-other
8 (cons (frame-parameter (selected-frame) 'foreground-color)
9 (frame-parameter (selected-frame) 'foreground-color)))
11 (defconst egg-face-lang-names
12 '("Japanese" "Chinese-GB" "Chinese-CNS" "Korean" "t"))
14 (defun egg-make-face (lang)
15 (let ((mode (eq (frame-parameter (selected-frame) 'background-mode) 'light))
16 (face (make-face (intern (concat "egg-face-" lang))))
17 (color (intern (concat "egg-face-color-" lang))))
18 (setq color (and (boundp color) (symbol-value color)))
19 (set-face-foreground face
21 (if mode (car color) (cdr color))
25 (defconst its-fence-face
27 (mapcar (lambda (lang)
28 (let ((lang-name (if (equal lang "t") "other" lang)))
30 (egg-make-face lang-name))))
31 egg-face-lang-names)))
33 (defconst egg-conversion-face its-fence-face)