##// END OF EJS Templates
s/write_prompt/draw_prompt
s/write_prompt/draw_prompt

File last commit:

r12686:78e0c65e
r12687:10f331d2
Show More
notebook_style.tplx
126 lines | 3.5 KiB | text/plain | TextLexer
((= Notebook input/output style =))
((* extends 'latex_base.tplx' *))
% Custom packages
((* block packages *))
((( super() )))
% Needed to box output/input
\usepackage{tikz}
\usetikzlibrary{calc,arrows,shadows}
\usepackage[framemethod=tikz]{((( resources.latex.mdframed_path | posix_path )))/mdframed}
\usepackage{scrextend} % Used to indent output
\usepackage{needspace} % Make prompts follow contents
((* endblock packages *))
% Custom definitions
((* block definitions *))
((( super() )))
\listfiles
\def\smaller{\fontsize{9.5pt}{9.5pt}\selectfont}
\definecolor{nbframe-border}{rgb}{0.867,0.867,0.867}
\definecolor{nbframe-bg}{rgb}{0.969,0.969,0.969}
\definecolor{nbframe-in-prompt}{rgb}{0.0,0.0,0.502}
\definecolor{nbframe-out-prompt}{rgb}{0.545,0.0,0.0}
\newenvironment{ColorVerbatim}
{\vspace{-2\baselineskip}
\leavevmode\begin{mdframed}[%
roundcorner=1.0pt, %
backgroundcolor=nbframe-bg, %
leftmargin=0.1\linewidth, %
innerleftmargin=0pt, %
innerrightmargin=0pt, %
linecolor=nbframe-border, %
linewidth=1pt, %
usetwoside=false, %
everyline=false, %
innerlinewidth=3pt, %
innerlinecolor=nbframe-bg, %
middlelinewidth=1pt, %
middlelinecolor=nbframe-bg, %
outerlinewidth=0.5pt, %
outerlinecolor=nbframe-border, %
needspace=3em, %
nobreak=false
]}
{\end{mdframed}\vspace{-1\baselineskip}}
((* endblock definitions *))
%===============================================================================
% Input
%===============================================================================
((* block in_prompt scoped *))
\br
((( draw_prompt("In", cell.prompt_number, "nbframe-in-prompt") )))
((* endblock in_prompt *))
((* block input scoped *))
% Add contents below.
\begin{ColorVerbatim}
\smaller{((( super() )))}
\end{ColorVerbatim}
% \begin{addmargin}[0.1\linewidth]{0em} % left, right
% \smaller{}
% \end{addmargin}
((* endblock input *))
((* block input_group scoped *))
((( super() )))
((* endblock input_group *))
%===============================================================================
% Output
%===============================================================================
((* block output_group *))
{\br}((( super() )))
((* endblock output_group *))
((* block output *))
% Only render the prompt if the cell is pyout. Note, the outputs prompt
% block isn't used since we need to check each indiviual output and only
% add prompts to the pyout ones.
((* if output.output_type in ['pyout'] *))
((( draw_prompt("Out", cell.prompt_number, "nbframe-out-prompt") )))
((* endif *))
\begin{addmargin}[0.1\linewidth]{0em} % left, right
\smaller{((( super() )))}
\end{addmargin}
((* endblock output *))
%==============================================================================
% Support Macros
%==============================================================================
% Name: draw_prompt
% Purpose: Renders an output/input prompt for notebook style pdfs. Prompt is
% rendered at the current location, the cursor position is left
% unmodified.
((* macro draw_prompt(prompt, number, color) *))
{
\smaller
\tt
\color{((( color )))}
\noindent\relax
((( prompt )))
{[}((( number ))){]}:
\vspace{-1\baselineskip}
}
((* endmacro *))