1

So I'm fairly new to TeX but managed to make myself a decent resume using quite a well-known Deedy-Resume template. I use overleaf to complie my .tex code into pdfs. I all worked fine enough until one day I had to translate my resume into Russian. The code doesn't work out of the box, I've tried suggested solution by Overleaf, which is to put the following code chunk in the header

\usepackage[utf8]{inputenc}
\usepackage[english, russian]{babel}
\usepackage[T1, T2A]{fontenc}

Here is an MRE for the .tex file and output it produces broken output

The project has .tex and .cls files, I've tried to edit both but it doesn't seem to work either way. If I attempt to remove font related section from the file it doesn't work at all

\documentclass[]{deedy-resume-openfont}
\usepackage{fancyhdr}

 
\pagestyle{fancy}
\fancyhf{}
 
\begin{document}

\namesection{}{\Huge Василий Петров}{ 
\urlstyle{same}\href{}{}
\href{}{}\\
\href{mailto:vasya@gmail.com}{vasya@gmail.com} | +7 999 333-76-26 | \href{}{}
}

\begin{minipage}[t]{0.33\textwidth} 

\section{Education} 
\subsection{University of Nonsense}

\descript{Россия in Banking and Microbiology}
\location{Grad. Jun 2077 | Moscow, RU}
EMFSS Academic Award 2067 \\
\textbf{Diploma with First Class Honours}
\sectionsep
\end{minipage} 
\end{document}  \documentclass[]{article}

Also, I would have to post .cls (should be names deedy-resume-openfont.cls) file in its entirety since I don't know which part can be omitted

% Intro Options
\ProvidesClass{deedy-resume-openfont}[2014/04/30 CV class]
\NeedsTeXFormat{LaTeX2e}
\DeclareOption{print}{\def\@cv@print{}}
\DeclareOption*{%
  \PassOptionsToClass{\CurrentOption}{article}
}
\ProcessOptions\relax
\LoadClass{article}

% Package Imports
\usepackage[hmargin=1.25cm, vmargin=0.75cm]{geometry}
\usepackage[hidelinks]{hyperref}

% Publications
\usepackage{cite}
\renewcommand\refname{\vskip -1.5cm}

% Color definitions
\usepackage[usenames,dvipsnames]{xcolor} 
\definecolor{date}{HTML}{666666} 
\definecolor{primary}{HTML}{2b2b2b} 
\definecolor{headings}{HTML}{6A6A6A}
\definecolor{subheadings}{HTML}{333333}

% Set main fonts
\usepackage{fontspec}
\setmainfont[Color=primary, Path = fonts/lato/,BoldItalicFont=Lato-RegIta,BoldFont=Lato-Reg,ItalicFont=Lato-LigIta]{Lato-Lig}
\setsansfont[Scale=MatchLowercase,Mapping=tex-text, Path = fonts/raleway/]{Raleway-ExtraLight}

% Date command
\usepackage[absolute]{textpos}
\usepackage[UKenglish]{isodate}
\setlength{\TPHorizModule}{1mm}
\setlength{\TPVertModule}{1mm}
\newcommand{\lastupdated}{\begin{textblock}{60}(155,5)
\color{date}\fontspec[Path = fonts/raleway/]{Raleway-ExtraLight}\fontsize{8pt}{10pt}\selectfont 
Last Updated on \today
\end{textblock}}

