From 34e2be930b1800266d0aed054c01fc9ad553a402 Mon Sep 17 00:00:00 2001 From: Amin Khan Date: Wed, 18 Jan 2017 17:30:33 +0000 Subject: [PATCH] Publications list, generated using BibLaTeX --- .gitignore | 5 ++ README.md | 13 +++ awesome-cv.cls | 148 +++++++++++++++++++++++++++++++++++ examples/cv.tex | 7 +- examples/cv/publications.tex | 33 ++++++++ examples/cv/references.bib | 45 +++++++++++ 6 files changed, 250 insertions(+), 1 deletion(-) create mode 100644 examples/cv/publications.tex create mode 100644 examples/cv/references.bib diff --git a/.gitignore b/.gitignore index 4a9b93d..c9cccd7 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,11 @@ *.out *.toc +## BibLaTeX auxiliary files: +*.bbl +*.bcf +*.blg + ## Intermediate documents: *.dvi *-converted-to.* diff --git a/README.md b/README.md index 4aacbf9..1fd75ef 100644 --- a/README.md +++ b/README.md @@ -78,6 +78,19 @@ $ xelatex {your-cv}.tex This should result in the creation of ``{your-cv}.pdf`` +##### List of Publications + +You can generate list of publication from [**BibTeX**](http://www.bibtex.org/) source files. +[**BibLaTeX**](https://www.ctan.org/pkg/biblatex) and [**biber**](https://www.ctan.org/pkg/biber) should be available. + +To generate document with the list of publications, at a command prompt, run + +```bash +$ xelatex {your-cv}.tex +$ biber {your-cv} +$ xelatex {your-cv}.tex +``` + ## Credit diff --git a/awesome-cv.cls b/awesome-cv.cls index d1c1074..cd4bda2 100644 --- a/awesome-cv.cls +++ b/awesome-cv.cls @@ -701,3 +701,151 @@ \letterenclosurestyle{\@letterenclname: \@letterenclosure} \\ } } + +%------------------------------------------------------------------------------- +% Bibliography +%------------------------------------------------------------------------------- +%\RequirePackage[style=verbose, maxnames=99, sorting=ydnt]{biblatex} +\RequirePackage[ % BibLaTeX + sorting=ydnt, % Sorts entries by year (descending order), name, title + style=verbose, + doi=false, + isbn=true, + url=false, + eprint=false, + backref = false, % include back references in bibliography + maxcitenames=3, % affects only the citations in the document body + maxbibnames=99, % affects only the bibliography, pass 99 to print all + hyperref=true, + block=none, + backend=biber % {Options: bibtex, biber} + ]{biblatex} + +% Avoid splitting entries across page break (only for 3 or fewer lines) +% Tip: http://tex.stackexchange.com/a/51261 +\AtBeginEnvironment{thebibliography}{% + \clubpenalty10000 + \@clubpenalty \clubpenalty + \widowpenalty10000 + \interlinepenalty5000} + +% Customized format, based on Fancy CV template created by Adrien Friggeri +\DeclareFieldFormat[article]{title}{#1\par} +\DeclareFieldFormat[inproceedings]{title}{#1\par} +\DeclareFieldFormat[misc]{title}{#1\par} +\DeclareFieldFormat[report]{title}{#1\par} +\DeclareFieldFormat[incollection]{title}{#1\par} + +\DeclareBibliographyDriver{article}{% + \fontsize{9pt}{1em}\bodyfont% + \printfield{title}% + \newblock% + \printnames{author}% + \par% + \newblock% + {% + \fontsize{8pt}{1em}\bodyfontlight\color{graytext}% + \usebibmacro{journal+issuetitle}% + \setunit{\space}% + \printfield{pages}% + \newunit% + \printlist{publisher}% + \setunit*{\addcomma\space}% + \printfield{year}% + \newunit% + } + \par\vspace{0.3\baselineskip} +} + +\DeclareBibliographyDriver{inproceedings}{% + \fontsize{9pt}{1em}\bodyfont% + \printfield{title}% + \newblock% + \printnames{author}% + \par% + \newblock% + {% + \fontsize{8pt}{1em}\bodyfontlight\color{graytext}% + \printfield{booktitle}% + \setunit{\addcomma\space}% + \printfield{year}% + \setunit{\addcomma\space}% + \printlist{location}% + \newunit% + } + \par\vspace{0.3\baselineskip} +} + +\DeclareBibliographyDriver{incollection}{% + \fontsize{9pt}{1em}\bodyfont% + \printfield{title}% + \newblock% + \printnames{author}% + \par% + \newblock% + {% + \fontsize{8pt}{1em}\bodyfontlight\color{graytext}% + \printfield{booktitle}% + \setunit{\addcomma\space}% + \printfield{year}% + \setunit{\addcomma\space}% + \printlist{location}% + \newunit% + } + \par\vspace{0.3\baselineskip} +} + +\DeclareBibliographyDriver{misc}{% + \fontsize{9pt}{1em}\bodyfont% + \printfield{title}% + \newblock% + \printnames{author}% + \par% + \newblock% + {% + \fontsize{8pt}{1em}\bodyfontlight\color{graytext}% + \printfield{booktitle}% + \setunit*{\addcomma\space}% + \printfield{note}% + \setunit*{\addcomma\space}% + \printfield{year}% + \setunit{\addcomma\space}% + \printlist{location}% + \newunit% + } + \par\vspace{0.3\baselineskip} +} + +\DeclareBibliographyDriver{report}{% + \fontsize{9pt}{1em}\bodyfont% + \printfield{title}% + \newblock% + \printnames{author}% + \par% + \newblock% + {% + \fontsize{8pt}{1em}\bodyfontlight\color{graytext}% + \printfield{type}% + \setunit{\space}% + \printfield{number}% + \setunit{\addcomma\space}% + \printfield{year}% + \newunit% + } + \par\vspace{0.3\baselineskip} +} + +% New syntax for flexible backend (BibLaTeX > v3.3) +\DeclareNameFormat{author}{% + \fontsize{9pt}{1em}\bodyfont% + \renewcommand*{\multinamedelim}{\addcomma\addspace}% + \nameparts{#1}% + \ifthenelse{\value{listcount}=1} + {\ifblank{\namepartgiven}{}{\namepartgiven\space}% + \namepartfamily}% + {\ifblank{\namepartgiven}{}{\namepartgiven\space}% + \namepartfamily}% + \ifthenelse{\value{listcount}<\value{liststop}} + {\addcomma\space} + {} +} diff --git a/examples/cv.tex b/examples/cv.tex index 9a5ce93..5fbb7f3 100644 --- a/examples/cv.tex +++ b/examples/cv.tex @@ -71,6 +71,10 @@ \quote{``Be the change that you want to see in the world."} +%------------------------------------------------------------------------------- +% BIBLIOGRAPHY +%------------------------------------------------------------------------------- +\addbibresource{cv/references.bib} %------------------------------------------------------------------------------- \begin{document} @@ -97,7 +101,8 @@ \input{cv/extracurricular.tex} \input{cv/honors.tex} \input{cv/presentation.tex} -\input{cv/writing.tex} +%\input{cv/writing.tex} +\input{cv/publications.tex} \input{cv/committees.tex} diff --git a/examples/cv/publications.tex b/examples/cv/publications.tex new file mode 100644 index 0000000..4bce786 --- /dev/null +++ b/examples/cv/publications.tex @@ -0,0 +1,33 @@ +%------------------------------------------------------------------------------- +% SECTION TITLE +%------------------------------------------------------------------------------- +\cvsection{Publications} + +%------------------------------------------------------------------------------- +% SUBSECTION TITLE +%------------------------------------------------------------------------------- +\cvsubsection{Journal Articles} + +\begin{refsection} + \nocite{Khan2014Incentive} + \nocite{Selimi2015Cloud} + + \printbibliography[ + heading=none, + sorting=ydnt + ] +\end{refsection} + +%------------------------------------------------------------------------------- +% SUBSECTION TITLE +%------------------------------------------------------------------------------- +\cvsubsection{Conference Proceedings} + +\begin{refsection} + \nocite{Khan2014Prototyping} + + \printbibliography[ + heading=none, + sorting=ydnt + ] +\end{refsection} diff --git a/examples/cv/references.bib b/examples/cv/references.bib new file mode 100644 index 0000000..6cc81e6 --- /dev/null +++ b/examples/cv/references.bib @@ -0,0 +1,45 @@ +%------------------------------------------------------------------------------- +% REPLACE WITH YOUR PUBLICATIONS +%------------------------------------------------------------------------------- + +@Article{Khan2014Incentive, + author = {Khan, Amin M and B{\"{u}}y{\"{u}}ksahin, {\"{U}}mit C. and Freitag, Felix}, + title = {{Incentive-based resource assignment and regulation for collaborative cloud services in community networks}}, + journal = {Journal of Computer and System Sciences}, + year = {2015}, + volume = {81}, + number = {8}, + pages = {1479--1495}, + month = dec, + doi = {10.1016/j.jcss.2014.12.023}, + issn = {00220000}, + url = {http://www.sciencedirect.com/science/article/pii/S0022000014001871 http://linkinghub.elsevier.com/retrieve/pii/S0022000014001871} +} + +@Article{Selimi2015Cloud, + author = {Selimi, Mennan and Khan, Amin M and Dimogerontakis, Emmanouil and Freitag, Felix and Centelles, Roger Pueyo}, + title = {{Cloud services in the Guifi.net community network}}, + journal = {Computer Networks}, + year = {2015}, + volume = {93}, + number = {P2}, + pages = {373--388}, + month = dec, + doi = {10.1016/j.comnet.2015.09.007}, + issn = {13891286}, + url = {http://linkinghub.elsevier.com/retrieve/pii/S1389128615003175} +} + +@InProceedings{Khan2014Prototyping, + author = {Khan, Amin M and Buyuksahin, Umit Cavus and Freitag, Felix}, + title = {{Prototyping Incentive-Based Resource Assignment for Clouds in Community Networks}}, + booktitle = {28th IEEE International Conference on Advanced Information Networking and Applications (AINA 2014)}, + year = {2014}, + pages = {719--726}, + address = {Victoria, Canada}, + month = may, + publisher = {IEEE}, + doi = {10.1109/AINA.2014.88}, + isbn = {978-1-4799-3630-4}, + url = {http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6838735} +} \ No newline at end of file