From ab69a828385a1559928c1a1b887fc03cf00702c0 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 8 Dec 2010 00:38:52 +0000 Subject: new latex package tucv 1.0 (7dec10) git-svn-id: svn://tug.org/texlive/trunk@20680 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/tucv/tucv.dtx | 426 +++++++++++++++++++++++++++ Master/texmf-dist/source/latex/tucv/tucv.ins | 43 +++ 2 files changed, 469 insertions(+) create mode 100644 Master/texmf-dist/source/latex/tucv/tucv.dtx create mode 100644 Master/texmf-dist/source/latex/tucv/tucv.ins (limited to 'Master/texmf-dist/source/latex/tucv') diff --git a/Master/texmf-dist/source/latex/tucv/tucv.dtx b/Master/texmf-dist/source/latex/tucv/tucv.dtx new file mode 100644 index 00000000000..605ea6713d3 --- /dev/null +++ b/Master/texmf-dist/source/latex/tucv/tucv.dtx @@ -0,0 +1,426 @@ +% \iffalse meta-comment +% +% (c) 2009-2010 George R. Louthan IV +% http://georgerloutha.nthefourth.com +% (c) 2007 Todd C. Miller +% http://www.gratisoft.us/todd/ +% (c) 2003-2007 David J. Grant +% http://www.davidgrant.ca +% (c) 2002 Matthew Boedicker +% http://matthewm.boedicker.org/ +% +% This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 +% Unported License. To view a copy of this license, visit +% http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to +% Creative Commons +% 171 Second Street, Suite 300 +% San Francisco, California, 94105, USA. +% +% \fi +% +%\iffalse +%<*driver> +\ProvidesFile{tucv.dtx} +% +%\NeedsTeXFormat{LaTeX2e} +%\ProvidesPackage{tucv} +%<*package> +[2010/11/11 v1.0 Univ. of Tulsa iSec CV Style] +% +% +%<*driver> +\documentclass{ltxdoc} +\usepackage{tucv} +\usepackage[american]{babel} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{tucv.dtx} + \PrintChanges + \PrintIndex +\end{document} +% +%\fi +% +% \CheckSum{0} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \changes{v1.0}{2010/11/13}{Initial version} +% +% \GetFileInfo{tucv.dtx} +% +% \DoNotIndex{\^, \begin, \colorbox, \DeclareOption, \definecolor, \end} +% \DoNotIndex{\evensidemargin, \extracolsep, \fancyfoot, \fancyhead, \fill} +% \DoNotIndex{\headheight, \headrulewidth, \headsep, \hspace, \IfNoValueTF} +% \DoNotIndex{\large, \NewDocumentCommand, \newline, \oddsidemargin} +% \DoNotIndex{\pagestyle, \parskip, \ProcessOptions, \raggedbottom} +% \DoNotIndex{\raggedright, \renewcommand, \RequirePackage, \setlength} +% \DoNotIndex{\tabcolsep, \tabularnewline, \textbf, \textheight, \textit} +% \DoNotIndex{\textwidth, \topmargin, \voffset, \vphantom} +% \DoNotIndex{\^{E}} +% \title{The \textsf{tucv} package\thanks{This document +% corresponds to \textsf{tucv}~\fileversion, dated \filedate.}} +% \author{George Louthan \\ \texttt{georgerlouth@nthefourth.com}} +% +% \maketitle +% +% \section{Introduction} +% +% This style provides commands for typesetting a CV or resume. Its current form +% is based upon the shaded resume style originally by Matthew Boedicker and +% updated by David Grant, Todd Miller, and George Louthan. It has been modified +% to provide the tools to produce the style of resume used by the University of +% Tulsa's Institute for Information Security and Cyber Corps program, which is +% the work, among others, of Christopher Swenson and Alexander Barclay. This +% work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported +% License. +% +% This style is designed to produce a somewhat long and quite detailed document. +% It may be suitable to typeset a shorter resume, as well, but that is not +% necessarily the goal. +% +% Although this style expects a page with quite narrow margins (narrower even +% than you are likely to see with the |fullpage| package), it does not by default adjust +% the margins or do any other page setup activities. However, when passed the +% |pagesetup| option (as in |\usepackage[pagesetup]{tucv}|), it sets up +% known-compatible margins. +% +% \section{Usage} +% +% Note: The \textsf{tucv} package is designed to be used in a document of +% \textsf{article} class. It is suggested that you import it with the +% \DescribeMacro{pagesetup} +% |pagesetup| option in order to avoid having to set up your own margins. +% +% A \textsf{tucv} resume will likely have three levels of content: resume +% headings (e.g. ``Employment,'' ``Education,'' etc.), resume entries (e.g. +% schools, employers, etc. which are meant to be part of itemized +% lists under headings), and resume subentries (e.g. degrees from schools, jobs +% at particular employers, etc., which are indented by default 10pt from the +% level of entries). +% +% There are two types of commands provided by this package: raw and high level. +% Raw commands are mainly intended to be internal to the package and are +% unlikely to be particularly useful by themselves in a document. These have +% names like |\resentry| and |\ressubentry|. High level commands are the ones +% that are likely to be most useful in typesetting a resume and include +% |\resschool| and |\resjob|. +% +% \subsection{Raw commands} +% \DescribeMacro{\resentry} +% Raw (internal) two-column resume entries are provided by |\resentry|. It is +% unlikely that this will be of +% much use directly very often. Instead, it is used internally by other commands +% provided by this package. It may also be indented by an optional width. +% Usage: |\resentry| \oarg{indent} \marg{lefttext} \marg{righttext} +% +% \DescribeMacro{\ressubentry} +% Indented two-column resume subentries are provided by +% |\ressubentry|; this is just a |\resentry| +% with a 10pt indentation specified. Usage: +% |\ressubentry| \marg{lefttext} \marg{righttext}. Same as +% |\resentry{10pt}{|\meta{lefttext}|}{|\meta{righttext}|}|. +% +% \DescribeMacro{\resentrysinglecol} +% Single-column resume entries are +% provided by |\resentrysinglecol| with optional indentation. The +% text will fill the same area occupied by both columns of the two-column +% entries. Usage: |\resentrysinglecol| \oarg{indent} \marg{text} +% +%\DescribeMacro{\ressubentrysinglecol} +% Indented one-column resume entries are provided by +% |\ressubentrysinglecol|. Usage: +% |\ressubentrysinglecol| \marg{text}. Same as |\resentrysinglecol{10pt}{| +% \meta{text}|}|. +% +% \subsection{High level commands} +% \DescribeMacro{\resheading} +% Place top-level section headings with the |\resheading| command. This will +% place the heading inside a shaded box. Usage: |\resheading| \marg{heading}. +% +% \DescribeMacro{\resschool} +% |\resschool| provides an entry for a school, with a name, location, and +% optional description. Usage: |\resschool| \oarg{description} \marg{name} +% \marg{location}. This describes only the school itself; a subentry called +% |\resdegree| is provided to place immediately following |\resschool| entries +% in order to specify the degrees issued by that school (and their dates). +% +% \DescribeMacro{\resdegree} +% |\resdegree| provides an entry for a degree or other issuance from a school, +% with a +% degree, major, date, and optional description. Intended to be a subentry +% beneath a school. Usage: |\resdegree| \oarg{description} \marg{degree} +% +% \DescribeMacro{\resemployer} +% |\resemployer| provides an entry for an employer. This entry is very similar +% to the school +% entry; it is different mainly for semantic reasons and to allow easier +% customization. Usage: |\resemployer| \oarg{description} \marg{name} +% +% \DescribeMacro{\resjob} +% |\resjob| provides an entry for a job. This works similarly to the +% school/degree +% set of entries and is intended to be a subentry of an employer field. Provides +% title, start date, end date, and description fields. Usage: |\resjob| +% \oarg{description} \marg{title} \marg{startdate} \marg{enddate}. +% +% \DescribeMacro{\resconference} +% |\resconference| provides an entry for denoting conference participation, +% with name and role +% fields. An optional description argument is accepted by not currently typeset. +% Usage: |\resconference| \oarg{description} \marg{name} \marg{role} +% +%\DescribeMacro{\ressubconference} +% |\ressubconference| provides an entry for denoting ``subconference'' +% participation, with name and +% role fields. An optional description argument is accepted by not currently +% typeset. Usage: |\ressubconference| \oarg{description} \marg{name} \marg{role} +% This is intended to denote workshops, tutorials, special topics symposia, +% sessions, etc. +% +%\DescribeMacro{\resdesc} +% |\resdesc| provides an item/description pair, somewhat similar in appearance +% to |\item|s +% in \LaTeX's |\description| environment, though |\resdesc| is not a drop-in +% replacement for |\item| because it does not use |\item| in its implementation. +% Usage: |\resdesc| \marg{item} \marg{description}. +% +%\DescribeMacro{\resbib} +% |\resbib| provides a bibliography entry. Currently identical to |\resdesc| in +% behavior, but separate because of the semantic difference and the possibility +% of altering its appearance in the future. Usage: |\resbib| \marg{title} +% +% \StopEventually{} +% \section{Implementation} +% Require dependencies, adjust margins, set up header/footer. +% \begin{macrocode} +\RequirePackage{array} +\RequirePackage{color} +\RequirePackage{calc} +\RequirePackage{fancyhdr} +\RequirePackage{xparse} +\DeclareOption{pagesetup}{ + \renewcommand{\headrulewidth}{0pt} + \setlength{\voffset}{0.1in} + \setlength{\headheight}{0in} + \setlength{\headsep}{0in} + \setlength{\textheight}{11in} + \setlength{\textheight}{9.5in} + \setlength{\topmargin}{-0.25in} + \setlength{\textwidth}{7in} + \setlength{\oddsidemargin}{-0.25in} + \setlength{\evensidemargin}{-0.25in} + \setlength{\tabcolsep}{0in} + \raggedbottom + \raggedright + \pagestyle{fancy} + \fancyhead{} + \fancyfoot{} +} +\ProcessOptions +% \end{macrocode} +%\begin{macro}{tucvheading} +% Set the default color of the |\resheading| shaded backgrounds. Overwrite in +% your documents in order to adjust the color. +% \begin{macrocode} +\definecolor{tucvheading}{gray}{0.85} +% \end{macrocode} +%\end{macro} +% \begin{macro}{\resheading} +% Resume heading. Heading inside a shaded box. Usage: +% |\resheading| \marg{heading} +% \begin{macrocode} +\NewDocumentCommand\resheading{m}{{\large \colorbox{tucvheading}{\begin{minipage} + {\textwidth-6.0pt}{\textbf{#1 \vphantom{p\^{E}}}}\end{minipage}}}} +% \end{macrocode} +% \end{macro} +% +%\begin{macro}{\resentry} +% Raw (internal) two-column resume entry. It is unlikely that this will be of +% much use directly very often. Instead, it is used internally by other commands +% provided by this package. It may also be indented by an optional width. +% Usage: |\resentry| \oarg{indent} \marg{lefttext} \marg{righttext} +% \begin{macrocode} +\NewDocumentCommand\resentry{O{0pt}mm}{ + \begin{tabular*}{0.9\textwidth}[t]{@{\hspace{#1}} + p{5.0in-#1}@{\extracolsep{\fill}}p{0.75in}} + \raggedright #2 & #3 + \tabularnewline + \end{tabular*} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\ressubentry} +% Raw (internal) indented two-column resume subentry; this is just a |\resentry| +% with a 10pt indentation specified. Usage: +% |\ressubentry| \marg{lefttext} \marg{righttext}. This is equivalent to +% |\resentry{10pt}{|\meta{lefttext}|}{|\meta{righttext}|}|. +% \begin{macrocode} +\NewDocumentCommand\ressubentry{mm}{ + \resentry[10pt]{ + \setlength{\parskip}{1ex plus 0.5ex minus 0.2ex} + #1}{#2} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resentrysinglecol} +% Raw (internal) single-column resume entry with optional indentation. The +% text will fill the same area occupied by both columns of the two-column +% entries. Usage: |\resentrysinglecol| \oarg{indent} \marg{text} +% \begin{macrocode} +\NewDocumentCommand\resentrysinglecol{O{0pt}m}{ + \begin{tabular*}{0.9\textwidth}[t]{@{\hspace{#1}}p{0.9\textwidth-#1}} + #2 + \tabularnewline + \end{tabular*} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\ressubentrysinglecol} +% Raw (internal) indented one-column resume entry. This is just +% |\resentrysinglecol| with a fixed 10pt indentation. Usage: +% |\ressubentrysinglecol| \marg{text}. Equivalent to |\resentrysinglecol{10pt}{| +% \meta{text}|}|. +% \begin{macrocode} +\NewDocumentCommand\ressubentrysinglecol{m}{ + \resentrysinglecol[10pt]{ + \setlength{\parskip}{1ex plus 0.5ex minus 0.2ex} + #1} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resschool} +% Provides an entry for a school, with a name, location, and optional +% description. Usage: |\resschool| \oarg{description} \marg{name} +% \marg{location}. +% \begin{macrocode} +\NewDocumentCommand\resschool{omm}{ + \resentry{\textbf{#2} + \IfNoValueTF{#1} + {} + {\newline \textit{#1}} + }{#3} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resdegree} +% Provides an entry for a degree or other issuance from a school, with a +% degree, major, date, and optional description. Intended to be a subentry +% beneath a school. Usage: |\resdegree| \oarg{description} \marg{degree} +% \marg{major} \marg{date}. +% \begin{macrocode} +\NewDocumentCommand\resdegree{ommm}{ + \ressubentry{#2 in #3 + \IfNoValueTF{#1} + {} + {\newline \textit{#1}} + }{#4} + %\ressubentry{#2 in #3}{#4} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resemployer} +% Provides an entry for an employer. This entry is very similar to the school +% entry; it is different mainly for semantic reasons and to allow easier +% customization. Usage: |\resemployer| \oarg{description} \marg{name} +% \marg{location}. +% \begin{macrocode} +\NewDocumentCommand\resemployer{omm}{ + \resentry{\textbf{#2} + \IfNoValueTF{#1} + {} + {\newline #1} + }{#3} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resjob} +% Provides an entry for a job. This works similarly to the school/degree +% set of entries and is intended to be a subentry of an employer field. Provides +% title, start date, end date, and description fields. Usage: |\resjob| +% \oarg{description} \marg{title} \marg{startdate} \marg{enddate}. +% \begin{macrocode} +\NewDocumentCommand\resjob{ommm}{ + \resentry[10pt]{ + \setlength{\parskip}{1ex plus 0.5ex minus 0.2ex} \textbf{#2} + \IfNoValueTF{#1} + {} + {\newline #1} + }{#3 -- \newline #4} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resconference} +% Provides an entry for denoting conference participation, with name and role +% fields. An optional description argument is accepted by not currently typeset. +% Usage: |\resconference| \oarg{description} \marg{name} \marg{role} +% \begin{macrocode} +\NewDocumentCommand\resconference{omm}{ + \resentrysinglecol{\raggedright \textbf{#2} #3} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\ressubconference} +% Provides an entry for denoting ``subconference'' participation, with name and +% role fields. An optional description argument is accepted by not currently +% typeset. Usage: |\ressubconference| \oarg{description} \marg{name} \marg{role} +% This is intended to denote workshops, tutorials, special topics symposia, +% sessions, etc. +% \begin{macrocode} +\NewDocumentCommand\ressubconference{omm}{ + \resentrysinglecol[10pt]{\textbf{#2} #3} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resdesc} +% Provides an item/description pair, somewhat similar in appearance to |\item|s +% in \LaTeX's |\description| environment, though |\resdesc| is not a drop-in +% replacement for |\item| because it does not use |\item| in its implementation. +% Usage: |\resdesc| \marg{item} \marg{description}. +% \begin{macrocode} +\NewDocumentCommand\resdesc{mm}{ + \resentrysinglecol{\raggedright \textbf{#1} #2} +} +% \end{macrocode} +%\end{macro} +% +%\begin{macro}{\resbib} +% Provides a bibliography entry. Currently identical to |\resdesc| in +% behavior, but separate because of the semantic difference and the possibility +% of altering its appearance in the future. Usage: |\resbib| \marg{title} +% \marg{citation\_remainder}. +% \begin{macrocode} +\NewDocumentCommand\resbib{mm}{ + \resentrysinglecol{\raggedright \textbf{#1} #2} +} +% \end{macrocode} +%\end{macro} +% +% \Finale +\endinput \ No newline at end of file diff --git a/Master/texmf-dist/source/latex/tucv/tucv.ins b/Master/texmf-dist/source/latex/tucv/tucv.ins new file mode 100644 index 00000000000..cd51b5c6622 --- /dev/null +++ b/Master/texmf-dist/source/latex/tucv/tucv.ins @@ -0,0 +1,43 @@ +%\keepsilent + +\input docstrip.tex +\usedir{tex/latex/tucv} + +\preamble +This is a generated file. + +(c) 2009-2010 George R. Louthan IV + http://georgerloutha.nthefourth.com +(c) 2007 Todd C. Miller + http://www.courtesan.com/todd +(c) 2003-2007 David J. Grant + http://www.davidgrant.ca +(c) 2002 Matthew Boedicker + http://matthewm.boedicker.org/ + +This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 +Unported License. To view a copy of this license, visit +http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to +Creative Commons +171 Second Street, Suite 300 +San Francisco, California, 94105, USA. +\endpreamble + +\generate{\file{tucv.sty}{\from{tucv.dtx}{package}}} + +\obeyspaces +\Msg{****************************************************} +\Msg{* *} +\Msg{* To finish the installation you have to move the *} +\Msg{* following file into a directory searched by TeX: *} +\Msg{* *} +\Msg{* tucv.sty *} +\Msg{* *} +\Msg{* To produce the documentation run the file *} +\Msg{* tucv.dtx through LaTeX. *} +\Msg{* *} +\Msg{* Happy TeXing! *} +\Msg{* *} +\Msg{****************************************************} + +\endbatchfile \ No newline at end of file -- cgit v1.2.3