cv.tex.in 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. \documentclass[a4paper]{scrartcl}
  2. \usepackage[margin=2.5cm]{geometry}
  3. \usepackage[ngerman]{babel}
  4. \usepackage{fontspec}
  5. \usepackage{graphicx}
  6. \usepackage{lastpage}
  7. \usepackage{scrlayer-scrpage}
  8. \usepackage{enumitem}
  9. \usepackage[
  10. hidelinks=true
  11. ]{hyperref}
  12. ((* if resume.publications *))
  13. \usepackage[
  14. maxbibnames=99,
  15. firstinits=true,
  16. ]{biblatex}
  17. \usepackage{filecontents}
  18. \begin{filecontents}{pubs.bib}
  19. ((* for publication in resume.publications|sort(attribute='year', reverse=True) *))
  20. @((( publication.type ))){tmp((( loop.index ))),
  21. title = {((( publication.title)))},
  22. author = {((( publication.authors|join(' and ') )))},
  23. year = {((( publication.year )))},
  24. month = {((( publication.month )))},
  25. pages = {((( publication.pages )))},
  26. ((* if publication.journal *))
  27. journal = {((( publication.journal )))},
  28. volume = {((( publication.volume )))},
  29. number = {((( publication.number )))},
  30. ((* else *))
  31. booktitle = {((( publication.booktitle )))},
  32. ((* endif *))
  33. doi = {((( publication.doi )))},
  34. }
  35. ((* endfor *))
  36. \end{filecontents}
  37. \bibliography{pubs}
  38. ((* endif *))
  39. % --- Fonts
  40. \setmainfont[Mapping=tex-text]{Linux Libertine O}
  41. \newfontfamily\light[Mapping=tex-text, LetterSpace=12.0]{Archivo Narrow}
  42. \setlist[description]{%
  43. font={\normalfont\light\footnotesize},
  44. topsep=0em,
  45. itemsep=0.2em
  46. }
  47. \setlist[itemize]{%
  48. topsep=0.8em,
  49. itemsep=0.15em,
  50. }
  51. ((* if resume.publications *))
  52. \defbibheading{customheading}{\noindent\light\large
  53. \uppercase{Veröffentlichungen}\vspace{1em}}
  54. ((* endif *))
  55. % --- Commands
  56. \newcommand*{\textlight}[1]{{\light #1}}
  57. \newcommand*{\cvperiod}[2]{%
  58. \noindent
  59. \begin{minipage}[t]{0.7\textwidth}
  60. \raggedright #2
  61. \end{minipage}
  62. \hfill
  63. \begin{minipage}[t]{0.3\textwidth}
  64. \raggedleft #1
  65. \end{minipage}
  66. }
  67. % --- Environments
  68. \newenvironment*{cvsection}[1]{%
  69. \noindent\rule{\textwidth}{0.4pt}
  70. \begin{flushleft}
  71. \vspace{-0.2em}
  72. \addfontfeature{LetterSpace=6.0}\footnotesize\light{\MakeUppercase{#1}}
  73. \end{flushleft}
  74. }
  75. {}
  76. \cfoot{\normalfont\footnotesize\textlight{\thepage}}
  77. \pagestyle{empty}
  78. \begin{document}
  79. \begin{center}
  80. \light{\addfontfeature{LetterSpace=18.0}{\Large\MakeUppercase{((( resume.basics.title)))~((( resume.basics.name )))}}}
  81. \vspace{1em}
  82. {\footnotesize\textlight{\MakeUppercase{%
  83. ((( resume.basics.location.address )))\hspace{1ex}•\hspace{1ex}((( resume.basics.location.postalCode )))
  84. ((( resume.basics.location.city )))}}}
  85. \vspace{.4em}
  86. {\footnotesize\textlight{%
  87. ((( resume.basics.phone )))\hspace{1ex}•\hspace{1ex}\href{mailto:((( resume.basics.email )))}{\MakeUppercase{((( resume.basics.email )))}}}}
  88. \end{center}
  89. \vspace{1em}
  90. \begin{cvsection}{Berufserfahrung}
  91. ((* for work in resume.work *))
  92. \cvperiod{((( work.startDate|simpledate )))--((( work.endDate|simpledate )))}{((( work.company)))}
  93. \vspace{0.4em}
  94. \noindent\emph{((( work.position )))}
  95. ((* if work.highlights *))
  96. \vspace{-0.6em}
  97. \begin{itemize}[leftmargin=1.8em, rightmargin=8em]
  98. \raggedright
  99. ((* for highlight in work.highlights *))
  100. \item ((( highlight )))
  101. ((* endfor *))
  102. \end{itemize}
  103. ((* endif *))
  104. \vspace{0.6em}
  105. ((* endfor *))
  106. \end{cvsection}
  107. \begin{cvsection}{Ausbildung}
  108. ((* for stage in resume.education *))
  109. \cvperiod{((( stage.startDate|simpledate )))--((( stage.endDate|simpledate)))}{((( stage.studyType ))) ((( stage.area ))) -- ((( stage.institution )))}
  110. ((* if stage.highlights *))
  111. \vspace{-1.8em}
  112. \begin{itemize}[leftmargin=1.8em, rightmargin=8em]
  113. \raggedright
  114. ((* for highlight in stage.highlights *))
  115. \item ((( highlight )))
  116. ((* endfor *))
  117. \end{itemize}
  118. ((* endif *))
  119. ((* endfor *))
  120. \end{cvsection}
  121. \begin{cvsection}{Kenntnisse}
  122. \begin{description}[leftmargin=6.5em, style=nextline]
  123. ((* for skill in resume.skills *))
  124. \item[((( skill.name )))] ((( skill.keywords|join(', ') )))
  125. ((* endfor *))
  126. \end{description}
  127. \end{cvsection}
  128. \vspace{1em}
  129. \begin{cvsection}{Sprachen}
  130. \begin{description}[leftmargin=6.5em, style=nextline]
  131. ((* for lang in resume.languages *))
  132. \item[((( lang.language )))] ((( lang.fluency )))
  133. ((* if lang.cert *))
  134. ((( lang.cert )))
  135. ((* endif *))
  136. ((* endfor *))
  137. \end{description}
  138. \end{cvsection}
  139. % \begin{cvsection}{Persönliche Interessen}
  140. % ((* for interest in resume.interests *))
  141. % ((( interest.name )))\vspace{.75em}
  142. % ((* endfor *))
  143. % \end{cvsection}
  144. \vspace{1em}
  145. % \begin{cvsection}{Netz}
  146. % \begin{description}[leftmargin=4.2em, style=nextline]
  147. % \item[Webseite] \href{((( resume.basics.website )))}{((( resume.basics.shortWebsite )))}
  148. % ((* for profile in resume.basics.profiles *))
  149. % \item[((( profile.network )))] \href{((( profile.url )))}{((( profile.shortUrl )))}
  150. % ((* endfor *))
  151. % \end{description}
  152. % \end{cvsection}
  153. \vfill
  154. \begin{flushleft}
  155. ((* if resume.basics.signature *))
  156. \includegraphics[width=2.0cm]{((( resume.basics.signature )))}
  157. ((* endif *))
  158. ((( resume.basics.location.city ))), \today
  159. \end{flushleft}
  160. ((* if resume.publications *))
  161. \pagebreak
  162. \nocite{*}
  163. \begingroup
  164. \newrefcontext[sorting=ydnt]
  165. \printbibliography[heading=customheading]
  166. \endgroup
  167. ((* endif *))
  168. \pagebreak
  169. \end{document}