Mercurial > hg > xemacs-beta
comparison lisp/packages/ps-print.el @ 124:9b50b4588a93 r20-1b15
Import from CVS: tag r20-1b15
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:26:39 +0200 |
parents | 4be1180a9e89 |
children | 318232e2a3f0 |
comparison
equal
deleted
inserted
replaced
123:c77884c6318d | 124:9b50b4588a93 |
---|---|
725 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 725 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
726 ;; User Variables: | 726 ;; User Variables: |
727 | 727 |
728 ;;; Interface to the command system | 728 ;;; Interface to the command system |
729 | 729 |
730 (defvar ps-lpr-command lpr-command | 730 (defgroup ps-print nil |
731 "*The shell command for printing a PostScript file.") | 731 "Postscript generator for Emacs 19" |
732 | 732 :prefix "ps-" |
733 (defvar ps-lpr-switches lpr-switches | 733 :group 'wp) |
734 "*A list of extra switches to pass to `ps-lpr-command'.") | 734 |
735 (defgroup ps-print-horizontal nil | |
736 "Horizontal page layout" | |
737 :prefix "ps-" | |
738 :tag "Horizontal" | |
739 :group 'ps-print) | |
740 | |
741 (defgroup ps-print-vertical nil | |
742 "Vertical page layout" | |
743 :prefix "ps-" | |
744 :tag "Vertical" | |
745 :group 'ps-print) | |
746 | |
747 (defgroup ps-print-header nil | |
748 "Headers layout" | |
749 :prefix "ps-" | |
750 :tag "Header" | |
751 :group 'ps-print) | |
752 | |
753 (defgroup ps-print-font nil | |
754 "Fonts customization" | |
755 :prefix "ps-" | |
756 :tag "Font" | |
757 :group 'ps-print) | |
758 | |
759 (defgroup ps-print-color nil | |
760 "Color customization" | |
761 :prefix "ps-" | |
762 :tag "Color" | |
763 :group 'ps-print) | |
764 | |
765 (defgroup ps-print-face nil | |
766 "Faces customization" | |
767 :prefix "ps-" | |
768 :tag "PS Faces" | |
769 :group 'ps-print | |
770 :group 'faces) | |
771 | |
772 | |
773 (defcustom ps-lpr-command lpr-command | |
774 "*The shell command for printing a PostScript file." | |
775 :type 'string | |
776 :group 'ps-print) | |
777 | |
778 (defcustom ps-lpr-switches lpr-switches | |
779 "*A list of extra switches to pass to `ps-lpr-command'." | |
780 :type '(repeat string) | |
781 :group 'ps-print) | |
735 | 782 |
736 ;;; Page layout | 783 ;;; Page layout |
737 | 784 |
738 ;; All page dimensions are in PostScript points. | 785 ;; All page dimensions are in PostScript points. |
739 ;; 1 inch == 2.54 cm == 72 points | 786 ;; 1 inch == 2.54 cm == 72 points |
751 ;; A3 11.69 inch x 16.5 inch = 29.7 cm x 42.0 cm | 798 ;; A3 11.69 inch x 16.5 inch = 29.7 cm x 42.0 cm |
752 ;; A4Small 7.47 inch x 10.85 inch | 799 ;; A4Small 7.47 inch x 10.85 inch |
753 ;; B4 10.125 inch x 14.33 inch | 800 ;; B4 10.125 inch x 14.33 inch |
754 ;; B5 7.16 inch x 10.125 inch | 801 ;; B5 7.16 inch x 10.125 inch |
755 | 802 |
756 (defvar ps-page-dimensions-database | 803 (defcustom ps-page-dimensions-database |
757 (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54)) | 804 (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54)) |
758 (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54)) | 805 (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54)) |
759 (list 'letter (* 72 8.5) (* 72 11.0)) | 806 (list 'letter (* 72 8.5) (* 72 11.0)) |
760 (list 'legal (* 72 8.5) (* 72 14.0)) | 807 (list 'legal (* 72 8.5) (* 72 14.0)) |
761 (list 'letter-small (* 72 7.68) (* 72 10.16)) | 808 (list 'letter-small (* 72 7.68) (* 72 10.16)) |
765 (list 'executive (* 72 7.5) (* 72 10.0)) | 812 (list 'executive (* 72 7.5) (* 72 10.0)) |
766 (list 'a4small (* 72 7.47) (* 72 10.85)) | 813 (list 'a4small (* 72 7.47) (* 72 10.85)) |
767 (list 'b4 (* 72 10.125) (* 72 14.33)) | 814 (list 'b4 (* 72 10.125) (* 72 14.33)) |
768 (list 'b5 (* 72 7.16) (* 72 10.125))) | 815 (list 'b5 (* 72 7.16) (* 72 10.125))) |
769 "*List associating a symbolic paper type to its width and height. | 816 "*List associating a symbolic paper type to its width and height. |
770 see `ps-paper-type'.") | 817 see `ps-paper-type'." |
818 :type '(repeat (list :tag "Paper Type" | |
819 (symbol :tag "Name") | |
820 (number :tag "Width") | |
821 (number :tag "Height"))) | |
822 :group 'ps-print) | |
771 | 823 |
772 ;;;###autoload | 824 ;;;###autoload |
773 (defvar ps-paper-type 'letter | 825 (defcustom ps-paper-type 'letter |
774 "*Specifies the size of paper to format for. | 826 "*Specifies the size of paper to format for. |
775 Should be one of the paper types defined in `ps-page-dimensions-database', for | 827 Should be one of the paper types defined in `ps-page-dimensions-database', for |
776 example `letter', `legal' or `a4'.") | 828 example `letter', `legal' or `a4'." |
777 | 829 :type '(symbol :validate (lambda (wid) |
778 (defvar ps-landscape-mode 'nil | 830 (if (assq (widget-value wid) ps-page-dimensions-database) |
779 "*Non-nil means print in landscape mode.") | 831 nil |
780 | 832 (widget-put wid :error "Unknown paper size") |
781 (defvar ps-number-of-columns (if ps-landscape-mode 2 1) | 833 wid))) |
782 "*Specifies the number of columns") | 834 :group 'ps-print) |
835 | |
836 (defcustom ps-landscape-mode 'nil | |
837 "*Non-nil means print in landscape mode." | |
838 :type 'boolean | |
839 :group 'ps-print) | |
840 | |
841 (defcustom ps-number-of-columns (if ps-landscape-mode 2 1) | |
842 "*Specifies the number of columns" | |
843 :type 'integer | |
844 :group 'ps-print) | |
783 | 845 |
784 ;;; Horizontal layout | 846 ;;; Horizontal layout |
785 | 847 |
786 ;; ------------------------------------------ | 848 ;; ------------------------------------------ |
787 ;; | | | | | | | | | 849 ;; | | | | | | | | |
788 ;; | lm | text | ic | text | ic | text | rm | | 850 ;; | lm | text | ic | text | ic | text | rm | |
789 ;; | | | | | | | | | 851 ;; | | | | | | | | |
790 ;; ------------------------------------------ | 852 ;; ------------------------------------------ |
791 | 853 |
792 (defvar ps-left-margin (/ (* 72 2.0) 2.54) ; 2 cm | 854 (defcustom ps-left-margin (/ (* 72 2.0) 2.54) ; 2 cm |
793 "*Left margin in points (1/72 inch).") | 855 "*Left margin in points (1/72 inch)." |
794 | 856 :type 'number |
795 (defvar ps-right-margin (/ (* 72 2.0) 2.54) ; 2 cm | 857 :group 'ps-print-horizontal) |
796 "*Right margin in points (1/72 inch).") | 858 |
797 | 859 (defcustom ps-right-margin (/ (* 72 2.0) 2.54) ; 2 cm |
798 (defvar ps-inter-column (/ (* 72 2.0) 2.54) ; 2 cm | 860 "*Right margin in points (1/72 inch)." |
799 "*Horizontal space between columns in points (1/72 inch).") | 861 :type 'number |
862 :group 'ps-print-horizontal) | |
863 | |
864 (defcustom ps-inter-column (/ (* 72 2.0) 2.54) ; 2 cm | |
865 "*Horizontal space between columns in points (1/72 inch)." | |
866 :type 'number | |
867 :group 'ps-print-horizontal) | |
800 | 868 |
801 ;;; Vertical layout | 869 ;;; Vertical layout |
802 | 870 |
803 ;; |--------| | 871 ;; |--------| |
804 ;; | tm | | 872 ;; | tm | |
810 ;; | text | | 878 ;; | text | |
811 ;; |--------| | 879 ;; |--------| |
812 ;; | bm | | 880 ;; | bm | |
813 ;; |--------| | 881 ;; |--------| |
814 | 882 |
815 (defvar ps-bottom-margin (/ (* 72 1.5) 2.54) ; 1.5 cm | 883 (defcustom ps-bottom-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
816 "*Bottom margin in points (1/72 inch).") | 884 "*Bottom margin in points (1/72 inch)." |
817 | 885 :type 'number |
818 (defvar ps-top-margin (/ (* 72 1.5) 2.54) ; 1.5 cm | 886 :group 'ps-print-vertical) |
819 "*Top margin in points (1/72 inch).") | 887 |
820 | 888 (defcustom ps-top-margin (/ (* 72 1.5) 2.54) ; 1.5 cm |
821 (defvar ps-header-offset (/ (* 72 1.0) 2.54) ; 1.0 cm | 889 "*Top margin in points (1/72 inch)." |
822 "*Vertical space in points (1/72 inch) between the main text and the header.") | 890 :type 'number |
823 | 891 :group 'ps-print-vertical) |
824 (defvar ps-header-line-pad 0.15 | 892 |
893 (defcustom ps-header-offset (/ (* 72 1.0) 2.54) ; 1.0 cm | |
894 "*Vertical space in points (1/72 inch) between the main text and the header." | |
895 :type 'number | |
896 :group 'ps-print-vertical) | |
897 | |
898 (defcustom ps-header-line-pad 0.15 | |
825 "*Portion of a header title line height to insert between the header frame | 899 "*Portion of a header title line height to insert between the header frame |
826 and the text it contains, both in the vertical and horizontal directions.") | 900 and the text it contains, both in the vertical and horizontal directions." |
901 :type 'number | |
902 :group 'ps-print-vertical) | |
827 | 903 |
828 ;;; Header setup | 904 ;;; Header setup |
829 | 905 |
830 (defvar ps-print-header t | 906 (defcustom ps-print-header t |
831 "*Non-nil means print a header at the top of each page. | 907 "*Non-nil means print a header at the top of each page. |
832 By default, the header displays the buffer name, page number, and, if | 908 By default, the header displays the buffer name, page number, and, if |
833 the buffer is visiting a file, the file's directory. Headers are | 909 the buffer is visiting a file, the file's directory. Headers are |
834 customizable by changing variables `ps-header-left' and | 910 customizable by changing variables `ps-header-left' and |
835 `ps-header-right'.") | 911 `ps-header-right'." |
836 | 912 :type 'boolean |
837 (defvar ps-print-header-frame t | 913 :group 'ps-print-header) |
838 "*Non-nil means draw a gaudy frame around the header.") | 914 |
839 | 915 (defcustom ps-print-header-frame t |
840 (defvar ps-header-lines 2 | 916 "*Non-nil means draw a gaudy frame around the header." |
841 "*Number of lines to display in page header, when generating Postscript.") | 917 :type 'boolean |
918 :group 'ps-print-header) | |
919 | |
920 (defcustom ps-header-lines 2 | |
921 "*Number of lines to display in page header, when generating Postscript." | |
922 :type 'integer | |
923 :group 'ps-print-header) | |
842 (make-variable-buffer-local 'ps-header-lines) | 924 (make-variable-buffer-local 'ps-header-lines) |
843 | 925 |
844 (defvar ps-show-n-of-n t | 926 (defcustom ps-show-n-of-n t |
845 "*Non-nil means show page numbers as N/M, meaning page N of M. | 927 "*Non-nil means show page numbers as N/M, meaning page N of M. |
846 Note: page numbers are displayed as part of headers, see variable | 928 Note: page numbers are displayed as part of headers, see variable |
847 `ps-print-headers'.") | 929 `ps-print-headers'." |
848 | 930 :type 'boolean |
849 (defvar ps-spool-duplex nil ; Not many people have duplex | 931 :group 'ps-print-header) |
932 | |
933 (defcustom ps-spool-duplex nil ; Not many people have duplex | |
850 ; printers, so default to nil. | 934 ; printers, so default to nil. |
851 "*Non-nil indicates spooling is for a two-sided printer. | 935 "*Non-nil indicates spooling is for a two-sided printer. |
852 For a duplex printer, the `ps-spool-*' commands will insert blank pages | 936 For a duplex printer, the `ps-spool-*' commands will insert blank pages |
853 as needed between print jobs so that the next buffer printed will | 937 as needed between print jobs so that the next buffer printed will |
854 start on the right page. Also, if headers are turned on, the headers | 938 start on the right page. Also, if headers are turned on, the headers |
855 will be reversed on duplex printers so that the page numbers fall to | 939 will be reversed on duplex printers so that the page numbers fall to |
856 the left on even-numbered pages.") | 940 the left on even-numbered pages." |
941 :type 'boolean | |
942 :group 'ps-print-header) | |
857 | 943 |
858 ;;; Fonts | 944 ;;; Fonts |
859 | 945 |
860 (defvar ps-font-info-database | 946 (defcustom ps-font-info-database |
861 '((Courier ; the family key | 947 '((Courier ; the family key |
862 "Courier" "Courier-Bold" "Courier-Oblique" "Courier-BoldOblique" | 948 "Courier" "Courier-Bold" "Courier-Oblique" "Courier-BoldOblique" |
863 10.0 10.55 6.0 6.0) | 949 10.0 10.55 6.0 6.0) |
864 (Helvetica ; the family key | 950 (Helvetica ; the family key |
865 "Helvetica" "Helvetica-Bold" "Helvetica-Oblique" "Helvetica-BoldOblique" | 951 "Helvetica" "Helvetica-Bold" "Helvetica-Oblique" "Helvetica-BoldOblique" |
916 comment character) from the line | 1002 comment character) from the line |
917 `% 3 cm 20 cm moveto 10 /Courier ReportFontInfo showpage' | 1003 `% 3 cm 20 cm moveto 10 /Courier ReportFontInfo showpage' |
918 to get the line | 1004 to get the line |
919 `3 cm 20 cm moveto 10 /Helvetica ReportFontInfo showpage' | 1005 `3 cm 20 cm moveto 10 /Helvetica ReportFontInfo showpage' |
920 - add the values to `ps-font-info-database'. | 1006 - add the values to `ps-font-info-database'. |
921 You can get all the fonts of YOUR printer using `ReportAllFontInfo'.") | 1007 You can get all the fonts of YOUR printer using `ReportAllFontInfo'." |
922 | 1008 :type '(repeat (list :tag "Font Definition" |
923 (defvar ps-font-family 'Courier | 1009 (symbol :tag "Font") |
924 "Font family name for ordinary text, when generating Postscript.") | 1010 (string :tag "Name") |
925 | 1011 (string :tag "Bold") |
926 (defvar ps-font-size (if ps-landscape-mode 7 8.5) | 1012 (string :tag "Italic") |
927 "Font size, in points, for ordinary text, when generating Postscript.") | 1013 (string :tag "Bold-Italic") |
928 | 1014 (number :tag "Reference Size") |
929 (defvar ps-header-font-family 'Helvetica | 1015 (number :tag "Line Height") |
930 "Font family name for text in the header, when generating Postscript.") | 1016 (number :tag "Space Width") |
931 | 1017 (number :tag "Average Character Width"))) |
932 (defvar ps-header-font-size (if ps-landscape-mode 10 12) | 1018 :group 'ps-print-font) |
933 "Font size, in points, for text in the header, when generating Postscript.") | 1019 |
934 | 1020 (defcustom ps-font-family 'Courier |
935 (defvar ps-header-title-font-size (if ps-landscape-mode 12 14) | 1021 "Font family name for ordinary text, when generating Postscript." |
1022 :type 'symbol | |
1023 :group 'ps-print-font) | |
1024 | |
1025 (defcustom ps-font-size (if ps-landscape-mode 7 8.5) | |
1026 "Font size, in points, for ordinary text, when generating Postscript." | |
1027 :type 'number | |
1028 :group 'ps-print-font) | |
1029 | |
1030 (defcustom ps-header-font-family 'Helvetica | |
1031 "Font family name for text in the header, when generating Postscript." | |
1032 :type 'symbol | |
1033 :group 'ps-print-font) | |
1034 | |
1035 (defcustom ps-header-font-size (if ps-landscape-mode 10 12) | |
1036 "Font size, in points, for text in the header, when generating Postscript." | |
1037 :type 'number | |
1038 :group 'ps-print-font) | |
1039 | |
1040 (defcustom ps-header-title-font-size (if ps-landscape-mode 12 14) | |
936 "Font size, in points, for the top line of text in the header, | 1041 "Font size, in points, for the top line of text in the header, |
937 when generating Postscript.") | 1042 when generating Postscript." |
1043 :type 'number | |
1044 :group 'ps-print-font) | |
938 | 1045 |
939 ;;; Colors | 1046 ;;; Colors |
940 | 1047 |
941 ;;;###autoload | 1048 ;;;###autoload |
942 ;;; The 19.33 fsf version includes a test on pixel components instead | 1049 ;;; The 19.33 fsf version includes a test on pixel components instead |
943 ;;; of color-instance-rgb-components | 1050 ;;; of color-instance-rgb-components |
944 (defvar ps-print-color-p (or (fboundp 'x-color-values) ; fsf | 1051 (defcustom ps-print-color-p (or (fboundp 'x-color-values) ; fsf |
945 (fboundp 'color-instance-rgb-components)) | 1052 (fboundp 'color-instance-rgb-components)) |
946 ; xemacs | 1053 ; xemacs |
947 ; Printing color requires x-color-values. | 1054 ; Printing color requires x-color-values. |
948 "*If non-nil, print the buffer's text in color.") | 1055 "*If non-nil, print the buffer's text in color." |
949 | 1056 :type 'boolean |
950 (defvar ps-default-fg '(0.0 0.0 0.0) | 1057 :group 'ps-print-color) |
951 "*RGB values of the default foreground color. Defaults to black.") | 1058 |
952 | 1059 (defcustom ps-default-fg '(0.0 0.0 0.0) |
953 (defvar ps-default-bg '(1.0 1.0 1.0) | 1060 "*RGB values of the default foreground color. Defaults to black." |
954 "*RGB values of the default background color. Defaults to white.") | 1061 :type '(list (number :tag "Red") (number :tag "Green") (number :tag "Blue")) |
955 | 1062 :group 'ps-print-color) |
956 (defvar ps-auto-font-detect t | 1063 |
1064 (defcustom ps-default-bg '(1.0 1.0 1.0) | |
1065 "*RGB values of the default background color. Defaults to white." | |
1066 :type '(list (number :tag "Red") (number :tag "Green") (number :tag "Blue")) | |
1067 :group 'ps-print-color) | |
1068 | |
1069 (defcustom ps-auto-font-detect t | |
957 "*Non-nil means automatically detect bold/italic face attributes. | 1070 "*Non-nil means automatically detect bold/italic face attributes. |
958 nil means rely solely on the lists `ps-bold-faces', `ps-italic-faces', | 1071 nil means rely solely on the lists `ps-bold-faces', `ps-italic-faces', |
959 and `ps-underlined-faces'.") | 1072 and `ps-underlined-faces'." |
960 | 1073 :type 'boolean |
961 (defvar ps-bold-faces | 1074 :group 'ps-print-font) |
1075 | |
1076 (defcustom ps-bold-faces | |
962 (unless ps-print-color-p | 1077 (unless ps-print-color-p |
963 '(font-lock-function-name-face | 1078 '(font-lock-function-name-face |
964 font-lock-builtin-face | 1079 font-lock-builtin-face |
965 font-lock-variable-name-face | 1080 font-lock-variable-name-face |
966 font-lock-keyword-face | 1081 font-lock-keyword-face |
967 font-lock-warning-face)) | 1082 font-lock-warning-face)) |
968 "*A list of the \(non-bold\) faces that should be printed in bold font. | 1083 "*A list of the \(non-bold\) faces that should be printed in bold font. |
969 This applies to generating Postscript.") | 1084 This applies to generating Postscript." |
970 | 1085 :type '(repeat face) |
971 (defvar ps-italic-faces | 1086 :group 'ps-print-face) |
1087 | |
1088 (defcustom ps-italic-faces | |
972 (unless ps-print-color-p | 1089 (unless ps-print-color-p |
973 '(font-lock-variable-name-face | 1090 '(font-lock-variable-name-face |
974 font-lock-string-face | 1091 font-lock-string-face |
975 font-lock-comment-face | 1092 font-lock-comment-face |
976 font-lock-warning-face)) | 1093 font-lock-warning-face)) |
977 "*A list of the \(non-italic\) faces that should be printed in italic font. | 1094 "*A list of the \(non-italic\) faces that should be printed in italic font. |
978 This applies to generating Postscript.") | 1095 This applies to generating Postscript." |
979 | 1096 :type '(repeat face) |
980 (defvar ps-underlined-faces | 1097 :group 'ps-print-face) |
1098 | |
1099 (defcustom ps-underlined-faces | |
981 (unless ps-print-color-p | 1100 (unless ps-print-color-p |
982 '(font-lock-function-name-face | 1101 '(font-lock-function-name-face |
983 font-lock-type-face | 1102 font-lock-type-face |
984 font-lock-reference-face | 1103 font-lock-reference-face |
985 font-lock-warning-face)) | 1104 font-lock-warning-face)) |
986 "*A list of the \(non-underlined\) faces that should be printed underlined. | 1105 "*A list of the \(non-underlined\) faces that should be printed underlined. |
987 This applies to generating Postscript.") | 1106 This applies to generating Postscript." |
988 | 1107 :type '(repeat face) |
989 (defvar ps-left-header | 1108 :group 'ps-print-face) |
1109 | |
1110 (defcustom ps-left-header | |
990 (list 'ps-get-buffer-name 'ps-header-dirpart) | 1111 (list 'ps-get-buffer-name 'ps-header-dirpart) |
991 "*The items to display (each on a line) on the left part of the page header. | 1112 "*The items to display (each on a line) on the left part of the page header. |
992 This applies to generating Postscript. | 1113 This applies to generating Postscript. |
993 | 1114 |
994 The value should be a list of strings and symbols, each representing an | 1115 The value should be a list of strings and symbols, each representing an |
1000 | 1121 |
1001 For symbols with bound functions, the function is called and should | 1122 For symbols with bound functions, the function is called and should |
1002 return a string to be inserted into the array. For symbols with bound | 1123 return a string to be inserted into the array. For symbols with bound |
1003 values, the value should be a string to be inserted into the array. | 1124 values, the value should be a string to be inserted into the array. |
1004 In either case, function or variable, the string value has PostScript | 1125 In either case, function or variable, the string value has PostScript |
1005 string delimiters added to it.") | 1126 string delimiters added to it." |
1127 :type '(repeat (choice string symbol)) | |
1128 :group ps-print-header) | |
1006 (make-variable-buffer-local 'ps-left-header) | 1129 (make-variable-buffer-local 'ps-left-header) |
1007 | 1130 |
1008 (defvar ps-right-header | 1131 (defcustom ps-right-header |
1009 (list "/pagenumberstring load" 'time-stamp-mon-dd-yyyy 'time-stamp-hh:mm:ss) | 1132 (list "/pagenumberstring load" 'time-stamp-mon-dd-yyyy 'time-stamp-hh:mm:ss) |
1010 "*The items to display (each on a line) on the right part of the page header. | 1133 "*The items to display (each on a line) on the right part of the page header. |
1011 This applies to generating Postscript. | 1134 This applies to generating Postscript. |
1012 | 1135 |
1013 See the variable `ps-left-header' for a description of the format of | 1136 See the variable `ps-left-header' for a description of the format of |
1014 this variable.") | 1137 this variable." |
1138 :type '(repeat (choice string symbol)) | |
1139 :group ps-print-header) | |
1015 (make-variable-buffer-local 'ps-right-header) | 1140 (make-variable-buffer-local 'ps-right-header) |
1016 | 1141 |
1017 (defvar ps-razzle-dazzle t | 1142 (defcustom ps-razzle-dazzle t |
1018 "*Non-nil means report progress while formatting buffer.") | 1143 "*Non-nil means report progress while formatting buffer." |
1144 :type 'boolean | |
1145 :group 'ps-print) | |
1019 | 1146 |
1020 (defvar ps-adobe-tag "%!PS-Adobe-3.0\n" | 1147 (defvar ps-adobe-tag "%!PS-Adobe-3.0\n" |
1021 "*Contains the header line identifying the output as PostScript. | 1148 "*Contains the header line identifying the output as PostScript. |
1022 By default, `ps-adobe-tag' contains the standard identifier. Some | 1149 By default, `ps-adobe-tag' contains the standard identifier. Some |
1023 printers require slightly different versions of this line.") | 1150 printers require slightly different versions of this line.") |
1024 | 1151 |
1025 (defvar ps-build-face-reference t | 1152 (defcustom ps-build-face-reference t |
1026 "*Non-nil means build the reference face lists. | 1153 "*Non-nil means build the reference face lists. |
1027 | 1154 |
1028 Ps-print sets this value to nil after it builds its internal reference | 1155 Ps-print sets this value to nil after it builds its internal reference |
1029 lists of bold and italic faces. By settings its value back to t, you | 1156 lists of bold and italic faces. By settings its value back to t, you |
1030 can force ps-print to rebuild the lists the next time you invoke one | 1157 can force ps-print to rebuild the lists the next time you invoke one |
1031 of the ...-with-faces commands. | 1158 of the ...-with-faces commands. |
1032 | 1159 |
1033 You should set this value back to t after you change the attributes of | 1160 You should set this value back to t after you change the attributes of |
1034 any face, or create new faces. Most users shouldn't have to worry | 1161 any face, or create new faces. Most users shouldn't have to worry |
1035 about its setting, though.") | 1162 about its setting, though." |
1036 | 1163 :type 'boolean |
1037 (defvar ps-always-build-face-reference nil | 1164 :group 'ps-print-face) |
1165 | |
1166 (defcustom ps-always-build-face-reference nil | |
1038 "*Non-nil means always rebuild the reference face lists. | 1167 "*Non-nil means always rebuild the reference face lists. |
1039 | 1168 |
1040 If this variable is non-nil, ps-print will rebuild its internal | 1169 If this variable is non-nil, ps-print will rebuild its internal |
1041 reference lists of bold and italic faces *every* time one of the | 1170 reference lists of bold and italic faces *every* time one of the |
1042 -with-faces commands is called. Most users shouldn't need to set this | 1171 -with-faces commands is called. Most users shouldn't need to set this |
1043 variable.") | 1172 variable." |
1173 :type 'boolean | |
1174 :group 'ps-print-face) | |
1044 | 1175 |
1045 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 1176 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1046 ;; User commands | 1177 ;; User commands |
1047 | 1178 |
1048 ;;;###autoload | 1179 ;;;###autoload |