Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- NeedsTeXFormat{LaTeX2e}
- ProvidesClass{cv}
- DeclareOption*{PassOptionsToClass{CurrentOption}{article}}
- ProcessOptions
- LoadClass{article}
- RequirePackage{ltxtable}
- RequirePackage{ifthen}
- RequirePackage{color}
- RequirePackage[
- pdftex,
- pdfstartview={XYZ 0 1000 1.0},
- bookmarks=false,
- colorlinks,
- breaklinks=true,
- citecolor=black,
- filecolor=black,
- linkcolor=black,
- urlcolor=urlcolor,
- pdfborder={0 0 0}
- ]{hyperref}
- RequirePackage{geometry}
- RequirePackage{graphicx}
- pagestyle{empty}
- parindent=0pt
- newlength{colwidth}
- toksdefta=0
- toksdeftb=2
- defCV@AppendItem#1#2{
- ta={#1}
- tb=expandafter{#2}
- globaledef#2{thetbtheta}
- }
- newcommand{CV@init}[1]{
- expandafterglobalexpandafterdefcsname @@#1endcsname{}
- }
- newcommand{superscript}[1]{ensuremath{^textrm{scriptsize#1}}}
- newcommand{subscript}[1]{ensuremath{_textrm{scriptsize#1}}}
- newcommand{xst}[0]{superscript{st}}
- newcommand{xnd}[0]{superscript{nd}}
- newcommand{xrd}[0]{superscript{rd}}
- newcommand{xth}[0]{superscript{th}}
- defdetailedOnly{0}
- def@@language{}
- def@@detailed{}
- newcommand{Language}[1]{
- globaldef@@language{#1}
- }
- newcommand{Detailed}[1]{
- globaldef@@detailed{#1}
- }
- newlength{scolwidth}
- newlength{mcolwidth}
- newlength{cmedskip}
- newlength{sbigskip}
- newlength{smedskip}
- newlength{ssmallskip}
- newcommand{CV@initLength}{
- setlength{scolwidth}{textwidth}
- addtolength{scolwidth}{-colwidth}
- addtolength{scolwidth}{-8.72mm} % Je ne comprends pas d'où vient cette dimension, mais ça marche bien...
- setlength{mcolwidth}{colwidth}
- addtolength{mcolwidth}{scolwidth}
- addtolength{mcolwidth}{4.36mm} % Idem (si ce n'est que c'est la moitié de la première)
- setlength{cmedskip}{medskipamount}
- addtolength{cmedskip}{-smallskipamount}
- addtolength{cmedskip}{-baselineskip}
- setlength{sbigskip}{bigskipamount}
- addtolength{sbigskip}{-baselineskip}
- setlength{smedskip}{medskipamount}
- addtolength{smedskip}{-baselineskip}
- setlength{ssmallskip}{smallskipamount}
- addtolength{ssmallskip}{-baselineskip}
- }
- def@@name{}
- def@@address{}
- def@@telephone{}
- def@@email{}
- def@@nationality{}
- def@@dateofbirth{}
- def@@age{}
- def@@gender{}
- def@@maritalstatus{}
- def@@drivinglicense{}
- newenvironment{heading}{
- CV@init{name}
- CV@init{address}
- CV@init{telephone}
- CV@init{email}
- CV@init{nationality}
- CV@init{dateofbirth}
- CV@init{age}
- CV@init{gender}
- CV@init{maritalstatus}
- CV@init{mobility}
- CV@init{photo}
- newcommand{Name}[1]{globaldef@@name{##1}}
- newcommand{Address}[1]{globaldef@@address{##1}}
- newcommand{Telephone}[1]{globaldef@@telephone{##1}}
- newcommand{Email}[1]{globaldef@@email{##1}}
- newcommand{Nationality}[1]{globaldef@@nationality{##1}}
- newcommand{DateOfBirth}[1]{globaldef@@dateofbirth{##1}}
- newcommand{Age}[1]{globaldef@@age{##1}}
- newcommand{Gender}[1]{globaldef@@gender{##1}}
- newcommand{MaritalStatus}[1]{globaldef@@maritalstatus{##1}}
- newcommand{Mobility}[1]{globaldef@@mobility{##1}}
- newcommand{Photo}[1]{globaldef@@photo{##1}}
- }{
- globaldefCV@delayed{}
- CV@AppendItem{
- hspace*{tabcolsep}
- begin{minipage}{0.5linewidth}
- vspace{-baselineskip} % Mais pourquoi ?
- }{CV@delayed}
- ifx@@nameemptyelse
- CV@AppendItem{{large @@name}newline}{CV@delayed}
- fi
- ifx@@addressemptyelse
- CV@AppendItem{@@addressnewline}{CV@delayed}
- fi
- ifx@@telephoneemptyelse
- ifthenelse{equal{@@language}{francais}}{
- CV@AppendItem{Tél.~: @@telephonenewline}{CV@delayed}
- }{}
- ifthenelse{equal{@@language}{english}}{
- CV@AppendItem{Phone: @@telephonenewline}{CV@delayed}
- }{}
- fi
- ifx@@emailemptyelse
- ifthenelse{equal{@@language}{francais}}{
- CV@AppendItem{Email~: href{mailto:@@email}{@@email}}{CV@delayed}
- }{}
- ifthenelse{equal{@@language}{english}}{
- CV@AppendItem{Email: href{mailto:@@email}{@@email}}{CV@delayed}
- }{}
- fi
- CV@AppendItem{
- end{minipage}
- begin{minipage}{0.3linewidth}
- % vspace{baselineskip}
- }{CV@delayed}
- ifx@@dateofbirthemptyelse
- ifthenelse{equal{@@language}{francais}}{
- ifthenelse{equal{@@gender}{M}}{
- CV@AppendItem{Né le }{CV@delayed}
- }{
- CV@AppendItem{Née le }{CV@delayed}
- }
- CV@AppendItem{@@dateofbirth}{CV@delayed}
- ifx@@ageemptyelse
- CV@AppendItem{ (@@age{} ans)}{CV@delayed}
- fi
- }{}
- ifthenelse{equal{@@language}{english}}{
- CV@AppendItem{Date of birth: @@dateofbirth}{CV@delayed}
- ifx@@ageemptyelse
- CV@AppendItem{ (@@age{} year old)}{CV@delayed}
- fi
- }{}
- fi
- ifx@@nationalityemptyelse
- ifthenelse{equal{@@language}{francais}}{
- CV@AppendItem{newline{}Nationalité @@nationality}{CV@delayed}
- }{}
- ifthenelse{equal{@@language}{english}}{
- CV@AppendItem{newline{}Nationality: @@nationality}{CV@delayed}
- }{}
- fi
- ifx@@maritalstatusemptyelse
- ifthenelse{equal{@@language}{francais}}{
- CV@AppendItem{newline{}@@maritalstatus}{CV@delayed}
- }{}
- ifthenelse{equal{@@language}{english}}{
- CV@AppendItem{newline{}Marital status: @@maritalstatus}{CV@delayed}
- }{}
- fi
- ifx@@mobilityemptyelse
- CV@AppendItem{newline{}@@mobility}{CV@delayed}
- fi
- ifx@@photoemptyelse
- CV@AppendItem{
- end{minipage}
- begin{minipage}{0.17linewidth}
- flushright
- vspace{-baselineskip}
- includegraphics[height=3cm]{@@photo}
- }{CV@delayed}
- fi
- CV@AppendItem{
- end{minipage}
- vspace{-baselineskip}
- bigskip
- }{CV@delayed}
- aftergroupCV@delayed
- }
- newenvironment{objective}{
- CV@initLength
- begin{longtable}{p{colwidth}p{scolwidth}}
- ifthenelse{equal{@@language}{francais}}{
- largeitshape Objectif~: & largeitshape
- }{}ignorespaces
- ifthenelse{equal{@@language}{english}}{
- largeitshape Objective: & largeitshape
- }{}ignorespaces
- }{
- \
- end{longtable}
- medskip
- }
- renewenvironment{section}[1]{
- CV@initLength
- vspace{cmedskip}
- textbf{large #1}par
- rule[3mm]{textwidth}{0.1mm}par
- vspace{-4mm}
- begin{longtable}{p{colwidth}p{scolwidth}}
- % tabularx{linewidth}{p{colwidth}X}
- }{
- % endtabularx
- end{longtable}
- }
- def@@date{}
- def@@duration{}
- def@@place{}
- def@@locality{}
- def@@country{}
- def@@activities{}
- def@@events{}
- newcommand{CV@add@activity}[2][1]{
- ifthenelse{equal{@@detailed}{1} or equal{#1}{1}}{
- ifx@@activitiesemptyelse
- CV@AppendItem{newline}{@@activities}
- fi
- CV@AppendItem{#2.}{@@activities}
- }{}
- }
- newcommand{CV@add@event}[2][1]{
- ifthenelse{equal{@@detailed}{1} or equal{#1}{1}}{
- ifx@@eventsemptyelse
- CV@AppendItem{newline}{@@events}
- fi
- CV@AppendItem{#2.}{@@events}
- }{}
- }
- newcommand{CV@add@course}[1]{
- ifthenelse{equal{@@detailed}{1}}{
- CV@AppendItem{ensuremath{triangleright}~#1. }{@@courses}
- }{}
- }
- newcommand{singleEntry}[2][1]{
- ifthenelse{equal{@@detailed}{1} or equal{#1}{1}}{
- \kill
- multicolumn{2}{p{mcolwidth}}{#2.}\
- }{}
- % \[ssmallskip]
- }
- newcommand{bigSkip}{
- \[sbigskip]
- }
- newcommand{medSkip}{
- \[smedskip]
- }
- newcommand{smallSkip}{
- \[ssmallskip]
- }
- newenvironment{entry}[1][1]{
- globaldef@@detail{#1}
- CV@init{date}
- CV@init{duration}
- CV@init{skill}
- CV@init{place}
- CV@init{locality}
- CV@init{country}
- CV@init{activities}
- CV@init{events}
- CV@init{courses}
- newcommand{Date}[1]{globaldef@@date{##1}}
- newcommand{Duration}[1]{globaldef@@duration{##1}}
- newcommand{Skill}[1]{globaldef@@skill{##1}}
- newcommand{Place}[1]{globaldef@@place{##1}}
- newcommand{Locality}[1]{globaldef@@locality{##1}}
- newcommand{Country}[1]{globaldef@@country{##1}}
- letActivityCV@add@activity
- letEventCV@add@event
- letCourseCV@add@course
- }{
- globaldefCV@delayed{}
- CV@AppendItem{\kill}{CV@delayed}
- ifthenelse{equal{@@detailed}{1} or equal{@@detail}{1}}{
- ifx@@dateemptyelse
- CV@AppendItem{textbf{@@date}}{CV@delayed}
- ifx@@durationemptyelse
- CV@AppendItem{newline}{CV@delayed}
- fi
- fi
- ifx@@durationemptyelse
- CV@AppendItem{(@@duration)}{CV@delayed}
- fi
- ifx@@skillemptyelse
- CV@AppendItem{@@skill}{CV@delayed}
- fi
- CV@AppendItem{&}{CV@delayed}
- ifx@@placeemptyelse
- CV@AppendItem{textsc{@@place}}{CV@delayed}
- ifx@@localityemptyelse
- CV@AppendItem{, @@locality}{CV@delayed}
- fi
- ifx@@countryemptyelse
- CV@AppendItem{, @@country}{CV@delayed}
- fi
- CV@AppendItem{.}{CV@delayed}
- ifthenelse{equal{@@activities}{empty} and equal{@@events}{empty} and equal{@@courses}{empty}}{}{
- CV@AppendItem{newline}{CV@delayed}
- }
- fi
- ifx@@activitiesemptyelse
- CV@AppendItem{@@activities}{CV@delayed}
- ifthenelse{equal{@@events}{empty} and equal{@@courses}{empty}}{}{
- CV@AppendItem{newline}{CV@delayed}
- }
- fi
- ifx@@eventsemptyelse
- CV@AppendItem{@@events}{CV@delayed}
- ifthenelse{equal{@@courses}{empty}}{}{
- CV@AppendItem{newline}{CV@delayed}
- }
- fi
- ifx@@coursesemptyelse
- CV@AppendItem{textit{@@courses}}{CV@delayed}
- fi
- CV@AppendItem{\[smallskipamount]}{CV@delayed}
- }{}
- aftergroupCV@delayed
- }
- documentclass[12pt,a4paper]{cv}
- usepackage[francais]{babel}
- usepackage[latin1]{inputenc}
- usepackage[T1]{fontenc}
- usepackage[libertine]{newtxmath}%
- renewcommand*oldstylenums[1]{{fontfamily{fxlj}selectfont #1}}
- usepackage[scaled=0.8]{luximono}
- usepackage{libertine}
- usepackage[protrusion=true,expansion,final,babel=true]{microtype}
- usepackage{lastpage}
- usepackage{fancyhdr}
- usepackage{xcolor}
- pagestyle{fancy}
- renewcommand{headrulewidth}{0.0 pt}%
- renewcommand{footrulewidth}{0.0 pt}
- rfoot{textit{{fontfamily{lmr}selectfont thepage/pageref{LastPage}}}}
- cfoot{}
- Language{francais}
- hypersetup{
- pdfauthor = {Gilles Zigobet}, % C'est vous qui avez fait le PDF
- pdftitle = {Curriculum Vitae},
- % pdfsubject = {},
- % pdfkeywords = {},
- pdfcreator = {PDFLaTeX}, % Vous l'avez fait avec LateX !
- pdfproducer = {PDFLaTeX}
- }
- % Couleur des liens hypertextes, si vous voulez les faire ressortir
- definecolor{urlcolor}{rgb}{0, 0, 0.5}
- Detailed{1}
- % Marges
- geometry{
- hmargin=2.3cm, % Marges gauche-droite
- vmargin=2.5cm % Marges haut-bas
- }
- % Largeur de la colonne de gauche
- setlength{colwidth}{2.5cm}
- % Espacements
- smallskipamount=1mm % Espace entre les différents entrées d'une section
- medskipamount=3mm % Espace entre les sections
- bigskipamount=5mm % Espace entre le chapeau et l'objectif ou la première section
- % Redéfinition rubrique pour modifier l'apparence du titre - largeur du cadre
- % fixée à 5cm
- begin{document}
- ...
- end{document}
- begin{center}
- begin{tabular}{lcll}
- & bf Read & bf Spoken & bf Writen \
- bf English & Good & Good & Good \
- bf French & Excellent & Excellent & Excellent \
- end{tabular}
- end{center}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement