diff options
author | Karl Berry <karl@freefriends.org> | 2006-08-14 00:00:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-08-14 00:00:58 +0000 |
commit | f68c66c2fd38fcd1146a01bbe28f58ed0efc6f79 (patch) | |
tree | 6c52bf9ca94926efe01ce319c811ec0379eef72f /Master/texmf-dist/tex/latex | |
parent | 42bc6d37351f5002d650f9a782eeb7972c7a1703 (diff) |
oberdiek update to get kvoptions 2.2 (2aug06)
git-svn-id: svn://tug.org/texlive/trunk@1948 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex')
-rw-r--r-- | Master/texmf-dist/tex/latex/oberdiek/refcount.sty | 124 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/oberdiek/telprint.sty | 254 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/oberdiek/vpe.sty | 820 |
3 files changed, 254 insertions, 944 deletions
diff --git a/Master/texmf-dist/tex/latex/oberdiek/refcount.sty b/Master/texmf-dist/tex/latex/oberdiek/refcount.sty deleted file mode 100644 index 12baec3f1c1..00000000000 --- a/Master/texmf-dist/tex/latex/oberdiek/refcount.sty +++ /dev/null @@ -1,124 +0,0 @@ -% File: refcount.sty -% Version: 2000/09/07 v2.0 -% Author: Heiko Oberdiek <oberdiek@ruf.uni-freiburg.de> -% -% Function: Converting references to numbers. -% -% Copyright: Copyright (C) 1998, 2000 Heiko Oberdiek. -% -% This program may be distributed and/or modified under -% the conditions of the LaTeX Project Public License, -% either version 1.2 of this license or (at your option) -% any later version. The latest version of this license -% is in -% http://www.latex-project.org/lppl.txt -% and version 1.2 or later is part of all distributions -% of LaTeX version 1999/12/01 or later. -% -% Use: -% * Commands similar to LaTeX's \setcounter and \addtocounter, -% but that extracts the number value from a reference: -% \setcounterref, \addtocounterref -% \setcounterpageref, \addtocounterpageref -% They take two arguments: -% \...counter...ref{<LaTeX counter>}{<reference>} -% An undefined references produces the usual LaTeX warning -% and its value is assumed to be zero. -% Example: -% \newcounter{ctrA} -% \newcounter{ctrB} -% \refstepcounter{ctrA}\label{ref:A} -% \setcounterref{ctrB}{ref:A} -% \addtocounterpageref{ctrB}{ref:A} -% * Commands that can be used in expandible contexts: -% \getrefnumber, \getpagerefnumber -% They take one argument, the reference: -% \get...refnumber{<reference>} -% Because warnings and assignments cannot be used in -% expandible contexts, undefined references do not -% produce a warning, their values are assumed to be zero. -% Example: -% \label{ref:here}% somewhere -% \ifodd\getpagerefnumber{ref:here}% -% reference is on an odd page -% \else -% reference is on an even page -% \fi -% * The default for undefined references can be changed -% with macro \setrefcountdefault, for example this -% package calls: -% \setrefcountdefault{0} -% * This method of extracting the number is more safe -% than the use of the reference directly, because -% there are packages such as hyperref, that add -% additional stuff, so that the reference cannot -% be used as number any more. -% * If the reference does not contain a number, -% assignments to a counter will fail of course. -% * Tested with packages hyperref and calc. -% -% History: -% 1998/04/08 v1.0: -% * First public release, written as answer in the -% newsgroup `comp.text.tex' in the thread -% `Re: Adding a \ref to a counter?', date: 1998/08/04. -% 2000/09/07 v2.0: -% * Documentation added. -% * LPPL 1.2 -% * Package rewritten, new commands added. -% -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{refcount} - [2000/09/07 v2.0 Converting references to numbers (HO)] - -\def\setrefcountdefault#1{% - \def\rc@default{#1}% -} -\setrefcountdefault{0} - -% \def\@car#1#2\@nil{#1} % defined in LaTeX kernel -\def\rc@cartwo#1#2#3\@nil{#2} - -% Generic command for "\{set,addto}counter{page,}ref": -% #1: \setcounter, \addtocounter -% #2: \@car (for \ref), \@cartwo (for \pageref) -% #3: LaTeX counter -% #4: reference -\def\rc@set#1#2#3#4{% - \expandafter\ifx\csname r@#4\endcsname\relax - \protect\G@refundefinedtrue % LaTeX: rerun warning - \@latex@warning{Reference `#4' on page \thepage\space - undefined}% - #1{#3}{\rc@default}% - \else - #1{#3}{% - \expandafter\expandafter\expandafter#2% - \csname r@#4\endcsname\rc@default\rc@default\@nil - }% - \fi -} - -% user commands: - -\newcommand*{\setcounterref}{\rc@set\setcounter\@car} -\newcommand*{\addtocounterref}{\rc@set\addtocounter\@car} -\newcommand*{\setcounterpageref}{\rc@set\setcounter\rc@cartwo} -\newcommand*{\addtocounterpageref}{\rc@set\addtocounter\rc@cartwo} - -\newcommand*{\getrefnumber}[1]{% - \expandafter\ifx\csname r@#1\endcsname\relax - \rc@default - \else - \expandafter\expandafter\expandafter\@car - \csname r@#1\endcsname\@nil - \fi -} -\newcommand*{\getpagerefnumber}[1]{% - \expandafter\ifx\csname r@#1\endcsname\relax - \rc@default - \else - \expandafter\expandafter\expandafter\rc@cartwo - \csname r@#1\endcsname\rc@default\rc@default\@nil - \fi -} -\endinput diff --git a/Master/texmf-dist/tex/latex/oberdiek/telprint.sty b/Master/texmf-dist/tex/latex/oberdiek/telprint.sty new file mode 100644 index 00000000000..3216a52dca6 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/telprint.sty @@ -0,0 +1,254 @@ +% File: telprint.sty +% Version: 2006/02/12 v1.6 +% Author: Heiko Oberdiek +% Email: <oberdiek@uni-freiburg.de> +% +% Copyright: Copyright (C) 2006 Heiko Oberdiek. +% +% This work may be distributed and/or modified under +% the conditions of the LaTeX Project Public License, +% either version 1.3 of this license or (at your option) +% any later version. The latest version of this license +% is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions +% of LaTeX version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Heiko Oberdiek. +% +% Function: This is a very old package that I have written +% to format phone numbers. It follows German +% conventions and the documentation is in German +% at the end of this file. :-( +% It follows a short overview in English: +% +% Use: LaTeX: +% \usepackage{telprint} +% \telprint{123/456-789} +% plain: +% \input telprint.sty +% \telprint{123/456-789} +% +% \telprint{...} formats the explicitly given number. +% Digits, spaces and some special characters +% ('+', '/', '-', '(', ')', '~', ' ') are supported. +% Numbers are divided into groups of two digits from the right. +% Examples: +% \telprint{0761/12345} ==> 07\,61/1\,23\,45 +% \telprint{01234/567-89} ==> 0\,12\,34/5\,67\leavevmode\hbox{-}89 +% \telprint{+49 (6221) 297} ==> +49~(62\,21)~2\,97 +% +% The output of the configured by +% \telhyphen, \telslash, \telleftparen, \telrightparen, \telplus, +% \teltilde. +% Example: +% \telslash{\,/\,} +% \telprint{12/34} ==> 12\,/\,34 +% +% \telspace configures the space between digit groups. +% +% \telnumber only formats a number in digit groups; special +% characters are not recognized. +% +% +\ifx\telprint\UnDeFiNeD +% \fi in derselben Zeile wie \endinput oder \expandafter verwenden! +\else\endinput\fi + +\message{Package `telprint' 1.6, 12.02.2006 % + Copyright (c) 1996, 1997, 2004, 2005, 2006 by Heiko Oberdiek.} + +\ifx\DeclareRobustCommand\UnDeFiNeD + \def\DeclareRobustCommand*#1[1]{\def#1##1} + \def\TELreset{\let\DeclareRobustCommand=\UnDeFiNeD} + \immediate\write-1{Package `telprint' warning: % + Macros are not robust!} +\else + \let\TELreset=\relax +\fi + +\DeclareRobustCommand*{\telspace}[1]{\def\TELspace{#1}} +\telspace{{}$\,${}} + +\DeclareRobustCommand*{\telhyphen}[1]{\def\TELhyphen{#1}} +\telhyphen{\leavevmode\hbox{-}}% \hbox zur Verhinderung der Trennung + +\DeclareRobustCommand*{\telslash}[1]{\def\TELslash{#1}} +\telslash{/}% + +\DeclareRobustCommand*{\telleftparen}[1]{\def\TELleftparen{#1}} +\telleftparen{(}% + +\DeclareRobustCommand*{\telrightparen}[1]{\def\TELrightparen{#1}} +\telrightparen{)}% + +\DeclareRobustCommand*{\telplus}[1]{\def\TELplus{#1}} +\telplus{+}% + +\DeclareRobustCommand*{\teltilde}[1]{\def\TELtilde{#1}} +\teltilde{~}% + +\newtoks\TELtoks + +\def\TELnumber#1#2\TELnumberEND{% + \begingroup + \def\0{#2}% + \expandafter\endgroup + \ifx\0\empty + \TELtoks=\expandafter{\the\TELtoks#1}% + \ifnum\TELswitch=0 + \def\TELx{\TELspace}\def\TELy{}% + \else + \def\TELx{}\def\TELy{\TELspace}% + \fi + \the\TELtoks + \else + \ifnum\TELswitch=0 + \TELtoks=\expandafter{\the\TELtoks#1\TELx}% + \def\TELswitch{1}% + \else + \TELtoks=\expandafter{\the\TELtoks#1\TELy}% + \def\TELswitch{0}% + \fi + \TELnumber#2\TELnumberEND + \fi +} + +\DeclareRobustCommand*{\telnumber}[1]{% + \TELtoks={}% + \def\TELswitch{0}% + \TELnumber#1{}\TELnumberEND +} + + +\def\TELsplit{\futurelet\TELfuture\TELdosplit} + +\def\TELdosplit#1#2\TELsplitEND +{% + \def\TELsp{ }% + \expandafter\ifx\TELsp\TELfuture + \let\TELfuture=\relax + \expandafter\telnumber\expandafter{\the\TELtoks}~% + \telprint{#1#2}% Das Leerzeichen kann nicht #1 sein! + \else + \def\TELfirst{#1}% + \ifx\TELfirst\empty + \expandafter\telnumber\expandafter{\the\TELtoks}% + \TELtoks={}% + \else\if-\TELfirst + \expandafter\telnumber\expandafter{\the\TELtoks}\TELhyphen + \telprint{#2}% + \else\if/\TELfirst + \expandafter\telnumber\expandafter{\the\TELtoks}\TELslash + \telprint{#2}% + \else\if(\TELfirst + \expandafter\telnumber\expandafter{\the\TELtoks}\TELleftparen + \telprint{#2}% + \else\if)\TELfirst + \expandafter\telnumber\expandafter{\the\TELtoks}\TELrightparen + \telprint{#2}% + \else\if+\TELfirst + \expandafter\telnumber\expandafter{\the\TELtoks}\TELplus + \telprint{#2}% + \else\def\TELtemp{~}\ifx\TELtemp\TELfirst + \expandafter\telnumber\expandafter{\the\TELtoks}\TELtilde + \telprint{#2}% + \else + \TELtoks=\expandafter{\the\TELtoks#1}% + \TELsplit#2{}\TELsplitEND + \fi\fi\fi\fi\fi\fi\fi + \fi +} + +\DeclareRobustCommand*{\telprint}[1]{% + \TELtoks={}% + \TELsplit#1{}\TELsplitEND +} + +\TELreset\let\TELreset=\UnDeFiNeD + +\endinput + +% _History_ +% * Version 1.0 vom 28.11.1996 +% - Erste lauffaehige Version. +% - Nur '-' und '/' als zulaessige Sonderzeichen. +% * Version 1.1 vom 16.09.1997 +% - Dokumentation und Kommentare (Posting in de.comp.text.tex). +% - Erweiterung um Sonderzeichen '(', ')', '+', '~' und ' '. +% - Trennungsverhinderung am "hyphen". +% * Version 1.2 vom 16.10.1997 +% - Schutz vor wiederholtem Einlesen. +% - Unter LaTeX2e Nutzung des \DeclareRobustCommand-Features. +% * Version 1.3 vom 09.12.1997 +% - Temporaere Variable eingespart. +% * Version 1.4 vom 02.11.2004 +% - Fehler in der Dokumentation korrigiert. +% * Version 1.5 vom 30.09.2005 +% - Konfigurierbare Symbolde: '/', '(', ')', '+' und '~'. +% * Version 1.6 vom 12.02.2006 +% - LPPL 1.3. +% - Kurze Uebersicht in Englisch. +% - CTAN. +% +% _Dokumentation_ +% * \telprint#1 +% Der eigentliche Anwenderbefehl zur formatierten Ausgabe von +% Telefonnummern. Diese duerfen dabei nur als Zahlen angegeben +% werden(, da sie tokenweise analysiert werden). +% Als Trenn- oder Sonderzeichen werden unterstuetzt: +% '+', '/', '-', '(', ')', '~', ' ' +% Einfache Leerzeichen werden erkannt und durch Tilden ersetzt, um +% Trennungen in der Telefonnummer zu verhindern. (Man beachte aus +% gleichem Grunde die \hbox bei '-'.) +% Beispiele: +% \telprint{0761/12345} ==> 07\,61/1\,23\,45 +% \telprint{01234/567-89} ==> 0\,12\,34/5\,67\leavevmode\hbox{-}89 +% \telprint{+49 (6221) 297} ==> +49~(62\,21)~2\,97 +% +% Der Rest enthaelt eher Technisches: +% * \telspace#1 +% Mit diesem Befehl wird der Abstand zwischen den Zifferngruppen +% angegeben (Default: \,). +% (Durch \telspace{} kann dieser zusaetzliche Abstand abgestellt +% werden.) +% * \telhyphen#1 +% Dieser Befehl gibt die Art des Bindestriches, wie er ausgegeben +% werden soll. In der Eingabe darf jedoch nur der einfache +% Bindestrich stehen: +% \telprint{123-45}, jedoch NIE \telprint{123--45}! +% Kopka-Bindestrich-Fans geben an: +% \telhyphen{\leavevmode\hbox{--}} +% * \telslash#1, \telleftparen#1, \telrightparen#1, \telplus#1, +% \teltilde +% Diese Befehle konfigurieren die Zeichen '/', '(', ')', '+' +% und '~'. Sie funktionieren analog zu \telhyphen. +% * \telnumber#1 +% Richtung interner Befehl: Er dient dazu, eine Zifferngruppe +% in Zweiergruppen auszugeben. +% Die einzelnen Zahlen werden im Tokenregister \TELtoks +% gespeichert. Abwechselnd werden dabei zwischen zwei Token +% (Zahlen) \TELx bzw. \TELy eingefuegt, abhaengig von dem +% wechselnden Wert von \TELswitch. Zum Schluss kann dann einfach +% festgestellt werden ob die Nummer nun eine geradzahlige oder +% ungeradzahlige Zahl von Ziffern aufwies. Dem entsprechend wird +% \TELx mit dem Zusatzabstand belegt und \TELy leer definiert +% oder umgekehrt. ) +% * \TEL... interne Befehle, Technisches: +% \TELsplit dient zur Aufteilung einer zusammengesetzten +% Telefonnummer (Vorwahl, Hauptnummer, Nebenstelle). In dieser +% Implementation werden als Trennzeichen nur '/' und '-' erkannt. +% Die einzelnen Bestandteile wie Vorwahl werden dann dem Befehl +% \telnumber zur Formatierung uebergeben. +% * Die Erkennung von einfachen Leerzeichen ist um einiges +% schwieriger: Die Tokentrennung ueber Parameter #1#2 funktioniert +% nicht fuer einfache Leerzeichen, da TeX sie _niemals_ als +% eigenstaendige Argumente behandelt!!! (The TeXbook, Chapter 20, +% p. 201) +% (Anmerkung am Rande: Deshalb funktionieren die entsprechenden +% Tokenmakros auf S. 149 des Buches "Einfuehrung in TeX" von +% N. Schwarz (3. Aufl.) nicht, wenn im Tokenregister als erstes +% ein einfaches Leerzeichen steht!) +% diff --git a/Master/texmf-dist/tex/latex/oberdiek/vpe.sty b/Master/texmf-dist/tex/latex/oberdiek/vpe.sty deleted file mode 100644 index 0271ce64df6..00000000000 --- a/Master/texmf-dist/tex/latex/oberdiek/vpe.sty +++ /dev/null @@ -1,820 +0,0 @@ -% File: vpe.sty -% Project: vpe -% Version: 2000/09/15 v0.1 -% Author: Heiko Oberdiek -% -% Function: Source specials for pdf files. -% -% Copyright: Copyright (C) 2000 Heiko Oberdiek. -% -% This program may be distributed and/or modified under -% the conditions of the LaTeX Project Public License, -% either version 1.2 of this license or (at your option) -% any later version. The latest version of this license -% is in -% http://www.latex-project.org/lppl.txt -% and version 1.2 or later is part of all distributions -% of LaTeX version 1999/12/01 or later. -% -% See file `vpe.txt' for a list of files that -% belong to this project. -% -% Requirement: * Linux/Unix or Windows/Dos -% * enabled \write18 feature. -% * LaTeX2e -% -% Use: * \usepackage{vpe} -% See file `vpe.txt' for further documentation. -% -% History: 2000/09/15 v0.1: first public release -% -% \vpe@ is the prefix for internal command names. -% -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{vpe}% -[2000/09/15 v0.1 Source specials for pdf files (HO)] - -\RequirePackage{keyval} - -%*** options - -%*** active/inactive -\DeclareOption{active}{\vpe@oktrue} -\DeclareOption{inactive}{\vpe@okfalse} -\newif\ifvpe@ok -\vpe@oktrue - -%*** dupes -\DeclareOption{dupes}{\vpe@dupestrue} -\DeclareOption{nodupes}{\vpe@dupesfalse} -\newif\ifvpe@dupes -\vpe@dupestrue - -%*** form, revert, acroform -\DeclareOption{form}{\vpe@formtrue} -\DeclareOption{noform}{\vpe@formfalse} -\newif\ifvpe@form -\vpe@formfalse -\DeclareOption{acroform}{\vpe@acroformtrue} -\DeclareOption{noacroform}{\vpe@acroformfalse} -\newif\ifvpe@acroform -\vpe@acroformtrue - -%*** debug -\DeclareOption{debug}{% - \def\vpe@debug#1{\typeout{*** #1 ***}}% -} -\let\vpe@debug\@gobble - -%*** system -\DeclareOption{linux}{\def\vpe@system{linux}} -\DeclareOption{unix}{\def\vpe@system{linux}} -\DeclareOption{win}{\def\vpe@system{win}} -\DeclareOption{dos}{\def\vpe@system{win}} -\let\vpe@system\@empty - - -%*** driver specific options -\DeclareOption{pdftex}{\let\vpe@annot\vpe@annotpdftex} -\DeclareOption{dvips}{\let\vpe@annot\vpe@annotdvips} -\DeclareOption{ps2pdf}{\let\vpe@annot\vpe@annotdvips} -\DeclareOption{pdfmark}{\let\vpe@annot\vpe@annotdvips} -\def\vpe@annotpdftex#1{\pdfannot\vpe@rule{#1}} -\def\vpe@dvips@pdfmark#1{\special{ps:SDict begin[#1 pdfmark end}} -\def\vpe@annotdvips#1{% - \vpe@dvips@pdfmark{% - /Rect[% - currentpoint - exch 1 72 div Resolution mul sub - exch \vpe@depth\space 1 add 72 div Resolution mul add - currentpoint - exch \vpe@width\space 1 add 72 div Resolution mul add - exch \vpe@height\space 1 add 72 div Resolution mul sub% - ]% - #1% - /ANN% - }% -} -\let\vpe@annot\vpe@annotdvips - - -\DeclareOption{everyhbox}{\vpe@everyhboxtrue} -\DeclareOption{noeveryhbox}{\vpe@everyhboxfalse} -\newif\ifvpe@everyhbox - -%*** disable options -\DeclareOption*{% - \expandafter\let\csname vpeorg@\expandafter - \@gobbletwo\CurrentOption\@empty\@empty\endcsname \@empty% -} - -%*** keyval options -\def\vpe@revert#1#2{% - \expandafter\ifx\csname vpe@#1\endcsname\relax - \else - \csname vpe@#1% - \@gobble\iftrue\csname if#1\endcsname - false% - \else - true% - \fi - \endcsname - \fi -} - -\define@key{vpe}{active}[true]{\csname vpe@ok#1\endcsname} -\define@key{vpe}{inactive}[true]{\vpe@revert{ok}{#1}} -\define@key{vpe}{dupes}[true]{\csname vpe@dupes#1\endcsname} -\define@key{vpe}{nodupes}[true]{\vpe@revert{dupes}{#1}} -\define@key{vpe}{form}[true]{\csname vpe@form#1\endcsname} -\define@key{vpe}{noform}[true]{\vpe@revert{form}{#1}} -\define@key{vpe}{acroform}[true]{\csname vpe@acroform#1\endcsname} -\define@key{vpe}{noacroform}[true]{\vpe@revert{acroform}{#1}} -\define@key{vpe}{command}{\def\vpe@command{#1}} -\define@key{vpe}{system}{\def\vpe@system{#1}} -\define@key{vpe}{width}{\def\vpe@width{#1}} -\define@key{vpe}{height}{\def\vpe@height{#1}} -\define@key{vpe}{depth}{\def\vpe@depth{#1}} -\define@key{vpe}{color}{\def\vpe@color{#1}} -\define@key{vpe}{border}{\def\vpe@border{#1}} -\define@key{vpe}{flag}{\def\vpe@flag{#1}} -\define@key{vpe}{attr}{\def\vpe@attr{#1}} -\define@key{vpe}{application}{\def\vpe@application{#1}} -\define@key{vpe}{parameters}{\def\vpe@parameters{#1}} -\define@key{vpe}{progname}{\def\vpe@progname{#1}} -\define@key{vpe}{everyhbox}[true]{\csname vpe@everyhbox#1\endcsname} -\def\vpesetup{\setkeys{vpe}} -\def\vpe@command{vpe} -\def\vpe@width{12} -\def\vpe@height{12} -\def\vpe@depth{2} -\def\vpe@border{0 0 1} -\def\vpe@color{1 1 0} -\def\vpe@flag{0}% 8 = not zoomed, 16 = not rotated -\let\vpe@attr\@empty -\def\vpe@application{pfe.exe} -\def\vpe@parameters{-g $d $s} -\newif\ifvpe@pdftex -\ifx\eTeXversion\@undefined - \def\vpe@progname{latex} -\else - \def\vpe@progname{elatex} -\fi -\ifx\pdfoutput\@undefined -\else - \ifx\pdfoutput\relax - \else - \ifcase\pdfoutput - \else - \let\vpe@annot\vpe@annotpdftex - \vpe@pdftextrue - \ifx\eTeXversion\@undefined - \def\vpe@progname{pdflatex}% - \else - \def\vpe@progname{pdfelatex}% - \fi - \fi - \fi -\fi - -%*** option processing - -\InputIfFileExists{vpe.cfg}{}{} - -\ProcessOptions - -%*** help file -% File for read informations of commands -% launched by \write18: -\newread\vpe@read -\immediate\openout\vpe@read=\jobname.vpe -\immediate\closeout\vpe@read -\openin\vpe@read=\jobname.vpe - -%*** get system info -\ifx\vpe@system\@empty - \immediate\write18{\vpe@command\space -system \jobname.vpe} - \def\vpesystem#1{\gdef\vpe@system{#1}}% - \begingroup - \endlinechar-1 % - \read\vpe@read to \vpe@temp - \vpe@temp - \endgroup - \ifx\vpe@system\@empty - \PackageWarningNoLine{vpe}{% - Option \string`system\string' is not specified and\MessageBreak - the automatic detection failed,\MessageBreak - therefore package loading is aborted% - }% - \closein\vpe@read - \let\VPE\relax - \expandafter\expandafter\expandafter\endinput - \fi -\fi -\let\vpesystem\@gobble - -\newif\ifvpe@linux -\def\vpe@temp{linux} -\ifx\vpe@system\vpe@temp - \vpe@linuxtrue -\else - \def\vpe@temp{win} - \ifx\vpe@system\vpe@temp - \else - \PackageWarningNoLine{vpe}{% - Unknown value `\vpe@system' of option \string`system\string',% - \MessageBreak - therfore package loading is aborted% - }% - \closein\vpe@read - \let\VPE\relax - \expandafter\expandafter\expandafter\endinput - \fi -\fi - -%*** /AcroForm in the catalog for `revert' menu item of AR4.05 -\ifvpe@acroform - \ifvpe@pdftex - \AtEndDocument{% - \@ifundefined{SubmitObject}{% - \pdfcatalog{/AcroForm<</Fields[]/NeedAppearances true>>}% - }{% - % /AcroForm already set by hyperref's pdftex driver - }% - }% - \else - \vpe@dvips@pdfmark{% - \string{Catalog\string}% - <</AcroForm<</Fields[]/NeedAppearances true>>>>% - /PUT% - }% - \fi -\fi - -%*** form variant - -% definition without form: -\def\vpe@insertmark{% - \vpe@annot{% - /Subtype/Link% - \ifx\vpe@border\vpe@borderdefault - \else - /Border[\vpe@border]% - \fi - \ifx\vpe@color\vpe@colordefault - \else - /C[\vpe@color]% - \fi - \ifnum\vpe@flag=0 - \else - /F \vpe@flag - \fi - /A<<% - /Type/Action% - /S/Launch% - \ifvpe@linux - /F(\vpe@temp\vpe@removeslash\vpe@peekfile.vpe)% - \else - /Win<<% - /F(\vpe@application)% - /P(\vpe@temp)% - >>% - \fi - >>% - \vpe@attr - }% -}% - -\ifvpe@form - \ifvpe@pdftex - - \RequirePackage[pdftex]{color} - \RequirePackage{pifont} - - \newcount\vpe@count - \vpe@count0 - - \setbox\@tempboxa=\hbox{% - \color{yellow}% - \raisebox{-.4\totalheight}{% - \ding{56}% - }% - } - \edef\vpe@mark@width{\the\wd\@tempboxa} - \edef\vpe@mark@height{\the\ht\@tempboxa} - \edef\vpe@mark@depth{\the\dp\@tempboxa} - \immediate\pdfxform\@tempboxa - \edef\vpe@mark@objN{ \the\pdflastxform\space 0 R} - \setbox\@tempboxa=\hbox{% - \colorbox{yellow}{% - \color{black}% - \ding{56}% - }% - } - \immediate\pdfxform\@tempboxa - \edef\vpe@mark@objD{ \the\pdflastxform\space 0 R} - - \def\vpe@insertmark{% - \global\advance\vpe@count1 % - \begingroup - \setbox\@tempboxa\hbox{% - \normalfont - \kern\vpe@mark@width - \scriptsize\ttfamily - \setlength{\fboxsep}{0.5ex}% - \colorbox{yellow}{% - \color{black}% - \space\vpe@peekfile, \vpe@line - }% - }% - \dimen@\ht\@tempboxa - \advance\dimen@-\vpe@mark@height - \advance\dimen@-\vpe@mark@depth - \edef\vpe@temp{% - width\the\wd\@tempboxa - height\the\dimen@ - }% - \dimen@\dp\@tempboxa - \advance\dimen@\vpe@mark@height - \advance\dimen@\vpe@mark@depth - \edef\vpe@temp{% - \vpe@temp - depth\the\dimen@ - }% - \immediate\pdfxform\@tempboxa - \pdfannot\vpe@temp{% - /Subtype/Widget% - /FT/Btn% - /Ff 65537% readonly (bit 1) + checkbox button (bit 17) - /T(v\the\vpe@count)% - /AS/X% - /AP<</N<</F \the\pdflastxform\space 0 R>>>>% - }% - \endgroup - \pdfannot width\vpe@mark@width - height\vpe@mark@height - depth\vpe@mark@depth{% - /Subtype/Widget% - /FT/Btn% - /Ff 65536% - /T(m\the\vpe@count)% - /H/P% - /AP<</N\vpe@mark@objN/D\vpe@mark@objD>>% - /AA<<% - /E<<% - /Type/Action% - /S/SetState% - /T(v\the\vpe@count)% - /AS/F% - >>% - /X<<% - /Type/Action% - /S/SetState% - /T(v\the\vpe@count)% - /AS/X% - >>% - >>% - /A<<% - /Type/Action% - /S/Launch% - \ifvpe@linux - /F(\vpe@temp\vpe@removeslash\vpe@peekfile.vpe)% - \else - /Win<<% - /F(\vpe@application)% - /P(\vpe@temp)% - >>% - \fi - >>% - \vpe@attr - }% - }% - \fi -\fi -\let\vpe@formtrue\relax -\let\vpe@formfalse\relax - -%*** src marker - -\def\vpe@src{\vpe@special{\the\inputlineno}} -\def\vpe@src@sphack{\vpe@special@sphack{\the\inputlineno}} -\def\vpe@srcfirst{\vpe@special1} -\def\vpe@srclast{\vpe@special\vpe@peeklast} - -\let\VPE\vpe@src - -\newif\ifvpe@document -\AtBeginDocument{% - \vpe@documenttrue - \vpe@src -} - -\def\vpe@special{% - \ifcase - \ifvpe@ok - \ifvpe@document - \ifnum\lastpenalty=\z@ - \ifdim\lastskip=\z@ - \else 1% - \fi - \else 1% - \fi - \else 1% - \fi - \else 1% - \fi - 0 % - \expandafter\vpe@@special - \else - \expandafter\@gobble - \fi -} -\def\vpe@special@sphack{% - \ifcase - \ifvpe@ok - \ifvpe@document - \ifhmode - \else 1% - \fi - \else 1% - \fi - \else 1% - \fi - 0 % - \expandafter\vpe@@special - \else - \expandafter\@gobble - \fi -} -\let\vpe@lastspecial\@empty -\def\vpe@@special#1{% - \begingroup - \vpe@okfalse % prevent nesting - \let\vpe@temp\vpe@lastspecial - \xdef\vpe@lastspecial{#1 \vpe@peekfile}% - \ifvpe@dupes - \vpe@@@special{#1}% - \else - \ifx\vpe@temp\vpe@lastspecial - \else - \vpe@@@special{#1}% - \fi - \fi - \endgroup -} -\def\vpe@@@special#1{% - \count@=#1\relax - \ifnum\count@<1 \count@=1 \fi - \edef\vpe@line{\the\count@}% - \ifvpe@linux - \let\vpe@temp\@empty - \expandafter\vpe@scan\the\count@\@nil - \vpe@debug{SRC: \vpe@peekfile, \vpe@line\space(\vpe@temp)}% - \else - \let\vpe@temp\vpe@parameters - \expandafter\vpe@setline\vpe@temp$d\@nil{\the\count@}% - \expandafter\vpe@setfile\vpe@temp$s\@nil\vpe@peekfile - \vpe@debug{SRC: \vpe@peekfile, \vpe@line}% - \fi - \vpe@insertmark -} - -\def\vpe@rule{% - width\vpe@width bp height\vpe@height bp depth\vpe@depth bp% -} -\def\vpe@borderdefault{0 0 1} -\def\vpe@colordefault{0 0 0} -\def\vpe@scan#1#2\@nil{% - \count@=#1\relax - \ifnum\count@>\ifx\vpe@temp\@empty 5 \else 4 \fi - \advance\count@ by -5 - \def\p{.}% - \else - \let\p\@empty - \fi - \@whilenum\count@>0 \do{% - \advance\count@ by -1 - \edef\vpe@temp{\vpe@temp/}% - }% - \edef\vpe@temp{\vpe@temp\p./}% - \ifx\\#2\\% - \else - \@ReturnAfterFi{% - \vpe@scan#2\@nil - }% - \fi -} -\long\def\@ReturnAfterFi#1\fi{\fi#1} - -\def\vpe@removeslash#1{% - \if/#1% - \else - #1% - \fi -} - -\def\vpe@setline#1$d#2\@nil#3{% - \ifx\limits#2\limits - \else - \edef\vpe@temp{#1#3\vpe@remline#2\@nil}% - \fi -} -\def\vpe@remline#1$d\@nil{#1} -\def\vpe@setfile#1$s#2\@nil#3{% - \ifx\limits#2\limits - \else - \def\vpe@temp{#1#3\vpe@remfile#2\@nil}% - \fi -} -\def\vpe@remfile#1$s\@nil{#1} - -%*** def check -\def\vpe@redef#1{% - \expandafter\ifx\csname vpeorg@#1\endcsname\@empty - \begingroup - \let\on@line\@empty - \PackageInfo{vpe}{src marker in % - \expandafter\string\csname #1\endcsname\space - disabled% - }% - \endgroup - \expandafter\@gobble - \else - \expandafter\let - \csname vpeorg@#1\expandafter\endcsname - \csname #1\endcsname - \expandafter\@firstofone - \fi -} -% #1: active character or special case (eg: ~, \\) -% #2: string for command names (eg: TILDE, NL) -\def\vpe@redefspecial#1#2{% - \expandafter\ifx\csname vpeorg@#2\endcsname\@empty - \begingroup - \let\on@line\@empty - \PackageInfo{vpe}{src marker in \string#1 disabled}% - \endgroup - \expandafter\@gobble - \else - \expandafter\let\csname vpeorg@#2\endcsname#1% - \expandafter\@firstofone - \fi -} -\def\vpe@check#1{% - \expandafter\ifx\csname vpeorg@#1\endcsname\@empty - \begingroup - \let\on@line\@empty - \PackageInfo{vpe}{src marker in % - \expandafter\string\csname #1\endcsname\space - disabled% - }% - \endgroup - \expandafter\@gobble - \else - \expandafter\@firstofone - \fi -} - -%*** file name stack -\newcount\vpe@sp % stack pointer -\global\vpe@sp=0 - -\newif\ifvpe@stack -\vpe@stacktrue -\AtEndDocument{\global\vpe@stackfalse} - -\def\vpe@push#1{% - \ifvpe@stack - \global\advance\vpe@sp by 1 - \vpe@debug{PUSH(\the\vpe@sp): #1}% - \immediate\write18{% - \vpe@command\space - -sty - -progname=\vpe@progname\space - \ifx\vpe@debug\@gobble\else -v \fi - #1 % - \jobname.vpe% - }% - \gdef\vpe@file{#1}% - \gdef\vpe@last{10000}% - \ifeof\vpe@read - \vpe@debug{EOF: \jobname.vpe}% - \else - \begingroup - \endlinechar-1 % - \read\vpe@read to \vpe@temp - \vpe@temp - \endgroup - \fi - \vpe@debug{% - LEVEL: \the\vpe@sp, FILE: \vpe@file, LAST: \vpe@last - }% - \expandafter\xdef\csname vpeF\the\vpe@sp\endcsname{\vpe@file}% - \expandafter\xdef\csname vpeL\the\vpe@sp\endcsname{\vpe@last}% - \fi -} -\def\vpeentry#1#2{% - \gdef\vpe@file{#1}% - \gdef\vpe@last{#2}% -} -\def\vpe@pop{% - \ifvpe@stack - \global\advance\vpe@sp by -1 % - \vpe@debug{POP(\the\vpe@sp)}% - \fi -} -\def\vpe@peekfile{% - \csname vpeF\the\vpe@sp\endcsname -} -\def\vpe@peeklast{% - \csname vpeL\the\vpe@sp\endcsname -} - -\vpe@push{\jobname} - -\AtEndDocument{% - \vpe@debug{MAKE SYMBOL LINKS}% - \immediate\write18{% - \vpe@command\space - \ifx\vpe@debug\@gobble\else -v \fi\jobname.pdf% - }% -} - -%*** file input -\def\vpe@doinput#1#2{% - \VPE - \vpe@push{#2}% - \vpe@srcfirst - #1{#2}% - \vpe@srclast - \vpe@pop - \VPE -} - -\vpe@redef{input}{% - \def\input{\@ifnextchar\bgroup\vpe@input\vpeorg@input} - \def\vpe@input{\vpe@doinput\vpeorg@input} -} -\vpe@redef{@input}{% - \def\@input#1{% - \IfFileExists{#1}\@firstofone\@gobble\vpe@doinput - \vpeorg@@input{#1}% - }% -} - -\vpe@redef{include}{\def\include{\vpe@doinput\vpeorg@include}} - -\vpe@redef{newpage}{% - \def\newpage{% - \VPE - \vpeorg@newpage - \vpe@emptyeverypar - }% -} -\vpe@redef{clearpage}{\def\clearpage{\vpeorg@clearpage\VPE}} - -%*** everypar -\def\vpe@everypar{\everypar\expandafter{\the\everypar\VPE}} -\def\vpe@emptyeverypar{% - \edef\vpe@temp{\the\everypar}% - \ifx\vpe@temp\@empty - \everypar{\VPE}% - \fi -} -\iffalse -\vpe@redef{everypar}{% - \def\everypar#1#{\vpe@everypar} - \def\vpe@everypar#1{% - \vpeorg@everypar{#1\VPE}% - }% -} -\fi -\vpe@redef{document}{% - \def\document{% - \global\vpe@stackfalse - \vpeorg@document - \global\vpe@stacktrue - \VPE - \vpe@emptyeverypar - \ignorespaces - }% -} -\vpe@redef{@item}{% - \def\@item[#1]{% - \vpeorg@@item[{#1}]% - \VPE - \vpe@doubleeverypar - \ignorespaces - }% -} -\iffalse -\vpe@redef{@verbatim}{% - \def\@verbatim{% - \vpeorg@@verbatim - \vpe@everypar - }% -} -\fi -\vpe@check{@doendpe}{% - \def\@doendpe{% - \@endpetrue - \def\par{% - \@restorepar - \everypar{\VPE}% - \par - \@endpefalse - }% - \everypar{% - {\setbox\z@\lastbox}% - \everypar{\VPE}% - \@endpefalse - \VPE - }% - }% -} -\vpe@redef{@arrayparboxrestore}{% - \def\@arrayparboxrestore{% - \vpeorg@@arrayparboxrestore - \vpe@everypar - }% -} -\vpe@redef{@xsect}{% - \def\@xsect#1{% - \vpeorg@@xsect{#1}% - \vpe@doubleeverypar - \ignorespaces - }% -} -\vpe@redef{@afterheading}{% - \def\@afterheading{% - \vpeorg@@afterheading - \vpe@doubleeverypar - }% -} -\vpe@redef{@setminipage}{% - \def\@setminipage{% - \vpeorg@@setminipage - \vpe@doubleeverypar - }% -} -\def\vpe@doubleeverypar{% - \expandafter\vpe@@doubleeverypar\the\everypar\everypar!!\@nil -} -\def\vpe@@doubleeverypar#1\everypar#2#3\@nil{% - \def\vpe@temp{#2}% - \ifx\vpe@temp\@empty - \everypar\expandafter{\the\everypar\vpe@everypar}% - \fi - \vpe@everypar -} -\vpe@redef{@startsection}{% - \def\@startsection{% - \if@nobreak - \let\vpe@orgeverypar\everypar - \let\everypar\vpe@tempeverypar - \fi - \vpeorg@@startsection - }% -} -\def\vpe@tempeverypar#1{% - \let\everypar\vpe@orgeverypar - \everypar{#1\VPE}% -} - -\vpe@check{everymath}{\everymath{\VPE}} - -\ifvpe@everyhbox - \everyhbox\expandafter{\the\everyhbox\VPE}% -\fi - -\vpe@redef{newline}{\def\newline{\VPE\vpeorg@newline}} -\vpe@redefspecial{\\}{NL}{\def\\{\VPE\vpeorg@NL}} -\vpe@redef{tabularnewline}{% - \def\tabularnewline{\VPE\tabularnewline} -} - -\vpe@redef{mbox}{% - \def\mbox{\VPE\vpe@mbox} - \long\def\vpe@mbox#1{\vpeorg@mbox{#1\VPE}} -} - -\vpe@redefspecial{~}{TILDE}{\def~{\VPE\vpeorg@TILDE}} - -\vpe@redef{ref}{\def\ref{\VPE\vpeorg@ref}} -\vpe@redef{cite}{\def\cite{\VPE\vpeorg@cite}} - -\vpe@redef{item}{\def\item{\VPE\vpeorg@item}} -\vpe@redef{trivlist}{\def\trivlist{\VPE\vpeorg@trivlist}} -\vpe@redef{endtrivlist}{\def\endtrivlist{\VPE\vpeorg@endtrivlist}} - -\vpe@redef{@bsphack}{\def\@bsphack{\vpeorg@@bsphack\VPE}} -\vpe@redef{@esphack}{\def\@esphack{\VPE\vpeorg@@esphack}} -\vpe@redef{@Esphack}{\def\@Esphack{\VPE\vpeorg@@Esphack}} -\vpe@redef{@xaddvskip}{\def\@xaddvskip{\vpeorg@@xaddvskip\VPE}} - -\vpe@redef{@tabularcr}{\def\@tabularcr{\VPE\vpeorg@@tabularcr}} -\vpe@redef{@arraycr}{\def\@arraycr{\VPE\vpeorg@@arraycr}} - -\vpe@redef{hrule}{\def\hrule{\VPE\vpeorg@hrule}} -\vpe@redef{vrule}{\def\vrule{\VPE\vpeorg@vrule}} -\endinput |