<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>Mom -- Document Processing, Writing Letters</title>
</head>
<body bgcolor="#dfdfdf">
<!====================================================================>
<a href="macrolist.html#TOP">Next</a>
<a href="refer.html#TOP">Prev</a>
<a href="toc.html">Back to Table of Contents</a>
<p>
<a name="TOP"></a>
<a name="LETTERS">
<h1 align="center"><u>WRITING LETTERS WITH MOM</u></h1>
</a>
<a name="LETTERS_INTRO">
<h2><u>Introduction</u></h2>
</a>
<strong>Mom</strong>'s simple but effective letter-writing
macros are a subset of the
<a href="docprocessing.html#DOCPROCESSING">document processing macros</a>,
designed to ease the creation of correspondence.
<p>
Because the letter macros are a subset of the document
processing macros, you can use
<a href="definitions.html#TERMS_CONTROLMACRO">control macros</a>
to design correspondence to your own specifications. However,
<strong>mom</strong> makes no pretence of providing complete design
flexibility in the matter of letters, which are, after all, simple
communicative documents whose only real style requirements are that
they be neat and professional-looking.
<p>
<a name="TUTORIAL"><h2><u>Tutorial on writing letters</u></h2></a>
<p>
<strong>Mom</strong> letters begin, like all
<strong>mom</strong>-processed documents, with a
<a href="docprocessing.html#REFERENCE_MACROS">reference macro</a>
(in this case,
<a href="docprocessing.html#AUTHOR">AUTHOR</a>),
a
<a href="docprocessing.html#DOCTYPE">DOCTYPE</a>
(<strong>LETTER</strong>, obviously), the essential
<a href="docprocessing.html#PRINTSTYLE">PRINTSTYLE</a>
macro, and
<a href="docprocessing.html#START">START</a>,
like this:
<p>
<pre>
.AUTHOR "Yannick P. Guique"
.DOCTYPE LETTER
.PRINTSTYLE TYPESET
.START
</pre>
<strong>PRINTSTYLE</strong>, above, could also be
<strong>TYPEWRITE</strong>. <strong>Mom</strong> has no objection
to creating letters that look like they were typed on an Underwood
by a shapely secretary with 1940s gams.
<p>
After the <strong>START</strong> macro, you enter headers pertinent to
your letter: the date, the addressee (in business correspondence,
typically both name and address), the addresser (that's you; in
business correspondence, typically both name and address), and a
greeting (in full, e.g. "Dear Mr. Smith," or "Dear
Mr. Smith:").
<p>
The macros for entering the headers are simple (they're not even
<a href="definitions.html#TERMS_TOGGLE">toggles</a>):
<p>
<pre>
.DATE
.TO
.FROM
.GREETING
</pre>
You may enter them in any order you like, except for
<strong>GREETING</strong>, which must come last.
<strong>Mom</strong> ignores any headers you omit and spaces the
letter's opening according to what you do include. See
<a href="#LETTERS_DEFAULTS">Default for letters</a>
to find out how <strong>mom</strong> formats the headers.
<p>
(In pre 1.1.7-a releases of <strong>mom</strong>, the order
of entry was fixed at the above. This has been changed, although
if you do follow the above order, <strong>mom</strong> will
continue to behave exactly as she did in pre 1.1.7-a.)
<p>
Once you've filled in what you need to get a letter started, simply
type the letter, introducing each and every paragraph, including
the first, with the
<a href="docelement.html#PP">PP</a>
macro.
<p>
At the end of the letter, should you wish an indented closing
("Yours truly," "Sincerely," "Hugs and
kisses"), invoke the macro <strong>CLOSING</strong> on a
line by itself and follow it with the text of the closing.
<strong>N.B.</strong> Don't put your name here; <strong>mom</strong>
supplies it automatically from <strong>AUTHOR</strong> with
enough space to leave room for your signature.
<p>
Assuming our tutorial letter is for business correspondence,
here's what the complete letter looks like.
<p>
<pre>
.AUTHOR "Yannick P. Guique"
.DOCTYPE LETTER
.PRINTSTYLE TYPESET
.START
.DATE
August 25, 2004
.TO
GUILLAUME BARRIÈRES
Minidoux Corporation
5000 Pannes Drive
Redmond, Virginia
.FROM
Y.P. GUIQUE
022 Umask Road
St-Sauveur-en-dehors-de-la-mappe, Québec
.GREETING
Dear Mr. Barrières,
.PP
It has come to my attention that you have been lobbying the
US government to prohibit the use of open source software by
endeavouring to outlaw so-called "warranty free"
applications.
.PP
I feel it is my duty to inform you that the success of your
operating system with its embedded web browser relies heavily
on open source programs and protocols, most notably TCP/IP.
.PP
Therefore, in the interests of your corporation's fiscal health,
I strongly advise that you withdraw support for any US
legislation that would cripple or render illegal open source
development.
.CLOSING
Sincerely,
</pre>
This produces a letter with headers that follow the North American
standard for business correspondence. If you'd prefer another
style of correspondence, for example, British, you'd set up the
same letter like this:
<p>
<pre>
.AUTHOR "Yannick P. Guique"
.DOCTYPE LETTER
.PRINTSTYLE TYPESET
.START
.FROM
.RIGHT
Y.P. GUIQUE
022 Umask Road
St-Sauveur-en-dehors-de-la-mappe, Québec
.TO
GUILLAUME BARRIÈRES
Minidoux Corporation
5000 Pannes Drive
Redmond, Virginia
.DATE
.RIGHT
August 25, 2004
.GREETING
Dear Mr. Barrières,
</pre>
Notice the use of <strong>.RIGHT</strong> after
<strong>.FROM</strong> and <strong>.DATE</strong> in this example,
used to change the default quad for these macros.
<p>
<hr>
<a name="LETTERS_DEFAULTS">
<h2><u>Defaults for letters</u></h2>
</a>
In letters, if the order of header macros is
<p>
<pre>
.DATE
.TO
.FROM
.GREETING
</pre>
<strong>mom</strong> sets
<br>
<ol>
<li>the date flush right, page right, at the top of page one,
with a gap of two linespaces underneath
<li>the addressee in a block flush left, page left, with a gap of
one linespace underneath
<li>the addresser in a block flush left, page left, with a gap of
one linespace underneath
<li>the greeting flush left, with a gap of one linespace
underneath
</ol>
<p>
which is the standard for North American business correspondence.
<p>
If you switch the order of <strong>.DATE</strong>,
<strong>.TO</strong> and/or <strong>.FROM</strong>,
<strong>mom</strong> sets all the headers flush left, with a gap of
one linespace underneath each. (The default left quad of any header
can be changed by invoking the <strong>.RIGHT</strong> macro, on
a line by itself, immediately before inputting the text of the
header.)
<p>
Following the headers, <strong>mom</strong> sets
<p>
<ul>
<li>the body of the letter justified
<li>in multi-page letters:
<ul>
<li>a footer indicating there's a next page (of the form <code>.../#</code>)
<li>the page number at the top of every page after page one
</ul>
<li>the closing/signature line flush left, indented halfway across the page
</ul>
<p>
Other important style defaults are listed below, and may be changed
via the
<a href="typesetting.html#MACROS_TYPESETTING">typesetting macros</a>
or the document processing
<a href="definitions.html#TERMS_CONTROLMACRO">control macros</a>
prior to
<a href="docprocessing.html#START">START</a>. Assume that any
style parameter not listed below is the same as for
<a href="docprocessing.html#TYPESET_DEFAULTS">PRINTSTYLE TYPESET</a>
or
<a href="docprocessing.html#TYPEWRITE_DEFAULTS">PRINTSTYLE TYPEWRITE</a>.
<p>
<pre>
PARAMETER PRINTSTYLE TYPESET PRINTSTYLE TYPEWRITE
--------- ------------------ --------------------
Paper size 8.5 x 11 inches 8.5 x 11 inches
Left/right margins 1.25 inches 1.25 inches
Header margin 3.5 picas 3.5 picas
(for page numbers)
Header gap 3 picas 3 picas
(for page numbers)
Family Times Roman Courier
Font roman roman
Point size 12 12
Line space 13.5 12 (i.e. singlespaced)
Paragraph indent 3 ems 3 picas
Spaced paragraphs yes no
Footers* yes yes
Footer margin 3 picas 3 picas
Footer gap 3 picas 3 picas
Page numbers top, centred top, centred
*Footers contain a "next page" number of the form .../#
</pre>
<hr>
<a name="LETTERS_MACROS">
<h2><u>The letter macros</u></h2>
</a>
All letter macros must come after
<a href="docprocessing.html#START">START</a>,
except <strong>NO_SUITE</strong>.
<p>
<ul>
<li><a href="#DATE">DATE</a>
<li><a href="#TO">TO</a>
<li><a href="#FROM">FROM</a>
<li><a href="#GREETING">GREETING</a>
<li><a href="#CLOSING">CLOSING</a>
<li><a href="#NO_SUITE">NO_SUITE</a> -- "next page" number off
</ul>
<br>
<!---DATE--->
<hr width="66%" align="left">
<p>
<a name="DATE"></a>
Macro: <strong>DATE</strong>
<p>
Invoke <strong>DATE</strong> on a line by itself, with the date
underneath, like this:
<p>
<pre>
.DATE
October 31, 2002
</pre>
If you wish to change the default quad direction for the date,
enter <kbd>.LEFT</kbd> or <kbd>.RIGHT</kbd>, on a line by itself,
immediately after <kbd>.DATE</kbd>.
<p>
If you wish to insert additional space between the date and any
letter header that comes after it, do so after inputting the date,
not at the top of the next header macro, like this:
<p>
<pre>
.DATE
October 31, 2002
.SPACE \" Or, more simply, .SP
</pre>
If you wish to remove the default space,
<p>
<pre>
.SPACE -1v \" Or, more simply, .SP -1v
</pre>
will do the trick.
<p>
<!---TO--->
<hr width="66%" align="left">
<p>
<a name="TO"></a>
Macro: <strong>TO</strong>
<p>
Invoke <strong>TO</strong> on a line by itself, with the name
and address of the addressee underneath, like this:
<p>
<pre>
.TO
JOHN SMITH
10 Roberts Crescent
Bramladesh, Ont.
</pre>
If you wish to change the default quad direction for the address,
enter <kbd>.LEFT</kbd> or <kbd>.RIGHT</kbd>, on a line by itself,
immediately after <kbd>.TO</kbd>.
<p>
If you wish to insert additional space between the address and
any letter header that comes after it, do so after inputting the
address, not at the top of the next header macro, like this:
<p>
<pre>
.TO
JOHN SMITH
10 Roberts Crescent
Bramladesh, Ont.
.SPACE \" Or, more simply, .SP
</pre>
If you wish to remove the default space,
<p>
<pre>
.SPACE -1v \" Or, more simply, .SP -1v
</pre>
will do the trick.
<p>
<!---FROM--->
<hr width="66%" align="left">
<p>
<a name="FROM"></a>
Macro: <strong>FROM</strong>
<p>
Invoke <strong>FROM</strong> on a line by itself, with the name
and address of the addresser underneath, like this:
<p>
<pre>
.FROM
JOE BLOW
15 Brunette Road
Ste-Vieille-Andouille, Québec
</pre>
If you wish to change the default quad direction for the address,
enter <kbd>.LEFT</kbd> or <kbd>.RIGHT</kbd>, on a line by itself,
immediately after <kbd>.FROM</kbd>.
<p>
If you wish to insert additional space between the address and
any letter header that comes after it, do so after inputting the
address, not at the top of the next header macro, like this:
<p>
<pre>
.FROM
JOE BLOW
15 Brunette Road
Ste-Vieille-Andouille, Québec
.SPACE \" Or, more simply, .SP
</pre>
If you wish to remove the default space,
<p>
<pre>
.SPACE -1v \" Or, more simply, .SP -1v
</pre>
will do the trick.
<p>
<!---GREETING--->
<hr width="66%" align="left">
<p>
<a name="GREETING"></a>
Macro: <strong>GREETING</strong>
<p>
Invoke <strong>GREETING</strong> on a line by itself, with the
full salutation you want for the letter, like this:
<p>
<pre>
.GREETING
Dear Mr. Smith,
</pre>
<!---CLOSING--->
<hr width="66%" align="left">
<p>
<a name="CLOSING"></a>
Macro: <strong>CLOSING</strong>
<p>
Invoke <strong>CLOSING</strong> on a line by itself after the
body of the letter, with the closing you'd like (e.g. "Yours
truly,"), like this:
<p>
<pre>
.CLOSING
Yours truly,
</pre>
<!---NO_SUITE--->
<hr width="66%" align="left">
<p>
<a name="NO_SUITE"></a>
Macro: <strong>NO_SUITE</strong>
<p>
If you don't want <strong>mom</strong> to print a "next
page" number at the bottom of multi-page letters, invoke
<code>.NO_SUITE</code>, on a line by itself, prior to
<a href="docprocessing.html#START">START</a>.
<p>
<hr>
<a href="macrolist.html#TOP">Next</a>
<a href="refer.html#TOP">Prev</a>
<a href="#TOP">Top</a>
<a href="toc.html">Back to Table of Contents</a>
</body>
</html>