% Name command
\newcommand{\namesection}[3]{
\centering{
\fontsize{40pt}{60pt}
\fontspec[Path = fonts/lato/]{Lato-Hai}\selectfont #1 
\fontspec[Path = fonts/lato/]{Lato-Lig}\selectfont #2
} \\[5pt]
\centering{
\color{headings}
\fontspec[Path = fonts/raleway/]{Raleway-Medium}\fontsize{11pt}{14pt}\selectfont #3}
\noindent\makebox[\linewidth]{\color{headings}\rule{\paperwidth}{0.4pt}}
\vspace{-15pt}
}

% Section seperators 
\usepackage{titlesec}
\titlespacing{\section}{0pt}{0pt}{0pt} 
\titlespacing{\subsection}{0pt}{0pt}{0pt}
\newcommand{\sectionsep}{\vspace{8pt}}

% Headings command
\titleformat{\section}{\color{headings}
\scshape\fontspec[Path = fonts/lato/]{Lato-Lig}\fontsize{16pt}{24pt}\selectfont \raggedright\uppercase}{}{0em}{}

% Subeadings command
\titleformat{\subsection}{
\color{subheadings}\fontspec[Path = fonts/lato/]{Lato-Bol}\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase}{}{0em}{}

\newcommand{\runsubsection}[1]{
\color{subheadings}\fontspec[Path = fonts/lato/]{Lato-Bol}\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase {#1} \normalfont}

% Descriptors command
\newcommand{\descript}[1]{
\color{subheadings}\raggedright\scshape\fontspec[Path = fonts/raleway/]{Raleway-Medium}\fontsize{11pt}{13pt}\selectfont {#1 \\} \normalfont}

% Location command
\newcommand{\location}[1]{
\color{headings}\raggedright\fontspec[Path = fonts/raleway/]{Raleway-Medium}\fontsize{10pt}{12pt}\selectfont {#1\\} \normalfont}

% Bullet Lists with fewer gaps command
\newenvironment{tightemize}{
\vspace{-\topsep}\begin{itemize}\itemsep1pt \parskip0pt \parsep0pt}
{\end{itemize}\vspace{-\topsep}}

As you can see, some of the text is replaces with boxed question marks and some is outright erased

1
  • you are using fonspec so xetex or luatex, so you should not use inputenc or fontec as you suggest in the first code block, they are legacy encodings for pdftex Feb 17, 2021 at 22:22

1 Answer 1

0

I suspect that the problem is with the versions of the fonts installed in fonts/lato/ and fonts/raleway/. If so, adding the command \tracinglostchars=2 in your preamble will give you a warning that the current font does not have each Cyrillic letter. (By default, the warnings are silently buried in your .log file.)

Here’s a version of the document class that uses the versions included with TeX Live 2020. Set your TeX version to TeX Live 2020 or later and your TeX engine to LuaLaTeX or XeLaTeX.

% Intro Options
\ProvidesClass{deedy-resume-openfont}[2014/04/30 CV class]
\NeedsTeXFormat{LaTeX2e}
\DeclareOption{print}{\def\@cv@print{}}
\DeclareOption*{%
  \PassOptionsToClass{\CurrentOption}{article}
}
\ProcessOptions\relax
\LoadClass{article}

% Package Imports
\RequirePackage[hmargin=1.25cm, vmargin=0.75cm]{geometry}
\RequirePackage[hidelinks]{hyperref}

% Publications
\RequirePackage{cite}
\renewcommand\refname{\vskip -1.5cm}

% Color definitions
\RequirePackage[usenames,dvipsnames]{xcolor} 
\definecolor{date}{HTML}{666666} 
\definecolor{primary}{HTML}{2b2b2b} 
\definecolor{headings}{HTML}{6A6A6A}
\definecolor{subheadings}{HTML}{333333}

% Set main fonts
\RequirePackage{fontspec}
\setmainfont{Lato}[
  Scale = 1.0 ,
  UprightFont=*-Light ,
  BoldFont = *-Medium ,
  ItalicFont = *-LightItalic ,
  BoldItalicFont = *-MediumItalic,
  Extension = .ttf ]
\setsansfont{Raleway}[
  Scale = MatchLowercase ,
  UprightFont = *-ExtraLight ,
  BoldFont = *-Medium ,
  ItalicFont = *-ExtraLight-Italic ,
  BoldItalicFont = *-Medium-Italic ,
  Extension = .otf ]

% Date command
\RequirePackage[absolute]{textpos}
\RequirePackage{babel}
\RequirePackage[UKenglish]{isodate}
\setlength{\TPHorizModule}{1mm}
\setlength{\TPVertModule}{1mm}
\newcommand{\lastupdated}{\begin{textblock}{60}(155,5)
\color{date}\normalfont\rmfamily\bfseries\fontsize{8pt}{10pt}\selectfont 
Last Updated on \today
\end{textblock}}

% Name command
\newcommand{\namesection}[3]{
\centering{
\fontsize{40pt}{60pt}
\normalfont\sffamily\bfseries #1 
\normalfont\sffamily \selectfont #2
} \\[5pt]
\centering{
\color{headings}
\normalfont\bfseries\fontsize{11pt}{14pt}\selectfont #3}
\noindent\makebox[\linewidth]{\color{headings}\rule{\paperwidth}{0.4pt}}
\vspace{-15pt}
}

% Section seperators 
\RequirePackage{titlesec}
\titlespacing{\section}{0pt}{0pt}{0pt} 
\titlespacing{\subsection}{0pt}{0pt}{0pt}
\newcommand{\sectionsep}{\vspace{8pt}}

% Headings command
\titleformat{\section}{\color{headings}
\normalfont\sffamily\scshape\fontsize{16pt}{24pt}\selectfont \raggedright\uppercase}{}{0em}{}

% Subeadings command
\titleformat{\subsection}{
\normalfont\color{subheadings}\sffamily\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase}{}{0em}{}

\newcommand{\runsubsection}[1]{
{\normalfont\color{subheadings}\sffamily\fontsize{12pt}{12pt}\selectfont\bfseries\uppercase {#1}}}

% Descriptors command
\newcommand{\descript}[1]{
{\normalfont\color{subheadings}\raggedright\sffamily\scshape\bfseries\fontsize{11pt}{13pt}\selectfont {#1 \\}}}

% Location command
\newcommand{\location}[1]{
{\normalfont\color{headings}\raggedright\rmfamily\fontsize{10pt}{12pt}\selectfont {#1\\}}}

% Bullet Lists with fewer gaps command
\newenvironment{tightemize}{
\vspace{-\topsep}\begin{itemize}\itemsep1pt \parskip0pt \parsep0pt}
{\end{itemize}\vspace{-\topsep}}

I made some changes to the code itself, mainly replacing \fontspec calls with \rmfamily and \sffamily. I also used only the default and bold weights. If you want more weights, they are possible to add. I tweaked commands that set \normalfont afterward to instead restore the previous settings, removed a redundant XeTeX-only command so that the class will compile in LuaLaTeX, and made one or two other fixes. (If the font commands also used sizes such as \small and \Huge, rather than fixed sizes, the class would support size options such as \documentclass[12pt] as well.)

Oh, and you should probably change the header so this declares a different version of the class.

With these changes, the slightly-modified document

\documentclass[russian, english]{deedy-resume-openfont}
\tracinglostchars=2
\usepackage{fancyhdr}

 
\pagestyle{fancy}
\fancyhf{}
 
\begin{document}

\namesection{}{\Huge Василий Петров}{ 
\urlstyle{same}\href{}{}
\href{}{}
\href{mailto:vasya@gmail.com}{vasya@gmail.com} | +7 999 333-76-26 | \href{}{}
}

\begin{minipage}[t]{0.33\textwidth} 

\section{Education} 
\subsection{University of Nonsense}

\descript{Россия in Banking and Microbiology}
\location{Grad. Jun 2077 | Moscow, RU}
EMFSS Academic Award 2067 \\
\textbf{Diploma with First Class Honours}
\sectionsep
\end{minipage} 
\end{document}  \documentclass[]{article}

compiles to Deedy Résumé

By the way, the commands Overleaf gave you only work if you are not using fontspec. They are supposed to set up legacy 8-bit fonts, and you would need some extra commands to use them. You should not worry about them if you don’t have to.

3
  • Thanks for such a detailed response! I will try to fill the whole resume in a few days and then accept the answer if no cyrillic-related incidents occur
    – zeebrah
    Feb 18, 2021 at 16:36
  • Hey, @Davislor, I managed to finish the document eventually and all thanks to your beautiful answer! I have one more idea. How do I make timestamp generated with /lastupdated be localized as well? Or should I post this as a separate question? Thanks
    – zeebrah
    Mar 5, 2021 at 9:56
  • @zeebrah Glad to hear! Sounds like a good follow-up question. However, in Babel, the way to get a localized date is \localedate.
    – Davislor
    Mar 5, 2021 at 12:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .