summaryrefslogtreecommitdiff
path: root/macros/text1/models
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/text1/models
Initial commit
Diffstat (limited to 'macros/text1/models')
-rw-r--r--macros/text1/models/letter.texinput51
-rw-r--r--macros/text1/models/letter.texmodel45
-rw-r--r--macros/text1/models/memo.texinput48
-rw-r--r--macros/text1/models/memo.texmodel21
-rw-r--r--macros/text1/models/mergelet.texmodel77
-rw-r--r--macros/text1/models/mergelst.texmodel17
-rw-r--r--macros/text1/models/mergetxt.texinput184
-rw-r--r--macros/text1/models/mergetxt.texmodel96
-rw-r--r--macros/text1/models/paper.texinput10
-rw-r--r--macros/text1/models/paper.texmodel28
-rw-r--r--macros/text1/models/resume.texinput62
-rw-r--r--macros/text1/models/resume.texmodel69
-rw-r--r--macros/text1/models/thesis.texinput159
-rw-r--r--macros/text1/models/thesis.texmodel139
14 files changed, 1006 insertions, 0 deletions
diff --git a/macros/text1/models/letter.texinput b/macros/text1/models/letter.texinput
new file mode 100644
index 0000000000..4cac048afa
--- /dev/null
+++ b/macros/text1/models/letter.texinput
@@ -0,0 +1,51 @@
+% LETTER FORMAT FILE bth 4/1/87
+\catcode`*=11
+\raggedbottom % text height may vary from page to page
+\if*msp\defaultmono
+ \let\titlefont=\defaultmono
+ \let\twelvept=\defaultmono
+ \let\tenpt=\defaultmono
+ \let\rm=\defaultmono
+ \fi % monospace check
+\newtoks\departmentname % department name for letterhead
+\newtoks\campuszip % zip code for letterhead
+\newtoks\campusphone % phone number for letterhead
+\newtoks\date % date token list
+\newif\if*postscript
+\*postscriptfalse
+%
+\def\STOP{\endgroup\par}% ends obeylines grouping
+%
+\def\BEGINADDRESS{\begingroup\parskip=0pt\parindent=0pt\obeylines}%
+\let\SALUTATION=\null
+\let\BODY=\STOP
+\def\CLOSING{\par\vs{\bl}\begingroup\parskip=0pt\parindent=0pt
+ \obeylines}%
+\def\COPIES{\par\vs{\bl}
+ \setbox0=\hbox{Copies:\quad}\parindent=\wd0 \nin Copies:\quad}%
+\def\ENCLOSURES#1{\par Enclosures:\quad #1}% sets enclosures text line
+\def\ENDLETTER{\par\endgroup}% stop any obeylines grouping
+% Default for the title (first) page
+\titlepageformat{\titleleadskip{0in}
+ \titlefootline{}
+}% end title page format
+\def\letterhead{{\parskip=0pt
+ \if*msp
+ \cl{\titlefont Washington State University}
+ \vs{\bl}\hrule\vs{\bl}
+ \cl{\the\departmentname}
+ \cl{Pullman, Washington\ \the\campuszip}
+ \cl{\the\campusphone}
+ \vs{1\bl} % number of blank lines inserted
+ \nin\the\date %
+ \else
+ \cl{\titlefont Washington State University}
+ \vs{4pt}\hrule\vs{6pt}
+ \cl{\twelvept \the\departmentname}
+ \cl{\tenpt Pullman, Washington\ \the\campuszip}
+ \cl{\tenpt \the\campusphone}
+ \vs{1\bl} % number of blank lines inserted
+ \nin\the\date %
+ \fi
+}}% end letterhead markup
+\catcode`*=12
diff --git a/macros/text1/models/letter.texmodel b/macros/text1/models/letter.texmodel
new file mode 100644
index 0000000000..0983cee198
--- /dev/null
+++ b/macros/text1/models/letter.texmodel
@@ -0,0 +1,45 @@
+% LETTER MARKUP (style, full block) APRIL 1, 1986
+% To print on monospace printers (line printers, daisy-wheel printers)
+%\monospace % delete the "%" symbol at the beginning of this line
+\paragraphskip{12pt} % distance between paragraphs
+\paragraphindent{0pt} % first line word indent
+\sfs{cm18}{titlefont}{24pt}% large font selected for letterhead
+\input letter.texinput % places the format file into your text file
+% LETTERHEAD INFORMATION
+% Type the name of your department, the campus zip code,
+% the campus telephone number, and date (if not today's
+% date) between the curly braces of the samples shown
+% below. This information will be added to the letterhead.
+%........................................................................
+\departmentname{name of your department or organization}
+\campuszip{99164-????}
+\campusphone{(509) 335-????}
+\date{\today}
+% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
+\letterhead %
+\vs{2\bl} %
+% LETTER ADDRESS
+\BEGINADDRESS % . . . . insert address below this line . . . . . . . . .
+\SALUTATION % . . . replace the salutation on the next line . . . . . . .
+Dear ????
+\BODY % LETTER BODY
+% . . . . . . insert the text of the letter below this line . . . . . . .
+% . . . . . . . . . . . . and above this line . . . . . . . . . . . . . .
+% LETTER CLOSING
+\CLOSING % . . . . replace closing line, if desired . . . . . . . . . . .
+Sincerely yours,
+\vs{3\bl}
+% SIGNATURE LINE
+% . . . . . . . . . replace signature line . . . . . . . . . . . . . . .
+John Doe
+\vs{\bl}
+% ENCLOSURES AND COPIES
+% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
+% Use \ENCLOSURES markup for an enclosure number, %
+% for example: \ENCLOSURES{3} %
+% Use \COPIES markup for a copy list, %
+% for example: \COPIES first name %
+% second name %
+% third name, etc. %
+% . . . . . . . enter enclosures and copies below this line . . . . . . .
+\ENDLETTER %------------- and above this line ---------------------------
diff --git a/macros/text1/models/memo.texinput b/macros/text1/models/memo.texinput
new file mode 100644
index 0000000000..bbf6aa632e
--- /dev/null
+++ b/macros/text1/models/memo.texinput
@@ -0,0 +1,48 @@
+% MEMO TEXINPUT FORMAT FILE
+% dlw 8/15/86
+\catcode`*=11
+\if*msp \let\titlefont=\defaultmono
+ \let\twelvept=\defaultmono
+ \let\tenpt=\defaultmono
+ \let\rm=\defaultmono
+ \fi % change all fonts to defaultmono for the monospace option
+\rightragged
+\newif\if*copies
+\*copiesfalse
+\newtoks\*lfthead \*lfthead = { }
+\newtoks\*ctrhead \*ctrhead = { }
+\newtoks\*rthead \*rthead = { }
+\rightragged
+% Default for the title (first) page
+\titlepageformat{\titleleadskip{0in}
+ \titlefootline{}
+}
+\def\memopageheadingformat#1{% setup for memo running head
+ \def\*left##1{\global\*lfthead={##1}}%
+ \def\*center##1{\global\*ctrhead={##1}}%
+ \def\*right##1{\global\*rthead={##1}}%
+#1}% end memoheading format
+\let\mhf=\memopageheadingformat
+\memopageheadingformat{\*left{}\*center{\pagenumber}\*right{}}
+\runningheadformat{\bothpages{\twelvept
+ \line{\hbox to.33333\hsize{\the\*lfthead\hss}\hfil
+ \hbox to.33333\hsize{\hss\the\*ctrhead\hss}\hfil
+ \hbox to.33333\hsize{\hss\the\*rthead}}
+ \vs{28pt}} % 28pt = .4in
+}% end runningheadformat
+\def\MEMO{\begingroup\obeylines\parskip=0pt\parindent=60pt}%
+\def\TEXT{\endgroup\if*msp\defaultmono\ssp\else\twelvept\fi %
+ \vs{\bl}\hrule\vs{2\bl}}%
+%
+\cl{{\titlefont M E M O R A N D U M}}
+\if*msp\par\vs{\bl}\ssp
+ \else\par\vs{.4in}\isk{18pt}\fi
+\def\TO{\nin To:\par\vs{-\bl}}%
+\def\FROM{\if*msp\vs{\bl}\fi\nin From:\par\vs{-\bl}}%
+\def\DATE#1{\if*msp\vs{\bl}\fi\nin Date:\par\vs{-\bl}#1}%
+\def\SUBJECT{\if*msp\vs{\bl}\fi\nin Subject:\par\vs{-\bl}}%
+\def\COPIES{\global\*copiestrue\vs{\bl}\nin Copies:\par\vs{-\bl} %
+ \begingroup\obeylines\singlespace %
+ \parskip=0pt\parindent=60pt}%
+\def\ENDMEMO{\if*copies\par\endgroup\global\*copiesfalse\else\par\fi}%
+\catcode`*=12
diff --git a/macros/text1/models/memo.texmodel b/macros/text1/models/memo.texmodel
new file mode 100644
index 0000000000..8e16ff97be
--- /dev/null
+++ b/macros/text1/models/memo.texmodel
@@ -0,0 +1,21 @@
+% MEMO TEXMODEL
+% August 15, 1986
+% To print on monospace printers delete the % symbol before \monospace
+%\monospace
+\sfs{cm18}{titlefont}{24pt}% Font selected for heading
+\input memo.texinput % Loads memorandum format file
+\MEMO % Prints memorandum heading
+%--------Enter the text after each markup on the following lines---------
+%------------------multiple line entries may be used---------------------
+\TO
+\FROM
+\DATE {\today}
+\SUBJECT
+\TEXT %----- Insert the memo below this line-----------------------------
+
+%--------------For a list of copies use the \COPIES: markup-------------
+% for example: \COPIES first name
+% second name
+% third name, etc.
+%------------enter the copies markup and names below this line-----------
+\ENDMEMO % ----------------and before this line--------------------------
diff --git a/macros/text1/models/mergelet.texmodel b/macros/text1/models/mergelet.texmodel
new file mode 100644
index 0000000000..de4e4fa4b2
--- /dev/null
+++ b/macros/text1/models/mergelet.texmodel
@@ -0,0 +1,77 @@
+% Sample Letter for Merge File Model
+%
+% TEXT1 Letterhead description, change to suit your letter
+%
+%
+\begingroup
+\paragraphskip{0pt}
+\centerline{{\titlefont Washington State University}}
+\vs{4pt}\hrule\vs{4pt}
+\centerline{{\twelvept\bd Academic Computing Service}}
+\vs{-2pt}
+\centerline{{\tenpt Pullman, Washington 99164-1220\lbr 509/335-0411}}
+\vs{1\bl} % number of blank lines inserted
+\endgroup
+\vs{\bl}
+\tenpt
+\nin{\today}
+\vs{\bl}
+\asisbegin
+\noemptyspace\title\ \firstname\ \lastname
+\noemptyspace\company
+\address
+\city, \state\ \zipcode
+\phone
+
+Dear \firstname:
+
+\asisend
+This letter is a sample for the merge file facility of \text1. Ten
+data fields were created with DBASE~III on a PC and transferred to
+CMS. The fields were delimited with double quotations marks
+({\tt "}) and a comma placed between data fields by DBASE. Any data
+base program that allows data fields to be delimited with quotation
+marks could be used. A data file may also be created
+directly on CMS by entering the data in the following manner:\lbr
+\hs{2in}{\tt "}field one{\tt "},{\tt "}field two{\tt "},\ellipsis3,{\tt
+"}last field{\tt "}\lbr
+or written as \lbr
+\hs{2in}{\tt "}field one{\tt ""}field two{\tt "\ellipsis3\ "}last
+field{\tt "}\lbr
+the commas between data fields are optional.
+
+Quotation marks must be placed on either side of each field
+(delimit the field) and the {\it each data field must come in the same
+sequence as the data names specified in the {\tt \\fieldnames} markup}.
+{\bd No \it field may be omitted}, however, a field may be empty
+({\it i.e.}, {\tt "}first field{\tt ","","}third field{\tt "}
+\ellipsis3 ).
+
+The data markup (field names immediately preceded by a {\tt \\} )
+may be used to place text anywhere in the letter, but
+each field should be followed by a control space markup (\\ \ , a
+backslash followed by a blank space) or \text1
+will drop the space after the field. For example, the \\firstname\\
+\\lastname and \\amount markup have been used to add the
+recipients name and a dollar amount in the following line.
+
+\cl{The \firstname\ \lastname\ account has been charged \amount\ for
+printing services.}
+
+The {\tt \\noemptyspace} markup may be used to prevent a blank line
+if an address line is empty. Place the data field markup between the
+{\tt \\noemptyspace} markup and the linebreak ({\tt \\lbr}) markup
+({\it i.e.}, {\tt \\noemptyspace\\company\\lbr} would prevent a blank
+line if the company data field were empty). The {\tt\\noemptyspace}
+markup prevents an extra space after an empty data field. Place
+it in the following manner: {\tt \\noemptyspace\\title\\
+\\firstname\\ \\lastname\\lbr} The {\tt \\noemptyspace} markup will
+remove the following control space ({\tt \\ }) or control line break
+({\tt \\lbr}) if the specified data field
+is empty.
+\vs{\bl}
+\noindent
+Sincerely yours,
+\vs{3\bl}
+\noindent
+John Doe
diff --git a/macros/text1/models/mergelst.texmodel b/macros/text1/models/mergelst.texmodel
new file mode 100644
index 0000000000..0d15914892
--- /dev/null
+++ b/macros/text1/models/mergelst.texmodel
@@ -0,0 +1,17 @@
+% Sample data base Merge File address list, created with dBASE III
+% data field names are as follows:
+% title, firstname, lastname, company, address,
+% city, state, zipcode, phone, amount
+% All data fields must be present for each entry, although the data
+% field itself may be empty (i.e., "" is an empty or null data field).
+%
+"Ms.","Claire","Buckman","ABC Distributing Director","8307 Santa Anita
+Blvd","Oxnard","CA","93034","(555)456-9059","$5.00"
+"Mr.","Rick","Lisbonn","Vice-President for Marketing","1550 Keystone
+St.","Glendale","CA","91206","(555)455-3344","$15.00"
+"Dr.","Hank","Bicksby","Research Institute, Manager","4101 Peonia
+Rd","Flagstaff","AZ","86001","(555)966-1278","$25.00"
+"","Lena","Garnett","","520 S. 8th St.","Reno","NV","89504",
+"(555)766-9121","$3.00"
+"Mrs.","Lisa","Kafmanan","Sales Support Staff Manager","1960 Lindley
+Ave.","Reseda","CA","91355","(555)860-0300","$8.00"
diff --git a/macros/text1/models/mergetxt.texinput b/macros/text1/models/mergetxt.texinput
new file mode 100644
index 0000000000..a25e9617e5
--- /dev/null
+++ b/macros/text1/models/mergetxt.texinput
@@ -0,0 +1,184 @@
+% Merge File Model Macro Definition File
+\catcode`*=11
+\catcode`"=\active
+\catcode`,=\active
+\catcode`@=\active
+\newbox\FirstUp
+\newbox\SecondUp
+\newbox\ThirdUp
+\newcount\*first \*first=0 % first token field
+\newcount\*index \*index=0 % field index
+\newcount\*lastentry \*lastentry=0 % last token filed
+\newcount\*letternumber \*letternumber=0 % letter number from start
+\newcount\LblsUp \LblsUp=1 % number of labels per line
+\newcount\LblsAcross \LblsAcross=0 % counter for labels accross
+\newdimen\LblMat \LblMat=0pt % left and right label margins
+\newdimen\LblHt \LblHt=0in % vertical label size
+\newdimen\LblWd \LblWd=0in % horozontal label size
+\newif\if*check \*checkfalse % datacheck for manual entry
+\newif\if*lbfopen \*lbfopenfalse % check for open label file
+\newtoks\*csnametoks \*csnametoks={} % tokens for field names
+\newtoks\*maillblfmt \*maillblfmt={} % label sheet format code
+\newtoks\*addrlbl \*addrlbl={} % address label tokens
+\newwrite\*labels % create label filee
+
+\gdef,{\char'54{}}%
+% Datacheck forces a print letter after each set of fields
+\def\datacheck{\global\*checktrue}%
+\def@{\ifnum\*index>0
+ \global\*index=\*first % reset index
+ \if*check
+ \global\advance\*letternumber by1
+ \immediate\write16{Letter number \the\*letternumber.
+ First Data Field: (\the\toks\*first) . . .
+ Last Data Field: (\the\toks\*lastentry ). }
+ \fi % write to log file for data check
+ \*prnletter % print current data
+ \fi
+} % end of @ definition
+
+% Take user defined names to build control sequences
+\def\fieldnames#1{\par
+ \global\advance\count15 by 1 % new token register
+ \global\*first=\count15 % first new token register
+ \parsenames#1\end}% end fieldnames markup
+
+% Separate name fields into individual entries
+\def\parsenames#1{\ifx#1\end
+ \createfield
+ \let\next=\relax
+ \global\*lastentry=\count15
+ \global\*index=\*first
+ \*csnametoks={}
+ \else
+ \ifx#1,
+ \createfield
+ \global\advance\count15 by 1
+ \*csnametoks={}
+ \let\next=\parsenames
+ \else \*csnametoks=\expandafter{\the\*csnametoks#1}
+ \let\next=\parsenames
+ \fi\fi
+ \next}% end parsenames markup
+
+% CREATEFIELD create control sequence names from name field entries
+\def\createfield{\expandafter\xdef\csname\the\*csnametoks\endcsname
+ {\noexpand\the\toks\the\count15 }}% end createfield markup
+
+% DEFINE " as name of merge command
+\def"#1"{% set quote marks as active macro and delimiter
+ \ifnum\*index=0 \global\*index=\*first\fi
+ \global\toks\*index={#1} % gather argument in token variable
+ \ifnum\*index<\*lastentry % continue gathering process
+ \gdef,{\gdef,{\char'54{}}}% % drop , in data but not in text
+ \global\advance\*index by1 % index by 1
+ \ignorespaces % eliminate spurious spaces
+ \else % end process
+ \global\*index=0
+ \if*check
+ \global\advance\*letternumber by1
+ \immediate\write16{Letter number \the\*letternumber.
+ First Data Field: (\the\toks\*first) . . .
+ Last Data Field: (\the\toks\*lastentry ). }
+ \fi % write to log file for data check
+ \*prnletter % print current data
+ \fi}% end define " as macro name
+
+% Merge letter text file merged for each data record
+\def\*prnletter{% Print the letter text with current name/address fields
+ \catcode`"=12\catcode`@=3 % set " and @ to normal catcodes
+ \newpage % start new page for each letter
+ \setpagenumber{1} % reset page number
+ \inputletter % new page then get letter text file
+ \*savelabels{\*setlabel} % save address label information
+ \catcode`"=\active\catcode`@=\active % reset catcodes for markup defs
+ \relax}% end prnletter markup
+
+% Give filename for letter text
+\def\documentfilename#1{\gdef\inputletter{\input #1 }}%
+
+% Give maillist data filename
+\def\datafilename#1{\input #1 }%
+
+% Print no empty lines with the line break markup
+\def\noemptyspace#1#2{\edef\V{#1}\edef\W{\empty}%
+ \ifx\V\W% do nothing if empty argument
+ \else #1#2\fi% if not empty replace argument with the line break
+}% end no emptyspace
+\let\nes=\noemptyspace % set abbreviation
+
+
+% SAVELABELS ships information for labels to the label file
+\def\*savelabels#1{% Write Mail Label Information to TEXT1$$.LABEL
+ \if*lbfopen % do nothing if file TEXT1$$.LABEL already open
+ \else \immediate\openout\*labels=text1$$.label % open TEXT1$$.LABEL
+ \immediate\write\*labels{\the\*maillblfmt} % write format
+ \global\*lbfopentrue\fi % set open flag
+ \global\advance\LblsAcross by1 % set label postion pointer
+ \ifnum\LblsAcross>\LblsUp \global\LblsAcross=1 \fi
+ \edef\T{% create labels
+ \ifnum\LblsAcross=1 \setbox\FirstUp=\fi % left label
+ \ifnum\LblsAcross=2 \setbox\SecondUp=\fi% center label
+ \ifnum\LblsAcross=3 \setbox\ThirdUp=\fi % right label
+ \vtop to\LblHt{\hsize=\LblWd \leftskip=\LblMat \rightskip=\LblMat
+ \parindent=0pt #1\par\vfil} % make label to label size and width
+ \ifnum\LblsAcross=\LblsUp % print labels
+ \ifcase\LblsUp% case 0, no labels specified
+ \or\setbox\SecondUp=\null \setbox\ThirdUp=\null % one label
+ \or \setbox\ThirdUp=\null % two labels
+ \fi% end case % three label default
+ \line{\box\FirstUp\box\SecondUp\box\ThirdUp\hfil}
+ \fi}% end definition of T
+ \immediate\write\*labels{\T} % write information to file
+}% end save labels definition
+
+% Flushlabels prints any unprinted labels remaining in the markup
+\def\*flushlabels{% print any remaining boxed labels
+ \ifcase\LblsUp % case ), no labels specified
+ \or \setbox\SecondUp=\null \setbox\ThirdUp=\null % one label
+ \or \setbox\ThirdUp=\null % two labels
+ \fi% end case % three label default
+ \immediate\write\*labels{\line{\box\FirstUp\box\SecondUp\box\ThirdUp
+ \hfil}}%
+}% end flush any remaining labels
+
+% Print the label file TEXT1$$.LABEL
+\def\printlabels{\newpage % end last letter
+ \*flushlabels % print any remaining labels
+ \immediate\closeout\*labels % close data file
+ \setpagenumber{99} % labels begin on page 99
+ \input text1$$.label % input the address label data file
+}% end print mailing labels
+
+\def\addresslabelformat#1{\global\*addrlbl={#1}}%
+\*addrlbl={}
+
+\def\*setlabel{\the\*addrlbl}%
+
+% Set format for the mailing labels
+\def\maillabelformat#1{% Sets dimensions and margins of each label
+ \def\labelsetup##1{\global\*maillblfmt={##1}}%
+ \def\numberoflabelsperline##1{\global\LblsUp=##1}%
+ \def\labelheight##1{\global\LblHt=##1}%
+ \def\labelwidth##1{\global\LblWd=##1}%
+ \def\labelmat##1{\global\LblMat=##1}%
+ #1}% end mail label format
+\let\mlfmt=\maillabelformat % set abbreviation
+\catcode`*=12
+
+% Set defaults for the mailing labels
+% Maillabelformat sets the page and label information for mailing labels
+\maillabelformat{\labelsetup{% Sets page and margin settings
+ \raggedbottom
+ \parskip=0pt plus0pt minus0pt
+ \runningheadformat{\bothpages{\line{}}}
+ \pageformat{\topmargin{1in}
+ \bottommargin{0pt}
+ \leftmargin{0pt}
+ \rightmargin{0pt}}% end page format
+ }% end labelsetup
+ \numberoflabelsperline{3}% three labels max
+ \labelheight{1in}
+ \labelwidth{2.75in}
+ \labelmat{.25in}
+}% end mail label format
diff --git a/macros/text1/models/mergetxt.texmodel b/macros/text1/models/mergetxt.texmodel
new file mode 100644
index 0000000000..f2a6f50724
--- /dev/null
+++ b/macros/text1/models/mergetxt.texmodel
@@ -0,0 +1,96 @@
+% MERGE LETTER MODEL, merges address list with letter
+\input mergetxt.texinput % READ TEXT1 merge file format instructions
+%
+% Select special fonts and setting markup used
+% in the merge process here:
+%
+\selectfontset{cm18}{titlefont}{default} % special letter heading font
+\titlepageformat{\titleleadskip{0in}} % no initial skip for letters
+%
+% Run TEXT1 against a file on your disk that includes
+% this model. A set of five sample letters will be printed. The
+% sample letter describes the mail merge setup. Once you have
+% run the model and read the letter, make the necessary
+% modifications to your file. Set the address field names of
+% your address file in the "\fieldnames{name, name, ...}"
+% markup with the data field names of your data base file.
+% Create the "shell letter," your letter, which includes the
+% address field names of your data file, preceded by a "\",
+% i.e., \namea, \nameb, etc. You need use only those data
+% fields necessary in the document and address label, but all
+% fields in your data base file must be given in the field
+% names markup. Specify the name of your letter file
+% "shell letter" with the "\documentfilename{fn.ft}" markup;
+% specify the address data file with the "\addressfile{...}"
+% markup; and then PRINT the file containing your letter merge
+% model to merge the address file with the shell letter and
+% print the label sheet.
+%
+% NOTE: If you create an address file by hand remove the percent sign
+% before the datacheck MARKUP. The number of the letter from the
+% beginning of the merge file data base and the first and last
+% data fields will be listed on the screen and in the log file
+% when data check is active. This will aid you in finding any
+% errors in your data file.
+%
+%\datacheck % SET DATACHECK by removing the "%" symbol
+%
+% Give all data field names in sequence of occurrence
+% (address list names)
+%
+% Format: \fieldnames{name1, name2, name3, ..., namelast}
+
+\fieldnames{title, firstname, lastname, company, address, city,
+ state, zipcode, phone, amount}
+
+% Give file name for document text (letter file that includes
+% the field names for the replaceable text in the document)
+%
+% Format: \documentfilename{filename.filetype}
+
+\documentfilename{mergelet.texmodel}
+
+% WARNING!
+% If you want to modify the address label format, then the
+% \addresslabelformat markup MUST come prior to the
+% \datafilename markup.
+%
+% Format: \addresslabelformat{all fields and markup to create label}
+
+\addresslabelformat{\noindent\title\ \firstname\ \lastname\lbr
+ \company\lbr
+ \address\lbr
+ \city, \state\quad\zipcode}
+
+% Now specify where the address data file is located with
+% the \datafilename markup.
+%
+% Format: \datafilename{filename.filetype}
+
+\datafilename{mergelst.texmodel}
+
+% PRINTING A MAILING LABEL SHEET
+%
+% You may use the "\maillabelformat{}" markup to change
+% the default label format markup. The default label format
+% prints three inch-high labels across the page which can be
+% copied onto a label sheet with an appropriate copy machine.
+%
+% WARNING!
+% The \maillabelformat{} markup must be placed BEFORE the
+% \printlabels markup to change the system defaults.
+%
+% Select the font setto be used in printing the labels.
+
+\tenpt % prints labels with computer modern ten point
+
+\printlabels % print address label sheet for Xerox label sheet
+
+% Labels will be printed beginning on page 99.
+%
+% WARNING!
+% If you have an empty data field occurs in the data being
+% processed within the \addresslabelformat, the field will
+% be printed as a blank space or as a blank line if the
+% field is by itself on the line.
+
diff --git a/macros/text1/models/paper.texinput b/macros/text1/models/paper.texinput
new file mode 100644
index 0000000000..b0baec1743
--- /dev/null
+++ b/macros/text1/models/paper.texinput
@@ -0,0 +1,10 @@
+% Student Paper Layout -- Monospace
+\footnoteformat{\everyfootnote{\rm\pin{.5in}\psk{1\bl}
+ \frenchspacing\singlespace}
+}
+\bibliographyformat{\bibentryformat{\goodbreak\vs{1\bl}
+ \frenchspacing\singlespace\hp\nin}
+ \titleformat{\np\cl{\us\bibtitle}
+ \vs{\bl}
+ }
+}
diff --git a/macros/text1/models/paper.texmodel b/macros/text1/models/paper.texmodel
new file mode 100644
index 0000000000..b5e7907d75
--- /dev/null
+++ b/macros/text1/models/paper.texmodel
@@ -0,0 +1,28 @@
+% Student Paper Layout
+% Last updated on = 10/16/86
+\monospace
+\doublespace
+\input paper.texinput % get paper format
+% Cover Page
+ \vsk{1in plus 2fil minus 1in} % space at top of page
+ \centerlinesbegin % all lines centered on cover page
+ \frenchspacing % no double spaces after periods on cover page
+%%%% insert title (using one or more lines) between dashed lines
+%--------------------------------------------------------------------
+%--------------------------------------------------------------------
+\vs{2in} % space between title and author
+%%%% insert author(s) (using one or more lines) between dashed lines
+%--------------------------------------------------------------------
+%--------------------------------------------------------------------
+\vs{2in} % space between author and course
+%%%% insert course (using one or more lines) between dashed lines
+%--------------------------------------------------------------------
+%--------------------------------------------------------------------
+\vs{.5in} % space between course and date
+%%%% Date follows; \today = current date or type over with desired date
+\today
+ \centerlinesend
+ \vs{2in plus 1 fil minus 1in} %space at bottom of page
+ \newpage %end of title page
+ \setpagenumber{1}\titlepage %no page number on first page of text
+%%%% BEGINNING OF PAPER
diff --git a/macros/text1/models/resume.texinput b/macros/text1/models/resume.texinput
new file mode 100644
index 0000000000..5370817b18
--- /dev/null
+++ b/macros/text1/models/resume.texinput
@@ -0,0 +1,62 @@
+%
+\catcode`*=11
+\if*msp
+\pageformat{\pagelength{11in}
+ \pagewidth{8.5in} % 792pt = 11in; 612pt = 8.5in
+ \topmargin{1in}
+ \bottommargin{1.2in} % 58pt = .8in; 72pt = 1in
+ \leftmargin{1.2in}
+ \rightmargin{1in} % 86pt = 1.2in
+ \bindingadjust{0pt}
+}
+\titlepageformat{\titleleadskip{.15in}
+ \titlefootline{}
+}
+\paragraphskip{1\bl} \paragraphindent{0pt}
+\def\name#1{\par\hfill#1\hfill\gdef\headname{#1}}
+\name{}
+\runningheadformat{\bothpages{\line{
+ \lft{\headname}\ctr{{\it Curriculum Vitae}}
+ \rt{\bd\pagenumber}} \vs{\bl}}
+ }
+\runningfootformat{\bothpages{
+ \vs{\bl}\line{\lft{}\ctr{}\rt{\today}}}
+ }
+% Defaults for the \label markup
+\labelformat{\skipbefore{1\bl}
+ \labelwidth{72pt}
+ \gutter{28pt}
+ \everylabel{\defaultmono\bd}
+ }
+%
+\else
+\pageformat{\pagelength{792pt}
+ \pagewidth{612pt} % 792pt = 11in; 612pt = 8.5in
+ \topmargin{68pt}
+ \bottommargin{52pt} % 58pt = .8in; 72pt = 1in
+ \leftmargin{72pt}
+ \rightmargin{74pt} % 86pt = 1.2in
+}
+\titlepageformat{\titleleadskip{.15in}
+ \titlefootline{}
+}
+\paragraphskip{6pt} \paragraphindent{0pt}
+\def\name#1{\par\hfill#1\hfill\gdef\headname{#1}}
+\name{}
+\runningheadformat{\bothpages{
+ \line{\lft{\headname}\ctr{\it Curriculum Vitae}
+ \rt{\bd\pagenumber}} \vs{\bl}}
+ }
+\runningfootformat{\bothpages{
+ \vs{\bl}\line{\lft{}\ctr{}\rt{\today}}}
+ }
+% Defaults for the \label markup
+\labelformat{\skipbefore{1\bl}
+ \labelwidth{72pt}
+ \gutter{28pt}
+ \everylabel{\bd}
+ }
+\fi
+%
+\catcode`*=12
+%
diff --git a/macros/text1/models/resume.texmodel b/macros/text1/models/resume.texmodel
new file mode 100644
index 0000000000..54588fefed
--- /dev/null
+++ b/macros/text1/models/resume.texmodel
@@ -0,0 +1,69 @@
+% Functional style; titled, justified resume
+%
+%********************* ***RESUME TEXMODEL*** **************************
+%* This TEXMODEL shows a sample resume. To get a copy of this sample, *
+%* simply run this file through TeX as it is. *
+%* When entering your own resume be sure to replace or delete all *
+%* sample text. DO NOT use this model on a printer that only can *
+%* print with \monospace. *
+%************************************************************************
+% RESUME START
+\input resume.texinput
+\cl{\bd RESUME}
+\par
+\name{Orville T. Game}
+\cl{\it 9987 NE Oak St., Arbor Bay, CK 58924}
+\vs{1\bl}
+\label{Objective}
+Seeking position with manufacturing firm which will provide
+oportunity for advancement into personel-related position.
+\label{Education}
+\it Doctor of Hagiology, \rm Medical subterfuge\rt{1983.}\lbr
+Beasley College of Performing Arts, Pullman, CA
+
+\label{ }Completed courses in economic manipulation,
+John\-ny Carson analysis, and unpadded scrimmage.
+Special courses in radar sabotage, misspelling, and
+stream of consciousness reporting of news.
+Completed graduate courses in anthropology, anthrometry, anthrosophy,
+anthromorphism, and camp counselling.
+Committee: Michael Farnberger, Casper Weinberger, Bill Cheeseburger,
+and Warren Burgher.
+GPA: 1.75. 40\%\ financed by drug sales; 60\%\ by gambling.
+
+\label{}\it Master of Arts, \rm Philosophy\rt{1983.}\lbr
+University of Idaho, Moscow, ID
+
+\label{}Completed courses in philosophy, filo-making, fillerupedness,
+filling station technology, and filler.
+Completed graduate courses in philosophy, philology,
+philo\-lo\-gram\-matry, phylogeny, filliness, and phil\-i\-stines.
+Special Committee: Phil Marquette, Phillip Petroleum, Philo Bellows,
+and Phyllus Diller.
+GPA: 0.63. 50\%\ financed by bribes, 50\%\ by unpaid loans.
+\label{Related Experience}
+\it Consultant, \rm Computing Service Center\rt{1985-}\lbr
+Washington State University, Pullman, WA 99164-1220
+\par
+\label{}Direct acquisition of antique typesetting machinery and old
+metal sculptings for garden area.
+In charge of coffee for management.
+Qualified to exterminate bugs in really awkward and tiresome
+programs.
+Training to collect and recycle aluminum cans for distribution
+to East coast distilleries.
+\label{Other Experience}
+\it Research Associate-Biowarfare, \rm Mars Institute\rt{1984-}\lbr
+P.O. Box 9, Pullman, WA 99163
+\par
+\label{}Participate in studies on neutralizing liberal demo\-crats with
+nuclear warheads (low radiation, high neutron count).
+Analyze patterns of ideological disarray for potential weakness.
+Write articles on normative aspects of unethical behavior.
+Keep memoirs of same for distribution to publishers.
+\label{Awards}
+ Special award for boot-licking, 1982.
+Outstanding Stand Out, 1983.
+\label{Activities}
+ Drama Club, 1980--82; Alpha Kappa Kappa Fraternity
+\label{References} On request.
diff --git a/macros/text1/models/thesis.texinput b/macros/text1/models/thesis.texinput
new file mode 100644
index 0000000000..2dfd40e5c0
--- /dev/null
+++ b/macros/text1/models/thesis.texinput
@@ -0,0 +1,159 @@
+% WSU graduate school thesis requirements.
+\paragraphindent{36pt}
+\paragraphskip{12pt plus 2pt minus 1pt}
+\raggedbottom
+%
+%
+\catcode`*=11
+\if*msp
+\pageformat{\pagelength{11in}
+ \pagewidth{8.5in}
+ \topmargin{1.2in}
+ \bottommargin{1.2in}
+ \leftmargin{1.2in}
+ \rightmargin{1in}
+ \bindingadjust{0in}
+}
+\titlepageformat{\titleleadskip{1.25in}
+ \titlefootline{}
+}
+% Default values for the \chapter markup
+\chapterformat{\numberingstyle{1}
+ \titleformat{\dumpinsertseject
+ \centerline{\bd Chapter \chapternumber}
+ \centerline{\bd\chaptertitle}
+ \vs{1\bl}
+ \setsubheadanumber{0}
+ \setsubheadbnumber{0}
+ \setsubheadcnumber{0}
+ \setsubheaddnumber{0}
+ }% end titleformat
+ \incontents{yes}
+}% end chapter format
+% Default values for the \subheada markup
+\subheadaformat{\numberingstyle{1}
+ \titleformat{\removelastskip\goodbreak\vs{2\bl}
+ \twelvept\bd\nin\subheadatitle\par\nobreak
+ \setsubheadbnumber{0}
+ \setsubheadcnumber{0}
+ \setsubheaddnumber{0}
+ }% end titleformat
+ \incontents{yes}
+}% end subheadaformat markup
+% Default values for the \subheadb markup
+\subheadbformat{\numberingstyle{1}
+ \titleformat{\removelastskip\goodbreak\vs{2\bl}
+ \twelvept\it\nin\subheadbtitle\par\nobreak
+ \setsubheadcnumber{0}
+ \setsubheaddnumber{0}
+ }% end titleformat
+ \incontents{yes}
+}% end subheadbformat markup
+% Default values for the \preface markup
+\prefaceformat{%
+ \titleformat{\dumpinsertseject
+ \centerline{\bd\prefacetitle}
+ \vs{1\bl}
+ \setsubheadanumber{0}
+ \setsubheadbnumber{0}
+ \setsubheadcnumber{0}
+ \setsubheaddnumber{0}
+ }% end titleformat
+ \incontents{yes}
+}
+\paragraphskip{12pt}
+\asisformat{\skipbefore{0pt}
+ \everyasis{\rm\ssp\leftindent{36pt}}
+ \skipafter{0pt}}
+%
+\blockquoteformat{\skipbefore{0pt}
+ \everyblockquote{\rm\ssp\pin{.3in}\psk{12pt}
+ \leftindent{36pt} \rightindent{36pt}}
+ \skipafter{0pt}}
+%
+\else
+\pageformat{\pagelength{11in}
+ \pagewidth{8.5in}
+ \topmargin{1.2in}
+ \bottommargin{1in}
+ \leftmargin{1.3in}
+ \rightmargin{1in}
+ \bindingadjust{0in}
+}
+\titlepageformat{\titleleadskip{1.25in}
+ \titlefootline{}
+}
+% Default values for the \subheada markup
+\subheadaformat{\numberingstyle{1}
+ \titleformat{\removelastskip\goodbreak\vs{2\bl}
+ \twelvept\bd\nin\subheadatitle\par\nobreak
+ \setsubheadbnumber{0}
+ \setsubheadcnumber{0}
+ \setsubheaddnumber{0}
+ }% end titleformat
+ \incontents{yes}
+}% end subheadaformat markup
+% Default values for the \subheadb markup
+\subheadbformat{\numberingstyle{1}
+ \titleformat{\removelastskip\goodbreak\vs{2\bl}
+ \twelvept\it\nin\subheadbtitle\par\nobreak
+ \setsubheadcnumber{0}
+ \setsubheaddnumber{0}
+ }% end titleformat
+ \incontents{yes}
+}% end subheadbformat markup
+\asisformat{\skipbefore{0pt}
+ \everyasis{\tenpt\ssp\leftindent{36pt}}
+ \skipafter{0pt}}
+%
+\blockquoteformat{\skipbefore{0pt}
+ \everyblockquote{\rm\ssp\pin{24pt}\psk{6pt}
+ \leftindent{36pt} \rightindent{36pt}}
+ \skipafter{0pt}}
+%
+\footnoteformat{\footnotedivider{144pt} % 144pt = 2in
+ \skipafterdivider{2.6pt}
+ \textreferenceposition{up}
+ \textreferenceplacement{after}
+ \textreferencefont{\tenpt}
+ \textreferencestyle{1}
+ \notereferenceposition{down}
+ \notereferencefont{\tenpt}
+ \notereferencestyle{1.}
+ \notereferencegutter{1em}
+ \everyfootnote{\tenpt\ssp\pin{12pt}\psk{6pt}\lin{6pt}}
+}
+%
+\endnoteformat{\skipbefore{4pt}
+ \textreferenceposition{down}
+ \textreferencefont{\rm}
+ \textreferencestyle{[1]}
+ \notereferenceposition{down}
+ \notereferencefont{\rm}
+ \notereferencestyle{1.}
+ \notereferencegutter{1em} % 1em = 12pt in a 12pt font
+ \everyendnote{\rm\pin{12pt}\psk{6pt}\lin{0pt}}
+}
+\fi
+%
+\def\copyrt{\if*msp{}\else
+ {{$\copyright$}}\fi}
+%
+\newcount\P
+\def\signatures#1#2{\par\vs{54pt}\P=#1
+ \ifnum\P>50 \P=50
+ \message{Number of signature lines will be limited to 50}\fi
+ \advance\P by-1
+ \hbox{\hs{3in}\vrule width3in height.4pt}
+ \hbox{\hs{3in}\hbox to 3in{\hfill #2 \hfill}}
+ \vs{36pt}
+ \loop\ifnum\P>0
+ \hbox{\hs{3in}\vrule width 3in height.4pt}
+ \vs{48pt}
+ \advance\P by-1\repeat
+ }%
+%
+\tableofcontentsformat{%
+ \toctitle{\ssp\centerline{\bd Table of Contents}
+ \vs{\bl}}}
+\catcode`*=12
diff --git a/macros/text1/models/thesis.texmodel b/macros/text1/models/thesis.texmodel
new file mode 100644
index 0000000000..59fc7c241f
--- /dev/null
+++ b/macros/text1/models/thesis.texmodel
@@ -0,0 +1,139 @@
+% WSU Graduate School Thesis Requirements
+% Last updated on = 6/15/87
+%********************* ***THESIS TEXMODEL*** **************************
+%* This TEXMODEL shows some sections of a sample thesis. For a printout *
+%* of a sample thesis, simply run this file through TeX as it is. *
+%* When entering your own thesis, be sure to replace or delete all *
+%* sample text. If you are printing your thesis on a monospaced printer,*
+%* the \monospace command must be activated by removing the percent *
+%* sign preceding it. *
+%************************************************************************
+% THESIS START
+
+% ***TITLE PAGE***
+
+%\monospace
+\input thesis.texinput
+\justify \singlespace
+\setpagenumber{-1}
+\centerlinesbegin
+\bd
+A PHENOMENOLOGICAL THEORY OF
+\vs{12pt}
+CROSS-CULTURAL AESTHETICS
+\vs{1.25in}
+\rm
+By
+\vs{12pt}
+GEORG MACQUET
+\vs{1.25in}
+A thesis submitted in partial fulfillment of
+the requirements for the degree of
+\vs{12pt}
+MASTER OF ARTS IN ANTHROPOLOGY
+\vs{24pt}
+WASHINGTON STATE UNIVERSITY
+Department of Anthropology
+\vs{12pt}
+December 1986
+\vs{.8in}
+\copyrt Copyright by GEORG MACQUET, 1986
+All Rights Reserved
+\centerlinesend %DO NOT DELETE THIS LINE UNLESS LINE 19 IS DELETED
+% ***COPYRIGHT PAGE***
+\np
+\titlepage
+\vsk{7in}
+\centerlinesbegin
+\copyrt Copyright by GEORG MACQUET, 1986
+All Rights Reserved
+\centerlinesend %DO NOT DELETE THIS LINE UNLESS LINE 47 IS DELETED
+% ***SIGNATURE PAGE***
+\newpage
+\setpagenumber{-2}
+\rightragged
+\vsk{2.8in}
+\doublespace
+\nin To the Faculty of Washington State University:
+\par
+The members of the Committee appointed to examine the thesis of
+GEORG MACQUET find it satisfactory and recommend that it be
+accepted.
+%
+%******************************************************************
+%* The \signatures command draws the number of lines specified *
+%* in the first parameter for the committee members' signatures. *
+%* The first parameter may be any number, but if it is larger *
+%* than 5, spacing must be changed to make it fit on one page. *
+%* The second parameter of the \signatures command will be *
+%* centered as a title under the first line. *
+%******************************************************************
+%
+\singlespace
+\signatures{4}{Chairperson}
+\doublespace
+% ***ACKNOWLEDGE***
+\newpage
+\justify
+\preface{Acknowledgements}
+I would like to thank Clarke Moustakos and Helen Burdeman
+for their help in advising me to study Anthropology at ...
+% ***ABSTRACT PAGE***
+\newpage
+\vsk{.6in}
+\centerlinesbegin
+\bd
+A PHENOMENOLOGICAL THEORY OF
+\bd
+CROSS-CULTURAL AESTHETICS
+\rm
+ABSTRACT
+\putincontents1{\nin Abstract\leader\pagenumber}
+\vs{12pt}
+\singlespace
+by Georg Macquet, M.A.
+Washington State University
+December 1986
+\centerlinesend %DO NOT DELETE THIS LINE UNLESS LINE 84 IS DELETED
+\doublespace
+\noindent Chairperson: V.~L.~Nabokov
+\par
+Aesthetic phenomena can be defined from an anthropological perspective.
+Anthropology is empirical; therefore, aesthetic phenomena must also be
+defined empirically to be identified by the techniques of...
+\par
+%********************** MAIN TEXT OF THESIS *************************
+%* This ends the preliminary pages of the thesis and begins the main *
+%* text. The remaining sections of the thesis may be entered using any *
+%* or all standard TeXT1 markup commands, including \autofootnote, *
+%* \bibliography, \autoendnote, \subheada, etc. For more information *
+%* on the standard TeXT1 markup commands see the "TeXT1 Users Guide *
+%* (S-522)," or the "TeXT1 Reference Manual (S-523)." *
+%************************************************************************
+\chapter{Introduction}
+\setpagenumber{1}
+The original perspective of anthropology can contribute to a comprehension of
+art. Observational criteria are needed to identify aesthetic phenomena
+uniquely, and anthropology \el3
+\sha{Art as Product}
+In the past, the arts have been studied primarily as products in anthropology.
+But the product must be created by human beings who behave in certain ways. In
+Merriam's words:
+
+\bqb Through the humanistic elements of his culture, man seems to be making
+pointed commentary on how he lives; his social life in itself seems to bring
+about conditions under which he is unable to restrain himself from commenting
+upon himself\el3
+\bqe
+
+\sha{Styles of Representation}
+Representations are images that refer to the visual appearance of a thing.
+Gombrich's theory\afn{wherin a representation is not a symbol} is not
+appropriate in this context. Indeed, A.P. Meriam (1971)\aen{This is the only
+edition with the full analysis of semantic theories applied to oriental
+cultures.} states that\el3
+\newpage
+\cl{\bd Notes}
+\printendnotes
+\toc{-5}
+\bye