diff --git a/CHANGELOG b/CHANGELOG index 043bb59..e1d495e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,14 +1,10 @@ -version 0.20 (xx Mar 2012) +version 1.0 (26 Mar 2012) - added commands to generate letters for every resume style: \recipient, \date, \opening, \closing, \enclosure, \makelettertitle and \makeletterclosing. The old \maketitle and \makefooter commands are now deprecated and replaced by - \makecvtitle (resp. \makelettertitle) and \makecvfooter (resp. - \makeletterfooter). + \makecvtitle and \makecvfooter. - changed the alignment algorithm for the personal data display in the oldstyle style, as to align on the baseline of the first line with the surrounding text. - - changed the font and linespacing of the address block display for the resume - part in the classic and casual styles, in order to be consistent with the - (required) block address display for the letter part. version 0.19 (06 Feb 2012) - reintroduced the ability to force the width reserved to display the name diff --git a/examples/letter.pdf b/examples/letter.pdf deleted file mode 100644 index b21aed7..0000000 Binary files a/examples/letter.pdf and /dev/null differ diff --git a/examples/letter.tex b/examples/letter.tex deleted file mode 100644 index cd332e6..0000000 --- a/examples/letter.tex +++ /dev/null @@ -1,103 +0,0 @@ -%% start of file `letter.tex'. -%% Copyright 2006-2012 Xavier Danaux (xdanaux@gmail.com). -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License version 1.3c, -% available at http://www.latex-project.org/lppl/. - - -\documentclass[11pt]{article} - - -\usepackage[utf8x]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{lmodern} -\usepackage{marvosym} -\usepackage{ifpdf} -\ifpdf - \usepackage[pdftex]{graphicx} -\else - \usepackage[dvips]{graphicx}\fi - -\pagestyle{empty} - -\usepackage[scale=0.8]{geometry} -\setlength{\parindent}{0pt} -\addtolength{\parskip}{6pt} - -\def\firstname{John} -\def\familyname{Doe} -\def\FileAuthor{\firstname \familyname} -\def\FileTitle{\firstname \familyname's cover letter} -\def\FileSubject{Cover letter} -\def\FileKeyWords{\firstname \familyname, Cover letter} - -\usepackage{url} -\renewcommand{\ttdefault}{pcr} -\urlstyle{tt} -\ifpdf - \usepackage[pdftex,pdfborder=0,breaklinks,baseurl=http://,pdfpagemode=None,pdfstartview=XYZ,pdfstartpage=1]{hyperref} - \hypersetup{ - pdfauthor = \FileAuthor,% - pdftitle = \FileTitle,% - pdfsubject = \FileSubject,% - pdfkeywords = \FileKeyWords,% - pdfcreator = \LaTeX,% - pdfproducer = \LaTeX} -\else - \usepackage[dvips]{hyperref} -\fi - -\renewcommand{\familydefault}{\sfdefault}% for use with a résumé using sans serif fonts; -%\renewcommand{\familydefault}{\rmdefault}% for use with a résumé using sans serif fonts; - -\begin{document} -\hfill% -\begin{minipage}[t]{.6\textwidth} -\raggedleft% -{\bfseries John Doe}\\[.35ex] -\small\itshape% -street and number\\ -postcode city\\[.35ex] -\Telefon~phone number\\ -\Letter~\href{mailto:jdoe@gmail.com}{jdoe@gmail.com} -\end{minipage}\\[1em] -% -\begin{minipage}[t]{.4\textwidth} -\raggedright% -{\bfseries Company XYZ}\\[.35ex] -\small\itshape% -street and number\\ -postcode city -\end{minipage} -\hfill % US style -%\\[1em] % UK style -\begin{minipage}[t]{.4\textwidth} -\raggedleft % US style -\today -%April 6, 2006 % US informal style -%05/04/2006 % UK formal style -\end{minipage}\\[2em] -\raggedright -Dear Sir or Madam:\\[1.5em] -% -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed nec sem sit amet lacus aliquam blandit. Nunc tristique mollis eros. Praesent elit. Maecenas turpis. Vestibulum consectetuer velit sit amet ipsum. Aliquam pede nunc, dictum ac, dictum nec, bibendum ut, ante. Phasellus justo urna, convallis vitae, scelerisque a, egestas vitae, diam. Cras eu enim a eros tristique varius. - -Pellentesque pellentesque magna a arcu. Phasellus enim purus, pellentesque sed, interdum hendrerit, interdum elementum, sapien. Nunc lobortis neque sed elit congue tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Nam lacus mi, volutpat bibendum, ullamcorper in, imperdiet vel, purus. Aliquam egestas sollicitudin mauris. Maecenas quis massa euismod tortor interdum consectetuer. Mauris rutrum leo adipiscing erat. - -Vivamus ullamcorper pellentesque arcu. Sed laoreet. Aenean porttitor, purus vel porta pretium, ante metus ultrices neque, id volutpat felis tellus vitae nunc. Vivamus tellus neque, tincidunt non, cursus non, porttitor vel, erat. Cras dictum, nisi vitae condimentum tempor, erat nisl pharetra diam, vitae scelerisque odio purus scelerisque massa. Curabitur malesuada purus volutpat dui. Fusce vitae sem. Fusce tempor felis vitae pede. - -Nurabitur id mi. Morbi tempor porta neque. Curabitur nunc dui, posuere sed, ornare eget, pellentesque eu, nisl. Suspendisse eget nulla in nisl consequat vulputate. Quisque id neque. Curabitur consectetuer, risus viverra suscipit rutrum, tortor mauris consequat lectus, quis gravida dolor arcu a velit. Sed elementum sagittis pede. Fusce erat. Aliquam quis justo. Praesent justo. Fusce turpis justo, fermentum et, placerat quis, vestibulum sed, sem. Morbi iaculis. Nunc in massa. - -Nulla mi. Suspendisse potenti. Quisque sapien nisl, congue id, egestas a, lacinia ut, pede. Etiam vehicula nisi eu dolor. Aliquam nulla elit, dignissim nec, suscipit ut, cursus sit amet, dui. Sed vel lorem ut lacus sagittis egestas. Quisque justo nisl, convallis non, ultrices et, tempor at, pede. Phasellus orci. Morbi non velit blandit pede adipiscing mollis. Cras malesuada. Mauris tincidunt massa ut risus. Maecenas sit amet mi nec elit ultrices tincidunt. Nullam hendrerit congue ipsum. Fusce felis. - -%Yours sincerely,\\[2em] % if the opening is "Dear Mr(s) Doe," -Yours faithfully,\\[2em] % if the opening is "Dear Sir or Madam," -% -%\includegraphics[scale=0.75]{signature_blue}\\ -{\bfseries John Doe}\\ -% -\vfill% -{\slshape Enclosure} -%{\slshape Attachment: curriculum vit\ae{}} -\end{document} diff --git a/examples/template-es.pdf b/examples/template-es.pdf index a0f4245..4a81cdb 100644 Binary files a/examples/template-es.pdf and b/examples/template-es.pdf differ diff --git a/examples/template-zh.pdf b/examples/template-zh.pdf index 2348f46..56bc23d 100644 Binary files a/examples/template-zh.pdf and b/examples/template-zh.pdf differ diff --git a/examples/template.pdf b/examples/template.pdf index 4b6a924..2867349 100644 Binary files a/examples/template.pdf and b/examples/template.pdf differ diff --git a/examples/template_banking_black.pdf b/examples/template_banking_black.pdf index 510766a..ff39e67 100644 Binary files a/examples/template_banking_black.pdf and b/examples/template_banking_black.pdf differ diff --git a/examples/template_banking_red.pdf b/examples/template_banking_red.pdf index 8ce0f77..689bb3e 100644 Binary files a/examples/template_banking_red.pdf and b/examples/template_banking_red.pdf differ diff --git a/examples/template_casual_orange.pdf b/examples/template_casual_orange.pdf index 52f1c88..dffc01f 100644 Binary files a/examples/template_casual_orange.pdf and b/examples/template_casual_orange.pdf differ diff --git a/examples/template_classic_green.pdf b/examples/template_classic_green.pdf index d22fb2f..fbb80d4 100644 Binary files a/examples/template_classic_green.pdf and b/examples/template_classic_green.pdf differ diff --git a/examples/template_multibib.pdf b/examples/template_multibib.pdf index e97aa8d..1a93bb2 100644 Binary files a/examples/template_multibib.pdf and b/examples/template_multibib.pdf differ diff --git a/moderncv.cls b/moderncv.cls index a55dd22..158d730 100644 --- a/moderncv.cls +++ b/moderncv.cls @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{moderncv}[2012/02/06 v0.19 modern curriculum vitae and letter document class] +\ProvidesClass{moderncv}[2012/03/26 v1.0 modern curriculum vitae and letter document class] %------------------------------------------------------------------------------- @@ -218,7 +218,7 @@ \newcommand*{\emailsymbol}{\Letter~} \newcommand*{\homepagesymbol}{{\Large\ComputerMouse}~} -%fonts +% fonts \AtBeginDocument{\normalfont\color{color0}} % makes the footer (normally used both for the resume and the letter) @@ -233,10 +233,14 @@ \newcommand*{\moderncvcolor}[1]{ \RequirePackage{moderncvcolor#1}} -% recompute all automatic lengths +% recomputes all automatic lengths \newcommand*{\recomputelengths}{\recomputecvlengths} \AtBeginDocument{\recomputelengths{}} +% creates a length if not yet defined +\newcommand*{\@initializelength}[1]{% + \ifdefined#1\else\newlength{#1}\fi} + %------------------------------------------------------------------------------- % resume design commands definitions diff --git a/moderncvcolorblack.sty b/moderncvcolorblack.sty index 5f28ec0..762b9b7 100644 --- a/moderncvcolorblack.sty +++ b/moderncvcolorblack.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorblack}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: black] +\ProvidesPackage{moderncvcolorblack}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: black] %------------------------------------------------------------------------------- diff --git a/moderncvcolorblue.sty b/moderncvcolorblue.sty index 980f2fa..8bd2f9d 100644 --- a/moderncvcolorblue.sty +++ b/moderncvcolorblue.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorblue}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: blue] +\ProvidesPackage{moderncvcolorblue}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: blue] %------------------------------------------------------------------------------- diff --git a/moderncvcolorgreen.sty b/moderncvcolorgreen.sty index 03af802..6f64ac8 100644 --- a/moderncvcolorgreen.sty +++ b/moderncvcolorgreen.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorgreen}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: green] +\ProvidesPackage{moderncvcolorgreen}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: green] %------------------------------------------------------------------------------- diff --git a/moderncvcolorgrey.sty b/moderncvcolorgrey.sty index 911b0ee..4b85eb3 100644 --- a/moderncvcolorgrey.sty +++ b/moderncvcolorgrey.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorgrey}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: grey] +\ProvidesPackage{moderncvcolorgrey}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: grey] %------------------------------------------------------------------------------- diff --git a/moderncvcolororange.sty b/moderncvcolororange.sty index 1b9400d..8e26eae 100644 --- a/moderncvcolororange.sty +++ b/moderncvcolororange.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolororange}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: orange] +\ProvidesPackage{moderncvcolororange}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: orange] %------------------------------------------------------------------------------- diff --git a/moderncvcolorpurple.sty b/moderncvcolorpurple.sty index 906fc42..ed0e398 100644 --- a/moderncvcolorpurple.sty +++ b/moderncvcolorpurple.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorpurple}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: purple] +\ProvidesPackage{moderncvcolorpurple}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: purple] %------------------------------------------------------------------------------- diff --git a/moderncvcolorred.sty b/moderncvcolorred.sty index 88749f4..e3d8203 100644 --- a/moderncvcolorred.sty +++ b/moderncvcolorred.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorred}[2012/02/06 v0.19 modern curriculum vitae and letter color scheme: red] +\ProvidesPackage{moderncvcolorred}[2012/03/26 v1.0 modern curriculum vitae and letter color scheme: red] %------------------------------------------------------------------------------- diff --git a/moderncvcompatibility.sty b/moderncvcompatibility.sty index 0331840..3997bcf 100644 --- a/moderncvcompatibility.sty +++ b/moderncvcompatibility.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcompatibility}[2012/02/06 v0.19 modern curriculum vitae and letter compatibility patches] +\ProvidesPackage{moderncvcompatibility}[2012/03/26 v1.0 modern curriculum vitae and letter compatibility patches] %------------------------------------------------------------------------------- diff --git a/moderncvstylebanking.sty b/moderncvstylebanking.sty index 1552410..a8ca0e9 100644 --- a/moderncvstylebanking.sty +++ b/moderncvstylebanking.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstylebanking}[2012/02/06 v0.19 modern curriculum vitae and letter style scheme: banking] +\ProvidesPackage{moderncvstylebanking}[2012/03/26 v1.0 modern curriculum vitae and letter style scheme: banking] %------------------------------------------------------------------------------- @@ -26,56 +26,9 @@ %------------------------------------------------------------------------------- -% style definition +% overall style definition %------------------------------------------------------------------------------- -% fonts -\renewcommand*{\namefont}{\Huge\bfseries\upshape} -\renewcommand*{\titlefont}{\LARGE\mdseries\slshape} -\renewcommand*{\addressfont}{\normalsize\mdseries\upshape} -\renewcommand*{\quotefont}{\large\slshape} -\renewcommand*{\sectionfont}{\Large\bfseries\upshape} -\renewcommand*{\subsectionfont}{\large\upshape\fontseries{sb}\selectfont} -\renewcommand*{\hintfont}{\bfseries} - -% styles -\newcommand*{\namestyle}[1]{{\namefont\textcolor{color1}{#1}}} -\newcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2}{#1}}} -\newcommand*{\addressstyle}[1]{{\addressfont\textcolor{color1}{#1}}} -\newcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}} -\newcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}} -\newcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}} -\newcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}} - -% length used -\newlength{\quotewidth} -\newlength{\hintscolumnwidth} -\setlength{\hintscolumnwidth}{0.3\textwidth}% -\newlength{\separatorcolumnwidth} -\setlength{\separatorcolumnwidth}{0.025\textwidth}% -\newlength{\maincolumnwidth} -\newlength{\doubleitemcolumnwidth} -\newlength{\listitemsymbolwidth} -\settowidth{\listitemsymbolwidth}{\listitemsymbol} -\newlength{\listitemmaincolumnwidth} -\newlength{\listdoubleitemmaincolumnwidth} - -% recompute all the lengths that depends on the text width -\renewcommand*{\recomputelengths}{% - \setlength{\quotewidth}{0.65\textwidth}% - % main lenghts - \setlength{\maincolumnwidth}{\textwidth}% - % listitem lengths - \setlength{\listitemmaincolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}% - % doubleitem lengths - \setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\separatorcolumnwidth}% - \setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}% - % listdoubleitem lengths - \setlength{\listdoubleitemmaincolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}% - \setlength{\listdoubleitemmaincolumnwidth}{0.5\listdoubleitemmaincolumnwidth}% - % fancyhdr lengths - \renewcommand{\headwidth}{\textwidth}} - -% cv footer +% commands \newcommand*{\maketitlesymbol}{% {~~~\textbullet~~~}}% \textbullet forces the use of the CMSY font, even when latin modern fonts are used :( % internal command to add an element to the footer @@ -108,7 +61,7 @@ % name (title is not visible) \namestyle{\@firstname~\@familyname}\\% % detailed information - \color{color2}\addressfont% + \addressfont\color{color2}% \ifthenelse{\isundefined{\@addressstreet}}{}{\addtomaketitle[]{\addresssymbol\@addressstreet}% \ifthenelse{\equal{\@addresscity}{}}{}{\addtomaketitle[~--~]{\@addresscity}}\flushmaketitle}% if \addresstreet is defined, \addresscity will always be defined but could be empty \ifthenelse{\isundefined{\@mobile}}{}{\addtomaketitle[]{\mobilesymbol\@mobile}}% @@ -117,16 +70,72 @@ \ifthenelse{\isundefined{\@email}}{}{\addtomaketitle{\emailsymbol\emaillink{\@email}}}% \ifthenelse{\isundefined{\@homepage}}{}{\addtomaketitle{\homepagesymbol\httplink{\@homepage}}}% \ifthenelse{\isundefined{\@extrainfo}}{}{\addtomaketitle{\@extrainfo}}% - \flushmaketitle}\\[2.5em]% - % optional quote - \ifthenelse{\isundefined{\@quote}}% - {}% - {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% - \par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle + \flushmaketitle}\\[2.5em]}% need to force a \par after this to avoid weird spacing bug at the first section if no blank line is left after \maketitle + + +%------------------------------------------------------------------------------- +% resume style definition +%------------------------------------------------------------------------------- +% fonts +\renewcommand*{\namefont}{\Huge\bfseries\upshape} +\renewcommand*{\titlefont}{\LARGE\mdseries\slshape} +\renewcommand*{\addressfont}{\small\mdseries\upshape} +\renewcommand*{\quotefont}{\large\slshape} +\renewcommand*{\sectionfont}{\Large\bfseries\upshape} +\renewcommand*{\subsectionfont}{\large\upshape\fontseries{sb}\selectfont} +\renewcommand*{\hintfont}{\bfseries} + +% styles +\newcommand*{\namestyle}[1]{{\namefont\textcolor{color1}{#1}}} +\newcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2}{#1}}} +\newcommand*{\addressstyle}[1]{{\addressfont\textcolor{color1}{#1}}} +\newcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}} +\newcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}} +\newcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}} +\newcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}} + +% lengths +\newlength{\quotewidth} +\newlength{\hintscolumnwidth} +\setlength{\hintscolumnwidth}{0.3\textwidth}% +\newlength{\separatorcolumnwidth} +\setlength{\separatorcolumnwidth}{0.025\textwidth}% +\newlength{\maincolumnwidth} +\newlength{\doubleitemcolumnwidth} +\newlength{\listitemsymbolwidth} +\settowidth{\listitemsymbolwidth}{\listitemsymbol} +\newlength{\listitemmaincolumnwidth} +\newlength{\listdoubleitemmaincolumnwidth} + +% commands +\renewcommand*{\recomputelengths}{% + \setlength{\quotewidth}{0.65\textwidth}% + % main lenghts + \setlength{\maincolumnwidth}{\textwidth}% + % listitem lengths + \setlength{\listitemmaincolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}% + % doubleitem lengths + \setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\separatorcolumnwidth}% + \setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}% + % listdoubleitem lengths + \setlength{\listdoubleitemmaincolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}% + \setlength{\listdoubleitemmaincolumnwidth}{0.5\listdoubleitemmaincolumnwidth}% + % fancyhdr lengths + \renewcommand{\headwidth}{\textwidth}} + +\renewcommand*{\makecvtitle}{% + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputecvlengths% + \maketitle% + % optional quote + \ifthenelse{\isundefined{\@quote}}% + {}% + {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% + \par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle} \renewcommand*{\section}[1]{% \par\addvspace{2.5ex}% - \phantomsection{}% + \phantomsection{}% reset the anchor for hyperrefs \addcontentsline{toc}{section}{#1}% \strut\sectionstyle{#1}% {\color{color1}\hrule}% @@ -206,6 +215,48 @@ \end{list}% } + +%------------------------------------------------------------------------------- +% letter style definition +%------------------------------------------------------------------------------- +% commands +\renewcommand*{\recomputeletterlengths}{ + \recomputecvlengths% + \setlength{\parskip}{6\p@}} + +\renewcommand*{\makelettertitle}{% + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputeletterlengths% + % sender block + \maketitle% + \par% + % recipient block + \begin{minipage}[t]{.5\textwidth} + \raggedright% + \addressfont% + {\bfseries\upshape\@recipientname}\\% + \@recipientaddress% + \end{minipage} + % date + \hfill % US style +% \\[1em] % UK style + \hbox{\today}\\[2em]% US informal style: "April 6, 2006"; UK formal style: "05/04/2006" + % opening + \raggedright% + \@opening\\[1.5em]% + % ensure no extra spacing after \makelettertitle due to a possible blank line +% \ignorespacesafterend% not working + \hspace{0pt}\par\vspace{-\baselineskip}\vspace{-\parskip}} + +\renewcommand*{\makeletterclosing}{ + \@closing\\[3em]% + {\bfseries \@firstname~\@familyname}% + \ifthenelse{\isundefined{\@enclosure}}{}{% + \\% + \vfill% + {\color{color2}\itshape Enclosure: \@enclosure}}} + + \endinput diff --git a/moderncvstylecasual.sty b/moderncvstylecasual.sty index 9c839f7..861eccc 100644 --- a/moderncvstylecasual.sty +++ b/moderncvstylecasual.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstylecasual}[2012/02/06 v0.19 modern curriculum vitae and letter style scheme: casual] +\ProvidesPackage{moderncvstylecasual}[2012/03/26 v1.0 modern curriculum vitae and letter style scheme: casual] %------------------------------------------------------------------------------- @@ -27,16 +27,7 @@ %------------------------------------------------------------------------------- % overall style definition %------------------------------------------------------------------------------- - - -%------------------------------------------------------------------------------- -% resume style definition -%------------------------------------------------------------------------------- -% fonts -\renewcommand*{\namefont}{\fontsize{38}{40}\mdseries\upshape} -\renewcommand*{\addressfont}{\normalsize\mdseries\slshape} - -% cv footer +% commands % footer symbol used to separate footer elements \newcommand*{\footersymbol}{% {~~~\textbullet~~~}}% \textbullet forces the use of the CMSY font, even when latin modern fonts are used :( @@ -59,7 +50,7 @@ \savebox{\footerbox}{\usebox{\footertempbox}}% \@firstfooterelementfalse% \else% - \flushfooter{}\\% + \flushfooter\\% \savebox{\footerbox}{#2}% \savebox{\footertempbox}{#2}% \@firstfooterelementfalse\fi} @@ -68,7 +59,45 @@ \strut\usebox{\footerbox}% \savebox{\footerbox}{}% \savebox{\footertempbox}{}} -\renewcommand*{\makefooter}{% + + +%------------------------------------------------------------------------------- +% resume style definition +%------------------------------------------------------------------------------- +% fonts +\renewcommand*{\namefont}{\fontsize{38}{40}\mdseries\upshape} +\renewcommand*{\addressfont}{\normalsize\mdseries\slshape} + +% commands +\renewcommand*{\makecvtitle}{% + % ensure footer with personal information + \makecvfooter% + % optional picture + \newbox{\makecvtitlepicturebox}% + \savebox{\makecvtitlepicturebox}{% + \ifthenelse{\isundefined{\@photo}}% + {}% + {% + \setlength\fboxrule{\@photoframewidth}% + \ifdim\@photoframewidth=0pt% + \setlength{\fboxsep}{0pt}\fi% + {\color{color1}\framebox{\includegraphics[width=\@photowidth]{\@photo}}}}}% + \usebox{\makecvtitlepicturebox}% + % name + \@initializelength{\makecvtitlepicturewidth}% + \settowidth{\makecvtitlepicturewidth}{\usebox{\makecvtitlepicturebox}}% + \parbox[b]{\textwidth-\makecvtitlepicturewidth}{% + \raggedleft\namefont{\color{color2!50}\@firstname} {\color{color2}\@familyname}}\\[-.35em]% alternate design: \MakeLowercase and no space + {\color{color2!50}\rule{\textwidth}{.25ex}}% + % optional title + \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\raggedleft\titlestyle{\@title}}\\[2.5em]% + % optional quote + \ifthenelse{\isundefined{\@quote}}% + {}% + {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% + \par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle + +\renewcommand*{\makecvfooter}{% \setlength{\footerwidth}{0.8\textwidth}% \fancypagestyle{plain}{% \fancyfoot[c]{% @@ -86,35 +115,60 @@ \flushfooter}}}% \pagestyle{plain}} -% maketitle -\renewcommand*{\maketitle}{% - \makefooter{}% - \newbox{\maketitlepicturebox}% - \savebox{\maketitlepicturebox}{% - \ifthenelse{\isundefined{\@photo}}% - {}% - {% - \setlength\fboxrule{\@photoframewidth}% - \ifdim\@photoframewidth=0pt% - \setlength{\fboxsep}{0pt}\fi% - {\color{color1}\framebox{\includegraphics[width=\@photowidth]{\@photo}}}}}% - \usebox{\maketitlepicturebox}% - \newlength{\maketitlepicturewidth}\settowidth{\maketitlepicturewidth}{\usebox{\maketitlepicturebox}}% - \parbox[b]{\textwidth-\maketitlepicturewidth}{% - \raggedleft\namefont{\color{color2!50}\@firstname} {\color{color2}\@familyname}}\\[-.35em]% alternate design: \MakeLowercase and no space - {\color{color2!50}\rule{\textwidth}{.25ex}}% - % optional title - \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\raggedleft\titlestyle{\@title}}\\[2.5em]% - % optional quote - \ifthenelse{\isundefined{\@quote}}% - {}% - {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% - \par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle - %------------------------------------------------------------------------------- % letter style definition %------------------------------------------------------------------------------- +\renewcommand*{\makelettertitle}{% + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputeletterlengths% + % ensure footer with personal information + \makeletterfooter% + % recipient block + \begin{minipage}[t]{.5\textwidth} + \raggedright% + \addressfont% + {\bfseries\upshape\@recipientname}\\% + \@recipientaddress% + \end{minipage} + % date + \hfill% US style +% \\[1em]% UK style + \hbox{\today}\\[2em]% US informal style: "April 6, 2006"; UK formal style: "05/04/2006" + % opening + \raggedright% + \@opening\\[1.5em]% + % ensure no extra spacing after \makelettertitle due to a possible blank line +% \ignorespacesafterend% not working + \hspace{0pt}\par\vspace{-\baselineskip}\vspace{-\parskip}} + +\renewcommand*{\makeletterfooter}{% + \setlength{\footerwidth}{0.8\textwidth}% + \fancypagestyle{plain}{% + \fancyfoot[c]{% + \parbox{\footerwidth}{% + \centering% + \addressfont\color{color2}% + {\bfseries\upshape\@firstname~\@familyname}\\ + \ifthenelse{\isundefined{\@addressstreet}}{}{\addtofooter[]{\addresssymbol\@addressstreet}% + \ifthenelse{\equal{\@addresscity}{}}{}{\addtofooter[~--~]{\@addresscity}}\flushfooter\@firstfooterelementtrue\\}% if \addresstreet is defined, \addresscity will always be defined but could be empty + \ifthenelse{\isundefined{\@mobile}}{}{\addtofooter{\mobilesymbol\@mobile}}% + \ifthenelse{\isundefined{\@phone}}{}{\addtofooter{\phonesymbol\@phone}}% + \ifthenelse{\isundefined{\@fax}}{}{\addtofooter{\faxsymbol\@fax}}% + \ifthenelse{\isundefined{\@email}}{}{\addtofooter{\emailsymbol\emaillink{\@email}}}% + \ifthenelse{\isundefined{\@homepage}}{}{\addtofooter{\homepagesymbol\httplink{\@homepage}}}% + \ifthenelse{\isundefined{\@extrainfo}}{}{\addtofooter{\@extrainfo}}% + \flushfooter}}}% + \pagestyle{plain}} + +\renewcommand*{\makeletterclosing}{ + \@closing\\[3em]% + {\bfseries\@firstname~\@familyname}% + \ifthenelse{\isundefined{\@enclosure}}{}{% + \\% + \vfil% + {\color{color2}\itshape Enclosure: \@enclosure}}% + \vfil} \endinput diff --git a/moderncvstyleclassic.sty b/moderncvstyleclassic.sty index a3509e9..bb9d6c1 100644 --- a/moderncvstyleclassic.sty +++ b/moderncvstyleclassic.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstyleclassic}[2012/02/06 v0.19 modern curriculum vitae and letter style scheme: classic] +\ProvidesPackage{moderncvstyleclassic}[2012/03/26 v1.0 modern curriculum vitae and letter style scheme: classic] %------------------------------------------------------------------------------- @@ -34,7 +34,7 @@ % fonts \renewcommand*{\namefont}{\fontsize{34}{36}\mdseries\upshape} \renewcommand*{\titlefont}{\LARGE\mdseries\slshape} -\renewcommand*{\addressfont}{\normalsize\mdseries\slshape} +\renewcommand*{\addressfont}{\small\mdseries\slshape} \renewcommand*{\quotefont}{\large\slshape} \renewcommand*{\sectionfont}{\Large\mdseries\upshape} \renewcommand*{\subsectionfont}{\large\mdseries\upshape} @@ -78,11 +78,12 @@ % fancyhdr lengths \renewcommand{\headwidth}{\textwidth}} - % optional maketitle width to force a certain width (if set to 0pt, the width is calculated automatically) \newlength{\makecvtitlenamewidth} \setlength{\makecvtitlenamewidth}{0pt}% dummy value \renewcommand*{\makecvtitle}{% + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputecvlengths% % optional detailed information box \newbox{\makecvtitledetailsbox}% \savebox{\makecvtitledetailsbox}{% @@ -232,7 +233,8 @@ \setlength{\parskip}{6\p@}} \renewcommand*{\makelettertitle}{% - \recomputeletterlengths{}% + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputeletterlengths% % sender contact info \hfill% \begin{minipage}{.5\textwidth}% @@ -251,12 +253,13 @@ % recipient block \begin{minipage}[t]{.5\textwidth} \raggedright% - {\bfseries\@recipientname}\\% - \itshape\@recipientaddress% + \addressfont% + {\bfseries\upshape\@recipientname}\\% + \@recipientaddress% \end{minipage} % date - \hfill % US style -% \\[1em] % UK style + \hfill% US style +% \\[1em]% UK style \hbox{\today}\\[2em]% US informal style: "April 6, 2006"; UK formal style: "05/04/2006" % opening \raggedright% diff --git a/moderncvstyleempty.sty b/moderncvstyleempty.sty index ab4fc99..c11dc61 100644 --- a/moderncvstyleempty.sty +++ b/moderncvstyleempty.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstyleempty}[2012/02/06 v0.19 modern curriculum vitae scheme: empty] +\ProvidesPackage{moderncvstyleempty}[2012/03/26 v1.0 modern curriculum vitae scheme: empty] %------------------------------------------------------------------------------- diff --git a/moderncvstyleoldstyle.sty b/moderncvstyleoldstyle.sty index f8ea751..3718c48 100644 --- a/moderncvstyleoldstyle.sty +++ b/moderncvstyleoldstyle.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstyleoldstyle}[2012/02/06 v0.19 modern curriculum vitae and letter style scheme: oldstyle] +\ProvidesPackage{moderncvstyleoldstyle}[2012/03/26 v1.0 modern curriculum vitae and letter style scheme: oldstyle] %------------------------------------------------------------------------------- @@ -49,7 +49,7 @@ % fonts \renewcommand*{\namefont}{\fontsize{34}{36}\mdseries\upshape} \renewcommand*{\titlefont}{\LARGE\mdseries\slshape} -\renewcommand*{\addressfont}{\normalsize\mdseries} +\renewcommand*{\addressfont}{\small\mdseries} \renewcommand*{\quotefont}{\large\itshape} \renewcommand*{\sectionfont}{\Large\bfseries\upshape} \renewcommand*{\subsectionfont}{\large\bfseries\itshape} @@ -104,6 +104,8 @@ \par\vspace{-\baselineskip}\vspace{-\parskip}\leftskip=\leftcolumnwidth} \renewcommand*{\makecvtitle}{ + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputecvlengths% % optional picture box \newbox{\makecvtitlepicturebox}% \savebox{\makecvtitlepicturebox}{% @@ -256,10 +258,12 @@ } \renewcommand*{\makelettertitle}{% - \recomputeletterlengths{}% + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputeletterlengths% % recipient block - {\bfseries\@recipientname}\\% - \upshape\@recipientaddress\\[1em]% + {\addressfont% + {\bfseries\upshape\@recipientname}\\% + \@recipientaddress}\\[1em]% % date \@date\\[2em]% % opening