(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)))))
+ (if (and (or (not weight) (string-match "[*?]*" weight))
+ (setq xlfd-temp
+ (x-decompose-font-name resolved-name)))
+ (aset xlfd-fields xlfd-regexp-weight-subnum
+ (aref xlfd-temp xlfd-regexp-weight-subnum)))
+ (if (and (or (not slant) (string-match "[*?]*" slant))
+ (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)