1 |
mmeineke |
337 |
% \iffalse |
2 |
|
|
% |
3 |
|
|
% currvita.dtx |
4 |
|
|
% Docstrip archive, run through LaTeX. |
5 |
|
|
% |
6 |
|
|
% Copyright (C) 1999 Axel Reichert |
7 |
|
|
% See the files README and COPYING. |
8 |
|
|
% |
9 |
|
|
% \fi |
10 |
|
|
% |
11 |
|
|
% \DeclareRobustCommand*{\env}[1]{\texttt{#1}} |
12 |
|
|
% \DeclareRobustCommand*{\file}[1]{\texttt{#1}} |
13 |
|
|
% \DeclareRobustCommand*{\flag}[1]{\texttt{#1}} |
14 |
|
|
% \DeclareRobustCommand*{\mail}[1]{\texttt{#1}} |
15 |
|
|
% \DeclareRobustCommand*{\option}[1]{\texttt{#1}} |
16 |
|
|
% \DeclareRobustCommand*{\package}[1]{\texttt{#1}} |
17 |
|
|
% \DeclareRobustCommand*{\person}[1]{\textsc{#1}} |
18 |
|
|
% \DeclareRobustCommand*{\source}[1]{\texttt{#1}} |
19 |
|
|
% \DeclareRobustCommand*{\winkey}{\texttt{(-;}} |
20 |
|
|
% |
21 |
|
|
% \changes{v0.9b}{1999-08-06}{First release} |
22 |
|
|
% \changes{v0.9i}{1999-09-13}{Final clean-up and new release} |
23 |
|
|
% |
24 |
|
|
% \CheckSum{235} |
25 |
|
|
% |
26 |
|
|
%% \CharacterTable |
27 |
|
|
%% {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 |
28 |
|
|
%% 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 |
29 |
|
|
%% Digits \0\1\2\3\4\5\6\7\8\9 |
30 |
|
|
%% Exclamation \! Double quote \" Hash (number) \# |
31 |
|
|
%% Dollar \$ Percent \% Ampersand \& |
32 |
|
|
%% Acute accent \' Left paren \( Right paren \) |
33 |
|
|
%% Asterisk \* Plus \+ Comma \, |
34 |
|
|
%% Minus \- Point \. Solidus \/ |
35 |
|
|
%% Colon \: Semicolon \; Less than \< |
36 |
|
|
%% Equals \= Greater than \> Question mark \? |
37 |
|
|
%% Commercial at \@ Left bracket \[ Backslash \\ |
38 |
|
|
%% Right bracket \] Circumflex \^ Underscore \_ |
39 |
|
|
%% Grave accent \` Left brace \{ Vertical bar \| |
40 |
|
|
%% Right brace \} Tilde \~} |
41 |
|
|
% |
42 |
|
|
% \title{\file{currvita.sty}} |
43 |
|
|
% \author{% |
44 |
|
|
% Axel Reichert \\ |
45 |
|
|
% \mail{axel.reichert@gmx.de}% |
46 |
|
|
% } |
47 |
|
|
% \date{1999-09-13} |
48 |
|
|
% \maketitle |
49 |
|
|
% \begin{abstract} |
50 |
|
|
% \noindent |
51 |
|
|
% \file{currvita.sty} is a package for typesetting a curriculum |
52 |
|
|
% vitae. See the files~\file{README} and~\file{COPYING} for |
53 |
|
|
% additional information. |
54 |
|
|
% \end{abstract} |
55 |
|
|
% |
56 |
|
|
% \tableofcontents |
57 |
|
|
% |
58 |
|
|
% |
59 |
|
|
% \section{Introduction} |
60 |
|
|
% |
61 |
|
|
% Quite regularly in the \LaTeX{}~newsgroups someone is asking for |
62 |
|
|
% a package or document class to typeset a curriculum |
63 |
|
|
% vitae. Normally, the following answers are given: |
64 |
|
|
% \begin{itemize} |
65 |
|
|
% \item A curriculum vitae is highly individual and so you should |
66 |
|
|
% not rely on solutions provided by others but rather think about |
67 |
|
|
% it on your own and create it in \emph{your} style following |
68 |
|
|
% \emph{your} taste. |
69 |
|
|
% \item Use \file{vita.cls}. |
70 |
|
|
% \item Use \file{resume.sty}. |
71 |
|
|
% \item Use \file{tabularx.sty}. |
72 |
|
|
% \end{itemize} |
73 |
|
|
% |
74 |
|
|
% In my opinion all answers are unsatisfactory. To create an |
75 |
|
|
% ``individual style'' with \LaTeX{} is not at all easy, especially |
76 |
|
|
% if you consider the bunch of questions in the \LaTeX{}~newsgroups |
77 |
|
|
% about list and tabular environments, which seem to be the obvious |
78 |
|
|
% choice for the use within a curriculum vitae. |
79 |
|
|
% |
80 |
|
|
% The layout produced by~\file{vita.cls} is a little bit crowded, |
81 |
|
|
% the customization has to be done by class option files |
82 |
|
|
% (definitely not something for a beginner) and the documentation |
83 |
|
|
% is sparse. |
84 |
|
|
% |
85 |
|
|
% \file{resume.sty} is a totally out-dated (December~1989) |
86 |
|
|
% \LaTeX\,2.09 style file, in my opinion it gives a crowded layout |
87 |
|
|
% as well, the documentation can be found in the style file. Those |
88 |
|
|
% days did not have the neat system |
89 |
|
|
% of~\file{ins}/\file{dtx}~files. |
90 |
|
|
% |
91 |
|
|
% \file{tabularx.sty} is quite good, but to typeset a curriculum |
92 |
|
|
% vitae spanning more than one page\footnote{\person{David}, I know |
93 |
|
|
% that there is \file{ltxtable.sty}. Surely this great package was |
94 |
|
|
% once a hack of 5~minutes on a rainy Sunday like all your other |
95 |
|
|
% packages. \winkey}, interspersed with section-like headings and |
96 |
|
|
% various \cmd{\multicolumn}~commands is surely not an easy task. |
97 |
|
|
% |
98 |
|
|
% So I finally decided to write this package, replacing the macros |
99 |
|
|
% that I used earlier for my applications\footnote{Typeset |
100 |
|
|
% with~\file{longtable.sty} written (again) by~\person{David |
101 |
|
|
% Carlisle}.}. In fact, there was not much to replace, because |
102 |
|
|
% that time I made heavy use of~\cmd{\textbf}, \cmd{\large}, |
103 |
|
|
% \cmd{\\} and other \LaTeX nically incorrect commands. \winkey |
104 |
|
|
% |
105 |
|
|
% I made it a package because a curriculum vitae can make sense not |
106 |
|
|
% only on its own, but also within a Ph.\,D.~thesis or a |
107 |
|
|
% letter. This package (hopefully) has few requirements, |
108 |
|
|
% (hopefully) produces a clearly arranged layout (also known as |
109 |
|
|
% puristic or plain and even explained in its own section later), |
110 |
|
|
% is (hopefully) well documented by this (hopefully) nice |
111 |
|
|
% \file{dvi}~file, (hopefully) easy to use and can (hopefully) |
112 |
|
|
% easily be customized. There is even a (hopefully) interesting |
113 |
|
|
% example file, my curriculum vitae, so you can see what sick |
114 |
|
|
% brains program (and even document) such packages. If you can |
115 |
|
|
% understand German. \winkey |
116 |
|
|
% |
117 |
|
|
% |
118 |
|
|
% \section{What You Need} |
119 |
|
|
% |
120 |
|
|
% \begin{enumerate} |
121 |
|
|
% \item \LaTeXe{} (at least the 1996/12/01~release) |
122 |
|
|
% \item The \package{ifthen}~package, part of the standard |
123 |
|
|
% \LaTeX{}~tools |
124 |
|
|
% \item The \package{babel}~package, nowadays a ``required'' part |
125 |
|
|
% of~\LaTeX, if you want to typeset the example file. |
126 |
|
|
% \end{enumerate} |
127 |
|
|
% |
128 |
|
|
% |
129 |
|
|
% \section{Loading} |
130 |
|
|
% \label{sec:loading} |
131 |
|
|
% |
132 |
|
|
% Load the package with: |
133 |
|
|
%\begin{verbatim} |
134 |
|
|
% \usepackage{currvita} |
135 |
|
|
%\end{verbatim} |
136 |
|
|
% |
137 |
|
|
% \DescribeMacro{LabelsAligned} |
138 |
|
|
% There are two package options that can be used to change the |
139 |
|
|
% \DescribeMacro{TextAligned} |
140 |
|
|
% vertical spacing of the curriculum vitae:\footnote{Credits go to |
141 |
|
|
% \person{Timm Wetzel} for inspiring me to implement this. He will |
142 |
|
|
% notice later that I did not follow his suggestion, though. |
143 |
|
|
% \winkey} |
144 |
|
|
%\begin{verbatim} |
145 |
|
|
% \usepackage[LabelsAligned]{currvita} |
146 |
|
|
%\end{verbatim} |
147 |
|
|
% will give you a more compact spacing, whereas |
148 |
|
|
%\begin{verbatim} |
149 |
|
|
% \usepackage[TextAligned]{currvita} |
150 |
|
|
%\end{verbatim} |
151 |
|
|
% will give you the default, more generous spacing. See the |
152 |
|
|
% explanation of the \env{cvlist}~environment and |
153 |
|
|
% section~\ref{sec:customization} on |
154 |
|
|
% page~\pageref{sec:customization} (``Customization'') for |
155 |
|
|
% details. |
156 |
|
|
% |
157 |
|
|
% \DescribeMacro{openbib} |
158 |
|
|
% If you like the look of the ``open'' format for bibliographies, |
159 |
|
|
% you can use this layout also for a list of publications within |
160 |
|
|
% your curriculum vitae. Normally, this option will be passed |
161 |
|
|
% automatically by the document class to all packages, so there is |
162 |
|
|
% no need to specify it explicitely. However, if you are |
163 |
|
|
% typesetting your Ph.\,D.~thesis with a ``normal'' bibliography |
164 |
|
|
% and you want to include your curriculum vitae with an ``open'' |
165 |
|
|
% publication list, you can pass this option directly to the |
166 |
|
|
% package: |
167 |
|
|
%\begin{verbatim} |
168 |
|
|
% \usepackage[openbib]{currvita} |
169 |
|
|
%\end{verbatim} |
170 |
|
|
% |
171 |
|
|
% \DescribeMacro{ManyBibs} |
172 |
|
|
% If you want to subdivide your publication list (journal articles, |
173 |
|
|
% book chapters,~\ldots) but do not want to do without~\BibTeX{} |
174 |
|
|
% and enter every \cmd{\bibitem} manually, you can use this option: |
175 |
|
|
%\begin{verbatim} |
176 |
|
|
% \usepackage[ManyBibs]{currvita} |
177 |
|
|
%\end{verbatim} |
178 |
|
|
% This option suppresses the normal heading and also the item |
179 |
|
|
% labels. This makes sense only in combination |
180 |
|
|
% with~\file{bibunits.sty}, \file{multibib.sty} or other packages |
181 |
|
|
% supporting multiple bibliographies. See |
182 |
|
|
% section~\ref{sec:bibliographies} on |
183 |
|
|
% page~\pageref{sec:bibliographies} (``Bibliographies''). |
184 |
|
|
% |
185 |
|
|
% \DescribeMacro{NoDate} |
186 |
|
|
% If you have reason to suppress the date normally printed at the |
187 |
|
|
% bottom of the curriculum vita,\footnote{Credits go to |
188 |
|
|
% \person{Matt Swift}, who obviously \emph{has} reason and thus |
189 |
|
|
% suggested this feature. \winkey} use the following option: |
190 |
|
|
%\begin{verbatim} |
191 |
|
|
% \usepackage[NoDate]{currvita} |
192 |
|
|
%\end{verbatim} |
193 |
|
|
% |
194 |
|
|
% |
195 |
|
|
% \section{Usage} |
196 |
|
|
% |
197 |
|
|
% \DescribeMacro{cv} |
198 |
|
|
% A curriculum vitae is written inside a \env{cv}~environment, |
199 |
|
|
% which takes one mandatory argument, the heading: |
200 |
|
|
%\begin{verbatim} |
201 |
|
|
% \begin{cv}{<heading of the curriculum vitae>} |
202 |
|
|
% <text of the curriculum vitae> |
203 |
|
|
% \end{cv} |
204 |
|
|
%\end{verbatim} |
205 |
|
|
% If you do not want a heading (perhaps because you think the |
206 |
|
|
% addressee might have read ``Curriculum Vitae'' too often), you |
207 |
|
|
% can specify an empty argument by leaving the braces empty. |
208 |
|
|
% |
209 |
|
|
% \DescribeMacro{cvlist} |
210 |
|
|
% \label{cvlist} |
211 |
|
|
% The text of the curriculum vitae is normally divided into several |
212 |
|
|
% sections, which are typeset as lists, taking the list heading as |
213 |
|
|
% a mandatory argument: |
214 |
|
|
%\begin{verbatim} |
215 |
|
|
% \begin{cvlist}{<heading of the list>} |
216 |
|
|
% <list items> |
217 |
|
|
% \end{cvlist} |
218 |
|
|
%\end{verbatim} |
219 |
|
|
% As usual, the list items can take a label as an optional |
220 |
|
|
% argument: |
221 |
|
|
%\begin{verbatim} |
222 |
|
|
% \item <item text> |
223 |
|
|
% \item[<label>] <item text> |
224 |
|
|
%\end{verbatim} |
225 |
|
|
% |
226 |
|
|
% The typesetting of the list depends on the length of the heading |
227 |
|
|
% and the use of an optional argument in the first item: If the |
228 |
|
|
% heading is less wide than the width reserved for the label and no |
229 |
|
|
% optional argument was used, the item is typeset in the same line |
230 |
|
|
% as the heading. In all other cases the text of the item itself |
231 |
|
|
% starts a new line. |
232 |
|
|
% |
233 |
|
|
% \DescribeMacro{\cvplace} |
234 |
|
|
% Normally, a curriculum vitae ends with the date when and the |
235 |
|
|
% place where you wrote it. You can specify the location as |
236 |
|
|
% follows: |
237 |
|
|
%\begin{verbatim} |
238 |
|
|
% \cvplace{<location>} |
239 |
|
|
%\end{verbatim} |
240 |
|
|
% If you do not use this command, the printing of a location will |
241 |
|
|
% be omitted. |
242 |
|
|
% |
243 |
|
|
% \DescribeMacro{\date} |
244 |
|
|
% To specify the date, just use the command provided by the |
245 |
|
|
% standard \LaTeX{} document classes~\file{article.cls}, |
246 |
|
|
% \file{report.cls} and \file{book.cls}. I took special care that |
247 |
|
|
% it works also if you are using an other class. If you do not |
248 |
|
|
% call this macro at all, \cmd{\today} will be used by default, |
249 |
|
|
% unless you have specified the \option{NoDate}~option. |
250 |
|
|
%\begin{verbatim} |
251 |
|
|
% \date{<date>} |
252 |
|
|
%\end{verbatim} |
253 |
|
|
% |
254 |
|
|
% |
255 |
|
|
% \section{Customization} |
256 |
|
|
% \label{sec:customization} |
257 |
|
|
% |
258 |
|
|
% \DescribeMacro{\cvheadingfont} |
259 |
|
|
% Normally, the heading of the curriculum vitae is typeset in bold |
260 |
|
|
% face and \cmd{\Large}~size (see~\cite{Latex:1999} for |
261 |
|
|
% details). You can change this e.\,g.\ with: |
262 |
|
|
%\begin{verbatim} |
263 |
|
|
% \renewcommand*{\cvheadingfont}{\large\bfseries} |
264 |
|
|
%\end{verbatim} |
265 |
|
|
% |
266 |
|
|
% \DescribeMacro{\cvlistheadingfont} |
267 |
|
|
% Corresponding to the font of the heading, the heading of the |
268 |
|
|
% \env{cvlist}~environments is typeset in bold face and |
269 |
|
|
% \cmd{\large}~size. This can be changed e.\,g.\ with the |
270 |
|
|
% following code: |
271 |
|
|
%\begin{verbatim} |
272 |
|
|
% \renewcommand*{\cvlistheadingfont}{\scshape} |
273 |
|
|
%\end{verbatim} |
274 |
|
|
% |
275 |
|
|
% \DescribeMacro{\cvlabelfont} |
276 |
|
|
% The labels of the \env{cvlist}~environments are typeset in the |
277 |
|
|
% normal size of the current font. You can change this e.\,g.\ with: |
278 |
|
|
%\begin{verbatim} |
279 |
|
|
% \renewcommand*{\cvlabelfont}{\itshape} |
280 |
|
|
%\end{verbatim} |
281 |
|
|
% |
282 |
|
|
% \DescribeMacro{\cvlabelwidth} |
283 |
|
|
% The default width of the labels of the \env{cvlist}~environments |
284 |
|
|
% is equal to the width of~``88/8888--88/8888'', because normally |
285 |
|
|
% in the left hand column dates are typeset (and, at least in |
286 |
|
|
% Germany, should be formatted in this way). |
287 |
|
|
% |
288 |
|
|
% \enlargethispage{-3\baselineskip} |
289 |
|
|
% If you are using the optional argument of the \cmd{\item}~command |
290 |
|
|
% for further sectioning (as I did for my curriculum vitae in the |
291 |
|
|
% example file), you perhaps need to adjust this length by means of |
292 |
|
|
%\begin{verbatim} |
293 |
|
|
% \setlength{\cvlabelwidth}{50mm} |
294 |
|
|
%\end{verbatim} |
295 |
|
|
% or |
296 |
|
|
%\begin{verbatim} |
297 |
|
|
% \AtBeginDocument{% |
298 |
|
|
% \settowidth{\cvlabelwidth}{% |
299 |
|
|
% \cvlabelfont This is my longest label% |
300 |
|
|
% }% |
301 |
|
|
% } |
302 |
|
|
%\end{verbatim} |
303 |
|
|
% or like this, if you want the items to be typeset in-line with |
304 |
|
|
% the labels wherever possible: |
305 |
|
|
%\begin{verbatim} |
306 |
|
|
% \AtBeginDocument{% |
307 |
|
|
% \settowidth{\cvlabelwidth}{% |
308 |
|
|
% \cvlistheadingfont This is my longest list heading% |
309 |
|
|
% }% |
310 |
|
|
% } |
311 |
|
|
%\end{verbatim} |
312 |
|
|
% The first example works correctly only |
313 |
|
|
% \emph{after}~|\begin{document}|, whereas the other two show how |
314 |
|
|
% to adjust the label width within the preamble. Make sure that |
315 |
|
|
% you include the appropriate font if you want to measure the |
316 |
|
|
% width.\footnote{Credits go to \person{Matt Swift} for reporting |
317 |
|
|
% the need for a better documentation.} And do not try to get |
318 |
|
|
% things done in the preamble without~\cmd{\AtBeginDocument}, |
319 |
|
|
% because the font setup will probably not be correct, especially |
320 |
|
|
% if you use non-standard fonts. |
321 |
|
|
% |
322 |
|
|
% \DescribeMacro{\cvlabelskip} |
323 |
|
|
% This vertical space is inserted if you have a |
324 |
|
|
% \env{cvlist}~environment with a short heading and the first item |
325 |
|
|
% of this list has no label, so that the text of the item starts in |
326 |
|
|
% the same line as the heading. The spacing is controlled by the |
327 |
|
|
% options \option{TextAligned} and~\option{LabelsAligned}, |
328 |
|
|
% see~section~\ref{sec:loading} on page~\pageref{sec:loading} |
329 |
|
|
% (``Loading''). |
330 |
|
|
% |
331 |
|
|
% By default (\option{TextAligned}), the spacing between the item |
332 |
|
|
% text belonging to different lists is independent of the length of |
333 |
|
|
% the list heading and also independent of the use of an optional |
334 |
|
|
% argument of the \cmd{\item}~command. The gaps between the item |
335 |
|
|
% \emph{text} blocks are equal. See, for example, the |
336 |
|
|
% lists~``Fremdsprachen'' or~``Interessen'' of the example file. |
337 |
|
|
% |
338 |
|
|
% The option~\option{LabelsAligned} suppresses the additional space |
339 |
|
|
% necessary to achieve this consistent layout and thus gives a more |
340 |
|
|
% compact look with evenly distributed gaps between the headings |
341 |
|
|
% and the \emph{labels}. |
342 |
|
|
% |
343 |
|
|
% If you are not satisfied with either of these options, feel free |
344 |
|
|
% to set hands to it yourself, for example: |
345 |
|
|
%\begin{verbatim} |
346 |
|
|
% \setlength{\cvlabelskip}{% |
347 |
|
|
% 0.5\baselineskip plus 1pt minus 1pt% |
348 |
|
|
% }% |
349 |
|
|
%\end{verbatim} |
350 |
|
|
% |
351 |
|
|
% \DescribeMacro{\cvlabelsep} |
352 |
|
|
% The default width of the distance between the labels and the |
353 |
|
|
% items itself is equal to~\source{1em}. You can customize it |
354 |
|
|
% e.\,g.\ with |
355 |
|
|
%\begin{verbatim} |
356 |
|
|
% \setlength{\cvlabelsep}{1mm} |
357 |
|
|
%\end{verbatim} |
358 |
|
|
% or |
359 |
|
|
%\begin{verbatim} |
360 |
|
|
% \settowidth{\cvlabelsep}{~} |
361 |
|
|
%\end{verbatim} |
362 |
|
|
% I strongly recommend to use relative measures like~\source{1em} |
363 |
|
|
% (i.\,e.\ dependent on the font size), if you need to customize |
364 |
|
|
% these lengths at all. |
365 |
|
|
% |
366 |
|
|
% \DescribeMacro{\cvbibname} |
367 |
|
|
% The default heading for bibliographies inside of |
368 |
|
|
% \env{cv}~environments is~``Publications''. You could change this |
369 |
|
|
% for example with: |
370 |
|
|
%\begin{verbatim} |
371 |
|
|
% \renewcommand*{\cvbibname}{List of Papers} |
372 |
|
|
%\end{verbatim} |
373 |
|
|
% |
374 |
|
|
% Please keep in mind: All the customizations mentioned above are |
375 |
|
|
% \emph{optional} and in my opinion not necessary (not even the |
376 |
|
|
% change of~\cmd{\cvlabelwidth}, better use more suggestive label |
377 |
|
|
% texts). See section~\ref{sec:typography} on |
378 |
|
|
% page~\pageref{sec:typography} (``Typography'') for some remarks. |
379 |
|
|
% |
380 |
|
|
% |
381 |
|
|
% \section{Example} |
382 |
|
|
% |
383 |
|
|
% Run the example file~\file{cvtest.tex} through~\LaTeX. You will |
384 |
|
|
% get my curriculum vitae. Sorry, it is written in German. Sorry, |
385 |
|
|
% it is not an original version used for an application (though the |
386 |
|
|
% data is correct, but I omitted the marks\footnote{It would have |
387 |
|
|
% been too embarrassing for me. \winkey}), because for this I need |
388 |
|
|
% some fonts and packages not available to every user and I wanted |
389 |
|
|
% to use as much standard~\LaTeX{} as possible. |
390 |
|
|
% |
391 |
|
|
% |
392 |
|
|
% \section{Bugs} |
393 |
|
|
% |
394 |
|
|
% Some people\footnote{Credits go to \person{Martin Sander} and |
395 |
|
|
% \person{Sebastian B\"ocker}.} with an older version of the |
396 |
|
|
% \package{babel}~package~(v3.6h) have reported problems due to the |
397 |
|
|
% use of the \package{babel}~shortcuts for accented letters within |
398 |
|
|
% the \cmd{\cvplace}~command. If you encounter this, too, try a |
399 |
|
|
% more recent version (v3.6x definitely works) of the |
400 |
|
|
% \package{babel}~package\footnote{Perhaps included in a new |
401 |
|
|
% \LaTeX{}~release? \winkey} (or~\file{german.sty}). |
402 |
|
|
% |
403 |
|
|
% |
404 |
|
|
% \section{Bibliographies\label{sec:bibliographies}} |
405 |
|
|
% |
406 |
|
|
% This package offers several possibilities for bibliographies or |
407 |
|
|
% publication lists.\footnote{Credits go to \person{Ian Bruce} for |
408 |
|
|
% suggesting this feature and providing the first lines of code |
409 |
|
|
% that did start the thing.} You can use \BibTeX{} or enter each |
410 |
|
|
% \cmd{\bibitem} manually. You can have multiple bibliographies |
411 |
|
|
% within one \env{cvlist}~environment (with the aid of other |
412 |
|
|
% packages like~\package{bibunits} or~\package{multibib}), or only |
413 |
|
|
% one somewhere in the \env{cv}~environment. Of course the main |
414 |
|
|
% bibliographies of your document remain untouched. You can even |
415 |
|
|
% use a publication list in document classes without native support |
416 |
|
|
% for bibliographies, like~\file{letter.cls}. |
417 |
|
|
% |
418 |
|
|
% Enough advertising, here we go with some |
419 |
|
|
% examples. \figurename~\ref{fig:manual} shows the source of a |
420 |
|
|
% letter with a manually done bibliography and a normal |
421 |
|
|
% \env{cvlist}~enviroment in comparison. The resulting publication |
422 |
|
|
% list (not shown here) does not fit well into the layout of the |
423 |
|
|
% \env{cvlist}~environment, so probably you want to integrate your |
424 |
|
|
% publication list into a \env{cvlist}~environment and to supply |
425 |
|
|
% distinctive labels? |
426 |
|
|
% |
427 |
|
|
% \begin{figure} |
428 |
|
|
%\begin{verbatim} |
429 |
|
|
% \documentclass{letter} |
430 |
|
|
% \usepackage{currvita} |
431 |
|
|
% \begin{document} |
432 |
|
|
% \begin{cv}{Resume} |
433 |
|
|
% \begin{cvlist}{Gnats and Gnus} |
434 |
|
|
% \item[Bar] Bar |
435 |
|
|
% \item[Foo] Foo |
436 |
|
|
% \end{cvlist} |
437 |
|
|
% \begin{thebibliography}{1} |
438 |
|
|
% \bibitem{Bar} Bar. |
439 |
|
|
% \bibitem{Foo} Foo. |
440 |
|
|
% \end{thebibliography} |
441 |
|
|
% \end{cv} |
442 |
|
|
% \end{document} |
443 |
|
|
%\end{verbatim} |
444 |
|
|
% \caption{Curriculum vitae with bibliography, manually done} |
445 |
|
|
% \label{fig:manual} |
446 |
|
|
% \end{figure} |
447 |
|
|
% |
448 |
|
|
% \begin{figure} |
449 |
|
|
%\begin{verbatim} |
450 |
|
|
% \documentclass{article} |
451 |
|
|
% \usepackage{bibunits} |
452 |
|
|
% \usepackage[ManyBibs]{currvita} |
453 |
|
|
% \begin{document} |
454 |
|
|
% \begin{cv}{Resume} |
455 |
|
|
% \begin{cvlist}{Gnats and Gnus} |
456 |
|
|
% \item[Bar] Bar |
457 |
|
|
% \item[Foo] Foo |
458 |
|
|
% \end{cvlist} |
459 |
|
|
% \begin{cvlist}{Publications} |
460 |
|
|
% \begin{bibunit}[alpha] |
461 |
|
|
% \nocite{booklet-full,manual-full,techreport-full} |
462 |
|
|
% \item[Books etc.] \putbib[xampl] |
463 |
|
|
% \end{bibunit} |
464 |
|
|
% \begin{bibunit}[plain] |
465 |
|
|
% \nocite{article-full,inproceedings-full} |
466 |
|
|
% \item[Papers] \putbib[xampl] |
467 |
|
|
% \end{bibunit} |
468 |
|
|
% \end{cvlist} |
469 |
|
|
% \end{cv} |
470 |
|
|
% \end{document} |
471 |
|
|
%\end{verbatim} |
472 |
|
|
% \caption{Bibliographies inside a \env{cvlist}, done with |
473 |
|
|
% \file{bibunits.sty}} |
474 |
|
|
% \label{fig:bibunits} |
475 |
|
|
% \end{figure} |
476 |
|
|
% |
477 |
|
|
% \figurename~\ref{fig:bibunits} shows an example with multiple |
478 |
|
|
% bibliographies automatically generated by~\BibTeX{} and in |
479 |
|
|
% combination with~\file{bibunits.sty}. This code will result in a |
480 |
|
|
% \LaTeX{}~error (``Something's wrong--perhaps a missing |
481 |
|
|
% \cmd{\item}.'') on the first run, but if you scroll through the |
482 |
|
|
% errors and run \LaTeX{} again, you will get a nice output once |
483 |
|
|
% you have run \BibTeX{} according to the |
484 |
|
|
% \package{bibunits}~manual. Note that the choice of the |
485 |
|
|
% bibliography style does not influence the labels because they are |
486 |
|
|
% suppressed anyway by use of the \option{ManyBibs}~option. |
487 |
|
|
% |
488 |
|
|
% \begin{figure} |
489 |
|
|
%\begin{verbatim} |
490 |
|
|
% \documentclass{report} |
491 |
|
|
% \usepackage{multibib} |
492 |
|
|
% \usepackage[openbib,ManyBibs]{currvita} |
493 |
|
|
% \newcites{books}{bar} |
494 |
|
|
% \newcites{papers}{foo} |
495 |
|
|
% \begin{document} |
496 |
|
|
% \bibliographystyle{alpha} |
497 |
|
|
% \bibliographystylebooks{unsrt} |
498 |
|
|
% \bibliographystylepapers{plain} |
499 |
|
|
% \begin{cv}{Resume} |
500 |
|
|
% \begin{cvlist}{Gnats and Gnus} |
501 |
|
|
% \item[Bar] Bar |
502 |
|
|
% \item[Foo] Foo |
503 |
|
|
% \end{cvlist} |
504 |
|
|
% \begin{cvlist}{Publications} |
505 |
|
|
% \nocitebooks{booklet-full,manual-full,techreport-full} |
506 |
|
|
% \item[Books etc.] \bibliographybooks{xampl} |
507 |
|
|
% \nocitepapers{article-full,inproceedings-full} |
508 |
|
|
% \item[Papers] \bibliographypapers{xampl} |
509 |
|
|
% \end{cvlist} |
510 |
|
|
% \end{cv} |
511 |
|
|
% \nocite{mastersthesis-full,misc-full,unpublished-full} |
512 |
|
|
% \bibliography{xampl} |
513 |
|
|
% \end{document} |
514 |
|
|
%\end{verbatim} |
515 |
|
|
% \caption{``Open'' publication lists inside a \env{cvlist}, |
516 |
|
|
% additional ``normal'' bibliography outside, done with |
517 |
|
|
% \file{multibib.sty}} |
518 |
|
|
% \label{fig:multibib} |
519 |
|
|
% \end{figure} |
520 |
|
|
% |
521 |
|
|
% However, they work as normal outside the \env{cv}~environment, |
522 |
|
|
% see~\figurename~\ref{fig:multibib}, which shows in addition to |
523 |
|
|
% the usage of the \package{multibib}~package for ``open'' |
524 |
|
|
% publication lists a ``normal'' bibliography in yet another |
525 |
|
|
% bibliography style. Note also that the second argument of the |
526 |
|
|
% \cmd{\newcites}~command does not matter because the heading of |
527 |
|
|
% the partial bibliographies is suppressed, again by use of the |
528 |
|
|
% \option{ManyBibs}~option. |
529 |
|
|
% |
530 |
|
|
% |
531 |
|
|
% \section{Typography\label{sec:typography}} |
532 |
|
|
% |
533 |
|
|
% A curriculum vitae is an exam. The addressee gets a proof of |
534 |
|
|
% your skills concerning collecting, discarding, ordering and |
535 |
|
|
% presenting information. He also gets an impression of some of |
536 |
|
|
% your qualities that are not even mentioned in the text: Accuracy |
537 |
|
|
% (consistency and correctness of the micro-typographic things), |
538 |
|
|
% stinginess (extremely narrow margins) and your taste in questions |
539 |
|
|
% of aesthetics (font overload as against clear and evident font |
540 |
|
|
% usage). Even more things are revealed by subtle hints given by |
541 |
|
|
% the typography of the curriculum vitae and they can be noticed by |
542 |
|
|
% all professional readers of applications,\footnote{Very often |
543 |
|
|
% subconsciously.} not only by typographers. |
544 |
|
|
% |
545 |
|
|
% Therefore you definitely should do your best not only when |
546 |
|
|
% thinking about the content but also when thinking about the form |
547 |
|
|
% of the curriculum vitae. This package tries to help you in this |
548 |
|
|
% task. |
549 |
|
|
% |
550 |
|
|
% The overall appearance of a curriculum vitae is determined mainly |
551 |
|
|
% by three factors: |
552 |
|
|
% \begin{description} |
553 |
|
|
% \item[Layout] Organization and arrangement of the information |
554 |
|
|
% e.\,g.\ into lists or tabulars, usage of headings, size of the |
555 |
|
|
% typearea, width of columns, horizontal and vertical spacing |
556 |
|
|
% \item[Font] Family, sizes, usage of fonts for emphasized in-line |
557 |
|
|
% text or text serving as an eye-catcher, creation of an atmosphere |
558 |
|
|
% appropriate to the candidate and the job in question |
559 |
|
|
% \item[Micro-typography] Formatting of various numbers, avoidance |
560 |
|
|
% of bad linebreaks, distinction between small and normal spaces, |
561 |
|
|
% typesetting of company names, usage of quotation marks |
562 |
|
|
% \end{description} |
563 |
|
|
% |
564 |
|
|
% |
565 |
|
|
% \subsection{Layout} |
566 |
|
|
% |
567 |
|
|
% You generally should organize the necessary information (and |
568 |
|
|
% \emph{only} the necessary information) as clearly as possible, |
569 |
|
|
% because the addressee is annoyed anyway by the pile of |
570 |
|
|
% applications that he has to wade, and you definitely should not |
571 |
|
|
% annoy him any further by not structuring your curriculum vitae. |
572 |
|
|
% |
573 |
|
|
% Use generous margins, a not too small font and moderate vertical |
574 |
|
|
% spacing. I recommend something around~\source{DIV12} for users |
575 |
|
|
% of~\file{typearea.sty} (part of KOMA-Script), an 11~point font |
576 |
|
|
% for A4~paper (highly dependent on the font family) and a left |
577 |
|
|
% hand column as narrow as possible (it will make the linebreaking |
578 |
|
|
% in the right hand column easier). For the distance between the |
579 |
|
|
% columns \source{1em}~creates a sufficient separation. A normal |
580 |
|
|
% word space would not be enough, whereas something |
581 |
|
|
% around~\source{1cm} would weaken the coherence of the layout, |
582 |
|
|
% especially if you have some shorter labels. |
583 |
|
|
% |
584 |
|
|
% If you ever heard a curriculum vitae should not be longer than |
585 |
|
|
% one page, forget it, unless you are required (by whom, if I may |
586 |
|
|
% ask?) to stay below this limit. I made some tries with increased |
587 |
|
|
% typearea and reduced the font size and the vertical spacing. I |
588 |
|
|
% finally managed to arrange my test file on one page by usage of a |
589 |
|
|
% very narrow newspaper font, but it looked horrible. The normal |
590 |
|
|
% version, though about half a page longer, was much easier (and |
591 |
|
|
% quicker!) to read. |
592 |
|
|
% |
593 |
|
|
% |
594 |
|
|
% \subsection{Font} |
595 |
|
|
% |
596 |
|
|
% The most difficult thing is to choose a good font. For |
597 |
|
|
% ``normal'' jobs like engineering, economics or similar, the font |
598 |
|
|
% should look friendly and professional, just like you on the |
599 |
|
|
% photo. Of course a typographical layman does not identify the |
600 |
|
|
% font, but he too feels the atmosphere created by it. |
601 |
|
|
% |
602 |
|
|
% I made some tries with about 50~fonts, with serifs or without, |
603 |
|
|
% old-style, transitional and modern fonts and got surprisingly |
604 |
|
|
% good agreement among the test persons\footnote{Credits go to |
605 |
|
|
% \person{Melanie Frisch}, \person{R\"udiger Haardt}, |
606 |
|
|
% \person{Steffen Mei\ss ner}, \person{Joachim Gnauk} |
607 |
|
|
% and~\person{Rainer Messerschmidt} for doing this tedious |
608 |
|
|
% work.}. Moreover, my analysis and theirs yielded the same |
609 |
|
|
% result: Computer Modern, Charter, Utopia and Melior really do a |
610 |
|
|
% good job. Except Melior, these fonts are freely available. |
611 |
|
|
% Computer Modern looks elegant, dry, precise and reserved, Charter |
612 |
|
|
% friendly, open, solid and likable and Utopia clear and |
613 |
|
|
% technical. The last two are nowadays part of good |
614 |
|
|
% \LaTeX{}~distributions, so you are not sticked to Computer |
615 |
|
|
% Modern, just try them out: |
616 |
|
|
%\begin{verbatim} |
617 |
|
|
% \usepackage{charter} |
618 |
|
|
%\end{verbatim} |
619 |
|
|
% or |
620 |
|
|
%\begin{verbatim} |
621 |
|
|
% \usepackage{utopia} |
622 |
|
|
%\end{verbatim} |
623 |
|
|
% |
624 |
|
|
% Generally, you should use bold face for the headings, to make |
625 |
|
|
% them clearly distinct from the main text, italics are not enough. |
626 |
|
|
% An important aspect of the font choice is the contrast between |
627 |
|
|
% the normal and the bold face. It should be high enough, so that |
628 |
|
|
% the headings can be identified at a glance, but neither the |
629 |
|
|
% regular font nor the bold variant should look too~``loud''. This |
630 |
|
|
% is a problem e.\,g.\ with New Century Schoolbook, apart from that |
631 |
|
|
% as good as Computer Modern. |
632 |
|
|
% |
633 |
|
|
% Many fonts typically used in novels have too low a contrast, |
634 |
|
|
% e.\,g.\ Berling, Galliard, Palatino and Stempel |
635 |
|
|
% Garamond. Although the contrast is good in Bembo, it looks |
636 |
|
|
% too~``nice'', too familiar from books to create the correct |
637 |
|
|
% atmosphere for a curriculum vitae, which normally is attached to |
638 |
|
|
% a stupid letter. Plantin and Trump Medieval and perhaps New |
639 |
|
|
% Baskerville may be acceptable in some cases, but I think there |
640 |
|
|
% are better choices. Not everybody's taste because a little |
641 |
|
|
% unusual, but in my opinion quite good is Oranda, rather bold and |
642 |
|
|
% small, but friendly and soft. Oh, I almost forgot: The |
643 |
|
|
% obligatory Times is a good choice, too. Though it is completely |
644 |
|
|
% over-used and overrated (I am not at all a fan of Times), its |
645 |
|
|
% domain is the typesetting of (more or less) narrow columns and it |
646 |
|
|
% does a good job looking both familiar and neutral. |
647 |
|
|
% |
648 |
|
|
% My trials with sans-serif fonts were not very |
649 |
|
|
% successful. Computer Modern Sans Serif, Franklin Gothic or |
650 |
|
|
% Univers may be acceptable, Helvetica looks too boring (are |
651 |
|
|
% \emph{you} boring?), Frutiger has too low a contrast, Optima is |
652 |
|
|
% ``too nice'', Gill Sans and Futura look too bold (and the latter |
653 |
|
|
% perhaps too cold and technical, but that may be suitable for some |
654 |
|
|
% jobs). Generally the problem is to achieve consistency with the |
655 |
|
|
% accompanying letter, which normally is written with a serif font |
656 |
|
|
% (and should be, because it is a longer text with less structure, |
657 |
|
|
% the main text only divided into paragraphs. In these cases, |
658 |
|
|
% so-called ``linear reading'', a serif font is considered more |
659 |
|
|
% legible by many typographers). |
660 |
|
|
% |
661 |
|
|
% |
662 |
|
|
% \subsection{Micro-typography} |
663 |
|
|
% |
664 |
|
|
% Sometimes the pile of applications is pre-sorted by a |
665 |
|
|
% secretary. You should ensure that the micro-typography (also |
666 |
|
|
% known as ``pedantic stuff'') is correct, because secretaries |
667 |
|
|
% learn these things during their education. German users of this |
668 |
|
|
% package definitely should consult the relevant part of the |
669 |
|
|
% Duden~\cite{Duden:1996} or have a look into~\cite{Willberg:1997} |
670 |
|
|
% or the example file. Errors in the formatting of dates, spacing |
671 |
|
|
% or grouping of telephone numbers, usage of quotation marks or |
672 |
|
|
% ampersands and so on are too common. Trained secretaries will |
673 |
|
|
% notice these mistakes and, if they already did not like your |
674 |
|
|
% photo, will put your application onto stack~W |
675 |
|
|
% (wastebasket). \winkey |
676 |
|
|
% |
677 |
|
|
% Think about it, micro-typography is easy, and if you get used to |
678 |
|
|
% it, you will typeset things correctly ``by default'' and your |
679 |
|
|
% documents will require less proof-reading. It is awful if the |
680 |
|
|
% reader stumbles (and falls) over a bad linebreak. Use ties~(|~|) |
681 |
|
|
% or other things influencing hyphenation from~\file{babel.sty} |
682 |
|
|
% or~\file{german.sty} like~\cmd{\,}, |"~| or~|""| not after you |
683 |
|
|
% have discovered such a mistake, but during entering the text. |
684 |
|
|
% |
685 |
|
|
% O.\,K., and now I will turn preaching mode off and programming |
686 |
|
|
% mode on. \winkey |
687 |
|
|
% |
688 |
|
|
% |
689 |
|
|
% \section{Implementation} |
690 |
|
|
% |
691 |
|
|
% \iffalse |
692 |
|
|
%<*driver> |
693 |
|
|
\documentclass[12pt,a4paper]{ltxdoc} |
694 |
|
|
\begin{document} |
695 |
|
|
\DocInput{currvita.dtx} |
696 |
|
|
\end{document} |
697 |
|
|
%</driver> |
698 |
|
|
% \fi |
699 |
|
|
% \StopEventually{ |
700 |
|
|
% \addcontentsline{toc}{section}{References} |
701 |
|
|
% \begin{thebibliography}{1} |
702 |
|
|
% \bibitem{Duden:1996} |
703 |
|
|
% \textsc{Dudenredaktion}~(ed.): \emph{Duden, Rechtschreibung |
704 |
|
|
% der deutschen Sprache}, vol.~1 of~\emph{Der Duden in |
705 |
|
|
% 12~B{\"a}nden; das Standardwerk zur deutschen Sprache}, |
706 |
|
|
% chap.~Richtlinien f{\"u}r den Schriftsatz, |
707 |
|
|
% pp.\,65--73. \newblock Dudenverlag, Mannheim, 21st~edn., |
708 |
|
|
% 1996. |
709 |
|
|
% \bibitem{Goossens:1994} |
710 |
|
|
% \textsc{Goossens,~M.; Mittelbach,~F.; Samarin,~A.}: \emph{Der |
711 |
|
|
% \LaTeX-Begleiter}. \newblock Addison-Wesley, Bonn, 1st~edn., |
712 |
|
|
% 1994. |
713 |
|
|
% \bibitem{Kopka:1997} |
714 |
|
|
% \textsc{Kopka,~H.}: \emph{Erweiterungen}, vol.~3 |
715 |
|
|
% of~\emph{\LaTeX}. \newblock Addison-Wesley-Longman, Bonn, |
716 |
|
|
% 1997. |
717 |
|
|
% \bibitem{Latex:1999} |
718 |
|
|
% \LaTeX3 Project Team. \newblock \emph{\LaTeXe{} font |
719 |
|
|
% selection}, Jan.\,1999. |
720 |
|
|
% \bibitem{Willberg:1997} |
721 |
|
|
% \textsc{Willberg,~H.\,P.; Forssman,~F.}: |
722 |
|
|
% \emph{Lesetypographie}. \newblock Schmidt, Mainz, 1997. |
723 |
|
|
% \end{thebibliography} |
724 |
|
|
% } |
725 |
|
|
% \iffalse |
726 |
|
|
%<*package> |
727 |
|
|
% \fi |
728 |
|
|
% |
729 |
|
|
% |
730 |
|
|
% \subsection{Identification} |
731 |
|
|
% |
732 |
|
|
% \changes{v0.9g}{1999-09-06}{A new \LaTeX{} version is needed.} |
733 |
|
|
% As this package uses the \cmd{\ignorespacesafterend}~command, it |
734 |
|
|
% does not work with older \LaTeXe{}~versions. |
735 |
|
|
% \begin{macrocode} |
736 |
|
|
\NeedsTeXFormat{LaTeX2e}[1996/12/01]% |
737 |
|
|
% \end{macrocode} |
738 |
|
|
% The package identifies itself with its release date, a version |
739 |
|
|
% number, and a short description. |
740 |
|
|
% \begin{macrocode} |
741 |
|
|
\ProvidesPackage{currvita}[% |
742 |
|
|
1999/09/13 v0.9i Typesetting a Curriculum Vitae% |
743 |
|
|
]% |
744 |
|
|
% \end{macrocode} |
745 |
|
|
% |
746 |
|
|
% |
747 |
|
|
% \subsection{Loading Files} |
748 |
|
|
% |
749 |
|
|
% The \package{ifthen}~package is used to make some decisions |
750 |
|
|
% easier. |
751 |
|
|
% \begin{macrocode} |
752 |
|
|
\RequirePackage{ifthen}% |
753 |
|
|
% \end{macrocode} |
754 |
|
|
% |
755 |
|
|
% |
756 |
|
|
% \subsection{Initialization} |
757 |
|
|
% |
758 |
|
|
% \begin{macro}{\@cvplace} |
759 |
|
|
% The string for the place of the curriculum vitae is |
760 |
|
|
% initialized. It should be defined later by the user. |
761 |
|
|
% \cmd{\@cvplace} is not declared by means |
762 |
|
|
% of~\cmd{\DeclareRobustCommand*}, because this adds a |
763 |
|
|
% superfluous~\cmd{\protect} (causing problems with the |
764 |
|
|
% \package{ifthen}~package). |
765 |
|
|
% \begin{macrocode} |
766 |
|
|
\newcommand*{\@cvplace}{\@empty}% |
767 |
|
|
% \end{macrocode} |
768 |
|
|
% \end{macro} |
769 |
|
|
% \begin{macro}{\@cvlistheading} |
770 |
|
|
% The box containing the heading of a \env{cvlist}~environment is |
771 |
|
|
% allocated. |
772 |
|
|
% \begin{macrocode} |
773 |
|
|
\newsavebox{\@cvlistheading}% |
774 |
|
|
% \end{macrocode} |
775 |
|
|
% \end{macro} |
776 |
|
|
% \begin{macro}{\cvlabelsep} |
777 |
|
|
% \begin{macro}{\cvlabelskip} |
778 |
|
|
% \begin{macro}{\cvlabelwidth} |
779 |
|
|
% \changes{v0.9d}{1999-08-25}{\cmd{\cvlabelskip} was introduced.} |
780 |
|
|
% Some lengths are initialized. |
781 |
|
|
% \begin{macrocode} |
782 |
|
|
\newlength{\cvlabelsep}% |
783 |
|
|
\newlength{\cvlabelskip}% |
784 |
|
|
\newlength{\cvlabelwidth}% |
785 |
|
|
% \end{macrocode} |
786 |
|
|
% \end{macro} |
787 |
|
|
% \end{macro} |
788 |
|
|
% \end{macro} |
789 |
|
|
% \begin{macro}{cv@many@bibs} |
790 |
|
|
% \begin{macro}{cv@no@date} |
791 |
|
|
% \begin{macro}{cv@open@bib} |
792 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
793 |
|
|
% Flags~\flag{cv@many@bibs} and \flag{cv@open@bib} were |
794 |
|
|
% introduced.% |
795 |
|
|
% } |
796 |
|
|
% \changes{v0.9g}{1999-09-06}{% |
797 |
|
|
% Flag~\flag{cv@no@date} was introduced.% |
798 |
|
|
% } |
799 |
|
|
% \changes{v0.9g}{1999-09-06}{% |
800 |
|
|
% New name: \flag{cv@many@bibs} instead of \flag{many@bibs}% |
801 |
|
|
% } |
802 |
|
|
% We also need one new flag to handle the bibliography option |
803 |
|
|
% \option{ManyBibs}, another one to handle the |
804 |
|
|
% \option{NoDate}~option, and another one to handle the |
805 |
|
|
% \option{openbib}~option separately for the |
806 |
|
|
% \package{currvita}~package. |
807 |
|
|
% \begin{macrocode} |
808 |
|
|
\newboolean{cv@many@bibs}% |
809 |
|
|
\newboolean{cv@no@date}% |
810 |
|
|
\newboolean{cv@open@bib}% |
811 |
|
|
% \end{macrocode} |
812 |
|
|
% \end{macro} |
813 |
|
|
% \end{macro} |
814 |
|
|
% \end{macro} |
815 |
|
|
% |
816 |
|
|
% |
817 |
|
|
% \subsection{Option Declaration} |
818 |
|
|
% |
819 |
|
|
% \changes{v0.9d}{1999-08-25}{% |
820 |
|
|
% Options \option{LabelsAligned} and~\option{TextAligned} were |
821 |
|
|
% introduced.% |
822 |
|
|
% } |
823 |
|
|
% \begin{macro}{LabelsAligned} |
824 |
|
|
% The use of this option suppresses the additional vertical space |
825 |
|
|
% inserted before in-line headings of \env{cvlist}~environments. |
826 |
|
|
% It ensures that the gaps between the various headings and labels |
827 |
|
|
% are equal. |
828 |
|
|
% \begin{macrocode} |
829 |
|
|
\DeclareOption{LabelsAligned}{% |
830 |
|
|
\setlength{\cvlabelskip}{0ex}% |
831 |
|
|
}% |
832 |
|
|
% \end{macrocode} |
833 |
|
|
% \end{macro} |
834 |
|
|
% \begin{macro}{TextAligned} |
835 |
|
|
% Use of this option ensures that the items of the right hand |
836 |
|
|
% column are separated by equal vertical spacing. To achieve this, |
837 |
|
|
% an additional gap has to be inserted in case of a short heading |
838 |
|
|
% and no optional argument given to the \cmd{\item}~command. See |
839 |
|
|
% also the definition of the \env{cvlist}~environment on |
840 |
|
|
% page~\pageref{makelabel}. |
841 |
|
|
% \begin{macrocode} |
842 |
|
|
\DeclareOption{TextAligned}{% |
843 |
|
|
\setlength{\cvlabelskip}{% |
844 |
|
|
1.5\baselineskip plus 3pt minus 3pt% |
845 |
|
|
}% |
846 |
|
|
}% |
847 |
|
|
% \end{macrocode} |
848 |
|
|
% \end{macro} |
849 |
|
|
% \begin{macro}{openbib} |
850 |
|
|
% \changes{v0.9e}{1999-08-29}{% |
851 |
|
|
% Option \option{openbib} was introduced.% |
852 |
|
|
% } |
853 |
|
|
% \changes{v0.9e}{1999-08-29}{\cmd{\bibindent} was introduced.} |
854 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
855 |
|
|
% Option code moved to \env{thebibliography}~environment, checked |
856 |
|
|
% with flag.% |
857 |
|
|
% } |
858 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
859 |
|
|
% Initialization of~\cmd{\bibindent} moved into option code.% |
860 |
|
|
% } |
861 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
862 |
|
|
% Option \option{OneBib} is no longer necessary and has been |
863 |
|
|
% deleted.% |
864 |
|
|
% } |
865 |
|
|
% For document classes like letter, i.\,e.\ without native support |
866 |
|
|
% for bibliographies, it is necessary to provide the length of the |
867 |
|
|
% indentation used in the \option{openbib}~format. It will not be |
868 |
|
|
% changed if it is already defined. |
869 |
|
|
% \begin{macrocode} |
870 |
|
|
\DeclareOption{openbib}{% |
871 |
|
|
\@ifundefined{bibindent}{% |
872 |
|
|
\newlength{\bibindent}% |
873 |
|
|
}{}% |
874 |
|
|
\setlength{\bibindent}{1.5em}% |
875 |
|
|
\setboolean{cv@open@bib}{true}% |
876 |
|
|
}% |
877 |
|
|
% \end{macrocode} |
878 |
|
|
% \end{macro} |
879 |
|
|
% \begin{macro}{ManyBibs} |
880 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
881 |
|
|
% Option \option{ManyBibs} was introduced.% |
882 |
|
|
% } |
883 |
|
|
% Use this option in case you need more than one bibliography list, |
884 |
|
|
% e.\,g.\ for different kinds of publications. |
885 |
|
|
% \begin{macrocode} |
886 |
|
|
\DeclareOption{ManyBibs}{% |
887 |
|
|
\setboolean{cv@many@bibs}{true}% |
888 |
|
|
}% |
889 |
|
|
% \end{macrocode} |
890 |
|
|
% \end{macro} |
891 |
|
|
% \begin{macro}{NoDate} |
892 |
|
|
% \changes{v0.9g}{1999-09-06}{% |
893 |
|
|
% Option \option{NoDate} was introduced.% |
894 |
|
|
% } |
895 |
|
|
% Use this option in case you want to omit the date normally |
896 |
|
|
% printed at the bottom of the curriculum vitae. |
897 |
|
|
% \begin{macrocode} |
898 |
|
|
\DeclareOption{NoDate}{% |
899 |
|
|
\setboolean{cv@no@date}{true}% |
900 |
|
|
}% |
901 |
|
|
% \end{macrocode} |
902 |
|
|
% \end{macro} |
903 |
|
|
% |
904 |
|
|
% |
905 |
|
|
% \subsection{Option Processing} |
906 |
|
|
% |
907 |
|
|
% \changes{v0.9d}{1999-08-25}{% |
908 |
|
|
% \option{TextAligned} is the defined as the default option.% |
909 |
|
|
% } |
910 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
911 |
|
|
% \option{OneBib} added to list of default options.% |
912 |
|
|
% } |
913 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
914 |
|
|
% \option{OneBib} deleted from list of default options.% |
915 |
|
|
% } |
916 |
|
|
% If no options are specified, the text of the items is aligned by |
917 |
|
|
% default. Otherwise the options are processed in the order given |
918 |
|
|
% by the calling command, i.\,e.\ the last one ``wins''. |
919 |
|
|
% \begin{macrocode} |
920 |
|
|
\ExecuteOptions{TextAligned}% |
921 |
|
|
\ProcessOptions*% |
922 |
|
|
% \end{macrocode} |
923 |
|
|
% |
924 |
|
|
% |
925 |
|
|
% \subsection{Delaying Code} |
926 |
|
|
% |
927 |
|
|
% \changes{v0.9c}{1999-08-16}{% |
928 |
|
|
% Execution of \cmd{\settowidth} delayed until beginning of |
929 |
|
|
% document% |
930 |
|
|
% } |
931 |
|
|
% \changes{v0.9d}{1999-08-25}{% |
932 |
|
|
% \cmd{\cvlabelfont} is used for measuring the width of the |
933 |
|
|
% label.% |
934 |
|
|
% } |
935 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
936 |
|
|
% \cmd{\cvlabelsep} is now initialized at the beginning of the |
937 |
|
|
% document.% |
938 |
|
|
% } |
939 |
|
|
% The distance between labels and items is set to~\source{1em}. |
940 |
|
|
% The maximum allowed width of the labels of the |
941 |
|
|
% \env{cvlist}~environments forming the curriculum vitae is set to |
942 |
|
|
% the width of a typical entry. This is done at the beginning of |
943 |
|
|
% the document, because then the normal fonts have been setup |
944 |
|
|
% properly.\footnote{Credits go to \person{Gerd Boerrigter} for |
945 |
|
|
% reporting this bug.} |
946 |
|
|
% \begin{macrocode} |
947 |
|
|
\AtBeginDocument{% |
948 |
|
|
\setlength{\cvlabelsep}{1em}% |
949 |
|
|
\settowidth{\cvlabelwidth}{% |
950 |
|
|
\cvlabelfont 88/8888--88/8888% |
951 |
|
|
}% |
952 |
|
|
}% |
953 |
|
|
% \end{macrocode} |
954 |
|
|
% |
955 |
|
|
% |
956 |
|
|
% \subsection{Defining Commands} |
957 |
|
|
% |
958 |
|
|
% \begin{macro}{\cvheadingfont} |
959 |
|
|
% Normally, the title of the curriculum vitae is typeset in larger |
960 |
|
|
% bold face. |
961 |
|
|
% \begin{macrocode} |
962 |
|
|
\DeclareRobustCommand*{\cvheadingfont}{\bfseries\Large}% |
963 |
|
|
% \end{macrocode} |
964 |
|
|
% \end{macro} |
965 |
|
|
% \begin{macro}{\cvbibname} |
966 |
|
|
% \changes{v0.9g}{1999-09-06}{\cmd{\cvbibname} was introduced.} |
967 |
|
|
% This macro holds the name of the publication list. In my opinion |
968 |
|
|
% it does not make sense to inherit the definition |
969 |
|
|
% of~\cmd{\refname} or~\cmd{\bibname}, so a new command is |
970 |
|
|
% introduced. |
971 |
|
|
% \begin{macrocode} |
972 |
|
|
\DeclareRobustCommand*{\cvbibname}{Publications}% |
973 |
|
|
% \end{macrocode} |
974 |
|
|
% \end{macro} |
975 |
|
|
% \begin{macro}{\cvplace} |
976 |
|
|
% This command is used to change the place to be typeset at the |
977 |
|
|
% bottom of the curriculum vitae. It takes one mandatory argument, |
978 |
|
|
% guess what: the place. \winkey |
979 |
|
|
% \begin{macrocode} |
980 |
|
|
\DeclareRobustCommand*{\cvplace}[1]{% |
981 |
|
|
\gdef\@cvplace{#1}% |
982 |
|
|
}% |
983 |
|
|
% \end{macrocode} |
984 |
|
|
% The \cmd{\@cvplace}~command is changed globally, so that you can |
985 |
|
|
% use it also inside environments other than |
986 |
|
|
% \env{cv}~environments. |
987 |
|
|
% \end{macro} |
988 |
|
|
% \begin{macro}{\date} |
989 |
|
|
% This command is used to change the date that is printed below the |
990 |
|
|
% curriculum vitae. It needs the date as a mandatory |
991 |
|
|
% argument. Because the standard \LaTeX{}~classes |
992 |
|
|
% \file{article.cls}, \file{report.cls} and~\file{book.cls} already |
993 |
|
|
% define such a command, it will only be defined if it is not |
994 |
|
|
% provided by the class. |
995 |
|
|
% |
996 |
|
|
% In contrast, the \cmd{\@date} command is part of the |
997 |
|
|
% \LaTeX{}~kernel and thus available in every class. \cmd{\@date} |
998 |
|
|
% is changed globally for the same reason as the |
999 |
|
|
% \cmd{\@cvplace}~command. |
1000 |
|
|
% \begin{macrocode} |
1001 |
|
|
\providecommand*{\date}[1]{\gdef\@date{#1}}% |
1002 |
|
|
% \end{macrocode} |
1003 |
|
|
% \end{macro} |
1004 |
|
|
% \begin{macro}{cv} |
1005 |
|
|
% This environment takes the heading of the curriculum vitae as a |
1006 |
|
|
% mandatory argument which is typeset at the beginning of the |
1007 |
|
|
% curriculum vitae without indentation using the corresponding |
1008 |
|
|
% font, whose scope is limited by a separate group. If the |
1009 |
|
|
% argument is empty, no heading is used. |
1010 |
|
|
% \begin{macrocode} |
1011 |
|
|
\newenvironment{cv}[1]{% |
1012 |
|
|
\ifthenelse{\equal{#1}{\@empty}}{% |
1013 |
|
|
}{% |
1014 |
|
|
{% |
1015 |
|
|
\noindent\cvheadingfont#1\par\nopagebreak |
1016 |
|
|
}% |
1017 |
|
|
}% |
1018 |
|
|
% \end{macrocode} |
1019 |
|
|
% \begin{macro}{\@biblabel} |
1020 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
1021 |
|
|
% \cmd{\@biblabel} is set dependent on \option{ManyBibs} option.% |
1022 |
|
|
% } |
1023 |
|
|
% The labels used within the bibliography are redefined locally as |
1024 |
|
|
% empty. In this way it is possible to add explanatory text to the |
1025 |
|
|
% items like~``Articles'' or~``Book Chapters''. |
1026 |
|
|
% \begin{macrocode} |
1027 |
|
|
\ifthenelse{\boolean{cv@many@bibs}}{% |
1028 |
|
|
\DeclareRobustCommand*{\@biblabel}[1]{\@gobble{##1}}% |
1029 |
|
|
}{}% |
1030 |
|
|
% \end{macrocode} |
1031 |
|
|
% \end{macro} |
1032 |
|
|
% \begin{macro}{\newblock} |
1033 |
|
|
% \changes{v0.9e}{1999-08-29}{% |
1034 |
|
|
% The commands \cmd{\newblock} and \cmd{\@openbib@code} were |
1035 |
|
|
% introduced.% |
1036 |
|
|
% } |
1037 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
1038 |
|
|
% The command~\cmd{\@openbib@code} is no longer necessary and has |
1039 |
|
|
% been deleted.% |
1040 |
|
|
% } |
1041 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
1042 |
|
|
% The definition is now made local inside the |
1043 |
|
|
% \env{cv}~environment.% |
1044 |
|
|
% } |
1045 |
|
|
% To support bibliographies even in document classes like letter |
1046 |
|
|
% (which do not have ``native'' bibliography support), it is |
1047 |
|
|
% necessary to provide this command: |
1048 |
|
|
% \begin{macrocode} |
1049 |
|
|
\providecommand{\newblock}{% |
1050 |
|
|
\hspace{0.11em plus 0.33em minus 0.07em}% |
1051 |
|
|
}% |
1052 |
|
|
% \end{macrocode} |
1053 |
|
|
% \end{macro} |
1054 |
|
|
% \begin{macro}{thebibliography} |
1055 |
|
|
% The \env{thebibliography}~environment is (re)defined locally, so |
1056 |
|
|
% you can use a ``normal'' bibliography elsewhere in your |
1057 |
|
|
% document. |
1058 |
|
|
% \changes{v0.9e}{1999-08-29}{% |
1059 |
|
|
% \env{thebibliography}~environment is locally defined.% |
1060 |
|
|
% } |
1061 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
1062 |
|
|
% Heading is suppressed if \option{ManyBibs}~option is used.% |
1063 |
|
|
% } |
1064 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
1065 |
|
|
% \cmd{\newblock}~command is redefined locally for |
1066 |
|
|
% \option{openbib} support.% |
1067 |
|
|
% } |
1068 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
1069 |
|
|
% \cmd{\labelsep} is set dependent on \option{ManyBibs}~option.% |
1070 |
|
|
% } |
1071 |
|
|
% \changes{v0.9f}{1999-09-02}{% |
1072 |
|
|
% Code for \option{openbib}~option is executed depending on the |
1073 |
|
|
% \flag{cv@open@bib} flag.% |
1074 |
|
|
% } |
1075 |
|
|
% \changes{v0.9h}{1999-09-08}{% |
1076 |
|
|
% Length of~\cmd{\topsep} was reduced to give spacing consistent |
1077 |
|
|
% to the \env{cvlist}~environments.% |
1078 |
|
|
% } |
1079 |
|
|
% \begin{macrocode} |
1080 |
|
|
\long\def\thebibliography##1{% |
1081 |
|
|
% \end{macrocode} |
1082 |
|
|
% The heading is omitted if the \option{ManyBibs}~option is |
1083 |
|
|
% used. Otherwise it is typeset using the appropriate font, without |
1084 |
|
|
% indentation. A pagebreak after the heading is suppressed. |
1085 |
|
|
% \begin{macrocode} |
1086 |
|
|
\ifthenelse{\boolean{cv@many@bibs}}{% |
1087 |
|
|
}{% |
1088 |
|
|
{% |
1089 |
|
|
\noindent\cvlistheadingfont\cvbibname |
1090 |
|
|
\par\nopagebreak |
1091 |
|
|
}% |
1092 |
|
|
}% |
1093 |
|
|
% \end{macrocode} |
1094 |
|
|
% The following redefinition is taken from the standard document |
1095 |
|
|
% classes, as is most of the rest of the environment. |
1096 |
|
|
% \begin{macrocode} |
1097 |
|
|
\ifthenelse{\boolean{cv@open@bib}}{% |
1098 |
|
|
\renewcommand{\newblock}{\par}% |
1099 |
|
|
}{}% |
1100 |
|
|
\begin{list}{\@biblabel{\@arabic\c@enumiv}}{% |
1101 |
|
|
% \end{macrocode} |
1102 |
|
|
% The lengths of~\cmd{\parsep} and~\cmd{\itemsep} are swapped in |
1103 |
|
|
% comparison with the \env{cvlist}~environments. This gives |
1104 |
|
|
% correct spacing even with the \option{openbib}~option. |
1105 |
|
|
% \begin{macrocode} |
1106 |
|
|
\setlength{\parsep}{0ex}% |
1107 |
|
|
\setlength{\itemsep}{% |
1108 |
|
|
0.5\baselineskip plus 1pt minus 1pt% |
1109 |
|
|
}% |
1110 |
|
|
% \end{macrocode} |
1111 |
|
|
% The vertical spacing is adapted to correspond to the other |
1112 |
|
|
% \env{cvlist}~environments. |
1113 |
|
|
% \begin{macrocode} |
1114 |
|
|
\setlength{\topsep}{0ex}% |
1115 |
|
|
\setlength{\partopsep}{0ex}% |
1116 |
|
|
% \end{macrocode} |
1117 |
|
|
% With the \option{ManyBibs}~option no labels are used, so no space |
1118 |
|
|
% needs to be reserved. |
1119 |
|
|
% \begin{macrocode} |
1120 |
|
|
\ifthenelse{\boolean{cv@many@bibs}}{% |
1121 |
|
|
\setlength{\labelsep}{0em}% |
1122 |
|
|
}{}% |
1123 |
|
|
% \end{macrocode} |
1124 |
|
|
% And now lots of code adapted from the standard document classes, |
1125 |
|
|
% only written in a \LaTeX nically correct way. \winkey |
1126 |
|
|
% \begin{macrocode} |
1127 |
|
|
\settowidth{\labelwidth}{\@biblabel{##1}}% |
1128 |
|
|
\setlength{\leftmargin}{\labelwidth}% |
1129 |
|
|
\addtolength{\leftmargin}{\labelsep}% |
1130 |
|
|
\ifthenelse{\boolean{cv@open@bib}}{% |
1131 |
|
|
\addtolength{\leftmargin}{\bibindent}% |
1132 |
|
|
\setlength{\itemindent}{-\bibindent}% |
1133 |
|
|
\setlength{\listparindent}{\itemindent}% |
1134 |
|
|
}{}% |
1135 |
|
|
\usecounter{enumiv}% |
1136 |
|
|
\let\p@enumiv\@empty |
1137 |
|
|
\renewcommand*{\theenumiv}{\@arabic\c@enumiv}% |
1138 |
|
|
}% |
1139 |
|
|
\sloppy |
1140 |
|
|
\clubpenalty4000% |
1141 |
|
|
\@clubpenalty\clubpenalty |
1142 |
|
|
\widowpenalty4000% |
1143 |
|
|
\sfcode`\.=\@m |
1144 |
|
|
}% |
1145 |
|
|
\long\def\endthebibliography{% |
1146 |
|
|
\renewcommand*{\@noitemerr}{% |
1147 |
|
|
\@latex@warning{Empty `thebibliography' environment}% |
1148 |
|
|
}% |
1149 |
|
|
\end{list}% |
1150 |
|
|
}% |
1151 |
|
|
}{% |
1152 |
|
|
% \end{macrocode} |
1153 |
|
|
% \changes{v0.9c}{1999-08-16}{\cmd{\noindent} added.} |
1154 |
|
|
% \changes{v0.9g}{1999-09-06}{% |
1155 |
|
|
% Support for \option{NoDate}~option was added.% |
1156 |
|
|
% } |
1157 |
|
|
% \changes{v0.9g}{1999-09-06}{% |
1158 |
|
|
% Text following the \env{cv}~environment start in new line, |
1159 |
|
|
% without indentation.% |
1160 |
|
|
% } |
1161 |
|
|
% The place (if given) followed by the date is typeset at the |
1162 |
|
|
% bottom of the curriculum vitae. It should not be indented, even |
1163 |
|
|
% if there are blank lines prior to the end of the |
1164 |
|
|
% \env{cv}~environment.\footnote{Credits go to \person{Gerd |
1165 |
|
|
% Boerrigter} for discovering this~``feature''.} The amount of |
1166 |
|
|
% vertical space seems quite strange but looks right, much better |
1167 |
|
|
% than the expected~\source{1.5\bslash baselineskip}. Don't know |
1168 |
|
|
% why. \winkey |
1169 |
|
|
% \begin{macrocode} |
1170 |
|
|
\vspace{1.333\baselineskip plus 3pt minus 3pt}% |
1171 |
|
|
\ifthenelse{\equal{\@cvplace}{\@empty}}{% |
1172 |
|
|
}{% |
1173 |
|
|
\noindent |
1174 |
|
|
\@cvplace |
1175 |
|
|
\ifthenelse{\boolean{cv@no@date}}{}{% |
1176 |
|
|
,~% |
1177 |
|
|
}% |
1178 |
|
|
}% |
1179 |
|
|
\ifthenelse{\boolean{cv@no@date}}{}{% |
1180 |
|
|
\@date |
1181 |
|
|
}% |
1182 |
|
|
\par\noindent\ignorespacesafterend |
1183 |
|
|
}% |
1184 |
|
|
% \end{macrocode} |
1185 |
|
|
% \end{macro} |
1186 |
|
|
% \end{macro} |
1187 |
|
|
% \begin{macro}{\cvlistheadingfont} |
1188 |
|
|
% The headings of the \env{cvlist}~environments forming the |
1189 |
|
|
% curriculum vitae are typeset in large bold face. |
1190 |
|
|
% \begin{macrocode} |
1191 |
|
|
\DeclareRobustCommand*{\cvlistheadingfont}{% |
1192 |
|
|
\bfseries\large |
1193 |
|
|
}% |
1194 |
|
|
% \end{macrocode} |
1195 |
|
|
% \end{macro} |
1196 |
|
|
% \changes{v0.9d}{1999-08-25}{\cmd{\cvlabelfont} command added.} |
1197 |
|
|
% \begin{macro}{\cvlabelfont} |
1198 |
|
|
% The labels of the \env{cvlist}~environments are typeset in the |
1199 |
|
|
% normal size of the current font. |
1200 |
|
|
% \begin{macrocode} |
1201 |
|
|
\DeclareRobustCommand*{\cvlabelfont}{% |
1202 |
|
|
\normalsize |
1203 |
|
|
}% |
1204 |
|
|
% \end{macrocode} |
1205 |
|
|
% \end{macro} |
1206 |
|
|
% \begin{macro}{cvlist} |
1207 |
|
|
% This is the list environment used for the parts of the curriculum |
1208 |
|
|
% vitae. It takes one mandatory argument, the heading of the |
1209 |
|
|
% list. |
1210 |
|
|
% \begin{macrocode} |
1211 |
|
|
\newenvironment{cvlist}[1]{% |
1212 |
|
|
% \end{macrocode} |
1213 |
|
|
% The heading of the list is put into a box, using the |
1214 |
|
|
% corresponding font. |
1215 |
|
|
% \begin{macrocode} |
1216 |
|
|
\sbox{\@cvlistheading}{\cvlistheadingfont#1}% |
1217 |
|
|
% \end{macrocode} |
1218 |
|
|
% The \env{cvlist}~environment is basically a |
1219 |
|
|
% \env{list}~environment~\ldots |
1220 |
|
|
% \begin{macrocode} |
1221 |
|
|
\begin{list}{}{% |
1222 |
|
|
% \end{macrocode} |
1223 |
|
|
% \ldots~but with a ``smart'' \cmd{\makelabel}~command which is |
1224 |
|
|
% given the optional argument of the \cmd{\item}~command. |
1225 |
|
|
% \label{makelabel} |
1226 |
|
|
% \begin{macrocode} |
1227 |
|
|
\renewcommand*{\makelabel}[1]{% |
1228 |
|
|
% \end{macrocode} |
1229 |
|
|
% \changes{v0.9d}{1999-08-25}{% |
1230 |
|
|
% \cmd{\cvlabelfont} is used for measuring the width of the |
1231 |
|
|
% label.% |
1232 |
|
|
% } |
1233 |
|
|
% The width of the heading of the list is measured. If it is |
1234 |
|
|
% positive (i.\,e.\ the box containing the argument of the |
1235 |
|
|
% \env{cvlist}~environment is not empty), the width of the optional |
1236 |
|
|
% argument of the \cmd{\item}~command is measured, too (using the |
1237 |
|
|
% correct font). |
1238 |
|
|
% \begin{macrocode} |
1239 |
|
|
\settowidth{\@tempdima}{\usebox{\@cvlistheading}}% |
1240 |
|
|
\ifthenelse{\lengthtest{\@tempdima > 0pt}}{% |
1241 |
|
|
\settowidth{\@tempdimb}{\cvlabelfont##1}% |
1242 |
|
|
% \end{macrocode} |
1243 |
|
|
% If the heading of the list is less wide than the allowed label |
1244 |
|
|
% width and the optional argument of the \cmd{\item}~command is |
1245 |
|
|
% empty, the \cmd{\item} can be typeset in the same line as the |
1246 |
|
|
% heading. |
1247 |
|
|
% |
1248 |
|
|
% \changes{v0.9d}{1999-08-25}{% |
1249 |
|
|
% \cmd{\cvlabelskip} is used for the vertical spacing before |
1250 |
|
|
% in-line headings% |
1251 |
|
|
% } |
1252 |
|
|
% The box containing the heading is then emptied, the heading is |
1253 |
|
|
% typeset flush to the left. |
1254 |
|
|
% \begin{macrocode} |
1255 |
|
|
\ifthenelse{% |
1256 |
|
|
\lengthtest{\@tempdima < \cvlabelwidth} \and |
1257 |
|
|
\lengthtest{\@tempdimb = 0pt}}{% |
1258 |
|
|
\parbox[b]{\cvlabelwidth}{% |
1259 |
|
|
\vspace{\cvlabelskip}% |
1260 |
|
|
\makebox[\cvlabelwidth][l]{% |
1261 |
|
|
\box\@cvlistheading |
1262 |
|
|
}% |
1263 |
|
|
}% |
1264 |
|
|
}{% |
1265 |
|
|
% \end{macrocode} |
1266 |
|
|
% If the heading is too wide or the \cmd{\item}~command has an |
1267 |
|
|
% optional argument, the box containing the heading is emptied and |
1268 |
|
|
% the \cmd{\item}~command starts a new line. |
1269 |
|
|
% \begin{macrocode} |
1270 |
|
|
\parbox[b]{0pt}{% |
1271 |
|
|
\makebox[0pt][l]{\box\@cvlistheading}% |
1272 |
|
|
\\*[0.5\baselineskip plus 1pt minus 1pt]% |
1273 |
|
|
}% |
1274 |
|
|
}% |
1275 |
|
|
% \end{macrocode} |
1276 |
|
|
% If the box containing the argument of the |
1277 |
|
|
% \env{cvlist}~environment is empty (its width is zero), nothing is |
1278 |
|
|
% done. This case holds for all \cmd{\item}~commands of a |
1279 |
|
|
% \env{cvlist}~environment except for the first or if no heading |
1280 |
|
|
% was specified (this does normally not make sense). You see that |
1281 |
|
|
% it is crucial to empty the box by a |
1282 |
|
|
% plain~\TeX{}~command~\cite{Kopka:1997}, otherwise the heading |
1283 |
|
|
% would be typeset for every \cmd{\item}~command. |
1284 |
|
|
% \begin{macrocode} |
1285 |
|
|
}{}% |
1286 |
|
|
% \end{macrocode} |
1287 |
|
|
% \changes{v0.9d}{1999-08-25}{\cmd{\cvlabelfont} is used for the |
1288 |
|
|
% label.% |
1289 |
|
|
% } |
1290 |
|
|
% Now that the heading of the list is prepared, the optional |
1291 |
|
|
% argument of the \cmd{\item}~command is typeset flush to the left |
1292 |
|
|
% using the corresponding font and the \cmd{\makelabel}~command has |
1293 |
|
|
% done its work. Sigh. \winkey |
1294 |
|
|
% \begin{macrocode} |
1295 |
|
|
\cvlabelfont##1\hfill |
1296 |
|
|
}% |
1297 |
|
|
% \end{macrocode} |
1298 |
|
|
% The spacing used in the \env{cvlist} environments is adjusted. |
1299 |
|
|
% Remember that $\cmd{\itemsep} + \cmd{\parsep}$ is inserted |
1300 |
|
|
% between items~\cite{Goossens:1994}. The label width and the |
1301 |
|
|
% separation between labels and items are set |
1302 |
|
|
% to~\cmd{\cvlabelwidth} and~\cmd{\cvlabelsep}, respectively, which |
1303 |
|
|
% are globally available and thus can be re-adjusted by the user. |
1304 |
|
|
% If the~\source{1} is omitted in the definition of~\cmd{\topsep}, |
1305 |
|
|
% ``plus 2pt minus 2pt'' is written into your curriculum vitae. |
1306 |
|
|
% Strange. \winkey |
1307 |
|
|
% \begin{macrocode} |
1308 |
|
|
\setlength{\itemsep}{0ex}% |
1309 |
|
|
\setlength{\parsep}{% |
1310 |
|
|
0.5\baselineskip plus 1pt minus 1pt% |
1311 |
|
|
}% |
1312 |
|
|
\setlength{\topsep}{% |
1313 |
|
|
1\baselineskip plus 2pt minus 2pt% |
1314 |
|
|
}% |
1315 |
|
|
\setlength{\partopsep}{0ex}% |
1316 |
|
|
\setlength{\labelsep}{\cvlabelsep}% |
1317 |
|
|
\setlength{\labelwidth}{\cvlabelwidth}% |
1318 |
|
|
\setlength{\leftmargin}{\cvlabelwidth}% |
1319 |
|
|
\addtolength{\leftmargin}{\cvlabelsep}% |
1320 |
|
|
% \end{macrocode} |
1321 |
|
|
% The end of the list initialization and of the |
1322 |
|
|
% \env{cvlist}~environment. |
1323 |
|
|
% \begin{macrocode} |
1324 |
|
|
}% |
1325 |
|
|
}{% |
1326 |
|
|
\end{list}% |
1327 |
|
|
}% |
1328 |
|
|
% \end{macrocode} |
1329 |
|
|
% \end{macro} |
1330 |
|
|
% \iffalse |
1331 |
|
|
%</package> |
1332 |
|
|
% \fi |
1333 |
|
|
% \Finale |
1334 |
|
|
% \iffalse |
1335 |
|
|
%<*testfile> |
1336 |
|
|
\documentclass[12pt,a4paper]{article} |
1337 |
|
|
% |
1338 |
|
|
\usepackage[german]{babel} |
1339 |
|
|
\usepackage{currvita} |
1340 |
|
|
% |
1341 |
|
|
\newcommand*{\ac}[1]{\mbox{#1}} |
1342 |
|
|
% |
1343 |
|
|
\tolerance=600 |
1344 |
|
|
% |
1345 |
|
|
\begin{document} |
1346 |
|
|
% |
1347 |
|
|
\begin{cv}{Lebenslauf} |
1348 |
|
|
% |
1349 |
|
|
\begin{cvlist}{Pers"onliche Daten} |
1350 |
|
|
\item Axel Reichert\\ |
1351 |
|
|
Beethovenstr.~25\\ |
1352 |
|
|
40233~D"usseldorf |
1353 |
|
|
\item Tel.:~(02\,11)~6\,91\,24\,15\\ |
1354 |
|
|
E"~Mail:~axel.reichert@gmx.de |
1355 |
|
|
\item Geb.~am~03.\,08.~1970 in~D"usseldorf\\ |
1356 |
|
|
Ledig, deutsch |
1357 |
|
|
\end{cvlist} |
1358 |
|
|
% |
1359 |
|
|
\begin{cvlist}{Schulbildung} |
1360 |
|
|
\item[08/1976--05/1989] Grundschule und Gymnasium in Mettmann |
1361 |
|
|
(Leistungskurse Mathematik und Physik) |
1362 |
|
|
\end{cvlist} |
1363 |
|
|
% |
1364 |
|
|
\begin{cvlist}{Wehrdienst} |
1365 |
|
|
\item[10/1989--09/1990] Fernmeldeaufkl"arer in Clausthal-Zellerfeld |
1366 |
|
|
und Rotenburg/""W"umme |
1367 |
|
|
\end{cvlist} |
1368 |
|
|
% |
1369 |
|
|
\begin{cvlist}{Studium} |
1370 |
|
|
\item[10/1990--09/1992] Maschinenbauvordiplom an der Universit"at |
1371 |
|
|
Hannover |
1372 |
|
|
\item[10/1992--06/1993] Wissenschaftliche Hilfskraft am Institut |
1373 |
|
|
f"ur Umformtechnik und Umformmaschinen, Hannover; Mitarbeit an |
1374 |
|
|
DFG-Projekt: Implementation eines Stoffgesetzes in das |
1375 |
|
|
\ac{FEM}-Programm \ac{ABAQUS} |
1376 |
|
|
\item[10/1992--08/1996] Maschinenbaudiplom an der Universit"at |
1377 |
|
|
Hannover, Ent"-wicklungs"~~und Konstruktionstechnik (Schwerpunkte |
1378 |
|
|
Finite Elemente, Schwingungstechnik und Elasto"~/""Plastomechanik) |
1379 |
|
|
\item[10/1994--04/1996] Mathematikvordiplom an der Universit"at |
1380 |
|
|
Hannover |
1381 |
|
|
\end{cvlist} |
1382 |
|
|
% |
1383 |
|
|
\begin{cvlist}{Praktikum} |
1384 |
|
|
\item[08/1994--09/1994] Br"uninghaus~\&~Drissner~GmbH, Hilden |
1385 |
|
|
(mittelst"andisches Pre"s"~, Stanz"~ und Ziehwerk); Konstruktion |
1386 |
|
|
eines kombinierten Roll"~ und Zudr"uckwerkzeuges f"ur |
1387 |
|
|
Klemmschellen |
1388 |
|
|
\end{cvlist} |
1389 |
|
|
% |
1390 |
|
|
\begin{cvlist}{Berufserfahrung} |
1391 |
|
|
\item[seit~08/1996] Max-Planck-Institut f"ur Eisenforschung~GmbH, |
1392 |
|
|
D"usseldorf; wissenschaftlicher Mitarbeiter der Abteilung |
1393 |
|
|
Metallurgie |
1394 |
|
|
|
1395 |
|
|
Promotion "uber "`Soft Reduction beim Stranggie"sen und ihr |
1396 |
|
|
Einflu"s auf die Produktqualit"at"' im Rahmen eines Projektes der |
1397 |
|
|
Europ"aischen Gemeinschaft f"ur Kohle und Stahl in Zusammenarbeit |
1398 |
|
|
mit British Steel, den Dillinger H"uttenwerken und der |
1399 |
|
|
TU~Clausthal |
1400 |
|
|
\end{cvlist} |
1401 |
|
|
% |
1402 |
|
|
\begin{cvlist}{Fremdsprachen} |
1403 |
|
|
\item Englisch, Franz"osisch |
1404 |
|
|
\end{cvlist} |
1405 |
|
|
% |
1406 |
|
|
\begin{cvlist}{\ac{EDV}} |
1407 |
|
|
\item[Betriebssysteme] \ac{UNIX} (Linux, \ac{IRIX}), Windows, Novell |
1408 |
|
|
Netware, \ac{DOS} |
1409 |
|
|
\item[Sprachen] Perl, Shell-Skripte, \ac{HTML}, Fortran~77, Pascal, |
1410 |
|
|
\ac{BASIC} |
1411 |
|
|
\item[Anwendungen] \ac{ANSYS}, \ac{MARC}, Word, Excel, Corel"-DRAW, |
1412 |
|
|
Designer, LaTeX, XEmacs |
1413 |
|
|
\end{cvlist} |
1414 |
|
|
% |
1415 |
|
|
\begin{cvlist}{Interessen} |
1416 |
|
|
\item Klassische Musik, Typographie, Tischtennis, Fotografie |
1417 |
|
|
\end{cvlist} |
1418 |
|
|
% |
1419 |
|
|
\begin{cvlist}{Sonstiges} |
1420 |
|
|
\item[04/1992--10/1995] Ehrenamtliche Mitarbeit als Rechnerwart bei |
1421 |
|
|
der Saalgemeinschaft~"`Exzenter"' (unter studentischer |
1422 |
|
|
Selbstverwaltung stehender Arbeits"~~und Zeichensaal f"ur |
1423 |
|
|
Ingenieurstudenten) |
1424 |
|
|
\item[seit 01/1997] Aktives Mitglied der Deutschen |
1425 |
|
|
Anwendervereinigung TeX, Vortr"age und Tutorien auf Konferenzen |
1426 |
|
|
\end{cvlist} |
1427 |
|
|
% |
1428 |
|
|
% \changes{v0.9d}{1999-08-25}{% |
1429 |
|
|
% \LaTeX{} version of the umlaut is used instead of |
1430 |
|
|
% \package{babel}'s~shortcut.% |
1431 |
|
|
% } |
1432 |
|
|
\cvplace{D\"usseldorf} |
1433 |
|
|
\date{13.~September~1999} |
1434 |
|
|
% |
1435 |
|
|
\end{cv} |
1436 |
|
|
% |
1437 |
|
|
\end{document} |
1438 |
|
|
%</testfile> |
1439 |
|
|
% \fi |
1440 |
|
|
\endinput |