|
|
((*- extends 'display_priority.tplx' -*))
|
|
|
|
|
|
((* block in_prompt *))((* endblock in_prompt *))
|
|
|
|
|
|
((* block output_prompt *))((* endblock output_prompt *))
|
|
|
|
|
|
((* block codecell *))\begin{codecell}((( super() )))
|
|
|
\end{codecell}
|
|
|
((* endblock *))
|
|
|
|
|
|
((* block input *))
|
|
|
\begin{codeinput}
|
|
|
\begin{lstlisting}
|
|
|
((( cell.input )))
|
|
|
\end{lstlisting}
|
|
|
\end{codeinput}
|
|
|
((* endblock input *))
|
|
|
|
|
|
|
|
|
((= Those Two are for error displaying
|
|
|
even if the first one seem to do nothing,
|
|
|
it introduces a new line
|
|
|
|
|
|
=))
|
|
|
((* block pyerr *))
|
|
|
\begin{traceback}
|
|
|
\begin{verbatim}((( super() )))
|
|
|
\end{verbatim}
|
|
|
\end{traceback}
|
|
|
((* endblock pyerr *))
|
|
|
|
|
|
((* block traceback_line *))
|
|
|
((( line |indent| rm_ansi )))((* endblock traceback_line *))
|
|
|
((= .... =))
|
|
|
|
|
|
|
|
|
((*- block output_group -*))
|
|
|
\begin{codeoutput}
|
|
|
((( super() )))
|
|
|
\end{codeoutput}((* endblock *))
|
|
|
|
|
|
((*- block data_png -*))
|
|
|
\begin{center}
|
|
|
\includegraphics[max size={0.7\textwidth}{0.9\textheight}]{(((output.key_png)))}
|
|
|
\par
|
|
|
\end{center}
|
|
|
((*- endblock -*))
|
|
|
|
|
|
((*- block data_jpg -*))
|
|
|
\begin{center}
|
|
|
\includegraphics[max size={0.7\textwidth}{0.9\textheight}]{(((output.key_jpeg)))}
|
|
|
\par
|
|
|
\end{center}
|
|
|
((*- endblock -*))
|
|
|
|
|
|
((*- block data_svg -*))
|
|
|
\begin{center}
|
|
|
\includegraphics[width=0.7\textwidth]{(((output.key_svg)))}
|
|
|
\par
|
|
|
\end{center}
|
|
|
((*- endblock -*))
|
|
|
|
|
|
((* block pyout *))
|
|
|
((* block data_priority scoped *))((( super() )))((* endblock *))
|
|
|
((* endblock pyout *))
|
|
|
|
|
|
((* block data_text *))
|
|
|
\begin{verbatim}
|
|
|
((( output.text )))
|
|
|
\end{verbatim}
|
|
|
((* endblock *))
|
|
|
|
|
|
((* block data_latex -*))
|
|
|
((*- if output.latex.startswith('$'): -*)) \begin{equation*}
|
|
|
((( output.latex | rm_dollars)))
|
|
|
\end{equation*}
|
|
|
((*- else -*)) ((( output.latex ))) ((*- endif *))
|
|
|
((* endblock *))
|
|
|
|
|
|
((* block stream *))
|
|
|
\begin{Verbatim}[commandchars=\\\{\}]
|
|
|
((( output.text | ansi2latex)))
|
|
|
\end{Verbatim}
|
|
|
((* endblock stream *))
|
|
|
|
|
|
((* block markdowncell scoped *))((( cell.source | markdown2latex )))
|
|
|
((* endblock markdowncell *))
|
|
|
|
|
|
((* 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 -*))subparagraph((* endblock h6 -*))
|
|
|
((= 6th level not available in standard latex =))
|
|
|
|
|
|
((*- endif -*)){((( cell.source | markdown2latex )))}
|
|
|
((* endblock headingcell *))
|
|
|
|
|
|
((* block rawcell scoped *))
|
|
|
((( cell.source | pycomment )))
|
|
|
((* endblock rawcell *))
|
|
|
|
|
|
((* block unknowncell scoped *))
|
|
|
unknown type (((cell.type)))
|
|
|
((* endblock unknowncell *))
|
|
|
|
|
|
|
|
|
|
|
|
((* block body *))
|
|
|
|
|
|
((* block bodyBegin *))
|
|
|
\begin{document}
|
|
|
((* endblock bodyBegin *))
|
|
|
|
|
|
((( super() )))
|
|
|
|
|
|
((* block bodyEnd *))
|
|
|
\end{document}
|
|
|
((* endblock bodyEnd *))
|
|
|
((* endblock body *))
|
|
|
|
|
|
((* block header *))
|
|
|
%% This file was auto-generated by IPython.
|
|
|
%% Conversion from the original notebook file:
|
|
|
%%
|
|
|
\documentclass[11pt,english]{article}
|
|
|
|
|
|
%% This is the automatic preamble used by IPython. Note that it does *not*
|
|
|
%% include a documentclass declaration, that is added at runtime to the overall
|
|
|
%% document.
|
|
|
|
|
|
\usepackage{amsmath}
|
|
|
\usepackage{amssymb}
|
|
|
\usepackage{graphicx}
|
|
|
\usepackage{ucs}
|
|
|
\usepackage[utf8x]{inputenc}
|
|
|
|
|
|
% Scale down larger images
|
|
|
\usepackage[export]{adjustbox}
|
|
|
|
|
|
%fancy verbatim
|
|
|
\usepackage{fancyvrb}
|
|
|
% needed for markdown enumerations to work
|
|
|
\usepackage{enumerate}
|
|
|
|
|
|
% Slightly bigger margins than the latex defaults
|
|
|
\usepackage{geometry}
|
|
|
\geometry{verbose,tmargin=3cm,bmargin=3cm,lmargin=2.5cm,rmargin=2.5cm}
|
|
|
|
|
|
% Define a few colors for use in code, links and cell shading
|
|
|
\usepackage{color}
|
|
|
\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}
|
|
|
|
|
|
% new ansi colors
|
|
|
\definecolor{brown}{rgb}{0.54,0.27,0.07}
|
|
|
\definecolor{purple}{rgb}{0.5,0.0,0.5}
|
|
|
\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}
|
|
|
|
|
|
% Framed environments for code cells (inputs, outputs, errors, ...). The
|
|
|
% various uses of \unskip (or not) at the end were fine-tuned by hand, so don't
|
|
|
% randomly change them unless you're sure of the effect it will have.
|
|
|
\usepackage{framed}
|
|
|
|
|
|
% remove extraneous vertical space in boxes
|
|
|
\setlength\fboxsep{0pt}
|
|
|
|
|
|
% codecell is the whole input+output set of blocks that a Code cell can
|
|
|
% generate.
|
|
|
|
|
|
% TODO: unfortunately, it seems that using a framed codecell environment breaks
|
|
|
% the ability of the frames inside of it to be broken across pages. This
|
|
|
% causes at least the problem of having lots of empty space at the bottom of
|
|
|
% pages as new frames are moved to the next page, and if a single frame is too
|
|
|
% long to fit on a page, will completely stop latex from compiling the
|
|
|
% document. So unless we figure out a solution to this, we'll have to instead
|
|
|
% leave the codecell env. as empty. I'm keeping the original codecell
|
|
|
% definition here (a thin vertical bar) for reference, in case we find a
|
|
|
% solution to the page break issue.
|
|
|
|
|
|
%% \newenvironment{codecell}{%
|
|
|
%% \def\FrameCommand{\color{mediumgray} \vrule width 1pt \hspace{5pt}}%
|
|
|
%% \MakeFramed{\vspace{-0.5em}}}
|
|
|
%% {\unskip\endMakeFramed}
|
|
|
|
|
|
% For now, make this a no-op...
|
|
|
\newenvironment{codecell}{}
|
|
|
|
|
|
\newenvironment{codeinput}{%
|
|
|
\def\FrameCommand{\colorbox{inputbackground}}%
|
|
|
\MakeFramed{\advance\hsize-\width \FrameRestore}}
|
|
|
{\unskip\endMakeFramed}
|
|
|
|
|
|
\newenvironment{codeoutput}{%
|
|
|
\def\FrameCommand{\colorbox{outputbackground}}%
|
|
|
\vspace{-1.4em}
|
|
|
\MakeFramed{\advance\hsize-\width \FrameRestore}}
|
|
|
{\unskip\medskip\endMakeFramed}
|
|
|
|
|
|
\newenvironment{traceback}{%
|
|
|
\def\FrameCommand{\colorbox{traceback}}%
|
|
|
\MakeFramed{\advance\hsize-\width \FrameRestore}}
|
|
|
{\endMakeFramed}
|
|
|
|
|
|
% Use and configure listings package for nicely formatted code
|
|
|
\usepackage{listingsutf8}
|
|
|
\lstset{
|
|
|
language=python,
|
|
|
inputencoding=utf8x,
|
|
|
extendedchars=\true,
|
|
|
aboveskip=\smallskipamount,
|
|
|
belowskip=\smallskipamount,
|
|
|
xleftmargin=2mm,
|
|
|
breaklines=true,
|
|
|
basicstyle=\small \ttfamily,
|
|
|
showstringspaces=false,
|
|
|
keywordstyle=\color{blue}\bfseries,
|
|
|
commentstyle=\color{myteal},
|
|
|
stringstyle=\color{darkgreen},
|
|
|
identifierstyle=\color{darkorange},
|
|
|
columns=fullflexible, % tighter character kerning, like verb
|
|
|
}
|
|
|
|
|
|
% 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}
|
|
|
\hypersetup{
|
|
|
breaklinks=true, % so long urls are correctly broken across lines
|
|
|
colorlinks=true,
|
|
|
urlcolor=blue,
|
|
|
linkcolor=darkorange,
|
|
|
citecolor=darkgreen,
|
|
|
}
|
|
|
|
|
|
% hardcode size of all verbatim environments to be a bit smaller
|
|
|
\makeatletter
|
|
|
\g@addto@macro\@verbatim\small\topsep=0.5em\partopsep=0pt
|
|
|
\makeatother
|
|
|
|
|
|
% Prevent overflowing lines due to urls and other hard-to-break entities.
|
|
|
\sloppy
|
|
|
|
|
|
((* endblock *))
|
|
|
|