3

I want to get rid of the separator dots between the details (phones, socials). I assume that I need to make a change in moderncvheadiii.sty, but I cannot figure out where I should edit. Can anyone help?

enter image description here

%% start of file `moderncvheadiii.sty'.
%% Copyright 2006-2015 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{moderncvheadiii}[2015/07/28 v2.0.0 modern curriculum vitae and letter header variant: 3]

% details options: "details" (default) or "nodetails" @initializeif{\if@details}@detailsfalse \DeclareOption{details}{@detailstrue} \DeclareOption{nodetails}{@detailsfalse}

\DeclareOption{}% avoid choking on unknown options \ExecuteOptions{details} \ProcessOptions\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package

%------------------------------------------------------------------------------- % required packages %-------------------------------------------------------------------------------

%------------------------------------------------------------------------------- % overall head definition %------------------------------------------------------------------------------- % fonts \renewcommand{\namefont}{\Huge\bfseries\upshape} \renewcommand{\titlefont}{\Huge\mdseries\upshape} \renewcommand{\addressfont}{\normalsize\mdseries\upshape} \renewcommand{\quotefont}{\large\slshape}

% styles \renewcommand{\namestyle}[1]{{\namefont\textcolor{color1}{#1}}} \renewcommand{\titlestyle}[1]{{\titlefont\textcolor{color2!85}{#1}}} \renewcommand{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}} \renewcommand{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}

% commands @initializecommand{\makeheaddetailssymbol}{% {~{\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 % internal command to add an element to the footer % it collects the elements in a temporary box, and checks when to flush the box @initializebox{\makeheaddetailsbox}% @initializebox{\makeheaddetailstempbox}% @initializelength{\makeheaddetailswidth}% @initializelength{\makeheaddetailsboxwidth}% @initializeif{\if@firstmakeheaddetailselement}@firstmakeheaddetailselementtrue% % adds an element to the makehead, separated by makeheadsymbol % usage: \addtomakehead[makeheadsymbol]{element} \newcommand*{\addtomakeheaddetails}[2][\makeheaddetailssymbol]{% TODO: use @initializecommand, which requires modifying its definition to handle mandatory and optional arguments \if@firstmakeheaddetailselement% \savebox{\makeheaddetailstempbox}{\usebox{\makeheaddetailsbox}#2}% \else% \savebox{\makeheaddetailstempbox}{\usebox{\makeheaddetailsbox}#1#2}\fi% \settowidth{\makeheaddetailsboxwidth}{\usebox{\makeheaddetailstempbox}}% \ifnum\makeheaddetailsboxwidth<\makeheaddetailswidth% \savebox{\makeheaddetailsbox}{\usebox{\makeheaddetailstempbox}}% @firstmakeheaddetailselementfalse% \else% \flushmakeheaddetails\% \savebox{\makeheaddetailsbox}{#2}% \savebox{\makeheaddetailstempbox}{#2}% \settowidth{\makeheaddetailsboxwidth}{\usebox{\makeheaddetailsbox}}% @firstmakeheaddetailselementfalse\fi} % internal command to flush the makehead @initializecommand{\flushmakeheaddetails}{% \strut\usebox{\makeheaddetailsbox}% \savebox{\makeheaddetailsbox}{}% \savebox{\makeheaddetailstempbox}{}% \setlength{\makeheaddetailsboxwidth}{0pt}} @initializecommand{\makehead}{% \setlength{\makeheaddetailswidth}{0.8\textwidth}% \hfil% \parbox{\makeheaddetailswidth}{% \centering% % name and title \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) % optional detailed information \if@details{% \addressfont\color{color2}% \ifthenelse{\isundefined{@addressstreet}}{}{\addtomakeheaddetails{\addresssymbol@addressstreet}% \ifthenelse{\equal{@addresscity}{}}{}{\addtomakeheaddetails[~--~]{@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty \ifthenelse{\equal{@addresscountry}{}}{}{\addtomakeheaddetails[~--~]{@addresscountry}}% \flushmakeheaddetails@firstmakeheaddetailselementtrue\\null}% \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number \addtomakeheaddetails{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{@email}}{}{\addtomakeheaddetails{\emailsymbol\emaillink{@email}}}% \ifthenelse{\isundefined{@homepage}}{}{\addtomakeheaddetails{\homepagesymbol\httplink{@homepage}}}% \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link \addtomakeheaddetails{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}% \ifthenelse{\isundefined{@extrainfo}}{}{\addtomakeheaddetails{@extrainfo}}% \flushmakeheaddetails}\fi}\[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 \makehead

%------------------------------------------------------------------------------- % resume head definition %------------------------------------------------------------------------------- % lengths @initializelength{\quotewidth} \renewcommand*{\recomputecvheadlengths}{% \setlength{\quotewidth}{0.65\textwidth}}

% commands \renewcommand*{\makecvhead}{% TODO: use @initializecommand, which requires modifying its definition to handle \par % recompute lengths (in case we are switching from letter to resume, or vice versa) \recomputecvlengths% \makehead% % 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 head definition %------------------------------------------------------------------------------- % lengths %\renewcommand*{\recomputeletterheadlengths}{}

% commands \renewcommand*{\makeletterhead}{% % recompute lengths (in case we are switching from letter to resume, or vice versa) \recomputeletterlengths% % sender block \makehead% \par% % recipient block \begin{minipage}[t]{.5\textwidth} \raggedright% \addressfont% {\bfseries\upshape@recipientname}\% @recipientaddress% \end{minipage} % date \hfill% US style % \[1em]% UK style @date\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900" % 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}}

\endinput

%% end of file `moderncvheadiii.sty'.

