diff --git a/subject/Makefile b/subject/Makefile index a1f8ca5..0fa73a2 100644 --- a/subject/Makefile +++ b/subject/Makefile @@ -1,9 +1,9 @@ all: subject.pdf .md.pdf: - pandoc --latex-engine=xelatex --toc --normalize --chapters -o $@ $< + pandoc --latex-engine=xelatex --toc --normalize --chapters --standalone -N --template=../template.tex -M fontsize=12pt -M papersize=a4paper -o $@ $< .md.tex: - pandoc --latex-engine=xelatex --toc --normalize --chapters --standalone -o $@ $< + pandoc --latex-engine=xelatex --toc --normalize --chapters --standalone -N --template=../template.tex -M fontsize=12pt -M papersize=a4paper -o $@ $< .SUFFIXES: .md .tex .pdf diff --git a/template.tex b/template.tex new file mode 100644 index 0000000..90ad704 --- /dev/null +++ b/template.tex @@ -0,0 +1,208 @@ +\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$$if(papersize)$$papersize$,$endif$$for(classoption)$$classoption$$sep$,$endfor$]{$documentclass$} +\usepackage[T1]{fontenc} % font encoding +\usepackage{euler} % math font (must be loaded before fontspec) +\usepackage{tabularx} % arrays with paragraph-like cells +\usepackage[table]{xcolor} % colors +\usepackage{tikz} % graphics +\usepackage{float} % improve floating figures and tables +\usepackage{titlesec} % must be loaded BEFORE hyperref! +\usepackage{graphicx} % pictures inclusion +\usepackage{listings} % source code environments and inclusion +\usepackage{fancybox} % boxes +\usepackage{textcomp} % more symbols +\usepackage{pifont} % even more symbols (with \ding) +\usepackage{amsmath,amsfonts} % math symbols and environments +\usepackage{calc} % operations on lengths +\usepackage{booktabs} % better tables +\usepackage{multirow} % tabular cells spanning multiple rows +\usepackage{ifthen} % if-then-else construct +\usepackage{enumitem} % list customization +\usepackage{sectsty} % section-title customization +\usepackage{ifxetex,ifluatex} +\usepackage{setspace} % set space amount between lines +\usepackage[cm]{fullpage} % don't waste space around pages +\usepackage{longtable} +\usepackage{fixltx2e} % provides \textsubscript +% use upquote if available, for straight quotes in verbatim environments +\IfFileExists{upquote.sty}{\usepackage{upquote}}{} +\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex + \usepackage[utf8]{inputenc} +$if(euro)$ + \usepackage{eurosym} +$endif$ +\else % if luatex or xelatex + \ifxetex + \usepackage{mathspec} + \usepackage{xltxtra,xunicode} + \else + \usepackage{fontspec} + \fi + \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase} + \newcommand{\euro}{€} +$if(mainfont)$ + \setmainfont{$mainfont$} +$endif$ +$if(sansfont)$ + \setsansfont{$sansfont$} +$endif$ +$if(monofont)$ + \setmonofont[Mapping=tex-ansi]{$monofont$} +$endif$ +$if(mathfont)$ + \setmathfont(Digits,Latin,Greek){$mathfont$} +$endif$ +\fi +\setmainfont[Ligatures={Common,Rare}]{LinLibertine} +\setsansfont[Ligatures=Common]{LinBiolinum} +\linepenalty=100 +\allsectionsfont{\color{black}} +\setlist{itemsep=1pt,topsep=2pt,partopsep=0pt,parsep=0pt,leftmargin=20pt} + +\titlespacing{\section}{0pt}{2.5em}{0.66em} +\titlespacing{\subsection}{0pt}{1.5em}{0.5em} +\titlespacing{\subsubsection}{0pt}{1em}{0.4em} +\titlespacing{\paragraph}{0pt}{2ex}{1.2ex} + +% use microtype if available +\IfFileExists{microtype.sty}{\usepackage{microtype}}{} +$if(geometry)$ +\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry} +$endif$ +$if(natbib)$ +\usepackage{natbib} +\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$} +$endif$ +$if(biblatex)$ +\usepackage{biblatex} +$if(biblio-files)$ +\bibliography{$biblio-files$} +$endif$ +$endif$ +$if(listings)$ +\usepackage{listings} +$endif$ +$if(lhs)$ +\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{} +$endif$ +$if(highlighting-macros)$ +$highlighting-macros$ +$endif$ +$if(verbatim-in-note)$ +\usepackage{fancyvrb} +$endif$ +$if(tables)$ +\usepackage{longtable} +$endif$ +$if(graphics)$ +\usepackage{graphicx} +% Redefine \includegraphics so that, unless explicit options are +% given, the image width will not exceed the width of the page. +% Images get their normal width if they fit onto the page, but +% are scaled down if they would overflow the margins. +\makeatletter +\def\ScaleIfNeeded{% + \ifdim\Gin@nat@width>\linewidth + \linewidth + \else + \Gin@nat@width + \fi +} +\makeatother +\let\Oldincludegraphics\includegraphics +{% + \catcode`\@=11\relax% + \gdef\includegraphics{\@ifnextchar[{\Oldincludegraphics}{\Oldincludegraphics[width=\ScaleIfNeeded]}}% +}% +$endif$ +\ifxetex + \usepackage[setpagesize=false, % page size defined by xetex + unicode=false, % unicode breaks when used with xetex + xetex]{hyperref} +\else + \usepackage[unicode=true]{hyperref} +\fi +\hypersetup{breaklinks=true, + bookmarks=true, + pdfauthor={$author-meta$}, + pdftitle={$title-meta$}, + colorlinks=true, + citecolor=$if(citecolor)$$citecolor$$else$blue$endif$, + urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$, + linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$, + pdfborder={0 0 0}} +\urlstyle{same} % don't use monospace font for urls +$if(links-as-notes)$ +% Make links footnotes instead of hotlinks: +\renewcommand{\href}[2]{#2\footnote{\url{#1}}} +$endif$ +$if(strikeout)$ +\usepackage[normalem]{ulem} +% avoid problems with \sout in headers with hyperref: +\pdfstringdefDisableCommands{\renewcommand{\sout}{}} +$endif$ +\setlength{\parskip}{6pt plus 2pt minus 1pt} +\setlength{\emergencystretch}{3em} % prevent overfull lines +$if(numbersections)$ +\setcounter{secnumdepth}{5} +$else$ +\setcounter{secnumdepth}{0} +$endif$ +$if(verbatim-in-note)$ +\VerbatimFootnotes % allows verbatim text in footnotes +$endif$ +$if(lang)$ +\usepackage[$lang$]{babel} +$endif$ +$for(header-includes)$ +$header-includes$ +$endfor$ + +$if(title)$ +\title{$title$} +$endif$ +$if(subtitle)$ +\subtitle{$subtitle$} +$endif$ +\author{$for(author)$$author$$sep$ \and $endfor$} +\date{$date$} + +\begin{document} +$if(title)$ +\maketitle +$endif$ + +$for(include-before)$ +$include-before$ + +$endfor$ +$if(toc)$ +{ +\hypersetup{linkcolor=black} +\setcounter{tocdepth}{$toc-depth$} +\tableofcontents +} +$endif$ +$body$ + +$if(natbib)$ +$if(biblio-files)$ +$if(biblio-title)$ +$if(book-class)$ +\renewcommand\bibname{$biblio-title$} +$else$ +\renewcommand\refname{$biblio-title$} +$endif$ +$endif$ +\bibliography{$biblio-files$} + +$endif$ +$endif$ +$if(biblatex)$ +\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$ + +$endif$ +$for(include-after)$ +$include-after$ + +$endfor$ +\end{document} diff --git a/tutorial/Makefile b/tutorial/Makefile index 62215a3..fbbcf46 100644 --- a/tutorial/Makefile +++ b/tutorial/Makefile @@ -1,9 +1,9 @@ all: tutorial.pdf .md.pdf: - pandoc --latex-engine=xelatex --toc --normalize --listings --chapters -o $@ $< + pandoc --latex-engine=xelatex --toc --normalize --listings --chapters -M lang=frenchb --standalone -N --template=../template.tex -M fontsize=12pt -M papersize=a4paper -o $@ $< .md.tex: - pandoc --latex-engine=xelatex --toc --normalize --listings --chapters --standalone -o $@ $< + pandoc --latex-engine=xelatex --toc --normalize --listings --chapters -M lang=frenchb --standalone -N --template=../template.tex -M fontsize=12pt -M papersize=a4paper -o $@ $< .SUFFIXES: .md .tex .pdf