80 lines
3.3 KiB
Markdown
80 lines
3.3 KiB
Markdown
# CV/Résumé Boilerplate
|
||
|
||
A boilerplate to ease the pain of building and maintaining a CV or résumé using LaTeX.
|
||
|
||
Separating presentation from content makes life easier. The typical content of a CV is a perfect fit for the yaml syntax due to its structured nature:
|
||
|
||
```YAML
|
||
---
|
||
name: Friedrich Nietzsche
|
||
address:
|
||
- Humboldtstraße 36
|
||
- 99425 Weimar
|
||
- Prussia
|
||
email: friedrich@thevoid.de
|
||
# ...
|
||
experience:
|
||
- years: 1879--1889
|
||
employer: Freiberufler
|
||
job: Freier Philisoph
|
||
city: Sils-Maria
|
||
- years: 1869–-1879
|
||
employer: Universität Basel
|
||
job: Professor für klassische Philologie
|
||
city: Basel
|
||
```
|
||
|
||
That makes super easy to update a CV while keeping a consistent structure.
|
||
|
||
Thanks to [pandoc](http://pandoc.org/), we can then access our data from `template.tex` by using a special notation. Iterating on repetitive data structures becomes trivial:
|
||
|
||
```latex
|
||
$for(experience)$
|
||
$experience.years$\\
|
||
\textsc{$experience.employer$}\\
|
||
\emph{$experience.job$}\\
|
||
$experience.city$\\[.2cm]
|
||
$endfor$
|
||
```
|
||
|
||
Below a preview of the final result. Check out the [output](output.pdf) to see the compiled PDF.
|
||
|
||
![preview](preview.jpg)
|
||
|
||
## Dependencies
|
||
|
||
1. LaTeX with the following extra packages: `fontspec` `geometry` `multicol` `xunicode` `xltxtra` `marginnote` `sectsty` `ulem` `hyperref` `polyglossia`
|
||
2. Pandoc
|
||
|
||
To install LaTeX on Mac OS X, I recommend getting the smaller version BasicTeX from [here](https://tug.org/mactex/morepackages.html) and installing the additional packages with `tlmgr` afterwards. Same goes for Linux: install `texlive-base` with your package manager and add the needed additional packages later.
|
||
|
||
To install pandoc on Mac OS X, run `brew install pandoc`. To install it on Linux, refer to the [official docs](http://pandoc.org/installing.html).
|
||
|
||
## Getting started
|
||
|
||
Edit `content.yml` with your personal details, work experience, education, and desired settings. Run `make` to compile the PDF. Tweak on `template.tex` until you're satisfied with the result.
|
||
|
||
Refer to [pandoc's documentation](http://pandoc.org/demo/example9/templates.html) to learn more about how templates work.
|
||
|
||
Note: this template needs to be compiled with XeTeX.
|
||
|
||
## Available settings
|
||
|
||
- **`mainfont`**: Hoefler Text is the default, but every font installed in your system should work out of the box (thanks, XeTeX!).
|
||
- **`fontsize`**: Possible values here are 10pt, 11pt and 12pt.
|
||
- **`lang`**: Sets the main language through the `polyglossia` package. This is important for proper hyphenation, among other things.
|
||
- **`geometry`**: A string that sets the margins through `geometry`. Read [this](https://www.sharelatex.com/learn/Page_size_and_margins) to learn how this package works.
|
||
|
||
## Recommended reading
|
||
|
||
- [Why I do my résumé in LaTeX](http://www.toofishes.net/blog/why-i-do-my-resume-latex/) by Dan McGee
|
||
- [What are the benefits of writing resumes in TeX/LaTeX?](http://tex.stackexchange.com/questions/11955/what-are-the-benefits-of-writing-resumes-in-tex-latex) on TeX Stack Exchange
|
||
- [Typesetting your academic CV in LaTeX](http://nitens.org/taraborelli/cvtex) by Dario Taraborelli
|
||
- [Résumé advices](http://practicaltypography.com/resumes.html) from Butterick's Practical Typography
|
||
|
||
## License
|
||
|
||
This repository contains a modified version of Dario Taraborelli's [cvtex](https://github.com/dartar/cvtex) template.
|
||
|
||
License: [CC BY-SA 3.0](http://creativecommons.org/licenses/by-sa/3.0/)
|