Skip to content

Instantly share code, notes, and snippets.

@pdxmph
Last active March 17, 2019 19:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pdxmph/cda2999d6131c10cebe5cd2019000747 to your computer and use it in GitHub Desktop.
Save pdxmph/cda2999d6131c10cebe5cd2019000747 to your computer and use it in GitHub Desktop.
Resume generation Rakefile
#!/usr/bin/env ruby
require 'json'
require 'date'
require 'erb'
resume_json = File.read("resume.json")
@resume = JSON.parse(resume_json)
md_template_file = File.read('erb/resume.md.erb')
latex_template_file = File.read('erb/experience.tex.erb')
@jobs = @resume["work"]
def pretty(date)
if date
return Date.parse(date).strftime("%b %-d, %Y")
else
return "Present"
end
end
desc "Create LaTeX experience file"
task :build_tex do
latex_template = ERB.new(latex_template_file, nil, '-')
latex_page = latex_template.result
File.write('resume_elements/experience_auto.tex', latex_page)
end
desc "Generate PDF resume"
task :pdf do
`/Library/TeX/texbin/xelatex resume.tex`
`mv resume.pdf artifacts/hall_resume.pdf`
end
desc "Create Markdown resume from resume.json"
task :markdown do
md_template = ERB.new(md_template_file, nil, '-')
md_page = md_template.result
File.write('artifacts/hall_resume.md', md_page)
end
desc "Build the latex and generate Markdown and PDF resumes"
task :make do
Rake::Task["build_tex"].invoke
Rake::Task["pdf"].invoke
Rake::Task["markdown"].invoke
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment