summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/standalone/standalone.cls
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-03-28 00:38:32 +0000
committerKarl Berry <karl@freefriends.org>2010-03-28 00:38:32 +0000
commit49b4790fd92979a66a8024fe83a0338c0c0b3949 (patch)
tree64b94b3a1c8b4c954e1798ca111ed69b958487a7 /Master/texmf-dist/tex/latex/standalone/standalone.cls
parentc71375a46696c8f462ab9901b685971bce3810a5 (diff)
standalone 0.3 (27mar10)
git-svn-id: svn://tug.org/texlive/trunk@17579 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/standalone/standalone.cls')
-rw-r--r--Master/texmf-dist/tex/latex/standalone/standalone.cls97
1 files changed, 53 insertions, 44 deletions
diff --git a/Master/texmf-dist/tex/latex/standalone/standalone.cls b/Master/texmf-dist/tex/latex/standalone/standalone.cls
index 99682b22ff8..c899c181ba2 100644
--- a/Master/texmf-dist/tex/latex/standalone/standalone.cls
+++ b/Master/texmf-dist/tex/latex/standalone/standalone.cls
@@ -25,60 +25,36 @@
%% This work consists of the files standalone.dtx, standalone.ins
%% and the derived file standalone.sty.
%%
-% $Id: standalone.dtx 1714 2010-03-22 14:44:37Z martin $
+% $Id: standalone.dtx 1772 2010-03-27 13:50:59Z martin $
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{standalone} [2010/03/22 v0.2 Class to compile TeX sub-files standalone]
-\def\sa@classoptionslist{}
+\ProvidesClass{standalone} [2010/03/27 v0.3a Class to compile TeX sub-files standalone]
+\newif\ifstandalone
+\standalonetrue
+\newif\ifstandalonebeamer
+\standalonebeamerfalse
+\let\onlyifstandalone\@firstofone
\RequirePackage{kvoptions}
\SetupKeyvalOptions{prefix=sa@}
\DeclareBoolOption[true]{preview}
-\let\standalone\empty
-\let\endstandalone\relax
-\def\sa@cls@document{\standalone}
-\def\sa@cls@enddocument{\endstandalone}
-\newif\ifstandalonebeamer
\DeclareVoidOption{beamer}{%
\def\sa@class{beamer}%
\sa@previewfalse
\standalonebeamertrue
- \newenvironment{standaloneframe}{%
- \@ifnextchar<%
- {\@standaloneframe}%
- {\@@standaloneframe{}}%
- }{\end{frame}}%
- \def\@standaloneframe<##1>{%
- \@@standaloneframe{<##1>}%
- }
- \def\@@standaloneframe##1{%
- \@ifnextchar[%]
- {\@@@standaloneframe{##1}}%
- {\@@@standaloneframe{##1}[]}%
- }%
- \def\@@@standaloneframe##1[{%
- \@ifnextchar<%
- {\@@@@standaloneframe{##1}[}%
- {\@@@@@@standaloneframe{##1}[}%
- }%
- \def\@@@@standaloneframe##1[##2]{%
- \@ifnextchar[%]
- {\@@@@@standaloneframe{##1}{##2}}%
- {\begin{frame}##1[##2][environment=standaloneframe]}%
- }%
- \def\@@@@@standaloneframe##1##2[##3]{%
- \begin{frame}##1[##2][environment=standaloneframe,##3]%
- }%
- \def\@@@@@@standaloneframe##1[##2]{%
- \begin{frame}##1[environment=standaloneframe,##2]%
- }%
}
\DeclareStringOption[article]{class}
+\def\sa@classoptionslist{}
\DeclareDefaultOption{%
\xdef\sa@classoptionslist{\sa@classoptionslist,\CurrentOption}%
}
\ProcessKeyvalOptions*\relax
\let\@classoptionslist\sa@classoptionslist
+\begingroup
\xdef\@tempa{[\sa@classoptionslist]{\sa@class}}
+\expandafter
+\endgroup
\expandafter\LoadClass\@tempa
+\let\standalone\empty
+\let\endstandalone\relax
\input{standalone.cfg}
\ifsa@preview
\@ifundefined{endstandalone}{%
@@ -88,17 +64,50 @@
}{}%
\RequirePackage{preview}
\fi
-\RequirePackage{standalone}[2010/03/21]
-\standalonetrue
+\ifstandalonebeamer
+\newenvironment{standaloneframe}{%
+ \@ifnextchar<%
+ {\@standaloneframe}%
+ {\@@standaloneframe{}}%
+}{\end{frame}}%
+\def\@standaloneframe<#1>{%
+ \@@standaloneframe{<#1>}%
+}
+\def\@@standaloneframe#1{%
+ \@ifnextchar[%]
+ {\@@@standaloneframe{#1}}%
+ {\@@@standaloneframe{#1}[]}%
+}%
+\def\@@@standaloneframe#1[{%
+ \@ifnextchar<%
+ {\@@@@standaloneframe{#1}[}%
+ {\@@@@@@standaloneframe{#1}[}%
+}%
+\def\@@@@standaloneframe#1[#2]{%
+ \@ifnextchar[%]
+ {\@@@@@standaloneframe{#1}{#2}}%
+ {\begin{frame}#1[#2][environment=standaloneframe]}%
+}%
+\def\@@@@@standaloneframe#1#2[#3]{%
+ \begin{frame}#1[#2][environment=standaloneframe,#3]%
+}%
+\def\@@@@@@standaloneframe#1[#2]{%
+ \begin{frame}#1[environment=standaloneframe,#2]%
+}%
+\fi
+\let\sa@cls@orig@document\document
+\let\sa@cls@orig@enddocument\enddocument
\def\document{%
- \sa@orig@document
- \let\documentclass\sa@documentclass
- \sa@cls@document
+ \sa@cls@orig@document
+ \let\documentclass\sa@documentclass % TODO: really required?
+ \sa@cls@afterbegindocument
}
\def\enddocument{%
- \sa@cls@enddocument
- \sa@orig@enddocument
+ \sa@cls@beforeenddocument
+ \sa@cls@orig@enddocument
}
+\def\sa@cls@afterbegindocument{\expandafter\standalone\ignorespaces}
+\def\sa@cls@beforeenddocument{\unskip\endstandalone}
\endinput
%%
%% End of file `standalone.cls'.