Mensch
  • 65,388
Hans
  • 31

2 Answers2

2

The seperator dots are defined in this way:

\@initializecommand{\makeheaddetailssymbol}{%
    {~~~{\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

There is a inbuild distance (with several ~) before and after command \textbullet (the seperator dot). To get rid of the bullet, but keep the distances use the patch

\patchcmd{\makeheaddetailssymbol}
  {\textbullet}% to search
  {}%            replacement
  {}{}%          success failure

where \textbullet gets simply deleted in the code.

To get rid of the seperator dot and the surrounding distances simple use the command

\renewcommand{\makeheaddetailssymbol}{\quad}

For an larger distance you can try \qquad instead of \quad.

With the following MWE

\documentclass[11pt,a4paper,sans]{moderncv}

% moderncv themes \moderncvstyle{banking} \moderncvcolor{blue}

\usepackage[utf8]{inputenc}

\usepackage[scale=0.75]{geometry}

% personal data \name{John}{Doe} \title{Resumé title} \address{street and number}{postcode city}{country} \phone[mobile]{+1~(234)~567~890} \phone[fixed]{+2~(345)~678~901} \phone[fax]{+3~(456)~789~012} \email{john@doe.org} \homepage{www.johndoe.com} \social[linkedin]{john.doe} \social[twitter]{jdoe} \social[github]{jdoe} \extrainfo{additional information} \photo[64pt][0.4pt]{example-image-golden-upright}% \quote{Some quote}

%\renewcommand{\makeheaddetailssymbol}{\quad} % <======================== \qquad \patchcmd{\makeheaddetailssymbol} % <=================================== {\textbullet}% to search {}% replacement {}{}% success failure <======================================

\begin{document}

\makecvtitle

\section{Education} \cventry{year--year}{Degree}{Institution--3}{City--4}{\textit{Grade}--5}{Description--6} % arguments 3 to 6 can be left empty \cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}

\section{Master thesis} \cvitem{title}{\emph{Title}} \cvitem{supervisors}{Supervisors} \cvitem{description}{Short thesis abstract}

\section{Experience} \subsection{Vocational} \cventry{year--year}{Job title}{Employer}{City}{}{General description no longer than 1--2 lines.\newline{}% Detailed achievements:% \begin{itemize}% \item Achievement 1; \item Achievement 2, with sub-achievements: \begin{itemize}% \item Sub-achievement (a); \item Sub-achievement (b), with sub-sub-achievements (don't do this!); \begin{itemize} \item Sub-sub-achievement i; \item Sub-sub-achievement ii; \item Sub-sub-achievement iii; \end{itemize} \item Sub-achievement (c); \end{itemize} \item Achievement 3. \end{itemize}} \cventry{year--year}{Job title}{Employer}{City}{}{Description line 1\newline{}Description line 2} \subsection{Miscellaneous} \cventry{year--year}{Job title}{Employer}{City}{}{Description}

\section{Languages} \cvitemwithcomment{Language 1}{Skill level}{Comment} \cvitemwithcomment{\textbf{Language} 2}{\textbf{Skill} level}{Comment} \cvitemwithcomment{Language 3}{Skill level}{Comment}

\section{Computer skills} \cvdoubleitem{category 1}{XXX, YYY, ZZZ}{category 4}{XXX, YYY, ZZZ} \cvdoubleitem{category 2}{XXX, YYY, ZZZ}{category 5}{XXX, YYY, ZZZ} \cvdoubleitem{category 3}{XXX, YYY, ZZZ}{category 6}{XXX, YYY, ZZZ}

\section{Interests} \cvitem{hobby 1}{Description} \cvitem{hobby 2}{Description} \cvitem{hobby 3}{Description}

\section{Extra 1} \cvlistitem{Item 1} \cvlistitem{Item 2} \cvlistitem{Item 3. This item is particularly long and therefore normally spans over several lines. Did you notice the indentation when the line wraps?}

\section{Extra 2} \cvlistdoubleitem{Item 1}{Item 4} \cvlistdoubleitem{Item 2}{Item 5} \cvlistdoubleitem{Item 3}{Item 6. Like item 3 in the single column list before, this item is particularly long to wrap over several lines.}

\section{References} \begin{cvcolumns} \cvcolumn{Category 1}{\begin{itemize}\item Person 1\item Person 2\item Person 3\end{itemize}} \cvcolumn{Category 2}{Amongst others:\begin{itemize}\item Person 1, and\item Person 2\end{itemize}(more upon request)} \cvcolumn[0.5]{All the rest &amp; some more}{\textit{That} person, and \textbf{those} also (all available upon request).} \end{cvcolumns}

\end{document}

you get the resulting pdf:

resulting pdf

Mensch
  • 65,388
1

In order to get rid of the filled circle that separates individual contact details without making any changes to moderncvheadiii.sty, you can add

\makeatletter
\@initializecommand{\makeheaddetailssymbol}{\quad}
\makeatother

to the preamble of your document.

If you want a larger white space between the entries, you can also replace \quad with \qqad. For more spacing options, you can also take a look here: What commands are there for horizontal spacing?

leandriis
  • 62,593