diff --git a/suse-xft-init.el b/suse-xft-init.el index 70c1d2a..84b2800 100644 --- a/suse-xft-init.el +++ b/suse-xft-init.el @@ -61,7 +61,10 @@ (set-face-font face (format "%s:size=%d" (cdr (assoc "en" suse-xft-fonts-alist)) - size)) + size) + 'global + nil + 'remove-all) ;; then append the fonts for the other languages (mapcar (lambda (tag) @@ -69,7 +72,7 @@ (format "%s:size=%d" (cdr (assoc tag suse-xft-fonts-alist)) size) - nil + 'global (list (intern tag)) 'remove-tag-set-append)) suse-xft-lang-tags) @@ -80,16 +83,30 @@ (if (string-match "italic" (symbol-name face)) (make-face-italic face))) (if (fboundp 'custom-face-get-spec) - (if (and (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :bold)) - (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :italic))) - (make-face-bold-italic face) - (if (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :bold)) - (make-face-bold face)) - (if (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :italic)) - (make-face-italic face)))) + (if (and (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :bold)) + (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :italic))) + (make-face-bold-italic face)) + (if (and (eq 'bold (plist-get (cadr (assoc t (custom-face-get-spec face))) :weight)) + (eq 'italic (plist-get (cadr (assoc t (custom-face-get-spec face))) :slant))) + (make-face-bold-italic face) + (if (eq 'bold (plist-get (cadr (assoc t (custom-face-get-spec face))) :weight)) + (make-face-bold face)) + (if (eq 'italic (plist-get (cadr (assoc t (custom-face-get-spec face))) :slant)) + (make-face-italic face)) + (if (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :bold)) + (make-face-bold face)) + (if (eq t (plist-get (cadr (assoc t (custom-face-get-spec face))) :italic)) + (make-face-italic face)))) )) (face-list)))) +(defun suse-xft-set-size (size) + (interactive "nset all fonts to point-size: ") + (setq suse-xft-current-size size) + (if (> 1 suse-xft-current-size) + (setq suse-xft-current-size 1)) + (suse-xft-set-all-faces suse-xft-current-size)) + (defun suse-xft-change-size (delta) (interactive "nsize change in point (may be negative): ") (setq suse-xft-current-size (+ delta suse-xft-current-size)) diff --git a/xemacs.changes b/xemacs.changes index 78879d3..5a42068 100644 --- a/xemacs.changes +++ b/xemacs.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Fri Dec 21 19:41:57 CET 2007 - mfabian@suse.de + +- some more hacks in the Xft font setup. + +------------------------------------------------------------------- +Fri Dec 21 18:21:34 CET 2007 - mfabian@suse.de + +- improve Xft font setup hacks: clear all settings first when + trying to set new fonts for all faces. + ------------------------------------------------------------------- Thu Dec 20 16:34:22 CET 2007 - ro@suse.de diff --git a/xemacs.spec b/xemacs.spec index 41fe1c2..d814476 100644 --- a/xemacs.spec +++ b/xemacs.spec @@ -37,7 +37,7 @@ Requires: xemacs-info xemacs-packages ctags Conflicts: gnuserv AutoReqProv: on Version: 21.5.28.20071220 -Release: 1 +Release: 2 Summary: XEmacs BuildRoot: %{_tmppath}/%{name}-%{version}-build # Howto get the cvs tree of XEmacs: @@ -577,6 +577,11 @@ rm -rf $RPM_BUILD_ROOT %dir /usr/share/xemacs/site-packages/lisp/term/ %changelog +* Fri Dec 21 2007 - mfabian@suse.de +- some more hacks in the Xft font setup. +* Fri Dec 21 2007 - mfabian@suse.de +- improve Xft font setup hacks: clear all settings first when + trying to set new fonts for all faces. * Thu Dec 20 2007 - ro@suse.de - update to CVS of 20071220 - deleted bugzilla-294746-support-windows-1252.patch (upstream)