summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-06-06 17:17:31 +0000
committerKarl Berry <karl@freefriends.org>2011-06-06 17:17:31 +0000
commit68598d9c664b3d4c11acabdd625b410e3f3d696a (patch)
tree12bd8f31a5e1b133ee6631603c976f31080e9757 /Master/texmf-dist/doc
parent4573c0dd3deb08dfefdc8c97220bacce761173a5 (diff)
tkz-doc (5jun11)
git-svn-id: svn://tug.org/texlive/trunk@22829 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r--Master/texmf-dist/doc/latex/tkz-doc/README1
-rw-r--r--Master/texmf-dist/doc/latex/tkz-doc/tkzexample.sty603
2 files changed, 437 insertions, 167 deletions
diff --git a/Master/texmf-dist/doc/latex/tkz-doc/README b/Master/texmf-dist/doc/latex/tkz-doc/README
index 1242f7acc2e..bd050e5e00d 100644
--- a/Master/texmf-dist/doc/latex/tkz-doc/README
+++ b/Master/texmf-dist/doc/latex/tkz-doc/README
@@ -1 +1,2 @@
Class and package for the documentation of all tkz-* packages.
+ %%% H I G H L Y E X P E R I M E N T A L %%%
diff --git a/Master/texmf-dist/doc/latex/tkz-doc/tkzexample.sty b/Master/texmf-dist/doc/latex/tkz-doc/tkzexample.sty
index 8dde2148bde..54a9cc5f1d5 100644
--- a/Master/texmf-dist/doc/latex/tkz-doc/tkzexample.sty
+++ b/Master/texmf-dist/doc/latex/tkz-doc/tkzexample.sty
@@ -1,4 +1,7 @@
% Copyright 2009 by Alain Matthes
+%
+% H I G H L Y E X P E R I M E N T A L
+%
% This file may be distributed and/or modified
%
% 1. under the LaTeX Project Public License and/or
@@ -10,41 +13,22 @@
% (Copyright 2006 by Till Tantau)
% See the file doc/generic/pgf/licenses/LICENSE for more details.
%
-% Diff between tkexample and codeexample
-% I removed :
-% graphicbackground
-% I replaced \xdef\code@temp{#1}% by \protected@xdef\code@temp{#1}}%
-% now the use of accented letters with utf8 is possible.
-% I changed \def\code@mid{\hskip6pt}
-% \def\code@width{\linewidth-12pt\tkzexamplewidth}%
-% into
-% \def\code@mid{\hskip6pt\hskip2em}%
-% \def\code@width{\linewidth-12pt-2em-\tkzexamplewidth}
-% this is to add room for the numbers
-% I insert the next code to add numders in front of each line of code
-% \ifnum@show%
-% \noindent%
-% \llap{\colorbox{green!25!black}{%
-% \textcolor{white}{%
-% \number\value{code@cnt}}}\enspace}%
-% \stepcounter{code@cnt}%
-% \fi
-% I changed some keys :
-% I added
-% show num/.is if=num@show,
-% num/.code= {\num@showtrue\setcounter{code@cnt}{1}},
-% global num/.code= {\num@showtrue},
-% and latex/.code etc ...
-% I removed graphic/.code= {\colorlet{graphicbackground}{#1}},
-% I removed \raggedright
-%<----------------------------------------------------------------------------->
+%<--------------------------------------------------------------------------->
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tkzexample}[2009/02/14 v1 beta code and graphic ]
-\definecolor{graphicbackground}{rgb}{0.96,0.96,0.8}%
-\definecolor{codebackground}{rgb}{0.8,0.8,1}%
-%\colorlet{codebackground}{Peach!20}%
-\colorlet{numbackground}{Peach!60!black}%
-\definecolor{numcolor}{rgb}{1,1,1}%
+\ProvidesPackage{tkzexample}[2011/06/04 v1.1 c (code and graphic ) ]
+\RequirePackage{fixltx2e,calc,mdframed,fancyvrb}
+\newif\iftkzcodesaved
+\DeclareOption{saved}{\tkzcodesavedtrue}
+\ProcessOptions\relax
+%<--------------------------------------------------------------------------->
+\colorlet{graphicbackground}{white}
+\colorlet{codebackground}{white}
+\colorlet{codeonlybackground}{white}
+\colorlet{numbackground}{white}
+\colorlet{textcodecolor}{black}
+\colorlet{numcolor}{gray}
+%<--------------------------------------------------------------------------->
+\def\code@style{\small\ttfamily}
\makeatletter
\newcounter{code@cnt}%
@@ -53,16 +37,25 @@
(elatex) or (pdfelatex) to use this package}{}
\fi
-% Define \find@example such that it doesn't destroy catcodes:
+% Define \find@tkzexample such that it doesn't destroy catcodes:
\begingroup
\catcode`|=0
\catcode`[= 1
\catcode`]=2
\catcode`\{=12
\catcode `\}=12
-\catcode`\\=12 |gdef|find@example#1\end{tkzexample}[|endoftkzexample[#1]]
+\catcode`\\=12 |gdef|find@tkzexample#1\end{tkzexample}[|endoftkzexample[#1]]
|endgroup
+\begingroup
+\catcode`|=0
+\catcode`[= 1
+\catcode`]=2
+\catcode`\{=12
+\catcode `\}=12
+\catcode`\\=12 |gdef|find@tkzltxexample#1\end{tkzltxexample}[|endoftkzltxexample[#1]]
+|endgroup
+
% define \returntospace.
%
% It should define NEWLINE as {}, spaces and tabs as \space.
@@ -82,147 +75,423 @@
\gdef\@gobble@till@return@ignore#1^^M{\ignorespaces}
\gdef\typesetcomment{\catcode`\%=13\def%{\@typeset@till@return}}
\gdef\@typeset@till@return#1^^M{{\def%{\char`\%}\textsl{\char`\%#1}}\par}
+\gdef\typesetcommentnum{\catcode`\%=13\def%{\@typeset@till@return@num}}
+\gdef\@typeset@till@return@num#1^^M{{\def%{\char`\%}\textsl{\char`\%#1}} \@@par}
\endgroup
-
+\let\tkz@frameset\colorbox
+\let\tkz@frameltxset\colorbox
+\newwrite\fileexample
+\newdimen\tkzexamplewidth
+\newdimen\tkz@hsep
+\tkz@hsep=0pt
+\newif\ifcode@execute
+\newif\ifcode@saved\code@savedfalse
+\newif\ifnum@show \num@showfalse
+\newif\ifcode@overhang
+\newbox\tkzexamplebox
+\newif\ifcode@vbox \code@vboxfalse
\pgfqkeys{/tkzexample}{%
- width/.code= {\setlength\tkzexamplewidth{#1}},
- graphic/.code= {\colorlet{graphicbackground}{#1}},
- code/.code= {\colorlet{codebackground}{#1}},
- execute code/.is if=code@execute,
- code only/.code= {\code@executefalse},
- show num/.is if=num@show,
- num/.code= {\num@showtrue\setcounter{code@cnt}{1}},
- global num/.code= {\num@showtrue},
- normal/.code= {\def\code@size{}},
- small/.code= {\def\code@size{\small}},
- very small/.code= {\def\code@size{\footnotesize}},
- pre/.code= {\def\code@pre{#1}},
- post/.code= {\def\code@post{#1}},
- latex/.code= {\setlength\tkzexamplewidth{#1}%
- \def\code@pre{\begin{minipage}{#1}}%
- \def\code@post{\end{minipage}}},
- vbox/.code= {\def\code@pre{\vbox\bgroup\setlength{\hsize}{\linewidth-6pt}}\def\code@post{\egroup}},
- ignorespaces/.code= {\let\@gobble@till@return=\@gobble@till@return@ignore},
- leave comments/.code= {\def\code@catcode@hook{\catcode`\%=12}\let\commenthandler=\relax\let\typesetcomment=\relax},
- every tkzexample/.style={width=8cm+7pt},
-}
-\def\code@size{}
-\def\code@pre{}
-\def\code@post{}
-\def\code@catcode@hook{}
+ execute code/.is if = code@execute,
+ show num/.is if = num@show,
+ overhang/.is if = code@overhang,
+ code only/.code = {\code@executefalse},
+ width/.code = {\setlength\tkzexamplewidth{#1}},
+ code/.code = {\colorlet{codebackground}{#1}},
+ graphic/.code = {\colorlet{graphicbackground}{#1}},
+ overhang/.code = {\code@overhangtrue},
+ num/.code = {\num@showtrue\setcounter{code@cnt}{1}},
+ numcolor/.code = {\colorlet{numcolor}{#1}},
+ numbkgcolor/.code = {\colorlet{numbackground}{#1}},
+ global num/.code = {\num@showtrue},
+ code style/.code = {\def\code@style{#1}},
+ normal/.code = {\def\code@size{\normalsize}},
+ small/.code = {\def\code@size{\small}},
+ very small/.code = {\def\code@size{\footnotesize}},
+ right margin/.code = {\def\tkz@rightmargin{#1}},
+ left margin/.code = {\def\tkz@leftmargin{#1}},
+ inner left margin/.code = {\def\tkz@innerleftmargin{#1}},
+ inner right margin/.code = {\def\tkz@innerrightmargin{#1}},
+ inner top margin/.code = {\def\tkz@innertopmargin{#1}},
+ inner bottom margin/.code = {\def\tkz@innerbottommargin{#1}},
+ line frame width/.code = {\def\tkz@linewidth{#1}},
+ frame code/.code = {\def\tkz@frameset{\fcolorbox{#1}}},
+ frame tex/.code = {\def\tkz@frameltxset{\fcolorbox{#1}}},
+ above skip/.code = {\def\tkz@above{#1}},
+ below skip/.code = {\def\tkz@below{#1}},
+ hsep/.code = {\setlength\tkz@hsep{#1}},
+ pre/.code = {\def\code@pre{#1}},
+ post/.code = {\def\code@post{#1}},
+ latex/.code = {\setlength\tkzexamplewidth{#1}%
+ \def\code@preadd{\begin{minipage}{#1}}%
+ \def\code@postadd{\end{minipage}}},
+ vbox/.code = {\code@vboxtrue
+ \def\code@preadd{\noindent
+ \vbox\bgroup
+ \setlength{\hsize}{\linewidth-6pt}%
+ }%
+ \def\code@postadd{\egroup}},
+ every tkzexample/.style={width=6cm},
+}%
+\def\code@size{}%
+\def\code@pre{}%
+\def\code@post{}%
+\def\code@preadd{}%
+\def\code@postadd{}%
+\def\tkz@above{\par}%
+\def\tkz@below{\par}%
-\newdimen\tkzexamplewidth
-\newif\ifcode@execute
-\newif\ifnum@show
-\newbox\tkzexamplebox
+% execution du code
+\def\tkz@result{%
+ \begin{minipage}[t]{\wd\tkzexamplebox}%
+ \hrule width0pt
+ \code@size
+ \box\tkzexamplebox
+ \leavevmode
+ \end{minipage}%
+}%
+
+\newcommand\tkz@code[1]{%
+\begin{minipage}[t]{\code@width}{%
+\color{textcodecolor}%
+\parskip=\z@
+\hrule width\z@
+\vskip-.25em
+\let\do\@makeother
+\dospecials
+\frenchspacing
+\code@style\code@size
+\obeylines
+\@vobeyspaces
+\@tempswafalse
+\ifnum@show
+ \typesetcommentnum
+ \def\par{%
+ \if@tempswa
+ \leavevmode\null\@@par\penalty\interlinepenalty
+ \everypar{\setlength\fboxsep{1pt}%
+ \noindent\parskip=0pt%
+ \llap{\colorbox{numbackground}{\textcolor{numcolor}{%
+ \footnotesize\number\value{code@cnt}}}\enspace}%
+ \stepcounter{code@cnt}}%
+ \else
+ \@tempswatrue
+ \ifhmode\@@par\penalty\interlinepenalty\fi%
+ \fi
+ }%
+ \everypar{\setlength\fboxsep{1pt}%
+ \noindent\parskip=0pt%
+ \llap{\colorbox{numbackground}{\textcolor{numcolor}{%
+ \footnotesize\number\value{code@cnt}}}\enspace}%
+ \stepcounter{code@cnt}%
+ }%
+\else
+ \typesetcomment
+ \def\par{%
+ \if@tempswa
+ \leavevmode\null\@@par\penalty\interlinepenalty%
+ \else
+ \@tempswatrue
+ \ifhmode\@@par\penalty\interlinepenalty\fi%
+ \fi
+ }%
+\fi
+\obeylines
+\ifcode@saved\input{#1}\else#1\fi%
+}% end of content for the minipage
+\end{minipage}%
+}%
+
+\newcommand\tkz@codesplit[1]{%
+\begin{mdframed}[linewidth = \tkz@linewidth,
+ leftmargin = \tkz@leftmargin,
+ rightmargin = \tkz@rightmargin,
+ backgroundcolor = codeonlybackground,
+ innerleftmargin = \tkz@innerleftmargin,
+ innertopmargin = \tkz@innertopmargin]
+\begingroup
+\color{textcodecolor}%
+\parskip=\z@
+\hrule width0pt
+\let\do\@makeother
+\dospecials
+\frenchspacing
+\code@style\code@size
+\obeylines
+\@vobeyspaces
+\@tempswafalse
+\ifnum@show
+\typesetcommentnum
+\def\par{%
+ \if@tempswa
+ \leavevmode\null\@@par\penalty\interlinepenalty
+ \everypar{\setlength\fboxsep{1pt}%
+ \noindent\parskip=0pt%
+ \llap{\colorbox{numbackground}{\textcolor{numcolor}{%
+ \footnotesize\number\value{code@cnt}}}\enspace}%
+ \stepcounter{code@cnt}}%
+ \else
+ \@tempswatrue
+ \ifhmode\@@par\penalty\interlinepenalty\fi
+ \fi
+}%
+\everypar{\setlength\fboxsep{1pt}%
+ \noindent\parskip=0pt%
+ \llap{\colorbox{numbackground}{\textcolor{numcolor}{%
+ \footnotesize\number\value{code@cnt}}}\enspace}%
+ \stepcounter{code@cnt}%
+ }%
+\else
+\typesetcomment%
+\def\par{%
+ \if@tempswa
+ \leavevmode\null\@@par\penalty\interlinepenalty%
+ \else
+ \@tempswatrue
+ \ifhmode\@@par\penalty\interlinepenalty\fi%
+ \fi
+}%
+\fi
+\obeylines
+\ifcode@saved\input{#1}\else #1\fi
+\endgroup
+\end{mdframed}%
+}%
+
+
+\def\tkzref{\arabic{section}-\arabic{subsection}-\arabic{subsubsection}}%
+\def\tkzFileSavedPrefix{tkzFile}%
+\def\tkz@File@Saved@Name{\tkzFileSavedPrefix-\tkzref}%
+
+\iftkzcodesaved
\def\tkzexample[#1]{%
- %\setcounter{code@cnt}{1}%
- \begingroup%
- \code@executetrue
- \pgfqkeys{/tkzexample}{every tkzexample,#1}%
- \parindent0pt
- \begingroup%
- \par%
- \medskip%
- \let\do\@makeother%
- \dospecials%
- \obeylines%
- \@vobeyspaces%
- \catcode`\%=13%
- \catcode`\^^M=13%
- \code@catcode@hook%
- \relax%
- \find@example}
+\code@executetrue
+\normalsize
+\pgfkeys{/tkzexample/.cd,
+ right margin = 0pt,
+ left margin = 0pt,
+ line frame width = 0,
+ inner left margin = 0 pt,
+ inner right margin = 0 pt,
+ inner top margin = 6 pt,
+ inner bottom margin = 0 pt}
+\pgfqkeys{/tkzexample}{every tkzexample,#1}%
+\parindent0pt
+\bgroup
+\VerbatimEnvironment
+\killienc\begin{VerbatimOut}{\tkz@File@Saved@Name.tex}}%
+\def\endtkzexample{\end{VerbatimOut}%
+\egroup
+\ifcode@execute
+\setbox\tkzexamplebox=\hbox{\input{\tkz@File@Saved@Name.tex}}%
+\ifdim\wd\tkzexamplebox>\tkzexamplewidth%
+ \gdef\code@mid{\parskip2pt\par}%
+% \hrule
+ %\def\code@mid{\hfill}%
+ \gdef\code@width{\linewidth}%
+\else
+ \ifdim\tkz@hsep=0pt
+ \gdef\code@mid{\hfill}%
+ \else
+ \gdef\code@mid{\hskip\tkz@hsep}%
+ \fi
+ \gdef\code@width{\linewidth-1.5em-\tkz@hsep-\tkzexamplewidth}%
+ \fi
+ \par\noindent
+ \code@savedtrue
+ \ifcode@overhang
+ \tkz@frameset{codebackground}{\tkz@code{\tkz@File@Saved@Name.tex}}%
+ \else
+ \tkz@frameltxset{graphicbackground}{\tkz@result}%
+ \fi
+ \else% pas de code pas clair
+ \gdef\code@mid{\hfill}%
+ \gdef\code@width{\linewidth}%
+ \gdef\code@end{}%
+ \fi% fin pas de code
+ \code@mid
+ \ifcode@overhang\tkz@frameltxset{graphicbackground}{\tkz@result}%
+ \else
+ \tkz@frameset{codebackground}{\tkz@code{\tkz@File@Saved@Name.tex}}%
+ \fi
+\tkz@below
+}%
+\else% end of code saved code et result ?
+\def\tkzexample[#1]{%
+\begingroup
+\code@executetrue
+\pgfkeys{/tkzexample/.cd,
+ right margin = 0pt,
+ left margin = 0pt,
+ line frame width = 0,
+ inner left margin = 0 pt,
+ inner right margin = 0 pt,
+ inner top margin = 6 pt,
+ inner bottom margin = 0 pt,}
+\pgfqkeys{/tkzexample}{every tkzexample,#1}%
+\parindent0pt
+\begingroup
+%\tkz@above
+\let\do\@makeother
+\dospecials
+\obeylines
+\@vobeyspaces
+\catcode`\%=13 %
+\catcode`\^^M=13 %
+\find@tkzexample}% #1 est tout ce qui se trouve dans l'environnement
\def\endoftkzexample#1{%
- \endgroup%
- \ifcode@execute%
- \setbox\tkzexamplebox=\hbox{%
- {%
- {%
- \returntospace%
- \commenthandler%
- \protected@xdef\code@temp{#1}%added by AM
- }%
- \colorbox{graphicbackground}{\color{black}\ignorespaces%
- \code@pre\expandafter\scantokens\expandafter{\code@temp\ignorespaces}\code@post\ignorespaces}%
- }%
- }%
- \ifdim\wd\tkzexamplebox>\tkzexamplewidth%
- \def\code@start{\par}%
- \def\code@flushstart{}%
- \def\code@flushend{}%
- \def\code@mid{\parskip2pt\par\noindent}%
+\endgroup
+\ifcode@execute % et \fcode@save ??
+ \setbox\tkzexamplebox=\hbox{%
+ {\commenthandler
+ \protected@xdef\code@temp{#1}}%
+ \catcode`\^^M=9 %
+ {\ignorespaces\code@preadd\code@pre
+ \expandafter\scantokens\expandafter{\code@temp\ignorespaces}%
+ \code@post\code@postadd\ignorespaces}%
+ }%
+ \ifdim\wd\tkzexamplebox>\tkzexamplewidth
+ \def\code@mid{\par}%
+ \def\code@width{\linewidth-6pt}%
+ \else
+ \ifdim\tkz@hsep=0pt
+ \def\code@mid{\hfill}%
+ \else
+ \def\code@mid{\hskip\tkz@hsep}%
+ \fi%
+ \def\code@width{\linewidth-1.5em-\tkz@hsep-\tkzexamplewidth}%
+ \fi%
+ \par\noindent
+ \ifcode@overhang
+ \tkz@frameset{codebackground}{\tkz@code{#1}}%
+ \else
+ \tkz@frameltxset{graphicbackground}{\tkz@result}%
+ \fi
+\else% pas de code execute
+ \def\code@mid{}%
\def\code@width{\linewidth-6pt}%
\def\code@end{}%
+ \fi% fin pas de code
+ \code@mid%
+ \ifcode@overhang%
+ \ifcode@execute\tkz@frameltxset{graphicbackground}{\tkz@result}\fi
\else%
- \def\code@start{%
- \linewidth=\textwidth%
- \parshape \@ne 0pt \linewidth
- \leavevmode%
- \hbox\bgroup}%
- \def\code@flushstart{\hfill}%
- \def\code@flushend{\hbox{}}%
- \def\code@mid{\hskip6pt\hskip2em}%added \hskip2em by AM
- \def\code@width{\linewidth-12pt-2em-\tkzexamplewidth}%modified by AM -2em
- \def\code@end{\egroup}%
- \fi%
- \code@start%
- \noindent%
- \begin{minipage}[t]{\tkzexamplewidth}\raggedright
- \hrule width0pt%
- \code@size\vskip-1em%
- \code@flushstart\box\tkzexamplebox\code@flushend%
- \vskip-1ex%
- \leavevmode%
- \end{minipage}%
- \else%
- \def\code@mid{\par}
- \def\code@width{\linewidth-6pt}
- \def\code@end{}
- \fi%
- \code@mid%
- \colorbox{codebackground}{%
- \begin{minipage}[t]{\code@width}%
- {%
- \let\do\@makeother
- \dospecials
- \frenchspacing\@vobeyspaces
- \normalfont\ttfamily\code@size%
- \typesetcomment%
- \@tempswafalse
- \def\par{%
- \if@tempswa
- \leavevmode\null\@@par\penalty\interlinepenalty%
- \ifnum@show%
- \noindent\parskip=0pt%
- \llap{\colorbox{numbackground}{%%added by AM
- \textcolor{numcolor}{%%added by AM
- \number\value{code@cnt}}}\enspace}%%added by AM
- \stepcounter{code@cnt}%%added by AM
- \fi
- \else
- \@tempswatrue%
- \ifhmode\@@par\penalty\interlinepenalty\fi%
- \ifnum@show%
- \noindent\parskip=0pt%
- \llap{\colorbox{numbackground}{%%added by AM
- \textcolor{numcolor}{%%added by AM
- \number\value{code@cnt}}}\enspace}%%added by AM
- \stepcounter{code@cnt}%%added by AM
- \fi
- \fi}%
- \obeylines
- \everypar \expandafter{\the\everypar \unpenalty}%
- #1}%
- \end{minipage}}%
- \code@end%
- \par%
- \medskip
- \end{tkzexample}
+\ifcode@execute\tkz@frameset{codebackground}{\tkz@code{#1}}\else
+ \par\vskip1em
+ \tkz@codesplit{#1}
+ %\tkz@frameset{codebackground}{\tkz@code{#1}}%
+\fi
+ \fi
+ \tkz@below
+ \end{tkzexample}%
+}%
+\def\endtkzexample{\endgroup}%
+\fi
+%<--------------------------------------------------------------------------->
+\pgfqkeys{/tkzltxexample}{%
+ width/.code = {\setlength\tkzltxexamplewidth{#1}},
+ code/.code = {\colorlet{codeonlybackground}{#1}},
+ show num/.is if = num@show,
+ num/.code = {\num@showtrue\setcounter{code@cnt}{1}},
+ global num/.code = {\num@showtrue},
+ numcolor/.code = {\colorlet{numcolor}{#1}},
+ numbkgcolor/.code = {\colorlet{numbackground}{#1}},
+ normal/.code = {\def\code@size{\normalsize}},
+ small/.code = {\def\code@size{\small}},
+ very small/.code = {\def\code@size{\footnotesize}},
+ right margin/.code = {\def\tkz@rightmargin{#1}},
+ left margin/.code = {\def\tkz@leftmargin{#1}},
+ inner left margin/.code = {\def\tkz@innerleftmargin{#1}},
+ inner right margin/.code = {\def\tkz@innerrightmargin{#1}},
+ inner top margin/.code = {\def\tkz@innertopmargin{#1}},
+ inner bottom margin/.code = {\def\tkz@innerbottommargin{#1}},
+ line frame width/.code = {\def\tkz@linewidth{#1}},
+ hsep/.code = {\def\tkz@hsep{#1}},
+ typeset listing/.code = {#1},
+ frame code/.code = {\def\tkz@frameset{\fcolorbox{#1}}},
+ ignorespaces/.code = {\let\@gobble@till@return =%
+ \@gobble@till@return@ignore},
+ leave comments/.code = {\def\code@catcode@hook{\catcode`\%=12}%
+ \let\commenthandler=\relax%
+ \let\typesetcomment=\relax},
+ every tkzltxexample/.style = {width=8cm},
+ vbox/.code = {\def\code@preadd{\noindent
+ \vbox\bgroup\setlength{\hsize}{\linewidth}}%
+ \def\code@postadd{\egroup}}%
}
+\def\code@size{}%
+% \def\code@pre{}
+\def\code@post{}%
+\def\code@pre{}%
+\def\code@post{}%
+\def\code@catcode@hook{}%
+
+\newdimen\tkzltxexamplewidth
+\newbox\tkzltxexamplebox
+
+\def\tkzltxexample[#1]{%
+\begingroup
+\pgfkeys{/tkzltxexample/.cd,
+ right margin = 0pt,
+ left margin = 0pt,
+ line frame width = 0,
+ inner left margin = 0 pt,
+ inner right margin = 0 pt,
+ inner top margin = 6 pt,
+ inner bottom margin = 0 pt,}
+\pgfqkeys{/tkzltxexample}{every tkzltxexample,#1}%
+\parindent0pt
+\begingroup%
+\let\do\@makeother
+\dospecials
+\obeylines
+\@vobeyspaces
+\catcode`\%=13 %
+\catcode`\^^M=13 %
+\code@catcode@hook%
+\relax%
+\find@tkzltxexample}
+\def\endoftkzltxexample#1{%
+\endgroup%
+\def\code@end{}%
+\par\vskip1em
+\tkz@codesplit{#1}%
+\par
+\code@post
+\end{tkzltxexample}%
+}%
+
+\def\endtkzltxexample{\endgroup}
+
+
+
+\newcommand\killienc{}
+\@tempcnta128
+\@whilenum\@tempcnta<\@cclvi\do{%
+ \edef\killienc{\killienc\catcode\the\@tempcnta=12}%
+ \advance\@tempcnta\@ne}
+
+\def\tkz@ref{\arabic{section}-\arabic{subsection}-\arabic{subsubsection}}
+\def\tkz@File@Saved@Name{\tkzFileSavedPrefix-\tkz@ref}
+\pgfkeys{
+/tkzsavedcode/.cd,
+ prefix/.code = {\def\tkzFileSavedPrefix{#1}}}
-\def\endtkzexample{\endgroup}
+\newcommand{\tkzSavedCode}[1][]{%
+\pgfkeys{%
+tkzsavedcode/.cd,
+ prefix = tkzFile}
+\pgfqkeys{/tkzsavedcode}{#1}
+\renewenvironment{tkzexample}[1][]{%
+\killienc\VerbatimOut{\tkz@File@Saved@Name.tex}}{%
+\endVerbatimOut}}
+
+% \renewenvironment{tkzexample}[1][]{%
+% \killienc \VerbatimOut{tkzeuc-\tkzref.tex}%
+% }{%
+% \endVerbatimOut
+% }
+% \fi
+\endinput
-\makeatother