summaryrefslogtreecommitdiff
path: root/obsolete/macros/latex209/contrib/resume
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 /obsolete/macros/latex209/contrib/resume
Initial commit
Diffstat (limited to 'obsolete/macros/latex209/contrib/resume')
-rw-r--r--obsolete/macros/latex209/contrib/resume/res-sample.tex83
-rw-r--r--obsolete/macros/latex209/contrib/resume/res-sample2.tex149
-rw-r--r--obsolete/macros/latex209/contrib/resume/res.sty781
-rw-r--r--obsolete/macros/latex209/contrib/resume/resume-sample.tex58
-rw-r--r--obsolete/macros/latex209/contrib/resume/resume.sty100
5 files changed, 1171 insertions, 0 deletions
diff --git a/obsolete/macros/latex209/contrib/resume/res-sample.tex b/obsolete/macros/latex209/contrib/resume/res-sample.tex
new file mode 100644
index 0000000000..7c7d570917
--- /dev/null
+++ b/obsolete/macros/latex209/contrib/resume/res-sample.tex
@@ -0,0 +1,83 @@
+\documentstyle[margin,line]{res}
+
+% Logos
+% =====
+
+\font\attand=cmr7
+%\font\MetafontLogoFont=logo10
+
+\def\PS{{\tt P\small OST\tt S\small CRIPT}}
+\def\ATT{{AT{\attand \&}T}}
+\def\MF{{METAFONT}}
+\def\Cplusplus{{\rm C\raise.5ex\hbox{\small ++}}}
+\def\AmSTeX{{$\cal A\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.125em
+S$-\TeX}}
+
+\begin{document}
+
+\name{Michael R. DeCorte}
+\address{2300 Naudain St\\
+Phily, PA\\
+(215) 546-0497\
+{\tt mrd@sun.soe.clarkson.edu}}
+
+\begin{resume}
+
+\section{Objective:}
+Gee, why can't I put ``To play with cool toys and have fun''?
+
+\section{Education:}
+{\bf Major:} Bachelor of Science, Computer Science, Clarkson
+University May 1989\\
+
+
+\section{Publications:}
+My picture was in my HS newpaper onc. Does that count?
+
+
+\section{Projects:}
+{\tt Eclipse}\\
+During a lunar eclipse the moon projects its shadow over the earth.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% I put the experience stuff here
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{format}
+\title{l}\dates{r}\\
+\body\\
+\end{format}
+
+\title{Unix Wizard}
+\dates{September 1986 to Present}
+
+\section{Experience:}
+\begin{position}
+{\it Math and Computer Science},Clarkson University---
+Well, people keep asking me all these nifty questions about Unix
+so that makes me a Wizard right?
+\end{position}
+
+\title{\TeX{} Wizard}
+\dates{September 1986 to Present}
+
+\begin{position}
+{\it Math and Computer Science},Clarkson University---
+See Unix Wizard for a description and substitue \TeX{} for Unix.
+\end{position}
+
+\section{Systems:}
+\begin{ncolumn}{4}
+$\bullet$ Unix 4.x &$\bullet$ Unix V &$\bullet$ Sun OS
+&$\bullet$ VMS\\
+\end{ncolumn}
+
+\section{References:}
+Call me I will see if I can dig someone up. I hope my old room mate
+counts.
+
+\end{resume}
+\end{document}
+
+
+
diff --git a/obsolete/macros/latex209/contrib/resume/res-sample2.tex b/obsolete/macros/latex209/contrib/resume/res-sample2.tex
new file mode 100644
index 0000000000..891c60c0a9
--- /dev/null
+++ b/obsolete/macros/latex209/contrib/resume/res-sample2.tex
@@ -0,0 +1,149 @@
+\documentstyle[margin,line]{res}
+
+% Logos
+% =====
+
+\font\attand=cmr7
+%\font\MetafontLogoFont=logo10
+
+\def\PS{{\tt P\small OST\tt S\small CRIPT}}
+\def\ATT{{AT{\attand \&}T}}
+\def\MF{{METAFONT}}
+\def\Cplusplus{{\rm C\raise.5ex\hbox{\small ++}}}
+\def\AmSTeX{{$\cal A\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.125em
+S$-\TeX}}
+
+\oddsidemargin -.5in
+\evensidemargin -.5in
+\textwidth=6.0in
+
+\begin{document}
+
+
+\name{Mark R. Anderson}
+\address{mail code c-014\\
+University of California, San Diego\\
+La Jolla, CA 92093}
+
+\begin{resume}
+
+\section{\sc Objective}
+I wish to join a team involved in software development of a parallel
+processing system.
+
+\section{\sc Education}
+University of California at San Diego, San Diego, CA. \newline
+M.S. in Computer Science, June 1985; GPA: 4.0
+
+Harvey Mudd College, Claremont, CA. \newline
+B.S. in Mathematics, May 1982; GPA: 3.3
+
+Graduate coursework includes:
+Advanced Compiler Construction,
+Automata Theory,
+Combinatorial Algorithms,
+Operating Systems,
+Software Engineering,
+Parallel Processing Seminars,
+Formal Semantics of Programming Languages Seminars.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% I put the experience stuff here
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{format}
+\title{l}\employer{r}\\
+\location{l}\dates{r}\\
+\body\\
+\end{format}
+
+\title{\em Research Assistant.}
+\employer{\bf Prep-P Project.}
+\dates{\bf Sep. 1984 -- Present.}
+\location{UCSD}
+
+\section{\sc Research and Work Experience}
+\begin{position}
+The Prep-P project is
+developing a preprocessor for the CHiP parallel architecture.
+The goal of the preprocessor is to map problems that use an arbitrary
+number of processes onto the processing elements of a fixed
+size machine.
+On this project I have served as co-supervisor.
+My duties included devising tasks for and supervising the work of others
+as well as writing and maintaining programs written in C.
+\end{position}
+
+\title{\em Teaching Assistant}
+\employer{\bf Department of EECS}
+\dates{\bf Sep. 1984 -- Dec. 1985.}
+\location{UCSD}
+\begin{position}
+I graded homework and
+conducted review sessions for graduate and undergraduate classes.
+\end{position}
+
+\title{\em Consultant}
+\employer{\bf Simple Software}
+\dates{\bf Feb. 1984 -- Apr. 1984.}
+\location{San Diego, CA.}
+\begin{position}
+I was hired as a consultant to develop a file compression
+system on micros.
+The system was written in C.
+\end{position}
+
+\title{\em Programmer/Analyst}
+\employer{\bf System Development Corporation}
+\dates{\bf May 1982 -- Sep. 1983.}
+\location{Santa Monica, CA.}
+\begin{position}
+I was a member of a group developing an interactive testing system
+for the Jovial programming language. I wrote parts of a Jovial to
+threaded code compiler in CWIC. CWIC is SDC's Lisp based compiler
+writing system.
+\end{position}
+
+\title{\em Research Assistant.}
+\employer{\bf Self-Sorting Memory Project}
+\dates{\bf Sep. 1981 -- Dec. 1981.}
+\location{Harvey Mudd College}
+\begin{position}
+I wrote a simulation of an algorithm which performed Gaussian elimination
+on a parallel machine using self-sorting memory modules.
+The simulator was written in Fortran.
+\end{position}
+
+\section{\sc Special Skills}
+Programming Languages: Algol, C, Fortran, Jovial, Lisp, Pascal, Snobol, and
+SETL. \newline
+Assembly Languages: 6502, 8051, 8086. \newline
+Operating Systems: IBM CMS, Unix, Vax VMS.
+
+\section{\sc Honors and Awards}
+University of California Regents Fellowship \newline
+Graduation with Distinction from Harvey Mudd College
+
+\section{\sc Publications:}
+D. Beeman, R. Lynds, and M. R. Anderson, ``Structural
+and vibrational properties of a model vitreous $As_{2}O_{3}$,''
+Journal of Non-Crystalline Solids Vol. 42 pp. 61-7 (October 1980).
+
+D. Beeman, J. Silverman, R. Lynds, and M. R. Anderson,
+``Modeling studies of amorphous carbon.,'' Physics Review
+B Vol. 30 pp. 870-5 (July 15, 1984).
+
+M. Anderson and F. Berman, ``A Complexity Measure for
+Demand Driven Data Flow Models,'' UCSD Dept. of Computer
+Science Technical Report (CS-087) (September 1986).
+
+M. Anderson and F. Berman, ``Removing Useless Tokens from
+a Dataflow Computation,'' submitted for publication (Jan 1987).
+
+
+\section{\sc References}
+Available on request.
+
+\end{resume}
+\end{document}
+
diff --git a/obsolete/macros/latex209/contrib/resume/res.sty b/obsolete/macros/latex209/contrib/resume/res.sty
new file mode 100644
index 0000000000..3885051dba
--- /dev/null
+++ b/obsolete/macros/latex209/contrib/resume/res.sty
@@ -0,0 +1,781 @@
+% RESUME DOCUMENT STYLE -- Released 23 Nov 1989
+% for LaTeX version 2.09
+% Copyright (C) 1988,1989 by Michael DeCorte
+
+\typeout{Document Style `res' <26 Sep 89>.}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% res.sty
+%
+% \documentstyle{res}
+%
+% Copyright (c) 1988 by Michael DeCorte
+% Permission to copy all or part of this work is granted, provided
+% that the copies are not made or distributed for resale, and that
+% the copyright notice and this notice are retained.
+%
+% THIS WORK IS PROVIDED ON AN "AS IS" BASIS. THE AUTHOR PROVIDES NO
+% WARRANTY WHATSOEVER, EITHER EXPRESS OR IMPLIED, REGARDING THE WORK,
+% INCLUDING WARRANTIES WITH RESPECT TO ITS MERCHANTABILITY OR FITNESS
+% FOR ANY PARTICULAR PURPOSE.
+%
+% If you make any improvements, I'd like to hear about them.
+%
+% Michael DeCorte
+% P.O. Box 652
+% Potsdam NY 13676
+% mrd@sun.soe.clarkson.edu
+% mrd@clutx.bitnet
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% You can have multiple style options the legal options ones are:
+%
+% centered the name and address are centered at the top of the
+% page (default)
+%
+% line the name is the left with a horizontal line then
+% the address to the right
+%
+% overlapped the section titles overlap the body text (default)
+%
+% margin the section titles are to the left of the body text
+%
+% 11pt use 11 point fonts instead of 10 point fonts
+%
+% 12pt use 12 point fonts instead of 10 point fonts
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Commands
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \Resume prints the word resume but typeset nicely
+%
+% \newsectionwidth{dimen}
+% defines the amount of space the labels extend
+% into the left margin.
+% DO NOT TRY to change any of the dimensions
+% yourself. You will probably confuse the style file.
+%
+% \name{text} defines your name
+%
+% \address{text}
+% defines your address
+% this can be called twice if you have two addresses
+% use \\'s to indicate where either line breaks or
+% comas should go
+%
+% \opening this prints your name and address at that spot
+% this is not normally needed, as \begin{resume}
+% does this but is provided just in case you need
+% to do something odd
+%
+% \begin{resume} ... \end{resume}
+% all of the resume should go inside of this
+% environment
+%
+% \section{text}
+% This prints 'text' in the left hand margin.
+% Its exact placement depends on what the style
+% options has been set to. (overlapped or margin)
+% You should use \\ to start a new line. If the
+% style option is margin, the \\ is converted
+% to a space.
+% To use this in any of the list environments, put
+% the \section after the \item[] but before the
+% text.
+% Eg.
+% \begin{itemize}
+% \item\section{text}
+% text
+% \end{itemize}
+%
+% \begin{ncolumn}{n} ... \end{ncolumn}
+% creates a tabular environment with n equally
+% spaced columns. Separate columns by & and
+% end them with \\
+%
+% \begin{position} ... \end{position}
+% this is used to print a job description. There should
+% be only one job description in it. Information
+% related to the job (such as title, dates...) will
+% be printed.
+%
+% \begin{format} ... \end{format}
+% used to change the default format for the position
+% environment. Within it the recognized commands are:
+% \title{option}
+% \employer{option}
+% \location{option}
+% \dates{option}
+% \body
+% \\
+% where option is one of l,r,c standing for left, right, center.
+% The format will eventually be used to make several
+% tabular environments and you are defining the number of columns
+% and the placement of text within the columns of the tabulars.
+% Each row is terminated by a \\. Any number of options can
+% be on a line, they will each be set in their own columns.
+% Any of the options except \body may be left out.
+%
+% Eg.
+% \begin{format}
+% \title{l}\employer{r}\\
+% \dates{r}\\
+% \body\\
+% \location{l}\\
+% \end{format}
+%
+% In this example the title and employer information
+% are set in 2 columns left justified and right justified
+% respectively. Then the date is set right justified.
+% Then the body is set. Then the location is set left
+% justified.
+%
+% \employer{text}
+% \title{text}
+% \dates{text}
+% \location{text}
+% declare text for the next invocation of the position
+% environment
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Glue
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% sectionskip the amount of horizontal before a section
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Dimensions
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% sectionwidth the amount that the section titles go in the
+% left margin
+%
+% resumewidth the width of the total resume from the left
+% margin to the right. Don't use textwidth
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Definitions
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% sectionfont the font used to print section titles
+% use \renewcommand to change it
+%
+% namefont the font used to print your name
+% use \renewcommand to change it
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% THINGS TO DO
+%
+% add lm,rm options to format style to allow things to be placed
+% in the left or right margin respectivly
+%
+% add capability so that \body doesn't have to be proceeded (followed)
+% by a \\ allowing part of the description (eg. location) to be the
+% first (last) thing of the body
+%
+% clean up the list building procedures
+%
+% write docs to tell people how to use this
+
+
+\nofiles % resume's don't need .aux files
+
+
+\newtoks\tabular@text % holds the current list being processed
+\newtoks\tabular@head % holds the head tabular list
+\newtoks\tabular@tail % holds the tail tabular list
+\newtoks\@ta % used by \@append
+\newtoks\undefined@token\undefined@token={}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% prints a centered name with the address centered
+% or the two address on opposite sides of the page
+%
+\def\@printcentername{\begingroup
+ % print the name centered
+ \leavevmode\hbox to \textwidth{\hfil\@tablebox{\namefont\@name}\hfil}\par
+ \@ifundefined{@addressone}{%
+ % do nothing
+ }{%
+ \@ifundefined{@addresstwo}{
+ % only one address
+ \leavevmode\hbox to \textwidth{\hfil\@tablebox{\@addressone}\hfil}\par
+ }{
+ % two addresses
+ \leavevmode\hbox to \textwidth{\@tablebox{\@addressone}\hfil
+ \@tablebox{\@addresstwo}}\par
+ }%
+ }%
+\endgroup}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% this is used to print the name and address at the top of
+% the page with a hline in between
+%
+\def\namefont{\large\bf}
+\def\@linename{\begingroup
+ \def\\{, }
+ {\namefont\@name}
+ \vskip 2pt
+ \fullline
+ \vskip 2pt
+ % where do you live?
+ \@ifundefined{@addressone}{%
+ % do nothing
+ }{%
+ \leavevmode\hbox to \textwidth
+ {\hfill\vbox{\hbox{\@addressone}
+ \hbox{\@addresstwo}
+ }%
+ }\par
+ }
+\endgroup}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% HEADINGS:
+% There are two types of headings:
+% 1) one with the name centered and the address centered or
+% in the left and right side if there are two address
+% 2) one where the name is in the upper left corner
+% the a line accross the paper
+% then the address all on one line in the right corner
+% the second address will be directly below the first if defined
+%
+\let\print@name\relax
+\def\ds@centered{\ifx\print@name\relax\let\print@name\@printcentername\fi}
+\def\ds@line{\ifx\print@name\relax\let\print@name\@linename\fi}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Use this to set the sectionwidth.
+% It adjust the width of the text as well as the hoffset
+% You probably shouldn't touch any of the size paramaters
+% unless you really understand all of this but it is not
+% hard. Either way, it can only be executed once
+%
+\def\sectionfont{\bf}
+\newdimen\sectionwidth
+\newskip\sectionskip
+\newdimen\resumewidth
+
+\resumewidth=6.5in
+\sectionskip=3.5ex plus 1ex minus -.2ex % values stolen from LaTeX
+
+\def\newsectionwidth#1{%
+ \sectionwidth=#1
+ \textwidth=\resumewidth
+ \advance\textwidth-\sectionwidth
+ \hsize=\textwidth
+ \hoffset=\sectionwidth
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This is for sectiontitles that are entirely in the left margin.
+% multiline sectiontitles are permited and will be broken by
+% \TeX{} to fit into a box \verb|\sectionwidth| wide. It is advised
+% that \verb|\\| be used to break the lines by hand as \TeX{} will
+% probably not do what you want.
+%
+% When using this with {\tt tabbing} and {\tt list} (or anything
+% that is made out of {\tt list}) put the \section's inside of
+% the \verb|\begin{}| and the \verb|\item|Eg.
+% \begin{verbatim}
+% \begin{trivlist}
+% \item[]
+% \section{foo}
+% text
+% \end{trivlist}
+% \end{verbatim}
+%
+\def\boxed@sectiontitle#1{%
+ % this macro may be called in a tabular. Special code must be written
+ % to accomodate this. In LaTeX, a tabular is made out of hboxes.
+ % TeX never goes into horizontal mode because of this; it only
+ % gets into vertical mode and restricted horizontal mode. Certain
+ % indenting problems must be handled because of this. They
+ % are delt with at the end of this routine.
+ % It is also necessary to close the hbox that was created before
+ % the \section and create a new one when this macro has ended.
+ % This macro therefore simulates a \kill, so that any text before
+ % the \section not be printed. The proper use is therefore
+ % ...
+ % text\\
+ % \section{foo}
+ % more text\\
+ % ...
+ \ifx\\\@tabcr % is this in a tabular? (this *should* work but is a cludge)
+ \@stopfield % the is the first part of a \kill
+ \else
+ \@@par % This will end the previous paragraph if needed and
+ % go into vertical mode. If this was already in
+ % vertical mode then the \par does nothing.
+
+ \fi
+ \begingroup
+ \everypar={}%
+ \def\par{\@@par}%
+ \let\\=\@normalcr
+ \addpenalty{\@secpenalty} % this would be a good place for a page break
+ % \@secpenalty is what LaTeX uses before its
+ % section's. It happens to be -300
+ \addvspace{\sectionskip} % put in a bit of glue
+ % The following hbox will be contributed to the page list without going
+ % into horizontal mode. Therefore, any \parindent's, \parshape's, \leftskip
+ % will be ignored but \hoffset's are not. The result is that the box will
+ % only by \hoffset. This is what I want
+ \hbox to 0pt{%
+ \hss % this is an llap. In other words, this glue
+ % will shrink by the width of the stuff in the vbox
+ % (\sectionwidth) into the left margin and then
+ % insert the contents of the vbox.
+ \vtop to 0pt{% make a 0pt height paragraph, with the baseline at the
+ % lined up with the baseline of the first box in the list
+ \leftskip=0pt
+ \hsize=\sectionwidth
+ \textwidth=\sectionwidth
+ \raggedright % you don't want this filled out to the right margin
+ \sectionfont
+ #1\vss % Go into horizontal mode; do the paragraph;
+ % go into vertical mode; add some negative glue
+ % to give a box of 0pt height and depth
+ }%
+ }%
+ \addpenalty{-\@secpenalty} % this would be a bad place for a page break
+ \vskip-\baselineskip % when the next box is processed, baselineskip glue
+ % glue will be added (the box has no depth because of
+ % the \vss; therefore, we don't have to worry about
+ % \lineskiplimit). This -\baselineskip glue
+ % is to undo this. \nointerlineskip doesn't
+ % work because the baseline of this line would be lined
+ % up with the top of the top of the next box. We
+ % want the baselines lined up.
+ %
+ % It may have been possible to do this by forcing the
+ % baseline of this box to be the top of the box but
+ % then the interline skip between this box and the
+ % previous box would be off as the baselines of the
+ % this box (the one that being made above) and the
+ % previous line would be separated by \baselineskip
+ % (probably, it may be separted by the depth of the
+ % previous box + \lineskip) but as the baseline of
+ % this box has been moved to the top, the box's would
+ % separted by to much glue. The exact amount being
+ % the height of this box.
+ \endgroup
+ \ifx\\\@tabcr % is this in a tabular? (this *should* work but is a cludge)
+ % this is the second part of the \kill; it starts the next tabbing line
+ % Because this routine will never get into paragraph mode when used in
+ % tabbing the \parskip that is discussed below will never be inserted.
+ % Therefore it should not be negated as done below.
+ \@startline
+ \ignorespaces
+ \else
+ \vskip-\parskip % The next thing to be contributed will be a paragraph.
+ % Right before being contributed though a \vskip\parskip
+ % will be inserted. This is to negate it.
+ %
+ % I do consider this to be a bit of a cludge but
+ % I can not find a way to write \unskipfutureskip
+ % or a way to make TeX think that nothing has
+ % been contributed to the page list.
+ \fi
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This is for sectiontitles that are entirely above the section text
+%
+\def\unboxed@sectiontitle#1{%
+ \ifx\\\@tabcr % see boxed@sectiontitle for explation
+ \@stopfield
+ \else
+ \@@par
+ \fi
+ \begingroup
+ \everypar={}%
+ \def\par{\@@par}%
+ \def\\{ }
+ \addpenalty{\@secpenalty}
+ \addvspace{\sectionskip}
+ \hbox to 0pt{\hss\hbox to \sectionwidth{\sectionfont#1\hss}}
+ \addpenalty{-\@secpenalty} % this would be a bad place for a page break
+ \endgroup
+ \ifx\\\@tabcr % see boxed@sectiontitle for explation
+ \@startline
+ \else
+ \vskip-\parskip
+ \fi
+ \ignorespaces
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% There are two types of section headings:
+% 1) the section heading is all on one line and directly
+% below it, is the body of the text
+% 2) the section heading is entirely in the left margin
+% (possibly taking multiple lines) with the body of
+% the text next to it
+%
+\let\@@section\relax
+\def\ds@overlapped{\ifx\@@section\relax\newsectionwidth{0.5in}\let
+ \@@section\unboxed@sectiontitle\fi}
+\def\ds@margin{\ifx\@@section\relax\newsectionwidth{1.3in}\let
+ \@@section\boxed@sectiontitle\fi}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% DEFAULTS: (some of them)
+%
+% centered name
+% overlapped section titles
+%
+% format is:
+% title employer
+% location dates
+% body
+% with everything in the left of its column
+
+\input article.sty
+
+\ds@centered
+\ds@overlapped
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% typeset resume all nice and pretty
+%
+\def\Resume{{R\'{e}sum\'{e}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% makes a line of width \textwidth starting at -\hoffset
+%
+\def\fullline{ % hrules only listen to \hoffset
+ \nointerlineskip % so I have this code
+ \moveleft\hoffset\vbox{\hrule width\textwidth}
+ \nointerlineskip
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% create a multiline box.
+%
+\def\@tablebox#1{\begin{tabular}[t]{@{}l@{\extracolsep{\fill}}}#1\end{tabular}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% use this to define your name
+%
+\def\name#1{\def\@name{#1}}
+
+\def\@name{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% use this to define your address, this may be called more than once.
+%
+\let\@addressone\relax
+\let\@addresstwo\relax
+
+\def\address#1{
+ \@ifundefined{@addressone}{\def\@addressone{#1}}{\def\@addresstwo{#1}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% if you want to print your name and address is a slightly
+% different format than sugessted, then this can be used
+% to place it exactly where you want
+%
+\def\opening{\def\@opening{}
+ \begingroup
+ \leftskip=-\hoffset % I use leftskip to move things to the left as
+ \advance\textwidth\hoffset % changing hoffset doesn't work. But this
+ \hsize=\textwidth % doesn't really work as hboxes are rules
+ % are unaffeted
+ \let\par=\@@par
+ \parindent=0pt
+ \parskip=0pt
+ \print@name
+ \endgroup
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% all of the resume goes in the resume environment
+%
+\newenvironment{resume}{\begingroup
+ \@ifundefined{@opening}{\opening}{}
+}{\endgroup}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% gives you a tabular environment with n equally spaced columns
+% \begin{ncolumn}{#} ... \end{ncolumn}
+%
+% The p option of LaTeX is broken in all but the newest verion
+% of latex.tex, this is how to fix it
+%
+\def\@endpbox{\par\egroup\hfil}
+\let\@@endpbox=\@endpbox
+
+\newdimen\@columnwidth % the width of each column equal to
+\def\ncolumn#1{%
+ % \@columnwidth = \textwidth / #1
+ \@columnwidth=\textwidth \divide\@columnwidth by #1
+ \begin{tabular*}{\textwidth}[t]%
+ {*{#1}{@{}p{\@columnwidth}@{\extracolsep{\fill}}}}
+}
+
+\def\endncolumn{\end{tabular*}}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \employer{text} defines employer to be text
+% \location{text} defines location to be text
+% \dates{text} defines dates to be text
+% \title{text} defines title to be text
+% \body
+%
+
+\def\employer#1{\def\@employer{\print@employer{#1}}}
+\def\location#1{\def\@location{\print@location{#1}}}
+\def\dates#1{\def\@dates{\print@dates{#1}}}
+\def\title#1{\def\@title{\print@title{#1}}}
+
+\let\l@justify\raggedright
+\let\r@justify\raggedleft
+\let\c@justify\centering
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \@format{name}{justify}
+% will define \print@#1 to print it's one argument
+% justified according to #2 which can be
+% l = left
+% r = right
+% c = center
+%
+% eg.
+% \@format{employer}{c}
+% is the same as \def\print@employer#1{{\centering #1\par}}
+%
+\def\@format#1#2{%
+ \expandafter\gdef\csname print@#1\endcsname##1{%
+ {\csname#2@justify\endcsname##1\par}}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% this is used to define how the position environment should
+% formated.
+%
+% \begin{format} positioning text \end{format}
+% where positioning text may be
+% \employer{pos}
+% \location{pos}
+% \dates{pos}
+% \title{pos}
+% \body (for the body of the position environment)
+% where pos is
+% l for left
+% r for right
+% c for center
+% use \\ to break the line
+% you don't have to use all of the options.
+% on any one line, you should indicate what you want on that line
+% and where it should go within its column.
+% eg.
+% the following prints the employer in the left with the location
+% centered within that its column. It then prints the date on the
+% right. Then it prints the body of the position environment. Then
+% it prints the title centered within its column; as there is only
+% one column here it is really just centered.
+%
+% \begin{format}
+% \employer{l}\location{c}\\
+% \dates{r}\\
+% \body\\
+% \title{c}\\
+% \end{format}
+
+\newcounter{numberofcolumns}
+\newenvironment{format}{%
+ \def\end@line@head{\append@tabular@head{tabular@text}\tabular@text={}%
+ \c@numberofcolumns 0}
+ \def\end@line@tail{\append@tabular@tail{tabular@text}\tabular@text={}%
+ \c@numberofcolumns 0}
+ \tabular@text={}
+ \tabular@head={}
+ \tabular@tail={}
+ \c@numberofcolumns 0
+ \let\\=\end@line@head
+ \def\employer##1{\advance\c@numberofcolumns 1
+ \@format{employer}{##1}
+ \append@tabular@text{employer}}
+ \def\location##1{\advance\c@numberofcolumns 1
+ \@format{location}{##1}
+ \append@tabular@text{location}}
+ \def\dates##1{\advance\c@numberofcolumns 1
+ \@format{dates}{##1}
+ \append@tabular@text{dates}}
+ \def\title##1{\advance\c@numberofcolumns 1
+ \@format{title}{##1}
+ \append@tabular@text{title}}
+ \def\body{\iftoks\tabular@head\undefined@token\then
+ \else
+ \@append{\noexpand\\}\to\tabular@head
+ \skotfi
+ \let\\=\end@line@tail}}{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%taken from page 378 of TeXbook but freely hacked
+%
+% appends the expansion of #1 to the token list #2
+
+\def\@append#1\to#2{%
+ \@ta=\expandafter{#1}%
+ \xdef\@append@temp{\the#2\the\@ta}
+ \global#2=\expandafter{\@append@temp}%
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% CHAA006%vaxb.rhbnc.ac.uk@NSS.Cs.Ucl.AC.UK
+% texhax.88.078
+% is used to see if two token lists are equal
+% there must be a better way
+%
+
+\let \then = \empty
+\def \iftoks #1#2\then #3\else #4\skotfi{
+ \edef \1{\the #1}
+ \edef \2{\the #2}
+ \ifx \1\2\then #3\else #4\fi}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \append@tabular@text{command}
+%
+% appends command to the end of \tabular@text.
+% NOTE: command MUST be a command but without the \
+% Eg. \append@tabular@text{relax}
+%
+% used to define \tabular@text for the tabular environment
+% used by append@tabular@head and append@tabular@tail
+%
+
+\def\append@tabular@text#1{%
+\iftoks\tabular@text\undefined@token\then
+ \global\tabular@text=\expandafter{\csname @#1\endcsname}
+\else
+ \@append{&}\to\tabular@text
+ \@append{\csname @#1\endcsname}\to\tabular@text
+\skotfi
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% append@tabular@head
+%
+% appends command to the end of \tabular@text@head
+% NOTE: command MUST be a command but without the \
+% Eg. \append@tabular@head{relax}
+%
+% used to define \tabular@head for the tabular environment
+% used by the position environment
+%
+\def\append@tabular@head#1{%
+ \ifnum\the\c@numberofcolumns=0\relax
+ \else
+ \iftoks\tabular@head\undefined@token\then
+ \relax
+ \else
+ \@append{\noexpand\\}\to\tabular@head
+ \@append{\noexpand\penalty-\@secpenalty}\to\tabular@head
+ \skotfi
+ \@append{\noexpand\begin{ncolumn}}\to\tabular@head
+ \@append{\expandafter{\the\c@numberofcolumns}}\to\tabular@head
+ \@append{\the\csname#1\endcsname}\to\tabular@head
+ \@append{\noexpand\end{ncolumn}}\to\tabular@head
+ \fi
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% append@tabular@tail
+%
+% appends command to the end of \tabular@text@htail
+% NOTE: command MUST be a command but without the \
+% Eg. \append@tabular@tail{relax}
+%
+% used to define \tabular@tail for the tabular environment
+% used by the position environment
+%
+\def\append@tabular@tail#1{%
+ \ifnum\the\c@numberofcolumns=0\relax
+ \else
+ \iftoks\tabular@tail\undefined@token\then
+ \else
+ \@append{\noexpand\\}\to\tabular@tail
+ \@append{\noexpand\penalty-\@secpenalty}\to\tabular@tail
+ \skotfi
+ \@append{\noexpand\begin{ncolumn}}\to\tabular@tail
+ \@append{\expandafter{\the\c@numberofcolumns}}\to\tabular@tail
+ \@append{\the\csname#1\endcsname}\to\tabular@tail
+ \@append{\noexpand\end{ncolumn}}\to\tabular@tail
+ \fi
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% put the actual job descriptions here
+% \begin{postion} ... \end{position}
+% in the ... describe the position.
+% don't put the \dates \location etc in here. define them before hand
+\newenvironment{position}%
+ {%
+ \begingroup
+ \par
+ \the\tabular@head
+% \addpenalty{-\@secpenalty}% bad place for a page break
+ \penalty -\@secpenalty % bad place for a page break
+ \penalty 10000
+ \ignorespaces
+ }{%
+ \the\tabular@tail
+% \addpenalty{\@secpenalty}% good place for a page break
+ \penalty \@secpenalty % good place for a page break
+ \endgroup
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% DEFAULTS: (the rest of them)
+%
+% centered name
+% overlapped section titles
+%
+% format is:
+% title employer
+% location dates
+% body
+% with everything in the left of its column
+
+\@secpenalty = -500
+\topmargin 0pt
+\headheight 0pt
+\headsep 0pt
+\textheight 9in
+\parindent 0pt
+\topmargin 0in
+\oddsidemargin 0pt
+\evensidemargin 0pt
+\marginparwidth 0pt
+\parindent 0pt
+\parskip \baselineskip
+\setcounter{secnumdepth}{0}
+\def\@listI{\leftmargin\leftmargini
+\topsep 0pt
+\parskip 0pt
+\partopsep 2pt plus 2pt
+\parsep 2pt plus 2pt
+\itemsep \parsep}
+
+\pagestyle{empty} % don't want page numbers
+
+\begin{format}
+\title{l}\employer{r}\\
+\location{l}\dates{r}\\
+\body\\
+\end{format}
+
+\let\section\@@section
+
diff --git a/obsolete/macros/latex209/contrib/resume/resume-sample.tex b/obsolete/macros/latex209/contrib/resume/resume-sample.tex
new file mode 100644
index 0000000000..8522f68afd
--- /dev/null
+++ b/obsolete/macros/latex209/contrib/resume/resume-sample.tex
@@ -0,0 +1,58 @@
+% resume-sample.tex 23 Oct 89
+% An example using the resume style option
+% By Stephen Gildea
+
+% original version 28 Sep 88
+% minor changes 23 Oct 89
+
+\documentstyle[11pt,resume]{article}
+\begin{document}
+
+\name{TERRY R. GENSYM}
+
+\addresses
+{{\bf Work Address} \\
+MIT Room E34--660 \\
+77 Massachusetts Ave. \\
+Cambridge, MA 02139 \\
+(617) 253--7955}
+{{\bf Home Address} \\
+72 West St.~Apt.~1 \\
+Cambridge, MA 02138 \\
+(617) 492--5543}
+
+\begin{llist}
+\sectiontitle{Objective}
+A large office, good pay, and very little work.
+Frequent expense-account trips to exotic lands would be a plus.
+
+\sectiontitle{Experience}
+\employer{CHENG'S CHINESE RESTAURANT} \location{Cambridge, MA}
+\dates{1970--1979}
+Soup taster for a small family-owned restaurant. Had final
+responsibility for the amount of Soy Sauce that went into the soups.
+
+\employer{CARL'S FASHIONS} \location{Watertown, MA}
+\dates{1979--1982}
+Needle-threader for Kelly Hormel, a leading tailor in the Boston area.
+Duties included keeping all needles ready for use and threaded with
+the appropriate type and color of thread for each day's jobs.
+
+\employer{INSIDIOUS BLUE MACHINES} \location{San Jose, CA}
+\dates{1982--present}
+Chief light bulb changer, with over 1500 square feet of office under my
+jurisdiction. The eyes of thousands were on me.
+
+\sectiontitle{Education}
+\employer{MASSACHUSETTS INSTITUTE OF TECHNOLOGY} \location{Cambridge, MA}
+B.A. in English History June 1970. Graduated at the top of my class.
+
+\sectiontitle{Publications}
+``A Multi-Threaded System for Needle Management,'' {\em Womens Wear Daily,}
+August 20, 1981.
+
+``The Representation of Flavor,'' with August Rancatori, {\em IEEE 1985
+Proceedings of the Workshop on Taste in Computers.}
+
+\end{llist}
+\end{document}
diff --git a/obsolete/macros/latex209/contrib/resume/resume.sty b/obsolete/macros/latex209/contrib/resume/resume.sty
new file mode 100644
index 0000000000..e70ec0c86c
--- /dev/null
+++ b/obsolete/macros/latex209/contrib/resume/resume.sty
@@ -0,0 +1,100 @@
+% resume.sty 08 Mar 89
+% style option for formatting resumes.
+
+% This style option is designed to work with the article document
+% style of LaTeX version 2.09. Use
+% \documentstyle[resume]{article}
+
+% Copyright (c) 1987 by Stephen Gildea
+% Permission to copy all or part of this work is granted, provided
+% that the copies are not made or distributed for resale, and that
+% the copyright notice and this notice are retained.
+%
+% THIS WORK IS PROVIDED ON AN "AS IS" BASIS. THE AUTHOR PROVIDES NO
+% WARRANTY WHATSOEVER, EITHER EXPRESS OR IMPLIED, REGARDING THE WORK,
+% INCLUDING WARRANTIES WITH RESPECT TO ITS MERCHANTABILITY OR FITNESS
+% FOR ANY PARTICULAR PURPOSE.
+
+% If you make any improvements, I'd like to hear about them.
+
+% Stephen Gildea
+% MIT Earth Resources Lab
+% Cambridge, Mass. 02139
+% mit-erl!gildea
+% gildea@erl.mit.edu
+
+% 23 May 87 version 1
+% 08 Jun 88 center single \address lines
+% 02 Sep 88 enhancement to \employer from Jerry Leichter
+% LEICHTER-JERRY@cs.yale.edu or <LEICHTER@Venus.YCC.Yale.Edu>
+% 08 Mar 89 allow \\ in \sectiontitle to make multi-line titles
+
+\topmargin 0pt
+\headheight 0pt
+\headsep 0pt
+\textheight 9in
+\pagestyle{empty}
+\parindent 0pt
+\parskip \baselineskip
+\topmargin 0in
+\oddsidemargin 0in
+\evensidemargin 0in
+\textwidth 6.5in
+
+\setcounter{secnumdepth}{0}
+
+% use this to print your name at the top of the page
+\def\name#1{{\large\centering#1\\[2\baselineskip]}}
+
+% one address
+\def\address#1{{\centering #1\par}}
+
+% two addresses (say, home and work). They get printed side by side
+\def\addresses#1#2{\hbox to \hsize{\@tablebox{#1}\hfil\@tablebox{#2}}}
+
+\def\@tablebox#1{\begin{tabular}[t]{@{}l@{}}#1\end{tabular}}
+
+\newbox\@title
+
+% Most of the resume goes inside a llist environment. Within it, use
+% the \sectiontitle{title} command to begin new sections. The title
+% of the section is put in the left margin. The section text begins
+% on the next line if the sectiontitle is too long.
+\newenvironment{llist}{\begin{list}{}{\setlength
+ \labelwidth{1in}\setlength\leftmargin{\labelwidth}\addtolength
+ \leftmargin{\labelsep}\itemsep 5pt plus 2pt minus 2pt
+ \parsep 10pt plus 2pt minus 2pt
+ %% Set the depth of the title to 0 in case more than one line.
+ %% If the title takes more lines than the body, you lose.
+ \def\sectiontitle##1{\setbox\@title=\hbox{{\bf\@tablebox{##1}}}\dp\@title=0pt
+ \item[\copy\@title]\ifdim\wd\@title>\labelwidth
+ \leavevmode \\* \else \fi}
+ \def\makelabel##1{##1\hfill}}}{\end{list}}
+
+% like itemize but bullets are at the left margin
+\newenvironment{items}{\begin{list}{$\bullet$}
+ {\setlength\labelwidth{.5em}\setlength\leftmargin{1em}
+ \def\makelabel##1{##1\hfill}}}{\end{list}}
+
+% Use the \employer and \location commands to print the names and
+% cities of your employers. \employer always starts a new paragraph,
+% and should be followed by \location.
+%
+% \employer* is like \employer but is used for additional information
+% about the employer. It does NOT start a new paragraph, must
+% NOT be followed by \location, and always forces a new line after itself.
+\def\employer{\@ifstar{\@semployer}{\@employer}}
+\def\@employer#1{\par{\sc #1}}
+\def\@semployer#1{{\sc #1}\\}
+
+% The location is always flush right. It is moved to the next
+% line if there is not room left on this one.
+% See the TeXbook Chapter 14.
+\def\location#1{{\unskip\nobreak\hfill\penalty50\hskip2em
+ \hbox{}\nobreak\hfill \hbox{#1}\finalhyphendemerits=0 \\}}
+
+% This prints the date flush left.
+% The major shortcoming of this file:
+% There needs to be an option to print the date in the left margin,
+% because many people like to do it that way.
+\def\dates#1{#1\\[2pt]}