diff --git a/manual/moderncv_userguide.pdf b/manual/moderncv_userguide.pdf index 02d6aa7..6062fbf 100644 Binary files a/manual/moderncv_userguide.pdf and b/manual/moderncv_userguide.pdf differ diff --git a/manual/moderncv_userguide.tex b/manual/moderncv_userguide.tex index ab1c1f2..729bcec 100644 --- a/manual/moderncv_userguide.tex +++ b/manual/moderncv_userguide.tex @@ -1,20 +1,26 @@ -%% moderncv_userguide.tex as shipped with 2021/01/21 v2.1.0 modern curriculum vitae and letter document class (moderncv) +%% moderncv_userguide.tex as shipped with 2022/02/21 v2.3.1 modern curriculum vitae and letter document class (moderncv) % 2021 David Seus, cryptointerest@posteo.de % % 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[a4paper,11pt]{article} +\documentclass[a4paper, 11pt]{article} -\title{\texttt{moderncv} User Guide\\{\small Package version v2.3.1}} +\title{% + \texttt{moderncv} User Guide\\ + {\small Package v2.3.1}% +} % Cristina Sambo, -\author{Package by Xavier Danaux \\ \begin{small}Documentation by David Seus \end{small}} +\author{% + Package by Xavier Danaux\\ + {\small Documentation by David Seus}% +} \date{\today} -%language and encoding options +% language and encoding options \usepackage[english]{babel} -\usepackage{ifxetex,ifluatex} +\usepackage{ifxetex, ifluatex} \newif\ifxetexorluatex \ifxetex \xetexorluatextrue @@ -25,39 +31,41 @@ \xetexorluatexfalse \fi \fi + %%%% PDFLaTeX or LUALaTeX/XeLaTeX %%%%%%% \ifxetexorluatex - %\usepackage{luatextra} -% \usepackage{lualatex-math} - \usepackage{shellesc} % fix a bug for lualatex shellescape - % \usepackage{unicode-math} -% \setmathfont{xits-math.otf} + % \usepackage{luatextra} + % \usepackage{lualatex-math} + \usepackage{shellesc} % fix a bug for lualatex shellescape + % \usepackage{unicode-math} + % \setmathfont{xits-math.otf} \else - %% if pdflatex is used uncomment the following packages. If lualatex is used comment them. - \usepackage[utf8]{inputenx} - %additions for utf8 - \input{ix-utf8enc.dfu} - %% if pdflatex is used uncomment above packages. If lualatex is used comment them. + %% if pdflatex is used uncomment the following packages. If lualatex is used comment them. + \usepackage[utf8]{inputenx} + % additions for utf8 + \input{ix-utf8enc.dfu} + %% if pdflatex is used uncomment above packages. If lualatex is used comment them. \fi -\PassOptionsToPackage{T1}{fontenc} % T2A for cyrillics +\PassOptionsToPackage{T1}{fontenc} % T2A for Cyrillic \usepackage[T1]{fontenc} -%font options +% font options \usepackage{txfonts} \usepackage{marvosym} \usepackage{pifont} -%margins, spacing and page layout -\usepackage[pdftex,colorlinks=true]{hyperref} %(hyperref must be loaded before geometry) +% margins, spacing and page layout +\usepackage[pdftex, colorlinks=true]{hyperref} % hyperref must be loaded before geometry \usepackage[pdftex, marginparwidth=50pt]{geometry} \geometry{top=2.5cm, bottom=3cm} -\setlength{\parindent}{0pt} %(to suppress indentation when starting a new paragraph) -\frenchspacing %(to suppress additional space after a full stop) +\usepackage{parskip} % replace paragraph indentation with vertical spacing +\frenchspacing % to suppress additional space after a full stop +\renewcommand{\arraystretch}{1.1} -%packages +% packages \usepackage{graphicx} \usepackage{xcolor} -\usepackage[labelfont=sl,font=small,width=0.9\textwidth]{caption} +\usepackage[labelfont=sl, font=small, width=0.9\textwidth]{caption} \usepackage{marvosym} \usepackage{latexsym} \usepackage{url} @@ -65,62 +73,68 @@ \usepackage{xspace} % To get the spacing after macros right \usepackage{mparhack} % To get marginpar right \usepackage{microtype} -%**************************************************************************************************** +\usepackage{multicol} % Multicolumn text for long lists +% **************************************************************************************************** % Setup code listings % **************************************************************************************************** \usepackage{listings} -%\lstset{emph={trueIndex,root},emphstyle=\color{BlueViolet}}%\underbar} % for special keywords -\lstset{language=[LaTeX]Tex,%C++, - morekeywords={PassOptionsToPackage,selectlanguage}, - keywordstyle=\color{cvblue},%\bfseries, +% \lstset{emph={trueIndex, root}, emphstyle=\color{BlueViolet}}% \underbar} % for special keywords +\lstset{language=[LaTeX]Tex, % C++, + morekeywords={PassOptionsToPackage, selectlanguage}, + keywordstyle=\color{cvblue}, % \bfseries, basicstyle=\small\ttfamily, - %identifierstyle=\color{NavyBlue}, + % identifierstyle=\color{NavyBlue}, commentstyle=\color{gray}\ttfamily, stringstyle=\rmfamily, - numbers=none,%left,% - numberstyle=\scriptsize,%\tiny + numbers=none, % left, + numberstyle=\scriptsize, % \tiny stepnumber=5, numbersep=8pt, showstringspaces=false, breaklines=true, - %frameround=ftff, - %frame=single, - belowcaptionskip=.75\baselineskip, -% frame=L, - emph={cvitem,cventry,cvdoubleentry,cvdoubleitem,moderncvstyle,moderncvcolor,% - cvskill,cvskilllegend,cvskillplainlegend,cvskillhead,cvskillentry,nopagenumbers,% - name,address,email,link,social,phone,homepage,extrainfo,photo,quote,section,subsection,setlength,NewDocumentCommand,definecolor,colorlet,cvitemwithcomment},% - emphstyle={\color{cvblue}},% - emph={[2]familydefault,sfdefault,rmdefault,inputenc,moderncv,document,bibliographyitemlabel,% - addresssymbol,mobilephonesymbol,fixedphonesymbol,faxphonesymbol,emailsymbol,homepagesymbol,linkedinsocialsymbol,% - xingsocialsymbol,twittersocialsymbol,githubsocialsymbol,gitlabsocialsymbol,% - stackoverflowsocialsymbol,bitbucketsocialsymbol,skypesocialsymbol,orcidsocialsymbol,researchgatesocialsymbol,% - researcheridsocialsymbol,telegramsocialsymbol,whatsappsocialsymbol,signalsocialsymbol,matrixsocialsymbol,googlescholarsocialsymbol,cvstretchability,bornsymbol},% + % frameround=ftff, + % frame=single, + belowcaptionskip=0.75\baselineskip, + % frame=L, + emph={ + cvitem, cventry, cvdoubleentry, cvdoubleitem, cvlistitem, cvlistdoubleitem, cvcolumns, moderncvstyle, moderncvcolor, + cvskill, cvskilllegend, cvskillplainlegend, cvskillhead, cvskillentry, nopagenumbers, + name, born, address, email, link, social, phone, homepage, extrainfo, photo, quote, section, subsection, setlength, NewDocumentCommand, definecolor, colorlet, cvitemwithcomment + }, + emphstyle={\color{cvblue}}, + emph={[2] + familydefault, sfdefault, rmdefault, inputenc, moderncv, document, bibliographyitemlabel, + addresssymbol, mobilephonesymbol, fixedphonesymbol, faxphonesymbol, emailsymbol, homepagesymbol, linkedinsocialsymbol, + xingsocialsymbol, twittersocialsymbol, githubsocialsymbol, gitlabsocialsymbol, + stackoverflowsocialsymbol, bitbucketsocialsymbol, skypesocialsymbol, orcidsocialsymbol, researchgatesocialsymbol, + researcheridsocialsymbol, telegramsocialsymbol, whatsappsocialsymbol, signalsocialsymbol, matrixsocialsymbol, googlescholarsocialsymbol, cvstretchability, bornsymbol + }, emphstyle={[2]\color{cvblue!60!cvgrey}\bfseries}, + literate={{é}{{\'e}}1}, } \usepackage{hyperref} \hypersetup{% unicode=true, -% draft, % hyperref's draft mode, for printing see below + % draft, % hyperref's draft mode, for printing see below colorlinks=true, linktocpage=true, pdfstartpage=3, pdfstartview=FitV,% % uncomment the following line if you want to have black links (e.g., for printing) - %colorlinks=false, linktocpage=false, pdfstartpage=3, pdfstartview=FitV, pdfborder={0 0 0},% + % colorlinks=false, linktocpage=false, pdfstartpage=3, pdfstartview=FitV, pdfborder={0 0 0},% breaklinks=true, pageanchor=true,% pdfpagemode=UseNone, % % pdfpagemode=UseOutlines,% plainpages=false, bookmarksnumbered, bookmarksopen=true, bookmarksopenlevel=1,% - hypertexnames=true, pdfhighlight=/O,%nesting=true,%frenchlinks,% - urlcolor=cvblue, linkcolor=cvblue, citecolor=cvblue, %pagecolor=RoyalBlue,% - %urlcolor=Black, linkcolor=Black, citecolor=Black, %pagecolor=Black,% -% pdfborder={0 0 1}, % width of pdf link border 0 0 1, 0 0 0 = colorlinks -% linkbordercolor=gray!15, -% citebordercolor=green!15, + hypertexnames=true, pdfhighlight=/O, % nesting=true, % frenchlinks,% + urlcolor=cvblue, linkcolor=cvblue, citecolor=cvblue, % pagecolor=RoyalBlue,% + % urlcolor=Black, linkcolor=Black, citecolor=Black, % pagecolor=Black,% + % pdfborder={0 0 1}, % width of pdf link border 0 0 1, 0 0 0 = colorlinks + % linkbordercolor=gray!15, + % citebordercolor=green!15, } -%my commands -% automatically read known bugs file. works only for single ligned entries +% my commands +% automatically read known bugs file. works only for single lined entries % \newread\myread% Get a file handle grip called \myread % \newcommand{\loaditemsfromfile}[2][enumerate]{% % % \DeclareDocumentCommand\multiLineRead{}{} @@ -139,7 +153,7 @@ % \ifx\localvariable\matchmacro\relax % \def\multiLineRead{} % \else -% \edef\multiLineRead{\multiLineRead,Test} %\localvariable +% \edef\multiLineRead{\multiLineRead, Test} % \localvariable % \item \multiLineRead % \fi % \fi @@ -161,7 +175,7 @@ % \openin\myread=#2 % \begingroup\endlinechar=-1 % \begin{#1} % Use an itemize enviroment with #1 as name of the env. -% \item TEst +% \item Test % \@whilesw\unless\ifeof\myread\fi{% % \read\myread to \dataline % \noindent"\linetomatch" @@ -178,124 +192,110 @@ % }% % \makeatother +\definecolor{cvblue}{rgb}{0.22, 0.45, 0.70} +\definecolor{cvgreen}{rgb}{0.35, 0.70, 0.30} +\definecolor{cvred}{rgb}{0.95, 0.20, 0.20} +\definecolor{cvorange}{rgb}{0.95, 0.55, 0.15} +\definecolor{cvgrey}{rgb}{0.75, 0.75, 0.75} +\definecolor{cvburgundy}{rgb}{0.596078, 0, 0} % burgundy: 139/255 (0.545098) or 152/255 (0.596078) +\definecolor{cvgrey}{rgb}{0.55, 0.55, 0.55} +\definecolor{cvpurple}{rgb}{0.50, 0.33, 0.80} - -\definecolor{cvblue}{rgb}{0.22,0.45,0.70} -\definecolor{cvgreen}{rgb}{0.35,0.70,0.30} -\definecolor{cvred}{rgb}{0.95,0.20,0.20} -\definecolor{cvorange}{rgb}{0.95,0.55,0.15} -\definecolor{cvgrey}{rgb}{0.75,0.75,0.75} -\definecolor{cvburgundy}{rgb}{0.596078,0,0}% burgundy: 139/255 (0.545098) or 152/255 (0.596078) -\definecolor{cvgrey}{rgb}{0.55,0.55,0.55} -\definecolor{cvpurple}{rgb}{0.50,0.33,0.80}% purple - +% macros \newcommand{\todo}[1]{\marginpar{\raggedright \textcolor{red}{[\textbf{TODO:} #1]}}} \newcommand{\todox}[1]{\textcolor{red}{[\textbf{TODO:} #1]}} -% macros -% \newcommand{\code}[1]{\texttt{#1}} -% \newcommand{\Code}[1]{\texttt{#1} } \newcommand{\code}[1]{\lstinline!#1!} -\newcommand{\Code}[1]{\lstinline!#1!~} %\lstinline!#1! \newcommand{\moderncv}{\code{moderncv}} -\newcommand{\Moderncv}{\Code{moderncv}} +\newcommand{\Moderncv}{\moderncv~} \newcommand{\github}{GitHub} -\newcommand{\Github}{GitHub~} +\newcommand{\Github}{\github~} \newcommand{\ctan}{CTAN} -\newcommand{\Ctan}{CTAN~} +\newcommand{\Ctan}{\ctan~} \newcommand{\cvtemplate}{\code{template.tex}} -\newcommand{\Cvtemplate}{\code{template.tex}~} -\newcommand{\latex}{\LaTeX} -\newcommand{\Latex}{\LaTeX\~} +\newcommand{\Cvtemplate}{\cvtemplate~} +\newcommand{\Latex}{\LaTeX~} \newcommand{\biblatex}{BibLaTeX} -\newcommand{\Biblatex}{BibLaTeX~} +\newcommand{\Biblatex}{\biblatex~} \newcommand{\cvdoccolorbox}[1]{{\color{#1}\rule{4ex}{2ex}}} -% current Code repository. +% current code repository \newcommand{\moderncvGithub}{\url{https://github.com/moderncv/moderncv}} \newcommand{\moderncvCtan}{\url{https://ctan.org/pkg/moderncv}} -%================== + +% ================== % DOCUMENT BEGINNING -%================== +% ================== \begin{document} \maketitle \begin{abstract} -\noindent -\Moderncv provides a document class for typesetting modern curriculum vit\ae~ and corresponding cover letters -for applications in various styles. -Five predefined styles are available and each of the styles can be adjusted through options adjusting headings and colors. -It is fairly customizable, allowing the user to adjust the look and feel of each style to their liking. -Several macros allow the user to add content to the CV and format it in a consistent way. -A letter of motivation consistent with the style is part of the template as well. + \noindent + The \Moderncv package provides a document class for typesetting modern curriculum vit\ae{} and cover letters in various styles. + Five predefined styles are available, each of which can be adjusted through various options for headings, footers and colors. + It is fairly customizable, allowing the user to adjust the look and feel of each style to their liking. + Several macros allow the user to add content to the CV and format it in a consistent way. + A letter of motivation consistent with the style is part of the template as well. \end{abstract} \tableofcontents + + \section{Getting started} \subsection{How to read this manual} This manual is organized as follows. -The present section contains information on how to get started with the \Moderncv -package, i.e. how to install required packages to your system. -% -% \emph{Note, that it is assumed, that you know how to install \LaTeX\ packages in case some are missing}. -% -Section \ref{section:moderncvTemplate} provides a step by step guide of the \Moderncv template file and how to work with it. -% -Section \ref{section:customization} discusses details of the customizations that can be done by the user: -The different styles, their options, colors and tips and tricks. -% -Section \ref{section:implementationDetails} contains information about the packages being used by \moderncv, -known problems and possible solutions that have been found. +The current section explains on how to get started with the \Moderncv package, i.e. how to install required packages. +% \emph{Note that it is assumed that you know how to install \Latex packages in case some are missing.} +Section \ref{section:moderncvTemplate} explains how to work with the \Moderncv template file step by step. +Section \ref{section:customization} details the customizations that the user can make: the different styles, their options, colors and tips and tricks. +Section \ref{section:implementationDetails} details the packages that \Moderncv uses, known problems and possible solutions to those problems. \subsection{Installation instructions} -If the \Moderncv package does not ship with your \LaTeX\ distribution, or the installed version is too old, -grab the \Moderncv code from \Ctan or \github: \medskip +If the \Moderncv package does not ship with your \Latex distribution or if the installed version is too old, grab the \Moderncv code from \Ctan or \github: \begin{tabular}{l} - \moderncvCtan \\%[.5ex] + \moderncvCtan \\% [.5ex] \moderncvGithub \end{tabular} -\paragraph{Note.} Depending on your \LaTeX\ distribution some additional packages might have to be installed. -Section \ref{section:implementationDetails:requiredPackages} lists all packages that \Moderncv requires to be installed on your system. +\paragraph{Note.} +Depending on your \Latex distribution, you may have to install some additional packages. +Section \ref{section:implementationDetails:requiredPackages} lists all the packages that \Moderncv requires to be installed on your system. -\section{The \texttt{moderncv} template step by step.} -This section is meant as a quick reference to the \Moderncv package and should contain enough information -to get a first working curriculum vit\ae~ typeset. + + +\section{The \texttt{moderncv} template step by step} +This section is meant to be a quick reference to the \Moderncv package and should contain enough information to get a first working CV typeset. \label{section:moderncvTemplate} The easiest way to get started with \Moderncv is to adjust the template that comes with the package. -In case the \Moderncv package is part of your \LaTeX\ distribution, search for the folder \Moderncv -on your system containing all files of the package. +If the \Moderncv package is part of your \Latex distribution, search for the folder \Moderncv on your system containing all files of the package. In this folder, there should be a file called \cvtemplate. -In case you downloaded the package from \Github or \Ctan move into the folder of the newly downloaded (and possibly extracted) package to -find the file \Cvtemplate there. +If you downloaded the package from \Github or \Ctan, go to the folder of the newly downloaded (and possibly extracted) package to find the file \Cvtemplate there. -\paragraph{Note.} If you downloaded \Moderncv from \Github or \Ctan and you move the \Cvtemplate to another folder make sure to adjust the \Code{TEXINPUTS} variable to find the newly downloaded package. -Otherwise either the old package version gets used or \LaTeX\ throws an error if there is no other version installed. +\paragraph{Note.} +If you downloaded \Moderncv from \Github or \Ctan and moved \Cvtemplate to another folder, make sure to adjust the \code{TEXINPUTS} variable to find the newly downloaded package. +Otherwise, either the package version provided by your \Latex distribution gets used or \Latex throws an error if there is no other version installed. -Test your setup by compiling \Cvtemplate and have a look at the result. +Test your setup by compiling \Cvtemplate and looking at the result. -\paragraph{Note.} The \Moderncv packages should compile fine with \Code{pdflatex}, \Code{lualatex} and \Code{xelatex}. However, when using \Code{pdflatex} not all icons are available so using either -\Code{lualatex} or \Code{xelatex} \emph{is strongly recommended}. +\paragraph{Note.} The \Moderncv package should compile with \code{pdflatex}, \code{lualatex} and \code{xelatex}. +However, not all icons are available when using \code{pdflatex}, so using either \code{lualatex} or \code{xelatex} \emph{is highly recommended.} \subsection{Basic setup} -A document using the \Moderncv document class gets set up as any other document class. We go through the template step by step. +A document using the \Moderncv document class gets set up as any other document class. +We will go through the template step by step. \subsubsection*{Configuring document class options} The \Moderncv document class is loaded as per usual, by \begin{lstlisting} \documentclass[]{moderncv} \end{lstlisting} -where up to one of each category of the following options \smallskip +where at most one value for each option can be passed to the document class: -\begingroup -\renewcommand{\arraystretch}{1.1} \begin{tabular}{r@{\hspace{2ex}}p{0.45\textwidth}} - {\bfseries \code{paper}:} & \code{a4paper}, \code{a5paper}, \code{b5paper}, \code{letterpaper}, - \code{legalpaper}, \code{executivepaper}, \code{landscape} \\ - {\bfseries \code{font family:}} & \code{sans}, \code{roman} \\ - {\bfseries \code{font size:}} & \code{10pt}, \code{11pt}, \code{12pt} \\ - {\bfseries \code{draft/final:}} & \code{draft}, \code{final} + \textbf{\code{paper}:} & \code{a4paper}, \code{a5paper}, \code{b5paper}, \code{letterpaper}, + \code{legalpaper}, \code{executivepaper}, \code{landscape} \\ + \textbf{\code{font family}:} & \code{sans}, \code{roman} \\ + \textbf{\code{font size}:} & \code{10pt}, \code{11pt}, \code{12pt} \\ + \textbf{\code{draft/final}:} & \code{draft}, \code{final} \end{tabular} -\endgroup \smallskip -\noindent can be passed to the document class. By default, the \Moderncv document class uses \code{a4paper}, \code{11pt}, \code{final}. \subsubsection*{Configuring \texttt{moderncv} style and color} @@ -304,59 +304,45 @@ Choose a \Moderncv style and color by adjusting the commands \moderncvstyle{