 ;; Copyright (C) 2013 Dylan.Wen
 
 ;; Author: Dylan.Wen <hhkbp2@gmail.com>
-;; Time-stamp: <2013-12-15 00:03>
+;; Time-stamp: <2013-12-15 12:19>
 
 ;; This file is free software: you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by

its value comes from `en-font-size'."

  (or zh-font-size (setq zh-font-size en-font-size))
  (let* ((en-font-name (find-if #'dw-font-exsits-p en-font-list))
         (zh-font-name (find-if #'dw-font-exsits-p zh-font-list)))
    (unless (and en-font-name zh-font-name)
      (error "no available font in font list en: %s and zh: %s"
             en-font-list zh-font-list))

  "Personal favor font list for language zh in descendent order.")


(defun dw-font-exsits-p (font-name-pattern)
  "Return t if any available font matches `font-name-patterm', else nil."
  (x-list-fonts font-name-pattern))

(defun dw-first-available-font (font-list)
  "Return first available font in `font-list'."
  (find-if #'dw-font-exsits-p font-list))


(defconst dw-default-font-name (dw-first-available-font dw-favor-en-font-list)
  "Default frame font name.")

(defconst dw-default-font
  (format "%s-%s" dw-default-font-name dw-favor-font-size)
  "Default frame font desc.")


(defun dw-set-font (en-font-list
                    en-font-size
