mirror of
https://github.com/JuanCanham/fresh-themes.git
synced 2024-12-22 12:57:22 +00:00
Awesome: Update from upstream.
Refresh files for "Awesome" theme, now driven by fluentdesk/Awesome-CV, a templatized fork of posquit0/Awesome-CV.
This commit is contained in:
parent
cad46c2270
commit
e2a04958b0
20
themes/awesome/src/latex/.gitignore
vendored
Normal file
20
themes/awesome/src/latex/.gitignore
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
### TeX ###
|
||||
## Core latex/pdflatex auxiliary files:
|
||||
*.aux
|
||||
*.lof
|
||||
*.log
|
||||
*.lot
|
||||
*.fls
|
||||
*.out
|
||||
*.toc
|
||||
|
||||
## Intermediate documents:
|
||||
*.dvi
|
||||
*-converted-to.*
|
||||
<<<<<<< HEAD
|
||||
|
||||
### Editor ###
|
||||
## Vim & Emacs temp files:
|
||||
.*sw[op]
|
||||
*~
|
||||
|
3
themes/awesome/src/latex/Makefile
Normal file
3
themes/awesome/src/latex/Makefile
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
test:
|
||||
cd examples/ ; for f in *.tex; do xelatex $$f; done
|
59
themes/awesome/src/latex/README.md
Normal file
59
themes/awesome/src/latex/README.md
Normal file
@ -0,0 +1,59 @@
|
||||
# Awesome CV
|
||||
*A template-friendly fork of Byungjin Park's [Awesome-CV][awe] resume template.*
|
||||
|
||||
This fork replaces each occurrence of hard-coded resume data in the original
|
||||
Awesome-CV project with an expandable template tag, allowing you to generate a
|
||||
personalized copy of Awesome-CV without hand-editing the `.tex` files.
|
||||
|
||||
Otherwise, it's identical to the original.
|
||||
|
||||
## Use
|
||||
|
||||
When expanded with [Underscore.js][und] and a [FRESH resume][fre] object (JSON),
|
||||
this project yields an Awesome-CV template, in LaTeX, but with your resume data.
|
||||
You can then use a tool like `xelatex` or similar to generate the final PDF.
|
||||
|
||||
**Step 1**: Use a FRESH-aware template expansion tool like [HackMyResume][hmr]
|
||||
to generate the personalized LaTeX:
|
||||
|
||||
```bash
|
||||
hackmyresume build resume.json -t awesome
|
||||
```
|
||||
|
||||
**Step 2**: Use conventional LaTeX tools to generate a PDF or other destination
|
||||
format from the (personalized) Awesome-CV LaTeX files:
|
||||
|
||||
```bash
|
||||
xelatex examples/resume.tex
|
||||
```
|
||||
|
||||
**Step 3**: When you need to update your resume, update the source JSON, and
|
||||
re-generate destination formats as needed.
|
||||
|
||||
## Notes
|
||||
|
||||
- This project is intermittently synced with the upstream master to get the
|
||||
benefit of any new changes or tweaks.
|
||||
|
||||
- The template tags are based on the Underscore.js template syntax but with a
|
||||
modified set of template delimiters that reduce conflicts with LaTeX
|
||||
metacharacters such as `{` or `%`.
|
||||
|
||||
- Underscore.js was chosen because its minimalistic template engine supports
|
||||
custom delimiters (Handlebars [doesn't][hb350], except [unofficially][un]) and
|
||||
allows execution of arbitrary JavaScript in the template.
|
||||
|
||||
- This project indirectly drives the `awesome` theme in HackMyResume and
|
||||
FluentCV. Technically the latter is a fork of this project, which itself is a
|
||||
fork of the original Awesome-CV for LaTeX.
|
||||
|
||||
## License
|
||||
|
||||
See the original project for license information.
|
||||
|
||||
[awe]: https://github.com/posquit0/Awesome-CV
|
||||
[hmr]: http://please.hackmyresume.com
|
||||
[fre]: http://freshstandard.org
|
||||
[und]: http://underscorejs.org/#template
|
||||
[hb350]: https://github.com/wycats/handlebars.js/issues/350
|
||||
[un]: https://github.com/jonschlinkert/handlebars-delimiters
|
@ -1,12 +1,27 @@
|
||||
%% Start of file `awesome-cv.cls'.
|
||||
%% Copyright 2015 Claud D. Park <posquit0.bj@gmail.com>
|
||||
% Awesome CV Class File
|
||||
%
|
||||
% This class has been downloaded from:
|
||||
% https://github.com/posquit0/Awesome-CV
|
||||
%
|
||||
% Author:
|
||||
% Claud D. Park <posquit0.bj@gmail.com>
|
||||
% http://www.posquit0.com
|
||||
%
|
||||
% Notes:
|
||||
% 1) This class file defines the structure and layout of the template file (cv.tex, resume.tex).
|
||||
% 2) It has been written in such a way that under most circumstances you
|
||||
% should not need to edit it.
|
||||
%
|
||||
% Class license:
|
||||
% LPPL v1.3c (http://www.latex-project.org/lppl)
|
||||
%
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% Identification
|
||||
%-------------------------------------------------------------------------------
|
||||
\ProvidesClass{awesome-cv}[2015/11/19 v1.1.0 Awesome Curriculum Vitae Class]
|
||||
\ProvidesClass{awesome-cv}[2016/01/30 v1.5 Awesome Curriculum Vitae Class]
|
||||
\NeedsTeXFormat{LaTeX2e}
|
||||
|
||||
|
||||
@ -21,7 +36,7 @@
|
||||
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
|
||||
\DeclareOption{final}{\setlength\overfullrule{0pt}}
|
||||
% Inherit options of article
|
||||
\DeclareOption*{
|
||||
\DeclareOption*{%
|
||||
\PassOptionsToClass{\CurrentOption}{article}
|
||||
}
|
||||
\ProcessOptions\relax
|
||||
@ -49,32 +64,26 @@
|
||||
\RequirePackage{xifthen}
|
||||
% Needed to use a toolbox of programming tools
|
||||
\RequirePackage{etoolbox}
|
||||
% Needed to change line spacing in specific environment
|
||||
\RequirePackage{setspace}
|
||||
% Needed to manage fonts
|
||||
\ifxetex
|
||||
\RequirePackage[quiet]{fontspec}
|
||||
% To support LaTeX quoting style
|
||||
\defaultfontfeatures{Ligatures=TeX}
|
||||
\else
|
||||
\RequirePackage[T1]{fontenc}
|
||||
% Replace by the encoding you are using
|
||||
\RequirePackage[utf8]{inputenc}
|
||||
\fi
|
||||
\RequirePackage[quiet]{fontspec}
|
||||
% To support LaTeX quoting style
|
||||
\defaultfontfeatures{Ligatures=TeX}
|
||||
% Needed to manage math fonts
|
||||
\RequirePackage[math-style=TeX,vargreek-shape=unicode]{unicode-math}
|
||||
% Needed to use icons from font-awesome
|
||||
% (https://github.com/furl/latex-fontawesome)
|
||||
% (https://github.com/posquit0/latex-fontawesome)
|
||||
\RequirePackage{fontawesome}
|
||||
% Needed to deal a paragraphs
|
||||
\RequirePackage{parskip}
|
||||
% Needed to deal hyperlink
|
||||
\RequirePackage{hyperref}
|
||||
\hypersetup{
|
||||
\RequirePackage[hidelinks]{hyperref}
|
||||
\hypersetup{%
|
||||
pdftitle={},
|
||||
pdfauthor={},
|
||||
pdfsubject={},
|
||||
pdfkeywords={},
|
||||
colorlinks=false,
|
||||
allbordercolors=white
|
||||
pdfkeywords={}
|
||||
}
|
||||
|
||||
|
||||
@ -94,7 +103,7 @@
|
||||
\geometry{left=2.0cm, top=1.5cm, right=2.0cm, bottom=2.0cm, footskip=.5cm}
|
||||
|
||||
%% Header & Footer
|
||||
% Set offset to each header and offset
|
||||
% Set offset to each header and footer
|
||||
\fancyhfoffset{0em}
|
||||
% Remove head rule
|
||||
\renewcommand{\headrulewidth}{0pt}
|
||||
@ -135,21 +144,13 @@
|
||||
\definecolor{awesome-darknight}{HTML}{131A28}
|
||||
\colorlet{awesome}{awesome-red}
|
||||
|
||||
% Boolean value to switch section color highlighting
|
||||
\newbool{acvSectionColorHighlight}
|
||||
\setbool{acvSectionColorHighlight}{true}
|
||||
|
||||
% Awesome section color
|
||||
\newcounter{colorCounter}
|
||||
\def\@sectioncolor#1#2#3{%
|
||||
{%
|
||||
\color{%
|
||||
\ifcase\value{colorCounter}%
|
||||
awesome\or%
|
||||
awesome\or%
|
||||
awesome\or%
|
||||
awesome\or%
|
||||
awesome\else%
|
||||
awesome\fi%
|
||||
} #1#2#3%
|
||||
}%
|
||||
\stepcounter{colorCounter}%
|
||||
\ifbool{acvSectionColorHighlight}{{\color{awesome}#1#2#3}}{#1#2#3}%
|
||||
}
|
||||
|
||||
|
||||
@ -198,6 +199,15 @@
|
||||
BoldItalicFont=*-SemiboldIt
|
||||
]{SourceSansPro}
|
||||
|
||||
% Set main font
|
||||
\setmainfont[
|
||||
Path=\@fontdir,
|
||||
UprightFont=*-Regular,
|
||||
ItalicFont=*-It,
|
||||
BoldFont=*-Bold,
|
||||
BoldItalicFont=*-BoldIt
|
||||
]{SourceSansPro}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% Configuration for styles
|
||||
@ -213,6 +223,7 @@
|
||||
\newcommand*{\footerstyle}[1]{{\fontsize{8pt}{1em}\footerfont\scshape\color{lighttext} #1}}
|
||||
\newcommand*{\sectionstyle}[1]{{\fontsize{16pt}{1em}\bodyfont\bfseries\color{text}\@sectioncolor #1}}
|
||||
\newcommand*{\subsectionstyle}[1]{{\fontsize{12pt}{1em}\bodyfont\scshape\textcolor{text}{#1}}}
|
||||
\newcommand*{\paragraphstyle}{\fontsize{9pt}{1em}\bodyfontlight\upshape\color{graytext}}
|
||||
|
||||
% For elements of entry
|
||||
\newcommand*{\entrytitlestyle}[1]{{\fontsize{10pt}{1em}\bodyfont\bfseries\color{darktext} #1}}
|
||||
@ -238,6 +249,16 @@
|
||||
\newcommand*{\skilltypestyle}[1]{{\fontsize{10pt}{1em}\bodyfont\bfseries\color{darktext} #1}}
|
||||
\newcommand*{\skillsetstyle}[1]{{\fontsize{9pt}{1em}\bodyfontlight\color{text} #1}}
|
||||
|
||||
% For elements of the cover letter
|
||||
\newcommand*{\lettersectionstyle}[1]{{\fontsize{14pt}{1em}\bodyfont\bfseries\color{text}\@sectioncolor #1}}
|
||||
\newcommand*{\recipientaddressstyle}[1]{{\fontsize{9pt}{1em}\bodyfont\scshape\color{graytext} #1}}
|
||||
\newcommand*{\recipienttitlestyle}[1]{{\fontsize{11pt}{1em}\bodyfont\bfseries\color{darktext} #1}}
|
||||
\newcommand*{\lettertitlestyle}[1]{{\fontsize{10pt}{1em}\bodyfontlight\bfseries\color{darktext} \underline{#1}}}
|
||||
\newcommand*{\letterdatestyle}[1]{{\fontsize{9pt}{1em}\bodyfontlight\slshape\color{graytext} #1}}
|
||||
\newcommand*{\lettertextstyle}{\fontsize{10pt}{1.4em}\bodyfontlight\upshape\color{graytext}}
|
||||
\newcommand*{\letternamestyle}[1]{{\fontsize{10pt}{1em}\bodyfont\bfseries\color{darktext} #1}}
|
||||
\newcommand*{\letterenclosurestyle}[1]{{\fontsize{10pt}{1em}\bodyfontlight\slshape\color{lighttext} #1}}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% Commands for personal information
|
||||
@ -277,31 +298,87 @@
|
||||
% Usage: \github{<github-nick>}
|
||||
\newcommand*{\github}[1]{\def\@github{#1}}
|
||||
|
||||
% Defines writer's stackoverflow profile (optional)
|
||||
% Usage: \stackoverflow{<so userid>}{<so username>}
|
||||
% e.g.https://stackoverflow.com/users/123456/sam-smith
|
||||
% would be \stackoverflow{123456}{sam-smith}
|
||||
\newcommand*{\stackoverflow}[2]{\def\@stackoverflowid{#1}\def\@stackoverflowname{#2}}
|
||||
|
||||
% Defines writer's linked-in (optional)
|
||||
% Usage: \linkedin{<linked-in-nick>}
|
||||
\newcommand*{\linkedin}[1]{\def\@linkedin{#1}}
|
||||
|
||||
% Defines writer's skype (optional)
|
||||
% Usage: \skype{<skype account>}
|
||||
\newcommand*{\skype}[1]{\def\@skype{#1}}
|
||||
|
||||
% Defines writer's twitter (optional)
|
||||
% Usage: \twitter{<twitter handle>}
|
||||
\newcommand*{\twitter}[1]{\def\@twitter{#1}}
|
||||
|
||||
% Defines writer's skype (optional)
|
||||
% Usage: \skype{<skype account>}
|
||||
\newcommand*{\skype}[1]{\def\@skype{#1}}
|
||||
|
||||
% Defines writer's reddit (optional)
|
||||
% Usage: \reddit{<reddit account>}
|
||||
\newcommand*{\reddit}[1]{\def\@reddit{#1}}
|
||||
|
||||
% Defines writer's extra informations (optional)
|
||||
% Usage: \extrainfo{<extra informations>}
|
||||
\newcommand*{\extrainfo}[1]{\def\@extrainfo{#1}}
|
||||
|
||||
% Defines writer's quote (optional)
|
||||
% Usage: \quote{<quote>}
|
||||
\renewcommand*{\quote}[1]{\def\@quote{#1}}
|
||||
|
||||
% Defines recipient's information (cover letter only)
|
||||
% Usage: \recipient{<recipient name>}{<recipient address>}
|
||||
% Usage: \recipientname{<recipient name>}
|
||||
% Usage: \recipientaddress{<recipient address>}
|
||||
\newcommand*{\recipient}[2]{\def\@recipientname{#1}\def\@recipientaddress{#2}}
|
||||
\newcommand*{\recipientname}[1]{\def\@recipientname{#1}}
|
||||
\newcommand*{\recipientaddress}[1]{\def\@recipientaddress{#1}}
|
||||
|
||||
% Defines the title for letter (cover letter only, optional)
|
||||
% Usage: \lettertitle{<title>}
|
||||
\newcommand*{\lettertitle}[1]{\def\@lettertitle{#1}}
|
||||
|
||||
% Defines the date for letter (cover letter only)
|
||||
% Usage: \letterdate{<date>}
|
||||
\newcommand*{\letterdate}[1]{\def\@letterdate{#1}}
|
||||
|
||||
% Defines a message of opening for letter (cover letter only)
|
||||
% Usage: \letteropening{<message>}
|
||||
\newcommand*{\letteropening}[1]{\def\@letteropening{#1}}
|
||||
|
||||
% Defines a message of closing for letter (cover letter only)
|
||||
% Usage: \letterclosing{<message>}
|
||||
\newcommand*{\letterclosing}[1]{\def\@letterclosing{#1}}
|
||||
|
||||
% Defines an enclosure for letter (cover letter only, optional)
|
||||
% Usage: \letterenclosure[<enclosure name>]{<enclosure>}
|
||||
\newcommand*{\letterenclname}[1][Enclosure]{\def\@letterenclname{#1}}
|
||||
\newcommand*{\letterenclosure}[2][]{%
|
||||
% if an optional argument is provided, use it to redefine \enclname
|
||||
\ifthenelse{\equal{#1}{}}{}{\def\@letterenclname{#1}}
|
||||
\def\@letterenclosure{#2}
|
||||
}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% Commands for extra
|
||||
%-------------------------------------------------------------------------------
|
||||
% Define separator for social informations in header
|
||||
% Usage: \headersocialsep{<separator>}
|
||||
% Default: \quad\textbar\quad
|
||||
\newcommand*{\headersocialsep}[1][\quad\textbar\quad]{\def\@headersocialsep{#1}}
|
||||
\headersocialsep
|
||||
%% Define helper macros a user can change easily
|
||||
% Header
|
||||
\newcommand{\acvHeaderNameDelim}{\space}
|
||||
\newcommand{\acvHeaderAfterNameSkip}{.4mm}
|
||||
\newcommand{\acvHeaderAfterPositionSkip}{.4mm}
|
||||
\newcommand{\acvHeaderAfterAddressSkip}{-.5mm}
|
||||
\newcommand{\acvHeaderIconSep}{\space}
|
||||
\newcommand{\acvHeaderSocialSep}{\quad\textbar\quad}
|
||||
\newcommand{\acvHeaderAfterSocialSkip}{6mm}
|
||||
\newcommand{\acvHeaderAfterQuoteSkip}{5mm}
|
||||
|
||||
% Others
|
||||
\newcommand{\acvSectionTopSkip}{3mm}
|
||||
\newcommand{\acvEntryTopSkip}{2.5mm}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
@ -312,7 +389,7 @@
|
||||
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
|
||||
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
|
||||
|
||||
% Use to draw horizontal line with specific tickness
|
||||
% Use to draw horizontal line with specific thickness
|
||||
\def\vhrulefill#1{\leavevmode\leaders\hrule\@height#1\hfill \kern\z@}
|
||||
|
||||
% Use to execute conditional statements by checking empty string
|
||||
@ -324,159 +401,150 @@
|
||||
%-------------------------------------------------------------------------------
|
||||
% Define a header for CV
|
||||
% Usage: \makecvheader
|
||||
\newcommand*{\makecvheader}{
|
||||
\newcommand*{\makecvheader}{%
|
||||
\begin{center}
|
||||
\headerfirstnamestyle{
|
||||
\@firstname
|
||||
}\headerlastnamestyle{
|
||||
\@lastname
|
||||
}
|
||||
\\
|
||||
\vspace{0.4mm}
|
||||
\ifthenelse{\isundefined{\@position}}{}{\headerpositionstyle{\@position\\}}
|
||||
\vspace{0.4mm}
|
||||
\ifthenelse{\isundefined{\@address}}{}{\headeraddressstyle{\@address\\}}
|
||||
\vspace{-0.5mm}
|
||||
\headersocialstyle{
|
||||
\newbool{isstart}
|
||||
\setbool{isstart}{true}
|
||||
\ifthenelse{\isundefined{\@mobile}}
|
||||
{}
|
||||
{
|
||||
\faMobile\ \@mobile
|
||||
\setbool{isstart}{false}
|
||||
}
|
||||
\ifthenelse{\isundefined{\@email}}
|
||||
{}
|
||||
{
|
||||
\ifbool{isstart}
|
||||
{
|
||||
\setbool{istart}{false}
|
||||
}
|
||||
{\@headersocialsep}
|
||||
\href{mailto:\@email}{\faEnvelope\ \@email}
|
||||
}
|
||||
\ifthenelse{\isundefined{\@homepage}}
|
||||
{}
|
||||
{
|
||||
\ifbool{isstart}
|
||||
{
|
||||
\setbool{istart}{false}
|
||||
}
|
||||
{\@headersocialsep}
|
||||
\href{http://\@homepage}{\faHome\ \@homepage}
|
||||
}
|
||||
\ifthenelse{\isundefined{\@github}}
|
||||
{}
|
||||
{
|
||||
\ifbool{isstart}
|
||||
{
|
||||
\setbool{istart}{false}
|
||||
}
|
||||
{\@headersocialsep}
|
||||
\href{https://github.com/\@github}{\faGithubSquare\ \@github}
|
||||
}
|
||||
\ifthenelse{\isundefined{\@linkedin}}
|
||||
{}
|
||||
{
|
||||
\ifbool{isstart}
|
||||
{
|
||||
\setbool{istart}{false}
|
||||
}
|
||||
{\@headersocialsep}
|
||||
\href{https://www.linkedin.com/in/\@linkedin}{\faLinkedinSquare\ \@linkedin}
|
||||
}
|
||||
\ifthenelse{\isundefined{\@twitter}}
|
||||
{}
|
||||
{
|
||||
\ifbool{isstart}
|
||||
{
|
||||
\setbool{istart}{false}
|
||||
}
|
||||
{\@headersocialsep}
|
||||
\href{https://twitter.com/\@twitter}{\faTwitter\ \@twitter}
|
||||
}
|
||||
\ifthenelse{\isundefined{\@skype}}
|
||||
{}
|
||||
{
|
||||
\ifbool{isstart}
|
||||
{
|
||||
\setbool{istart}{false}
|
||||
}
|
||||
{\@headersocialsep}
|
||||
\faSkype\ \@skype
|
||||
}
|
||||
} \\
|
||||
\ifthenelse{\isundefined{\@quote}}
|
||||
{}
|
||||
{\vspace{6.0mm}\headerquotestyle{\@quote\\}\vspace{5.0mm}}
|
||||
\end{center}
|
||||
\headerfirstnamestyle{\@firstname}\headerlastnamestyle{{}\acvHeaderNameDelim\@lastname}%
|
||||
\\[\acvHeaderAfterNameSkip]%
|
||||
\ifthenelse{\isundefined{\@position}}{}{\headerpositionstyle{\@position\\[\acvHeaderAfterPositionSkip]}}%
|
||||
\ifthenelse{\isundefined{\@address}}{}{\headeraddressstyle{\@address\\[\acvHeaderAfterAddressSkip]}}%
|
||||
\headersocialstyle{%
|
||||
\newbool{isstart}%
|
||||
\setbool{isstart}{true}%
|
||||
\ifthenelse{\isundefined{\@mobile}}%
|
||||
{}%
|
||||
{%
|
||||
\faMobile\acvHeaderIconSep\@mobile%
|
||||
\setbool{isstart}{false}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@email}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{mailto:\@email}{\faEnvelope\acvHeaderIconSep\@email}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@homepage}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{http://\@homepage}{\faHome\acvHeaderIconSep\@homepage}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@github}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{https://github.com/\@github}{\faGithubSquare\acvHeaderIconSep\@github}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@stackoverflowid}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{https://stackoverflow.com/users/\@stackoverflowid}{\faStackOverflow\acvHeaderIconSep\@stackoverflowname}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@linkedin}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{https://www.linkedin.com/in/\@linkedin}{\faLinkedinSquare\acvHeaderIconSep\@linkedin}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@twitter}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{https://twitter.com/\@twitter}{\faTwitter\acvHeaderIconSep\@twitter}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@skype}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\faSkype\acvHeaderIconSep\@skype%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@reddit}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\href{https://www.reddit.com/user/\@reddit}{\faReddit\acvHeaderIconSep\@reddit}%
|
||||
}%
|
||||
\ifthenelse{\isundefined{\@extrainfo}}%
|
||||
{}%
|
||||
{%
|
||||
\ifbool{isstart}{\setbool{istart}{false}}{\acvHeaderSocialSep}%
|
||||
\@extrainfo%
|
||||
}%
|
||||
} \\[\acvHeaderAfterSocialSkip]%
|
||||
\ifthenelse{\isundefined{\@quote}}%
|
||||
{}%
|
||||
{\headerquotestyle{\@quote\\}\vspace{\acvHeaderAfterQuoteSkip}}%
|
||||
\end{center}%
|
||||
}
|
||||
|
||||
% Define a footer for CV
|
||||
% Usage: \makecvfooter{<left>}{<center>}{<right>}
|
||||
\newcommand*{\makecvfooter}[3]{
|
||||
\newcommand*{\makecvfooter}[3]{%
|
||||
\fancyfoot{}
|
||||
\fancyfoot[L]{
|
||||
\footerstyle{#1}
|
||||
}
|
||||
\fancyfoot[C]{
|
||||
\footerstyle{#2}
|
||||
}
|
||||
\fancyfoot[R]{
|
||||
\footerstyle{#3}
|
||||
}
|
||||
\fancyfoot[L]{\footerstyle{#1}}
|
||||
\fancyfoot[C]{\footerstyle{#2}}
|
||||
\fancyfoot[R]{\footerstyle{#3}}
|
||||
}
|
||||
|
||||
% Define a section for CV
|
||||
% Usage: \cvsection{<section-title>}
|
||||
\newcommand{\cvsection}[1]{
|
||||
\par\addvspace{1.5ex}
|
||||
\phantomsection{}
|
||||
\newcommand{\cvsection}[1]{%
|
||||
\vspace{\acvSectionTopSkip}
|
||||
\sectionstyle{#1}
|
||||
\phantomsection
|
||||
\color{gray}\vhrulefill{0.9pt}
|
||||
\par\nobreak\addvspace{1ex}
|
||||
}
|
||||
|
||||
% Define a subsection for CV
|
||||
% Usage: \cvsubsection{<subsection-title>}
|
||||
\newcommand{\cvsubsection}[1]{
|
||||
\phantomsection{}
|
||||
\newcommand{\cvsubsection}[1]{%
|
||||
\subsectionstyle{#1}
|
||||
\phantomsection
|
||||
}
|
||||
|
||||
% Define a paragraph for CV
|
||||
\newenvironment{cvparagraph}{%
|
||||
\vspace{-3mm}
|
||||
\paragraphstyle
|
||||
}{%
|
||||
\vspace{1mm}
|
||||
}
|
||||
|
||||
|
||||
% Define an environment for cventry
|
||||
\newenvironment{cventries}{
|
||||
\newenvironment{cventries}{%
|
||||
\begin{center}
|
||||
}{
|
||||
}{%
|
||||
\end{center}
|
||||
}
|
||||
% Define an entry of cv information
|
||||
% Usage: \cventry{<position>}{<title>}{<location>}{<date>}{<description>}
|
||||
\newcommand*{\cventry}[5]{
|
||||
\newcommand*{\cventry}[5]{%
|
||||
\vspace{\acvEntryTopSkip}
|
||||
\vspace{-2.0mm}
|
||||
\setlength\tabcolsep{0pt}
|
||||
\setlength{\extrarowheight}{0pt}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{12.5cm} R{4.5cm}}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{\textwidth - 4.5cm} R{4.5cm}}
|
||||
\ifempty{#2#3}
|
||||
{\entrypositionstyle{#1} & \entrydatestyle{#4} \\}
|
||||
{\entrytitlestyle{#2} & \entrylocationstyle{#3} \\
|
||||
\entrypositionstyle{#1} & \entrydatestyle{#4} \\}
|
||||
\multicolumn{2}{L{17cm}}{\descriptionstyle{#5}} \\
|
||||
\end{tabular*}
|
||||
\multicolumn{2}{L{\textwidth}}{\descriptionstyle{#5}}
|
||||
\end{tabular*}%
|
||||
}
|
||||
|
||||
% Define an environment for cvsubentry
|
||||
\newenvironment{cvsubentries}{
|
||||
\newenvironment{cvsubentries}{%
|
||||
\begin{center}
|
||||
}{
|
||||
}{%
|
||||
\end{center}
|
||||
}
|
||||
% Define a subentry of cv information
|
||||
% Usage: \cvsubentry{<position>}{<title>}{<date>}{<description>}
|
||||
\newcommand*{\cvsubentry}[4]{
|
||||
\newcommand*{\cvsubentry}[4]{%
|
||||
\setlength\tabcolsep{0pt}
|
||||
\setlength{\extrarowheight}{0pt}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{12.5cm} R{4.5cm}}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{\textwidth - 4.5cm} R{4.5cm}}
|
||||
\setlength\leftskip{0.2cm}
|
||||
\subentrytitlestyle{#2} & \ifthenelse{\equal{#1}{}}
|
||||
{\subentrydatestyle{#3}}{}
|
||||
@ -490,48 +558,98 @@
|
||||
}
|
||||
|
||||
% Define an environment for cvhonor
|
||||
\newenvironment{cvhonors}{
|
||||
\newenvironment{cvhonors}{%
|
||||
\begin{center}
|
||||
\setlength\tabcolsep{0pt}
|
||||
\setlength{\extrarowheight}{0pt}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} C{1.5cm} L{13.0cm} R{2.5cm}}
|
||||
}{
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} C{1.5cm} L{\textwidth - 4.0cm} R{2.5cm}}
|
||||
}{%
|
||||
\end{tabular*}
|
||||
\end{center}
|
||||
}
|
||||
% Define a line of cv information(honor, award or something else)
|
||||
% Usage: \cvhonor{<position>}{<title>}{<location>}{<date>}
|
||||
\newcommand*{\cvhonor}[4]{
|
||||
\honordatestyle{#4} & \honorpositionstyle{#1}, \honortitlestyle{#2} & \honorlocationstyle{#3}
|
||||
\\
|
||||
\newcommand*{\cvhonor}[4]{%
|
||||
\honordatestyle{#4} & \honorpositionstyle{#1}, \honortitlestyle{#2} & \honorlocationstyle{#3} \\
|
||||
}
|
||||
|
||||
% Define an environment for cvskill
|
||||
\newenvironment{cvskills}{
|
||||
\newenvironment{cvskills}{%
|
||||
\begin{center}
|
||||
\setlength\tabcolsep{1ex}
|
||||
\setlength{\extrarowheight}{0pt}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} r L{15.2cm}}
|
||||
}{
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} r L{\textwidth * \real{0.9}}}
|
||||
}{%
|
||||
\end{tabular*}
|
||||
\end{center}
|
||||
}
|
||||
% Define a line of cv information(skill)
|
||||
% Usage: \cvskill{<type>}{<skillset>}
|
||||
\newcommand*{\cvskill}[2]{
|
||||
\skilltypestyle{#1} & \skillsetstyle{#2}
|
||||
\\
|
||||
\newcommand*{\cvskill}[2]{%
|
||||
\skilltypestyle{#1} & \skillsetstyle{#2} \\
|
||||
}
|
||||
|
||||
% Define an environment for cvitems(for cventry)
|
||||
\newenvironment{cvitems}{
|
||||
\vspace{-4mm}
|
||||
\newenvironment{cvitems}{%
|
||||
\vspace{-4.0mm}
|
||||
\begin{justify}
|
||||
\begin{itemize}[leftmargin=2ex, nosep, noitemsep]
|
||||
\setlength{\parskip}{0pt}
|
||||
\renewcommand{\labelitemi}{\bullet}
|
||||
}{
|
||||
}{%
|
||||
\end{itemize}
|
||||
\end{justify}
|
||||
\vspace{-2mm}
|
||||
\vspace{-4.0mm}
|
||||
}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% Commands for elements of Cover Letter
|
||||
%-------------------------------------------------------------------------------
|
||||
% Define an environment for cvletter
|
||||
\newenvironment{cvletter}{%
|
||||
\lettertextstyle
|
||||
}{%
|
||||
}
|
||||
|
||||
% Define a section for the cover letter
|
||||
% Usage: \lettersection{<section-title>}
|
||||
\newcommand{\lettersection}[1]{%
|
||||
\par\addvspace{2.5ex}
|
||||
\phantomsection{}
|
||||
\lettersectionstyle{#1}
|
||||
\color{gray}\vhrulefill{0.9pt}
|
||||
\par\nobreak\addvspace{0.4ex}
|
||||
}
|
||||
|
||||
% Define a title of the cover letter
|
||||
% Usage: \makelettertitle
|
||||
\newcommand*{\makelettertitle}{%
|
||||
\vspace{8.4mm}
|
||||
\setlength\tabcolsep{0pt}
|
||||
\setlength{\extrarowheight}{0pt}
|
||||
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{\textwidth - 4.5cm} R{4.5cm}}
|
||||
\recipienttitlestyle{\@recipientname} & \letterdatestyle{\@letterdate}
|
||||
\end{tabular*}
|
||||
\begin{singlespace}
|
||||
\recipientaddressstyle{\@recipientaddress} \\\\
|
||||
\end{singlespace}
|
||||
\ifthenelse{\isundefined{\@lettertitle}}
|
||||
{}
|
||||
{\lettertitlestyle{\@lettertitle} \\}
|
||||
\lettertextstyle{\@letteropening}
|
||||
}
|
||||
|
||||
% Define a closing of the cover letter
|
||||
% Usage: \makeletterclosing
|
||||
\newcommand*{\makeletterclosing}{%
|
||||
\vspace{3.4mm}
|
||||
\lettertextstyle{\@letterclosing} \\\\
|
||||
\letternamestyle{\@firstname\ \@lastname}
|
||||
\ifthenelse{\isundefined{\@letterenclosure}}
|
||||
{\\}
|
||||
{%
|
||||
\\\\\\
|
||||
\letterenclosurestyle{\@letterenclname: \@letterenclosure} \\
|
||||
}
|
||||
}
|
||||
|
1
themes/awesome/src/latex/examples/awesome-cv.cls
Normal file
1
themes/awesome/src/latex/examples/awesome-cv.cls
Normal file
@ -0,0 +1 @@
|
||||
../awesome-cv.cls
|
BIN
themes/awesome/src/latex/examples/coverletter-0.png
Normal file
BIN
themes/awesome/src/latex/examples/coverletter-0.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 110 KiB |
BIN
themes/awesome/src/latex/examples/coverletter-1.png
Normal file
BIN
themes/awesome/src/latex/examples/coverletter-1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 127 KiB |
BIN
themes/awesome/src/latex/examples/coverletter.pdf
Normal file
BIN
themes/awesome/src/latex/examples/coverletter.pdf
Normal file
Binary file not shown.
129
themes/awesome/src/latex/examples/coverletter.tex
Normal file
129
themes/awesome/src/latex/examples/coverletter.tex
Normal file
@ -0,0 +1,129 @@
|
||||
%!TEX TS-program = xelatex
|
||||
%!TEX encoding = UTF-8 Unicode
|
||||
% Awesome CV LaTeX Template for Cover Letter
|
||||
%
|
||||
% This template has been downloaded from:
|
||||
% https://github.com/posquit0/Awesome-CV
|
||||
%
|
||||
% Authors:
|
||||
% Claud D. Park <posquit0.bj@gmail.com>
|
||||
% Lars Richter <mail@ayeks.de>
|
||||
%
|
||||
% Template license:
|
||||
% CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/)
|
||||
%
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONFIGURATIONS
|
||||
%-------------------------------------------------------------------------------
|
||||
% A4 paper size by default, use 'letterpaper' for US letter
|
||||
\documentclass[11pt, a4paper]{awesome-cv}
|
||||
|
||||
% Configure page margins with geometry
|
||||
% \geometry{left=1.4cm, top=.8cm, right=1.4cm, bottom=1.8cm, footskip=.5cm}
|
||||
|
||||
% Specify the location of the included fonts
|
||||
\fontdir[fonts/]
|
||||
|
||||
% Color for highlights
|
||||
% Awesome Colors: awesome-emerald, awesome-skyblue, awesome-red, awesome-pink, awesome-orange
|
||||
% awesome-nephritis, awesome-concrete, awesome-darknight
|
||||
\colorlet{awesome}{awesome-red}
|
||||
% Uncomment if you would like to specify your own color
|
||||
% \definecolor{awesome}{HTML}{CA63A8}
|
||||
|
||||
% Colors for text
|
||||
% Uncomment if you would like to specify your own color
|
||||
% \definecolor{darktext}{HTML}{414141}
|
||||
% \definecolor{text}{HTML}{333333}
|
||||
% \definecolor{graytext}{HTML}{5D5D5D}
|
||||
% \definecolor{lighttext}{HTML}{999999}
|
||||
|
||||
% Set false if you don't want to highlight section with awesome color
|
||||
\setbool{acvSectionColorHighlight}{true}
|
||||
|
||||
% If you would like to change the social information separator from a pipe (|) to something else
|
||||
\renewcommand{\acvHeaderSocialSep}{\quad\textbar\quad}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% PERSONAL INFORMATION
|
||||
% Comment any of the lines below if they are not required
|
||||
%-------------------------------------------------------------------------------
|
||||
\name{[~ print(h.initialWords( r.name )) ~]}{[[ h.lastWord( r.name ) ]]}
|
||||
\position{[[ r.info.label ]]}
|
||||
\address{[[ r.location.address ]]}
|
||||
|
||||
\mobile{[[ r.contact.phone ]]}
|
||||
\email{[[ r.contact.email ]]}
|
||||
\homepage{[[ r.contact.website ]]}
|
||||
[~ if (r.hasProfile('github') { ~]\github{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
[~ if (r.hasProfile('linkedin') { ~]\linkedin{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
% \stackoverflow{SO-id}{SO-name}
|
||||
% \twitter{@twit}
|
||||
% \skype{skype-id}
|
||||
% \reddit{reddit-id}
|
||||
% \extrainfo{extra informations}
|
||||
|
||||
[~ if (r.info.quote) { ~]\quote{``[[ r.info.quote ]]"}[~ } ~]
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% LETTER INFORMATION
|
||||
% All of the below lines must be filled out
|
||||
%-------------------------------------------------------------------------------
|
||||
% The company being applied to
|
||||
\recipient
|
||||
{Company Recruitment Team}
|
||||
{Google Inc.\\1600 Amphitheatre Parkway\\Mountain View, CA 94043}
|
||||
% The date on the letter, default is the date of compilation
|
||||
\letterdate{\today}
|
||||
% The title of the letter
|
||||
\lettertitle{Job Application for Software Engineer}
|
||||
% How the letter is opened
|
||||
\letteropening{Dear Mr./Ms./Dr. LastName,}
|
||||
% How the letter is closed
|
||||
\letterclosing{Sincerely,}
|
||||
% Any enclosures with the letter
|
||||
\letterenclosure[Attached]{Curriculum Vitae}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{document}
|
||||
|
||||
% Print the header with above personal informations
|
||||
\makecvheader
|
||||
|
||||
% Print the footer with 3 arguments(<left>, <center>, <right>)
|
||||
% Leave any of these blank if they are not needed
|
||||
\makecvfooter
|
||||
{\today}
|
||||
{[[ r.name ]]~~~·~~~Cover Letter}
|
||||
{}
|
||||
|
||||
% Print the title with above letter informations
|
||||
\makelettertitle
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% LETTER CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvletter}
|
||||
|
||||
\lettersection{About Me}
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis ullamcorper neque sit amet lectus facilisis sed luctus nisl iaculis. Vivamus at neque arcu, sed tempor quam. Curabitur pharetra tincidunt tincidunt. Morbi volutpat feugiat mauris, quis tempor neque vehicula volutpat. Duis tristique justo vel massa fermentum accumsan. Mauris ante elit, feugiat vestibulum tempor eget, eleifend ac ipsum. Donec scelerisque lobortis ipsum eu vestibulum. Pellentesque vel massa at felis accumsan rhoncus.
|
||||
|
||||
\lettersection{Why Google?}
|
||||
Suspendisse commodo, massa eu congue tincidunt, elit mauris pellentesque orci, cursus tempor odio nisl euismod augue. Aliquam adipiscing nibh ut odio sodales et pulvinar tortor laoreet. Mauris a accumsan ligula. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse vulputate sem vehicula ipsum varius nec tempus dui dapibus. Phasellus et est urna, ut auctor erat. Sed tincidunt odio id odio aliquam mattis. Donec sapien nulla, feugiat eget adipiscing sit amet, lacinia ut dolor. Phasellus tincidunt, leo a fringilla consectetur, felis diam aliquam urna, vitae aliquet lectus orci nec velit. Vivamus dapibus varius blandit.
|
||||
|
||||
\lettersection{Why Me?}
|
||||
Duis sit amet magna ante, at sodales diam. Aenean consectetur porta risus et sagittis. Ut interdum, enim varius pellentesque tincidunt, magna libero sodales tortor, ut fermentum nunc metus a ante. Vivamus odio leo, tincidunt eu luctus ut, sollicitudin sit amet metus. Nunc sed orci lectus. Ut sodales magna sed velit volutpat sit amet pulvinar diam venenatis.
|
||||
|
||||
\end{cvletter}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% Print the signature and enclosures with above letter informations
|
||||
\makeletterclosing
|
||||
|
||||
\end{document}
|
BIN
themes/awesome/src/latex/examples/cv.pdf
Normal file
BIN
themes/awesome/src/latex/examples/cv.pdf
Normal file
Binary file not shown.
@ -1,83 +1,101 @@
|
||||
%!TEX TS-program = xelatex
|
||||
%!TEX encoding = UTF-8 Unicode
|
||||
% Copyright 2015 Claud D. Park <posquit0.bj@gmail.com>
|
||||
% Awesome CV LaTeX Template for CV/Resume
|
||||
%
|
||||
% This template has been downloaded from:
|
||||
% https://github.com/posquit0/Awesome-CV
|
||||
%
|
||||
% Author:
|
||||
% Claud D. Park <posquit0.bj@gmail.com>
|
||||
% http://www.posquit0.com
|
||||
%
|
||||
% Template license:
|
||||
% CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/)
|
||||
%
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Configuration
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Themes: Awesome-CV
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONFIGURATIONS
|
||||
%-------------------------------------------------------------------------------
|
||||
% A4 paper size by default, use 'letterpaper' for US letter
|
||||
\documentclass[11pt, a4paper]{awesome-cv}
|
||||
|
||||
%%% Override a directory location for fonts(default: 'fonts/')
|
||||
% Configure page margins with geometry
|
||||
\geometry{left=1.4cm, top=.8cm, right=1.4cm, bottom=1.8cm, footskip=.5cm}
|
||||
|
||||
% Specify the location of the included fonts
|
||||
\fontdir[fonts/]
|
||||
|
||||
%%% Configure a directory location for sections
|
||||
\newcommand*{\sectiondir}{cv/}
|
||||
|
||||
%%% Override color
|
||||
% Color for highlights
|
||||
% Awesome Colors: awesome-emerald, awesome-skyblue, awesome-red, awesome-pink, awesome-orange
|
||||
% awesome-nephritis, awesome-concrete, awesome-darknight
|
||||
%% Color for highlight
|
||||
% Define your custom color if you don't like awesome colors
|
||||
\colorlet{awesome}{awesome-red}
|
||||
%\definecolor{awesome}{HTML}{CA63A8}
|
||||
%% Colors for text
|
||||
%\definecolor{darktext}{HTML}{414141}
|
||||
%\definecolor{text}{HTML}{414141}
|
||||
%\definecolor{graytext}{HTML}{414141}
|
||||
%\definecolor{lighttext}{HTML}{414141}
|
||||
% Uncomment if you would like to specify your own color
|
||||
% \definecolor{awesome}{HTML}{CA63A8}
|
||||
|
||||
%%% Override a separator for social informations in header(default: ' | ')
|
||||
%\headersocialsep[\quad\textbar\quad]
|
||||
% Colors for text
|
||||
% Uncomment if you would like to specify your own color
|
||||
% \definecolor{darktext}{HTML}{414141}
|
||||
% \definecolor{text}{HTML}{333333}
|
||||
% \definecolor{graytext}{HTML}{5D5D5D}
|
||||
% \definecolor{lighttext}{HTML}{999999}
|
||||
|
||||
% Set false if you don't want to highlight section with awesome color
|
||||
\setbool{acvSectionColorHighlight}{true}
|
||||
|
||||
% If you would like to change the social information separator from a pipe (|) to something else
|
||||
\renewcommand{\acvHeaderSocialSep}{\quad\textbar\quad}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% 3rd party packages
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Needed to divide into several files
|
||||
\usepackage{import}
|
||||
%-------------------------------------------------------------------------------
|
||||
% PERSONAL INFORMATION
|
||||
% Comment any of the lines below if they are not required
|
||||
%-------------------------------------------------------------------------------
|
||||
\name{[~ print(h.initialWords( r.name )) ~]}{[[ h.lastWord( r.name ) ]]}
|
||||
\position{[[ r.info.label ]]}
|
||||
\address{[[ r.location.address ]]}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Personal Data
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Essentials
|
||||
\name{[[ _.initial(r.name.split(' ')).join(' ') ]] }{[[ _.last(r.name.split(' ')) ]]}
|
||||
\address{[[ r.location.address.replace(/\n/g, ', ') ]]}
|
||||
\mobile{[[ r.contact.phone ]]}
|
||||
%%% Social
|
||||
\email{[[ r.contact.email ]]}
|
||||
\homepage{[[ r.contact.website ]]}
|
||||
[~ if(r.hasProfile('github')) { ~]\github{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
[~ if(r.hasProfile('linkedin')) { ~]\linkedin{[[ r.getProfile('linkedin').user ]]}[~ } ~]
|
||||
%%% Optionals
|
||||
\position{[[ r.info.characterClass ]]{\enskip\cdotp\enskip}[[ r.info.label ]]}
|
||||
[~ if( r.info.quote ) { ~]\quote{``[[ r.info.quote ]]"}[~ } ~]
|
||||
[~ if (r.hasProfile('github')) { ~]\github{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
[~ if (r.hasProfile('linkedin')) { ~]\linkedin{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
% \stackoverflow{SO-id}{SO-name}
|
||||
% \twitter{@twit}
|
||||
% \skype{skype-id}
|
||||
% \reddit{reddit-id}
|
||||
% \extrainfo{extra informations}
|
||||
|
||||
[~ if (r.info.quote) { ~]\quote{``[[ r.info.quote ]]"}[~ } ~]
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Content
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Make a footer for CV with three arguments(<left>, <center>, <right>)
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{document}
|
||||
|
||||
% Print the header with above personal informations
|
||||
\makecvheader
|
||||
|
||||
% Print the footer with 3 arguments(<left>, <center>, <right>)
|
||||
% Leave any of these blank if they are not needed
|
||||
\makecvfooter
|
||||
{\today}
|
||||
{[[ r.name ]]~~~·~~~Curriculum Vitae}
|
||||
{\thepage}
|
||||
|
||||
\begin{document}
|
||||
%%% Make a header for CV using personal data
|
||||
\makecvheader
|
||||
|
||||
%%% Import contents
|
||||
\import{\sectiondir}{education.tex}
|
||||
\import{\sectiondir}{skills.tex}
|
||||
\import{\sectiondir}{experience.tex}
|
||||
\import{\sectiondir}{extracurricular.tex}
|
||||
\import{\sectiondir}{honors.tex}
|
||||
\import{\sectiondir}{presentation.tex}
|
||||
\import{\sectiondir}{writing.tex}
|
||||
\import{\sectiondir}{committees.tex}
|
||||
%-------------------------------------------------------------------------------
|
||||
% CV/RESUME CONTENT
|
||||
% Each section is imported separately, open each file in turn to modify content
|
||||
%-------------------------------------------------------------------------------
|
||||
\input{cv/education.tex}
|
||||
\input{cv/skills.tex}
|
||||
\input{cv/experience.tex}
|
||||
\input{cv/extracurricular.tex}
|
||||
\input{cv/honors.tex}
|
||||
\input{cv/presentation.tex}
|
||||
\input{cv/writing.tex}
|
||||
\input{cv/committees.tex}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
\end{document}
|
||||
|
@ -1,12 +1,23 @@
|
||||
[~ if( r.committees && r.committees.length ) { ~]
|
||||
[~ if (r.governance && r.governance.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Program Committees}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvhonors}
|
||||
[~ _.each(r.committees, function(com) { ~]
|
||||
[~ _.each( r.governance, function(gov) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvhonor
|
||||
{[[ com.position ]]}
|
||||
{[[ com.organization ]]}
|
||||
{[[ com.location ]]}
|
||||
{[[ com.safe.date ]]}
|
||||
[~ }); ~]
|
||||
{[[ gov.position ]]} % Position
|
||||
{[[ gov.organization ]]} % Committee
|
||||
{[[ gov.location ]]} % Location
|
||||
{[[ h.dateRange( gov ) ]]} % Date(s)
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cvhonors}
|
||||
[~ } ~]
|
||||
|
@ -1,20 +1,30 @@
|
||||
[~ if( r.education && r.education.history && r.education.history.length) { ~]
|
||||
[~ if (r.education && r.education.history && r.education.history.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Education}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.education.history, function(edu) { ~]
|
||||
[~ _.each( r.education.history, function(edu) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ edu.studyType ]], [[ edu.area ]]}
|
||||
{[[ edu.institution ]]}
|
||||
{[[ edu.location ]]}
|
||||
{[[ edu.safe.start ]] - [[ edu.safe.end ]]}
|
||||
[~ if( edu.highlights && edu.highlights.length ) {
|
||||
~]{
|
||||
\begin{cvitems}
|
||||
[~ _.each(edu.highlights, function(high) { ~]
|
||||
{[[ edu.title ]]} % Degree
|
||||
{[[ edu.institution ]]} % Institution
|
||||
{[[ edu.location ]]} % Location
|
||||
{[~ print( h.dateRange( edu ) ) ~]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s) bullet points
|
||||
[~ _.each( edu.highlights, function(high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}[~ } else { ~]{ }[~ } ~]
|
||||
}
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,18 +1,30 @@
|
||||
[~ if( r.employment && r.employment.history && r.employment.history.length ) { ~]
|
||||
[~ if (r.employment && r.employment.history && r.employment.history.length ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Experience}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.employment.history, function(emp) { ~]
|
||||
[~ _.each( r.employment.history, function(job) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ emp.position ]]}
|
||||
{[[ emp.employer ]]}
|
||||
{[[ emp.location ]]}
|
||||
{[[ emp.safe.start ]] - [[ emp.safe.end ]]}
|
||||
[~ if( emp.highlights && emp.highlights.length ) {
|
||||
~]{
|
||||
\begin{cvitems}[~ _.each( emp.highlights, function(high) { ~]
|
||||
\item {[[ high.replace(/#/g, '\\#') ]]}[~ }); ~]
|
||||
{[[ job.position ]]} % Job title
|
||||
{[[ job.employer ]]} % Organization
|
||||
{[[ job.location ]]} % Location
|
||||
{[~ print( h.dateRange( job ) ) ~]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s) of tasks/responsibilities
|
||||
[~ _.each( job.highlights, function (high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}[~ } ~]
|
||||
}
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,19 +1,30 @@
|
||||
[~ if( r.extracurricular && r.extracurricular.length ) { ~]
|
||||
[~ if (r.extracurricular && r.extracurricular.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Extracurricular Activity}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each( r.extracurricular, function(ex) { ~]
|
||||
[~ _.each( function(cur) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ ex.title ]]}
|
||||
{[[ ex.activity ]]}
|
||||
{[[ ex.location ]]}
|
||||
{[[ ex.safe.start ]] - [[ ex.safe.end ]]}
|
||||
[~ if( ex.highlights && ex.highlights.length ) {
|
||||
~]{
|
||||
\begin{cvitems}
|
||||
[~ _.each(ex.highlights, function(high) {
|
||||
~]\item {[[high]]}
|
||||
[~ }); ~]\end{cvitems}
|
||||
}[~ } else { ~]{ }[~ } ~]
|
||||
[~ }); ~]
|
||||
{[[ cur.role ]]} % Affiliation/role
|
||||
{[[ cur.organization ]]} % Organization/group
|
||||
{[[ cur.location ]]} % Location
|
||||
{[[ h.dateRange(cur) ]]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s) of experience/contributions/knowledge
|
||||
[~ _.each( cur.highlights, function( high ) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,52 +1,52 @@
|
||||
[~ if( r.recognition && r.recognition.length ) { ~]
|
||||
[~ if ( r.recognition && r.recognition.length ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Honors \& Awards}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% SUBSECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsubsection{International}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvhonors}
|
||||
[~ _.each(r.recognition, function(rec) { ~]
|
||||
[~ _.each( r.recognition, function(rgn) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvhonor
|
||||
{[[ rec.title ]]}
|
||||
{[[ rec.event ]]}
|
||||
{[[ rec.location ]]}
|
||||
{[[ rec.safe.date ]]}
|
||||
[~ }); ~]
|
||||
{[[ rgn.title ]]} % Award
|
||||
{[[ rgn.from ]]} % Event
|
||||
{[[ rgn.location ]]} % Location
|
||||
{[[ rgn.date ]]} % Date(s)
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cvhonors}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% SUBSECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsubsection{Domestic}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvhonors}
|
||||
[~ _.each( r.recognition, function(rgn) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvhonor
|
||||
{3rd Place}
|
||||
{WITHCON Hacking Competition Final}
|
||||
{Seoul, S.Korea}
|
||||
{2015}
|
||||
\cvhonor
|
||||
{Silver Prize}
|
||||
{KISA HDCON Hacking Competition Final}
|
||||
{Seoul, S.Korea}
|
||||
{2013}
|
||||
\cvhonor
|
||||
{2nd Award}
|
||||
{HUST Hacking Festival}
|
||||
{S.Korea}
|
||||
{2013}
|
||||
\cvhonor
|
||||
{3rd Award}
|
||||
{HUST Hacking Festival}
|
||||
{S.Korea}
|
||||
{2010}
|
||||
\cvhonor
|
||||
{3rd Award}
|
||||
{Holyshield 3rd Hacking Festival}
|
||||
{S.Korea}
|
||||
{2012}
|
||||
\cvhonor
|
||||
{2nd Award}
|
||||
{Holyshield 3rd Hacking Festival}
|
||||
{S.Korea}
|
||||
{2011}
|
||||
\cvhonor
|
||||
{5th Place}
|
||||
{PADOCON Hacking Competition Final}
|
||||
{Seoul, S.Korea}
|
||||
{2011}
|
||||
{[[ rgn.title ]]} % Award
|
||||
{[[ rgn.from ]]} % Event
|
||||
{[[ rgn.location ]]} % Location
|
||||
{[[ rgn.date ]]} % Date(s)
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cvhonors}
|
||||
[~ } ~]
|
||||
|
@ -1,20 +1,30 @@
|
||||
[~ if( r.speaking && r.speaking.length) { ~]
|
||||
[~ if (r.speaking && r.speaking.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Presentation}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.speaking, function(pres) { ~]
|
||||
[~ _.each( r.speaking, function(spk) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ pres.title ]]}
|
||||
{[[ pres.event ]]}
|
||||
{[[ pres.location ]]}
|
||||
{[[ pres.safe.date ]]}
|
||||
[~ if (pres.highlights && pres.highlights.length) {
|
||||
~]{
|
||||
\begin{cvitems}
|
||||
[~ _.each(pres.highlights, function( high) {
|
||||
~]\item {[[ high ]]}[~ }); ~]
|
||||
{[[ spk.title ]]} % Role
|
||||
{[[ spk.event ]])} % Event
|
||||
{[[ spk.location ]]} % Location
|
||||
{[[ spk.date ]]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s)
|
||||
[~ _.each( spk.highlights, function(high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}
|
||||
[~ } else { ~]{ }[~ } ~]
|
||||
[~ }); ~]
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,15 +1,34 @@
|
||||
[~ if( r.skills && r.skills.sets && r.skills.sets.length ) { ~]
|
||||
[~ if(( r.skills && r.skills.sets && r.skills.sets.length ) ||
|
||||
( r.languages && r.languages.length ) ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Skills}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvskills}
|
||||
[~ _.each(r.skills.sets, function(set) { ~]
|
||||
|
||||
[~ if (r.skills && r.skills.sets && r.skills.sets.length ) { ~]
|
||||
[~ _.each( r.skills.sets, function(sks) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvskill
|
||||
{[[ set.name ]]}
|
||||
{[[ set.skills.join(', ') ]]}
|
||||
{[[ sks.name ]]} % Category
|
||||
{[~ print( sks.skills.join(', ') ) ~]} % Skills
|
||||
|
||||
[~ }); ~]
|
||||
[~ if( r.languages && r.languages.length ) { ~]
|
||||
\cvskill
|
||||
{Languages}
|
||||
{[[ r.languages.map( function(lang) { return lang.language } ).join(', ') ]]}
|
||||
[~ } ~]
|
||||
|
||||
[~ if (r.languages && r.languages.length ) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvskill
|
||||
{Languages} % Category
|
||||
{[~ print( _.map( r.languages, function(lang) { return lang.language; }).join(', ')) ~]} % Skills
|
||||
|
||||
[~ } ~]
|
||||
|
||||
%---------------------------------------------------------
|
||||
\end{cvskills}
|
||||
[~ } ~]
|
||||
|
@ -1,21 +1,30 @@
|
||||
[~ if( r.writing && r.writing.length ) { ~]
|
||||
[~ if (r.writing && r.writing.length ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Writing}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.writing, function(wri) { ~]
|
||||
[~ _.each( r.writing, function(wri) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ wri.publisher ]]}
|
||||
{[[ wri.title ]]}
|
||||
{[[ wri.url ]]}
|
||||
{[[ wri.safe.date ]] - PRESENT}
|
||||
[~ if( wri.highlights && wri.highlights.length ) { ~]
|
||||
{[[ wri.title ]]} % Role
|
||||
{[[ wri.publisher ]]} % Title
|
||||
{[[ wri.url ]]} % Location
|
||||
{[[ wri.date ]]} % Date(s)
|
||||
{
|
||||
\begin{cvitems}
|
||||
[~ _.each(wri.highlights, function(high) { ~]
|
||||
\begin{cvitems} % Description(s)
|
||||
[~ _.each( wri.highlights, function(high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}
|
||||
[~ } else { ~]{ }[~ } ~]
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
1
themes/awesome/src/latex/examples/fontawesome.sty
Normal file
1
themes/awesome/src/latex/examples/fontawesome.sty
Normal file
@ -0,0 +1 @@
|
||||
../fontawesome.sty
|
1
themes/awesome/src/latex/examples/fonts
Normal file
1
themes/awesome/src/latex/examples/fonts
Normal file
@ -0,0 +1 @@
|
||||
../fonts
|
BIN
themes/awesome/src/latex/examples/resume-0.png
Normal file
BIN
themes/awesome/src/latex/examples/resume-0.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 186 KiB |
BIN
themes/awesome/src/latex/examples/resume-1.png
Normal file
BIN
themes/awesome/src/latex/examples/resume-1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 145 KiB |
BIN
themes/awesome/src/latex/examples/resume.pdf
Normal file
BIN
themes/awesome/src/latex/examples/resume.pdf
Normal file
Binary file not shown.
@ -1,82 +1,101 @@
|
||||
%!TEX TS-program = xelatex
|
||||
%!TEX encoding = UTF-8 Unicode
|
||||
% Copyright 2015 Claud D. Park <posquit0.bj@gmail.com>
|
||||
% Awesome CV LaTeX Template for CV/Resume
|
||||
%
|
||||
% This template has been downloaded from:
|
||||
% https://github.com/posquit0/Awesome-CV
|
||||
%
|
||||
% Author:
|
||||
% Claud D. Park <posquit0.bj@gmail.com>
|
||||
% http://www.posquit0.com
|
||||
%
|
||||
% Template license:
|
||||
% CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/)
|
||||
%
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Configuration
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Themes: Awesome-CV
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONFIGURATIONS
|
||||
%-------------------------------------------------------------------------------
|
||||
% A4 paper size by default, use 'letterpaper' for US letter
|
||||
\documentclass[11pt, a4paper]{awesome-cv}
|
||||
|
||||
%%% Override a directory location for fonts(default: 'fonts/')
|
||||
% Configure page margins with geometry
|
||||
\geometry{left=1.4cm, top=.8cm, right=1.4cm, bottom=1.8cm, footskip=.5cm}
|
||||
|
||||
% Specify the location of the included fonts
|
||||
\fontdir[fonts/]
|
||||
|
||||
%%% Configure a directory location for sections
|
||||
\newcommand*{\sectiondir}{resume/}
|
||||
|
||||
%%% Override color
|
||||
% Color for highlights
|
||||
% Awesome Colors: awesome-emerald, awesome-skyblue, awesome-red, awesome-pink, awesome-orange
|
||||
% awesome-nephritis, awesome-concrete, awesome-darknight
|
||||
%% Color for highlight
|
||||
% Define your custom color if you don't like awesome colors
|
||||
\colorlet{awesome}{awesome-red}
|
||||
%\definecolor{awesome}{HTML}{CA63A8}
|
||||
%% Colors for text
|
||||
%\definecolor{darktext}{HTML}{414141}
|
||||
%\definecolor{text}{HTML}{414141}
|
||||
%\definecolor{graytext}{HTML}{414141}
|
||||
%\definecolor{lighttext}{HTML}{414141}
|
||||
% Uncomment if you would like to specify your own color
|
||||
% \definecolor{awesome}{HTML}{CA63A8}
|
||||
|
||||
%%% Override a separator for social informations in header(default: ' | ')
|
||||
%\headersocialsep[\quad\textbar\quad]
|
||||
% Colors for text
|
||||
% Uncomment if you would like to specify your own color
|
||||
% \definecolor{darktext}{HTML}{414141}
|
||||
% \definecolor{text}{HTML}{333333}
|
||||
% \definecolor{graytext}{HTML}{5D5D5D}
|
||||
% \definecolor{lighttext}{HTML}{999999}
|
||||
|
||||
% Set false if you don't want to highlight section with awesome color
|
||||
\setbool{acvSectionColorHighlight}{true}
|
||||
|
||||
% If you would like to change the social information separator from a pipe (|) to something else
|
||||
\renewcommand{\acvHeaderSocialSep}{\quad\textbar\quad}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% 3rd party packages
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Needed to divide into several files
|
||||
\usepackage{import}
|
||||
%-------------------------------------------------------------------------------
|
||||
% PERSONAL INFORMATION
|
||||
% Comment any of the lines below if they are not required
|
||||
%-------------------------------------------------------------------------------
|
||||
\name{[~ print(h.initialWords( r.name )) ~]}{[[ h.lastWord( r.name ) ]]}
|
||||
\position{[[ r.info.label ]]}
|
||||
\address{[[ r.location.address ]]}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Personal Data
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Essentials
|
||||
\name{[[ _.initial(r.name.split(' ')).join(' ') ]] }{[[ _.last(r.name.split(' ')) ]]}
|
||||
\address{[[ r.location.address.replace(/\n/g, ', ') ]]}
|
||||
\mobile{[[ r.contact.phone ]]}
|
||||
%%% Social
|
||||
\email{[[ r.contact.email ]]}
|
||||
\homepage{[[ r.contact.website ]]}
|
||||
[~ if(r.hasProfile('github')) { ~]\github{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
[~ if(r.hasProfile('linkedin')) { ~]\linkedin{[[ r.getProfile('linkedin').user ]]}[~ } ~]
|
||||
%%% Optionals
|
||||
\position{[[ r.info.characterClass ]]{\enskip\cdotp\enskip}[[ r.info.label ]]}
|
||||
[~ if( r.info.quote ) { ~]\quote{``[[ r.info.quote ]]"}[~ } ~]
|
||||
[~ if (r.hasProfile('github')) { ~]\github{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
[~ if (r.hasProfile('linkedin')) { ~]\linkedin{[[ r.getProfile('github').user ]]}[~ } ~]
|
||||
% \stackoverflow{SO-id}{SO-name}
|
||||
% \twitter{@twit}
|
||||
% \skype{skype-id}
|
||||
% \reddit{reddit-id}
|
||||
% \extrainfo{extra informations}
|
||||
|
||||
[~ if (r.info.quote) { ~]\quote{``[[ r.info.quote ]]"}[~ } ~]
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Content
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%%% Make a footer for CV with three arguments(<left>, <center>, <right>)
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{document}
|
||||
|
||||
% Print the header with above personal informations
|
||||
\makecvheader
|
||||
|
||||
% Print the footer with 3 arguments(<left>, <center>, <right>)
|
||||
% Leave any of these blank if they are not needed
|
||||
\makecvfooter
|
||||
{\today}
|
||||
{[[ r.name ]]~~~·~~~Résumé}
|
||||
{\thepage}
|
||||
|
||||
\begin{document}
|
||||
%%% Make a header for CV with personal data
|
||||
\makecvheader
|
||||
|
||||
%%% Import contents
|
||||
\import{\sectiondir}{education.tex}
|
||||
\import{\sectiondir}{experience.tex}
|
||||
\import{\sectiondir}{extracurricular.tex}
|
||||
\import{\sectiondir}{honors.tex}
|
||||
\import{\sectiondir}{presentation.tex}
|
||||
\import{\sectiondir}{writing.tex}
|
||||
\import{\sectiondir}{committees.tex}
|
||||
%-------------------------------------------------------------------------------
|
||||
% CV/RESUME CONTENT
|
||||
% Each section is imported separately, open each file in turn to modify content
|
||||
%-------------------------------------------------------------------------------
|
||||
% \input{resume/summary.tex}
|
||||
\input{resume/education.tex}
|
||||
\input{resume/experience.tex}
|
||||
\input{resume/extracurricular.tex}
|
||||
\input{resume/honors.tex}
|
||||
\input{resume/presentation.tex}
|
||||
\input{resume/writing.tex}
|
||||
\input{resume/committees.tex}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
\end{document}
|
||||
|
@ -1,12 +1,23 @@
|
||||
[~ if( r.committees && r.committees.length ) { ~]
|
||||
[~ if (r.governance && r.governance.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Program Committees}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvhonors}
|
||||
[~ _.each(r.committees, function(com) { ~]
|
||||
[~ _.each( r.governance, function(gov) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvhonor
|
||||
{[[ com.position ]]}
|
||||
{[[ com.organization ]]}
|
||||
{[[ com.location ]]}
|
||||
{[[ com.safe.date ]]}
|
||||
[~ }); ~]
|
||||
{[[ gov.position ]]} % Position
|
||||
{[[ gov.organization ]]} % Committee
|
||||
{[[ gov.location ]]} % Location
|
||||
{[[ h.dateRange( gov ) ]]} % Date(s)
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cvhonors}
|
||||
[~ } ~]
|
||||
|
@ -1,20 +1,30 @@
|
||||
[~ if( r.education && r.education.history && r.education.history.length) { ~]
|
||||
[~ if (r.education && r.education.history && r.education.history.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Education}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.education.history, function(edu) { ~]
|
||||
[~ _.each( r.education.history, function(edu) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ edu.studyType ]], [[ edu.area ]]}
|
||||
{[[ edu.institution ]]}
|
||||
{[[ edu.location ]]}
|
||||
{[[ edu.safe.start ]] - [[ edu.safe.end ]]}
|
||||
[~ if( edu.highlights && edu.highlights.length ) {
|
||||
~]{
|
||||
\begin{cvitems}
|
||||
[~ _.each(edu.highlights, function(high) { ~]
|
||||
{[[ edu.title ]]} % Degree
|
||||
{[[ edu.institution ]]} % Institution
|
||||
{[[ edu.location ]]} % Location
|
||||
{[~ print( h.dateRange( edu ) ) ~]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s) bullet points
|
||||
[~ _.each( edu.highlights, function(high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}[~ } else { ~]{ }[~ } ~]
|
||||
}
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,18 +1,30 @@
|
||||
[~ if( r.employment && r.employment.history && r.employment.history.length ) { ~]
|
||||
[~ if (r.employment && r.employment.history && r.employment.history.length ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Experience}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.employment.history, function(emp) { ~]
|
||||
[~ _.each( r.employment.history, function(job) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ emp.position ]]}
|
||||
{[[ emp.employer ]]}
|
||||
{[[ emp.location ]]}
|
||||
{[[ emp.safe.start ]] - [[ emp.safe.end ]]}
|
||||
[~ if( emp.highlights && emp.highlights.length ) {
|
||||
~]{
|
||||
\begin{cvitems}[~ _.each( emp.highlights, function(high) { ~]
|
||||
\item {[[ high.replace(/#/g, '\\#') ]]}[~ }); ~]
|
||||
{[[ job.position ]]} % Job title
|
||||
{[[ job.employer ]]} % Organization
|
||||
{[[ job.location ]]} % Location
|
||||
{[~ print( h.dateRange( job ) ) ~]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s) of tasks/responsibilities
|
||||
[~ _.each( job.highlights, function (high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}[~ } ~]
|
||||
}
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,19 +1,30 @@
|
||||
[~ if( r.extracurricular && r.extracurricular.length ) { ~]
|
||||
[~ if (r.extracurricular && r.extracurricular.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Extracurricular Activity}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each( r.extracurricular, function(ex) { ~]
|
||||
[~ _.each( function(cur) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ ex.title ]]}
|
||||
{[[ ex.activity ]]}
|
||||
{[[ ex.location ]]}
|
||||
{[[ ex.safe.start ]] - [[ ex.safe.end ]]}
|
||||
[~ if( ex.highlights && ex.highlights.length ) {
|
||||
~]{
|
||||
\begin{cvitems}
|
||||
[~ _.each(ex.highlights, function(high) {
|
||||
~]\item {[[high]]}
|
||||
[~ }); ~]\end{cvitems}
|
||||
}[~ } else { ~]{ }[~ } ~]
|
||||
[~ }); ~]
|
||||
{[[ cur.role ]]} % Affiliation/role
|
||||
{[[ cur.organization ]]} % Organization/group
|
||||
{[[ cur.location ]]} % Location
|
||||
{[[ h.dateRange(cur) ]]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s) of experience/contributions/knowledge
|
||||
[~ _.each( cur.highlights, function( high ) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
@ -1,52 +1,52 @@
|
||||
[~ if( r.recognition && r.recognition.length ) { ~]
|
||||
[~ if ( r.recognition && r.recognition.length ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Honors \& Awards}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% SUBSECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsubsection{International}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvhonors}
|
||||
[~ _.each(r.recognition, function(rec) { ~]
|
||||
[~ _.each( r.recognition, function(rgn) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvhonor
|
||||
{[[ rec.title ]]}
|
||||
{[[ rec.event ]]}
|
||||
{[[ rec.location ]]}
|
||||
{[[ rec.safe.date ]]}
|
||||
[~ }); ~]
|
||||
{[[ rgn.title ]]} % Award
|
||||
{[[ rgn.from ]]} % Event
|
||||
{[[ rgn.location ]]} % Location
|
||||
{[[ rgn.date ]]} % Date(s)
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cvhonors}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% SUBSECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsubsection{Domestic}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvhonors}
|
||||
[~ _.each( r.recognition, function(rgn) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cvhonor
|
||||
{3rd Place}
|
||||
{WITHCON Hacking Competition Final}
|
||||
{Seoul, S.Korea}
|
||||
{2015}
|
||||
\cvhonor
|
||||
{Silver Prize}
|
||||
{KISA HDCON Hacking Competition Final}
|
||||
{Seoul, S.Korea}
|
||||
{2013}
|
||||
\cvhonor
|
||||
{2nd Award}
|
||||
{HUST Hacking Festival}
|
||||
{S.Korea}
|
||||
{2013}
|
||||
\cvhonor
|
||||
{3rd Award}
|
||||
{HUST Hacking Festival}
|
||||
{S.Korea}
|
||||
{2010}
|
||||
\cvhonor
|
||||
{3rd Award}
|
||||
{Holyshield 3rd Hacking Festival}
|
||||
{S.Korea}
|
||||
{2012}
|
||||
\cvhonor
|
||||
{2nd Award}
|
||||
{Holyshield 3rd Hacking Festival}
|
||||
{S.Korea}
|
||||
{2011}
|
||||
\cvhonor
|
||||
{5th Place}
|
||||
{PADOCON Hacking Competition Final}
|
||||
{Seoul, S.Korea}
|
||||
{2011}
|
||||
{[[ rgn.title ]]} % Award
|
||||
{[[ rgn.from ]]} % Event
|
||||
{[[ rgn.location ]]} % Location
|
||||
{[[ rgn.date ]]} % Date(s)
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cvhonors}
|
||||
[~ } ~]
|
||||
|
@ -1,20 +1,30 @@
|
||||
[~ if( r.speaking && r.speaking.length) { ~]
|
||||
[~ if (r.speaking && r.speaking.length) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Presentation}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.speaking, function(pres) { ~]
|
||||
[~ _.each( r.speaking, function(spk) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ pres.title ]]}
|
||||
{[[ pres.event ]]}
|
||||
{[[ pres.location ]]}
|
||||
{[[ pres.safe.date ]]}
|
||||
[~ if (pres.highlights && pres.highlights.length) {
|
||||
~]{
|
||||
\begin{cvitems}
|
||||
[~ _.each(pres.highlights, function( high) {
|
||||
~]\item {[[ high ]]}[~ }); ~]
|
||||
{[[ spk.title ]]} % Role
|
||||
{[[ spk.event ]])} % Event
|
||||
{[[ spk.location ]]} % Location
|
||||
{[[ spk.date ]]} % Date(s)
|
||||
{
|
||||
\begin{cvitems} % Description(s)
|
||||
[~ _.each( spk.highlights, function(high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}
|
||||
[~ } else { ~]{ }[~ } ~]
|
||||
[~ }); ~]
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
14
themes/awesome/src/latex/examples/resume/summary.tex
Normal file
14
themes/awesome/src/latex/examples/resume/summary.tex
Normal file
@ -0,0 +1,14 @@
|
||||
[~ if( r.info && r.info.brief ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Summary}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cvparagraph}
|
||||
[[ r.info.brief ]]
|
||||
\end{cvparagraph}
|
||||
[~ } ~]
|
@ -1,21 +1,30 @@
|
||||
[~ if( r.writing && r.writing.length ) { ~]
|
||||
[~ if (r.writing && r.writing.length ) { ~]
|
||||
%-------------------------------------------------------------------------------
|
||||
% SECTION TITLE
|
||||
%-------------------------------------------------------------------------------
|
||||
\cvsection{Writing}
|
||||
|
||||
|
||||
%-------------------------------------------------------------------------------
|
||||
% CONTENT
|
||||
%-------------------------------------------------------------------------------
|
||||
\begin{cventries}
|
||||
[~ _.each(r.writing, function(wri) { ~]
|
||||
[~ _.each( r.writing, function(wri) { ~]
|
||||
%---------------------------------------------------------
|
||||
\cventry
|
||||
{[[ wri.publisher ]]}
|
||||
{[[ wri.title ]]}
|
||||
{[[ wri.url ]]}
|
||||
{[[ wri.safe.date ]] - PRESENT}
|
||||
[~ if( wri.highlights && wri.highlights.length ) { ~]
|
||||
{[[ wri.title ]]} % Role
|
||||
{[[ wri.publisher ]]} % Title
|
||||
{[[ wri.url ]]} % Location
|
||||
{[[ wri.date ]]} % Date(s)
|
||||
{
|
||||
\begin{cvitems}
|
||||
[~ _.each(wri.highlights, function(high) { ~]
|
||||
\begin{cvitems} % Description(s)
|
||||
[~ _.each( wri.highlights, function(high) { ~]
|
||||
\item {[[ high ]]}
|
||||
[~ }); ~]
|
||||
\end{cvitems}
|
||||
}
|
||||
[~ } else { ~]{ }[~ } ~]
|
||||
|
||||
[~ }); ~]
|
||||
%---------------------------------------------------------
|
||||
\end{cventries}
|
||||
[~ } ~]
|
||||
|
Binary file not shown.
BIN
themes/awesome/src/latex/fonts/FontAwesome.ttf
Normal file
BIN
themes/awesome/src/latex/fonts/FontAwesome.ttf
Normal file
Binary file not shown.
@ -11,6 +11,7 @@
|
||||
"comment": "\\[\\#([\\s\\S]+?)\\#\\]"
|
||||
},
|
||||
"leaf": true,
|
||||
"explicit": true,
|
||||
"formats": {
|
||||
"latex": {
|
||||
"transform": [
|
||||
@ -22,6 +23,7 @@
|
||||
"src/latex/examples/resume/extracurricular.tex",
|
||||
"src/latex/examples/resume/honors.tex",
|
||||
"src/latex/examples/resume/presentation.tex",
|
||||
"src/latex/examples/resume/summary.tex",
|
||||
"src/latex/examples/resume/writing.tex",
|
||||
"src/latex/examples/cv/committees.tex",
|
||||
"src/latex/examples/cv/education.tex",
|
||||
@ -33,10 +35,11 @@
|
||||
"src/latex/examples/cv/writing.tex"
|
||||
],
|
||||
"symLinks": {
|
||||
"src/latex/examples/awesome-cv.cls": "../awesome-cv.cls",
|
||||
"src/latex/examples/fontawesome.sty": "../fontawesome.sty",
|
||||
"src/latex/examples/fonts": "../fonts"
|
||||
}
|
||||
"latex/examples/awesome-cv.cls": "../awesome-cv.cls",
|
||||
"latex/examples/fontawesome.sty": "../fontawesome.sty",
|
||||
"latex/examples/fonts": "../fonts"
|
||||
},
|
||||
"exclude": ["fontawesome.sty","README.md","package.json"]
|
||||
}
|
||||
},
|
||||
"message": "Don't forget to run 'xelatex <myresume.tex>' in the generated latex/examples folder to complete your resume build! For more info, see the theme README at https://github.com/fluentdesk/fresh-themes/blob/master/themes/awesome/README.md."
|
||||
|
Loading…
Reference in New Issue
Block a user