%% %% This is file `sagetex.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% sagetexpackage.dtx (with options: `latex') %% py-and-sty.dtx (with options: `latex') %% %% This is a generated file. It is part of the SageTeX package. %% %% Copyright (C) 2009 by Dan Drake %% %% This program is free software: you can redistribute it and/or modify it %% under the terms of the GNU General Public License as published by the %% Free Software Foundation, either version 2 of the License, or (at your %% option) any later version. %% %% This program is distributed in the hope that it will be useful, but %% WITHOUT ANY WARRANTY; without even the implied warranty of %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General %% Public License for more details. %% %% You should have received a copy of the GNU General Public License along %% with this program. If not, see . %% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{sagetex} [2009/06/17 v2.2.1 embedding Sage into LaTeX documents] \RequirePackage{verbatim} \RequirePackage{graphicx} \RequirePackage{makecmds} \RequirePackage{ifpdf} \RequirePackage{ifthen} \newcounter{ST@inline} \newcounter{ST@plot} \setcounter{ST@inline}{0} \setcounter{ST@plot}{0} \newlength{\sagetexindent} \setlength{\sagetexindent}{5ex} \newif\ifST@paused \ST@pausedfalse \AtBeginDocument{\@ifundefined{ST@final}{% \newwrite\ST@sf% \immediate\openout\ST@sf=\jobname.sage% \newcommand{\ST@wsf}[1]{\immediate\write\ST@sf{#1}}% \ST@wsf{# This file (\jobname.sage) was *autogenerated* from the file \jobname.tex.}% \ST@wsf{import sagetex}% \ST@wsf{_st_ = sagetex.SageTeXProcessor('\jobname')}}% {\newcommand{\ST@wsf}[1]{\relax}}} \DeclareOption{final}{% \newcommand{\ST@final}{x}% \IfFileExists{\jobname.sout}{}{\AtEndDocument{\PackageWarningNoLine{sagetex}% {`final' option provided, but \jobname.sout^^Jdoesn't exist! No Sage input will appear in your document. Remove the `final'^^Joption and rerun LaTeX on your document}}}} \DeclareOption{imagemagick}{% \newcommand{\ST@useimagemagick}{x}% \AtBeginDocument{% \@ifundefined{ST@final}{% \ST@wsf{_st_.useimagemagick = True}}{}}} \DeclareOption{epstopdf}{% \AtBeginDocument{% \@ifundefined{ST@final}{% \ST@wsf{_st_.useepstopdf = True}}{}}} \ProcessOptions\relax \InputIfFileExists{\jobname.sout}{}{\typeout{No file \jobname.sout.}} \AtBeginDocument{\provideenvironment{NoHyper}{}{}} \newcommand{\sage}[1]{\ST@wsf{% try:^^J _st_.inline(\theST@inline, #1)^^Jexcept:^^J _st_.goboom(\the\inputlineno)}% \ifST@paused \mbox{(Sage\TeX{} is paused)}% \else \begin{NoHyper}\ref{@sageinline\theST@inline}\end{NoHyper} \@ifundefined{r@@sageinline\theST@inline}{\gdef\ST@rerun{x}}{} \fi \stepcounter{ST@inline}} \catcode`\%=12 \newcommand{\percent}{%} \catcode`\%=14 \newcommand{\ST@plotdir}{sage-plots-for-\jobname.tex} \newcommand{\ST@missingfilebox}{\framebox[2cm]{\rule[-1cm]{0cm}{2cm}\textbf{??}}} \newcommand{\sageplot}[1][width=.75\textwidth]{% \@ifnextchar[{\ST@sageplot[#1]}{\ST@sageplot[#1][notprovided]}} \def\ST@sageplot[#1][#2]#3{\ST@wsf{try:^^J _st_.plot(\theST@plot, format='#2', _p_=#3)^^Jexcept:^^J _st_.goboom(\the\inputlineno)}% \ifpdf \ifthenelse{\equal{#2}{notprovided}}% {\ST@inclgrfx{#1}{pdf}}% {\ST@inclgrfx{#1}{#2}}% \else \ifthenelse{\equal{#2}{notprovided}}% {\ST@inclgrfx{#1}{eps}}% {\@ifundefined{ST@useimagemagick}% {\IfFileExists{\ST@plotdir/plot-\theST@plot.#2}% {\ST@missingfilebox% \PackageWarning{sagetex}{Graphics file \ST@plotdir/plot-\theST@plot.#2\space on page \thepage\space cannot be used with DVI output. Use pdflatex or create an EPS file. Plot command is}}% {\ST@missingfilebox% \PackageWarning{sagetex}{Graphics file \ST@plotdir/plot-\theST@plot.#2\space on page \thepage\space does not exist. Plot command is}% \gdef\ST@rerun{x}}}% {\ST@inclgrfx{#1}{eps}}}% \fi \stepcounter{ST@plot}} \newcommand{\ST@inclgrfx}[2]{\ifST@paused \fbox{\rule[-1cm]{0cm}{2cm}Sage\TeX{} is paused; no graphic} \else \IfFileExists{\ST@plotdir/plot-\theST@plot.#2}% {\includegraphics[#1]{\ST@plotdir/plot-\theST@plot.#2}}% {\ST@missingfilebox% \PackageWarning{sagetex}{Graphics file \ST@plotdir/plot-\theST@plot.#2\space on page \thepage\space does not exist. Plot command is}% \gdef\ST@rerun{x}} \fi} \newcommand{\ST@beginsfbl}{% \@bsphack\ST@wsf{% _st_.blockbegin()^^Jtry:}% \let\do\@makeother\dospecials\catcode`\^^M\active} \newcommand{\ST@endsfbl}{% \ST@wsf{except:^^J _st_.goboom(\the\inputlineno)^^J_st_.blockend()}} \newenvironment{sageblock}{\ST@beginsfbl% \def\verbatim@processline{\ST@wsf{ \the\verbatim@line}% \hspace{\sagetexindent}\the\verbatim@line\par}% \verbatim}% {\ST@endsfbl\endverbatim} \newenvironment{sagesilent}{\ST@beginsfbl% \def\verbatim@processline{\ST@wsf{ \the\verbatim@line}}% \verbatim@start}% {\ST@endsfbl\@esphack} \newenvironment{sageverbatim}{% \def\verbatim@processline{\hspace{\sagetexindent}\the\verbatim@line\par}% \verbatim}% {\endverbatim} \newcommand{\sagetexpause}{\ifST@paused\relax\else \ST@wsf{print 'SageTeX paused on \jobname.tex line \the\inputlineno'^^J"""} \ST@pausedtrue \fi} \newcommand{\sagetexunpause}{\ifST@paused \ST@wsf{"""^^Jprint 'SageTeX unpaused on \jobname.tex line \the\inputlineno'} \ST@pausedfalse \fi} \AtEndDocument{\ifST@paused \ST@wsf{"""^^Jprint 'SageTeX unpaused at end of \jobname.tex'} \fi \ST@wsf{_st_.endofdoc()}% \@ifundefined{ST@rerun}{}% {\PackageWarningNoLine{sagetex}{There were undefined Sage formulas and/or plots.^^JRun Sage on \jobname.sage, and then run LaTeX on \jobname.tex again}}} \endinput %% %% End of file `sagetex.sty'.