Research V3 development
authorRobert Morris <rhm@research.uucp>
Thu, 8 Feb 1973 19:42:12 +0000 (14:42 -0500)
committerRobert Morris <rhm@research.uucp>
Thu, 8 Feb 1973 19:42:12 +0000 (14:42 -0500)
Work on file man/man1/form.1

Co-Authored-By: Lorinda Cherry <llc@research.uucp>
Synthesized-from: v3

man/man1/form.1 [new file with mode: 0644]

diff --git a/man/man1/form.1 b/man/man1/form.1
new file mode 100644 (file)
index 0000000..4087d53
--- /dev/null
@@ -0,0 +1,84 @@
+.pa 1
+.he 'FORM (I)'6/15/72'FORM (I)'
+.ti 0
+NAME
+.br
+form -- form letter generator
+.sp
+.ti 0
+SYNOPSIS
+.br
+form\b\b\b\b____ proto arg\e91\e8 ...
+.sp
+.ti 0
+DESCRIPTION
+.br
+form\b\b\b\b____ generates a form letter from a prototype
+letter, an associative memory, arguments and in a special case, the
+current date.
+.sp
+If form\b\b\b\b____ is invoked with the proto\b\b\b\b\b_____ argument 'x', the associative memory is
+searched for an entry with name 'x' and the contents filed under that name are
+used as the prototype.  If the search fails, the message "[x]:" is typed on
+the console and whatever text is typed in from the console, terminated by
+two new lines, is used as the prototype.
+.sp
+If the prototype argument is missing, '{letter}' is assumed.
+.sp
+Basically, form\b\b\b\b____ is a copy process from the prototype to the output file.
+If an element of the form [n] (where n\b_ is a digit from 1 to 9) is encountered,
+the n\b_th argument arg\b\b\b___\e9n\e8 is inserted in its place, and that argument is then
+rescanned.  If [0] is encountered, the current date is inserted.  If
+the desired argument has not been given, a message of the form "[n]:" is
+typed.  The response typed in then is used for that argument.
+.sp
+If an element of the form [name] or {name} is encountered, the name is looked up in the
+associative memory.  If it is found, the contents of the memory under this
+name replaces the original element (again rescanned).  If
+the name is not found, a message of the form "[name]:" is typed.
+The response typed in is used for that element.  The response is
+entered in the memory under the name if the name is enclosed in [].
+The response is not entered in the memory but is remembered for the
+duration of the letter if the name is enclosed in {}.
+.sp
+In both of the above cases, the response is typed in by entering
+arbitrary text terminated by two new lines.  Only the first of the
+two new lines is passed with the text.
+.sp
+If one of the special characters [{]}\\ is preceded by
+a \\, it loses its special character.
+.sp
+If a file named "forma" already exists in the users directory, "formb" is
+used as the output file and so forth to "formz".
+.sp
+The file "form.m" is created if none exists.  Because form.m is
+operated on by the disc allocater, it should only be changed by using
+fed\b\b\b___, the form letter editor, or form\b\b\b\b____.
+.sp
+.fi
+.ti 0
+FILES
+.br
+form.m associative memory
+.br
+form?  output file (read only)
+.sp
+.fi
+.ti 0
+SEE ALSO
+.br
+fed(I), type(I), roff(I)
+.sp
+.fi
+.ti 0
+DIAGNOSTICS
+.br
+"cannot open output file" "cannot open memory file"
+when the appropriate files cannot be located or created.
+.sp
+.fi
+.ti 0
+BUGS
+.br
+An unbalanced ] or } acts as an end of file but
+may add a few strange entries to the associative memory.