diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/pgfplots/pgfmanual-en-macros.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/pgfplots/pgfmanual-en-macros.tex | 993 |
1 files changed, 0 insertions, 993 deletions
diff --git a/Master/texmf-dist/doc/latex/pgfplots/pgfmanual-en-macros.tex b/Master/texmf-dist/doc/latex/pgfplots/pgfmanual-en-macros.tex deleted file mode 100644 index e9082ddce87..00000000000 --- a/Master/texmf-dist/doc/latex/pgfplots/pgfmanual-en-macros.tex +++ /dev/null @@ -1,993 +0,0 @@ -% Copyright 2006 by Till Tantau -% -% This file may be distributed and/or modified -% -% 1. under the LaTeX Project Public License and/or -% 2. under the GNU Free Documentation License. -% -% See the file doc/generic/pgf/licenses/LICENSE for more details. - -% $Header: /cvsroot/pgfplots/pgfplots/doc/latex/pgfplots/pgfmanual-en-macros.tex,v 1.4 2009/03/05 22:23:22 ludewich Exp $ - - -% This file is part of the pgf manual; I re-use it here with -% permission. -% -% I have changed very few things (marked with 'CF') - -\providecommand\href[2]{\texttt{#1}} - - -\colorlet{examplefill}{yellow!80!black} -\definecolor{graphicbackground}{rgb}{0.96,0.96,0.8} -\definecolor{codebackground}{rgb}{0.8,0.8,1} - -\newenvironment{pgfmanualentry}{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}}{\endlist} -\newcommand\pgfmanualentryheadline[1]{\itemsep=0pt\parskip=0pt\item\strut{#1}\par\topsep=0pt} -\newcommand\pgfmanualbody{\parskip3pt} - - - -\newenvironment{pgflayout}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{\texttt{\string\pgfpagesuselayout\char`\{\declare{#1}\char`\}}\oarg{options}} - \index{#1@\protect\texttt{#1} layout}% - \index{Page layouts!#1@\protect\texttt{#1}}% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - -\newenvironment{command}[1]{ - \begin{pgfmanualentry} - \extractcommand#1\@@ - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -%% MW: START MATH MACROS -\def\mvar#1{{\rmfamily\textit{#1}}} - -\makeatletter - -\def\extractmathfunctionname#1{\extractmathfunctionname@#1(,)\tmpa\tmpb} -\def\extractmathfunctionname@#1(#2)#3\tmpb{\def\mathname{#1}} - -\def\extractmathoperatorname{\begingroup\def\mvar##1{}\def\ {}\extractmathoperatorname@} -\def\extractmathoperatorname@#1{\xdef\mathname{#1}\endgroup} - -\makeatother - -\newenvironment{math-function}[1]{ - \begin{pgfmanualentry} - \extractmathfunctionname{#1} - \pgfmanualentryheadline{\texttt{#1}}% - \index{\mathname @\protect\texttt{\mathname} math function}% - \index{Math functions!\mathname @\protect\texttt{\mathname}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\newenvironment{math-operator}[1]{ - \begin{pgfmanualentry} - \extractmathoperatorname{#1} - \pgfmanualentryheadline{\texttt{#1}}% - \index{\mathname @\protect\texttt{\mathname} math operator}% - \index{Math operators!\mathname @\protect\texttt{\mathname}} - \pgfmanualbody -} -{% - \end{pgfmanualentry} -} - -\newenvironment{math-constant}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{\texttt{#1}}% - \index{#1@\protect\texttt{#1} math constant}% - \index{Math constants!#1@\protect\texttt{#1}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} -\def\calcname{\textsc{calc}} -%% MW: END MATH MACROS - - -\def\extractcommand#1#2\@@{% - \pgfmanualentryheadline{\declare{\texttt{\string#1}}#2}% - \removeats{#1}% - \index{\strippedat @\protect\myprintocmmand{\strippedat}}} - - -% \begin{environment}{{name}\marg{arguments}} -\renewenvironment{environment}[1]{ - \begin{pgfmanualentry} - \extractenvironement#1\@@ - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\def\extractenvironement#1#2\@@{% - \pgfmanualentryheadline{{\ttfamily\char`\\begin\char`\{\declare{#1}\char`\}}#2}% - \pgfmanualentryheadline{{\ttfamily\ \ }\meta{environment contents}}% - \pgfmanualentryheadline{{\ttfamily\char`\\end\char`\{\declare{#1}\char`\}}}% - \index{#1@\protect\texttt{#1} environment}% - \index{Environments!#1@\protect\texttt{#1}}} - - -\newenvironment{plainenvironment}[1]{ - \begin{pgfmanualentry} - \extractplainenvironement#1\@@ - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\def\extractplainenvironement#1#2\@@{% - \pgfmanualentryheadline{{\ttfamily\declare{\char`\\#1}}#2}% - \pgfmanualentryheadline{{\ttfamily\ \ }\meta{environment contents}}% - \pgfmanualentryheadline{{\ttfamily\declare{\char`\\end#1}}}% - \index{#1@\protect\texttt{#1} environment}% - \index{Environments!#1@\protect\texttt{#1}}} - - -\newenvironment{contextenvironment}[1]{ - \begin{pgfmanualentry} - \extractcontextenvironement#1\@@ - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\def\extractcontextenvironement#1#2\@@{% - \pgfmanualentryheadline{{\ttfamily\declare{\char`\\start#1}}#2}% - \pgfmanualentryheadline{{\ttfamily\ \ }\meta{environment contents}}% - \pgfmanualentryheadline{{\ttfamily\declare{\char`\\stop#1}}}% - \index{#1@\protect\texttt{#1} environment}% - \index{Environments!#1@\protect\texttt{#1}}} - - -\newenvironment{shape}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{Shape {\ttfamily\declare{#1}}}% - \index{#1@\protect\texttt{#1} shape}% - \index{Shapes!#1@\protect\texttt{#1}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - -\newenvironment{handler}[1]{ - \begin{pgfmanualentry} - \extracthandler#1\@nil% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\def\gobble#1{} -\def\extracthandler#1#2\@nil{% - \pgfmanualentryheadline{Key handler \meta{key}{\ttfamily/\declare{#1}}#2}% - \index{\gobble#1@\protect\texttt{#1} handler}% - \index{Key handlers!#1@\protect\texttt{#1}} -} - - -\makeatletter - - -\newenvironment{stylekey}[1]{ - \begin{pgfmanualentry} - \def\extrakeytext{style, } - \extractkey#1\@nil% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - -% \begin{key}{/path/x=value} -% \begin{key}{/path/x=value (initially XXX)} -% \begin{key}{/path/x=value (default XXX)} -\newenvironment{key}[1]{ - \begin{pgfmanualentry} - \def\extrakeytext{} - %\def\altpath{\emph{\color{gray}or}}% - \extractkey#1\@nil% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\def\extractkey#1\@nil{% - \pgfutil@in@={#1}% - \ifpgfutil@in@% - \extractkeyequal#1\@nil - \else% - \pgfutil@in@{(initial}{#1}% - \ifpgfutil@in@% - \extractequalinitial#1\@nil% - \else - \pgfmanualentryheadline{{\ttfamily\declarekey{#1}}\hfill(\extrakeytext no value)}% - \def\mykey{#1}% - \def\mypath{}% - \def\myname{}% - \firsttimetrue% - \decompose#1/\nil% - \fi - \fi% -} - -\pgfkeyssetvalue{/pgfmanual/gray key prefixes}{/pgfplots/,/tikz/} - -\def\declarekey#1{% - \begingroup - \gdef\declarekey@didit{0}% - \pgfkeysgetvalue{/pgfmanual/gray key prefixes}\declarekey@gray - \def\declarekey@loop{\foreach \prefix in }% - \expandafter\declarekey@loop\expandafter{\declarekey@gray} {% - \expandafter\pgfutil@in@\expandafter{\prefix}{#1}% - \ifpgfutil@in@ - \expandafter\def\expandafter\declarekey@handleprefix\prefix####1\relax{% - \keyprefix{\prefix}\declare{####1}% - }% - \declarekey@handleprefix#1\relax - \gdef\declarekey@didit{1}% - \breakforeach - \fi - }% - \if0\declarekey@didit - \declare{#1}% - \fi - \endgroup -}% -\def\keyprefix#1{\textcolor{gray}{#1}} - -\def\extractkeyequal#1=#2\@nil{% - \pgfutil@in@{(default}{#2}% - \ifpgfutil@in@% - \extractdefault{#1}#2\@nil% - \else% - \pgfutil@in@{(initial}{#2}% - \ifpgfutil@in@% - \extractinitial{#1}#2\@nil% - \else -% \pgfmanualentryheadline{{\ttfamily\declarekey{#1}=}#2\hfill(\extrakeytext no default)}% - \pgfmanualentryheadline{{\ttfamily\declarekey{#1}=}#2\hfill}% - \fi% - \fi% - \def\mykey{#1}% - \def\mypath{}% - \def\myname{}% - \firsttimetrue% - \decompose#1/\nil% -} - -\def\extractdefault#1#2(default #3)\@nil{% - \pgfmanualentryheadline{{\ttfamily\declarekey{#1}\opt{=}}\opt{#2}\hfill (\extrakeytext default {\ttfamily#3})}% -} - -\def\extractinitial#1#2(initially #3)\@nil{% -% \pgfmanualentryheadline{{\ttfamily\declarekey{#1}=}#2\hfill (\extrakeytext no default, initially {\ttfamily#3})}% - \pgfmanualentryheadline{{\ttfamily\declarekey{#1}=}#2\hfill (\extrakeytext initially {\ttfamily#3})}% -} - -\def\extractequalinitial#1 (initially #2)\@nil{% - \pgfmanualentryheadline{{\ttfamily\declarekey{#1}}\hfill (\extrakeytext initially {\ttfamily#2})}% - \def\mykey{#1}% - \def\mypath{}% - \def\myname{}% - \firsttimetrue% - \decompose#1/\nil% -} - -% Introduces a key alias '/#1/<name of current key>' -% to be used inside of \begin{key} ... \end{key} -\def\keyalias#1{\vspace{-3pt}\item{\small alias {\ttfamily/#1/\myname}}\vspace{-2pt}\par} - -\newif\iffirsttime - -\makeatother - -\def\decompose/#1/#2\nil{% - \def\test{#2}% - \ifx\test\empty% - % aha. - \index{#1@\protect\texttt{#1} key}% - \index{\mypath#1@\protect\texttt{#1}}% - \def\myname{#1}% - \else% - \iffirsttime -% CF : disabled for /pgfplots/ prefix. -% \def\mypath{#1@\protect\texttt{/#1/}!}% -% \firsttimefalse - \def\pgfplotslocTMPa{pgfplots}% - \edef\pgfplotslocTMPb{#1}% - \ifx\pgfplotslocTMPb\pgfplotslocTMPa - \def\mypath{}% - \else - \def\mypath{#1@\protect\texttt{/#1/}!}% - \fi - \firsttimefalse - \else - \expandafter\def\expandafter\mypath\expandafter{\mypath#1@\protect\texttt{#1/}!}% - \fi - \def\firsttime{} - \decompose/#2\nil% - \fi% -} - -\newenvironment{predefinedmethod}[1]{ - \begin{pgfmanualentry} - \extractpredefinedmethod#1\@nil - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} -\def\extractpredefinedmethod#1(#2)\@nil{% - \pgfmanualentryheadline{Method \declare{\ttfamily #1}\texttt(#2\texttt) \hfill(predefined for all classes)} - \index{#1@\protect\texttt{#1} method}% - \index{Methods!#1@\protect\texttt{#1}} -} - - -\newenvironment{ooclass}[1]{ - \begin{pgfmanualentry} - \def\currentclass{#1} - \pgfmanualentryheadline{Class \declare{\texttt{#1}}} - \index{#1@\protect\texttt{#1} class}% - \index{Class #1@Class \protect\texttt{#1}}% - \index{Classes!#1@\protect\texttt{#1}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\newenvironment{method}[1]{ - \begin{pgfmanualentry} - \extractmethod#1\@nil - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} -\def\extractmethod#1(#2)\@nil{% - \def\test{#1} - \ifx\test\currentclass - \pgfmanualentryheadline{Constructor \declare{\ttfamily #1}\texttt(#2\texttt)} - \else - \pgfmanualentryheadline{Method \declare{\ttfamily #1}\texttt(#2\texttt)} - \fi - \index{#1@\protect\texttt{#1} method}% - \index{Methods!#1@\protect\texttt{#1}} - \index{Class \currentclass!#1@\protect\texttt{#1}}% -} - -\newenvironment{attribute}[1]{ - \begin{pgfmanualentry} - \extractattribute#1\@nil - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} -\def\extractattribute#1=#2;\@nil{% - \def\test{#2}% - \ifx\test\@empty - \pgfmanualentryheadline{Private attribute \declare{\ttfamily #1} \hfill (initially empty)} - \else - \pgfmanualentryheadline{Private attribute \declare{\ttfamily #1} \hfill (initially {\ttfamily #2})} - \fi - \index{#1@\protect\texttt{#1} attribute}% - \index{Attributes!#1@\protect\texttt{#1}} - \index{Class \currentclass!#1@\protect\texttt{#1}}% -} - - - -\newenvironment{predefinednode}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{Predefined node {\ttfamily\declare{#1}}}% - \index{#1@\protect\texttt{#1} node}% - \index{Predefined node!#1@\protect\texttt{#1}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\newenvironment{coordinatesystem}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{Coordinate system {\ttfamily\declare{#1}}}% - \index{#1@\protect\texttt{#1} coordinate system}% - \index{Coordinate systems!#1@\protect\texttt{#1}} - \pgfmanualbody - \pgfmanualpdflabel{#1}{}% -} -{ - \end{pgfmanualentry} -} - -\newenvironment{snake}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{Snake {\ttfamily\declare{#1}}}% - \index{#1@\protect\texttt{#1} snake}% - \index{Snakes!#1@\protect\texttt{#1}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\newenvironment{decoration}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{Decoration {\ttfamily\declare{#1}}}% - \index{#1@\protect\texttt{#1} decoration}% - \index{Decorations!#1@\protect\texttt{#1}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - -\def\pgfmanualbar{\char`\|} -\makeatletter -\newenvironment{pathoperation}[3][]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{\textcolor{gray}{{\ttfamily\char`\\path}\ - \ \dots} - \declare{\texttt{#2}}#3\ \textcolor{gray}{\dots\texttt{;}}}% - \def\pgfmanualtest{#1}% - \ifx\pgfmanualtest\@empty% - \index{#2@\protect\texttt{#2} path operation}% - \index{Path operations!#2@\protect\texttt{#2}}% - \pgfmanualpdflabel{#2}{}% - \fi% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} -\makeatother - -\def\extractcommand#1#2\@@{% - \pgfmanualentryheadline{\declare{\texttt{\string#1}}#2}% - \removeats{#1}% - \index{\strippedat @\protect\myprintocmmand{\strippedat}}} - -\def\doublebs{\texttt{\char`\\\char`\\}} - - -\newenvironment{package}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{{\ttfamily\char`\\usepackage\char`\{\declare{#1}\char`\}\space\space \char`\%\space\space \LaTeX}} - \index{#1@\protect\texttt{#1} package}% - \index{Packages and files!#1@\protect\texttt{#1}}% - \pgfmanualentryheadline{{\ttfamily\char`\\input \declare{#1}.tex\space\space\space \char`\%\space\space plain \TeX}} - \pgfmanualentryheadline{{\ttfamily\char`\\usemodule[\declare{#1}]\space\space \char`\%\space\space Con\TeX t}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - -\newenvironment{pgfmodule}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{{\ttfamily\char`\\usepgfmodule\char`\{\declare{#1}\char`\}\space\space\space - \char`\%\space\space \LaTeX\space and plain \TeX\space and pure pgf}} - \index{#1@\protect\texttt{#1} module}% - \index{Modules!#1@\protect\texttt{#1}}% - \pgfmanualentryheadline{{\ttfamily\char`\\usepgfmodule[\declare{#1}]\space\space \char`\%\space\space Con\TeX t\space and pure pgf}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\newenvironment{pgflibrary}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{{\ttfamily\char`\\usepgflibrary\char`\{\declare{#1}\char`\}\space\space\space - \char`\%\space\space \LaTeX\space and plain \TeX\space and pure pgf}} - \index{#1@\protect\texttt{#1} library}% - \index{Libraries!#1@\protect\texttt{#1}}% - \pgfmanualentryheadline{{\ttfamily\char`\\usepgflibrary[\declare{#1}]\space\space \char`\%\space\space Con\TeX t\space and pure pgf}} - \pgfmanualentryheadline{{\ttfamily\char`\\usetikzlibrary\char`\{\declare{#1}\char`\}\space\space - \char`\%\space\space \LaTeX\space and plain \TeX\space when using \tikzname}} - \pgfmanualentryheadline{{\ttfamily\char`\\usetikzlibrary[\declare{#1}]\space - \char`\%\space\space Con\TeX t\space when using \tikzname}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - -\newenvironment{tikzlibrary}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{{\ttfamily\char`\\usetikzlibrary\char`\{\declare{#1}\char`\}\space\space \char`\%\space\space \LaTeX\space and plain \TeX}} - \index{#1@\protect\texttt{#1} library}% - \index{Libraries!#1@\protect\texttt{#1}}% - \pgfmanualentryheadline{{\ttfamily\char`\\usetikzlibrary[\declare{#1}]\space \char`\%\space\space Con\TeX t}} - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - - -\newenvironment{filedescription}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{File {\ttfamily\declare{#1}}}% - \index{#1@\protect\texttt{#1} file}% - \index{Packages and files!#1@\protect\texttt{#1}}% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - -\newenvironment{packageoption}[1]{ - \begin{pgfmanualentry} - \pgfmanualentryheadline{{\ttfamily\char`\\usepackage[\declare{#1}]\char`\{pgf\char`\}}} - \index{#1@\protect\texttt{#1} package option}% - \index{Package options for \textsc{pgf}!#1@\protect\texttt{#1}}% - \pgfmanualbody -} -{ - \end{pgfmanualentry} -} - - - -\newcommand\opt[1]{{\color{black!50!green}#1}} -\newcommand\ooarg[1]{{\ttfamily[}\meta{#1}{\ttfamily]}} - -\def\opt{\afterassignment\pgfmanualopt\let\next=} -\def\pgfmanualopt{\ifx\next\bgroup\bgroup\color{black!50!green}\else{\color{black!50!green}\next}\fi} - - - -\def\beamer{\textsc{beamer}} -\def\pdf{\textsc{pdf}} -\def\pgfname{\textsc{pgf}} -\def\tikzname{Ti\emph{k}Z} -\def\pstricks{\textsc{pstricks}} -\def\prosper{\textsc{prosper}} -\def\seminar{\textsc{seminar}} -\def\texpower{\textsc{texpower}} -\def\foils{\textsc{foils}} - -{ - \makeatletter - \global\let\myempty=\@empty - \global\let\mygobble=\@gobble - \catcode`\@=12 - \gdef\getridofats#1@#2\relax{% - \def\getridtest{#2}% - \ifx\getridtest\myempty% - \expandafter\def\expandafter\strippedat\expandafter{\strippedat#1} - \else% - \expandafter\def\expandafter\strippedat\expandafter{\strippedat#1\protect\printanat} - \getridofats#2\relax% - \fi% - } - - \gdef\removeats#1{% - \let\strippedat\myempty% - \edef\strippedtext{\stripcommand#1}% - \expandafter\getridofats\strippedtext @\relax% - } - - \gdef\stripcommand#1{\expandafter\mygobble\string#1} -} - -\def\printanat{\char`\@} - -\def\declare{\afterassignment\pgfmanualdeclare\let\next=} -\def\pgfmanualdeclare{\ifx\next\bgroup\bgroup\color{red!75!black}\else{\color{red!75!black}\next}\fi} - - -\let\textoken=\command -\let\endtextoken=\endcommand - -\def\myprintocmmand#1{\texttt{\char`\\#1}} - -\def\example{\par\smallskip\noindent\textit{Example: }} -\def\themeauthor{\par\smallskip\noindent\textit{Theme author: }} - - -\def\indexoption#1{% - \index{#1@\protect\texttt{#1} option}% - \index{Graphic options and styles!#1@\protect\texttt{#1}}% -} - -\def\itemcalendaroption#1{\item \declare{\texttt{#1}}% - \index{#1@\protect\texttt{#1} date test}% - \index{Date tests!#1@\protect\texttt{#1}}% -} - - - -\def\class#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}% -\extractclass#1@\par\topsep=0pt} -\def\endclass{\endlist} -\def\extractclass#1#2@{% -\item{{{\ttfamily\char`\\documentclass}#2{\ttfamily\char`\{\declare{#1}\char`\}}}}% - \index{#1@\protect\texttt{#1} class}% - \index{Classes!#1@\protect\texttt{#1}}} - -\def\partname{Part} - -\makeatletter -\def\index@prologue{\section*{Index}\addcontentsline{toc}{section}{Index} - This index only contains automatically generated entries. A good - index should also contain carefully selected keywords. This index is - not a good index. - \bigskip -} -\c@IndexColumns=2 - \def\theindex{\@restonecoltrue - \columnseprule \z@ \columnsep 29\p@ - \twocolumn[\index@prologue]% - \parindent -30pt - \columnsep 15pt - \parskip 0pt plus 1pt - \leftskip 30pt - \rightskip 0pt plus 2cm - \small - \def\@idxitem{\par}% - \let\item\@idxitem \ignorespaces} - \def\endtheindex{\onecolumn} -\def\noindexing{\let\index=\@gobble} - - - -\newcommand\symarrow[1]{ - \index{#1@\protect\texttt{#1} arrow tip}% - \index{Arrow tips!#1@\protect\texttt{#1}} - \texttt{#1}& yields thick - \begin{tikzpicture}[arrows={#1-#1},thick,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and thin - \begin{tikzpicture}[arrows={#1-#1},thin,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} -} -\newcommand\symarrowdouble[1]{ - \index{#1@\protect\texttt{#1} arrow tip}% - \index{Arrow tips!#1@\protect\texttt{#1}} - \texttt{#1}& yields thick - \begin{tikzpicture}[arrows={#1-#1},thick,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} - and thin - \begin{tikzpicture}[arrows={#1-#1},thin,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture}, double - \begin{tikzpicture}[arrows={#1-#1},thick,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw[double,double equal sign distance] (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and - \begin{tikzpicture}[arrows={#1-#1},thin,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw[double,double equal sign distance] (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} -} - -\newcommand\sarrow[2]{ - \index{#1@\protect\texttt{#1} arrow tip}% - \index{Arrow tips!#1@\protect\texttt{#1}} - \index{#2@\protect\texttt{#2} arrow tip}% - \index{Arrow tips!#2@\protect\texttt{#2}} - \texttt{#1-#2}& yields thick - \begin{tikzpicture}[arrows={#1-#2},thick,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and thin - \begin{tikzpicture}[arrows={#1-#2},thin,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} -} - -\newcommand\sarrowdouble[2]{ - \index{#1@\protect\texttt{#1} arrow tip}% - \index{Arrow tips!#1@\protect\texttt{#1}} - \index{#2@\protect\texttt{#2} arrow tip}% - \index{Arrow tips!#2@\protect\texttt{#2}} - \texttt{#1-#2}& yields thick - \begin{tikzpicture}[arrows={#1-#2},thick,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and thin - \begin{tikzpicture}[arrows={#1-#2},thin,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture}, double - \begin{tikzpicture}[arrows={#1-#2},thick,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw[double,double equal sign distance] (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} and - \begin{tikzpicture}[arrows={#1-#2},thin,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1cm,2ex); - \draw[double,double equal sign distance] (0pt,.5ex) -- (1cm,.5ex); - \end{tikzpicture} -} - -\newcommand\carrow[1]{ - \index{#1@\protect\texttt{#1} arrow tip}% - \index{Arrow tips!#1@\protect\texttt{#1}} - \texttt{#1}& yields for line width 1ex - \begin{tikzpicture}[arrows={#1-#1},line width=1ex,baseline] - \useasboundingbox (0pt,-0.5ex) rectangle (1.5cm,2ex); - \draw (0pt,.5ex) -- (1.5cm,.5ex); - \end{tikzpicture} -} -\def\myvbar{\char`\|} -\newcommand\plotmarkentry[1]{% - \index{#1@\protect\texttt{#1} plot mark}% - \index{Plot marks!#1@\protect\texttt{#1}} - \texttt{\char`\\pgfuseplotmark\char`\{\declare{#1}\char`\}} & - \tikz\draw[color=black!25] plot[mark=#1,mark options={fill=examplefill,draw=black}] coordinates{(0,0) (.5,0.2) (1,0) (1.5,0.2)};\\ -} -\newcommand\plotmarkentrytikz[1]{% - \index{#1@\protect\texttt{#1} plot mark}% - \index{Plot marks!#1@\protect\texttt{#1}} - \texttt{mark=\declare{#1}} & \tikz\draw[color=black!25] - plot[mark=#1,mark options={fill=examplefill,draw=black}] - coordinates {(0,0) (.5,0.2) (1,0) (1.5,0.2)};\\ -} - - - -\ifx\scantokens\@undefined - \PackageError{pgfmanual-macros}{You need to use extended latex - (elatex) or (pdfelatex) to process this document}{} -\fi - -% Define \find@example 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{codeexample}[|endofcodeexample[#1]] -|endgroup - -% define \returntospace. -% -% It should define NEWLINE as {}, spaces and tabs as \space. -\begingroup -\catcode`\^=7 -\catcode`\^^M=13 -\catcode`\^^I=13 -\catcode`\ =13% -\gdef\returntospace{\catcode`\ =13\def {\space}\catcode`\^^I=13\def^^I{\space}\catcode`\^^M=13\def^^M{\pgfkeysvalueof{/codeexample/newline}}}% -\endgroup - -\begingroup -\catcode`\%=13 -\catcode`\^^M=13 -\gdef\commenthandler{\catcode`\%=13\def%{\@gobble@till@return}} -\gdef\@gobble@till@return#1^^M{} -\gdef\@gobble@till@return@ignore#1^^M{\ignorespaces} -\gdef\typesetcomment{\catcode`\%=13\def%{\@typeset@till@return}} -\gdef\@typeset@till@return#1^^M{{\def%{\char`\%}\pgfkeysvalueof{/codeexample/comment font}{\char`\%#1}}\par} -\endgroup - -% Define tab-implementation functions -% \codeexample@tabinit@replacementchars@ -% and -% \codeexample@tabinit@catcode@ -% -% They should ONLY be used in case that tab replacement is active. -% -% This here is merely a preparation step. -% -% Idea: -% \codeexample@tabinit@catcode@ will make TAB active -% and -% \codeexample@tabinit@replacementchars@ will insert as many spaces as -% /codeexample/tabsize contains. -{ -\catcode`\^^I=13 -% ATTENTION: do NOT use tabs in these definitions!! -\gdef\codeexample@tabinit@replacementchars@{% - \begingroup - \count0=\pgfkeysvalueof{/codeexample/tabsize}\relax - \toks0={}% - \loop - \ifnum\count0>0 - \advance\count0 by-1 - \toks0=\expandafter{\the\toks0\ }% - \repeat - \xdef\codeexample@tabinit@replacementchars@@{\the\toks0}% - \endgroup - \let^^I=\codeexample@tabinit@replacementchars@@ -}% -\gdef\codeexample@tabinit@catcode@{\catcode`\^^I=13}% -}% - -% Called after any options have been set. It assigns -% \codeexample@tabinit@catcode -% and -% \codeexample@tabinit@replacementchars -% which are used inside of -%\begin{codeexample} -% ... -%\end{codeexample} -% -% \codeexample@tabinit@catcode is either \relax or it makes tab -% active. -% -% \codeexample@tabinit@replacementchars is either \relax or it inserts -% a proper replacement sequence for tabs (as many spaces as -% configured) -\def\codeexample@tabinit{% - \ifnum\pgfkeysvalueof{/codeexample/tabsize}=0\relax - \let\codeexample@tabinit@replacementchars=\relax - \let\codeexample@tabinit@catcode=\relax - \else - \let\codeexample@tabinit@catcode=\codeexample@tabinit@catcode@ - \let\codeexample@tabinit@replacementchars=\codeexample@tabinit@replacementchars@ - \fi -} - -\pgfqkeys{/codeexample}{% - width/.code= {\setlength\codeexamplewidth{#1}}, - graphic/.code= {\colorlet{graphicbackground}{#1}}, - code/.code= {\colorlet{codebackground}{#1}}, - execute code/.is if=code@execute, - code only/.code= {\code@executefalse}, - pre/.code= {\def\code@pre{#1}}, - post/.code= {\def\code@post{#1}}, - % #1 is the *complete* environment contents as it shall be - % typeset. In particular, the catcodes are NOT the normal ones. - typeset listing/.code= {#1}, - 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}, - comment font/.initial=\textsl,% FIXME : doesn't work!? - tabsize/.initial=0, - newline/.initial=^^J,% use 'newline=^^J' to insert a *real* newline - every codeexample/.style={width=4cm+7pt}, -} - -\def\code@pre{} -\def\code@post{} -\def\code@catcode@hook{} - -\newdimen\codeexamplewidth -\newif\ifcode@execute -\newbox\codeexamplebox -\def\codeexample[#1]{% - \begingroup% - \code@executetrue - \pgfqkeys{/codeexample}{every codeexample,#1}% - \codeexample@tabinit% assigns \codeexample@tabinit@[catcode,replacementchars] - \parindent0pt - \begingroup% - \par% - \medskip% - \let\do\@makeother% - \dospecials% - \obeylines% - \@vobeyspaces% - \catcode`\%=13% - \catcode`\^^M=13% - \code@catcode@hook% - \codeexample@tabinit@catcode - \relax% - \find@example} -\def\endofcodeexample#1{% - \endgroup% - \ifcode@execute% - \setbox\codeexamplebox=\hbox{% - {% - {% - \returntospace% - \commenthandler% - \xdef\code@temp{#1}% removes returns and comments - }% -%\message{Nach returntospace: \meaning\code@temp^^J^^J^^J}% - \colorbox{graphicbackground}{\color{black}\ignorespaces% - \code@pre\expandafter\scantokens\expandafter{\code@temp\ignorespaces}\code@post\ignorespaces}% - }% - }% - \ifdim\wd\codeexamplebox>\codeexamplewidth% - \def\code@start{\par}% - \def\code@flushstart{}\def\code@flushend{}% - \def\code@mid{\parskip2pt\par\noindent}% - \def\code@width{\linewidth-6pt}% - \def\code@end{}% - \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}% - \def\code@width{\linewidth-12pt-\codeexamplewidth}% - \def\code@end{\egroup}% - \fi% - \code@start% - \noindent% - \begin{minipage}[t]{\codeexamplewidth}\raggedright - \hrule width0pt% - \footnotesize\vskip-1em% - \code@flushstart\box\codeexamplebox\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\footnotesize - \typesetcomment% - \codeexample@tabinit@replacementchars - \@tempswafalse - \def\par{% - \if@tempswa - \leavevmode \null \@@par\penalty\interlinepenalty - \else - \@tempswatrue - \ifhmode\@@par\penalty\interlinepenalty\fi - \fi}% - \obeylines - \everypar \expandafter{\the\everypar \unpenalty}% - \pgfkeysvalueof{/codeexample/typeset listing/.@cmd}{#1}\pgfeov - } - \end{minipage}}% - \code@end% - \par% - \medskip - \end{codeexample} -} - -\def\endcodeexample{\endgroup} - - -\makeatother - - -%%% Local Variables: -%%% mode: latex -%%% TeX-master: "beameruserguide" -%%% End: |