cv-boilerplate

Programmatic generation of high-quality CVs
授权协议 Readme
开发语言
所属分类 企业应用、 LaTeX排版系统
软件类型 开源软件
地区 不详
投 递 者 姜聪
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

CV Boilerplate

I consider LaTeX resumes to be a secret handshake of sorts, something that makes me significantly more likely to be inclined to hire a candidate.
zackelan on HN

A boilerplate to ease the pain of building and maintaining a CV or résumé using LaTeX.

Intro

The separation of content from presentation is considered a universal best practice. The typical content of a CV is a perfect fit for a YAML file due to its structured nature:

---
name: Friedrich Nietzsche
address:
- Humboldtstraße 36
- 99425 Weimar
- Prussia
email: friedrich@thevoid.de
# ...
experience:
- years: 1879--1889
  employer: Freiberufler
  job: Freier Philosoph
  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, we can then access our data from template.tex using a special notation. Iterating on repetitive data structures becomes trivial:

$for(experience)$
  $experience.years$\\
  \textsc{$experience.employer$}\\
  \emph{$experience.job$}\\
  $experience.city$\\[.2cm]
$endfor$

LaTeX takes then care of the typesetting with its usual elegance. Below a preview of the final result. Check out the output to see the compiled PDF.

With this method, you can keep your entire CV encoded in a single YAML file, put it under version control (into a gist, for instance), and generate a PDF on the fly when needed. You can also easily export it to other formats, like HTML for web publishing (I've heard Jekyll likes YAML). Convenient, portable and time-proof.

Dependencies

  1. LaTeX with the following extra packages: fontspec geometry multicol xunicode xltxtra marginnote sectsty ulem hyperref polyglossia
  2. Pandoc, the universal document converter.

I highly recommend TinyTeX as LaTeX distribution. All additional packages can be installed with tlmgr as needed.

Getting started

  1. Fill details.yml with your personal details, work experience, education, and desired settings.
  2. Run make to compile the PDF.
  3. Tweak on template.tex until you're satisfied with the result.

Note: this template needs to be compiled with XeTeX.

Note for Windows users

Although I didn't test it, you can probably use this on Windows, too. Both Pandoc and LaTeX can be installed on Windows and you should be able to run makefiles on Windows through Cygwin. If that's too much hassle, this command should do the trick in Powershell:

pandoc details.yml -o output.pdf --template=template.tex --pdf-engine=xelatex

Available settings

  • mainfont: Hoefler Text is the default, but every font installed on your system should work out of the box thanks to 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 to learn how this package works.

Recommended readings

Resources

  • TinyTeX is a lightweight, cross-platform, portable, and easy-to-maintain LaTeX distribution based on TeX Live.
  • Refer to pandoc's documentation to learn more about how templates work.
  • If you're not familiar with the YAML syntax, here's a good overview.
  • If you want to edit the template but LaTeX scares you, these docs put together by ShareLaTeX cover most of the basics and are surprisingly kind to the beginner.
  • Odds are your question already has an answer on TeX Stack Exchange. Also, pretty friendly crowd in there.

See also

License

This repository contains a modified version of Dario Taraborelli's cvtex template.

License: CC BY-SA 3.0

 相关资料
  • McDowell CV McDowell CV is a LuaLaTeX class for building neat and space-efficient CVs using the design originally proposed by Gayle L. McDowell athttp://www.careercup.com/resume. The class is based on

  • md-cv A jekyll-based markdown CV, which currently looks something like this, see this blog post for details. Forked from the (great) markdown CV of elipapa. How to use To build, clone the repo and run

  • markdown-cv A curriculum vitae maintained in plain text and rendered to HTML and PDF using CSS. For more details, see the project page, or the blog post on why I switched to markdown for my CV. Custom

  • Awesome-CV 是制作简历或求职信的 LaTeX 模板,使得定制自己的模板很容易,因为它是由一种干净的语义标记编写的。 特点 LaTeX 是一个非常棒的排字程序,很多人都在使用,尤其是数学界和计算机科学界 LaTe FontAwome 是 XeLaTeX 中使用的 FontAwome 图标的绑定 Roboto 是 Android 和 ChromeOS 上的默认字体,也是 Google 视觉语

  • Emgu CV 是 OpenCV 的跨平台的 .NET 封装包,可在 .NET 兼容语言(C#, VB, VC++, IronPython) 中直接调用 OpenCV 提供的图像处理方法,支持 Windows Linux 和 OS X

  • 在我的应用程序中,我有一个通过引用接收CV::MAT对象的函数。下面是函数的声明: 这个函数是递归的,在主函数的第一次调用中并不真正需要aaa,所以我只是声明了一个空aaa来将它传递给函数调用。在随后的递归调用中,function生成自己的ch Mat对象。 Main.cpp:75:错误:从“CV::MAT(*)()”类型的临时值初始化“CV::MAT&”类型的非常量引用无效。H:21:错误:在传