AUCTeX Sync -- New elisp v11.92
[packages] / xemacs-packages / ps-print / ps-print-21.new
1 * Changes in Emacs 21
2
3 ** ps-print changes
4
5 There are some new user variables and subgroups for customizing the page
6 layout.
7
8 *** Headers & Footers (subgroup)
9
10 Some printer systems print a header page and force the first page to be printed
11 on the back of the header page when using duplex.  If your printer system has
12 this behavior, set variable `ps-banner-page-when-duplexing' to t.
13
14 If variable `ps-banner-page-when-duplexing' is non-nil, it prints a blank page
15 as the very first printed page.  So, it behaves as if the very first character
16 of buffer (or region) were a formfeed ^L (\014).
17
18 The variable `ps-spool-config' specifies who is responsible for setting duplex
19 and page size.  Valid values are:
20
21  lpr-switches    duplex and page size are configured by `ps-lpr-switches'.
22                  Don't forget to set `ps-lpr-switches' to select duplex
23                  printing for your printer.
24
25  setpagedevice   duplex and page size are configured by ps-print using the
26                  setpagedevice PostScript operator.
27
28  nil             duplex and page size are configured by ps-print *not* using
29                  the setpagedevice PostScript operator.
30
31 The variable `ps-spool-tumble' specifies how the page images on opposite sides
32 of a sheet are oriented with respect to each other.  If `ps-spool-tumble' is
33 nil, produces output suitable for binding on the left or right.  If
34 `ps-spool-tumble' is non-nil, produces output suitable for binding at the top
35 or bottom.  This variable takes effect only if `ps-spool-duplex' is non-nil.
36 The default value is nil.
37
38 The variable `ps-header-frame-alist' specifies header frame properties alist.
39 Valid frame properties are:
40
41   fore-color    Specify the foreground frame color.
42                 It should be a float number between 0.0 (black color) and 1.0
43                 (white color), a string which is a color name, or a list of 3
44                 float numbers which corresponds to the Red Green Blue color
45                 scale, each float number between 0.0 (dark color) and 1.0
46                 (bright color).  The default is 0.0 ("black").
47
48   back-color    Specify the background frame color (similar to fore-color).
49                 The default is 0.9 ("gray90").
50
51   shadow-color  Specify the shadow color (similar to fore-color).
52                 The default is 0.0 ("black").
53
54   border-color  Specify the border color (similar to fore-color).
55                 The default is 0.0 ("black").
56
57   border-width  Specify the border width.
58                 The default is 0.4.
59
60 Any other property is ignored.
61
62 Don't change this alist directly; instead use Custom, or the `ps-value',
63 `ps-get', `ps-put' and `ps-del' functions (see there for documentation).
64
65 ps-print also print footers.  The footer variables are:
66 `ps-print-footer', `ps-footer-offset', `ps-print-footer-frame',
67 `ps-footer-font-family', `ps-footer-font-size', `ps-footer-line-pad',
68 `ps-footer-lines', `ps-left-footer', `ps-right-footer' and
69 `ps-footer-frame-alist'.  These variables are similar to those controlling
70 headers.
71
72 *** Color managing (subgroup)
73
74 If `ps-print-color-p' is non-nil, the buffer's text will be printed in color.
75
76 *** Faces managing (subgroup)
77
78 If you need to print without worrying about face background colors, set the
79 variable `ps-use-face-background' which specifies if face background should be
80 used.  Valid values are:
81
82  t              always use face background color.
83  nil            never use face background color.
84  (face...)      list of faces whose background color will be used.
85
86 *** N-up printing (subgroup)
87
88 The variable `ps-n-up-printing' specifies the number of pages per sheet of
89 paper.
90
91 The variable `ps-n-up-margin' specifies the margin in points (pt) between the
92 sheet border and the n-up printing.
93
94 If variable `ps-n-up-border-p' is non-nil a border is drawn around each page.
95
96 The variable `ps-n-up-filling' specifies how the page matrix is filled on each
97 sheet of paper.  Following are the valid values for `ps-n-up-filling' with a
98 filling example using a 3x4 page matrix:
99
100    `left-top'   1  2  3  4         `left-bottom'    9  10 11 12
101                 5  6  7  8                          5  6  7  8
102                 9  10 11 12                         1  2  3  4
103
104    `right-top'  4  3  2  1         `right-bottom'   12 11 10 9
105                 8  7  6  5                          8  7  6  5
106                 12 11 10 9                          4  3  2  1
107
108    `top-left'   1  4  7  10        `bottom-left'    3  6  9  12
109                 2  5  8  11                         2  5  8  11
110                 3  6  9  12                         1  4  7  10
111
112    `top-right'  10 7  4  1         `bottom-right'   12 9  6  3
113                 11 8  5  2                          11 8  5  2
114                 12 9  6  3                          10 7  4  1
115
116 Any other value is treated as `left-top'.
117
118 *** Zebra stripes (subgroup)
119
120 The variable `ps-zebra-color' controls the zebra stripes gray scale or RGB
121 color.
122
123 The variable `ps-zebra-stripe-follow' specifies how zebra stripes continue on
124 next page.  Visually, valid values are (the character `+' to the right of each
125 column indicates that a line is printed):
126
127                    `nil'        `follow'        `full'        `full-follow'
128    Current Page --------     -----------     ---------     ----------------
129                 1  XXXXX +   1  XXXXXXXX +   1  XXXXXX +   1  XXXXXXXXXXXXX +
130                 2  XXXXX +   2  XXXXXXXX +   2  XXXXXX +   2  XXXXXXXXXXXXX +
131                 3  XXXXX +   3  XXXXXXXX +   3  XXXXXX +   3  XXXXXXXXXXXXX +
132                 4        +   4           +   4         +   4                +
133                 5        +   5           +   5         +   5                +
134                 6        +   6           +   6         +   6                +
135                 7  XXXXX +   7  XXXXXXXX +   7  XXXXXX +   7  XXXXXXXXXXXXX +
136                 8  XXXXX +   8  XXXXXXXX +   8  XXXXXX +   8  XXXXXXXXXXXXX +
137                 9  XXXXX +   9  XXXXXXXX +   9  XXXXXX +   9  XXXXXXXXXXXXX +
138                 10       +   10          +
139                 11       +   11          +
140                 --------     -----------     ---------     ----------------
141       Next Page --------     -----------     ---------     ----------------
142                 12 XXXXX +   12          +   10 XXXXXX +   10               +
143                 13 XXXXX +   13 XXXXXXXX +   11 XXXXXX +   11               +
144                 14 XXXXX +   14 XXXXXXXX +   12 XXXXXX +   12               +
145                 15       +   15 XXXXXXXX +   13        +   13 XXXXXXXXXXXXX +
146                 16       +   16          +   14        +   14 XXXXXXXXXXXXX +
147                 17       +   17          +   15        +   15 XXXXXXXXXXXXX +
148                 18 XXXXX +   18          +   16 XXXXXX +   16               +
149                 19 XXXXX +   19 XXXXXXXX +   17 XXXXXX +   17               +
150                 20 XXXXX +   20 XXXXXXXX +   18 XXXXXX +   18               +
151                 21       +   21 XXXXXXXX +
152                 22       +   22          +
153                 --------     -----------     ---------     ----------------
154
155 Any other value is treated as `nil'.
156
157 *** Printer managing (subgroup)
158
159 The variable `ps-printer-name-option' determines the option used by some
160 utilities to indicate the printer name; it's used only when `ps-printer-name'
161 is a non-empty string.  If you're using lpr utility to print, for example,
162 `ps-printer-name-option' should be set to "-P".
163
164 The variable `ps-manual-feed' indicates if the printer requires manual paper
165 feeding.  If it's nil, automatic feeding takes place.  If it's non-nil, manual
166 feeding takes place.
167
168 The variable `ps-end-with-control-d' specifies whether C-d (\x04) should be
169 inserted at end of the generated PostScript.  Non-nil means do so.
170
171 *** Page settings (subgroup)
172
173 If variable `ps-warn-paper-type' is nil, it's *not* treated as an error if the
174 PostScript printer doesn't have a paper with the size indicated by
175 `ps-paper-type'; the default paper size will be used instead.  If
176 `ps-warn-paper-type' is non-nil, an error is signaled if the PostScript printer
177 doesn't support a paper with the size indicated by `ps-paper-type'.  This is
178 used when `ps-spool-config' is set to `setpagedevice'.
179
180 The variable `ps-print-upside-down' determines the orientation for printing
181 page: nil means `normal' printing, non-nil means `upside-down' printing (that
182 is, the page is rotated by 180 degrees).
183
184 The variable `ps-selected-pages' specifies which pages to print.  If it's nil,
185 all pages are printed.  If it's a list, the list element may be integers
186 specifying a single page to print, or cons cell (FROM . TO) specifying to print
187 from page FROM to TO.  Invalid list elements, that is integers smaller than
188 one, or elements whose FROM is greater than its TO, are ignored.
189
190 The variable `ps-even-or-odd-pages' specifies how to print even/odd pages.
191 Valid values are:
192
193    nil          print all pages.
194
195    `even-page'  print only even pages.
196
197    `odd-page'   print only odd pages.
198
199    `even-sheet' print only even sheets.
200                 That is, if `ps-n-up-printing' is 1, it behaves like
201                 `even-page', but for values greater than 1, it'll print only
202                 the even sheet of paper.
203
204    `odd-sheet'  print only odd sheets.
205                 That is, if `ps-n-up-printing' is 1, it behaves like
206                 `odd-page', but for values greater than 1, it'll print only the
207                 odd sheet of paper.
208
209 Any other value is treated as nil.
210
211 If you set `ps-selected-pages' (see there for documentation), the pages are
212 filtered by `ps-selected-pages', and then by `ps-even-or-odd-pages'.  For
213 example, if we have:
214
215    (setq ps-selected-pages '(1 4 (6 . 10) (12 . 16) 20))
216
217 and we combine this with `ps-even-or-odd-pages' and `ps-n-up-printing', we get:
218
219 `ps-n-up-printing' = 1:
220    `ps-even-or-odd-pages'       PAGES PRINTED
221         nil                     1, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 20
222         even-page               4, 6, 8, 10, 12, 14, 16, 20
223         odd-page                1, 7, 9, 13, 15
224         even-sheet              4, 6, 8, 10, 12, 14, 16, 20
225         odd-sheet               1, 7, 9, 13, 15
226
227 `ps-n-up-printing' = 2:
228    `ps-even-or-odd-pages'       PAGES PRINTED
229         nil                     1/4, 6/7, 8/9, 10/12, 13/14, 15/16, 20
230         even-page               4/6, 8/10, 12/14, 16/20
231         odd-page                1/7, 9/13, 15
232         even-sheet              6/7, 10/12, 15/16
233         odd-sheet               1/4, 8/9, 13/14, 20
234
235 *** Miscellany (subgroup)
236
237 The variable `ps-error-handler-message' specifies where the error handler
238 messages should be sent.
239
240 It is also possible to add an user defined PostScript prologue code in front of
241 all generated prologue code by setting the variable `ps-user-defined-prologue'.
242
243 The variable `ps-line-number-font' specifies the font for line numbers.
244
245 The variable `ps-line-number-font-size' specifies the font size in points for
246 line numbers.
247
248 The variable `ps-line-number-color' specifies the color for line numbers.  See
249 `ps-zebra-color' for documentation.
250
251 The variable `ps-line-number-step' specifies the interval in which line numbers
252 are printed.  For example, if `ps-line-number-step' is set to 2, the printing
253 will look like:
254
255    1 one line
256      one line
257    3 one line
258      one line
259    5 one line
260      one line
261      ...
262
263 Valid values are:
264
265 integer         an integer specifying the interval in which line numbers are
266                 printed.  If it's smaller than or equal to zero, 1 is used.
267
268 `zebra'         specifies that only the line number of the first line in a
269                 zebra stripe is to be printed.
270
271 Any other value is treated as `zebra'.
272
273 The variable `ps-line-number-start' specifies the starting point in the
274 interval given by `ps-line-number-step'.  For example, if `ps-line-number-step'
275 is set to 3 and `ps-line-number-start' is set to 3, the output will look like:
276
277      one line
278      one line
279    3 one line
280      one line
281      one line
282    6 one line
283      one line
284      one line
285    9 one line
286      one line
287      ...
288
289 The variable `ps-postscript-code-directory' specifies the directory where the
290 PostScript prologue file used by ps-print is found.
291
292 The variable `ps-line-spacing' determines the line spacing, in points, for
293 ordinary text, when generating PostScript (similar to `ps-font-size').
294
295 The variable `ps-paragraph-spacing' determines the paragraph spacing, in
296 points, for ordinary text, when generating PostScript (similar to
297 `ps-font-size').
298
299 The variable `ps-paragraph-regexp' specifies the paragraph delimiter.
300
301 The variable `ps-begin-cut-regexp' and `ps-end-cut-regexp' specify the start
302 and end of a region to cut out when printing.
303
304 \f
305 Local variables:
306 mode: outline
307 paragraph-separate: "[  \f]*$"
308 end: