changeset 47674:330113e9df2b

(ps-print-emacs-type): Error if ps-print is activated in Epoch, inLucid or in Emacs v19 or lesser. Value can no longer be `lucid'. (ps-print-version): New version number (6.5.8). (faces): Never do (require 'faces).
author Richard M. Stallman <rms@gnu.org>
date Sun, 29 Sep 2002 03:30:41 +0000
parents a3f7ece066e5
children cb548fe4bcdb
files lisp/ps-print.el
diffstat 1 files changed, 31 insertions(+), 27 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ps-print.el	Sun Sep 29 03:19:55 2002 +0000
+++ b/lisp/ps-print.el	Sun Sep 29 03:30:41 2002 +0000
@@ -10,12 +10,12 @@
 ;; Maintainer: Kenichi Handa <handa@etl.go.jp> (multi-byte characters)
 ;;	Vinicius Jose Latorre <vinicius@cpqd.com.br>
 ;; Keywords: wp, print, PostScript
-;; Time-stamp: <2002/09/11 15:52:39 vinicius>
-;; Version: 6.5.7
+;; Time-stamp: <2002/09/13 10:10:20 vinicius>
+;; Version: 6.5.8
 ;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/
 
-(defconst ps-print-version "6.5.7"
-  "ps-print.el, v 6.5.7 <2002/09/11 vinicius>
+(defconst ps-print-version "6.5.8"
+  "ps-print.el, v 6.5.8 <2002/09/13 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
@@ -49,8 +49,8 @@
 ;;
 ;; This package provides printing of Emacs buffers on PostScript printers; the
 ;; buffer's bold and italic text attributes are preserved in the printer
-;; output.  ps-print is intended for use with Emacs or Lucid Emacs, together
-;; with a fontifying package such as font-lock or hilit.
+;; output.  ps-print is intended for use with Emacs or XEmacs, together with a
+;; fontifying package such as font-lock or hilit.
 ;;
 ;; ps-print uses the same face attributes defined through font-lock or hilit to
 ;; print a PostScript file, but some faces are better seeing on the screen than
@@ -1329,7 +1329,7 @@
 ;;
 ;; Faces are always treated as opaque.
 ;;
-;; Epoch and Emacs 19 not supported.  At all.
+;; Epoch, Lucid and Emacs 19 not supported.  At all.
 ;;
 ;; Fixed-pitch fonts work better for line folding, but are not required.
 ;;
@@ -1442,6 +1442,20 @@
       (error "`ps-print' requires floating point support"))
 
 
+  (defvar ps-print-emacs-type
+    (let ((case-fold-search t))
+      (cond ((string-match "XEmacs" emacs-version) 'xemacs)
+	    ((string-match "Lucid" emacs-version)
+	     (error "`ps-print' doesn't support Lucid"))
+	    ((string-match "Epoch" emacs-version)
+	     (error "`ps-print' doesn't support Epoch"))
+	    (t
+	     (unless (and (boundp 'emacs-major-version)
+			  (> emacs-major-version 19))
+	       (error "`ps-print' only supports Emacs 20 and higher"))
+	     'emacs))))
+
+
   ;; For Emacs 20.2 and the earlier version.
 
   (or (fboundp 'set-buffer-multibyte)
@@ -1510,16 +1524,6 @@
     (memq system-type '(usg-unix-v dgux hpux irix)))
 
 
-  (defvar ps-print-emacs-type
-    (cond ((string-match "XEmacs" emacs-version) 'xemacs)
-	  ((string-match "Lucid" emacs-version) 'lucid)
-	  ((string-match "Epoch" emacs-version) 'epoch)
-	  (t 'emacs)))
-
-  (or (memq ps-print-emacs-type '(lucid xemacs))
-      (require 'faces))			; face-font, face-underline-p,
-					; x-font-regexp
-
   (defun ps-xemacs-color-name (color)
     (if (ps-x-color-specifier-p color)
 	(ps-x-color-name color)
@@ -1533,7 +1537,7 @@
 	 (defalias 'ps-face-foreground-name 'face-foreground)
 	 (defalias 'ps-face-background-name 'face-background)
 	 )
-	(t				; xemacs, lucid, epoch
+	(t				; xemacs
 	 (defalias 'ps-mark-active-p 'region-active-p)
 	 (defun ps-face-foreground-name (face)
 	   (ps-xemacs-color-name (face-foreground face)))
@@ -3177,13 +3181,13 @@
   (or (cond
        ((eq ps-print-emacs-type 'emacs)	; emacs
 	data-directory)
-       ((fboundp 'locate-data-directory) ; emacsens (xemacs, etc.)
+       ((fboundp 'locate-data-directory) ; xemacs
 	(locate-data-directory "ps-print"))
-       ((boundp 'data-directory)	; emacsens (xemacs, etc.)
+       ((boundp 'data-directory)	; xemacs
 	data-directory)
        (t				; don't know what to do
 	nil))
-      (error "ps-postscript-code-directory isn't set properly"))
+      (error "`ps-postscript-code-directory' isn't set properly"))
   "*Directory where it's located the PostScript prologue file used by ps-print.
 By default, this directory is the same as in the variable `data-directory'."
   :type 'directory
@@ -3642,7 +3646,7 @@
 
 
 (eval-and-compile
-  (and (memq ps-print-emacs-type '(lucid xemacs))
+  (and (eq ps-print-emacs-type 'xemacs)
        ;; XEmacs change: Need to check for emacs-major-version too.
        (or (< emacs-major-version 19)
 	   (and (= emacs-major-version 19) (< emacs-minor-version 12)))
@@ -3707,7 +3711,7 @@
 	       (memq face ps-italic-faces)))
 	 )
 
-	(t				; xemacs, lucid, epoch
+	(t				; xemacs
 
 	 ;; to avoid XEmacs compilation gripes
 	 (defvar coding-system-for-write   nil)
@@ -3829,7 +3833,7 @@
       ;; PostScript output.
       "%0.3f %0.3f %0.3f"
 
-    ;; Lucid emacsen will have to make do with %s (princ) for floats.
+    ;; XEmacs will have to make do with %s (princ) for floats.
     "%s %s %s"))
 
 ;; These values determine how much print-height to deduct when headers/footers
@@ -4690,11 +4694,11 @@
 
 ;; Emacs understands the %f format; we'll use it to limit color RGB values
 ;; to three decimals to cut down some on the size of the PostScript output.
-;; Lucid emacsen will have to make do with %s (princ) for floats.
+;; XEmacs will have to make do with %s (princ) for floats.
 
 (defvar ps-float-format (if (eq ps-print-emacs-type 'emacs)
 			    "%0.3f "	; emacs
-			  "%s "))	; Lucid emacsen
+			  "%s "))	; xemacs
 
 
 (defun ps-float-format (value &optional default)
@@ -6184,7 +6188,7 @@
     (let ((face 'default)
 	  (position to))
       (cond
-       ((memq ps-print-emacs-type '(xemacs lucid))
+       ((eq ps-print-emacs-type 'xemacs)
 	;; Build the list of extents...
 	(let ((a (cons 'dummy nil))
 	      record type extent extent-list)