2022-04-16 16:05:57 +01:00
|
|
|
\NeedsTeXFormat{LaTeX2e}
|
|
|
|
\ProvidesClass{cv}[2021/09/11 Oscar Pocock CV class]
|
|
|
|
\LoadClass{article}
|
|
|
|
|
|
|
|
% Packages
|
|
|
|
\RequirePackage{titlesec}
|
|
|
|
\RequirePackage{titling}
|
|
|
|
\RequirePackage{datetime}
|
|
|
|
\RequirePackage{xcolor}
|
|
|
|
\RequirePackage{fontawesome}
|
|
|
|
\RequirePackage{tabularx}
|
|
|
|
\RequirePackage{supertabular}
|
|
|
|
\RequirePackage{multicol}
|
|
|
|
\RequirePackage{graphicx}
|
|
|
|
\RequirePackage{enumitem}
|
|
|
|
|
|
|
|
% Name title
|
|
|
|
\newcommand{\name}[1]{%
|
|
|
|
\begin{center}%
|
|
|
|
\centering\colorbox{black}{{\huge\textcolor{white}{\textbf{\MakeUppercase{#1}}}}}\\%
|
|
|
|
\end{center}%
|
|
|
|
}
|
|
|
|
|
|
|
|
% Last edited
|
|
|
|
\newcommand{\lastedit}{%
|
|
|
|
\begin{center}
|
|
|
|
\footnotesize\textcolor{gray}{(Last updated: \today)}%
|
|
|
|
\end{center}
|
|
|
|
}
|
|
|
|
|
|
|
|
% CV Sections
|
|
|
|
\newcommand{\cvsect}[1]{% The only parameter is the section text
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
\noindent\raggedright\colorbox{black}{\textcolor{white}{\MakeUppercase{\textbf{#1}}}}\hrulefill\\% Section title
|
|
|
|
\vspace{0.25\baselineskip} % Whitespace before the section title
|
|
|
|
}
|
|
|
|
|
|
|
|
%\titleformat{\section} % Customise the \section command
|
|
|
|
%{\Large\scshape\raggedright} % Make the \section headers large (\Large),
|
|
|
|
% % small capitals (\scshape) and left aligned (\raggedright)
|
|
|
|
% {}{0em} % Can be used to give a prefix to all sections, like 'Section ...'
|
|
|
|
% {} % Can be used to insert code before the heading
|
|
|
|
% [\titlerule] % Inserts a horizontal line after the heading
|
|
|
|
% \titleformat{\subsection}
|
|
|
|
% {\large\scshape\raggedright}
|
|
|
|
% {}{0em}
|
|
|
|
% {}
|
|
|
|
%
|
|
|
|
|
|
|
|
\newenvironment{tightcenter}{%
|
|
|
|
\setlength\topsep{0pt}
|
|
|
|
\setlength\parskip{0pt}
|
|
|
|
\begin{center}
|
|
|
|
}{%
|
|
|
|
\end{center}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
\newcommand{\datedsection}[2]{
|
|
|
|
\section[#1]{#1 \hfill #2}%
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\datedsubsection}[2]{%
|
|
|
|
\subsection[#1]{#1 \hfill #2}%
|
|
|
|
}
|
|
|
|
|
|
|
|
% Work experience entry
|
|
|
|
\newcommand{\work}[4]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
{\faBriefcase\ \textbf{#1} at #2, \faMapMarker\ #3 \hfill #4}\\
|
|
|
|
}
|
|
|
|
|
2022-07-07 12:27:30 +01:00
|
|
|
\newcommand{\worknolocation}[2]{%
|
2022-07-07 12:24:42 +01:00
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
{\faBriefcase\ \textbf{#1} \hfill #2}\\
|
|
|
|
}
|
|
|
|
|
2022-04-16 16:05:57 +01:00
|
|
|
% Work experience entry description
|
|
|
|
%\newenvironment{workitems}{%
|
|
|
|
%\vspace{-0.5em}
|
|
|
|
%\itemize
|
|
|
|
%\setlength{\itemsep}{0pt}
|
|
|
|
%\small
|
|
|
|
%}
|
|
|
|
%{
|
|
|
|
%\enditemize
|
|
|
|
%}
|
|
|
|
|
|
|
|
% Work experience entry description
|
|
|
|
\newenvironment{workitems}{%
|
|
|
|
\begin{itemize}[topsep=-0.5em, itemsep=-0.25em, leftmargin=1em]
|
|
|
|
\small
|
|
|
|
}
|
|
|
|
{
|
|
|
|
\end{itemize}
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\project}[3]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
2022-05-01 09:51:41 +01:00
|
|
|
{\faCodeFork\ \textbf{#1} \hfill #2}\\
|
2022-04-16 16:05:57 +01:00
|
|
|
{\small #3}\\
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\giteaproject}[3]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
{\iconGitea\ \textbf{#1} \hfill #2}\\
|
|
|
|
{\small #3}\\
|
|
|
|
}
|
|
|
|
|
|
|
|
%\newcommand{\email}[1]{%
|
|
|
|
%\href{mailto:#1}{\faEnvelope #1}
|
|
|
|
%}
|
|
|
|
|
|
|
|
\newcommand\contact[5]{%
|
|
|
|
\centerline{%
|
|
|
|
\makebox[0pt][c]{%
|
|
|
|
#1 {\large\textperiodcentered} #2 {\large\textperiodcentered} #3
|
|
|
|
\ #4 \ \ #5%
|
|
|
|
}%
|
|
|
|
}%
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\longcontact}[5]{%
|
|
|
|
\noindent
|
|
|
|
#1\hfill {\large\textperiodcentered}\hfill #2\hfill
|
|
|
|
{\large\textperiodcentered}\hfill #3\\
|
|
|
|
#4\hfill #5%
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\contactinfo}[7]{%
|
|
|
|
\begin{center}
|
|
|
|
\begin{tabular}{c|c|c|c|c}
|
|
|
|
\footnotesize{#1} & \footnotesize{#2} & \footnotesize{#3} & \footnotesize{#5} & \footnotesize{\href{#6}{\textsc{\faLinkedin} #7}}
|
|
|
|
\end{tabular}
|
|
|
|
\end{center}
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\uni}[3]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
{\faGraduationCap\ \textbf{#1} \hfill #2}\\
|
|
|
|
\textit{#3}\\
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
\newenvironment{uniyear}[1]
|
|
|
|
{\small
|
|
|
|
\tabular{@{}lp{0.5\linewidth}l}
|
|
|
|
\multicolumn{3}{c}{\textbf{
|
|
|
|
\if 1#1%
|
|
|
|
{1\textsuperscript{st}} Year
|
|
|
|
\fi
|
|
|
|
\if 2#1
|
|
|
|
{2\textsuperscript{nd}} Year
|
|
|
|
\fi
|
|
|
|
\if 3#1
|
|
|
|
{3\textsuperscript{rd}} Year
|
|
|
|
\fi
|
|
|
|
\if 4#1
|
|
|
|
{4\textsuperscript{th}} Year
|
|
|
|
\fi
|
|
|
|
}}\\
|
|
|
|
}
|
|
|
|
{
|
|
|
|
\endtabular
|
|
|
|
}
|
|
|
|
%{
|
|
|
|
%\begin{center}%
|
|
|
|
%\small
|
|
|
|
%\tabular{lp{0.5\linewidth}l}
|
|
|
|
%\multicolumn{3}{c}{\textbf{
|
|
|
|
%\if 1#1%
|
|
|
|
%{1\textsuperscript{st}} Year
|
|
|
|
%\fi
|
|
|
|
%\if 2#1
|
|
|
|
%{2\textsuperscript{nd}} Year
|
|
|
|
%\fi
|
|
|
|
%\if 3#1
|
|
|
|
%{3\textsuperscript{rd}} Year
|
|
|
|
%\fi
|
|
|
|
%\if 4#1
|
|
|
|
%{4\textsuperscript{th}} Year
|
|
|
|
%\fi
|
|
|
|
%}\\
|
|
|
|
%}
|
|
|
|
%}
|
|
|
|
%{
|
|
|
|
%\endtabular
|
|
|
|
%\end{center}%
|
|
|
|
%}
|
|
|
|
|
|
|
|
|
|
|
|
\newcommand{\semester}[1]{
|
|
|
|
\multicolumn{3}{@{}l}{\textit{Semester #1}}\\
|
|
|
|
}
|
|
|
|
|
|
|
|
%\newenvironment{semester}[1]
|
|
|
|
%{
|
|
|
|
%\small
|
|
|
|
%\multicolumn{3}{l}{\textit{Semester #1}}\\
|
|
|
|
%}
|
|
|
|
%{
|
|
|
|
%}
|
|
|
|
|
|
|
|
\newcommand{\module}[3]{
|
|
|
|
#1 & #2 \hfill & #3\\
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\college}[3]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
{\faGraduationCap\ \textbf{#1} \hfill #2}\\
|
|
|
|
#3\\
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
\newcommand{\cert}[3]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
|
|
|
{\faCertificate\ \textbf{#1}, \textit{#2} \hfill #3}\\
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\traincert}[3]{%
|
|
|
|
\vspace{0.5\baselineskip} % Whitespace before the section title
|
2022-05-01 09:51:41 +01:00
|
|
|
{\faCertificate\ \textbf{#1} \textit{(in training)}, \textit{#2} \hfill (Expected: #3)}\\
|
2022-04-16 16:05:57 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
\newenvironment{itemize*}%
|
|
|
|
{\begin{itemize}[itemsep=-0.25em, leftmargin=1em, topsep=0em]}%
|
|
|
|
{\end{itemize}}
|
|
|
|
|
|
|
|
% REFERENCES
|
|
|
|
|
|
|
|
\newenvironment{cvref}[3]
|
|
|
|
{
|
|
|
|
\begin{minipage}{0.45\textwidth}
|
|
|
|
\begin{center}
|
|
|
|
\tabular{p{0.025\linewidth}l}
|
|
|
|
\multicolumn{2}{c}{\textbf{#1}}\\
|
|
|
|
\faBriefcase\ & #2\\
|
|
|
|
\faBuilding\ & #3\\
|
|
|
|
}
|
|
|
|
{
|
|
|
|
\endtabular
|
|
|
|
\end{center}
|
|
|
|
\end{minipage}
|
|
|
|
\hfill
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\cvrefphone}[2]{
|
|
|
|
\faPhone & \href{tel:#1}{#2}
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\cvrefemail}[1]{
|
|
|
|
\faEnvelope & \href{mailto:#1}{#1}
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\cvrefName}[1]{
|
|
|
|
\faUser & \textbf{#1}
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\cvrefJob}[1]{
|
|
|
|
\faBriefcase & #1
|
|
|
|
}
|
|
|
|
|
|
|
|
\newcommand{\cvrefWork}[1]{
|
|
|
|
\faBuilding & #1
|
|
|
|
}
|
|
|
|
|
|
|
|
% CUSTOM FONTS
|
|
|
|
|
|
|
|
%\newcommand{\iconMatrix}[0]{
|
|
|
|
%\fontello \char"E802
|
|
|
|
%}
|
|
|
|
|
|
|
|
\newcommand{\iconGitea}{\icons\char"E80C \normalfont}
|
|
|
|
|
|
|
|
% CERTIFICATION
|
|
|
|
|
|
|
|
%\newcommand{\azFundamentals}[0]{%
|
|
|
|
%\begingroup\normalfont
|
|
|
|
% \includegraphics[height=3\fontcharht\font`\B]{img/microsoft-certified-associate-badge.pdf}%
|
|
|
|
% \endgroup
|
|
|
|
%}
|