summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex')
-rw-r--r--Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex574
1 files changed, 287 insertions, 287 deletions
diff --git a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex
index a23b9ad6861..bdae790399e 100644
--- a/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex
+++ b/Master/texmf-dist/tex/latex/pgf/doc/pgfmanual.pdflinks.code.tex
@@ -4,7 +4,7 @@
%
% Provides a user-friendly interface to create function plots (normal
% plots, semi-logplots and double-logplots).
-%
+%
% It is based on Till Tantau's PGF package.
%
% Copyright 2007/2008/2009 by Christian Feuersänger.
@@ -13,19 +13,19 @@
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 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 <http://www.gnu.org/licenses/>.
%
%--------------------------------------------
% This file provides an interface to the
-% pgfmanual.prettyprint.code.tex thing -- it allows to
+% pgfmanual.prettyprint.code.tex thing -- it allows to
% *generate pdf crossrefs inside of codeexamples automatically*
% without any user input.
%
@@ -61,245 +61,245 @@
\pgfutil@IfUndefined{cleanedhyperlink}{\let\cleanedhyperlink=\hyperlink}{}
\pgfkeys{%
- /codeexample/prettyprint/cs arguments/pgfkeys/.initial=1,
- /codeexample/prettyprint/cs/pgfkeys/.code 2 args={\pgfmanualpdfref{#1}{#1}\{\pgfmanualprettyprintpgfkeys{#2}\pgfmanualclosebrace},
- %
- /codeexample/prettyprint/autolinks/.style={%
- /codeexample/prettyprint/key name/.code={\pgfmanualpdfref{##1}{##1}},
- /codeexample/prettyprint/key name with handler/.code 2 args={\pgfmanualpdfref{##1}{##1}/\pgfmanualpdfref{/handlers/##2}{##2}},
- /codeexample/prettyprint/key value display only/.code={\pgfmanualprettyprintcode{##1}},
- /codeexample/prettyprint/cs/.code={\pgfmanualpdfref{##1}{##1}},
- /codeexample/prettyprint/cs with args/.code 2 args={\pgfmanualpdfref{##1}{##1}\{\pgfmanualprettyprintcode{##2}\pgfmanualclosebrace},
- /codeexample/prettyprint/cs arguments/pgfkeys/.initial=1,
- /codeexample/prettyprint/cs/pgfkeys/.code 2 args={\pgfmanualpdfref{##1}{##1}\{\pgfmanualprettyprintpgfkeys{##2}\pgfmanualclosebrace},
- /codeexample/prettyprint/cs arguments/begin/.initial=1,
- /codeexample/prettyprint/cs/begin/.code 2 args={##1\{\pgfmanualpdfref{##2}{##2}\pgfmanualclosebrace},
- /codeexample/prettyprint/cs arguments/end/.initial=1,
- /codeexample/prettyprint/cs/end/.code 2 args={##1\{\pgfmanualpdfref{##2}{##2}\pgfmanualclosebrace},
- /codeexample/prettyprint/word/.code={\begingroup\pgfkeyssetvalue{/pdflinks/search key prefixes in}{}\pgfmanualpdfref{##1}{##1}\endgroup},
- /codeexample/prettyprint/point/.code={##1},%
- /codeexample/prettyprint/point with cs/.code 2 args={(\pgfmanualpdfref{##1}{##1}:##2},%
- },%
- /codeexample/prettyprint/autolinks,
+ /codeexample/prettyprint/cs arguments/pgfkeys/.initial=1,
+ /codeexample/prettyprint/cs/pgfkeys/.code 2 args={\pgfmanualpdfref{#1}{#1}\{\pgfmanualprettyprintpgfkeys{#2}\pgfmanualclosebrace},
+ %
+ /codeexample/prettyprint/autolinks/.style={%
+ /codeexample/prettyprint/key name/.code={\pgfmanualpdfref{##1}{##1}},
+ /codeexample/prettyprint/key name with handler/.code 2 args={\pgfmanualpdfref{##1}{##1}/\pgfmanualpdfref{/handlers/##2}{##2}},
+ /codeexample/prettyprint/key value display only/.code={\pgfmanualprettyprintcode{##1}},
+ /codeexample/prettyprint/cs/.code={\pgfmanualpdfref{##1}{##1}},
+ /codeexample/prettyprint/cs with args/.code 2 args={\pgfmanualpdfref{##1}{##1}\{\pgfmanualprettyprintcode{##2}\pgfmanualclosebrace},
+ /codeexample/prettyprint/cs arguments/pgfkeys/.initial=1,
+ /codeexample/prettyprint/cs/pgfkeys/.code 2 args={\pgfmanualpdfref{##1}{##1}\{\pgfmanualprettyprintpgfkeys{##2}\pgfmanualclosebrace},
+ /codeexample/prettyprint/cs arguments/begin/.initial=1,
+ /codeexample/prettyprint/cs/begin/.code 2 args={##1\{\pgfmanualpdfref{##2}{##2}\pgfmanualclosebrace},
+ /codeexample/prettyprint/cs arguments/end/.initial=1,
+ /codeexample/prettyprint/cs/end/.code 2 args={##1\{\pgfmanualpdfref{##2}{##2}\pgfmanualclosebrace},
+ /codeexample/prettyprint/word/.code={\begingroup\pgfkeyssetvalue{/pdflinks/search key prefixes in}{}\pgfmanualpdfref{##1}{##1}\endgroup},
+ /codeexample/prettyprint/point/.code={##1},%
+ /codeexample/prettyprint/point with cs/.code 2 args={(\pgfmanualpdfref{##1}{##1}:##2},%
+ },%
+ /codeexample/prettyprint/autolinks,
}%
\pgfkeys{
- %
- % Enables or disables the parsing of codeexamples.
- /pdflinks/codeexample links/.is if=pgfmanualprettyenabled,
- /pdflinks/codeexample links/.default=true,
- %
- % How to render a hyperlink
- /pdflinks/render hyperlink/.code=#1,
- %
- % whenever an unqualified key is found, the following key prefix
- % list is tried to find a match.
- /pdflinks/search key prefixes in/.initial={/tikz/,/pgf/},
- %
- % Enables or disables warnings for failed auto links:
- /pdflinks/warnings/.is if=pgfmanualpdfwarnings,
- /pdflinks/warnings/.default=true,
- %
- % Shows the autogenerated labels. This is useful to check if the
- % 'search key prefixes in' worked as it ought to.
- /pdflinks/show labels/.is if=pgfmanualshowlabels,
- /pdflinks/show labels/.default=true,
- /pdflinks/show labels=false,
- % will be invoked with '#1' set to the generated label.
- /pdflinks/show labels code/.code={
- \hbox to 0pt{%
- \vbox to 0pt{\hsize=0pt
- \vskip-\baselineskip
- \hbox to \hsize{%
- \hss
- {\footnotesize\ttfamily\textcolor{red}{#1}}%
- \hss
- }%
- \vss
- }%
- \vbox to 0pt{\hsize=0pt
- \vss
- \hbox to \hsize{%
- \hss
- {\footnotesize\ttfamily\textcolor{red}{$\vert$}}%
- \hss
- }%
- }%
- \vsize=0pt
- }%
- },
- %
- % the link prefix written to the pdf file:
- /pdflinks/internal link prefix/.initial=pgf,
+ %
+ % Enables or disables the parsing of codeexamples.
+ /pdflinks/codeexample links/.is if=pgfmanualprettyenabled,
+ /pdflinks/codeexample links/.default=true,
+ %
+ % How to render a hyperlink
+ /pdflinks/render hyperlink/.code=#1,
+ %
+ % whenever an unqualified key is found, the following key prefix
+ % list is tried to find a match.
+ /pdflinks/search key prefixes in/.initial={/tikz/,/pgf/},
+ %
+ % Enables or disables warnings for failed auto links:
+ /pdflinks/warnings/.is if=pgfmanualpdfwarnings,
+ /pdflinks/warnings/.default=true,
+ %
+ % Shows the autogenerated labels. This is useful to check if the
+ % 'search key prefixes in' worked as it ought to.
+ /pdflinks/show labels/.is if=pgfmanualshowlabels,
+ /pdflinks/show labels/.default=true,
+ /pdflinks/show labels=false,
+ % will be invoked with '#1' set to the generated label.
+ /pdflinks/show labels code/.code={
+ \hbox to 0pt{%
+ \vbox to 0pt{\hsize=0pt
+ \vskip-\baselineskip
+ \hbox to \hsize{%
+ \hss
+ {\footnotesize\ttfamily\textcolor{red}{#1}}%
+ \hss
+ }%
+ \vss
+ }%
+ \vbox to 0pt{\hsize=0pt
+ \vss
+ \hbox to \hsize{%
+ \hss
+ {\footnotesize\ttfamily\textcolor{red}{$\vert$}}%
+ \hss
+ }%
+ }%
+ \vsize=0pt
+ }%
+ },
+ %
+ % the link prefix written to the pdf file:
+ /pdflinks/internal link prefix/.initial=pgf,
}
\begingroup
- \catcode`\_=12
- \gdef\pgfmanualpdf@underscore{_}%
- \catcode`\ =13\relax\gdef\pgfmanualpdf@install@active@space{\def {\space}}%
+ \catcode`\_=12
+ \gdef\pgfmanualpdf@underscore{_}%
+ \catcode`\ =13\relax\gdef\pgfmanualpdf@install@active@space{\def {\space}}%
\endgroup
\gdef\pgfmanualpdf@installreplacements{%
- \def\marg##1{{##1}}%
- \def\oarg##1{[##1]}%
- \def\meta##1{meta(##1)}%
- \def\x{x}%
- \def\textbackslash{back/}%
- \def\\{\textbackslash}%
- \def\space{:}%
- \edef\ {\space}%
- \edef\SPACE{\` \relax}%
- \ifnum\the\catcode`\ =13 %
- \pgfmanualpdf@install@active@space
- \fi
- \edef\#{}%
- \def\printanat{@}%
- \def\protect{}%
- \def\textasciicircum{o}%
+ \def\marg##1{{##1}}%
+ \def\oarg##1{[##1]}%
+ \def\meta##1{meta(##1)}%
+ \def\x{x}%
+ \def\textbackslash{back/}%
+ \def\\{\textbackslash}%
+ \def\space{:}%
+ \edef\ {\space}%
+ \edef\SPACE{\` \relax}%
+ \ifnum\the\catcode`\ =13 %
+ \pgfmanualpdf@install@active@space
+ \fi
+ \edef\#{}%
+ \def\printanat{@}%
+ \def\protect{}%
+ \def\textasciicircum{o}%
\def\_{\pgfmanualpdf@underscore}%
- \expandafter\edef\pgfmanual@verb@activebar{\pgfmanual@verb@bar}%
+ \expandafter\edef\pgfmanual@verb@activebar{\pgfmanual@verb@bar}%
}%
% Defines a new pdf cross ref label for use with \pgfmanualpdfref.
%
% Usage:
-% \pgfmanualpdflabel{<label>}{<text>}
+% \pgfmanualpdflabel{<label>}{<text>}
% #1: the label.
% The text #2 will be shown in the resulting pdf (if it is not empty).
%
% There is also support for catcode changes if <label> contains
% something which shouldn't be written as-is into .aux files:
-% \pgfmanualpdflabel[\catcode`\|=12 ]{|-}{}
+% \pgfmanualpdflabel[\catcode`\|=12 ]{|-}{}
% -> this will write
-% \begingroup \catcode `\|=12
-% <code to deal with the label |- >
-% \endgroup
+% \begingroup \catcode `\|=12
+% <code to deal with the label |- >
+% \endgroup
% into the .aux file.
%
\def\pgfmanualpdflabel{\pgfutil@ifnextchar[{\pgfmanualpdflabel@opt}{\pgfmanualpdflabel@opt[]}}%
\def\pgfmanualpdflabel@opt[#1]#2#3{%
- \begingroup
- %
- \def\pgfmanualpdf@catcode{#1}%
- \pgfmanualpdf@catcode
- %
- \pgfmanualpdflabel@generate{#2}{#3}%
- %
- % this is pgfplots-specific: pgfplots supports generic styles which
- % contain '\x' where '\x' iterates through 'x,y,z'.
- \pgfutil@in@\x{#2}%
- \ifpgfutil@in@
- \def\x{y}%
- \pgfmanualpdflabel@generate{#2}{#3}%
- \def\x{z}%
- \pgfmanualpdflabel@generate{#2}{#3}%
- \fi
- \endgroup
+ \begingroup
+ %
+ \def\pgfmanualpdf@catcode{#1}%
+ \pgfmanualpdf@catcode
+ %
+ \pgfmanualpdflabel@generate{#2}{#3}%
+ %
+ % this is pgfplots-specific: pgfplots supports generic styles which
+ % contain '\x' where '\x' iterates through 'x,y,z'.
+ \pgfutil@in@\x{#2}%
+ \ifpgfutil@in@
+ \def\x{y}%
+ \pgfmanualpdflabel@generate{#2}{#3}%
+ \def\x{z}%
+ \pgfmanualpdflabel@generate{#2}{#3}%
+ \fi
+ \endgroup
}%
\def\pgfmanualpdflabel@generate#1#2{%
- \pgfmanual@handlespeciallabeltokens@in{#1}%
- %
- \def\pgfmanualpdflabel@generateone{0}%
- \pgfutil@ifundefined{pgfd@lbl@\pgfmanualpdflabel@@}{%
- % ok, no such label is known.
- \def\pgfmanualpdflabel@generateone{1}%
- }{%
- \if\csname pgfd@lbl@\pgfmanualpdflabel@@\endcsname a% "a"ux
- % ah, it is "just" known from a previous run, but there is
- % no code in the pdf! Write it!
- \def\pgfmanualpdflabel@generateone{1}%
- \else
- % ok, we already wrote one before. Skip.
- \fi
- }%
- \if\pgfmanualpdflabel@generateone1%
- \ifpgfmanualshowlabels
- \pgfkeysvalueof{/pdflinks/show labels code/.@cmd}{\pgfmanualpdflabel@@}\pgfeov
- \fi
- %
- \if@filesw
- \ifx\pgfmanualpdf@catcode\pgfutil@empty
- \else
- \toks0=\expandafter{\pgfmanualpdf@catcode}%
- \immediate\write\@auxout{%
- \noexpand\begingroup
- \the\toks0
- }%
- \fi
- \immediate\write\@auxout{%
- \noexpand\expandafter\noexpand\gdef
- \noexpand\csname pgfd@lbl@\pgfmanualpdflabel@@\noexpand\endcsname{a}% a = known in "a"ux file
- }%
- \ifx\pgfmanualpdf@catcode\pgfutil@empty
- \else
- \immediate\write\@auxout{\noexpand\endgroup}%
- \fi
- \fi
- \expandafter\gdef\csname pgfd@lbl@\pgfmanualpdflabel@@\endcsname{w}% 1. remember the label AND remember that we "w"rote it into the pdf.
- \edef\pgfmanualpdflabel@@{\pgfkeysvalueof{/pdflinks/internal link prefix}.\pgfmanualpdflabel@@}%
- \ifvmode%
- \expandafter\cleanedhypertarget\expandafter{\pgfmanualpdflabel@@}{#2}%
- \else%
- {\setbox0=\hbox{\raise1em\hbox{\expandafter\cleanedhypertarget\expandafter{\pgfmanualpdflabel@@}{}}}\ht0=0pt\box0}#2%
- \fi%
- \else
- #2%
- \fi
+ \pgfmanual@handlespeciallabeltokens@in{#1}%
+ %
+ \def\pgfmanualpdflabel@generateone{0}%
+ \pgfutil@ifundefined{pgfd@lbl@\pgfmanualpdflabel@@}{%
+ % ok, no such label is known.
+ \def\pgfmanualpdflabel@generateone{1}%
+ }{%
+ \if\csname pgfd@lbl@\pgfmanualpdflabel@@\endcsname a% "a"ux
+ % ah, it is "just" known from a previous run, but there is
+ % no code in the pdf! Write it!
+ \def\pgfmanualpdflabel@generateone{1}%
+ \else
+ % ok, we already wrote one before. Skip.
+ \fi
+ }%
+ \if\pgfmanualpdflabel@generateone1%
+ \ifpgfmanualshowlabels
+ \pgfkeysvalueof{/pdflinks/show labels code/.@cmd}{\pgfmanualpdflabel@@}\pgfeov
+ \fi
+ %
+ \if@filesw
+ \ifx\pgfmanualpdf@catcode\pgfutil@empty
+ \else
+ \toks0=\expandafter{\pgfmanualpdf@catcode}%
+ \immediate\write\@auxout{%
+ \noexpand\begingroup
+ \the\toks0
+ }%
+ \fi
+ \immediate\write\@auxout{%
+ \noexpand\expandafter\noexpand\gdef
+ \noexpand\csname pgfd@lbl@\pgfmanualpdflabel@@\noexpand\endcsname{a}% a = known in "a"ux file
+ }%
+ \ifx\pgfmanualpdf@catcode\pgfutil@empty
+ \else
+ \immediate\write\@auxout{\noexpand\endgroup}%
+ \fi
+ \fi
+ \expandafter\gdef\csname pgfd@lbl@\pgfmanualpdflabel@@\endcsname{w}% 1. remember the label AND remember that we "w"rote it into the pdf.
+ \edef\pgfmanualpdflabel@@{\pgfkeysvalueof{/pdflinks/internal link prefix}.\pgfmanualpdflabel@@}%
+ \ifvmode%
+ \expandafter\cleanedhypertarget\expandafter{\pgfmanualpdflabel@@}{#2}%
+ \else%
+ {\setbox0=\hbox{\raise1em\hbox{\expandafter\cleanedhypertarget\expandafter{\pgfmanualpdflabel@@}{}}}\ht0=0pt\box0}#2%
+ \fi%
+ \else
+ #2%
+ \fi
}%
% A pdf reference to label `#1' with (TeX) text `#2'.
% @see also \verbpdfref.
\def\pgfmanualpdfref#1#2{%
- \begingroup
- \pgfmanual@handlespeciallabeltokens@in{#1}%
- %
- \ifcsname pgfd@lbl@\pgfmanualpdflabel@@\endcsname
- \else
- \global\let\pgfmanual@glob=\pgfmanualpdflabel@@
- \def\pgfmanual@tempa{\foreach \prefix in }%
- \pgfkeysgetvalue{/pdflinks/search key prefixes in}\pgfmanual@tempb
- \expandafter\pgfmanual@tempa\expandafter{\pgfmanual@tempb}{%
- \edef\pgfmanualpdflabel@@{\prefix\pgfmanualpdflabel@@}%
- \expandafter\pgfmanual@handlespeciallabeltokens@in\expandafter{\pgfmanualpdflabel@@}%
- \ifcsname pgfd@lbl@\pgfmanualpdflabel@@\endcsname
- \xdef\pgfmanual@glob{\pgfmanualpdflabel@@}%
- \breakforeach
- \fi
- }%
- \let\pgfmanualpdflabel@@=\pgfmanual@glob
- \ifcsname pgfd@lbl@\pgfmanualpdflabel@@\endcsname
- \else
- \ifpgfmanualpdfwarnings
- \begingroup
- \toks0={#1}%
- \pgfmanual@warning{pgfmanualpdfref{\the\toks0 }: target label does not exist.}%
- \endgroup
- \fi
- #2%
- \let\pgfmanualpdflabel@@=\pgfutil@empty
- \fi
- \fi
- \ifx\pgfmanualpdflabel@@\pgfutil@empty
- \else
- \expandafter\pgfmanualpdfref@\expandafter{\pgfmanualpdflabel@@}{#2}%
- \fi
- \endgroup
+ \begingroup
+ \pgfmanual@handlespeciallabeltokens@in{#1}%
+ %
+ \ifcsname pgfd@lbl@\pgfmanualpdflabel@@\endcsname
+ \else
+ \global\let\pgfmanual@glob=\pgfmanualpdflabel@@
+ \def\pgfmanual@tempa{\foreach \prefix in }%
+ \pgfkeysgetvalue{/pdflinks/search key prefixes in}\pgfmanual@tempb
+ \expandafter\pgfmanual@tempa\expandafter{\pgfmanual@tempb}{%
+ \edef\pgfmanualpdflabel@@{\prefix\pgfmanualpdflabel@@}%
+ \expandafter\pgfmanual@handlespeciallabeltokens@in\expandafter{\pgfmanualpdflabel@@}%
+ \ifcsname pgfd@lbl@\pgfmanualpdflabel@@\endcsname
+ \xdef\pgfmanual@glob{\pgfmanualpdflabel@@}%
+ \breakforeach
+ \fi
+ }%
+ \let\pgfmanualpdflabel@@=\pgfmanual@glob
+ \ifcsname pgfd@lbl@\pgfmanualpdflabel@@\endcsname
+ \else
+ \ifpgfmanualpdfwarnings
+ \begingroup
+ \toks0={#1}%
+ \pgfmanual@warning{pgfmanualpdfref{\the\toks0 }: target label does not exist.}%
+ \endgroup
+ \fi
+ #2%
+ \let\pgfmanualpdflabel@@=\pgfutil@empty
+ \fi
+ \fi
+ \ifx\pgfmanualpdflabel@@\pgfutil@empty
+ \else
+ \expandafter\pgfmanualpdfref@\expandafter{\pgfmanualpdflabel@@}{#2}%
+ \fi
+ \endgroup
}%
\def\pgfmanualpdfref@#1#2{%
- \pgfkeysgetvalue{/pdflinks/internal link prefix}\pgfmanual@temp
- \expandafter\cleanedhyperlink\expandafter{\pgfmanual@temp.#1}{\pgfkeysvalueof{/pdflinks/render hyperlink/.@cmd}{#2}\pgfeov}%
- \ifpgfmanualshowlabels
- \pgfkeysvalueof{/pdflinks/show labels code/.@cmd}{#1}\pgfeov
- \fi
+ \pgfkeysgetvalue{/pdflinks/internal link prefix}\pgfmanual@temp
+ \expandafter\cleanedhyperlink\expandafter{\pgfmanual@temp.#1}{\pgfkeysvalueof{/pdflinks/render hyperlink/.@cmd}{#2}\pgfeov}%
+ \ifpgfmanualshowlabels
+ \pgfkeysvalueof{/pdflinks/show labels code/.@cmd}{#1}\pgfeov
+ \fi
}%
% Handles special tokens in a pdf label which should be treated with
% care.
%
-% For example, backslashes might produce problems.
-% This occurs quite frequently with automatically generated hyperrefs
-% inside of codeexamples where \pgfmanualpdfref will be invoked -
-% there, we get the catcode 12 backslashes.
+% For example, backslashes might produce problems.
+% This occurs quite frequently with automatically generated hyperrefs
+% inside of codeexamples where \pgfmanualpdfref will be invoked -
+% there, we get the catcode 12 backslashes.
% Check for them!
%
% #1: a token list which shall be used either as cross ref or as
@@ -308,24 +308,24 @@
% On output, the macro \pgfmanualpdflabel@@ will be '\edef'ed to the
% new, possibly modified value.
\def\pgfmanual@handlespeciallabeltokens@in#1{%
- \begingroup
- \pgfmanualpdf@installreplacements
- \expandafter\pgfutil@in@\pgfmanual@pretty@backslash{#1}%
- \ifpgfutil@in@
- % assume the backslash is the first char and substitute it:
- \pgfmanualpdfref@substitute@backslash#1\relax
- \else
- \edef\pgfmanualpdflabel@@{#1}%
- \fi
- \def\pgfmanual@tmp{\pgfutilstrreplace{ }{\space}}%
- \expandafter\pgfmanual@tmp\expandafter{\pgfmanualpdflabel@@}%
- \edef\pgfmanualpdflabel@@{\pgfretval}%
- \pgfmath@smuggleone\pgfmanualpdflabel@@
- \endgroup
+ \begingroup
+ \pgfmanualpdf@installreplacements
+ \expandafter\pgfutil@in@\pgfmanual@pretty@backslash{#1}%
+ \ifpgfutil@in@
+ % assume the backslash is the first char and substitute it:
+ \pgfmanualpdfref@substitute@backslash#1\relax
+ \else
+ \edef\pgfmanualpdflabel@@{#1}%
+ \fi
+ \def\pgfmanual@tmp{\pgfutilstrreplace{ }{\space}}%
+ \expandafter\pgfmanual@tmp\expandafter{\pgfmanualpdflabel@@}%
+ \edef\pgfmanualpdflabel@@{\pgfretval}%
+ \pgfmath@smuggleone\pgfmanualpdflabel@@
+ \endgroup
}%
\expandafter\def\expandafter\pgfmanualpdfref@substitute@backslash\expandafter#\expandafter1\pgfmanual@pretty@backslash#2\relax{%
- \edef\pgfmanualpdflabel@@{#1\textbackslash #2}%
+ \edef\pgfmanualpdflabel@@{#1\textbackslash #2}%
}%
% Typesets '#1' in red,\texttt like every declaration. It will also
@@ -337,103 +337,103 @@
%
% \declareandlabel{\controlsequence} can be used as |\controlsequence|
\def\declareandlabel{%
- \begingroup
- \pgfmanual@verb@preparecatcodes@
- \def\pgfmanualprettyprinterhandlecollectedargs##1{%
- \pgfmanualpdflabel##1{\texttt{\declare##1}}% mark: '##1' contains already braces.
- \endgroup
- }%
- \pgfmanualprettyprintercollectargcount1{\relax}%
+ \begingroup
+ \pgfmanual@verb@preparecatcodes@
+ \def\pgfmanualprettyprinterhandlecollectedargs##1{%
+ \pgfmanualpdflabel##1{\texttt{\declare##1}}% mark: '##1' contains already braces.
+ \endgroup
+ }%
+ \pgfmanualprettyprintercollectargcount1{\relax}%
}
-%
+%
% \verbpdfref{\controlsequence more stuff}
% is the same as writing |\controlsequence more stuff|, but the
% *complete* argument is supposed to be one label.
-%
+%
% The difference to \pgfmanualpdfref{...}{} is that the argument is
% supposed to be verbatim text.
\def\verbpdfref{%
- \begingroup
- \pgfmanual@verb@preparecatcodes@
- \def\pgfmanualprettyprinterhandlecollectedargs##1{%
- \pgfmanualpdfref##1{\texttt{##1}}% mark: '##1' contains already braces.
- \endgroup
- }%
- \pgfmanualprettyprintercollectargcount1{\relax}%
+ \begingroup
+ \pgfmanual@verb@preparecatcodes@
+ \def\pgfmanualprettyprinterhandlecollectedargs##1{%
+ \pgfmanualpdfref##1{\texttt{##1}}% mark: '##1' contains already braces.
+ \endgroup
+ }%
+ \pgfmanualprettyprintercollectargcount1{\relax}%
}
% Prepare active vertical bars, |....| for auto-pretty cross
% referencing.
%
-% Example:
+% Example:
% |\pgfkeys| -> will generate a hyperref!
{
- \catcode`\|=12
- \gdef\pgfmanual@verb@bar{|}%
-% \gdef\pgfmanual@verb@collect#1|{%
-% % this command will also handle control sequences.
-% \texttt{\pgfmanualprettyprintpgfkeys{#1}}%
-% \endgroup
-% }%
- \catcode`\|=13
- \gdef\pgfmanual@verb@activebar{|}%
+ \catcode`\|=12
+ \gdef\pgfmanual@verb@bar{|}%
+% \gdef\pgfmanual@verb@collect#1|{%
+% % this command will also handle control sequences.
+% \texttt{\pgfmanualprettyprintpgfkeys{#1}}%
+% \endgroup
+% }%
+ \catcode`\|=13
+ \gdef\pgfmanual@verb@activebar{|}%
}
\def\pgfmanual@verb{%
- \begingroup
- \pgfmanual@verb@preparecatcodes@
- \toksdef\t@pgfmanual@verb=0
- \t@pgfmanual@verb={}%
- \pgfmanual@verb@collect
+ \begingroup
+ \pgfmanual@verb@preparecatcodes@
+ \toksdef\t@pgfmanual@verb=0
+ \t@pgfmanual@verb={}%
+ \pgfmanual@verb@collect
}
% this version of \pgfmanual@verb@collect is less efficient than the
% one uncommented above. BUT: it can auto-detect the case when
% |...| has been provided somewhere where I can't change catcodes!
% The other one would simply fail to compile.
\def\pgfmanual@verb@collect#1{%
- \def\pgfmanual@temp{#1}%
- \ifx\pgfmanual@temp\pgfmanual@verb@bar
- % ok, finish:
- \edef\pgfmanual@verb@collect@next{%
- % this command will also handle control sequences.
- \noexpand\endgroup
- \noexpand\texttt{\noexpand\pgfmanualprettyprintpgfkeys{\the\t@pgfmanual@verb}}%
- }%
- \else
- \ifx\pgfmanual@temp\pgfmanual@verb@activebar
- % ohoh... that should not happen! It means someone invoked
- % |...| within an argument; I couldn't change catcodes.
- % Ok, resort to a simple fallback solution.
- % FIXME : I have just realized that THIS DOESN'T PRESERVE SPACES
- \edef\pgfmanual@verb@collect@next{%
- \noexpand\endgroup
- \noexpand\texttt{\the\t@pgfmanual@verb}%
- }%
- \else
- \t@pgfmanual@verb=\expandafter{\the\t@pgfmanual@verb #1}%
- \let\pgfmanual@verb@collect@next=\pgfmanual@verb@collect
- \fi
- \fi
- \pgfmanual@verb@collect@next
+ \def\pgfmanual@temp{#1}%
+ \ifx\pgfmanual@temp\pgfmanual@verb@bar
+ % ok, finish:
+ \edef\pgfmanual@verb@collect@next{%
+ % this command will also handle control sequences.
+ \noexpand\endgroup
+ \noexpand\texttt{\noexpand\pgfmanualprettyprintpgfkeys{\the\t@pgfmanual@verb}}%
+ }%
+ \else
+ \ifx\pgfmanual@temp\pgfmanual@verb@activebar
+ % ohoh... that should not happen! It means someone invoked
+ % |...| within an argument; I couln't change catcodes.
+ % Ok, resort to a simple fallback solution.
+ % FIXME : I have just realized that THIS DOESN'T PRESERVE SPACES
+ \edef\pgfmanual@verb@collect@next{%
+ \noexpand\endgroup
+ \noexpand\texttt{\the\t@pgfmanual@verb}%
+ }%
+ \else
+ \t@pgfmanual@verb=\expandafter{\the\t@pgfmanual@verb #1}%
+ \let\pgfmanual@verb@collect@next=\pgfmanual@verb@collect
+ \fi
+ \fi
+ \pgfmanual@verb@collect@next
}%
\AtBeginDocument{%
- \ifpgfmanualprettyenabled
- \catcode`\|=13
- \expandafter\let\pgfmanual@verb@activebar=\pgfmanual@verb
- \fi
+ \ifpgfmanualprettyenabled
+ \catcode`\|=13
+ \expandafter\let\pgfmanual@verb@activebar=\pgfmanual@verb
+ \fi
}%
\def\pgfmanual@verb@preparecatcodes@{%
- \let\do\@makeother%
- \dospecials%
- \catcode`\%=12 % THATS IMPORTANT! Do *not* handle comments!
- % these catcodes are expected by the pretty printer...
- %\catcode`\^^M=13
- \catcode`\ =13
- \catcode`\^^I=13
- \expandafter\def\pgfmanual@pretty@activespace{\space}%
- \expandafter\def\pgfmanual@pretty@activetab{\space\space\space\space}%
+ \let\do\@makeother%
+ \dospecials%
+ \catcode`\%=12 % THATS IMPORTANT! Do *not* handle comments!
+ % these catcodes are expected by the pretty printer...
+ %\catcode`\^^M=13
+ \catcode`\ =13
+ \catcode`\^^I=13
+ \expandafter\def\pgfmanual@pretty@activespace{\space}%
+ \expandafter\def\pgfmanual@pretty@activetab{\space\space\space\space}%
}%
\endinput
% vi: ts=4 sw=4