diff options
author | Karl Berry <karl@freefriends.org> | 2013-04-23 22:03:59 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-04-23 22:03:59 +0000 |
commit | dcbba316ad38f69871121fcbb50f004119258729 (patch) | |
tree | e44095eb83723e97ef0fb63270feb2699958a4f4 /Master/texmf-dist/tex/latex/moderncv | |
parent | 7c7ae491345ff76b2899396d911ffbd59907b657 (diff) |
moderncv (23apr13)
git-svn-id: svn://tug.org/texlive/trunk@30069 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/moderncv')
18 files changed, 603 insertions, 172 deletions
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncv.cls b/Master/texmf-dist/tex/latex/moderncv/moderncv.cls index 08b24c9a1ae..476b0ffdba7 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncv.cls +++ b/Master/texmf-dist/tex/latex/moderncv/moderncv.cls @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{moderncv}[2013/02/09 v1.3.0 modern curriculum vitae and letter document class] +\ProvidesClass{moderncv}[2013/04/23 v1.5.0 modern curriculum vitae and letter document class] %------------------------------------------------------------------------------- @@ -110,15 +110,6 @@ {} %\fi -% MarVoSym font for symbols -%\RequirePackage{marvosym} -\newcommand*{\marvosymbol}[1]{} -%\ifxetexorluatex -% \renewcommand*{\marvosymbol}[1]{{\fontspec{MarVoSym}\char#1}} -%\else - \renewcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}} -%\fi - % hyper links (hyperref is loaded at the end of the preamble to pass options required by loaded packages such as CJK) \newcommand*\pdfpagemode{UseNone}% do not show thumbnails or bookmarks on opening (on supporting browsers); set \pdfpagemode to "UseOutlines" to show bookmarks \RequirePackage{url} @@ -136,10 +127,10 @@ % pdfproducer = {\LaTeX{}},% will/should be set automatically to the correct TeX engine used bookmarksopen = true, bookmarksdepth= 2,% to show sections and subsections - pdfauthor = {\@firstname{}~\@familyname{}}, - pdftitle = {\@firstname{}~\@familyname{} -- \@title{}}, - pdfsubject = {Resum\'{e} of \@firstname{}~\@familyname{}}, - pdfkeywords = {\@firstname{}~\@familyname{}, curriculum vit\ae{}, resum\'{e}}}} + pdfauthor = {\@firstname{}~\@lastname{}}, + pdftitle = {\@firstname{}~\@lastname{} -- \@title{}}, + pdfsubject = {Resum\'{e} of \@firstname{}~\@lastname{}}, + pdfkeywords = {\@firstname{}~\@lastname{}, curriculum vit\ae{}, resum\'{e}}}} % graphics \RequirePackage{graphicx} @@ -161,7 +152,7 @@ \newlength{\pagenumberwidth}% \settowidth{\pagenumberwidth}{\color{color2}\addressfont\itshape\strut\thepage/\pageref{lastpage}}% \fancypagestyle{plain}{% - \fancyfoot[r]{\parbox[b]{\pagenumberwidth}{\color{color2}\addressfont\itshape\strut\thepage/\pageref{lastpage}}}}% the parbox is required to ensure alignment with a possible center footer (e.g., as in the casual style) + \fancyfoot[r]{\parbox[b]{\pagenumberwidth}{\color{color2}\pagenumberfont\strut\thepage/\pageref{lastpage}}}}% the parbox is required to ensure alignment with a possible center footer (e.g., as in the casual style) \pagestyle{plain}}{}}% \AtEndDocument{\label{lastpage}}\else\fi}} \pagestyle{plain} @@ -192,6 +183,9 @@ % micro-typography (e.g., character protrusion, font expansion, hyphenatable letterspacing) \RequirePackage{microtype} +% stack of key-value elements, used to save personal information +\RequirePackage{moderncvcollection} + % compatibility package with older versions of moderncv \RequirePackageWithOptions{moderncvcompatibility} @@ -225,64 +219,86 @@ % overall design commands definitions %------------------------------------------------------------------------------- % elements -% defines one's first name -% usage: \firstname{<firstname>} -\newcommand*{\firstname}[1]{\def\@firstname{#1}} -% defines one's family name -% usage: \familyname{<familyname>} -\newcommand*{\familyname}[1]{\def\@familyname{#1}} +%--------- +% defines one's name +% usage: \name{<firstname>}{<lastname>} +\newcommand*{\name}[2]{\def\@firstname{#1}\def\@lastname{#2}} + % defines one's title (optional) % usage: \title{<title>} \renewcommand*{\title}[1]{\def\@title{#1}} + % defines one's address (optional) % usage: \address{<street>}{<city>}{<country>} % where the <city> and <country> arguments can be omitted or provided empty \NewDocumentCommand{\address}{mG{}G{}}{\def\@addressstreet{#1}\def\@addresscity{#2}\def\@addresscountry{#3}} -% defines one's mobile phone number (optional) -% usage: \mobile{<number>} -\newcommand*{\mobile}[1]{\def\@mobile{#1}} -% defines one's fixed phone number (optional) -% usage: \phone{<number>} -\newcommand*{\phone}[1]{\def\@phone{#1}} -% defines one's fax number (optional) -% usage: \fax{<number>} -\newcommand*{\fax}[1]{\def\@fax{#1}} -% defines one's email address (optional) -% usage: \email{<email>} + +% defines one's email (optional) +% usage: \email{<email adress>} \newcommand*{\email}[1]{\def\@email{#1}} + % defines one's home page (optional) % usage: \homepage{<url>} \newcommand*{\homepage}[1]{\def\@homepage{#1}} + +% adds a fixed/mobile/fax number to one's personal information (optional) +% usage: \phone[<optional type>]{<number>} +% where <optional type> should be either "fixed" (default), "mobile" or "fax +\collectionnew{phones} +\newcommand*{\phone}[2][fixed]{\collectionadd[#1]{phones}{#2}} + +% adds a social link to one's personal information (optional) +% usage: \social[<optional type>][<optional url>]{<account name>} +% where <optional type> should be either "linkedin", "twitter" or "github" +\collectionnew{socials} +\NewDocumentCommand{\social}{O{}O{}m}{% + \ifthenelse{\equal{#2}{}}% + {% + \ifthenelse{\equal{#1}{linkedin}}{\collectionadd[linkedin]{socials}{\protect\httplink[#3]{www.linkedin.com/in/#3}}}{}% + \ifthenelse{\equal{#1}{twitter}} {\collectionadd[twitter]{socials} {\protect\httplink[#3]{www.twitter.com/#3}}} {}% + \ifthenelse{\equal{#1}{github}} {\collectionadd[github]{socials} {\protect\httplink[#3]{www.github.com/#3}}} {}% + } + {\collectionadd[#1]{socials}{\protect\httplink[#3]{#2}}}} + % defines additional personal information (optional) % usage: \extrainfo{<text>} \newcommand*{\extrainfo}[1]{\def\@extrainfo{#1}} % colors +%------- \definecolor{color0}{rgb}{0,0,0}% main default color, normally left to black -\definecolor{color1}{rgb}{0,0,0}% primary theme color -\definecolor{color2}{rgb}{0,0,0}% secondary theme color -\definecolor{color3}{rgb}{0,0,0}% tertiary theme color +\definecolor{color1}{rgb}{0,0,0}% primary scheme color +\definecolor{color2}{rgb}{0,0,0}% secondary scheme color +\definecolor{color3}{rgb}{0,0,0}% tertiary scheme color % symbols -% itemize labels (the struts were added to correct inter-item spacing (works for single line items, until a solution is found for multi-line ones...) -\newcommand*{\labelitemi}{\strut\textcolor{color1}{\marvosymbol{123}}}% equivalent to \Neutral from marvosym package; alternative: \fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102} -\newcommand*{\labelitemii}{\strut\textcolor{color1}{\large\bfseries-}} -\newcommand*{\labelitemiii}{\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% alternative: \textasteriskcentered; the \rmfamily is required to force Latin Modern fonts when using sans serif, as OMS/lmss/m/n is not defined and gets substituted by OMS/cmsy/m/n -\newcommand*{\labelitemiv}{\labelitemiii} -% enumerate labels -\renewcommand{\theenumi}{\@arabic\c@enumi} -\renewcommand{\theenumii}{\@alph\c@enumii} -\renewcommand{\theenumiii}{\@roman\c@enumiii} -\renewcommand{\theenumiv}{\@Alph\c@enumiv} -% other symbols -\newcommand*{\listitemsymbol}{\labelitemi~} -\newcommand*{\addresssymbol}{} -\newcommand*{\mobilesymbol}{} -\newcommand*{\phonesymbol}{} -\newcommand*{\faxsymbol}{} -\newcommand*{\emailsymbol}{} -\newcommand*{\homepagesymbol}{} - +%-------- +% itemize labels (the struts were added to correct inter-item spacing (works for single line items, until a solution is found for multi-line ones...) +\newcommand*{\labelitemi} {\strut\textcolor{color1}{\large\rmfamily\textbullet}}% the \rmfamily is required to force Latin Modern fonts when using sans serif, as OMS/lmss/m/n is not defined and gets substituted by OMS/cmsy/m/n +\newcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} +\newcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% alternative: \textasteriskcentered; the \rmfamily is required to force Latin Modern fonts when using sans serif, as OMS/lmss/m/n is not defined and gets substituted by OMS/cmsy/m/n +\newcommand*{\labelitemiv} {\labelitemiii} + +% enumerate labels +\renewcommand{\theenumi} {\@arabic\c@enumi} +\renewcommand{\theenumii} {\@alph\c@enumii} +\renewcommand{\theenumiii} {\@roman\c@enumiii} +\renewcommand{\theenumiv} {\@Alph\c@enumiv} + +% other symbols +\newcommand*{\listitemsymbol} {\labelitemi~} +\newcommand*{\addresssymbol} {} +\newcommand*{\mobilephonesymbol} {} +\newcommand*{\fixedphonesymbol} {} +\newcommand*{\faxphonesymbol} {} +\newcommand*{\emailsymbol} {} +\newcommand*{\homepagesymbol} {} +\newcommand*{\linkedinsocialsymbol}{} +\newcommand*{\twittersocialsymbol} {} +\newcommand*{\githubsocialsymbol} {} + +% other +%------ % fonts \AtBeginDocument{\normalfont\color{color0}} @@ -294,14 +310,21 @@ % usage: \makefooter \newcommand*{\makefooter}{}% -% loads a style scheme +% loads a style variant +% usage: \moderncvstyle{<style variant name>} \newcommand*{\moderncvstyle}[1]{ \RequirePackage{moderncvstyle#1}} % loads a color scheme +% usage: \moderncvcolor{<color scheme name>} \newcommand*{\moderncvcolor}[1]{ \RequirePackage{moderncvcolor#1}} +% loads an icons set +% usage: \moderncvicons{<icon set name>} +\newcommand*{\moderncvicons}[1]{ + \RequirePackage{moderncvicons#1}} + % recomputes all automatic lengths \newcommand*{\recomputelengths}{\recomputecvlengths} \AtBeginDocument{\recomputelengths{}} @@ -328,6 +351,7 @@ \newcommand*{\sectionfont}{} \newcommand*{\subsectionfont}{} \newcommand*{\hintfont}{} +\newcommand*{\pagenumberfont}{\addressfont\itshape} % styles \newcommand*{\namestyle}[1]{{\namefont#1}} @@ -337,6 +361,7 @@ \newcommand*{\sectionstyle}[1]{{\sectionfont#1}} \newcommand*{\subsectionstyle}[1]{{\subsectionfont#1}} \newcommand*{\hintstyle}[1]{{\hintfont#1}} +\newcommand*{\pagenumberstyle}[1]{{\pagenumberfont#1}} % recompute all resume lengths \newcommand*{\recomputecvlengths}{} @@ -360,15 +385,12 @@ % makes a resume section % usage: \section{<title>} -\newcommand*{\section}[1]{} -% starred variant, which is identical but defined to allow its use (e.g. for natbib compatibility, who uses \section*{} for the bibliography header) -\RequirePackage{suffix} -\AtBeginDocument{\WithSuffix\newcommand\section*{\section}} +% identical starred and non-starred variants should be defined for compatibility with other packages (e.g. with natbib, that uses \section*{} for the bibliography header) +\NewDocumentCommand{\section}{sm}{} % makes a resume subsection % usage: \subsection{title} -\newcommand*{\subsection}[1]{} -\AtBeginDocument{\WithSuffix\newcommand\subsection*{\subsection}} +\NewDocumentCommand{\subsection}{sm}{} % makes a resume line with a header and a corresponding text % usage: \cvitem[spacing]{header}{text} @@ -477,8 +499,9 @@ \cvitem{}{% \begin{tabular}{\cvcolumns@def}% \if@cvcolumns@head@empty\else% - \cvcolumns@head\\[-.8em]% - {\color{color1}\rule{\maincolumnwidth}{.25pt}}\\\fi% + \cvcolumns@head%\\[-.8em]% +% {\color{color1}\rule{\maincolumnwidth}{.25pt}}% + \\\fi% \cvcolumns@content% \end{tabular}}} diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty new file mode 100644 index 00000000000..7366f2bd8db --- /dev/null +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty @@ -0,0 +1,85 @@ +%% start of file `moderncvcollection.sty'. +%% Copyright 2013-2013 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/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncvcollection}[2013/04/23 v1.5.0 moderncv collections] + + +%------------------------------------------------------------------------------- +% requirements +%------------------------------------------------------------------------------- + + +\RequirePackage{ifthen} + + +%------------------------------------------------------------------------------- +% code +%------------------------------------------------------------------------------- + +% creates a new collection +% usage: \collectionnew{<collection name>} +\newcommand*{\collectionnew}[1]{% + \newcounter{collection@#1@count}} + +% adds an item to a collection +% usage: \collectionadd[<optional key>]{<collection name>}{<item to add>} +\newcommand*{\collectionadd}[3][]{% + \expandafter\def\csname collection@#2@item\roman{collection@#2@count}\endcsname{#3}% + \if\relax\noexpand#1\relax% if #1 is empty + \else\expandafter\def\csname collection@#2@key\roman{collection@#2@count}\endcsname{#1}\fi% + \stepcounter{collection@#2@count}} + +% returns the number of items in a collection +% usage: \collectioncount{<collection name>} +\newcommand*{\collectioncount}[1]{% + \value{collection@#1@count}} + +% gets an item from a collection +% usage: \collectiongetitem{<collection name>}{<element id>} +% where <element id> is an integer between 0 and (collectioncount-1) +\newcommand*{\collectiongetitem}[2]{% + \csname collection@#1@item\romannumeral #2\endcsname} + +% gets a key from a collection +% usage: \collectiongetkey{<collection name>}{<element id>} +% where <element id> is an integer between 0 and (collectioncount-1) +\newcommand*{\collectiongetkey}[2]{% + \csname collection@#1@key\romannumeral #2\endcsname} + +% loops through a collection and perform the given operation on every element +% usage: \collectionloop{<collection name>}{<operation sequence>} +% where <operation sequence> is the code sequence to be evaluated for each collection item, +% code which can refer to \collectionloopid, \collectionloopkey, \collectionloopitem and +% \collectionloopbreak +\newcounter{collection@iterator} +\newcommand*{\collectionloopbreak}{\let\iterate\relax} +\newcommand*{\collectionloop}[2]{% + \setcounter{collection@iterator}{0}% + \loop\ifnum\value{collection@iterator}<\value{collection@#1@count}% + \def\collectionloopid{\arabic{collection@iterator}}% + \def\collectionloopitem{\collectiongetitem{#1}{\collectionloopid}}% + \def\collectionloopkey{\collectiongetkey{#1}{\collectionloopid}}% + #2% + \stepcounter{collection@iterator}% + \repeat} + +% loops through a collection and finds the (first) element matching the given key +% usage: \collectionfindbykey{<collection name>}{key>} +\newcommand*{\collectionfindbykey}[2]{% + \collectionloop{#1}{% + \ifthenelse{\equal{\collectionloopkey}{#2}}{\collectionloopitem\collectionloopbreak}{}}} + + +\endinput + + +%% end of file `moderncvcollection.cls'. diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty index 3a6e1477f32..4c771b3f1c1 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorblack}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: black] +\ProvidesPackage{moderncvcolorblack}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: black] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty index 7b949c704ac..b0d748655f9 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorblue}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: blue] +\ProvidesPackage{moderncvcolorblue}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: blue] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty index 4de7f848a04..c7fe7257d6a 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorgreen}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: green] +\ProvidesPackage{moderncvcolorgreen}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: green] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty index 9018726a238..36d16db54ff 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorgrey}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: grey] +\ProvidesPackage{moderncvcolorgrey}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: grey] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty index 134ae240113..10d5e254c83 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolororange}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: orange] +\ProvidesPackage{moderncvcolororange}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: orange] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty index d3dc5345b08..8c00ef6d3e0 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorpurple}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: purple] +\ProvidesPackage{moderncvcolorpurple}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: purple] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty index 681181997d3..58da0f252a5 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcolorred}[2013/02/09 v1.3.0 modern curriculum vitae and letter color scheme: red] +\ProvidesPackage{moderncvcolorred}[2013/04/23 v1.5.0 modern curriculum vitae and letter color scheme: red] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty index 3b1d13c11c7..6bc6944fe71 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvcompatibility}[2013/02/09 v1.3.0 modern curriculum vitae and letter compatibility patches] +\ProvidesPackage{moderncvcompatibility}[2013/04/23 v1.5.0 modern curriculum vitae and letter compatibility patches] %------------------------------------------------------------------------------- @@ -79,6 +79,24 @@ \title{}% to avoid LaTeX complaining that \maketitle is a called without first a call to \title \newcommand*{\maketitlenamewidth}{\makecvtitlenamewidth} +% compatibility with versions <= 1.3.0 +\newcommand*{\firstname}[1]{\def\@firstname{#1}} +\newcommand*{\lastname}[1]{\def\@lastname{#1}} +\newcommand*{\givenname}[1]{\def\@firstname{#1}} +\newcommand*{\familyname}[1]{\def\@lastname{#1}} +\def\@familyname{\@lastname} + +% compatibility with versions <= 1.4.0 +\newcommand*{\mobile}[1]{\collectionadd[mobile]{phones}{#1}} +%\newcommand*{\phone}[1]{\collectionadd[fixed]{phones}{#1}}% implicit, as \phone{...} defaults to \phone[fixed]{...} +\newcommand*{\fax}[1]{\collectionadd[fax]{phones}{#1}} +\newcommand*{\@mobile}{\collectionfindbykey{phones}{mobile}} +\newcommand*{\@phone}{\collectionfindbykey{phones}{fixed}} +\newcommand*{\@fax}{\collectionfindbykey{phones}{fax}} +\newcommand*{\phonesymbol}{\fixedphonesymbol} +\newcommand*{\mobilesymbol}{\mobilephonesymbol} +\newcommand*{\faxsymbol}{\faxphonesymbol} + \endinput diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty new file mode 100644 index 00000000000..1b883e511ca --- /dev/null +++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty @@ -0,0 +1,45 @@ +%% start of file `moderncviconsmarvosym.sty'. +%% Copyright 2013-2013 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/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncviconsawesome}[2013/04/23 v1.5.0 modern curriculum vitae and letter icons: awesome] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- +% Font Awesome font +\RequirePackage{fontawesome} + + +%------------------------------------------------------------------------------- +% symbols definition +%------------------------------------------------------------------------------- +\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\tiny\faCircleBlank}} +%\renewcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} % no change from default in moderncv.cls +%\renewcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% no change from default in moderncv.cls +%\renewcommand*{\labelitemiv} {\labelitemiii} % no change from default in moderncv.cls + +\renewcommand*{\addresssymbol} {} +\renewcommand*{\mobilephonesymbol} {{\Large\faMobilePhone}~} +\renewcommand*{\fixedphonesymbol} {\faPhone~} +\renewcommand*{\faxphonesymbol} {\faPrint~} % alternative: \faFileAlt +\renewcommand*{\emailsymbol} {\faEnvelope~} % alternative: \faInbox +\renewcommand*{\homepagesymbol} {\faGlobe~} % alternative: \faHome +\renewcommand*{\linkedinsocialsymbol}{\faLinkedinSign~} % alternative: \faLinkedin +\renewcommand*{\twittersocialsymbol} {\faTwitter~} +\renewcommand*{\githubsocialsymbol} {\faGithub~} + + +\endinput + + +%% end of file `moderncviconsmarvosym.sty'. diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty new file mode 100644 index 00000000000..c66f26426d2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty @@ -0,0 +1,53 @@ +%% start of file `moderncviconsletters.sty'. +%% Copyright 2013-2013 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/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncviconsmarvosym}[2013/04/23 v1.5.0 modern curriculum vitae and letter icons: letters] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- +% MarVoSym font +%\RequirePackage{marvosym} +\newcommand*{\marvosymbol}[1]{} +%\ifxetexorluatex +% \renewcommand*{\marvosymbol}[1]{{\fontspec{MarVoSym}\char#1}} +%\else + \renewcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}} +%\fi + + +%------------------------------------------------------------------------------- +% symbols definition +%------------------------------------------------------------------------------- +\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\marvosymbol{123}}} % equivalent to \Neutral from marvosym package; alternative: \fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102} +%\renewcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} % no change from default in moderncv.cls +%\renewcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% no change from default in moderncv.cls +%\renewcommand*{\labelitemiv} {\labelitemiii} % no change from default in moderncv.cls + +\renewcommand*{\addresssymbol} {} +\renewcommand*{\mobilephonesymbol} {\hbox to 1.1em{\textbf{M}}~}% 1em is the width of the M capital in most fonts +\renewcommand*{\fixedphonesymbol} {\hbox to 1.1em{\textbf{T}}~} +\renewcommand*{\faxphonesymbol} {\hbox to 1.1em{\textbf{F}}~} +\renewcommand*{\emailsymbol} {\hbox to 1.1em{\textbf{E}}~} +\renewcommand*{\homepagesymbol} {\hbox to 1.1em{\textbf{W}}~} +\renewcommand*{\linkedinsocialsymbol}{\hbox to 1.1em{\textbf{in}}~} +\renewcommand*{\twittersocialsymbol} {\hbox to 1.1em{\textbf{tw}}~} +\renewcommand*{\githubsocialsymbol} {\hbox to 1.1em{\textbf{gh}}~} + +\renewcommand*{\listitemsymbol} {\labelitemi~} + + +\endinput + + +%% end of file `moderncviconsletters.sty'. diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty new file mode 100644 index 00000000000..3a54f57c4a7 --- /dev/null +++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty @@ -0,0 +1,230 @@ +%% start of file `moderncviconsmarvosym.sty'. +%% Copyright 2013-2013 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/. + + +%------------------------------------------------------------------------------- +% identification +%------------------------------------------------------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{moderncviconsmarvosym}[2013/04/23 v1.5.0 modern curriculum vitae and letter icons: marvosym] + + +%------------------------------------------------------------------------------- +% required packages +%------------------------------------------------------------------------------- +% MarVoSym font +%\RequirePackage{marvosym} +\newcommand*{\marvosymbol}[1]{} +%\ifxetexorluatex +% \renewcommand*{\marvosymbol}[1]{{\fontspec{MarVoSym}\char#1}} +%\else + \renewcommand*{\marvosymbol}[1]{{\fontfamily{mvs}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char#1}} +%\fi + +% tikz drawings +\RequirePackage{tikz} + + +%------------------------------------------------------------------------------- +% symbols definition +%------------------------------------------------------------------------------- +\renewcommand*{\labelitemi} {\strut\textcolor{color1}{\marvosymbol{123}}} % equivalent to \Neutral from marvosym package; alternative: \fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102} +%\renewcommand*{\labelitemii} {\strut\textcolor{color1}{\large\bfseries-}} % no change from default in moderncv.cls +%\renewcommand*{\labelitemiii} {\strut\textcolor{color1}{\rmfamily\textperiodcentered}}% no change from default in moderncv.cls +%\renewcommand*{\labelitemiv} {\labelitemiii} % no change from default in moderncv.cls + +\renewcommand*{\addresssymbol} {} +\renewcommand*{\mobilephonesymbol} {\marvosymbol{72}~} +\renewcommand*{\fixedphonesymbol} {\marvosymbol{84}~} +\renewcommand*{\faxphonesymbol} {\marvosymbol{117}~} +\renewcommand*{\emailsymbol} {\marvosymbol{66}~} +\renewcommand*{\homepagesymbol} {{\Large\marvosymbol{205}}~} +\renewcommand*{\linkedinsocialsymbol}{% + \protect\raisebox{-0.165em}{% + \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt] + \protect\begin{scope}[cm={{0.60,0.0,0.0,0.60,(346.39,123.07)}}] + \protect\path[fill=color2] + (381,202) -- (434,202) .. controls (439,202) and (442,205) .. + (442,210) -- (442,264) .. controls (442,268) and (439,272) .. + (434,272) -- (381,272) .. controls (376,272) and (372,268) .. + (372,264) -- (372,210) .. controls (372,205) and (376,202) .. + (381,202) -- cycle; + \protect\begin{scope}[xscale=0.98, yscale=1.02, fill=white] + \protect\path[fill=white] + (403,253) -- (403,224) -- (394,224) -- (394,253) -- + cycle(398,211) .. controls (397,211) and (395,212) .. + (395,213) .. controls (394,213) and (393,215) .. + (393,216) .. controls (393,217) and (394,218) .. + (395,219) .. controls (395,220) and (397,220) .. + (398,220) .. controls (400,220) and (401,220) .. + (402,219) .. controls (402,218) and (403,217) .. + (403,216) .. controls (403,215) and (402,213) .. + (402,213) .. controls (401,212) and (400,211) .. + (398,211) -- cycle; + \protect\path[fill=white] + (410,253) -- (419,253) -- + (419,236) .. controls (419,236) and (419,235) .. + (419,235) .. controls (419,235) and (419,234) .. + (419,234) .. controls (419,233) and (420,232) .. + (421,232) .. controls (422,231) and (423,231) .. + (424,231) .. controls (425,231) and (427,231) .. + (427,232) .. controls (428,234) and (428,235) .. + (428,237) -- (428,253) -- (437,253) -- + (437,236) .. controls (437,232) and (436,228) .. + (434,226) .. controls (433,224) and (430,223) .. + (427,223) .. controls (425,223) and (423,224) .. + (421,225) .. controls (420,226) and (419,227) .. + (418,228) -- (418,228) -- (417,224) -- + (410,224) .. controls (410,225) and (410,227) .. + (410,228) .. controls (410,230) and (410,231) .. + (410,233) -- cycle; + \protect\end{scope}% + \protect\end{scope}% + \protect\end{tikzpicture}}% + ~} +\renewcommand*{\twittersocialsymbol} {% + \protect\raisebox{0em}{% + \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.005, yscale=-0.005, inner sep=0pt, outer sep=0pt] + \protect\path[fill=color2] + (2000, 192) .. controls (1926, 225) and (1847, 247) .. + (1764, 257) .. controls (1849, 206) and (1914, 126) .. + (1945, 30) .. controls (1865, 77) and (1778, 111) .. + (1684, 130) .. controls (1609, 50) and (1503, 0) .. + (1385, 0) .. controls (1158, 0) and ( 974, 184) .. + ( 974, 410) .. controls ( 974, 442) and ( 978, 474) .. + ( 985, 504) .. controls ( 644, 487) and ( 342, 323) .. + ( 139, 75) .. controls ( 104, 136) and ( 84, 206) .. + ( 84, 281) .. controls ( 84, 424) and ( 156, 549) .. + ( 266, 623) .. controls ( 199, 621) and ( 136, 602) .. + ( 80, 572) .. controls ( 80, 573) and ( 80, 575) .. + ( 80, 577) .. controls ( 80, 776) and ( 222, 941) .. + ( 409, 979) .. controls ( 375, 988) and ( 339, 993) .. + ( 301, 993) .. controls ( 275, 993) and ( 249, 991) .. + ( 224, 986) .. controls ( 276,1149) and ( 428,1268) .. + ( 607,1271) .. controls ( 467,1381) and ( 290,1447) .. + ( 98,1447) .. controls ( 65,1447) and ( 32,1445) .. + ( 0,1441) .. controls ( 182,1557) and ( 397,1625) .. + ( 629,1625) .. controls (1384,1625) and (1796,1000) .. + (1796, 458) .. controls (1796, 440) and (1796, 422) .. + (1795, 405) .. controls (1875, 347) and (1945, 275) .. + (2000, 192); + \protect\end{tikzpicture}}% + ~} +\renewcommand*{\githubsocialsymbol} {% + \protect\raisebox{-0.15em}{% + \protect\begin{tikzpicture}[x=0.08em, y=0.08em, xscale=0.25, yscale=-0.25, inner sep=0pt, outer sep=0pt] + \protect\begin{scope}[shift={(507,387)}] + \protect\path[fill=color2] + (117, 60) .. controls (117, 71) and (108, 81) .. + ( 96, 81) .. controls ( 85, 81) and ( 75, 71) .. + ( 75, 60) .. controls ( 75, 48) and ( 85, 39) .. + ( 96, 39) .. controls (108, 39) and (117, 48) .. + (117, 60) -- cycle; + \protect\path[cm={{0.88,0.0,0.0,0.88,(11.10,6.89)}}, fill=white] + (117, 60) .. controls (117, 71) and (108, 81) .. + ( 96, 81) .. controls ( 85, 81) and ( 75, 71) .. + ( 75, 60) .. controls ( 75, 48) and ( 85, 39) .. + ( 96, 39) .. controls (108, 39) and (117, 48) .. + (117, 60) -- cycle; + \protect\path[fill=color2, nonzero rule] + (103, 45) .. controls (103, 45) and (101, 46) .. + (101, 47) -- (100, 47) -- + ( 99, 47) .. controls ( 99, 47) and ( 98, 47) .. + ( 97, 47) .. controls ( 94, 47) and ( 93, 47) .. + ( 92, 47) -- ( 92, 47) -- + ( 91, 47) .. controls ( 90, 46) and ( 88, 45) .. + ( 88, 45) .. controls ( 88, 45) and ( 88, 45) .. + ( 87, 45) .. controls ( 87, 45) and ( 87, 45) .. + ( 87, 45) .. controls ( 86, 46) and ( 86, 48) .. + ( 86, 49) -- ( 87, 50) -- + ( 86, 51) .. controls ( 85, 51) and ( 85, 52) .. + ( 85, 53) .. controls ( 85, 54) and ( 85, 57) .. + ( 85, 58) .. controls ( 85, 58) and ( 85, 58) .. + ( 82, 59) .. controls ( 79, 59) and ( 77, 59) .. + ( 77, 59) .. controls ( 77, 59) and ( 77, 59) .. + ( 78, 59) .. controls ( 80, 59) and ( 83, 59) .. + ( 85, 59) .. controls ( 85, 59) and ( 85, 59) .. + ( 85, 59) .. controls ( 86, 59) and ( 86, 59) .. + ( 86, 59) .. controls ( 86, 59) and ( 85, 59) .. + ( 84, 59) .. controls ( 82, 60) and ( 80, 60) .. + ( 79, 60) .. controls ( 78, 61) and ( 77, 61) .. + ( 77, 61) .. controls ( 77, 61) and ( 78, 61) .. + ( 79, 61) .. controls ( 81, 60) and ( 83, 60) .. + ( 85, 60) .. controls ( 86, 60) and ( 86, 60) .. + ( 86, 60) .. controls ( 86, 60) and ( 87, 61) .. + ( 88, 62) .. controls ( 89, 63) and ( 90, 63) .. + ( 92, 63) .. controls ( 92, 63) and ( 93, 64) .. + ( 93, 64) .. controls ( 93, 64) and ( 93, 64) .. + ( 93, 64) .. controls ( 92, 64) and ( 92, 65) .. + ( 92, 65) .. controls ( 92, 66) and ( 90, 66) .. + ( 89, 66) .. controls ( 88, 66) and ( 88, 66) .. + ( 87, 65) .. controls ( 87, 64) and ( 86, 63) .. + ( 86, 63) .. controls ( 85, 63) and ( 84, 63) .. + ( 84, 63) .. controls ( 84, 63) and ( 84, 63) .. + ( 84, 63) .. controls ( 85, 64) and ( 86, 65) .. + ( 86, 66) .. controls ( 87, 67) and ( 87, 68) .. + ( 88, 68) .. controls ( 89, 68) and ( 89, 68) .. + ( 90, 68) -- ( 92, 68) -- ( 92, 70) -- ( 92, 72) -- + ( 91, 72) .. controls ( 91, 72) and ( 91, 73) .. + ( 91, 73) .. controls ( 90, 73) and ( 90, 73) .. + ( 91, 73) .. controls ( 92, 73) and ( 92, 73) .. + ( 92, 73) .. controls ( 93, 73) and ( 93, 73) .. + ( 93, 70) .. controls ( 93, 67) and ( 93, 67) .. + ( 94, 66) -- ( 94, 66) -- + ( 94, 69) .. controls ( 94, 71) and ( 94, 73) .. + ( 94, 73) .. controls ( 94, 73) and ( 94, 73) .. + ( 93, 74) .. controls ( 93, 74) and ( 93, 74) .. + ( 93, 74) .. controls ( 93, 74) and ( 93, 74) .. + ( 94, 74) .. controls ( 94, 74) and ( 95, 74) .. + ( 96, 73) .. controls ( 96, 72) and ( 96, 71) .. + ( 96, 68) -- ( 96, 66) -- ( 96, 66) -- + ( 96, 69) .. controls ( 96, 72) and ( 96, 72) .. + ( 97, 73) .. controls ( 97, 74) and ( 99, 74) .. + ( 99, 74) .. controls ( 99, 74) and ( 99, 74) .. + ( 99, 73) .. controls ( 99, 73) and ( 98, 73) .. + ( 98, 72) .. controls ( 98, 72) and ( 98, 66) .. + ( 98, 66) .. controls ( 98, 66) and ( 99, 66) .. + ( 99, 66) .. controls ( 99, 67) and ( 99, 67) .. + ( 99, 69) .. controls ( 99, 71) and ( 99, 72) .. + ( 99, 72) .. controls ( 99, 73) and (100, 73) .. + (100, 73) .. controls (101, 73) and (101, 73) .. + (101, 73) .. controls (102, 73) and (102, 73) .. + (102, 73) .. controls (101, 72) and (101, 72) .. + (101, 69) .. controls (101, 66) and (101, 65) .. + (100, 65) .. controls (100, 64) and (100, 64) .. + (100, 64) -- ( 99, 64) -- + (100, 63) .. controls (101, 63) and (102, 63) .. + (103, 63) .. controls (104, 62) and (106, 61) .. + (106, 60) -- (106, 60) -- + (107, 60) .. controls (109, 60) and (113, 60) .. + (115, 61) .. controls (115, 61) and (115, 61) .. + (115, 61) .. controls (115, 60) and (111, 60) .. + (108, 59) .. controls (107, 59) and (107, 59) .. + (107, 59) .. controls (107, 59) and (107, 59) .. + (107, 59) -- (107, 59) -- + (108, 59) .. controls (110, 59) and (112, 59) .. + (114, 59) .. controls (115, 59) and (115, 59) .. + (115, 59) .. controls (115, 59) and (112, 59) .. + (109, 59) .. controls (108, 58) and (107, 58) .. + (107, 58) .. controls (107, 58) and (107, 58) .. + (107, 58) .. controls (107, 57) and (107, 56) .. + (107, 55) .. controls (107, 53) and (107, 53) .. + (107, 53) .. controls (107, 52) and (106, 51) .. + (106, 50) -- (105, 50) -- + (105, 48) .. controls (105, 47) and (105, 46) .. + (105, 46) -- (105, 45) -- + (104, 45) .. controls (104, 45) and (104, 45) .. + (103, 45) -- cycle; + \protect\end{scope}% + \protect\end{tikzpicture}}% + ~} + + +\endinput + + +%% end of file `moderncviconsmarvosym.sty'. diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty index 9717999060a..b32131708c0 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstylebanking}[2013/02/09 v1.3.0 modern curriculum vitae and letter style scheme: banking] +\ProvidesPackage{moderncvstylebanking}[2013/04/23 v1.5.0 modern curriculum vitae and letter style scheme: banking] %------------------------------------------------------------------------------- @@ -19,11 +19,6 @@ %------------------------------------------------------------------------------- -% package options -%------------------------------------------------------------------------------- - - -%------------------------------------------------------------------------------- % overall style definition %------------------------------------------------------------------------------- % fonts @@ -43,11 +38,7 @@ %\fi % symbols -\renewcommand*{\mobilesymbol}{\marvosymbol{72}~} -\renewcommand*{\phonesymbol}{\marvosymbol{84}~} -\renewcommand*{\faxsymbol}{\marvosymbol{117}~} -\renewcommand*{\emailsymbol}{\marvosymbol{66}~} -\renewcommand*{\homepagesymbol}{{\Large\marvosymbol{205}}~} +\moderncvicons{awesome} % commands \newcommand*{\maketitlesymbol}{% @@ -88,7 +79,7 @@ \parbox{\maketitlewidth}{% \centering% % name and title - \namestyle{\@firstname~\@familyname}% + \namestyle{\@firstname~\@lastname}% \ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}\\% \isundefined doesn't work on \@title, as LaTeX itself defines \@title (before it possibly gets redefined by \title) % detailed information \addressfont\color{color2}% @@ -96,11 +87,12 @@ \ifthenelse{\equal{\@addresscity}{}}{}{\addtomaketitle[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\addtomaketitle[~--~]{\@addresscountry}}% \flushmaketitle\@firstmaketitleelementtrue\\}% - \ifthenelse{\isundefined{\@mobile}}{}{\addtomaketitle{\mobilesymbol\@mobile}}% - \ifthenelse{\isundefined{\@phone}}{}{\addtomaketitle{\phonesymbol\@phone}}% - \ifthenelse{\isundefined{\@fax}}{}{\addtomaketitle{\faxsymbol\@fax}}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \addtomaketitle{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{\@email}}{}{\addtomaketitle{\emailsymbol\emaillink{\@email}}}% \ifthenelse{\isundefined{\@homepage}}{}{\addtomaketitle{\homepagesymbol\httplink{\@homepage}}}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \addtomaketitle{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{\@extrainfo}}{}{\addtomaketitle{\@extrainfo}}% \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 @@ -167,20 +159,20 @@ {{\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]{% +\RenewDocumentCommand{\section}{sm}{% \par\addvspace{2.5ex}% \phantomsection{}% reset the anchor for hyperrefs - \addcontentsline{toc}{section}{#1}% - \strut\sectionstyle{#1}% + \addcontentsline{toc}{section}{#2}% + \strut\sectionstyle{#2}% {\color{color1}\hrule}% \par\nobreak\addvspace{1ex}\@afterheading} \newcommand{\subsectionfill}{\xleaders\hbox to 0.35em{\scriptsize.}\hfill}% different subsectionfills will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible -\renewcommand*{\subsection}[1]{% +\RenewDocumentCommand{\subsection}{sm}{% \par\addvspace{1ex}% \phantomsection{}% - \addcontentsline{toc}{subsection}{#1}% - \strut\subsectionstyle{#1}{\color{color1}{\subsectionfill}}% + \addcontentsline{toc}{subsection}{#2}% + \strut\subsectionstyle{#2}{\color{color1}{\subsectionfill}}% \par\nobreak\addvspace{0.5ex}\@afterheading} \renewcommand*{\cvitem}[3][.25em]{% @@ -284,7 +276,7 @@ \renewcommand*{\makeletterclosing}{ \@closing\\[3em]% - {\bfseries \@firstname~\@familyname}% + {\bfseries \@firstname~\@lastname}% \ifthenelse{\isundefined{\@enclosure}}{}{% \\% \vfill% diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty index 8682d7806ee..87543ee076a 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty @@ -10,18 +10,14 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstylecasual}[2013/02/09 v1.3.0 modern curriculum vitae and letter style scheme: casual] +\ProvidesPackage{moderncvstylecasual}[2013/04/23 v1.5.0 modern curriculum vitae and letter style scheme: casual] %------------------------------------------------------------------------------- % required packages %------------------------------------------------------------------------------- - - -%------------------------------------------------------------------------------- -% package options -%------------------------------------------------------------------------------- \RequirePackage{moderncvstyleclassic} +\moderncvicons{awesome} %------------------------------------------------------------------------------- @@ -91,7 +87,7 @@ \@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 + \raggedleft\namefont{\color{color2!50}\@firstname} {\color{color2}\@lastname}}\\[-.35em]% alternate design: \MakeLowercase and no space {\color{color2!50}\rule{\textwidth}{.25ex}}% % optional title \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\null\hfill\titlestyle{\@title}}\\[2.5em]% \null is required as there is no box on the line after \\, so glue (and leaders) disappears; this is in contrast to after \par, where the next line starts with an indent box (even after \noindent). @@ -108,15 +104,17 @@ \parbox[b]{\footerwidth}{% \centering% \color{color2}\addressfont% + \vspace{\baselineskip}% forces a white line to ensure space between main text and footer (as footer height can't be known in advance) \ifthenelse{\isundefined{\@addressstreet}}{}{\addtofooter[]{\addresssymbol\@addressstreet}% \ifthenelse{\equal{\@addresscity}{}}{}{\addtofooter[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\addtofooter[~--~]{\@addresscountry}}% \flushfooter\@firstfooterelementtrue\\}% - \ifthenelse{\isundefined{\@mobile}}{}{\addtofooter{\mobilesymbol\@mobile}}% - \ifthenelse{\isundefined{\@phone}}{}{\addtofooter{\phonesymbol\@phone}}% - \ifthenelse{\isundefined{\@fax}}{}{\addtofooter{\faxsymbol\@fax}}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \addtofooter{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{\@email}}{}{\addtofooter{\emailsymbol\emaillink{\@email}}}% \ifthenelse{\isundefined{\@homepage}}{}{\addtofooter{\homepagesymbol\httplink{\@homepage}}}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \addtofooter{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{\@extrainfo}}{}{\addtofooter{\@extrainfo}}% \ifthenelse{\lengthtest{\footerboxwidth=0pt}}{}{\flushfooter}% the lengthtest is required to avoid flushing an empty footer, which could cause a blank line due to the \\ after the address, if no other personal info is used }}}% @@ -156,17 +154,19 @@ \parbox[b]{\footerwidth}{% \centering% \addressfont\color{color2}% + \vspace{\baselineskip}% forces a white line to ensure space between main text and footer (as footer height can't be known in advance) \vspace{-\baselineskip}% to cancel out the extra vertical space taken by the name (below) and ensure perfect alignment of letter and cv footers - \strut{\bfseries\upshape\@firstname~\@familyname}\\% the \strut is required to ensure the line is exactly \baselineskip tall + \strut{\bfseries\upshape\@firstname~\@lastname}\\% the \strut is required to ensure the line is exactly \baselineskip tall \ifthenelse{\isundefined{\@addressstreet}}{}{\addtofooter[]{\addresssymbol\@addressstreet}% \ifthenelse{\equal{\@addresscity}{}}{}{\addtofooter[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\addtofooter[~--~]{\@addresscountry}}% \flushfooter\@firstfooterelementtrue\\}% - \ifthenelse{\isundefined{\@mobile}}{}{\addtofooter{\mobilesymbol\@mobile}}% - \ifthenelse{\isundefined{\@phone}}{}{\addtofooter{\phonesymbol\@phone}}% - \ifthenelse{\isundefined{\@fax}}{}{\addtofooter{\faxsymbol\@fax}}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \addtofooter{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{\@email}}{}{\addtofooter{\emailsymbol\emaillink{\@email}}}% \ifthenelse{\isundefined{\@homepage}}{}{\addtofooter{\homepagesymbol\httplink{\@homepage}}}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \addtofooter{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{\@extrainfo}}{}{\addtofooter{\@extrainfo}}% \ifthenelse{\lengthtest{\footerboxwidth=0pt}}{}{\flushfooter}% the lengthtest is required to avoid flushing an empty footer, which could cause a blank line due to the \\ after the address, if no other personal info is used }}}% @@ -174,7 +174,7 @@ \renewcommand*{\makeletterclosing}{ \@closing\\[3em]% - {\bfseries\@firstname~\@familyname}% + {\bfseries\@firstname~\@lastname}% \ifthenelse{\isundefined{\@enclosure}}{}{% \\% \vfil% diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty index 1da3078867b..d584c5a243a 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty @@ -10,23 +10,13 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstyleclassic}[2013/02/09 v1.3.0 modern curriculum vitae and letter style scheme: classic] +\ProvidesPackage{moderncvstyleclassic}[2013/04/23 v1.5.0 modern curriculum vitae and letter style scheme: classic] %------------------------------------------------------------------------------- % required packages %------------------------------------------------------------------------------- - - -%------------------------------------------------------------------------------- -% package options -%------------------------------------------------------------------------------- - - -%------------------------------------------------------------------------------- -% overall style definition -%------------------------------------------------------------------------------- -% fonts +% Latin Modern fonts %\ifxetexorluatex % \setmainfont{Latin Modern Roman} % \setsansfont{Latin Modern Sans} @@ -37,12 +27,12 @@ {} %\fi + +%------------------------------------------------------------------------------- +% overall style definition +%------------------------------------------------------------------------------- % symbols -\renewcommand*{\mobilesymbol}{\marvosymbol{72}~} -\renewcommand*{\phonesymbol}{\marvosymbol{84}~} -\renewcommand*{\faxsymbol}{\marvosymbol{117}~} -\renewcommand*{\emailsymbol}{\marvosymbol{66}~} -\renewcommand*{\homepagesymbol}{{\Large\marvosymbol{205}}~} +\moderncvicons{marvosym} %------------------------------------------------------------------------------- @@ -103,7 +93,13 @@ \renewcommand*{\makecvtitle}{% % recompute lengths (in case we are switching from letter to resume, or vice versa) \recomputecvlengths% - % optional detailed information box + % optional detailed information (pre-rendering) + \def\phonesdetails{}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \protected@edef\phonesdetails{\phonesdetails\protect\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}% + \def\socialsdetails{}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \protected@edef\socialsdetails{\socialsdetails\protect\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}% \newbox{\makecvtitledetailsbox}% \savebox{\makecvtitledetailsbox}{% \addressfont\color{color2}% @@ -111,11 +107,10 @@ \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet% \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}% - \ifthenelse{\isundefined{\@mobile}}{}{\makenewline\mobilesymbol\@mobile}% - \ifthenelse{\isundefined{\@phone}}{}{\makenewline\phonesymbol\@phone}% - \ifthenelse{\isundefined{\@fax}}{}{\makenewline\faxsymbol\@fax}% + \phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}% \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}% + \socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}% \end{tabular} }% @@ -138,11 +133,11 @@ {\setlength{\makecvtitlenamewidth}{\textwidth-\makecvtitledetailswidth-\makecvtitlepicturewidth}}% {}% \begin{minipage}[b]{\makecvtitlenamewidth}% - \namestyle{\@firstname\ \@familyname}% + \namestyle{\@firstname\ \@lastname}% \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}% \end{minipage}% \hfill% - % detailed information + % optional detailed information (rendering) \llap{\usebox{\makecvtitledetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvtitlenamewidth is forced % optional photo (rendering) \usebox{\makecvtitlepicturebox}\\[2.5em]% @@ -155,27 +150,27 @@ \newlength{\baseletterheight} \settoheight{\baseletterheight}{\sectionstyle{o}} \setlength{\baseletterheight}{\baseletterheight-0.95ex} -\renewcommand*{\section}[1]{% +\RenewDocumentCommand{\section}{sm}{% \par\addvspace{2.5ex}% \phantomsection{}% reset the anchor for hyperrefs - \addcontentsline{toc}{section}{#1}% + \addcontentsline{toc}{section}{#2}% \parbox[t]{\hintscolumnwidth}{\strut\raggedleft\raisebox{\baseletterheight}{\color{color1}\rule{\hintscolumnwidth}{0.95ex}}}% \hspace{\separatorcolumnwidth}% - \parbox[t]{\maincolumnwidth}{\strut\sectionstyle{#1}}% + \parbox[t]{\maincolumnwidth}{\strut\sectionstyle{#2}}% \par\nobreak\addvspace{1ex}\@afterheading}% to avoid a pagebreak after the heading -\renewcommand*{\subsection}[1]{% +\RenewDocumentCommand{\subsection}{sm}{% \par\addvspace{1ex}% \phantomsection{}% reset the anchor for hyperrefs - \addcontentsline{toc}{subsection}{#1}% + \addcontentsline{toc}{subsection}{#2}% \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}% - \raggedleft\hintstyle{} &{\strut\subsectionstyle{#1}}% + \raggedleft\hintstyle{} &{\strut\subsectionstyle{#2}}% \end{tabular}% \par\nobreak\addvspace{0.5ex}\@afterheading}% to avoid a pagebreak after the heading \renewcommand*{\cvitem}[3][.25em]{% \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}% - \raggedleft\hintstyle{#2} &{#3}% + \raggedleft\hintstyle{#2} &{#3}% \end{tabular}% \par\addvspace{#1}} @@ -260,13 +255,12 @@ \begin{minipage}{.5\textwidth}% \raggedleft% \addressfont\textcolor{color2}{% - {\bfseries\upshape\@firstname~\@familyname}\@firstdetailselementfalse% + {\bfseries\upshape\@firstname~\@lastname}\@firstdetailselementfalse% \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet% \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}% - \ifthenelse{\isundefined{\@mobile}}{}{\makenewline\mobilesymbol\@mobile}% - \ifthenelse{\isundefined{\@phone}}{}{\makenewline\phonesymbol\@phone}% - \ifthenelse{\isundefined{\@fax}}{}{\makenewline\faxsymbol\@fax}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}% \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}% \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}% \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}% @@ -291,7 +285,7 @@ \renewcommand*{\makeletterclosing}{ \@closing\\[3em]% - {\bfseries \@firstname~\@familyname}% + {\bfseries \@firstname~\@lastname}% \ifthenelse{\isundefined{\@enclosure}}{}{% \\% \vfill% diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty index 85932464d1c..ac1d7a4c394 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstyleempty}[2013/02/09 v1.3.0 modern curriculum vitae scheme: empty] +\ProvidesPackage{moderncvstyleempty}[2013/04/23 v1.5.0 modern curriculum vitae scheme: empty] %------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty index f32b4a09db3..324b11a187c 100644 --- a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty +++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty @@ -10,7 +10,7 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvstyleoldstyle}[2013/02/09 v1.3.0 modern curriculum vitae and letter style scheme: oldstyle] +\ProvidesPackage{moderncvstyleoldstyle}[2013/04/23 v1.5.0 modern curriculum vitae and letter style scheme: oldstyle] %------------------------------------------------------------------------------- @@ -21,11 +21,6 @@ %------------------------------------------------------------------------------- -% package options -%------------------------------------------------------------------------------- - - -%------------------------------------------------------------------------------- % overall style definition %------------------------------------------------------------------------------- % fonts @@ -43,13 +38,7 @@ %\fi % symbols -\renewcommand*{\listitemsymbol}{\labelitemi~} -\renewcommand*{\addresssymbol}{} -\renewcommand*{\mobilesymbol}{\textbf{M}~} -\renewcommand*{\phonesymbol}{\textbf{T}~} -\renewcommand*{\faxsymbol}{\textbf{F}~} -\renewcommand*{\emailsymbol}{\textbf{E}~} -\renewcommand*{\homepagesymbol}{} +\moderncvicons{letters} %------------------------------------------------------------------------------- @@ -138,7 +127,7 @@ \newlength{\makecvtitlepicturewidth}\settowidth{\makecvtitlepicturewidth}{\usebox{\makecvtitlepicturebox}}% \newlength{\makecvtitlenamewidth}\setlength{\makecvtitlenamewidth}{\textwidth-\makecvtitlepicturewidth}% \begin{minipage}[b]{\makecvtitlenamewidth}% - \namestyle{\@firstname\ \@familyname}% + \namestyle{\@firstname\ \@lastname}% \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}% \end{minipage}% % optional photo @@ -153,25 +142,26 @@ \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet% \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}% - \ifthenelse{\isundefined{\@mobile}}{}{\makenewline\mobilesymbol\@mobile}% - \ifthenelse{\isundefined{\@phone}}{}{\makenewline\phonesymbol\@phone}% - \ifthenelse{\isundefined{\@fax}}{}{\makenewline\faxsymbol\@fax}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}% \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}% \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}% \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}} -\renewcommand*{\section}[1]{% +\RenewDocumentCommand{\section}{sm}{% \par\addvspace{2.5ex}% \phantomsection{}% reset the anchor for hyperrefs - \addcontentsline{toc}{section}{#1}% - \strut\sectionstyle{#1}% + \addcontentsline{toc}{section}{#2}% + \strut\sectionstyle{#2}% \par\nobreak\addvspace{1ex}\@afterheading}% to avoid a pagebreak after the heading -\renewcommand*{\subsection}[1]{% +\RenewDocumentCommand{\subsection}{sm}{% \par\addvspace{1ex}% \phantomsection{}% reset the anchor for hyperrefs - \addcontentsline{toc}{subsection}{#1}% - \strut\subsectionstyle{#1}% + \addcontentsline{toc}{subsection}{#2}% + \strut\subsectionstyle{#2}% \par\nobreak\addvspace{0.5ex}\@afterheading}% to avoid a pagebreak after the heading \renewcommand*{\cvitem}[3][.25em]{% @@ -290,15 +280,16 @@ \hspace{0pt}% \marginpar{% \addressfont\textcolor{color2}{% - {\bfseries\@firstname~\@familyname}\@firstdetailselementfalse% + {\bfseries\@firstname~\@lastname}\@firstdetailselementfalse% \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet% \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}% - \ifthenelse{\isundefined{\@mobile}}{}{\makenewline\mobilesymbol\@mobile}% - \ifthenelse{\isundefined{\@phone}}{}{\makenewline\phonesymbol\@phone}% - \ifthenelse{\isundefined{\@fax}}{}{\makenewline\faxsymbol\@fax}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}% \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}% \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}% \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}}% % ensure no extra spacing after \makelettertitle due to a possible blank line % \ignorespacesafterend% not working @@ -306,7 +297,7 @@ \renewcommand*{\makeletterclosing}{ \@closing\\[3em]% - {\bfseries\@firstname~\@familyname}% + {\bfseries\@firstname~\@lastname}% \ifthenelse{\isundefined{\@enclosure}}{}{% \\% \vfill% |