summaryrefslogtreecommitdiff
path: root/contrib/mom/momdoc/rectoverso.html
blob: e45537f86e7e770c3b74947a18ccb0b0d2fcb665 (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
<html>
<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 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>

<a name="TOP"></a>
<a name="RECTOVERSO">
	<h2 align="center"><u>RECTO/VERSO PRINTING and COLLATING</u></h2>
</a>

<a name="INDEX_RECTOVERSO">
	<h3><u>Recto/verso and collating</u></h3>
</a>

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

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

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>
With recto/verso, <strong>mom</strong> automatically takes control
of two aspects of alternating page layout in a document: the left and right
margins (provided they're not equal), and the switching of the left
and right parts of
<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>)
and page numbering (if page numbers are not centered).
<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 -- 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.
<br>


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

<ul>
	<li><a href="#RECTO_VERSO">RECTO_VERSO</a>
	<li><a href="#SWITCH_HDRFTR">SWITCH_HEADERS (also FOOTERS)</a>
</ul>

<hr>
<!---RECTO_VERSO--->

<a name="RECTO_VERSO">
	<h3><u>Recto/verso printing</u></h3>
</a>
<br>
Macro: <strong>RECTO_VERSO</strong>

<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>
<strong>NOTE:</strong>
<br>
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>
Equally, recto/verso only switches the page number position if page
numbers aren't centered, 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>).
<br>

<!---SWITCH_HDRFTR--->

<hr width="66%" align="left">
<a name="SWITCH_HDRFTR">
	<h3><u>Switch header left part/right part</u></h3>
</a>
<br>
Macro: <strong>SWITCH_HEADERS</strong>

<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>
<strong>SWITCH_HEADERS</strong> can also be useful in conjuction
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>
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>
<strong>NOTE:</strong> Replace <strong>_HEADERS</strong>, above,
with <strong>_FOOTERS</strong> if your document uses footers.
<br>
<hr>

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

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

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>
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>
When collating chapters, you need only put <code>.COLLATE</code>
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>
(have a look at the
<a href="#CHAPTER_NOTE">Special Note on CHAPTER</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>
<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>
<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 --
		why would you want to do that anyway?)
	<li>use <strong>DOC_FAMILY</strong> instead of
		<strong>FAMILY</strong> if, for some reason, you want
		to change the family of all the document elements after
		<strong>COLLATE</strong>.  <strong>FAMILY</strong>, by
		itself, will change the family of paragraph text only.
</ol>
<br>

<!---COLLATE--->

<hr width="66%" align="left">
<a name="COLLATE">
	<h3><u>Collate document files</u></h3>
</a>
<br>
Macro: <strong>COLLATE</strong>

<p>
The most basic (and most likely) collating situation looks like
this:
<p>
<pre>
	.COLLATE
	.CHAPTER 17
	.START
</pre>

A slightly more complex version of the same thing, for chapters
that require their own titles, looks like this:
<p>
<pre>
	.COLLATE
	.CHAPTER_STRING "Geek Fatigue: Symptoms and Causes"
	.HEADER_CENTER "Geek Fatigue: Symptoms and Causes"
	.START
</pre>

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

<hr>
<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>
</body>
</html>