summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2007-11-01 23:30:27 +0000
committerKarl Berry <karl@freefriends.org>2007-11-01 23:30:27 +0000
commitd4dc1df565cc608b8bf8317fe904b9e0390b8022 (patch)
tree226540c5f02873367dd55f6ad26a618a8e4ee5cb /Master/texmf-dist/source
parent190eebf5b85be27619717dc795b8f8950606c6f5 (diff)
obediek update (1nov07)
git-svn-id: svn://tug.org/texlive/trunk@5320 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/embedfile.dtx144
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx663
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.ins3
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/oberdiek.tex14
4 files changed, 811 insertions, 13 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx b/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx
index 3e0236455e8..9f0879785bb 100644
--- a/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx
@@ -75,7 +75,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: embedfile 2007/10/28 v2.0 embed files into PDF (HO)}
+\Msg{* Package: embedfile 2007/10/29 v2.1 embed files into PDF (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -146,7 +146,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{embedfile.drv}%
- [2007/10/28 v2.0 embed files into PDF (HO)]%
+ [2007/10/29 v2.1 embed files into PDF (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2007/10/21]
\begin{document}
@@ -155,7 +155,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{1223}
+% \CheckSum{1287}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -176,7 +176,7 @@ and the derived files
% \GetFileInfo{embedfile.drv}
%
% \title{The \xpackage{embedfile} package}
-% \date{2007/10/28 v2.0}
+% \date{2007/10/29 v2.1}
% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
%
% \maketitle
@@ -282,6 +282,10 @@ and the derived files
% \item[\xoption{\meta{key}.prefix}]
% Sets the prefix of a collection item property,
% see section \ref{sec:collection}.
+% \item[\xoption{id}]
+% The value must be an unique name. Macros
+% \cs{embedfileifobjectexists} and \cs{embedfilegetobject}
+% are using this name later.
% \end{description}
%
% \begin{declcs}{embedfilefinish}
@@ -402,6 +406,46 @@ and the derived files
% Its value is either \texttt{ascending} or \texttt{descending}.
% The default is \texttt{ascending}.
%
+% \subsection{Export of object references}
+%
+% Caution: This feature is still experimental. It may be even removed
+% in future versions. Therefore feedback would be nice, if someone
+% has a useful application for this feature.
+%
+% Object numbers are saved, if \xoption{id} is given in \cs{embedfile}.
+% The following objects are supported:
+% \begin{itemize}
+% \item \texttt{EmbeddedFile}
+% \item \texttt{Filespec}
+% \end{itemize}
+%
+% \begin{declcs}{embedfileifobjectexists} \M{id} \M{type}
+% \M{then} \M{else}
+% \end{declcs}
+% Macro \cs{embedfileifobjectexists} tests whether object of \meta{type}
+% is available for the embedded file identified by \meta{id}.
+%
+% \begin{declcs}{embedfilegetobject} \M{id} \M{type}
+% \end{declcs}
+% Macro \cs{embedfilegetobject} expands to the full object reference
+% object of \meta{type} for the embedded file identified by \meta{id}.
+%
+% \subsubsection{Example}
+%
+%\begin{quote}
+%\begin{verbatim}
+%\embedfile[id={foo}]{foo.pdf}
+%\embedfileifobjectexists{foo}{Filespec}{%
+% \typeout{%
+% FileSpec object for `foo': %
+% \embedfilegetobject{foo}{Filespec}%
+% }%
+%}{%
+% \typeout{No Filespec object for `foo'}%
+%}
+%\end{verbatim}
+%\end{quote}
+%
% \subsection{Examples}
% \label{sec:examples}
%
@@ -465,7 +509,7 @@ This example document contains three embedded files.
\usepackage[bookmarks=false]{hyperref}
% provides \pdfstringdef that is then used by `title' and
% other keys.
-\usepackage{embedfile}[2007/10/28]
+\usepackage{embedfile}[2007/10/29]
\embedfilesetup{
view=details,
initialfile=embedfile.pdf
@@ -533,8 +577,8 @@ You need Acrobat Reader 8 or higher.
%<*dtxattach>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{dtx-attach}
- [2007/10/28 v2.0 Embed \string\jobname.dtx (HO)]%
-\RequirePackage{embedfile}[2007/10/28]
+ [2007/10/29 v2.1 Embed \string\jobname.dtx (HO)]%
+\RequirePackage{embedfile}[2007/10/29]
\embedfile[%
stringmethod=escape,%
mimetype=plain/text,%
@@ -610,7 +654,7 @@ You need Acrobat Reader 8 or higher.
\fi
\expandafter\x\csname ver@embedfile.sty\endcsname
\ProvidesPackage{embedfile}%
- [2007/10/28 v2.0 embed files into PDF (HO)]
+ [2007/10/29 v2.1 embed files into PDF (HO)]
% \end{macrocode}
%
% \subsection{Catcodes}
@@ -823,6 +867,11 @@ You need Acrobat Reader 8 or higher.
\newif\ifEmFi@finished
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\ifEmFi@id}
+% \begin{macrocode}
+\newif\ifEmFi@id
+% \end{macrocode}
+% \end{macro}
%
% \subsection{Key value definitions}
%
@@ -983,6 +1032,61 @@ You need Acrobat Reader 8 or higher.
}
% \end{macrocode}
%
+% Option \xoption{id} as key for object numbers.
+% \begin{macrocode}
+\define@key{EmFi}{id}{%
+ \def\EmFi@id{#1}%
+ \EmFi@idtrue
+}
+% \end{macrocode}
+% \begin{macro}{\EmFi@defobj}
+% \begin{macrocode}
+\def\EmFi@defobj#1{%
+ \ifEmFi@id
+ \expandafter\xdef\csname EmFi@#1@\EmFi@id\endcsname{%
+ \the\pdflastobj\space 0 R%
+ }%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\embedfileifobjectexists}
+% \begin{macrocode}
+\def\embedfileifobjectexists#1#2{%
+ \expandafter\ifx\csname EmFi@#2@#1\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\@firstoftwo}
+% \begin{macrocode}
+\expandafter\ifx\csname @firstoftwo\endcsname\relax
+ \long\def\@firstoftwo#1#2{#1}%
+\fi
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\@secondoftwo}
+% \begin{macrocode}
+\expandafter\ifx\csname @secondoftwo\endcsname\relax
+ \long\def\@secondoftwo#1#2{#2}%
+\fi
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\embedfilegetobject}
+% \begin{macrocode}
+\def\embedfilegetobject#1#2{%
+ \embedfileifobjectexists{#1}{#2}{%
+ \csname EmFi@#2@#1\endcsname
+ }{%
+ 0 0 R%
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+%
% Initial view of the collection.
% \begin{macrocode}
\define@key{EmFi}{view}[]{%
@@ -1327,6 +1431,7 @@ You need Acrobat Reader 8 or higher.
/CheckSum<\pdfmdfivesum file{\EmFi@file}>%
>>%
}file{\EmFi@file}\relax
+ \EmFi@defobj{EmbeddedFile}%
\immediate\pdfobj{%
<<%
/Type/Filespec%
@@ -1347,6 +1452,7 @@ You need Acrobat Reader 8 or higher.
\fi
>>%
}%
+ \EmFi@defobj{Filespec}%
\EmFi@add{%
\EmFi@@filespec
}{\the\pdflastobj\space 0 R}%
@@ -1605,10 +1711,23 @@ You need Acrobat Reader 8 or higher.
\embedfile[%
stringmethod=escape,%
mimetype=plain/text,%
- desc={LaTeX docstrip source archive for package `embedfile'}%
+ desc={LaTeX docstrip source archive for package `embedfile'},%
+ id={embedfile.dtx}%
]{embedfile.dtx}
\nopagenumbers
Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.%
+
+\def\Test#1{%
+ \par
+ \embedfileifobjectexists{embedfile.dtx}{#1}{%
+ Object #1 (embedfile.dtx): %
+ \embedfilegetobject{embedfile.dtx}{#1}%
+ }{%
+ \errmessage{Missing object #1 (embedfile.dtx)}%
+ }%
+}
+\Test{EmbeddedFile}
+\Test{Filespec}
\embedfilefinish
\bye
%</test2>
@@ -1618,7 +1737,7 @@ Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.%
\NeedsTeXFormat{LaTeX2e}
\let\SavedJobname\jobname
\def\jobname{embedfile}
-\RequirePackage{dtx-attach}[2007/10/28]
+\RequirePackage{dtx-attach}[2007/10/29]
\let\jobname\SavedJobname
\documentclass{minimal}
\begin{document}
@@ -1862,6 +1981,11 @@ Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.%
% \item
% Collection support added (PDF 1.7).
% \end{Version}
+% \begin{Version}{2007/10/29 v2.1}
+% \item
+% Export of object references by adding new option \xoption{id} and
+% new macros \cs{embedfileifobjectexists} and \cs{embedfilegetobject}.
+% \end{Version}
% \end{History}
%
% \PrintIndex
diff --git a/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx b/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx
new file mode 100644
index 00000000000..f6f466b4676
--- /dev/null
+++ b/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx
@@ -0,0 +1,663 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%
+% 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 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Heiko Oberdiek.
+%
+% This work consists of the main source file hypgotoe.dtx
+% and the derived files
+% hypgotoe.sty, hypgotoe.pdf, hypgotoe.ins, hypgotoe.drv,
+% hypgotoe-example.tex.
+%
+% Distribution:
+% CTAN:macros/latex/contrib/oberdiek/hypgotoe.dtx
+% CTAN:macros/latex/contrib/oberdiek/hypgotoe.pdf
+%
+% Unpacking:
+% (a) If hypgotoe.ins is present:
+% tex hypgotoe.ins
+% (b) Without hypgotoe.ins:
+% tex hypgotoe.dtx
+% (c) If you insist on using LaTeX
+% latex \let\install=y\input{hypgotoe.dtx}
+% (quote the arguments according to the demands of your shell)
+%
+% Documentation:
+% (a) If hypgotoe.drv is present:
+% latex hypgotoe.drv
+% (b) Without hypgotoe.drv:
+% latex hypgotoe.dtx; ...
+% The class ltxdoc loads the configuration file ltxdoc.cfg
+% if available. Here you can specify further options, e.g.
+% use A4 as paper format:
+% \PassOptionsToClass{a4paper}{article}
+%
+% Programm calls to get the documentation (example):
+% pdflatex hypgotoe.dtx
+% makeindex -s gind.ist hypgotoe.idx
+% pdflatex hypgotoe.dtx
+% makeindex -s gind.ist hypgotoe.idx
+% pdflatex hypgotoe.dtx
+%
+% Installation:
+% TDS:tex/latex/oberdiek/hypgotoe.sty
+% TDS:doc/latex/oberdiek/hypgotoe.pdf
+% TDS:doc/latex/oberdiek/hypgotoe-example.tex
+% TDS:source/latex/oberdiek/hypgotoe.dtx
+%
+%<*ignore>
+\begingroup
+ \def\x{LaTeX2e}%
+\expandafter\endgroup
+\ifcase 0\ifx\install y1\fi\expandafter
+ \ifx\csname processbatchFile\endcsname\relax\else1\fi
+ \ifx\fmtname\x\else 1\fi\relax
+\else\csname fi\endcsname
+%</ignore>
+%<*install>
+\input docstrip.tex
+\Msg{************************************************************************}
+\Msg{* Installation}
+\Msg{* Package: hypgotoe 2007/10/30 v0.1 Experimental links to embedded files (HO)}
+\Msg{************************************************************************}
+
+\keepsilent
+\askforoverwritefalse
+
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+
+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 2005/12/01 or later.
+
+This work has the LPPL maintenance status "maintained".
+
+This Current Maintainer of this work is Heiko Oberdiek.
+
+This work consists of the main source file hypgotoe.dtx
+and the derived files
+ hypgotoe.sty, hypgotoe.pdf, hypgotoe.ins, hypgotoe.drv,
+ hypgotoe-example.tex.
+
+\endpreamble
+
+\generate{%
+ \file{hypgotoe.ins}{\from{hypgotoe.dtx}{install}}%
+ \file{hypgotoe.drv}{\from{hypgotoe.dtx}{driver}}%
+ \usedir{tex/latex/oberdiek}%
+ \file{hypgotoe.sty}{\from{hypgotoe.dtx}{package}}%
+ \usedir{doc/latex/oberdiek}%
+ \file{hypgotoe-example.tex}{\from{hypgotoe.dtx}{example}}%
+}
+
+\obeyspaces
+\Msg{************************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* file into a directory searched by TeX:}
+\Msg{*}
+\Msg{* hypgotoe.sty}
+\Msg{*}
+\Msg{* To produce the documentation run the file `hypgotoe.drv'}
+\Msg{* through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing!}
+\Msg{*}
+\Msg{************************************************************************}
+
+\endbatchfile
+%</install>
+%<*ignore>
+\fi
+%</ignore>
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{hypgotoe.drv}%
+ [2007/10/30 v0.1 Experimental links to embedded files (HO)]%
+\documentclass{ltxdoc}
+\usepackage{holtxdoc}[2007/10/21]
+\begin{document}
+ \DocInput{hypgotoe.dtx}%
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{163}
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \GetFileInfo{hypgotoe.drv}
+%
+% \title{The \xpackage{hypgotoe} package}
+% \date{2007/10/30 v0.1}
+% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
+%
+% \maketitle
+%
+% \begin{abstract}
+% Experimental package for links to embedded files.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \section{Documentation}
+%
+% \subsection{Introduction}
+%
+% This is a first experiment for links to embedded files.
+% The package \xpackage{hypgotoe} is named after the PDF action
+% name \texttt{/GoToE}.
+% Feedback is welcome, especially to the user interface.
+% \begin{itemize}
+% \item
+% Currently only embedded files and named destinations are supported.
+% \item
+% Missing are support for destination arrays and attachted files.
+% \item
+% Special characters aren't supported either.
+% \end{itemize}
+% In the future the package may be merged into package \xpackage{hyperref}.
+%
+% \subsection{User interface}
+%
+% \cs{href} is extended to detect the prefix `\texttt{gotoe:}'.
+% The part after the prefix is evaluated as key value list
+% from left to right.
+% For details, see ``8.5.3 Action Types, Embedded Go-To Actions''
+% \cite{pdfspec}.
+% \begin{description}
+% \item[\xoption{dest}:] The destination name. The destination name
+% can be set by \cs{hypertarget} in the target document. Or check
+% the \xfile{.aux} file for destination names of \cs{label} commands.
+% Also the target PDF file can be inspected, look for \texttt{/Dests}
+% in the /Names entry of the catalog for named destinations. (Required.)
+% \item[\xoption{root}:] The file name of the root document.
+% (Optional.)
+% \item[\xoption{parent}:] Go to the parent document. (No value, optional.)
+% \item[\xoption{embedded}:] Go to the embedded document. The
+% value is the file name as it appears in /EmbeddedFiles of the current
+% document.
+% \end{description}
+%
+% The colors are controlled by \xpackage{hyperref}'s options
+% \xoption{gotoecolor} and \xoption{gotoebordercolor}. They can
+% be set in \cs{hypersetup}, for example.
+% Default is the color of file links.
+%
+% \subsection{Example}
+%
+% \begin{macrocode}
+%<*example>
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{filecontents}
+\begin{filecontents}{hypgotoe-child.tex}
+\NeedsTeXFormat{LaTeX2e}
+\documentclass{article}
+\usepackage{hypgotoe}[2007/10/30]
+\begin{document}
+\section{This is the child document.}
+\href{gotoe:%
+ dest={page.1},parent%
+}{Go to first page of main document}\\
+\href{gotoe:%
+ dest={page.2},parent%
+}{Go to second page of main document}
+\newpage
+\section{This is the second page of the child document.}
+\href{gotoe:%
+ dest={page.1},parent%
+}{Go to first page of main document}\\
+\href{gotoe:%
+ dest={page.2},parent%
+}{Go to second page of main document}
+
+\hypertarget{foobar}{}
+Anker foobar is here.
+\end{document}
+\end{filecontents}
+\documentclass{article}
+\usepackage{hypgotoe}[2007/10/30]
+\usepackage{embedfile}
+\IfFileExists{hypgotoe-child.pdf}{%
+ \embedfile{hypgotoe-child.pdf}%
+}{%
+ \typeout{}%
+ \typeout{--> Run hypgotoe-child.tex through pdflatex}%
+ \typeout{}%
+}
+\begin{document}
+\section{First page of main document}
+\href{gotoe:%
+ dest=page.1,embedded=hypgotoe-child.pdf%
+}{Go to first page of child document}\\
+\href{gotoe:%
+ dest=page.2,embedded=hypgotoe-child.pdf%
+}{Go to second page of child document}\\
+\href{gotoe:%
+ dest=foobar,embedded=hypgotoe-child.pdf%
+}{Go to foobar in child document}
+\newpage
+\section{Second page of main document}
+\href{gotoe:%
+ dest=section.1,embedded=hypgotoe-child.pdf%
+}{Go to first section of child document}\\
+\href{gotoe:%
+ dest=section.2,embedded=hypgotoe-child.pdf%
+}{Go to second section of child document}\\
+\href{gotoe:%
+ dest=foobar,embedded=hypgotoe-child.pdf%
+}{Go to foobar in child document}
+\end{document}
+%</example>
+% \end{macrocode}
+%
+% \StopEventually{
+% }
+%
+% \section{Implementation}
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+%<*package>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{hypgotoe}%
+ [2007/10/30 v0.1 Experimental links to embedded files (HO)]%
+% \end{macrocode}
+%
+% \subsection{Load packages}
+%
+% \begin{macrocode}
+\RequirePackage{ifpdf}[2007/09/09]
+\ifpdf
+\else
+ \PackageError{hypgotoe}{%
+ Other drivers than pdfTeX in PDF mode are not supported.%
+ \MessageBreak
+ Package loading is aborted%
+ }\@ehc
+ \expandafter\endinput
+\fi
+\RequirePackage{pdfescape}[2007/10/27]
+\RequirePackage{hyperref}[2007/10/30]
+% \end{macrocode}
+%
+% \subsection{Color support}
+%
+% \begin{macrocode}
+\define@key{Hyp}{gotoebordercolor}{%
+ \HyColor@HyperrefBordercolor{#1}%
+ \@gotoebordercolor{hyperref}{gotoebordercolor}%
+}
+\providecommand*{\@gotoecolor}{\@filecolor}
+\providecommand*{\@gotoebordercolor}{\@filebordercolor}
+% \end{macrocode}
+%
+% \subsection{Extend \cs{href}}
+%
+% \begin{macro}{\@hyper@readexternallink}
+% \begin{macrocode}
+\def\@hyper@readexternallink#1#2#3#4:#5:#6\\#7{%
+ \ifx\\#6\\%
+ \expandafter\@hyper@linkfile file:#7\\{#3}{#2}%
+ \else
+ \ifx\\#4\\%
+ \expandafter\@hyper@linkfile file:#7\\{#3}{#2}%
+ \else
+ \def\@pdftempa{#4}%
+ \ifx\@pdftempa\@pdftempwordfile
+ \expandafter\@hyper@linkfile#7\\{#3}{#2}%
+ \else
+ \ifx\@pdftempa\@pdftempwordrun
+ \expandafter\@hyper@launch#7\\{#3}{#2}%
+ \else
+ \ifx\@pdftempa\@pdftempwordgotoe
+ \hyper@linkgotoe{#3}{#5}%
+ \else
+ \hyper@linkurl{#3}{#7\ifx\\#2\\\else\hyper@hash#2\fi}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\@pdftempwordgotoe}
+% \begin{macrocode}
+\def\@pdftempwordgotoe{gotoe}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Implement gotoe action}
+%
+% \begin{macro}{\hyper@linkgotoe}
+% \begin{macrocode}
+\def\hyper@linkgotoe#1#2{%
+ \begingroup
+ \let\HyGoToE@Root\@empty
+ \let\HyGoToE@Dest\@empty
+ \let\HyGoToE@TBegin\@empty
+ \let\HyGoToE@TEnd\@empty
+ \setkeys{HyGoToE}{#2}%
+ \leavevmode
+ \pdfstartlink
+ attr{%
+ \Hy@setpdfborder
+ \ifx\@pdfhightlight\@empty
+ \else
+ /H\@pdfhighlight
+ \fi
+ \ifx\@urlbordercolor\relax
+ \else
+ /C[\@urlbordercolor]%
+ \fi
+ }%
+ user{%
+ /Subtype/Link%
+ /A<<%
+ /Type/Action%
+ /S/GoToE%
+ \Hy@SetNewWindow
+ \HyGoToE@Root
+ \HyGoToE@Dest
+ \HyGoToE@TBegin
+ \HyGoToE@TEnd
+ >>%
+ }%
+ \relax
+ \Hy@colorlink\@gotoecolor#1%
+ \close@pdflink
+ \endgroup
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Keys for gotoe action}
+%
+% \begin{macrocode}
+\define@key{HyGoToE}{root}{%
+ \EdefEscapeString\HyGoToE@temp{#1}%
+ \edef\HyGoToE@Root{%
+ /F<<%
+ /Type/Filespec%
+ /F(\HyGoToE@temp)%
+ >>%
+ }%
+}
+\define@key{HyGoToE}{dest}{%
+ \EdefEscapeString\HyGoToE@temp{#1}%
+ \edef\HyGoToE@Dest{%
+ /D(\HyGoToE@temp)%
+ }%
+}
+\define@key{HyGoToE}{parent}[]{%
+ \def\HyGoToE@temp{#1}%
+ \ifx\HyGoToE@temp\@empty
+ \else
+ \PackageWarning{hypgotoe}{Ignore value for `parent'}%
+ \fi
+ \edef\HyGoToE@TBegin{%
+ \HyGoToE@TBegin
+ /T<<%
+ /R/P%
+ }%
+ \edef\HyGoToE@TEnd{%
+ \HyGoToE@TEnd
+ >>%
+ }%
+}
+\define@key{HyGoToE}{embedded}{%
+ \EdefEscapeString\HyGoToE@temp{#1}%
+ \edef\HyGoToE@TBegin{%
+ \HyGoToE@TBegin
+ /T<<%
+ /R/C%
+ /N(\HyGoToE@temp)%
+ }%
+ \edef\HyGoToE@TEnd{%
+ \HyGoToE@TEnd
+ >>%
+ }%
+}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%</package>
+% \end{macrocode}
+%
+% \section{Installation}
+%
+% \subsection{Download}
+%
+% \paragraph{Package.} This package is available on
+% CTAN\footnote{\url{ftp://ftp.ctan.org/tex-archive/}}:
+% \begin{description}
+% \item[\CTAN{macros/latex/contrib/oberdiek/hypgotoe.dtx}] The source file.
+% \item[\CTAN{macros/latex/contrib/oberdiek/hypgotoe.pdf}] Documentation.
+% \end{description}
+%
+%
+% \paragraph{Bundle.} All the packages of the bundle `oberdiek'
+% are also available in a TDS compliant ZIP archive. There
+% the packages are already unpacked and the documentation files
+% are generated. The files and directories obey the TDS standard.
+% \begin{description}
+% \item[\CTAN{macros/latex/contrib/oberdiek/oberdiek-tds.zip}]
+% \end{description}
+% \emph{TDS} refers to the standard ``A Directory Structure
+% for \TeX\ Files'' (\CTAN{tds/tds.pdf}). Directories
+% with \xfile{texmf} in their name are usually organized this way.
+%
+% \subsection{Bundle installation}
+%
+% \paragraph{Unpacking.} Unpack the \xfile{oberdiek-tds.zip} in the
+% TDS tree (also known as \xfile{texmf} tree) of your choice.
+% Example (linux):
+% \begin{quote}
+% |unzip oberdiek-tds.zip -d ~/texmf|
+% \end{quote}
+%
+% \paragraph{Script installation.}
+% Check the directory \xfile{TDS:scripts/oberdiek/} for
+% scripts that need further installation steps.
+% Package \xpackage{attachfile2} comes with the Perl script
+% \xfile{pdfatfi.pl} that should be installed in such a way
+% that it can be called as \texttt{pdfatfi}.
+% Example (linux):
+% \begin{quote}
+% |chmod +x scripts/oberdiek/pdfatfi.pl|\\
+% |cp scripts/oberdiek/pdfatfi.pl /usr/local/bin/|
+% \end{quote}
+%
+% \subsection{Package installation}
+%
+% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting
+% \docstrip\ archive. The files are extracted by running the
+% \xfile{.dtx} through \plainTeX:
+% \begin{quote}
+% \verb|tex hypgotoe.dtx|
+% \end{quote}
+%
+% \paragraph{TDS.} Now the different files must be moved into
+% the different directories in your installation TDS tree
+% (also known as \xfile{texmf} tree):
+% \begin{quote}
+% \def\t{^^A
+% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}}
+% hypgotoe.sty & tex/latex/oberdiek/hypgotoe.sty\\
+% hypgotoe.pdf & doc/latex/oberdiek/hypgotoe.pdf\\
+% hypgotoe-example.tex & doc/latex/oberdiek/hypgotoe-example.tex\\
+% hypgotoe.dtx & source/latex/oberdiek/hypgotoe.dtx\\
+% \end{tabular}^^A
+% }^^A
+% \sbox0{\t}^^A
+% \ifdim\wd0>\linewidth
+% \begingroup
+% \advance\linewidth by\leftmargin
+% \advance\linewidth by\rightmargin
+% \edef\x{\endgroup
+% \def\noexpand\lw{\the\linewidth}^^A
+% }\x
+% \def\lwbox{^^A
+% \leavevmode
+% \hbox to \linewidth{^^A
+% \kern-\leftmargin\relax
+% \hss
+% \usebox0
+% \hss
+% \kern-\rightmargin\relax
+% }^^A
+% }^^A
+% \ifdim\wd0>\lw
+% \sbox0{\small\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\footnotesize\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\scriptsize\t}^^A
+% \ifdim\wd0>\linewidth
+% \ifdim\wd0>\lw
+% \sbox0{\tiny\t}^^A
+% \ifdim\wd0>\linewidth
+% \lwbox
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \else
+% \lwbox
+% \fi
+% \else
+% \usebox0
+% \fi
+% \end{quote}
+% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's
+% TDS installing feature, then some files can already be in the right
+% place, see the documentation of \docstrip.
+%
+% \subsection{Refresh file name databases}
+%
+% If your \TeX~distribution
+% (\teTeX, \mikTeX, \dots) relies on file name databases, you must refresh
+% these. For example, \teTeX\ users run \verb|texhash| or
+% \verb|mktexlsr|.
+%
+% \subsection{Some details for the interested}
+%
+% \paragraph{Attached source.}
+%
+% The PDF documentation on CTAN also includes the
+% \xfile{.dtx} source file. It can be extracted by
+% AcrobatReader 6 or higher. Another option is \textsf{pdftk},
+% e.g. unpack the file into the current directory:
+% \begin{quote}
+% \verb|pdftk hypgotoe.pdf unpack_files output .|
+% \end{quote}
+%
+% \paragraph{Unpacking with \LaTeX.}
+% The \xfile{.dtx} chooses its action depending on the format:
+% \begin{description}
+% \item[\plainTeX:] Run \docstrip\ and extract the files.
+% \item[\LaTeX:] Generate the documentation.
+% \end{description}
+% If you insist on using \LaTeX\ for \docstrip\ (really,
+% \docstrip\ does not need \LaTeX), then inform the autodetect routine
+% about your intention:
+% \begin{quote}
+% \verb|latex \let\install=y\input{hypgotoe.dtx}|
+% \end{quote}
+% Do not forget to quote the argument according to the demands
+% of your shell.
+%
+% \paragraph{Generating the documentation.}
+% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate
+% the documentation. The process can be configured by the
+% configuration file \xfile{ltxdoc.cfg}. For instance, put this
+% line into this file, if you want to have A4 as paper format:
+% \begin{quote}
+% \verb|\PassOptionsToClass{a4paper}{article}|
+% \end{quote}
+% An example follows how to generate the
+% documentation with pdf\LaTeX:
+% \begin{quote}
+%\begin{verbatim}
+%pdflatex hypgotoe.dtx
+%makeindex -s gind.ist hypgotoe.idx
+%pdflatex hypgotoe.dtx
+%makeindex -s gind.ist hypgotoe.idx
+%pdflatex hypgotoe.dtx
+%\end{verbatim}
+% \end{quote}
+%
+% \begin{thebibliography}{9}
+% \bibitem{pdfspec}
+% Adobe Systems Incorporated:
+% \href{http://www.adobe.com/devnet/acrobat/pdfs/pdf_reference.pdf}%
+% {\textit{PDF Reference, Sixth Edition, Version 1.7}},%
+% Oktober 2006;
+% \url{http://www.adobe.com/devnet/pdf/pdf_reference.html}.
+%
+% \end{thebibliography}
+%
+% \begin{History}
+% \begin{Version}{2007/10/30 v0.1}
+% \item
+% First experimental version.
+% \end{Version}
+% \end{History}
+%
+% \PrintIndex
+%
+% \Finale
+\endinput
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
index f6e65957400..d6789f4cbb6 100644
--- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
+++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins
@@ -1,5 +1,5 @@
% oberdiek.ins
-% 2007/10/28
+% 2007/10/29
%
% Copyright (C) 1999, 2001, 2006 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
@@ -53,6 +53,7 @@
\batchinput{hypcap.dtx}
\batchinput{hypdestopt.dtx}
\batchinput{hypdoc.dtx}
+\batchinput{hypgotoe.dtx}
\batchinput{ifdraft.dtx}
\batchinput{iflang.dtx}
\batchinput{ifpdf.dtx}
diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
index 1dfd8f4780a..159189695e1 100644
--- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
+++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex
@@ -6,7 +6,7 @@
\newcommand*{\Subject}{CTAN:\CTANdir}
\newcommand*{\Author}{Heiko Oberdiek}
\newcommand*{\Email}{oberdiek@uni-freiburg.de}
-\newcommand*{\Date}{2007/10/28}
+\newcommand*{\Date}{2007/10/29}
% Copyright (C) 2006 by
% Heiko Oberdiek <oberdiek@uni-freiburg.de>
@@ -192,7 +192,7 @@
[\entrysep]
\entry{dvipscol}{2006/02/20}{1.1}{Fix for dvips.def}%
[\entrysep]
-\entry{embedfile}{2007/10/28}{2.0}{embed files into PDF}%
+\entry{embedfile}{2007/10/29}{2.1}{embed files into PDF}%
[\entrysep]
\entry{engord}{2007/09/20}{1.6}{Provides English ordinal numbers}%
[\entrysep]
@@ -218,6 +218,8 @@
[\entrysep]
\entry{hypdoc}{2007/04/11}{1.5}{Hyper extensions for doc.sty}%
[\entrysep]
+\entry{hypgotoe}{2007/10/30}{0.1}{Experimental links to embedded files}%
+[\entrysep]
\entry{ifdraft}{2006/02/20}{1.2}{Switch for option draft}%
[\entrysep]
\entry{iflang}{2007/09/09}{1.4}{Language checks}%
@@ -619,6 +621,14 @@ are linked as far as possible.
\tocinclude{hypdoc}
\newpage
+\subsection{\pkgsectformat{hypgotoe}}
+\label{hypgotoe}
+\begin{abstract}
+Experimental package for links to embedded files.
+\end{abstract}
+\tocinclude{hypgotoe}
+
+\newpage
\subsection{\pkgsectformat{ifdraft}}
\label{ifdraft}
\begin{abstract}