213 lines
9.1 KiB
Django/Jinja
213 lines
9.1 KiB
Django/Jinja
((=- Latex base template (must inherit)
|
|
This template builds upon the abstract template, adding common latex output
|
|
functions. Figures, data_text,
|
|
This template defines defines a default docclass, the inheriting class should
|
|
override this.-=))
|
|
|
|
((*- extends 'document_contents.tex.j2' -*))
|
|
|
|
%===============================================================================
|
|
% Abstract overrides
|
|
%===============================================================================
|
|
|
|
((*- block header -*))
|
|
((* block docclass *))\documentclass[11pt]{article}((* endblock docclass *))
|
|
|
|
((* block packages *))
|
|
\usepackage{iftex}
|
|
\ifPDFTeX
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage{mathpazo}
|
|
\else
|
|
\usepackage{fontspec}
|
|
\fi
|
|
|
|
% Basic figure setup, for now with no caption control since it's done
|
|
% automatically by Pandoc (which extracts ![](path) syntax from Markdown).
|
|
\usepackage{graphicx}
|
|
% Maintain compatibility with old templates. Remove in nbconvert 6.0
|
|
\let\Oldincludegraphics\includegraphics
|
|
% Ensure that by default, figures have no caption (until we provide a
|
|
% proper Figure object with a Caption API and a way to capture that
|
|
% in the conversion process - todo).
|
|
\usepackage{caption}
|
|
\DeclareCaptionFormat{nocaption}{}
|
|
\captionsetup{format=nocaption,aboveskip=0pt,belowskip=0pt}
|
|
|
|
\usepackage{float}
|
|
\floatplacement{figure}{H} % forces figures to be placed at the correct location
|
|
\usepackage{xcolor} % Allow colors to be defined
|
|
\usepackage{enumerate} % Needed for markdown enumerations to work
|
|
\usepackage{geometry} % Used to adjust the document margins
|
|
\usepackage{amsmath} % Equations
|
|
\usepackage{amssymb} % Equations
|
|
\usepackage{textcomp} % defines textquotesingle
|
|
% Hack from http://tex.stackexchange.com/a/47451/13684:
|
|
\AtBeginDocument{%
|
|
\def\PYZsq{\textquotesingle}% Upright quotes in Pygmentized code
|
|
}
|
|
\usepackage{upquote} % Upright quotes for verbatim code
|
|
\usepackage{eurosym} % defines \euro
|
|
\usepackage[mathletters]{ucs} % Extended unicode (utf-8) support
|
|
\usepackage{fancyvrb} % verbatim replacement that allows latex
|
|
\usepackage{grffile} % extends the file name processing of package graphics
|
|
% to support a larger range
|
|
\makeatletter % fix for old versions of grffile with XeLaTeX
|
|
\@ifpackagelater{grffile}{2019/11/01}
|
|
{
|
|
% Do nothing on new versions
|
|
}
|
|
{
|
|
\def\Gread@@xetex#1{%
|
|
\IfFileExists{"\Gin@base".bb}%
|
|
{\Gread@eps{\Gin@base.bb}}%
|
|
{\Gread@@xetex@aux#1}%
|
|
}
|
|
}
|
|
\makeatother
|
|
\usepackage[Export]{adjustbox} % Used to constrain images to a maximum size
|
|
\adjustboxset{max size={0.9\linewidth}{0.9\paperheight}}
|
|
|
|
% The hyperref package gives us a pdf with properly built
|
|
% internal navigation ('pdf bookmarks' for the table of contents,
|
|
% internal cross-reference links, web links for URLs, etc.)
|
|
\usepackage{hyperref}
|
|
% The default LaTeX title has an obnoxious amount of whitespace. By default,
|
|
% titling removes some of it. It also provides customization options.
|
|
\usepackage{titling}
|
|
\usepackage{longtable} % longtable support required by pandoc >1.10
|
|
\usepackage{booktabs} % table support for pandoc > 1.12.2
|
|
\usepackage[inline]{enumitem} % IRkernel/repr support (it uses the enumerate* environment)
|
|
\usepackage[normalem]{ulem} % ulem is needed to support strikethroughs (\sout)
|
|
% normalem makes italics be italics, not underlines
|
|
\usepackage{mathrsfs}
|
|
((* endblock packages *))
|
|
|
|
((* block definitions *))
|
|
% Colors for the hyperref package
|
|
\definecolor{urlcolor}{rgb}{0,.145,.698}
|
|
\definecolor{linkcolor}{rgb}{.71,0.21,0.01}
|
|
\definecolor{citecolor}{rgb}{.12,.54,.11}
|
|
|
|
% ANSI colors
|
|
\definecolor{ansi-black}{HTML}{3E424D}
|
|
\definecolor{ansi-black-intense}{HTML}{282C36}
|
|
\definecolor{ansi-red}{HTML}{E75C58}
|
|
\definecolor{ansi-red-intense}{HTML}{B22B31}
|
|
\definecolor{ansi-green}{HTML}{00A250}
|
|
\definecolor{ansi-green-intense}{HTML}{007427}
|
|
\definecolor{ansi-yellow}{HTML}{DDB62B}
|
|
\definecolor{ansi-yellow-intense}{HTML}{B27D12}
|
|
\definecolor{ansi-blue}{HTML}{208FFB}
|
|
\definecolor{ansi-blue-intense}{HTML}{0065CA}
|
|
\definecolor{ansi-magenta}{HTML}{D160C4}
|
|
\definecolor{ansi-magenta-intense}{HTML}{A03196}
|
|
\definecolor{ansi-cyan}{HTML}{60C6C8}
|
|
\definecolor{ansi-cyan-intense}{HTML}{258F8F}
|
|
\definecolor{ansi-white}{HTML}{C5C1B4}
|
|
\definecolor{ansi-white-intense}{HTML}{A1A6B2}
|
|
\definecolor{ansi-default-inverse-fg}{HTML}{FFFFFF}
|
|
\definecolor{ansi-default-inverse-bg}{HTML}{000000}
|
|
|
|
% common color for the border for error outputs.
|
|
\definecolor{outerrorbackground}{HTML}{FFDFDF}
|
|
|
|
% commands and environments needed by pandoc snippets
|
|
% extracted from the output of `pandoc -s`
|
|
\providecommand{\tightlist}{%
|
|
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
|
\DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}}
|
|
% Add ',fontsize=\small' for more characters per line
|
|
\newenvironment{Shaded}{}{}
|
|
\newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{{#1}}}}
|
|
\newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.56,0.13,0.00}{{#1}}}
|
|
\newcommand{\DecValTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{{#1}}}
|
|
\newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{{#1}}}
|
|
\newcommand{\FloatTok}[1]{\textcolor[rgb]{0.25,0.63,0.44}{{#1}}}
|
|
\newcommand{\CharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
|
|
\newcommand{\StringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
|
|
\newcommand{\CommentTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textit{{#1}}}}
|
|
\newcommand{\OtherTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{{#1}}}
|
|
\newcommand{\AlertTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{{#1}}}}
|
|
\newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.02,0.16,0.49}{{#1}}}
|
|
\newcommand{\RegionMarkerTok}[1]{{#1}}
|
|
\newcommand{\ErrorTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{{#1}}}}
|
|
\newcommand{\NormalTok}[1]{{#1}}
|
|
|
|
% Additional commands for more recent versions of Pandoc
|
|
\newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.53,0.00,0.00}{{#1}}}
|
|
\newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
|
|
\newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.25,0.44,0.63}{{#1}}}
|
|
\newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.73,0.40,0.53}{{#1}}}
|
|
\newcommand{\ImportTok}[1]{{#1}}
|
|
\newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.73,0.13,0.13}{\textit{{#1}}}}
|
|
\newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
|
|
\newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
|
|
\newcommand{\VariableTok}[1]{\textcolor[rgb]{0.10,0.09,0.49}{{#1}}}
|
|
\newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.00,0.44,0.13}{\textbf{{#1}}}}
|
|
\newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.40,0.40,0.40}{{#1}}}
|
|
\newcommand{\BuiltInTok}[1]{{#1}}
|
|
\newcommand{\ExtensionTok}[1]{{#1}}
|
|
\newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.74,0.48,0.00}{{#1}}}
|
|
\newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.49,0.56,0.16}{{#1}}}
|
|
\newcommand{\InformationTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
|
|
\newcommand{\WarningTok}[1]{\textcolor[rgb]{0.38,0.63,0.69}{\textbf{\textit{{#1}}}}}
|
|
|
|
|
|
% Define a nice break command that doesn't care if a line doesn't already
|
|
% exist.
|
|
\def\br{\hspace*{\fill} \\* }
|
|
% Math Jax compatibility definitions
|
|
\def\gt{>}
|
|
\def\lt{<}
|
|
\let\Oldtex\TeX
|
|
\let\Oldlatex\LaTeX
|
|
\renewcommand{\TeX}{\textrm{\Oldtex}}
|
|
\renewcommand{\LaTeX}{\textrm{\Oldlatex}}
|
|
% Document parameters
|
|
% Document title
|
|
((* block title -*))
|
|
((*- set nb_title = nb.metadata.get('title', '') or resources['metadata']['name'] -*))
|
|
\title{((( nb_title | escape_latex )))}
|
|
((*- endblock title *))
|
|
((* block date *))((* endblock date *))
|
|
((* block author *))
|
|
((* if 'authors' in nb.metadata *))
|
|
\author{((( nb.metadata.authors | join(', ', attribute='name') )))}
|
|
((* endif *))
|
|
((* endblock author *))
|
|
((* endblock definitions *))
|
|
|
|
((* block commands *))
|
|
% Prevent overflowing lines due to hard-to-break entities
|
|
\sloppy
|
|
% Setup hyperref package
|
|
\hypersetup{
|
|
breaklinks=true, % so long urls are correctly broken across lines
|
|
colorlinks=true,
|
|
urlcolor=urlcolor,
|
|
linkcolor=linkcolor,
|
|
citecolor=citecolor,
|
|
}
|
|
% Slightly bigger margins than the latex defaults
|
|
((* block margins *))
|
|
\geometry{verbose,tmargin=1in,bmargin=1in,lmargin=1in,rmargin=1in}
|
|
((* endblock margins *))
|
|
((* endblock commands *))
|
|
((* endblock header *))
|
|
|
|
((* block body *))
|
|
\begin{document}
|
|
((* block predoc *))
|
|
((* block maketitle *))\maketitle((* endblock maketitle *))
|
|
((* block abstract *))((* endblock abstract *))
|
|
((* endblock predoc *))
|
|
|
|
((( super() )))
|
|
|
|
% Add a bibliography block to the postdoc
|
|
((* block postdoc *))
|
|
((* block bibliography *))((* endblock bibliography *))
|
|
((* endblock postdoc *))
|
|
\end{document}
|
|
((* endblock body *))
|