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.

    	.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 great gams back in the 1940s.

After the START macro, you enter data pertinent to your letter: the date, the addressee (in business correspondence, typically both name and address), the addressor (that's you; in business correspondence, typically both name and address), and a greeting (in full, e.g. "Dear Mr. Smith,").

The macros for entering the data are simple (they're not even toggles) and entered in an intuitive order.

1. `.DATE`
2. `.TO`
3. `.FROM`
4. `.GREETING`

Mom ignores any you omit and spaces the letter's opening according to what you do include.

Once you've filled in what you need to get a letter started, simply type the letter, introducing each and every paragraph 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,

## Defaults for letters

In letters, mom sets:

1. the date flush right, page right, at the top of page one
2. the addressee in a block flush left, page left
3. the addressor in a block flush left, page left
4. the greeting flush left
5. the body of the letter justified
6. 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
7. 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, centered        top, centered

    *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

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.

Macro: FROM

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

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

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