This resume system stores content in a YAML file and uses Ruby's ERB templating system to handle format and layout. Currently, the only two templates implemented are HTML and LaTeX. You can use pdflatex to create a PDF file from the generated LaTeX file.
escape_html.rb
and escape_tex.rb
define escape
functions for handling special characters in LaTex or HTML. (For example, &
must be escaped as \&
in HTML, and \\&
in LaTeX. The escape
function also handles other special cases, including links.) Escape characters must appear in square brackets in the YAML file. For example, to include an ampersand, use [&]
.
Store private contact information in the private.yml
file. This information will be omitted from the "web" version of the generated resume (selected with the -w
or --web
option). This is to prevent certain contact information (e.g. phone number, address) from being uploaded to a public repository or website. For an example, see private.example.yml
.
This project was inspired by David Hu's resume project.
For examples, my templates are included in this repository, while the generated resumes are on my website.
This project was always intended to solve a very specific, personal problem, rather than to be for general use. However, I am more than happy to review pull requests. If the changes are compatible with my use case, I'll accept them.
I would like to thank tshieh for adding OptionParser and updating the documentation.
Feel free to fork or use this project and adapt the templates for your own resume. (Obviously, the resume content is mine.)
Usage: generate.rb [options]
-i, --input INPUT input file
-p, --private PRIVATE private input file
-t, --template TEMPLATE template file
-w, --web create a web version omitting private information
- Ruby
- LaTeX