Mercurial > emacs
changeset 85155:f17129d066f0
Fix :foreground and :background face attributes
author | Vinicius Jose Latorre <viniciusjl@ig.com.br> |
---|---|
date | Thu, 11 Oct 2007 01:59:14 +0000 |
parents | e12e16dc9c24 |
children | 781d1ba5e7a2 |
files | lisp/ChangeLog lisp/ps-print.el |
diffstat | 2 files changed, 31 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Thu Oct 11 01:46:40 2007 +0000 +++ b/lisp/ChangeLog Thu Oct 11 01:59:14 2007 +0000 @@ -2,6 +2,16 @@ * international/characters.el: Undo unwanted and unexplained change. +2007-10-10 Vinicius Jose Latorre <viniciusjl@ig.com.br> + + * ps-print.el: Fix the usage of :foreground and :background face + attributes. Reported by Nikolaj Schumacher <n_schumacher@web.de>. + (ps-print-version): New version 6.7.6. + (ps-face-attributes, ps-face-attribute-list, ps-face-background): Fix + code. + (ps-face-foreground-color-p, ps-face-background-color-p) + (ps-face-color-p): New inline funs. + 2007-10-10 Carsten Dominik <dominik@science.uva.nl> * org.el (org-additional-option-like-keywords): New constant.
--- a/lisp/ps-print.el Thu Oct 11 01:46:40 2007 +0000 +++ b/lisp/ps-print.el Thu Oct 11 01:59:14 2007 +0000 @@ -10,11 +10,11 @@ ;; Maintainer: Kenichi Handa <handa@m17n.org> (multi-byte characters) ;; Vinicius Jose Latorre <viniciusjl@ig.com.br> ;; Keywords: wp, print, PostScript -;; Version: 6.7.5 +;; Version: 6.7.6 ;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre -(defconst ps-print-version "6.7.5" - "ps-print.el, v 6.7.5 <2007/07/20 vinicius> +(defconst ps-print-version "6.7.6" + "ps-print.el, v 6.7.6 <2007/10/10 vinicius> Vinicius's last change version -- this file may have been edited as part of Emacs without changes to the version number. When reporting bugs, please also @@ -6341,6 +6341,18 @@ (ps-output " S\n"))) +(defsubst ps-face-foreground-color-p (attr) + (memq attr '(foreground-color :foreground))) + + +(defsubst ps-face-background-color-p (attr) + (memq attr '(background-color :background))) + + +(defsubst ps-face-color-p (attr) + (memq attr '(foreground-color :foreground background-color :background))) + + (defun ps-face-attributes (face) "Return face attribute vector. @@ -6364,9 +6376,9 @@ (setq ps-print-face-alist (cons new-face ps-print-face-alist))) new-face)))) - ((eq (car face) 'foreground-color) + ((ps-face-foreground-color-p (car face)) (vector 0 (cdr face) nil)) - ((eq (car face) 'background-color) + ((ps-face-background-color-p (car face)) (vector 0 nil (cdr face))) (t (vector 0 nil nil)))) @@ -6379,12 +6391,11 @@ ((symbolp face) (memq face ps-use-face-background)) ((listp face) - (or (memq (car face) '(foreground-color background-color)) + (or (ps-face-color-p (car face)) (let (ok) (while face (if (or (memq (car face) ps-use-face-background) - (memq (car face) - '(foreground-color background-color))) + (ps-face-color-p (car face))) (setq face nil ok t) (setq face (cdr face)))) @@ -6401,10 +6412,10 @@ ((not (listp face-or-list)) (ps-face-attributes face-or-list)) ;; only foreground color, not a `real' face - ((eq (car face-or-list) 'foreground-color) + ((ps-face-foreground-color-p (car face-or-list)) (vector 0 (cdr face-or-list) nil)) ;; only background color, not a `real' face - ((eq (car face-or-list) 'background-color) + ((ps-face-background-color-p (car face-or-list)) (vector 0 nil (cdr face-or-list))) ;; list of faces (t