((= Latex base template (must inherit) This template builds upon the abstract template, adding common latex output functions. Figures, data_text, This template does not define a docclass, the inheriting class must define this.=)) ((*- extends 'display_priority.tplx' -*)) %=============================================================================== % Abstract overrides %=============================================================================== ((* block header *)) ((* block docclass *))((* endblock docclass *)) ((* block packages *)) \usepackage{graphicx} % Used to insert images \usepackage{adjustbox} % Used to constrain images to a maximum size \usepackage{color} % 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[mathletters]{ucs} % Extended unicode (utf-8) support \usepackage[utf8x]{inputenc} % Allow utf-8 characters in the tex document \usepackage{fancyvrb} % verbatim replacement that allows latex \usepackage{grffile} % extends the file name processing of package graphics % to support a larger range % 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} \usepackage{longtable} % longtable support required by pandoc >1.10 ((* endblock packages *)) ((* block definitions *)) \definecolor{orange}{cmyk}{0,0.4,0.8,0.2} \definecolor{darkorange}{rgb}{.71,0.21,0.01} \definecolor{darkgreen}{rgb}{.12,.54,.11} \definecolor{myteal}{rgb}{.26, .44, .56} \definecolor{gray}{gray}{0.45} \definecolor{lightgray}{gray}{.95} \definecolor{mediumgray}{gray}{.8} \definecolor{inputbackground}{rgb}{.95, .95, .85} \definecolor{outputbackground}{rgb}{.95, .95, .95} \definecolor{traceback}{rgb}{1, .95, .95} % ansi colors \definecolor{red}{rgb}{.6,0,0} \definecolor{green}{rgb}{0,.65,0} \definecolor{brown}{rgb}{0.6,0.6,0} \definecolor{blue}{rgb}{0,.145,.698} \definecolor{purple}{rgb}{.698,.145,.698} \definecolor{cyan}{rgb}{0,.698,.698} \definecolor{lightgray}{gray}{0.5} % bright ansi colors \definecolor{darkgray}{gray}{0.25} \definecolor{lightred}{rgb}{1.0,0.39,0.28} \definecolor{lightgreen}{rgb}{0.48,0.99,0.0} \definecolor{lightblue}{rgb}{0.53,0.81,0.92} \definecolor{lightpurple}{rgb}{0.87,0.63,0.87} \definecolor{lightcyan}{rgb}{0.5,1.0,0.83} % commands and environments needed by pandoc snippets % extracted from the output of `pandoc -s` \DefineShortVerb[commandchars=\\\{\}]{\|} \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}} % Define a nice break command that doesn't care if a line doesn't already % exist. \def\br{\hspace*{\fill} \\* } % Math Jax compatability definitions \def\gt{>} \def\lt{<} % Document parameters ((* block title *))\title{((( resources.metadata.name | escape_latex )))}((* endblock title *)) ((* block date *))((* endblock date *)) ((* block author *))((* 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=blue, linkcolor=darkorange, citecolor=darkgreen, } % 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 *)) %=============================================================================== % Support blocks %=============================================================================== % Displaying simple data text ((* block data_text *)) \begin{verbatim} ((( output.text ))) \end{verbatim} ((* endblock data_text *)) % Display python error text as-is ((* block pyerr *)) \begin{Verbatim}[commandchars=\\\{\}] ((( super() ))) \end{Verbatim} ((* endblock pyerr *)) ((* block traceback_line *)) ((( line | indent | strip_ansi | escape_latex ))) ((* endblock traceback_line *)) % Display stream ouput with coloring ((* block stream *)) \begin{Verbatim}[commandchars=\\\{\}] ((( output.text | escape_latex | ansi2latex ))) \end{Verbatim} ((* endblock stream *)) % Display latex ((* block data_latex -*)) ((*- if output.latex.startswith('$'): -*)) ((= Replace $ symbols with more explicit, equation block. =)) \begin{equation*} ((( output.latex | strip_dollars ))) \end{equation*} ((*- else -*)) ((( output.latex ))) ((*- endif *)) ((* endblock data_latex *)) % Default mechanism for rendering figures ((*- block data_png -*))((( draw_figure(output.png_filename) )))((*- endblock -*)) ((*- block data_jpg -*))((( draw_figure(output.jpeg_filename) )))((*- endblock -*)) ((*- block data_svg -*))((( draw_figure(output.svg_filename) )))((*- endblock -*)) ((*- block data_pdf -*))((( draw_figure(output['application/pdf_filename']) )))((*- endblock -*)) % Draw a figure using the graphicx package. ((* macro draw_figure(filename) -*)) ((* set filename = filename | posix_path *)) ((*- block figure scoped -*)) \begin{center} \adjustimage{max size={0.9\linewidth}{0.9\paperheight}}{((( filename )))} \end{center} { \hspace*{\fill} \\} ((*- endblock figure -*)) ((*- endmacro *)) % Draw heading cell. Explicitly map different cell levels. ((* block headingcell scoped *)) ((* if cell.level == 1 -*)) ((* block h1 -*))\section((* endblock h1 -*)) ((* elif cell.level == 2 -*)) ((* block h2 -*))\subsection((* endblock h2 -*)) ((* elif cell.level == 3 -*)) ((* block h3 -*))\subsubsection((* endblock h3 -*)) ((* elif cell.level == 4 -*)) ((* block h4 -*))\paragraph((* endblock h4 -*)) ((* elif cell.level == 5 -*)) ((* block h5 -*))\subparagraph((* endblock h5 -*)) ((* elif cell.level == 6 -*)) ((* block h6 -*))\\*\textit((* endblock h6 -*)) ((*- endif -*)) {((( cell.source | replace('\n', ' ') | citation2latex | strip_files_prefix | markdown2latex )))} ((* endblock headingcell *)) % Redirect pyout to display data priority. ((* block pyout scoped *)) ((* block data_priority scoped *)) ((( super() ))) ((* endblock *)) ((* endblock pyout *)) % Render markdown ((* block markdowncell scoped *)) ((( cell.source | citation2latex | strip_files_prefix | markdown2latex ))) ((* endblock markdowncell *)) % Don't display unknown types ((* block unknowncell scoped *)) ((* endblock unknowncell *))