Mom -- Document Processing, Writing Letters

Next Prev Back to Table of Contents

# WRITING LETTERS WITH MOM

## Introduction

Mom's simple but effective letter-writing macros are a subset of the document processing macros, designed to ease the creation of correspondence.

Because the letter macros are a subset of the document processing macros, you can use control macros to design correspondence to your own specifications. However, mom 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.

## Tutorial on writing letters

Mom letters begin, like all mom-processed documents, with a reference macro (in this case, AUTHOR), a DOCTYPE (LETTER, obviously), the essential PRINTSTYLE macro, and START, like this:

    	.AUTHOR    "Yannick P. Guique"
    	.DOCTYPE    LETTER
    	.PRINTSTYLE TYPESET
    	.START

PRINTSTYLE, above, could also be TYPEWRITE. Mom has no objection to creating letters that look like they were typed on an Underwood by a shapely secretary with 1940s gams.

After the START 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:").

The macros for entering the headers are simple (they're not even toggles):

    	.DATE
    	.TO
    	.FROM
    	.GREETING

You may enter them in any order you like, except for GREETING, which must come last. Mom ignores any headers you omit and spaces the letter's opening according to what you do include. See Default for letters to find out how mom formats the headers.

(In pre 1.1.7-a releases of mom, the order of entry was fixed at the above. This has been changed, although if you do follow the above order, mom will continue to behave exactly as she did in pre 1.1.7-a.)

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 PP macro.

At the end of the letter, should you wish an indented closing ("Yours truly," "Sincerely," "Hugs and kisses"), invoke the macro CLOSING on a line by itself and follow it with the text of the closing. N.B. Don't put your name here; mom supplies it automatically from AUTHOR with enough space to leave room for your signature.

Assuming our tutorial letter is for business correspondence, here's what the complete letter looks like.

    	.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,

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:

    	.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,

Notice the use of .RIGHT after .FROM and .DATE in this example, used to change the default quad for these macros.

## Defaults for letters

In letters, if the order of header macros is

    	.DATE
    	.TO
    	.FROM
    	.GREETING

mom sets

1. the date flush right, page right, at the top of page one, with a gap of two linespaces underneath
2. the addressee in a block flush left, page left, with a gap of one linespace underneath
3. the addresser in a block flush left, page left, with a gap of one linespace underneath
4. the greeting flush left, with a gap of one linespace underneath

which is the standard for North American business correspondence.

If you switch the order of .DATE, .TO and/or .FROM, mom sets all the headers flush left, with a gap of one linespace underneath. (The default left quad of any header can be changed by invoking the .RIGHT macro, on a line by itself, immediately before inputting the text of the header.)

Following the headers, mom sets

- the body of the letter justified
- in multi-page letters:
  - a footer indicating there's a next page (of the form `.../#`)
  - the page number at the top of every page after page one
- the closing/signature line flush left, indented halfway across the page

Other important style defaults are listed below, and may be changed via the typesetting macros or the document processing control macros prior to START. Assume that any style parameter not listed below is the same as for PRINTSTYLE TYPESET or PRINTSTYLE TYPEWRITE.

    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 .../#

## The letter macros

All letter macros must come after START, except NO_SUITE.

- DATE
- TO
- FROM
- GREETING
- CLOSING
- NO_SUITE -- "next page" number off

Macro: DATE

Invoke DATE on a line by itself, with the date underneath, like this:

    	.DATE
    	October 31, 2002

If you wish to change the default quad direction for the date, enter `.LEFT` or `.RIGHT`, on a line by itself, immediately after `.DATE`.

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:

    	.DATE
    	October 31, 2002
    	.SPACE     \" Or, more simply, .SP

If you wish to remove the default space,

    	.SPACE -1v \" Or, more simply, .SP -1v

will do the trick.

Macro: TO

Invoke TO on a line by itself, with the name and address of the addressee underneath, like this:

    	.TO
    	JOHN SMITH
    	10 Roberts Crescent
    	Bramladesh, Ont.

If you wish to change the default quad direction for the address, enter `.LEFT` or `.RIGHT`, on a line by itself, immediately after `.TO`.

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:

    	.TO
    	JOHN SMITH
    	10 Roberts Crescent
    	Bramladesh, Ont.
    	.SPACE     \" Or, more simply, .SP

If you wish to remove the default space,

    	.SPACE -1v \" Or, more simply, .SP -1v

will do the trick.

Macro: FROM

Invoke FROM on a line by itself, with the name and address of the addresser underneath, like this:

    	.FROM
    	JOE BLOW
    	15 Brunette Road
    	Ste-Vieille-Andouille, Québec

If you wish to change the default quad direction for the address, enter `.LEFT` or `.RIGHT`, on a line by itself, immediately after `.FROM`.

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:

    	.FROM
    	JOE BLOW
    	15 Brunette Road
    	Ste-Vieille-Andouille, Québec
    	.SPACE     \" Or, more simply, .SP

If you wish to remove the default space,

    	.SPACE -1v \" Or, more simply, .SP -1v

will do the trick.

Macro: GREETING

Invoke GREETING on a line by itself, with the full salutation you want for the letter, like this:

    	.GREETING
    	Dear Mr. Smith,

Macro: CLOSING

Invoke CLOSING on a line by itself after the body of the letter, with the closing you'd like (e.g. "Yours truly,"), like this:

    	.CLOSING
    	Yours truly,

Macro: NO_SUITE

If you don't want mom to print a "next page" number at the bottom of multi-page letters, invoke `.NO_SUITE`, on a line by itself, prior to START.

Next Prev Top Back to Table of Contents