diff options
author | Karl Berry <karl@freefriends.org> | 2007-04-24 23:56:51 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-04-24 23:56:51 +0000 |
commit | 6d57ece139d5b666d50415ba2465a992b805b3f4 (patch) | |
tree | fdc5f604bdc886f3d135a007e15774179055c573 /Master/texmf-dist/source/latex | |
parent | a3b51f6f68d0fe50bab2eaf0a7734b46f31003b4 (diff) |
new package simplecv (24apr07)
git-svn-id: svn://tug.org/texlive/trunk@4184 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
-rw-r--r-- | Master/texmf-dist/source/latex/simplecv/simplecv.dtx | 454 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/simplecv/simplecv.ins | 55 |
2 files changed, 509 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/simplecv/simplecv.dtx b/Master/texmf-dist/source/latex/simplecv/simplecv.dtx new file mode 100644 index 00000000000..28ba39ce309 --- /dev/null +++ b/Master/texmf-dist/source/latex/simplecv/simplecv.dtx @@ -0,0 +1,454 @@ +% \iffalse meta-comment +% +% Copyright (C) 2007 by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr> +% ------------------------------------------------------- +% +% This file may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.2 +% of this license or (at your option) any later version. +% The latest version of this license is in: +% +% http://www.latex-project.org/lppl.txt +% +% and version 1.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% \fi +% +% \iffalse +%<*driver> +\ProvidesFile{simplecv.dtx} +%</driver> +%<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01] +%<class>\ProvidesClass{simplecv} +%<*class> + [2007/04/22 v1.6 simple curriculum vitae] +%</class> +% +%<*driver> +\documentclass{ltxdoc} +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{simplecv.dtx} +\end{document} +%</driver> +% \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 \~} +% +% \makeatletter +% \def\SpecialOptionIndex#1{\@bsphack +% \index{#1\actualchar{\protect\ttfamily#1} +% (option)\encapchar usage}% +% \index{options:\levelchar{\protect\ttfamily#1}\encapchar +% usage}\@esphack} +% \def\DescribeOption{\leavevmode\@bsphack\begingroup\MakePrivateLetters +% \Describe@Option} +% \def\Describe@Option#1{\endgroup +% \marginpar{\raggedleft\PrintDescribeEnv{#1}}% +% \SpecialOptionIndex{#1}\@esphack\ignorespaces} +% \providecommand{\LyX}{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} +% \makeatother +% +% \GetFileInfo{simplecv.dtx} +% +% \DoNotIndex{\newcommand,\newenvironment} +% +% \changes{1.0}{1998/03/23}{First public release} +% \changes{1.1}{1998/11/06}{Better documentation, in order to release it for +% \LyX} +% \changes{1.2}{1998/12/01}{Changed the justification of items labels +% (with help from Amir Karger)} +% \changes{1.2}{1998/12/01}{Changed the semantics of \cs{topicfont} and +% \cs{itemfont}} +% \changes{1.3}{1999/02/09}{Added class options sf and plain} +% \changes{1.4}{2001/05/04}{Added notopicbreak class option} +% \changes{1.5}{2001/06/18}{Added hebrew support (from Dekel Tsur)} +% \changes{1.5}{2001/06/18}{Added contbibnum class option} +% \changes{1.5}{2001/06/18}{Added titleabove class option} +% \changes{1.5}{2001/06/18}{Some variables renaming and cleanups} +% \changes{1.6}{2007/04/22}{New option topictitle and associated +% \cs{topcilabelfont}} +% \changes{1.6}{2007/04/22}{Renamed class to simplecv} +% \changes{1.6}{2007/04/22}{Convert to use docstrip} +% +% \title{The \textsf{simplecv} class\thanks{This document +% corresponds to \textsf{simplecv}~\fileversion, dated \filedate.}} +% \author{Jean-Marc Lasgouttes\\ \texttt{Jean-Marc.Lasgouttes@inria.fr}} +% +% \maketitle +% +% \section{Introduction} +% +% The |simplecv| document class is intended to provide a simple +% yet elegant way to write your curriculum vitae (resume). This is a +% repackaging of the |cv| class that has been available with \LyX{} for a +% long time. The change of name has been made necessary by the +% existence of another |cv| class on CTAN. +% +% Before I delve into the details, I would like to thank Amir Karger, +% Reuben Thomas and Dekel Tsur for their help and tips. +% +% \section{Basic Usage} + +% \subsection{Class options} + +% The document class accepts some options (along with the usual +% |article| class ones). The first set allows to select a style (a set +% of fonts): +% +% \begin{description} +% \item[|sf|] \DescribeOption{sf} (default) produce title and +% headers in sans serif fonts; +% \item[|plain|] \DescribeOption{plain}produce all output with roman fonts. +% \end{description} +% The rest of the options may be useful according to one's tastes. +% +% \begin{description} +% \item[|notopicbreak|] \DescribeOption{notopicbreak}do not add a +% line break after long topic labels; +% \item[|contbibnum|] \DescribeOption{contbibnum}let the numbering +% of bibliography items be ontinuous when there are several +% thebibliography environments; +% \item[|titleabove|] \DescribeOption{titleabove}output the title +% above the left and right headers, not below; +% \item[|topictitle|] \DescribeOption{topictitle}let the first +% paragraph after each \cs{item} have font \cs{topictitlefont}, and +% therefore act as a kind of title. +% \end{description} +% +% \subsection{The header of the CV} +% The macros below can be used to typeset the top of the CV. +% +% \DescribeMacro\leftheader +% \cs{leftheader}\oarg{pos}\marg{text} +% defines what should appear in the upper left of the first page. +% \meta{text} may contain |\\| to break lines. \meta{pos} can be |l|, +% |r| or |c| and specifies the horizontal alignment (default is |l|). +% +% \DescribeMacro\rightheader +% \cs{rightheader}\oarg{pos}\marg{text} is like \cs{leftheader}, but for +% the upper right of the first page. +% +% \DescribeMacro\title +% \cs{title}\marg{text} defines a title, that will appear centered below the +% headers (or above, if the |titleabove| option is +% used). +% \DescribeMacro\maketitle +% \cs{maketitle} actually typesets the header. +% +% \subsection{Topics} +% The CV is divided in topics (and in some cases subtopics). In order +% to introduce these, the \cs{section} and \cs{subsection} macros are +% reused. +% +% \DescribeMacro\section +% \DescribeMacro\subsection +% \cs{section}\marg{text} gives a title for a new topic of the CV and +% \cs{subsection}\marg{text} does the same for a sub-topic. There are no +% other sectionning levels. +% +% \DescribeEnv{topic} +% The |topic| environment begins an itemize-like environment where the +% argument of \cs{item[]} is typeset in font \cs{topiclabelfont}. A +% line break is automatically inserted if the label is too long to +% fit in the margin (this can be controlled by option |notopicbreak|). +% +% \subsection{Miscellaneous} +% \DescribeEnv{thebibliography} +% The |simplecv| document class also has some support for bibliography. +% You can use the |thebibliography| environment as usual, in +% particular wih BibTeX . The output is similar to the |topic| +% environment. If you separate your bibliography into several +% sections, you may want to use the |contbibnum| document class +% option. +% +% Note that this class also has support for right-to-left languages, +% such as hebrew (courtesy Dekel Tsur). +% +% \section{Customization} +% +% You can modify directly the fonts used in the document by using the +% following macros. They take one parameter which is the font changing +% command. +% +% \begin{description} +% \item \cs{headerfont} \DescribeMacro\headerfont the font used in +% both headers. Defaults to sans serif. +% \item \cs{titlefont} \DescribeMacro\titlefont the font used for the title. +% Defaults to LARGE sans-serif semi bold condensed. +% \item \cs{sectionfont} \DescribeMacro\sectionfont the font used by +% \cs{section} when beginning a new topic. Defaults to sans-serif semi +% bold condensed. +% \item \cs{subsectionfont} \DescribeMacro\subsectionfont the font +% used by \cs{subsection} when beginning a new topic. +% Defaults to sans-serif semi bold condensed. +% \item \cs{topiclabelfont} \DescribeMacro\topiclabelfont the font used for +% the items' labels. Defaults to sans-serif slanted. +% \item \cs{topictitlefont} \DescribeMacro\topictitlefont the font used for +% the items' titles (with option |topictitle|). Defaults to +% sans-serif slanted. +% \end{description} +% +% You can modify the following parameter using \cs{renewcommand} +% \begin{description} +% \item \cs{topicmargin} \DescribeMacro\topicmargin the left margin +% inside topics. Defaults to $20\%$ of the column width +% (|0.20\columnwidth|). +% \end{description} +% +% \StopEventually{\PrintChanges\PrintIndex} +% +% \section{The Implementation} +% +% The fonts used in the layout +% \begin{macro}{\sectionfont} +% \begin{macro}{\subsectionfont} +% \begin{macro}{\topiclabelfont} +% \changes{1.6}{2007/04/22}{renamed from \cs{itemfont}; the old name +% is kept as an alias for compatibility} +% \begin{macro}{\topictitlefont} +% \begin{macro}{\headerfont} +% \begin{macro}{\titlefont} +% \changes{1.2}{1998/12/01}{added, together with \cs{headerfont}} +% \begin{macrocode} +%<*class> +\newcommand{\sectionfont}[1]{\def\cv@sec@fnt{#1}} +\newcommand{\subsectionfont}[1]{\def\cv@ssec@fnt{#1}} +\newcommand{\topiclabelfont}[1]{\def\cv@tlab@fnt{#1}} +\newcommand{\topictitlefont}[1]{\def\cv@ttit@fnt{#1}} +\newcommand{\headerfont}[1]{\def\cv@hd@fnt{#1}} +\newcommand{\titlefont}[1]{\def\cv@tit@fnt{#1}} +% \end{macrocode} +% for compatibility +% \begin{macrocode} +\let\itemfont=\topiclabelfont +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% Some document class options. +% \begin{macrocode} +\DeclareOption{sf}{ + \sectionfont{\sffamily\fontseries{sbc}\selectfont} + \subsectionfont{\sffamily\fontseries{sbc}\selectfont} + \topiclabelfont{\sffamily\slshape} + \topictitlefont{\sffamily\slshape} + \headerfont{\sffamily} + \titlefont{\sffamily\fontseries{sbc}\selectfont\LARGE} +} +\DeclareOption{plain}{ + \sectionfont{\bfseries} + \subsectionfont{\bfseries} + \topiclabelfont{\itshape} + \topictitlefont{\itshape} + \headerfont{} + \titlefont{\bfseries\LARGE} +} +\newif\if@cv@topic@title \@cv@topic@titlefalse +\DeclareOption{topictitle}{ + \@cv@topic@titletrue +} +\newif\if@cv@topic@break \@cv@topic@breaktrue +\DeclareOption{notopicbreak}{ + \@cv@topic@breakfalse +} +\newif\if@cv@cont@bib@num \@cv@cont@bib@numfalse +\DeclareOption{contbibnum}{ + \@cv@cont@bib@numtrue + \newcounter{cv@save@bib@num} +} +\newif\if@cv@title@above \@cv@title@abovefalse +\DeclareOption{titleabove}{ + \@cv@title@abovetrue +} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} +\ExecuteOptions{sf,letterpaper,10pt,oneside,onecolumn,final} +\ProcessOptions +\LoadClass{article} +% \end{macrocode} +% Support for RTL (Hebrew). This will be defined and set by babel for +% RtL languages, but we define it here for the benefit of others. +% \begin{macrocode} +\newif\if@rl +% \end{macrocode} +% \begin{macro}{\leftheader} +% \begin{macro}{\rightheader} +% The left and right headers. These are just saved in macros for use +% by \cs{maketitle}. +% \changes{1.2}{1998/12/01}{remove optional +% \meta{width} argument (with help from Amir Karger)} +% \changes{1.6}{2007/04/22}{Added optional argument for horizontal alignment} +% \begin{macrocode} +\newcommand{\leftheader}[2][l]{\def\cv@lh@lr{#1}\def\cv@lh{#2}} +\newcommand{\rightheader}[2][l]{\def\cv@rh@lr{#1}\def\cv@rh{#2}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \begin{macro}{\title} +% The title (like ``Curriculum Vitae'' or the name of the author).It +% is just saved in a macro for use by \cs{maketitle}. +% \changes{1.2}{1998/12/01}{new command} +% \begin{macrocode} +\renewcommand{\title}[1]{\def\cv@tit{#1}} +% \end{macrocode} +% \end{macro} +% Default to empty. +% \begin{macrocode} +\leftheader{}\rightheader{}\title{} +% \end{macrocode} +% \begin{macro}{\maketitle} +% And now a command to actually show the headers +% \begin{macrocode} +\newcommand{\cv@header}[2]{% + \if@rl% + \begin{tabular}[t]{@{\cv@hd@fnt\beginR}#1@{\endR}}% + \else% + \begin{tabular}[t]{@{\cv@hd@fnt}#1@{}}% + \fi% + #2% + \end{tabular}} +\newcommand{\cv@do@title}{\par\bigskip + \begin{center} \cv@tit@fnt\cv@tit\end{center}} +\renewcommand{\maketitle}{% + \if@cv@title@above\cv@do@title\fi + \par\noindent% + \begin{tabular*}{\textwidth}{@{}l@{\extracolsep{\fill}}l@{}} + \cv@header{\cv@lh@lr}{\cv@lh}&\cv@header{\cv@rh@lr}{\cv@rh} + \end{tabular*} + \par + \if@cv@title@above\else\cv@do@title\fi + \bigskip\par} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\section} +% Redefine \cs{section} to use \cs{cv@sec@fnt} +% \begin{macrocode} +\renewcommand{\section}{ + \@startsection{section}{1}{\z@} + {-3.5ex \@plus -1ex \@minus -.2ex} + {2.3ex \@plus .2ex}{\cv@sec@fnt}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subsection} +% Now the subsection +% \changes{1.3}{1999/02/09}{added (with +% associated font command \cs{subsectionfont})} +% \begin{macrocode} +\renewcommand{\subsection}{ + \@startsection{subsection}{1}{3em} + {-3.5ex \@plus -1ex \@minus -.2ex} + {2.3ex \@plus .2ex}{\cv@ssec@fnt}} +% \end{macrocode} +% \end{macro} +% the other ones do not exist. +% \changes{1.1}{1998/11/06}{disable all sectionning commands other that +% \cs{section}} +% \begin{macrocode} +\let\subsubsection=\relax +\let\paragraph=\relax \let\subparagraph=\relax +% \end{macrocode} +% we do not want any numbering +% \changes{1.1}{1998/11/06}{disabled numbering of sections} +% \begin{macrocode} +\setcounter{secnumdepth}{0} +% \end{macrocode} +% \begin{macro}{\topicmargin} +% \changes{1.5}{2001/06/18}{now a macro that defaults to $20\%$ of text width} +% \changes{1.6}{2007/04/22}{Change default value to +% $0.2$\cs{columnwidth}, to improve layout in two-columns mode} +% The left margin for topics +% \begin{macrocode} +\newcommand{\topicmargin}{0.20\columnwidth} +\newlength{\t@picmargin} +% \end{macrocode} +% \end{macro} +% \begin{environment}{topic} +% Define the topic environment. +% +% First the macros that typeset the label. +% \begin{macrocode} +\newcommand{\@topic@makelabel}[1]{\cv@tlab@fnt #1\hfill} +\let\@topic@old@item=\@item +\newlength{\topic@label@length} +\def\@topic@item[#1]{% + \@topic@old@item[#1]% + \if@cv@topic@break% + \settowidth{\topic@label@length}{#1}% + \ifdim\topic@label@length>\labelwidth\mbox{}\\*\fi% + \fi% + \if@cv@topic@title% + \mbox{}\cv@ttit@fnt% + \everypar\expandafter{\the\everypar \normalfont}% + \fi% +} +\newcommand{\@topic@setup}{% + \setlength{\t@picmargin}{\topicmargin} + \if@rl% + \setlength{\leftmargin}{0cm}% + \setlength{\rightmargin}{\t@picmargin}% + \else% + \setlength{\leftmargin}{\t@picmargin}% + \setlength{\rightmargin}{0cm}% + \fi% + \setlength{\labelwidth}{0.8\t@picmargin}% + \let\makelabel=\@topic@makelabel% +} +\newenvironment{topic} + {\list{} + {\@topic@setup% + \let\@item=\@topic@item}} + {\endlist} +% \end{macrocode} +% \end{environment} +% \begin{environment}{thebibliography} +% \changes{1.1}{1998/11/06}{added \cs{refname}} +% \changes{1.3}{1999/02/09}{does not add a section by itself anymore; +% remove \cs{refname}} +% Redefine the thebibliography environment to look like the topic +% environment. The argument of thebibliography is ignored. +% In older versions, the environment produced its own \cs{section} +% command, but this was removed in version 1.3 (following an idea of +% Reuben Thomas). +% \begin{macrocode} +\renewenvironment{thebibliography}[1] + {\list{\@biblabel{\theenumiv}}{% + \@topic@setup% + \@openbib@code% + \usecounter{enumiv}% + \let\p@enumiv\@empty% + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \if@cv@cont@bib@num% + \setcounter{enumiv}{\value{cv@save@bib@num}}% + \fi% + \sloppy \clubpenalty 4000 \widowpenalty 4000 \sfcode`\.=\@m}% + {\endlist% + \if@cv@cont@bib@num% + \setcounter{cv@save@bib@num}{\value{enumiv}}% + \fi} +%</class> +% \end{macrocode} +% \end{environment} +% \Finale + +\endinput diff --git a/Master/texmf-dist/source/latex/simplecv/simplecv.ins b/Master/texmf-dist/source/latex/simplecv/simplecv.ins new file mode 100644 index 00000000000..a53205f25ce --- /dev/null +++ b/Master/texmf-dist/source/latex/simplecv/simplecv.ins @@ -0,0 +1,55 @@ +%% +%% Copyright (C) 2007 by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr> +%% +%% This file may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License, either version 1.2 of this license +%% or (at your option) any later version. The latest version of this +%% license is in: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% and version 1.2 or later is part of all distributions of LaTeX version +%% 1999/12/01 or later. +%% + +\input docstrip.tex +\keepsilent + +\usedir{tex/latex/simplecv} + +\preamble + +This is a generated file. + +Copyright (C) 2007 by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr> + +This file may be distributed and/or modified under the conditions of +the LaTeX Project Public License, either version 1.2 of this license +or (at your option) any later version. The latest version of this +license is in: + + http://www.latex-project.org/lppl.txt + +and version 1.2 or later is part of all distributions of LaTeX version +1999/12/01 or later. + +\endpreamble + +\generate{\file{simplecv.cls}{\from{simplecv.dtx}{class}}} + +\obeyspaces +\Msg{*************************************************************} +\Msg{* *} +\Msg{* To finish the installation you have to move the following *} +\Msg{* file into a directory searched by TeX: *} +\Msg{* *} +\Msg{* simplecv.cls *} +\Msg{* *} +\Msg{* To produce the documentation run the file simplecv.dtx *} +\Msg{* through LaTeX. *} +\Msg{* *} +\Msg{* Happy TeXing! *} +\Msg{* *} +\Msg{*************************************************************} + +\endbatchfile |