diff --git a/altacv.cls b/altacv.cls deleted file mode 100644 index c091670..0000000 --- a/altacv.cls +++ /dev/null @@ -1,418 +0,0 @@ -%%%%%%%%%%%%%%%%% -% This is altacv.cls (v1.3.2, 17 May 2020) written by -% LianTze Lim (liantze@gmail.com). -% -%% It may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license or (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of LaTeX -%% version 2003/12/01 or later. -%% -%% -% Contributions: -% - https://github.com/akreuzer Added ragged2e option (5 Nov 2018) -% - https://github.com/stefanogermano Fixed bad boxes and undefined font shape (July 2018) -% - https://github.com/foohyfooh Fixed blank spaces in \cvevent and bad link in README.md (June 2018) - -%%%%%%%%%%%%%%%% -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{altacv}[2020/05/17 AltaCV v1.3.2, yet another alternative class for a resume/curriculum vitae.] - -%% v1.1: Optionally load academicons -\newif\if@academicons -\DeclareOption{academicons}{\@academiconstrue} -%% v1.1.3: Choice of round/square photo -\newif\if@normalphoto -\DeclareOption{normalphoto}{\@normalphototrue} -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{extarticle}} -\newif\if@raggedtwoe -\DeclareOption{ragged2e}{\@raggedtwoetrue} -%% v1.3: load hyperref for clickable hyperlinks -\newif\if@withhyper -\DeclareOption{withhyper}{\@withhypertrue} -\ProcessOptions\relax - -\LoadClass{article} -%% v1.3.2 Hopefully this helps make the PDF -%% file more 'friendly' with copy-paste etc -\RequirePackage[a-1b]{pdfx} -\RequirePackage[margin=2cm]{geometry} -\RequirePackage[fixed]{fontawesome5} -\RequirePackage{ifxetex,ifluatex} -\RequirePackage{scrlfile} -\RequirePackage{xparse} - -%% v1.1.5: added for convenience -\newif\ifxetexorluatex -\ifxetex - \xetexorluatextrue -\else - \ifluatex - \xetexorluatextrue - \else - \xetexorluatexfalse - \fi -\fi - -\ifxetexorluatex - \RequirePackage{fontspec} -\else - %% v1.3.2 attempts to make ligatures - %% copy-paste as normal characters - \RequirePackage{cmap} - \RequirePackage[utf8]{inputenc} - \RequirePackage[T1]{fontenc} - \input{glyphtounicode} - \pdfglyphtounicode{f_f}{FB00} - \pdfglyphtounicode{f_f_i}{FB03} - \pdfglyphtounicode{f_f_l}{FB04} - \pdfglyphtounicode{f_i}{FB01} - \pdfgentounicode=1 -\fi - -%% v1.1: Optionally load academicons -%% v1.1.5: Handle different versions of academicons -\if@academicons - \ifxetexorluatex - \RequirePackage{fontspec} - %% academicons in TL2018 doesn't require - %% Academicons to be installed in OS fonts - %% so can be loaded directly - \@ifl@t@r\fmtversion{2018/04/01}{% - \RequirePackage{academicons} - }{% - % TL2017 - \@ifl@t@r\fmtversion{2017/04/01}{% - \@ifpackagelater{academicons}{2018/03/01}{% - \RequirePackage{academicons} - }{% - \let\ori@newfontfamily\newfontfamily% - \renewcommand{\newfontfamily}[2]{} - \RequirePackage{academicons} - \let\newfontfamily\ori@newfontfamily - \newfontfamily{\AI}{academicons.ttf} - } - }{% TL2016 requires the package to be loaded before - % the version can be checked. Only added because - % Overleaf v1 still runs TL2016; will be removed - % when v1 is completely retired. - \let\ori@newfontfamily\newfontfamily% - \renewcommand{\newfontfamily}[2]{} - \RequirePackage{academicons} - \let\newfontfamily\ori@newfontfamily - \newfontfamily{\AI}{academicons.ttf} - } - } - \else - \ClassError{AltaCV}{academicons unsupported by latex or pdflatex. Please compile with xelatex or lualatex}{Please compile with xelatex or lualatex to use the academicons option} - \fi -\fi - -\if@raggedtwoe - \RequirePackage[newcommands]{ragged2e} -\fi - -\if@withhyper - \AtBeginDocument{% - \RequirePackage{hyperref} - \hypersetup{hidelinks} - \urlstyle{same} - } -\fi - -\RequirePackage{xcolor} - -\colorlet{accent}{blue!70!black} -\colorlet{emphasis}{black} -\colorlet{heading}{black} -\colorlet{headingrule}{black} -\colorlet{subheading}{emphasis} -\colorlet{body}{black!80!white} -\colorlet{name}{heading} -\colorlet{tagline}{accent} -\newcommand{\itemmarker}{{\small\textbullet}} -\newcommand{\ratingmarker}{\faCircle} - -\RequirePackage{tikz} -\usetikzlibrary{arrows} -\RequirePackage[skins]{tcolorbox} -\RequirePackage[inline]{enumitem} -\setlist{leftmargin=*,labelsep=0.5em,nosep,itemsep=0.25\baselineskip,after=\vspace{0.25\baselineskip}} -\setlist[itemize]{label=\itemmarker} -\RequirePackage{graphicx} -\RequirePackage{etoolbox} -\RequirePackage{dashrule} -\RequirePackage{multirow,tabularx} -\RequirePackage{changepage} -% \RequirePackage{marginfix} - -\setlength{\parindent}{0pt} -\newcommand{\divider}{\textcolor{body!30}{\hdashrule{\linewidth}{0.6pt}{0.5ex}}\medskip} - -\newenvironment{fullwidth}{% - \begin{adjustwidth}{}{\dimexpr-\marginparwidth-\marginparsep\relax}} - {\end{adjustwidth}} - -%% v1.3.1 \detokenize will break UTF-8 in pdflatex -%% Using alternative from https://tex.stackexchange.com/a/530911/226 -\newcommand{\utffriendlydetokenize}[1]{% -\scantokens{% - \catcode`\_=12% -% \catcode`\^=12% -% \catcode`\{=12% -% \catcode`\}=12% - \catcode`\&=12% - \catcode`\$=12% - \catcode`\#=12% - \catcode`\~=12% -% \catcode`\\=12% - {#1}% -}% -} -%% v1.3: Incorporating hyperlinks -%% v1.3.1: using \unfriendlydetokenize to avoid -%% breaking unicode -\ExplSyntaxOn -\NewDocumentCommand{\printinfo}{m m o}{% - \IfNoValueTF{#3}{% - \mbox{\textcolor{accent}{\normalfont #1}~\utffriendlydetokenize{#2}\hspace{2em}}% - }{% - \if@withhyper% - \mbox{\textcolor{accent}{\normalfont #1}~ - \href{#3}{\utffriendlydetokenize{#2}}\hspace{2em}} - \else% - \ClassWarning{Please specify [withhyper] option to enable hyperlinks. Printing out full hyperlink prefix #1 for now.}% - \mbox{\textcolor{accent}{\normalfont #1}~{\utffriendlydetokenize{#3#2}}\hspace{2em}}% - \fi% - }% -}% - -%% v1.3: Exploring convenient creation of fields -\NewDocumentCommand{\NewInfoField}{m m o}{% - \IfNoValueF{#3}{\csdef{#1 hyperprefix}{#3}}% - \csdef{#1 symbol}{#2}% - \csdef{#1}##1{% - \if@withhyper - \IfNoValueTF {#3} - {\printinfo{\csuse{#1 symbol}}{##1}}% - {\printinfo{\csuse{#1 symbol}}{##1}[\csuse{#1 hyperprefix}##1]}% - \else - \printinfo{\csuse{#1 symbol}}{##1}% - \fi% - } -} -\ExplSyntaxOff - -\newcommand{\name}[1]{\def\@name{#1}} -\newcommand{\tagline}[1]{\def\@tagline{#1}} -\newcommand{\personalinfo}[1]{\def\@personalinfo{#1}} -\NewInfoField{email}{\faAt}[mailto:] -\NewInfoField{mailaddress}{\faEnvelope} -\NewInfoField{phone}{\faPhone} -\NewInfoField{homepage}{\faGlobe}[https://] -\NewInfoField{twitter}{\faTwitter}[https://twitter.com/] -\NewInfoField{youtube}{\faYoutube}[https://youtube.com/c/] -\NewInfoField{linkedin}{\faLinkedin}[https://linkedin.com/in/] -\NewInfoField{github}{\faGithub}[https://github.com/] -\NewInfoField{orcid}{\aiOrcid}[https://orcid.com/] -\NewInfoField{itch}{\faItchIo}[https://] -\NewInfoField{location}{\faMapMarker} - -% v1.2: Support for multiple photos -\newlength{\altacv@photos@width} -\newlength{\altacv@photo@diam@left} -\newlength{\altacv@photo@diam@right} -\def\altacv@left@photos{} -\def\altacv@right@photos{} - -\newcommand{\@makeaphoto}[2]{% - \begin{minipage}{#1}% - \if@normalphoto - \includegraphics[width=\linewidth]{#2} - \else - \tikz\path[fill overzoom image={#2}]circle[radius=0.5\linewidth]; - \fi% - \end{minipage}% -} - -\newcommand{\altacv@add@photo@left}[1]{% - \appto{\altacv@left@photos}{% - \@makeaphoto{\altacv@photo@diam@left}{#1}\hspace{1ex}% - }% - \addtolength{\altacv@photos@width}{\altacv@photo@diam@left}% - \addtolength{\altacv@photos@width}{1ex}% -} -\newcommand{\altacv@add@photo@right}[1]{% - \appto{\altacv@right@photos}{% - \@makeaphoto{\altacv@photo@diam@right}{#1}\hspace{1ex}% - }% - \addtolength{\altacv@photos@width}{\altacv@photo@diam@right}% - \addtolength{\altacv@photos@width}{1ex}% -} -\newcommand{\photoL}[2]{% - \setlength{\altacv@photo@diam@left}{#1}% - \forcsvlist{\altacv@add@photo@left}{#2}% -} -\newcommand{\photoR}[2]{% - \setlength{\altacv@photo@diam@right}{#1}% - \forcsvlist{\altacv@add@photo@right}{#2}% -} -\let\photo\photoR - -\newcommand{\namefont}{\Huge\bfseries} -\newcommand{\taglinefont}{\large\bfseries} -\newcommand{\personalinfofont}{\footnotesize\bfseries} -\newcommand{\cvsectionfont}{\LARGE\bfseries} -\newcommand{\cvsubsectionfont}{\large\bfseries} - -\newcommand{\makecvheader}{% - \begingroup - \altacv@left@photos\hfill% - \begin{minipage}{\dimexpr\linewidth-\altacv@photos@width}% - \raggedright% - {\namefont\color{name}\MakeUppercase{\@name}\par} - \medskip - {\taglinefont\color{tagline}\@tagline\par} - \medskip - {\personalinfofont\@personalinfo\par} - \end{minipage}\hfill% - \altacv@right@photos\par% - \endgroup\medskip -} - -\renewenvironment{quote}{\color{accent}\itshape\large}{\par} - -\newcommand{\cvsection}[2][]{% - \bigskip% - \ifstrequal{#1}{}{}{\marginpar{\vspace*{\dimexpr1pt-\baselineskip}\raggedright\input{#1}}}% - {\color{heading}\cvsectionfont\MakeUppercase{#2}}\\[-1ex]% - {\color{headingrule}\rule{\linewidth}{2pt}\par}\medskip -} - -\newcommand{\cvsubsection}[1]{% - \smallskip% - {\color{subheading}\cvsubsectionfont{#1}\par}\medskip -} - -% v1.1.4: fixes inconsistent font size -\newcommand{\cvevent}[4]{% - {\large\color{emphasis}#1\par} - \smallskip\normalsize - \ifstrequal{#2}{}{}{ - \textbf{\color{accent}#2}\par - \smallskip} - \ifstrequal{#3}{}{}{{\small\makebox[0.5\linewidth][l]{\faCalendar~#3}}}% - \ifstrequal{#4}{}{}{{\small\makebox[0.5\linewidth][l]{\faMapMarker~#4}}}\par - \medskip\normalsize -} - -\newcommand{\cvachievement}[3]{% - \begin{tabularx}{\linewidth}{@{}p{2em} @{\hspace{1ex}} >{\raggedright\arraybackslash}X@{}} - \multirow{2}{*}{\Large\color{accent}#1} & \bfseries\textcolor{emphasis}{#2}\\ - & #3 - \end{tabularx}% - \smallskip -} - -\newcommand{\cvtag}[1]{% - \tikz[baseline]\node[anchor=base,draw=body!30,rounded corners,inner xsep=1ex,inner ysep =0.75ex,text height=1.5ex,text depth=.25ex]{#1}; -} - -\newcommand{\cvskill}[2]{% -\textcolor{emphasis}{\textbf{#1}}\hfill -\foreach \x in {1,...,5}{% - \space{\ifnumgreater{\x}{#2}{\color{body!30}}{\color{accent}}\ratingmarker}}\par% -} - -% Adapted from @Jake's answer at http://tex.stackexchange.com/a/82729/226 -\newcommand{\wheelchart}[4][0]{% - \begingroup\centering - \def\innerradius{#3}% - \def\outerradius{#2}% - % Calculate total - \pgfmathsetmacro{\totalnum}{0}% - \foreach \value/\colour/\name in {#4} {% - \pgfmathparse{\value+\totalnum}% - \global\let\totalnum=\pgfmathresult% - }% - \begin{tikzpicture} - - % Calculate the thickness and the middle line of the wheel - \pgfmathsetmacro{\wheelwidth}{\outerradius-\innerradius} - \pgfmathsetmacro{\midradius}{(\outerradius+\innerradius)/2} - \pgfmathsetmacro{\totalrot}{-90 + #1} - - % Rotate so we start from the top - \begin{scope}[rotate=\totalrot] - - % Loop through each value set. \cumnum keeps track of where we are in the wheel - \pgfmathsetmacro{\cumnum}{0} - \foreach \value/\width/\colour/\name in {#4} { - \pgfmathsetmacro{\newcumnum}{\cumnum + \value/\totalnum*360} - - % Calculate the percent value - \pgfmathsetmacro{\percentage}{\value/\totalnum*100} - % Calculate the mid angle of the colour segments to place the labels - \pgfmathsetmacro{\midangle}{-(\cumnum+\newcumnum)/2} - - % This is necessary for the labels to align nicely - \pgfmathparse{ - (-\midangle>180?"west":"east") - } \edef\textanchor{\pgfmathresult} - \pgfmathparse{ - (-\midangle>180?"flush left":"flush right") - } \edef\textalign{\pgfmathresult} - \pgfmathsetmacro\labelshiftdir{1-2*(-\midangle<180)} - - % Draw the color segments. Somehow, the \midrow units got lost, so we add 'pt' at the end. Not nice... - \filldraw[draw=white,fill=\colour] (-\cumnum:\outerradius) arc (-\cumnum:-(\newcumnum):\outerradius) -- - (-\newcumnum:\innerradius) arc (-\newcumnum:-(\cumnum):\innerradius) -- cycle; - - % Draw the data labels - \draw [*-,thin,emphasis] node [append after command={(\midangle:\midradius pt) -- (\midangle:\outerradius + 1ex) -- (\tikzlastnode)}] at (\midangle:\outerradius + 1ex) [xshift=\labelshiftdir*0.5cm,inner sep=1ex, outer sep=0pt, text width=\width,anchor=\textanchor,align=\textalign,font=\small,text=body]{\name}; - % Set the old cumulated angle to the new value - \global\let\cumnum=\newcumnum - } - \end{scope} -% \draw[gray] (0,0) circle (\outerradius) circle (\innerradius); - \end{tikzpicture}\par - \endgroup -} - -\newcommand{\cvref}[3]{% - \smallskip - \textcolor{emphasis}{\textbf{#1}}\par - \begin{description}[font=\color{accent},style=multiline,leftmargin=1.35em,align=left] - \item[\small\normalfont\emailsymbol] #2 - \item[\small\normalfont\mailaddresssymbol] #3 - \end{description} -% \medskip -} - -\newenvironment{cvcolumn}[1]{\begin{minipage}[t]{#1}\raggedright}{\end{minipage}} - -\RequirePackage[backend=biber,style=authoryear,sorting=ydnt]{biblatex} -%% For removing numbering entirely when using a numeric style -% \setlength{\bibhang}{1em} -% \DeclareFieldFormat{labelnumberwidth}{\makebox[\bibhang][l]{\itemmarker}} -% \setlength{\biblabelsep}{0pt} -\defbibheading{pubtype}{\cvsubsection{#1}} -\renewcommand{\bibsetup}{\vspace*{-\baselineskip}} -\AtEveryBibitem{\makebox[\bibhang][l]{\itemmarker}} -\setlength{\bibitemsep}{0.25\baselineskip} - -% v1.1.2: make it easier to add a sidebar aligned with top of next page -\RequirePackage{afterpage} -\newcommand{\addsidebar}[2][]{\marginpar{% - \ifstrequal{#1}{}{}{\vspace*{#1}}% - \input{#2}}% -} -\newcommand{\addnextpagesidebar}[2][]{\afterpage{\addsidebar[#1]{#2}}} - -\AtBeginDocument{% - \pagestyle{empty} - \color{body} - \raggedright -} diff --git a/tags b/tags new file mode 100644 index 0000000..c9e2ae6 --- /dev/null +++ b/tags @@ -0,0 +1,78 @@ +!_TAG_EXTRA_DESCRIPTION anonymous /Include tags for non-named objects like lambda/ +!_TAG_EXTRA_DESCRIPTION fileScope /Include tags of file scope/ +!_TAG_EXTRA_DESCRIPTION pseudo /Include pseudo tags/ +!_TAG_EXTRA_DESCRIPTION subparser /Include tags generated by subparsers/ +!_TAG_FIELD_DESCRIPTION epoch /the last modified time of the input file (only for F\/file kind tag)/ +!_TAG_FIELD_DESCRIPTION file /File-restricted scoping/ +!_TAG_FIELD_DESCRIPTION input /input file/ +!_TAG_FIELD_DESCRIPTION name /tag name/ +!_TAG_FIELD_DESCRIPTION pattern /pattern/ +!_TAG_FIELD_DESCRIPTION typeref /Type and name of a variable or typedef/ +!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ +!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ +!_TAG_KIND_DESCRIPTION!Markdown S,subsection /level 2 sections/ +!_TAG_KIND_DESCRIPTION!Markdown T,l4subsection /level 4 sections/ +!_TAG_KIND_DESCRIPTION!Markdown c,chapter /chapters/ +!_TAG_KIND_DESCRIPTION!Markdown h,hashtag /hashtags/ +!_TAG_KIND_DESCRIPTION!Markdown n,footnote /footnotes/ +!_TAG_KIND_DESCRIPTION!Markdown s,section /sections/ +!_TAG_KIND_DESCRIPTION!Markdown t,subsubsection /level 3 sections/ +!_TAG_KIND_DESCRIPTION!Markdown u,l5subsection /level 5 sections/ +!_TAG_KIND_DESCRIPTION!Sh a,alias /aliases/ +!_TAG_KIND_DESCRIPTION!Sh f,function /functions/ +!_TAG_KIND_DESCRIPTION!Sh h,heredoc /label for here document/ +!_TAG_KIND_DESCRIPTION!Sh s,script /script files/ +!_TAG_KIND_DESCRIPTION!Tex B,bibitem /bibliography items/ +!_TAG_KIND_DESCRIPTION!Tex C,command /command created with \\newcommand/ +!_TAG_KIND_DESCRIPTION!Tex G,subparagraph /subparagraphs/ +!_TAG_KIND_DESCRIPTION!Tex N,counter /counter created with \\newcounter/ +!_TAG_KIND_DESCRIPTION!Tex P,paragraph /paragraphs/ +!_TAG_KIND_DESCRIPTION!Tex b,subsubsection /subsubsections/ +!_TAG_KIND_DESCRIPTION!Tex c,chapter /chapters/ +!_TAG_KIND_DESCRIPTION!Tex e,environment /environment created with \\newenvironment/ +!_TAG_KIND_DESCRIPTION!Tex i,xinput /external input files/ +!_TAG_KIND_DESCRIPTION!Tex l,label /labels/ +!_TAG_KIND_DESCRIPTION!Tex o,operator /math operator created with \\DeclareMathOperator/ +!_TAG_KIND_DESCRIPTION!Tex p,part /parts/ +!_TAG_KIND_DESCRIPTION!Tex s,section /sections/ +!_TAG_KIND_DESCRIPTION!Tex t,theorem /theorem created with \\newtheorem/ +!_TAG_KIND_DESCRIPTION!Tex u,subsection /subsections/ +!_TAG_OUTPUT_EXCMD mixed /number, pattern, mixed, or combineV2/ +!_TAG_OUTPUT_FILESEP slash /slash or backslash/ +!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/ +!_TAG_OUTPUT_VERSION 0.0 /current.age/ +!_TAG_PARSER_VERSION!Markdown 1.1 /current.age/ +!_TAG_PARSER_VERSION!Sh 0.0 /current.age/ +!_TAG_PARSER_VERSION!Tex 0.0 /current.age/ +!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/ +!_TAG_PROC_CWD /home/mike/prog/resume/ // +!_TAG_PROGRAM_AUTHOR Universal Ctags Team // +!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/ +!_TAG_PROGRAM_URL https://ctags.io/ /official site/ +!_TAG_PROGRAM_VERSION 6.1.0 /v6.1.0/ +!_TAG_ROLE_DESCRIPTION!Sh!heredoc endmarker /end marker/ +!_TAG_ROLE_DESCRIPTION!Sh!script loaded /loaded/ +!_TAG_ROLE_DESCRIPTION!Tex!xinput bibliography /bibliography (.bib) file/ +!_TAG_ROLE_DESCRIPTION!Tex!xinput included /external input file specified with \\include/ +!_TAG_ROLE_DESCRIPTION!Tex!xinput input /external input file specified with \\input/ +AV Technical Crew @ University of Essex Students Union / Sep 2021 - Jun 2022 resume.tex /^\\subsection{AV Technical Crew @ University of Essex Students Union \/ Sep 2021 - Jun 2022}$/;" u section:Employment +B.Eng in Computer Systems Engineering @ University of Essex / 2019 - 2022 resume.tex /^\\subsection{B.Eng in Computer Systems Engineering @ University of Essex \/ 2019 - 2022}$/;" u section:Education +Ben Wilson / Head of Production @ TDP Marketing resume.tex /^\\subsection{Ben Wilson \/ Head of Production @ TDP Marketing} benwilson@tdpmarketing.com $/;" u section:References +Callum Bartlett / AV Technical Coordinator @ University Of Essex Students Union resume.tex /^\\subsection{Callum Bartlett \/ AV Technical Coordinator @ University Of Essex Students Union} c/;" u section:References +Database Administrator @ TDP Marketing / Dec 2018 - Aug 2019 resume.tex /^\\subsection{Database Administrator @ TDP Marketing \/ Dec 2018 - Aug 2019}$/;" u section:Employment +Education resume.tex /^\\section{Education}$/;" s +Employment resume.tex /^\\section{Employment}$/;" s +Experience resume.tex /^\\section{Experience}$/;" s +Mathew Staples / Lead Developer @ Alan Blunden resume.tex /^\\subsection{Mathew Staples \/ Lead Developer @ Alan Blunden} mathew.staples@alanblunden.co.uk$/;" u section:References +National Citizen Service resume.tex /^\\subsection{National Citizen Service} Helped to create a sensory garden near Ipswich Hospital (/;" u section:Experience +References resume.tex /^\\section{References}$/;" s +Resume README.md /^# Resume$/;" c +Software Developer @ Alan Blunden / Jun 2022 - Present / Fully Remote resume.tex /^\\subsection{Software Developer @ Alan Blunden \/ Jun 2022 - Present \/ Fully Remote}$/;" u section:Employment +\\familydefault resume.tex /^\\renewcommand{\\familydefault}{\\sfdefault}$/;" C +\\github resume.tex /^\\newcommand{\\github}{https:\/\/github.com\/mskorczak}$/;" C +\\href{\\github/.config}{github/.config} resume.tex /^\\subsection{\\href{\\github\/.config}{github\/.config}} Miscellaneous Bash scripts and configs /;" u section:Experience +\\href{\\github/jungle}{github/jungle} resume.tex /^\\subsection{\\href{\\github\/jungle}{github\/jungle}} Server\/Client config for a private Minec/;" u section:Experience +\\href{\\github/panels}{github/panels} resume.tex /^\\subsection{\\href{\\github\/panels}{github\/panels}} Terminal user interface developed for my /;" u section:Experience +\\href{\\github/web}{github/web} resume.tex /^\\subsection{\\href{\\github\/web}{github\/web}} General purpose web-server written in Zig for m/;" u section:Experience +\\maketitle resume.tex /^\\renewcommand{\\maketitle}$/;" C +mlist resume.tex /^\\newenvironment{mlist}$/;" e