summaryrefslogtreecommitdiff
path: root/contrib/mom/momdoc/rectoverso.html
blob: 5eb7f013e2c68468b91c8e8e4233e5330da9e7de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
<?xml version="1.0" encoding="iso-8859-1"?>
<!--
This file is part of groff, the GNU roff type-setting system.

Copyright (C) 2004, 2005, 2006, 2009 Free Software Foundation, Inc.
Written by Peter Schaffter.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being this comment section, with no Front-Cover
Texts, and with no Back-Cover Texts.

A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/>
<title>Mom -- Document Processing, Recto/verso printing</title>
</head>
<body bgcolor="#dfdfdf">

<!-- ==================================================================== -->

<a name="TOP"></a>

<p>
<a href="cover.html#TOP">Next</a>&nbsp;&nbsp;
<a href="headfootpage.html#TOP">Prev</a>&nbsp;&nbsp;
<a href="toc.html">Back to Table of Contents</a>
</p>

<a name="RECTOVERSO"><h1 align="center"><u>Recto/verso printing, collating</u></h1></a>

<a name="INDEX_RECTOVERSO"></a>

<ul>
    <li><a href="#RECTOVERSO_INTRO">Introduction to recto/verso</a></li>
    <ul>
        <li><a href="#RECTOVERSO_LIST">Macro list</a></li>
    </ul>
    <li><a href="#COLLATE_INTRO">Introduction to collating</a></li>
    <ul>
        <li><a href="#COLLATE">The COLLATE macro</a></li>
    </ul>
</ul>

<a name="RECTOVERSO_INTRO"><h2><u>Introduction to recto/verso</u></h2></a>

<p>
Recto/verso printing allows you to set up a <strong>mom</strong>
document in such a way that it can be printed on both sides of a
printer sheet and subsequently bound.
</p>

<p>
With recto/verso, <strong>mom</strong> automatically takes control
of the following aspects of alternating page layout:
</p>

