Back to Table of Contents | Next: Quick reference guide

# Writing letters

## 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 – writing letters

Mom letters begin, like all mom-processed documents, with reference macros (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 entering headers 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 a 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. If you omit the closing, mom simply adds your name (from AUTHOR), again with enough space 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, 2010 .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 once again 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 relies heavily on open source programs and protocols, 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.

## Mom’s default letter style

In letters, if the order of header macros is

1. `.DATE`
2. `.TO` (the addressee)
3. `.FROM` (the addresser)
4. `.GREETING` (“Dear Whoever,” “To Whom It May Concern,” etc.)

mom sets

- the date flush right, page right, at the top of page one, with a gap of two linespaces underneath
- the addressee (`.TO`) in a block flush left, page left, with a gap of one linespace underneath
- the addresser (`.FROM`) in a block flush left, page left, with a gap of one linespace underneath
- 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 each. (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 lines 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 any document processed with 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.125 inches 1.125 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, which must come after PRINTSTYLE and before START.

- DATE
- TO
- FROM
- GREETING
- CLOSING
  - CLOSING_INDENT
  - SIGNATURE_INDENT
- NO_SUITE – turn the “next page” footer off

Macro: DATE

Invoke `.DATE` on a line by itself, with the date underneath, like this:
.DATE October 31, 2012 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, 2012 .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 underneath, 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,”) underneath, like this:
.CLOSING Yours truly,

CLOSING control macros and defaults
Two macros control the behaviour of `.CLOSING`:

- CLOSING_INDENT
- SIGNATURE_SPACE

The first, CLOSING_INDENT, indicates the distance from the left margin you’d like to have your closing indented. It takes a single numeric argument and must have a unit of measure appended to it, unless you want an indent of 0 (zero). Mom’s default is one half the width of the letter’s line length (i.e. halfway across the page). If you wanted, instead, an indent of 6 picas, you’d do it like this:
.CLOSING_INDENT 6P Or, if you wanted to have no indent at all:
.CLOSING_INDENT 0

The second, SIGNATURE_SPACE, controls how much room to leave for the signature. It takes a single numeric argument and must have a unit of measure appended to it. Mom’s default is 3 line spaces, but if you wanted to change that to, say, 2 line spaces, you’d do:
.SIGNATURE_SPACE 2v

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.

Back to Table of Contents | Top | Next: Quick reference guide