Next Prev Back to Table of Contents
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.
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.
In letters, if the order of header macros is
.DATE .TO .FROM .GREETINGmom sets
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
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.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 .../#
All letter macros must come after START, except NO_SUITE.
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 -1vwill 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 -1vwill 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 -1vwill 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,
There are two macros that may be used to control the behaviour of .CLOSING: CLOSING_INDENT and 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 1/2 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 6POr, 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.