<ul>
    <li>switching left and right margins (if they're not equal)</li>
    <li>switching the left and right parts of the default 3-part
        <a href="definitions.html#TERMS_HEADER">headers</a>
        or
        <a href="definitions.html#TERMS_FOOTER">footers</a>
        (see the
        <a href="headfootpage.html#DESCRIPTION_GENERAL">General description of headers</a>)
    </li>
    <li>switching
        <a href="headfootpage.html#HDRFTR_RECTOVERSO">HEADER_RECTO</a>
        and
        <a href="headfootpage.html#HDRFTR_RECTOVERSO">HEADER_VERSO</a>
        if user-defined, single string recto/verso headers
        or footers are used in place of the default 3-part
        headers or footers
    </li>
    <li>switching the page number position (if page numbers are not centred)</li>
</ul>

<p>
It is beyond the scope of this documentation to cover the different
ways in which you can make your printer print on both sides of a sheet.
A simple but effective method for those of us with &quot;dumb&quot;
printers is to open the document (after it's been processed into
PostScript by groff &mdash; see
<a href="using.html#USING_INVOKING">How to invoke groff with mom</a>)
in <strong>gv</strong> (ghostview), click the &quot;odd pages&quot;
icon, then click &quot;Print Marked&quot;.  After printing
is complete, rearrange the sheets appropriately, put them
back in your printer, and have <strong>gv</strong> print the
&quot;even pages&quot;.  If you prefer to work from the command
line, check out the man pages for <strong>pstops</strong> and
<strong>psbook</strong>.  There are other programs out there as well
to help with two-sided printing.
</p>

<a name="RECTOVERSO_LIST"><h3><u>Recto/verso macros list</u></h3></a>

<ul>
    <li><a href="#RECTO_VERSO">RECTO_VERSO</a></li>
    <li><a href="#SWITCH_HDRFTR">SWITCH_HEADERS (also FOOTERS)</a>
        &mdash; switch position of the header parts (left and right)
    </li>
</ul>

<!-- -RECTO_VERSO- -->

<hr align="left" width="66%"/>

<a name="RECTO_VERSO"></a>

<p>
Macro: <strong>RECTO_VERSO</strong>
</p>

<p>
If you want <strong>mom</strong> to set up alternating pages for
recto/verso printing, simply invoke <strong>RECTO_VERSO</strong>
with no argument.
</p>

<p>
<strong>NOTE:</strong> Recto/verso always switches the left and
right parts of
<a href="definitions.html#TERMS_HEADER">headers</a>
or
<a href="definitions.html#TERMS_FOOTER">footers</a>
on odd/even pages.  However, it only switches the left and right
margins if the margins aren't equal.  Consequently, it is your
responsibility to set the appropriate differing left and right
margins with
<a href="typesetting.html#L_MARGIN">L_MARGIN</a>
and
<a href="typesetting.html#R_MARGIN">R_MARGIN</a>
(prior to
<a href="docprocessing.html#START">START</a>)
or with
<a href="docprocessing.html#DOC_LEFT_MARGIN">DOC_LEFT_MARGIN</a>
and
<a href="docprocessing.html#DOC_RIGHT_MARGIN">DOC_RIGHT_MARGIN</a>
(before or after <strong>START</strong>).
</p>

<p>
Equally, recto/verso only switches the page number position if page
numbers aren't centred, which means you have to set the page number
position with
<a href="headfootpage.html#PAGENUM_POS">PAGENUM_POS</a>
(before or after <strong>START</strong>).
</p>

<!-- -SWITCH_HDRFTR- -->

<hr width="33%" align="left"/>

<a name="SWITCH_HDRFTR"></a>

<p>
Macro: <strong>SWITCH_HEADERS</strong>
</p>

<p>
<strong>SWITCH_HEADERS</strong> switches the location of the
header left string (by default, the author) and the header right
string (by default, the document title).  If you don't like
<strong>mom</strong>'s default placement of author and title, use
<strong>SWITCH_HEADERS</strong> to reverse it.
</p>

<p>
<strong>SWITCH_HEADERS</strong> can also be useful in conjunction
with
<a href="#RECTO_VERSO">RECTO_VERSO</a>.
The assumption of <strong>RECTO_VERSO</strong> is that the first
page of a document (recto/odd) represents the norm for header-left
and header-right, meaning that the second (and all subsequent even)
page(s) of the document exchange header-left and header-right.
</p>

<p>
If <strong>mom</strong>'s behaviour in this matter is not what you
want, simply invoke <strong>SWITCH_HEADERS</strong> on the first
page of your recto/verso document to reverse her default treatment
of header parts.  The remainder of your document (with respect to
headers) will come out as you want.
</p>

<hr/>

<!-- ===================================================================== -->

<a name="COLLATE_INTRO"><h2><u>Introduction to collating</u></h2></a>

<p>
The macro <strong>COLLATE</strong> lets you join documents together.
Primarily, it's a convenience for printing long documents that
comprise several chapters, although it could be used for any
document type (except <strong>LETTER</strong>).
</p>

<p>
Personally, I prefer to keep chapters in separate files and print
them out as needed.  However, that means keeping track of the correct
starting page number for each chapter, a problem circumvented by the
use of <strong>COLLATE</strong>.
</p>

<p>
When collating chapters, you need only put <kbd>.COLLATE</kbd> at
the end of a chapter, follow it with any
<a href="docprocessing.html#REFERENCE_MACROS">reference macros</a>
needed for the new chapter, e.g.
<a href="docprocessing.html#CHAPTER">CHAPTER</a>
or
<a href="docprocessing.html#CHAPTER_STRING">CHAPTER_STRING</a>,
make any pertinent style changes to the document (unlikely, but
possible), and re-invoke the
<a href="docprocessing.html#START">START</a>
macro.  Your new chapter will begin on a fresh page and behave
as expected.
</p>

<p>
<strong>COLLATE</strong> assumes you are collating documents/files
with similar type-style parameters hence there's no need for
<strong>PRINTSTYLE</strong> to appear after <strong>COLLATE</strong>,
although if you're collating documents that were created as separate
files, chances are the <strong>PRINTSTYLE</strong>'s already there.
</p>

<a name="CAUTION"></a>

<p>
<strong><u>Two words of caution:</u></strong>

<ol>
    <li>Do not collate documents of differing
        <strong>PRINTSTYLES</strong> (i.e. don't try to
        collate a TYPESET document and TYPEWRITE document).
    </li>
    <li>Use <kbd>.DOC_FAMILY</kbd> instead of
        <kbd>.FAMILY</kbd> if, for some reason, you want to
        change the family of all the document elements after
        <kbd>.COLLATE</kbd>. <kbd>.FAMILY</kbd>, by itself, will
        change the family of paragraph text only.
    </li>
</ol>
</p>

<!-- -COLLATE- -->

<hr width="66%" align="left"/>

<a name="COLLATE"></a>

<p>
Macro: <strong>COLLATE</strong>
</p>

<p>
The most basic (and most likely) collating situation looks like
this:

<pre>
    .COLLATE
    .CHAPTER 17
    .START
</pre>
</p>

<p>
A slightly more complex version of the same thing, for chapters
that require their own titles, looks like this:

<pre>
    .COLLATE
    .CHAPTER_TITLE "Geek Fatigue: Symptoms and Causes"
    .START
</pre>
</p>

<p>
<strong>Tip:</strong> If the last
<a href="definitions.html#TERMS_OUTPUTLINE">output line</a>
of a document before <strong>COLLATE</strong> falls too close to
the bottom margin for running text, <strong>mom</strong> may output
a blank page with only a header or footer between collated
documents.  In order to avoid this, I recommend always preceding
<strong>COLLATE</strong> with
<a href="typesetting.html#EL">.EL</a>,
like this

<pre>
    .EL
    .COLLATE
</pre>
</p>

<p>
<strong>NOTE:</strong> See the
<a href="#CAUTION">two words of caution</a>,
above.
</p>

<hr/>

<p>
<a href="cover.html#TOP">Next</a>&nbsp;&nbsp;
<a href="headfootpage.html#TOP">Prev</a>&nbsp;&nbsp;
<a href="#TOP">Top</a>&nbsp;&nbsp;
<a href="toc.html">Back to Table of Contents</a>
</p>

</body>
</html>

<!-- vim: fileencoding=latin1: nomodified:
-->