-
Notifications
You must be signed in to change notification settings - Fork 23
/
preamble.tex
113 lines (107 loc) · 3.35 KB
/
preamble.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
% E. Dunham -- Resume
% Contents Copyright (C) 2014 - 2016, E. Dunham
% LaTeX code for rendering the resume is distributed under the MIT license.
% See LICENSE.txt. It means you can use the code for whatever you want,
% including your own resume, but I'm not liable if it catches your computer on
% fire.
% Template originally developed by E. Dunham
% https://github.com/edunham/resume/blob/master/resume.tex
\usepackage[normalem]{ulem} % for the underlines
\usepackage[compact]{titlesec} % Shrink default spacings
\usepackage{tabto} % For aligning skills section
\usepackage{multicol} % for multicols command
\usepackage{ragged2e} % for /justify
\textwidth=7in
\textheight=10.5in
\topmargin -1in % Reclaim the default whitespace from top of page
\oddsidemargin -.25in % Reclaim whitespace on left, make it look centered
\pagenumbering{gobble} % Don't number pages
\setlength{\parindent}{0pt} % Don't indent paragraphs
\newcommand{\heading}[1]{
% \section*{\centering\uline{\hfill #1 \hfill }} % Center the headings
\section*{\uline{\hfill #1 }} % Right-align the headings
}
\newcommand{\squish}{
\setlength{\parskip}{\whitespaciness pt}
}
\newcommand{\when}[1]{ % naming this 'date' would conflict with builtins
\typeoffill \texttt{ #1}
}
\newcommand{\experience}[3]{ % place, optional title, date
\ifx&
\item[{#1}]
\else
\item[{#1}, \emph{#2}]
\fi
\when{#3}
}
\newcommand{\event}[4]{
\bf{#1} \tabto{2in} \texttt{#2} \tabto{3in} \normalfont
\ifx& \else
\emph{ {#3},}
\fi
``{#4}''
}
\newcommand{\contact}[4]{
\centerline{ \large \texttt{ #1 $\bullet$ #2 $\bullet$ #3 }}
\centerline{ \emph{ #4 $\bullet$ R\'{e}sum\'{e} current as of \today}}
}
\newcommand{\skill}[2]{
\textbf{#1} \tabto{2.5in} #2
}
% Write C++ all fancy-like
% http://www.parashift.com/c++-faq-lite/latex-macros.html
\newcommand{\CPP}{
C\hspace{-.05em}\raisebox{.4ex}{\tiny\bf +}\hspace{-.10em}\raisebox{.4ex}{\tiny\bf +}
}
% alternative to \skill, for extended lists of skills
% columnsep can be used here to unbalance the columns, with a negative number
% increasing the size of the right column versus the left. '0cm' or equivalent
% will keep them balanced
%
% params: columnsep, heading, individual skills
\newcommand{\skillz}[3]{
\vspace{-0.5cm}
\squish
\setlength{\columnsep}{#1}
\begin{multicols}{2}
\squish
\RaggedRight % force to the hard left of the column
\small
\textbf{#2}
\columnbreak
\squish
\justify
\small
#3
\end{multicols}
\vspace{-0.2cm} % yes, really necessary to keep this self-contained
}
% based on https://tex.stackexchange.com/a/148803
% intended to increase readability of longer entries under 'experience'
% params: indent/margin, item separation, top separation
\newenvironment{hangingparlist}[3]
{\begin{list}
{}
{\setlength{\itemindent}{-#1}%%
\setlength{\leftmargin}{#1}%%
\setlength{\itemsep}{#2}%%
\setlength{\parsep}{#2}%%
\setlength{\topsep}{#3}%%
}
\setlength{\parindent}{-#1}%%
\item[]
}
{\end{list}}
% Projects/Contributions
% params: name, optional website, description
\newcommand{\project}[3]{
\begin{description}
\setlength{\parsep}{1em}
\ifx&
\item[#1] --- #3
\else
\item[#1]\emph{#2} --- #3
\fi
\end{description}
}