Mercurial > emacs
changeset 22671:5dee1f64801f
Fill weight and slant fields of a fontset
generted from the specified ASCII font by values got from the
resolved ASCII font name.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Fri, 03 Jul 1998 04:39:22 +0000 |
parents | 160c346d6192 |
children | 9cfa1a788a5a |
files | lisp/term/x-win.el |
diffstat | 1 files changed, 19 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/term/x-win.el Fri Jul 03 04:39:22 1998 +0000 +++ b/lisp/term/x-win.el Fri Jul 03 04:39:22 1998 +0000 @@ -674,10 +674,10 @@ (let ((font (or (cdr (assq 'font initial-frame-alist)) (cdr (assq 'font default-frame-alist)) (x-get-resource "font" "Font"))) - xlfd-fields) + xlfd-fields resolved-name) (if (and font (not (query-fontset font)) - (x-resolve-font-name font) + (setq resolved-name (x-resolve-font-name font)) (setq xlfd-fields (x-decompose-font-name font))) (if (string= "fontset" (aref xlfd-fields xlfd-regexp-registry-subnum)) @@ -703,6 +703,23 @@ (aset xlfd-fields xlfd-regexp-family-subnum nil) (aset xlfd-fields xlfd-regexp-registry-subnum "fontset") (aset xlfd-fields xlfd-regexp-encoding-subnum "startup") + ;; The fontset name should have concrete values in + ;; weight and slant field. + (let ((weight (aref xlfd-fields xlfd-regexp-weight-subnum)) + (slant (aref xlfd-fields xlfd-regexp-slant-subnum)) + xlfd-temp) + (if (or (not weight) (string-match "[*?]*" weight)) + (progn + (setq xlfd-temp (x-decompose-font-name resolved-name)) + (aset xlfd-fields xlfd-regexp-weight-subnum + (aref xlfd-temp xlfd-regexp-weight-subnum)))) + (if (or (not slant) (string-match "[*?]*" slant)) + (progn + (or xlfd-temp + (setq xlfd-temp + (x-decompose-font-name resolved-name))) + (aset xlfd-fields xlfd-regexp-slant-subnum + (aref xlfd-temp xlfd-regexp-slant-subnum))))) (setq fontset (x-compose-font-name xlfd-fields)) (create-fontset-from-fontset-spec (concat fontset ", ascii:" font) styles)