preamble.tex
113 lines
| 3.8 KiB
| application/x-tex
|
TexLexer
/ nbconvert1 / preamble.tex
Fernando Perez
|
r6673 | %% This is the automatic preamble used by IPython. Note that it does *not* | ||
Kyle Kelley
|
r10063 | %% include a documentclass declaration. The documentclass is added at runtime | ||
%% to the overall document. | ||||
Fernando Perez
|
r6673 | |||
\usepackage{amsmath} | ||||
\usepackage{amssymb} | ||||
\usepackage{graphicx} | ||||
Matthias BUSSONNIER
|
r7046 | \usepackage{ucs} | ||
\usepackage[utf8x]{inputenc} | ||||
Fernando Perez
|
r6673 | |||
Fernando Perez
|
r6675 | % needed for markdown enumerations to work | ||
\usepackage{enumerate} | ||||
Fernando Perez
|
r6673 | % 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} | ||||
Stefan van der Walt
|
r6679 | \definecolor{gray}{gray}{0.45} | ||
\definecolor{lightgray}{gray}{.95} | ||||
\definecolor{mediumgray}{gray}{.8} | ||||
Fernando Perez
|
r6673 | \definecolor{inputbackground}{rgb}{.95, .95, .85} | ||
\definecolor{outputbackground}{rgb}{.95, .95, .95} | ||||
\definecolor{traceback}{rgb}{1, .95, .95} | ||||
% 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. | ||||
Fernando Perez
|
r7264 | |||
% 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 | ||||
Kyle Kelley
|
r10063 | % long to fit on a page, it will completely stop latex from compiling the | ||
Fernando Perez
|
r7264 | % 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}{} | ||||
Fernando Perez
|
r6673 | |||
\newenvironment{codeinput}{% | ||||
\def\FrameCommand{\colorbox{inputbackground}}% | ||||
\MakeFramed{\advance\hsize-\width \FrameRestore}} | ||||
{\unskip\endMakeFramed} | ||||
\newenvironment{codeoutput}{% | ||||
\def\FrameCommand{\colorbox{outputbackground}}% | ||||
Stefan van der Walt
|
r6679 | \vspace{-1.4em} | ||
Fernando Perez
|
r6673 | \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 | ||||
Matthias BUSSONNIER
|
r7046 | \usepackage{listingsutf8} | ||
Fernando Perez
|
r6673 | \lstset{ | ||
language=python, | ||||
Matthias BUSSONNIER
|
r7046 | inputencoding=utf8x, | ||
extendedchars=\true, | ||||
Fernando Perez
|
r6673 | aboveskip=\smallskipamount, | ||
belowskip=\smallskipamount, | ||||
Fernando Perez
|
r7265 | xleftmargin=2mm, | ||
Fernando Perez
|
r6673 | breaklines=true, | ||
basicstyle=\small \ttfamily, | ||||
showstringspaces=false, | ||||
keywordstyle=\color{blue}\bfseries, | ||||
commentstyle=\color{myteal}, | ||||
stringstyle=\color{darkgreen}, | ||||
identifierstyle=\color{darkorange}, | ||||
Fernando Perez
|
r7265 | columns=fullflexible, % tighter character kerning, like verb | ||
Fernando Perez
|
r6673 | } | ||
Fernando Perez
|
r6675 | % 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, | ||||
} | ||||
Fernando Perez
|
r6673 | % hardcode size of all verbatim environments to be a bit smaller | ||
Kyle Kelley
|
r10063 | \makeatletter | ||
Stefan van der Walt
|
r6679 | \g@addto@macro\@verbatim\small\topsep=0.5em\partopsep=0pt | ||
Kyle Kelley
|
r10063 | \makeatother | ||
Fernando Perez
|
r6673 | |||
% Prevent overflowing lines due to urls and other hard-to-break entities. | ||||
\sloppy | ||||