diff options
author | Karl Berry <karl@freefriends.org> | 2019-11-24 21:47:23 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-11-24 21:47:23 +0000 |
commit | 8b960517e3a2603d01e124e2112d43ea86d6d782 (patch) | |
tree | c010b9bf1811835b5a78574a26ee883bd023d686 /Master/texmf-dist/source | |
parent | 7581721197204702cbebdb4c44f1e94406e512dd (diff) |
oberdiek (24nov19)
git-svn-id: svn://tug.org/texlive/trunk@52915 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
91 files changed, 12 insertions, 9330 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/README.txt b/Master/texmf-dist/source/latex/oberdiek/README.txt index 978bccd4760..b1526c4308b 100644 --- a/Master/texmf-dist/source/latex/oberdiek/README.txt +++ b/Master/texmf-dist/source/latex/oberdiek/README.txt @@ -1,4 +1,4 @@ -README 2019/11/12 +README 2019/11/24 This file describes the directory CTAN:macros/latex/contrib/oberdiek/ @@ -12,10 +12,6 @@ Just download CTAN:install/macros/latex/contrib/oberdiek.tds.zip and unzip it in your preferred TDS (texmf) tree. -Hint for attachfile2: This package comes with a Perl script pdfatfi.pl -that should be installed somewhere in PATH as `pdfatfi', see also -package documentation. - Other files in the CTAN directory: * README: This file. diff --git a/Master/texmf-dist/source/latex/oberdiek/accsupp.dtx b/Master/texmf-dist/source/latex/oberdiek/accsupp.dtx index 981873bce23..c615aa59444 100644 --- a/Master/texmf-dist/source/latex/oberdiek/accsupp.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/accsupp.dtx @@ -991,14 +991,6 @@ ed as % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/aliascnt.dtx b/Master/texmf-dist/source/latex/oberdiek/aliascnt.dtx index fa0504ab835..dc3e8d4081b 100644 --- a/Master/texmf-dist/source/latex/oberdiek/aliascnt.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/aliascnt.dtx @@ -407,14 +407,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/alphalph.dtx b/Master/texmf-dist/source/latex/oberdiek/alphalph.dtx index 42d9f002886..98c506a3c27 100644 --- a/Master/texmf-dist/source/latex/oberdiek/alphalph.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/alphalph.dtx @@ -1684,14 +1684,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/askinclude.dtx b/Master/texmf-dist/source/latex/oberdiek/askinclude.dtx index eb335f0936e..1e28340f583 100644 --- a/Master/texmf-dist/source/latex/oberdiek/askinclude.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/askinclude.dtx @@ -2694,14 +2694,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/atbegshi.dtx b/Master/texmf-dist/source/latex/oberdiek/atbegshi.dtx index 472a25ebdc3..27659be45a5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/atbegshi.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/atbegshi.dtx @@ -2165,14 +2165,6 @@ Hello World % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/atenddvi.dtx b/Master/texmf-dist/source/latex/oberdiek/atenddvi.dtx index 3632f221f09..7f4adc689c8 100644 --- a/Master/texmf-dist/source/latex/oberdiek/atenddvi.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/atenddvi.dtx @@ -423,14 +423,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/attachfile2.dtx b/Master/texmf-dist/source/latex/oberdiek/attachfile2.dtx deleted file mode 100644 index 6a0dfdc5ded..00000000000 --- a/Master/texmf-dist/source/latex/oberdiek/attachfile2.dtx +++ /dev/null @@ -1,3290 +0,0 @@ -% \iffalse meta-comment -% -% File: attachfile2.dtx -% Version: 2019/07/24 v2.9 -% Info: Attach files into PDF -% -% Copyright (C) 2005-2010, 2012 by -% Heiko Oberdiek <heiko.oberdiek at googlemail.com> -% 2019 -% https://github.com/ho-tex/oberdiek/issues -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% https://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% https://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". -% -% The Current Maintainers of this work are -% Heiko Oberdiek and the Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% This work consists of the main source file attachfile2.dtx -% and the derived files -% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, -% atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def,atfi-luatex.def -% pdfatfi.pl. -% -% Distribution: -% CTAN:macros/latex/contrib/oberdiek/attachfile2.dtx -% CTAN:macros/latex/contrib/oberdiek/attachfile2.pdf -% -% Unpacking: -% (a) If attachfile2.ins is present: -% tex attachfile2.ins -% (b) Without attachfile2.ins: -% tex attachfile2.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{attachfile2.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If attachfile2.drv is present: -% latex attachfile2.drv -% (b) Without attachfile2.drv: -% latex attachfile2.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 attachfile2.dtx -% makeindex -s gind.ist attachfile2.idx -% pdflatex attachfile2.dtx -% makeindex -s gind.ist attachfile2.idx -% pdflatex attachfile2.dtx -% -% Installation: -% TDS:tex/latex/oberdiek/attachfile2.sty -% TDS:tex/latex/oberdiek/atfi-dvips.def -% TDS:tex/latex/oberdiek/atfi-pdftex.def -% TDS:tex/latex/oberdiek/atfi-dvipdfmx.def -% TDS:tex/latex/oberdiek/atfi-luatex.def -% TDS:scripts/oberdiek/pdfatfi.pl (exec flag) -% TDS:doc/latex/oberdiek/attachfile2.pdf -% TDS:source/latex/oberdiek/attachfile2.dtx -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \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: attachfile2 2019/07/24 v2.9 Attach files into PDF (HO)} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -Project: attachfile2 -Version: 2019/07/24 v2.9 - -Copyright (C) 2005-2010, 2012 by - Heiko Oberdiek <heiko.oberdiek at googlemail.com> - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - https://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - https://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". - -The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - - -This work consists of the main source file attachfile2.dtx -and the derived files - attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, - atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def, - pdfatfi.pl. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \file{attachfile2.ins}{\from{attachfile2.dtx}{install}}% - \file{attachfile2.drv}{\from{attachfile2.dtx}{driver}}% - \usedir{tex/latex/oberdiek}% - \file{attachfile2.sty}{\from{attachfile2.dtx}{package}}% - \file{atfi-dvips.def}{\from{attachfile2.dtx}{dvips}}% - \file{atfi-pdftex.def}{\from{attachfile2.dtx}{pdftex}}% - \file{atfi-luatex.def}{\from{attachfile2.dtx}{luatex}}% - \file{atfi-dvipdfmx.def}{\from{attachfile2.dtx}{dvipdfmx}}% - \nopreamble - \nopostamble - \usedir{scripts/oberdiek}% - \csname execfiletrue\endcsname - \file{pdfatfi.pl}{\from{attachfile2.dtx}{pdfatfi}}% -% \usedir{source/latex/oberdiek/catalogue}% -% \file{attachfile2.xml}{\from{attachfile2.dtx}{catalogue}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* files into a directory searched by TeX:} -\Msg{*} -\Msg{* attachfile2.sty, atfi-dvips.def, atfi-pdftex.def,} -\Msg{* atfi-dvipdfmx.def} -\Msg{*} -\Msg{* And install the following script file:} -\Msg{*} -\Msg{* pdfatfi.pl} -\Msg{*} -\Msg{* To produce the documentation run the file `attachfile2.drv'} -\Msg{* through LaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -%</install> -%<*ignore> -\fi -%</ignore> -%<*driver> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{attachfile2.drv}% - [2019/07/24 v2.9 Attach files into PDF (HO)]% -\documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/11/22] -\begin{document} - \DocInput{attachfile2.dtx}% -\end{document} -%</driver> -% \fi -% -% -% \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{attachfile2.drv} -% -% \title{The \xpackage{attachfile2} package} -% \date{2019/07/24 v2.9} -% \author{Heiko Oberdiek\thanks -% {Please report any issues at \url{https://github.com/ho-tex/oberdiek/issues}}} -% -% \maketitle -% -% \begin{abstract} -% This package can be used to attach files to a PDF document. -% It is a further development of Scott Pakin's package -% \xpackage{attachfile} for \pdfTeX. Apart from bug fixes, -% package \xpackage{attachfile2} adds support for \xoption{dvips}, -% some new options, gets and writes meta information data about -% the attached files. -% \end{abstract} -% -% \tableofcontents -% -% \section{Documentation} -% -% \subsection{Introduction} -% -% The PDF format (\cite{pdfspec}) allows the inclusion of files -% inside the PDF document. The included files can be bound to an -% annotation on a page. Or they can be recorded in a sorted -% list of embedded files. The packages \xpackage{attachfile} -% or \xpackage{attachfile2} follow the first approach, -% package \xpackage{embedfile} uses the latter method. -% -% \subsubsection{Future development} -% -% My dream is a large package that merges the features of -% all these packages meantioned before: -% \begin{itemize} -% \item Files can be attached to a page. -% \item Files can be attached to the document. -% \item An easy user interface for simple, common tasks and -% beginners. -% \item An interface for the advanced users that want to setup -% every detail. -% \item Support of many drivers (pdftex, dvips, dvipdfm, \dots). -% \item \dots -% \end{itemize} -% However, I have not managed to take the time for this project. -% Instead: -% \begin{itemize} -% \item First I experimented with package \xpackage{attachfile}, -% adding driver support, fixing bugs, \dots. The result is -% currently named as \xpackage{attachfile2}. It uses an external -% script to get file properties (size, date, checksum, \dots). -% \item In order to avoid an external program for getting basic -% file properties I provided a patch ``EscapeAndOther'' for -% pdfTeX that was accepted for version 1.30. -% \item Package \xpackage{embedfile} closes a gap left by the -% packages for attaching -% files and allows the embedding of files to the document. -% Also it makes use of the new primitives of \pdfTeX. -% \end{itemize} -% Until this future becomes true, I provide the intermediate -% step \xpackage{attachfile2} at its current state. -% There are many things to do: -% \begin{itemize} -% \item Documentation, documentation, \dots -% \item Improving portability of the Perl script \xfile{pdfatfi.pl} -% (Windows, non-GNU, \dots). -% \item Comfortable program for extracting embeddd files. -% \item Embedding files to the document, see package \xpackage{embedfile}. -% \item Additionally use featurs of \pdfTeX\ 1.30. With a recent -% \pdfTeX\ the Perl script step is then obsolete. -% \item GoToE links. -% \item Layout of PinPush, especially the tip does not scale well. -% \item Driver for \xoption{dvipsone}, similar to \xoption{dvips}, changes: -% \begin{itemize} -% \item coordinate transformation need to be fixed here, -% \xfile{hdvipson.def} contains: -% \begin{quote} -%\begin{verbatim} -%/DvipsToPDF { 65781 div } def -%/PDFToDvips { 65781 mul } def -%\end{verbatim} -% \end{quote} -% \item Syntax for \cs{special}: \xfile{hdvipson.def} contains -% both \verb|\special{! #1}| and -% \verb|\special{headertext= #1}|. Are bothe the same? -% \end{itemize} -% \item File name conversion, see PDF specification: -% \begin{quote} -% \verb|c:\somewhere\foobar.txt| $\rightarrow$ -% \verb|/c/somewhere/foobar.txt| -% \end{quote} -% \item Option \xoption{scale} for icons? -% \item Compatibility for \plainTeX. -% \item ToDos for \xfile{atfidvips.def}. -% \end{itemize} -% -% \subsection{User interface} -% -% Basically this package \xpackage{attachfile2} follows the -% user interface of package \xpackage{attachfile}, -% look into its documentation (\cite{attachfile}). -% -% \subsubsection{New options} -% \begin{itemize} -% \item Driver options \xoption{dvips}, \xoption{pdftex}, -% \xoption{dvipdfmx} and \xoption{xetex} that is an -% alias for \xoption{dvipdfmx}. -% \item Option \xoption{driverfallback} specifies a DVI driver -% if the driver cannot be detected automatically. -% \item New options \xoption{final} and \xoption{draft}. -% \item New option \xoption{scale} for scaling the annotation rectangle. -% \item Options \xoption{file} and \xoption{nofile} for controlling -% the generation of the auxiliary file \xfile{.atfi}. -% \item New option \xoption{ucfilespec} for file names with -% characters outside ASCII (PDF 1.7). -% \end{itemize} -% -% \subsubsection{Option \xoption{color}} -% -% Package \xpackage{attachfile}'s option \xoption{color} only -% understands explicit RGB values as three space separated -% real numbers in the range from 0 to 1. -% -% This package \xpackage{attachfile2} extends the syntax. -% The usual color specifications of packages \xpackage{color} -% or \xpackage{xcolor} may be used. The latter one requires -% that package \xpackage{xcolor} is loaded. -% Without package \xpackage{xcolor} a limited range of -% explicit color specifications are supported, the color models -% \texttt{rgb} and \texttt{gray} (and \texttt{cmyk} if -% package \xpackage{hyperref}'s option \xoption{pdfversion} is set -% to \texttt{1.7} or greater. -% -% Example without package \xpackage{xcolor}: -%\begin{quote} -%\begin{verbatim} -%\documentclass{article} -%\usepackage[color={1 0 .5}]{attachfile2} -% % Spaces in option values in \usepackage or \documentclass -% % must be protected by curly braces. Otherwise LaTeX strips -% % the spaces and the package would see `color=10.5'. -% % This protection is not necessary for \attachfilesetup. -%\attachfilesetup{color=1 0 .5} -%\attachfilesetup{color=[rgb]{1,0,.5}} -%\attachfilesetup{color=[gray]{.5}} -%\end{verbatim} -%\end{quote} -% -% The following example with package \xpackage{xcolor} shows -% additional color specifications: -%\begin{quote} -%\begin{verbatim} -%\documentclass{article} -%\usepackage{xcolor} -%\definecolor{attachfilecolor}{cmyk}{.1,.2,.3,.4} -%\usepackage{color=red}{attachfile2} -%\attachfilesetup{color=red} -%\attachfilesetup{color=attachfilecolor} -%\end{verbatim} -%\end{quote} -% -% \paragraph{For experts.}% -% If the color is used in annotations, the color is converted -% with the help of package \xpackage{xcolor} to RGB. -% PDF versions 1.7 or later also understand color models Gray and -% CMYK. The PDF version is detected if the experimental -% option \xoption{pdfversion} -% of package \xpackage{hyperref} is used, example: -%\begin{quote} -%\begin{verbatim} -%\documentclass{article} -%\usepackage[pdfversion=1.7]{hyperref} -%\usepackage{attachfile2} -%\end{verbatim} -%\end{quote} -% However, currently only driver \xoption{pdftex} also supports -% the actual setting of the PDF version in the output PDF file. -% -% \subsubsection{Perl script \xfile{pdfatfi.pl}} -% -% This package also tries to get and add meta information data, -% such as file size, file date, checksum, \dots. -% As package \xpackage{embedfile} shows the new features -% of \pdfTeX\ 1.30 are very useful for getting this kind of -% data. Since version 2.6 these data are used if available. -% -% For older versions of \pdfTeX\ and \XeTeX\ the Perl script -% \xfile{pdfatfi.pl} is provided to get this data. -% The use of the Perl script is not mandatory. This data can be shown -% by PDF viewers, but they are not a requirement of the PDF specification. -% -% Package \xpackage{attachfile2} and the Perl script communicate -% via an auxiliary file with file extension \xfile{.atfi}. The script -% is used between two \LaTeX\ runs and updates the auxiliary file, -% example for \xoption{dvips}: -% \begin{quote} -%\begin{verbatim} -%latex test -%pdfatfi test -%latex test -%dvips test -%ps2pdf test.ps test.pdf -%\end{verbatim} -% \end{quote} -% -% \subsection{Changes to \xpackage{attachfile}} -% -% Some of the changes I can remember: -% \begin{itemize} -% \item Support for dvips. -% \item Support for dvipdfmx/\XeTeX. -% \item Setting and filling the /Param entry for files -% (file date, file size, \dots). -% \item Perl script \xfile{pdfatfi.pl}. -% \item New options. -% \item Bug fixes. -% \item \dots -% \end{itemize} -% -% \StopEventually{ -% } -% -% \section{Implementation} -% -% \subsection{Package} -% -% \begin{macrocode} -%<*package> -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{attachfile2}% - [2019/07/24 v2.9 Attach files into PDF (HO)]% -% \end{macrocode} -% -% \subsubsection{Loading of packages} -% -% \begin{macrocode} -\RequirePackage{ifpdf}[2009/04/10] -\RequirePackage{ifxetex} -\RequirePackage{ifluatex}[2009/04/10] -\RequirePackage{keyval} -\RequirePackage{color} -\RequirePackage{infwarerr}[2010/04/08] -\RequirePackage{ltxcmds}[2010/04/26] -\RequirePackage{kvoptions}[2009/07/21] -\RequirePackage{pdftexcmds}[2010/04/01] -\RequirePackage{pdfescape}[2007/11/11] -% \end{macrocode} -% Package \xpackage{hyperref} is needed because of \cs{pdfstringdef}. -% \begin{macrocode} -\RequirePackage{hyperref} -\RequirePackage{hycolor}[2008/07/29] -% \end{macrocode} -% -% \subsubsection{Value checking} -% -% \begin{macro}{\atfi@Match} -% \begin{macrocode} -\ltx@IfUndefined{pdfmatch}{% - \def\atfi@Match#1#2#3#4#5{}% -}{% - \def\atfi@Match#1#2#3{% - \begingroup - \edef\^{\ltx@backslashchar\string^}% - \edef\.{\ltx@backslashchar.}% - \let\#\ltx@hashchar - \edef\[{\ltx@backslashchar[}% ]] - \edef\${\ltx@backslashchar$}% - \let\%\ltx@percentchar - \edef\&{\string&}% - \edef\({\ltx@backslashchar(}% - \edef\){\ltx@backslashchar)}% - \edef\|{\ltx@backslashchar|}% - \edef\*{\ltx@backslashchar*}% - \edef\+{\ltx@backslashchar+}% - \edef\?{\ltx@backslashchar?}% - \edef\{{\ltx@backslashchar\ltx@leftbracechar}% - \edef\}{\ltx@rightbracechar}% - \edef\\{\ltx@backslashchar\ltx@backslashchar}% - \edef\~{\string~}% - \ifcase\pdfmatch#3{#2}{#1} % - \endgroup - \expandafter\ltx@secondoftwo - \or - \endgroup - \expandafter\ltx@firstoftwo - \else - \atfi@Warning{% - Internal error: Wrong pattern!\MessageBreak - --> #2 <--\MessageBreak - Pattern check ignored% - }% - \endgroup - \expandafter\ltx@firstoftwo - \fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@PatToken} -% \begin{macrocode} - \def\atfi@PatToken{% - [% - -% first character - !% - \#$\%\&'% - \*\+\.% - 0-9% - A-Z% - \^_`% - a-z% - \{\}\|\~% - ]+% - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@CR} -% \begin{macrocode} - \begingroup - \lccode64=13 % @ - \lowercase{\endgroup - \def\atfi@CR{@}% - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@PatQuotedString} -% \begin{macrocode} - \def\atfi@PatQuotedString{% - "% - ([^"\\\atfi@CR]|\\.)*% - "% - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} - \ltx@ifpackagelater{ltxcmds}{2010/09/11}{}{% -% \end{macrocode} -% \begin{macro}{\atfi@ltx@leftbracechar} -% \begin{macrocode} - \begingroup - \lccode`0=`\{\relax - \lowercase{\endgroup - \def\ltx@leftbracechar{0}% - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ltx@rightbracechar} -% \begin{macrocode} - \begingroup - \lccode`0=`\}\relax - \lowercase{\endgroup - \def\ltx@rightbracechar{0}% - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} - }% -} -% \end{macrocode} -% -% \begin{macro}{\atfi@Warning} -% \begin{macrocode} -\def\atfi@Warning{\PackageWarning{attachfile2}} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Option declarations} -% -% \begin{macrocode} -\SetupKeyvalOptions{% - family=AtFi,% - prefix=atfi@% -} -% \end{macrocode} -% \begin{macro}{\atfi@setup} -% \begin{macrocode} -\def\atfi@setup{\setkeys{AtFi}} -% \end{macrocode} -% \end{macro} -% -% Options \xoption{draft} and \xoption{final}. -% \begin{macrocode} -\DeclareBoolOption{draft} -\DeclareComplementaryOption{final}{draft} -% \end{macrocode} -% -% Option \xoption{mimetype}. -% \begin{macro}{\atfi@mimetype} -% \begin{macrocode} -\def\atfi@mimetype{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{mimetype}{% - \edef\atfi@mimetype{#1}% - \ifx\atfi@mimetype\ltx@empty - \else - \atfi@Match\atfi@mimetype{% - ^(application|audio|image|model|text|video|x-\atfi@PatToken)% - /% - ([a-z\-\+_\.0-9]+)% - (; ?\atfi@PatToken=(\atfi@PatToken|\atfi@PatQuotedString))*$% - }{icase}{}{% - \atfi@Warning{% - Invalid value `\atfi@mimetype'\MessageBreak - of option `mimetype'.\MessageBreak - Value is discarded% - }% - \let\atfi@mimetype\ltx@empty - }% - \fi - \ifx\atfi@mimetype\ltx@empty - \else - \EdefEscapeName\atfi@mimetype{\atfi@mimetype}% - \edef\atfi@mimetype{/Subtype/\atfi@mimetype}% - \fi -} -% \end{macrocode} -% -% Option \xoption{icon} -% \begin{macrocode} -\define@key{AtFi}{icon}{% - \def\atfi@icon{/Name/#1}% - \def\atfi@icon@icon{#1}% -} -\atfi@setup{icon=PushPin} -% \end{macrocode} -% -% Option \xoption{color} -% \begin{macrocode} -\define@key{AtFi}{color}{% - \HyColor@AttachfileColor{#1}% - \atfi@color@tex\atfi@color@inline\atfi@color@annot - {attachfile2}{color}% -} -\atfi@setup{color=1 0.9255 0.7765} -% \end{macrocode} -% -% time options timezone and date -% \begin{macro}{\atfi@pad@ii} -% \begin{macrocode} -\def\atfi@pad@ii#1{% - \ifnum#1>9 % - \number#1% - \else - 0\number#1% - \fi% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{atfi@timezone} -% \begin{macrocode} -\let\atfi@timezone\ltx@empty -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{timezone}{\def\atfi@timezone{#1}} -% \end{macrocode} -% \begin{macro}{\atfi@time} -% \begin{macrocode} -\edef\atfi@time{\the\time} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@hours} -% \begin{macrocode} -\def\atfi@hours{% - \numexpr\dimexpr0.01667\dimexpr\atfi@time sp\relax\relax\relax -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@minutes} -% \begin{macrocode} -\def\atfi@minutes{% - \numexpr\atfi@time-60*\atfi@hours\relax -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@seconds} -% \begin{macrocode} -\def\atfi@seconds{0} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@date} -% \begin{macrocode} -\def\atfi@date{% - /M(D:\the\year - \atfi@pad@ii\month - \atfi@pad@ii\day - \atfi@pad@ii\atfi@hours - \atfi@pad@ii\atfi@minutes - \atfi@pad@ii\atfi@seconds - \atfi@timezone)% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{date}{% - \EdefEscapeString\atfi@date{#1}% - \edef\atfi@date{/M(\atfi@date)}% -} -% \end{macrocode} -% -% Text options author, description, and subject -% \begin{macro}{\atfi@pdfstringdef} -% \begin{macrocode} -\DeclareRobustCommand{\atfi@pdfstringdef}[2]{% - \pdfstringdef\atfi@temp@string{#2}% - \edef#1{\atfi@temp@string}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@NoValue} -% \begin{macrocode} -\def\atfi@NoValue{\NoValue} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@DefNoValueName} -% \begin{macrocode} -\def\atfi@DefNoValueName#1#2#3{% - \def#1{#3}% - \ifx#1\atfi@NoValue - \let#1\ltx@empty - \else - \atfi@pdfstringdef#1{#1}% - \edef#1{/#2(#1)}% - \fi -} -% \end{macrocode} -% \end{macro} -% -% Name for annotation to be used in GoToE actions -% \begin{macro}{\atfi@annotname} -% \begin{macrocode} -\let\atfi@annotname\ltx@empty -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{annotname}[\NoValue]{% - \atfi@DefNoValueName\atfi@annotname{NM}{#1}% -} -% \end{macrocode} -% -% Option \xoption{author}. -% \begin{macro}{\atfi@author} -% \begin{macrocode} -\def\atfi@author{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{author}[\NoValue]{% - \atfi@DefNoValueName\atfi@author{T}{#1}% -} -% \end{macrocode} -% -% Option \xoption{description}. -% \begin{macro}{\atfi@description} -% \begin{macrocode} -\def\atfi@description{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{description}[\NoValue]{% - \atfi@DefNoValueName\atfi@description{Contents}{#1}% -} -% \end{macrocode} -% -% Option \xoption{subject}. -% \begin{macro}{\atfi@subject} -% \begin{macrocode} -\def\atfi@subject{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{subject}[\NoValue]{% - \atfi@DefNoValueName\atfi@subject{Subj}{#1}% -} -% \end{macrocode} -% -% Option \xoption{print}. -% \begin{macrocode} -\DeclareBoolOption[true]{print} -% \end{macrocode} -% -% Option \xoption{zoom}. -% \begin{macrocode} -\DeclareBoolOption[true]{zoom} -% \end{macrocode} -% -% Option \xoption{appearance}. -% \begin{macrocode} -\DeclareBoolOption[true]{appearance} -% \end{macrocode} -% -% Option \xoption{scale}. -% \begin{macrocode} -\DeclareStringOption[1]{scale} -% \end{macrocode} -% -% Option \xoption{ucfilespec}. -% \begin{macro}{\atfi@ucfilespec} -% \begin{macrocode} -\def\atfi@ucfilespec{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{AtFi}{ucfilespec}[1]{% - \def\atfi@ucfilespec{#1}% - \ifx\atfi@ucfilespec\ltx@empty - \else - \atfi@pdfstringdef\atfi@ucfilespec{#1}% - \fi -} -% \end{macrocode} -% -% Option \xoption{nofiles}. -% \begin{macrocode} -\DeclareBoolOption{nofiles} -% \end{macrocode} -% -% Driver options. -% \begin{macrocode} -\let\atfi@driver\ltx@empty -\def\atfi@driver@pdftex{pdftex} -\def\atfi@driver@luatex{luatex} -\def\atfi@driver@dvips{dvips} -\def\atfi@driver@dvipdfmx{dvipdfmx} -% \end{macrocode} -% \begin{macrocode} -\DeclareVoidOption{pdftex}{% - \ifpdf - \let\atfi@driver\atfi@driver@pdftex - \else - \let\atfi@driver\ltx@empty - \PackageError{attachfile2}{% - Wrong driver option `pdftex',\MessageBreak - because pdfTeX in PDF mode is not detected% - }\@ehc - \fi -} -\DeclareVoidOption{luatex}{% - \let\atfi@driver\atfi@driver@luatex -} -\DeclareVoidOption{dvips}{% - \let\atfi@driver\atfi@driver@dvips -} -\DeclareVoidOption{dvipdfmx}{% - \let\atfi@driver\atfi@driver@dvipdfmx -} -\DeclareVoidOption{xetex}{% - \let\atfi@driver\atfi@driver@dvipdfmx -} -% \end{macrocode} -% \begin{macrocode} -\DeclareStringOption{driverfallback} -% \end{macrocode} -% -% \begin{macro}{\attachfilesetup} -% \begin{macrocode} -\DeclareRobustCommand{\attachfilesetup}[1]{\setkeys{AtFi}{#1}} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\DeclareLocalOptions{% - annotname,% - appearance,% - author,% - color,% - date,% - description,% - icon,% - mimetype,% - nofiles,% - print,% - scale,% - subject,% - timezone,% - ucfilespec,% - zoom,% -} -% \end{macrocode} -% -% \subsubsection{Option calling} -% -% Timezone setting, \dots -% \begin{macrocode} -\InputIfFileExists{attachfile.cfg}{}{} -% \end{macrocode} -% \begin{macrocode} -\ProcessKeyvalOptions* -% \end{macrocode} -% -% \begin{macro}{\atfi@DisableOption} -% \begin{macrocode} -\def\atfi@DisableOption{% - \DisableKeyvalOption[action=error,package=attachfile2]{AtFi}% -} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Evaluate driver options} -% -% \begin{macrocode} -\ifpdf - \ifluatex - \let\atfi@driver\atfi@driver@luatex - \else - \let\atfi@driver\atfi@driver@pdftex - \fi -\else - \ifxetex - \let\atfi@driver\atfi@driver@dvipdfmx - \else - \ifx\atfi@driver\ltx@empty - \ifx\atfi@driverfallback\ltx@empty - \else - \expandafter\let\expandafter\atfi@driver - \csname atfi@driver@\atfi@driverfallback\endcsname - \ifx\atfi@driver\atfi@driver@dvips - \else - \ifx\atfi@driver\atfi@driver@dvipdfmx - \else - \let\atfi@driver\ltx@empty - \PackageWarningNoLine{attachfile2}{% - Option `driverfallback' with unsupported\MessageBreak - DVI driver (\atfi@driverfallback)% - }% - \fi - \fi - \fi - \ifx\atfi@driver\ltx@empty - \PackageWarningNoLine{attachfile2}{% - Driver is not specified,\MessageBreak - enforce draft settings% - }% - \atfi@drafttrue - \fi - \fi - \fi -\fi -% \end{macrocode} -% \begin{macrocode} -\atfi@DisableOption{pdftex} -\atfi@DisableOption{dvips} -\atfi@DisableOption{dvipdfmx} -\atfi@DisableOption{xetex} -\atfi@DisableOption{driverfallback} -% \end{macrocode} -% -% \subsubsection{Evaluate options \xoption{draft}/\xoption{final}} -% -% \begin{macro}{\notextattachfile} -% \begin{macrocode} -\DeclareRobustCommand{\notextattachfile}[2][]{% - \begingroup - \atfi@setup{#1}% - \ifatfi@print - \leavevmode - \begingroup - \HyColor@UseColor\atfi@color@tex - #2\strut - \endgroup - \else - \sbox\ltx@zero{#2\strut}% - \makebox[\wd0]{}% - \fi - \endgroup -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\atfi@DisableOption{draft}% -\atfi@DisableOption{final}% -\ifatfi@draft - \def\atfi@dummy@pushpin{% - \raisebox{-1.25bp}{\parbox[b][14bp]{24bp}{}}% - }% - \DeclareRobustCommand{\textattachfile}[3][]{% - \notextattachfile[{#1}]{#3}% - }% - \DeclareRobustCommand{\noattachfile}[1][]{% - \notextattachfile[{#1}]{\atfi@dummy@pushpin}% - }% - \DeclareRobustCommand{\attachfile}[2][]{% - \noattachfile[{#1}]% - }% - \expandafter\endinput -\fi -% \end{macrocode} -% -% \subsubsection{Load driver file} -% -% \begin{macrocode} -\input{atfi-\atfi@driver.def} -% \end{macrocode} -% -% \subsubsection{Graphics} -% -% \begin{macro}{\atfi@acroGraph@data} -% \begin{macrocode} -\def\atfi@acroGraph@data{% - \atfi@GSAVE - 0.5 \atfi@SETGRAYFILL - 1.1133 0 20.7202 18.2754 \atfi@RECTFILL - 0 \atfi@SETFLAT - 0.5 \atfi@SETLINEWIDTH - 4 \atfi@SETMITERLIMIT - \atfi@RECTSTROKEFILL{% - 1 \atfi@SETGRAYFILL - }{% - 0 \atfi@SETGRAYSTROKE - }{% - 0.25 1.6453 20.145 17.7715 % - }% - 0 \atfi@SETGRAYFILL - 2.7319 4.1367 3.9571 13.8867 \atfi@RECTFILL - 8.7031 4.1367 3.9571 9.8867 \atfi@RECTFILL - 14.7471 4.1367 3.9571 11.8867 \atfi@RECTFILL - \atfi@color@inline{FILL}% - 1.689 3.0938 3.9571 13.8867 \atfi@RECTFILL - 7.6602 3.0938 3.9571 9.8867 \atfi@RECTFILL - 13.7041 3.0938 3.9571 11.8867 \atfi@RECTFILL - \atfi@GRESTORE -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroGraph} -% \begin{macrocode} -\def\atfi@acroGraph{% - \raisebox{-1.5bp}{\parbox[b][20bp]{22bp}{% - \rule{0pt}{0pt}\atfi@literal{\atfi@acroGraph@data}}% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroPaperclip@data} -% \begin{macrocode} -\newcommand{\atfi@acroPaperclip@data}{% - \atfi@GSAVE - 0.75 \atfi@SETGRAYSTROKE - 0 \atfi@SETFLAT - 2.5 \atfi@SETLINEWIDTH - 1 \atfi@SETLINECAP - 4 \atfi@SETMITERLIMIT - 1.9619 11.7559 \atfi@MOVETO - 1.9619 3.3037 1.9619 2.5059 \atfi@CURVETOV - 1.9619 1.707 4.0947 1.25 \atfi@CURVETOY - 7.4141 1.25 \atfi@LINETO - 9.4292 1.8223 9.4292 3.3066 \atfi@CURVETOV - 9.4292 4.79 9.4292 16.8945 \atfi@CURVETOY - 9.7852 18.1514 8.481 18.1514 \atfi@CURVETOV - 7.1768 18.1514 5.1616 18.1514 \atfi@CURVETOY - 3.8574 17.9209 3.8574 16.8945 \atfi@CURVETOV - 3.8574 15.8652 3.8574 6.6172 \atfi@CURVETOY - 4.3325 5.418 5.1025 5.418 \atfi@CURVETOV - 5.8726 5.418 6.5845 5.418 \atfi@CURVETOY - 7.6812 5.6455 7.6812 6.4736 \atfi@CURVETOV - 7.6812 7.3027 7.6812 11.5264 \atfi@CURVETOY - \atfi@STROKE - 0 \atfi@SETGRAYSTROKE - 1.2495 12.4404 \atfi@MOVETO - 1.2495 3.9883 1.2495 3.1895 \atfi@CURVETOV - 1.2495 2.3906 3.3833 1.9326 \atfi@CURVETOY - 6.7026 1.9326 \atfi@LINETO - 8.7178 2.5068 8.7178 3.9902 \atfi@CURVETOV - 8.7178 5.4736 8.7178 17.5781 \atfi@CURVETOY - 9.0732 18.834 7.769 18.834 \atfi@CURVETOV - 6.4653 18.834 4.4497 18.834 \atfi@CURVETOY - 3.146 18.6055 3.146 17.5781 \atfi@CURVETOV - 3.146 16.5498 3.146 7.3018 \atfi@CURVETOY - 3.6201 6.1016 4.3911 6.1016 \atfi@CURVETOV - 5.1611 6.1016 5.873 6.1016 \atfi@CURVETOY - 6.9692 6.3301 6.9692 7.1572 \atfi@CURVETOV - 6.9692 7.9863 6.9692 12.21 \atfi@CURVETOY - \atfi@STROKE - \atfi@color@inline{STROKE}% - 1 \atfi@SETLINEWIDTH - 1.2495 12.4404 \atfi@MOVETO - 1.2495 3.9883 1.2495 3.1895 \atfi@CURVETOV - 1.2495 2.3906 3.3833 1.9326 \atfi@CURVETOY - 6.7026 1.9326 \atfi@LINETO - 8.7178 2.5068 8.7178 3.9902 \atfi@CURVETOV - 8.7178 5.4736 8.7178 17.5781 \atfi@CURVETOY - 9.0732 18.834 7.769 18.834 \atfi@CURVETOV - 6.4653 18.834 4.4497 18.834 \atfi@CURVETOY - 3.146 18.6055 3.146 17.5781 \atfi@CURVETOV - 3.146 16.5498 3.146 7.3018 \atfi@CURVETOY - 3.6201 6.1016 4.3911 6.1016 \atfi@CURVETOV - 5.1611 6.1016 5.873 6.1016 \atfi@CURVETOY - 6.9692 6.3301 6.9692 7.1572 \atfi@CURVETOV - 6.9692 7.9863 6.9692 12.21 \atfi@CURVETOY - \atfi@STROKE - \atfi@GRESTORE -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroPaperclip} -% \begin{macrocode} -\def\atfi@acroPaperclip{% - \raisebox{-1.25bp}{\parbox[b][21bp]{12bp}{% - \rule{0pt}{0pt}\atfi@literal{\atfi@acroPaperclip@data}}% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroPushPin@data} -% \begin{macrocode} -\def\atfi@acroPushPin@data{% - \atfi@GSAVE - 1 \atfi@SETLINEWIDTH - 1 6 \atfi@MOVETO - 11 6 \atfi@LINETO - 11 13 \atfi@LINETO - 12 13 \atfi@LINETO - 14 11 \atfi@LINETO - 21 11 \atfi@LINETO - 22 12 \atfi@LINETO - 23 12 \atfi@LINETO - 23 2 \atfi@LINETO - 22 2 \atfi@LINETO - 21 3 \atfi@LINETO - 14 3 \atfi@LINETO - 12 1 \atfi@LINETO - 11 1 \atfi@LINETO - 11 6 \atfi@LINETO - \atfi@FILLSTROKE{% - \atfi@color@inline{FILL}% - }{% - 0 \atfi@SETGRAYSTROKE - }% - 0.5 \atfi@SETGRAYSTROKE - 0 7 \atfi@MOVETO - 10 7 \atfi@LINETO - 10 8 \atfi@LINETO - 1 8 \atfi@LINETO - \atfi@STROKE - 1 \atfi@SETGRAYSTROKE - 12 12 \atfi@MOVETO - 14 10 \atfi@LINETO - 22 10 \atfi@LINETO - 22 11 \atfi@LINETO - \atfi@STROKE - \atfi@GRESTORE -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroPushPin} -% \begin{macrocode} -\def\atfi@acroPushPin{% - \raisebox{-1.25bp}{\parbox[b][14bp]{24bp}{% - \rule{0pt}{0pt}\atfi@literal{\atfi@acroPushPin@data}}% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroTag@data} -% \begin{macrocode} -\def\atfi@acroTag@data{% - \atfi@GSAVE - 0.5 \atfi@SETGRAYFILL - 10.0542 14.9873 \atfi@MOVETO - 24.27 14.9873 \atfi@LINETO - 25.252 14.0059 \atfi@LINETO - 25.252 1.1455 \atfi@LINETO - 24.1064 0 \atfi@LINETO - 9.9609 0 \atfi@LINETO - 6.0327 6.0088 \atfi@LINETO - 6.0327 9.002 \atfi@LINETO - 10.0542 14.9873 \atfi@LINETO - 9.3994 9.376 \atfi@MOVETO - 8.5215 9.376 7.8096 8.5596 7.8096 7.5527 \atfi@CURVETO - 7.8096 6.5449 8.5215 5.7285 9.3994 5.7285 \atfi@CURVETO - 10.2778 5.7285 10.9897 6.5449 10.9897 7.5527 \atfi@CURVETO - 10.9897 8.5596 10.2778 9.376 9.3994 9.376 \atfi@CURVETO - \atfi@CLOSEPATH - \atfi@FILL - 0 \atfi@SETFLAT - 0.5 \atfi@SETLINEWIDTH - 4 \atfi@SETMITERLIMIT - 1 \atfi@SETLINEJOIN - 8.5107 16.5313 \atfi@MOVETO - 22.7266 16.5313 \atfi@LINETO - 23.7085 15.5488 \atfi@LINETO - 23.7085 2.6895 \atfi@LINETO - 22.563 1.543 \atfi@LINETO - 8.4175 1.543 \atfi@LINETO - 4.4893 7.5527 \atfi@LINETO - 4.4893 10.5449 \atfi@LINETO - 8.5107 16.5313 \atfi@LINETO - 7.856 10.9199 \atfi@MOVETO - 6.978 10.9199 6.2661 10.1035 6.2661 9.0957 \atfi@CURVETO - 6.2661 8.0879 6.978 7.2715 7.856 7.2715 \atfi@CURVETO - 8.7344 7.2715 9.4463 8.0879 9.4463 9.0957 \atfi@CURVETO - 9.4463 10.1035 8.7344 10.9199 7.856 10.9199 \atfi@CURVETO - \atfi@CLOSEPATH - \atfi@FILLSTROKE{% - \atfi@color@inline{FILL}% - }{% - 0 \atfi@SETGRAYSTROKE - }% - 1 \atfi@SETLINEWIDTH - 12.3291 12.2656 \atfi@MOVETO - 21.1206 12.2656 \atfi@LINETO - \atfi@STROKE - 12.3291 9.1797 \atfi@MOVETO - 21.1206 9.1797 \atfi@LINETO - \atfi@STROKE - 12.3291 6.1875 \atfi@MOVETO - 21.1206 6.1875 \atfi@LINETO - \atfi@STROKE - % 0 \atfi@SETGRAYSTROKE % redundant? - 0.5 \atfi@SETLINEWIDTH - 0 9.0488 \atfi@MOVETO - 6.2661 9.0957 \atfi@LINETO - \atfi@STROKE - 1.4028 5.2148 \atfi@MOVETO - 1.4028 9.6094 \atfi@LINETO - 1.6831 10.6387 2.4316 10.6387 \atfi@CURVETOV - 3.6475 10.6387 3.5542 9.0488 \atfi@CURVETOY - \atfi@STROKE - \atfi@GRESTORE -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@acroTag} -% \begin{macrocode} -\def\atfi@acroTag{% - \raisebox{-1.6bp}{\parbox[b][17bp]{25bp}{% - \rule{0pt}{0pt}\atfi@literal{\atfi@acroTag@data}}% - }% -} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Reading the \xext{atfi} file} -% -% Commands used in \cs{jobname}\xext{atfi}: -% \begin{itemize} -% \item |attachfile@timezone{<timezone in PDF format>}| -% \item -%\begin{verbatim} -%\attachfile@file[ -% Size=<size>, -% CreationDate=<date>, % <date> local time without "D:" and timezone -% ModDateTZ=<date+TZ>, -% ModDate=<date>, -% CheckSum=<checksum> -%]{<filename as hex string>} -%\end{verbatim} -% \end{itemize} -% -% \begin{macro}{\attachfile@timezone} -% \begin{macrocode} -\def\attachfile@timezone#1{% - \ifx\\#1\\% - % no timezone information given - \else - \def\atfi@timezone{#1}% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\attachfile@file} -% \begin{macrocode} -\newcommand*{\attachfile@file}[2][]{% - \EdefUnescapeHex\atfi@filename{#2}% - \ifx\atfi@filename\ltx@empty - \PackageError{attachfile2}{Empty file name}\@ehc - \else - \@namedef{atfi@file@\atfi@filename}{#1}% - \fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\InputIfFileExists{\jobname.atfi}{}{}% -% \end{macrocode} -% -% \begin{macrocode} -\newif\ifatfi@checksum -\define@key{AtFi@file}{CheckSum}{% - \atfi@checksumtrue - \edef\atfi@params{\atfi@params/CheckSum<#1>}% -} -% \end{macrocode} -% \begin{macrocode} -\newif\ifatfi@creationdate -\define@key{AtFi@file}{CreationDateTZ}{% - \ifatfi@creationdate - \else - \atfi@creationdatetrue - \edef\atfi@params{% - \atfi@params - /CreationDate(#1)% - }% - \fi -} -% \end{macrocode} -% \begin{macrocode} -\define@key{AtFi@file}{CreationDate}{% - \ifatfi@creationdate - \else - \atfi@creationdatetrue - \edef\atfi@params{% - \atfi@params - /CreationDate(#1\atfi@timezone)% - }% - \fi -} -% \end{macrocode} -% \begin{macrocode} -\newif\ifatfi@moddate -\define@key{AtFi@file}{ModDateTZ}{% - \ifatfi@moddate - \else - \atfi@moddatetrue - \edef\atfi@params{% - \atfi@params - /ModDate(#1)% - }% - \fi -} -% \end{macrocode} -% \begin{macrocode} -\define@key{AtFi@file}{ModDate}{% - \ifatfi@moddate - \else - \atfi@moddatetrue - \edef\atfi@params{% - \atfi@params - /ModDate(D:#1\atfi@timezone)% - }% - \fi -} -% \end{macrocode} -% -% \begin{macro}{\atfi@pdftexdata} -% \begin{macrocode} -\let\atfi@temp\ltx@one -\ltx@IfUndefined{pdf@filesize}{% - \let\atfi@temp\ltx@zero -}{} -\ltx@IfUndefined{pdf@filemoddate}{% - \let\atfi@temp\ltx@zero -}{} -\ltx@IfUndefined{pdf@filemdfivesum}{% - \let\atfi@temp\ltx@zero -}{} -\ifcase\atfi@temp - \let\atfi@pdftexdata\ltx@gobble -\or - \def\atfi@pdftexdata#1{% - \edef\atfi@temp{\pdf@filesize{#1}}% - \ifx\atfi@temp\ltx@empty - \else - \setkeys{AtFi@file}{Size=\atfi@temp}% - \edef\atfi@temp{\pdf@filemoddate{#1}}% - \ifx\atfi@temp\ltx@empty - \else - \setkeys{AtFi@file}{ModDateTZ=\atfi@temp}% - \fi - \edef\atfi@temp{\pdf@filemdfivesum{#1}}% - \ifx\atfi@temp\ltx@empty - \else - \setkeys{AtFi@file}{CheckSum=\atfi@temp}% - \fi - \fi - }% -\fi -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Writing the \xext{atfi} file} -% -% Respect \cs{nofiles} and option \xoption{nofiles}. -% \cs{nofiles} has more weight than option \xoption{nofiles}. -% \begin{macrocode} -\if@filesw -\else - \atfi@nofilestrue -\fi -\ifatfi@nofiles - \PackageInfo{attachfile2}{% - File `\jobname.atfi' will not be written because of\MessageBreak - \string\nofiles\space or option `nofiles'% - }% -% \end{macrocode} -% \begin{macro}{\atfi@writefile} -% \begin{macrocode} - \let\atfi@writefile\ltx@gobble -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\else -% \end{macrocode} -% \begin{macro}{\atfi@stream} -% \begin{macrocode} - \newwrite\atfi@stream -% \end{macrocode} -% \end{macro} -% \begin{macrocode} - \immediate\openout\atfi@stream=\jobname.atfi\relax - \immediate\write\atfi@stream{% - \string\attachfile@timezone{\atfi@timezone}% - }% -% \end{macrocode} -% \begin{macro}{\atfi@writefile} -% \begin{macrocode} - \def\atfi@writefile#1{% - \begingroup - \EdefEscapeHex\atfi@temp{#1}% - \immediate\write\atfi@stream{% - \string\attachfile@file[% - \ltx@ifundefined{atfi@file@#1}{}{\@nameuse{atfi@file@#1}}% - ]{\atfi@temp}% - }% - \endgroup - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\fi -\atfi@DisableOption{nofiles} -% \end{macrocode} -% -% \begin{macro}{\atfi@attachfile} -% \begin{macrocode} -\def\atfi@attachfile#1#2{% - \ltx@IfUndefined{atfi@fileobj@#2}{% - \atfi@writefile{#2}% - }{% - % don't need duplicates - }% - \atfi@setup{#1}% - \atfi@embedfile{#2}% - \atfi@set@appearance@icon - \atfi@flags@to@int - \atfi@insert@file@annot{#2}% - \endgroup -} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Annotation appearance} -% -% \begin{macro}{\atfi@appearancewidth} -% \begin{macrocode} -\newlength{\atfi@appearancewidth} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@appearanceheight} -% \begin{macrocode} -\newlength{\atfi@appearanceheight} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@appearancedepth} -% \begin{macrocode} -\newlength{\atfi@appearancedepth} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@appearancebox} -% \begin{macrocode} -\newsavebox{\atfi@appearancebox} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@set@appearance@icon} -% \begin{macrocode} -\def\atfi@set@appearance@icon{% - \ltx@IfUndefined{atfi@appobj@\atfi@icon@icon}{% - \savebox{\atfi@appearancebox}{% - \@nameuse{atfi@acro\atfi@icon@icon}% - }% - \expandafter - \xdef\csname atfi@appwidth@\atfi@icon@icon\endcsname{% - \the\wd\atfi@appearancebox - }% - \expandafter - \xdef\csname atfi@appheight@\atfi@icon@icon\endcsname{% - \the\ht\atfi@appearancebox - }% - \expandafter - \xdef\csname atfi@appdepth@\atfi@icon@icon\endcsname{% - \the\dp\atfi@appearancebox - }% - \atfi@xform@icon - \global\expandafter\let - \csname atfi@appobj@\atfi@icon@icon\endcsname - \atfi@appearanceobj - }{% - }% - % optimization: \setlength dropped - \atfi@appearancewidth=% - \@nameuse{atfi@appwidth@\atfi@icon@icon}\relax - \atfi@appearanceheight=% - \@nameuse{atfi@appheight@\atfi@icon@icon}\relax - \atfi@appearancedepth=% - \@nameuse{atfi@appdepth@\atfi@icon@icon}\relax - \expandafter\let\expandafter\atfi@appearanceobj - \csname atfi@appobj@\atfi@icon@icon\endcsname -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@set@appearance} -% \begin{macrocode} -\def\atfi@set@appearance#1{% - \savebox{\atfi@appearancebox}{#1}% - \atfi@appearancewidth=\wd\atfi@appearancebox - \atfi@appearanceheight=\ht\atfi@appearancebox - \atfi@appearancedepth=\dp\atfi@appearancebox - \atfi@xform -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\newcounter{atfi@flags} -% \end{macrocode} -% \begin{macro}{\atfi@flags@to@int} -% \begin{macrocode} -\DeclareRobustCommand{\atfi@flags@to@int}{% - \setcounter{atfi@flags}{0}% - \ifatfi@print - \addtocounter{atfi@flags}{4}% - \fi% - \ifatfi@zoom - \else - \addtocounter{atfi@flags}{8}% - \fi% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@textattachfile} -% \begin{macrocode} -\def\atfi@textattachfile#1#2{% - \endgroup - \atfi@textattachfile@i{#1}{#2}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@textattachfile@i} -% \begin{macrocode} -\def\atfi@textattachfile@i#1#2#3{% - \ltx@IfUndefined{atfi@fileobj@#2}{% - \atfi@writefile{#2}% - }{% - % don't need duplicates - }% - \atfi@setup{#1}% - \atfi@embedfile{#2}% - \atfi@set@appearance{% - \leavevmode - \begingroup - \HyColor@UseColor\atfi@color@tex - #3\strut - \endgroup - }% - \atfi@flags@to@int - \atfi@insert@file@annot{#2}% - \endgroup -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\attachfile} -% \begin{macrocode} -\DeclareRobustCommand{\attachfile}[1][]{% - \begingroup - \let\do\@makeother - \dospecials - \catcode`\{=1\relax - \catcode`\}=2\relax - \atfi@attachfile{#1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\textattachfile} -% \begin{macrocode} -\DeclareRobustCommand{\textattachfile}[1][]{% - \begingroup - \begingroup - \let\do\@makeother - \dospecials - \catcode`\{=1\relax - \catcode`\}=2\relax - \atfi@textattachfile{#1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\noattachfile} -% \begin{macrocode} -\DeclareRobustCommand{\noattachfile}[1][]{% - \begingroup - \atfi@setup{#1}% - \atfi@set@appearance@icon - \ifatfi@print - \expandafter - \atfi@refxform\csname atfi@appobj@\atfi@icon@icon\endcsname - \else - \makebox[\atfi@appearancewidth]{}% - \fi - \endgroup -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -%</package> -% \end{macrocode} -% -% \subsection{Drivers} -% -% \subsubsection{\pdfTeX} -% -% \begin{macrocode} -%<*pdftex> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{atfi-pdftex.def}% - [2019/07/24 v2.9 attachfile2 driver for pdfTeX (HO)]% -% \end{macrocode} -% -% \paragraph{Macros for graphics data} -% -% \begin{macro}{\atfi@literal} -% \begin{macrocode} -\let\atfi@literal\pdfliteral -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\def\atfi@GSAVE{q } -\def\atfi@GRESTORE{Q } -\def\atfi@SETLINEWIDTH{w } -\def\atfi@LINETO{l } -\def\atfi@MOVETO{m } -\def\atfi@STROKE{S } -\def\atfi@FILL{f } -% \atfi@FILLSTROKE{<fill color>}{<stroke color>} -\def\atfi@FILLSTROKE#1#2{#1#2B } -% \end{macrocode} -% color: uppercase are stroke colors, lowercase non-stroke (fill) colors -% PS, however, does not different between stroke and not-stroke colors -% \begin{macrocode} -\def\atfi@SETRGBCOLORSTROKE{RG } -\def\atfi@SETRGBCOLORFILL{rg } -\def\atfi@SETGRAYSTROKE{G } -\def\atfi@SETGRAYFILL{g } -\def\atfi@SETCMYKCOLORSTROKE{K } -\def\atfi@SETCMYKCOLORFILL{k } -\def\atfi@RECTFILL{re f } -\def\atfi@RECTSTROKEFILL#1#2#3{#1#2#3re B } -\def\atfi@SETMITERLIMIT{M } -\def\atfi@SETFLAT{i } -\def\atfi@SETLINECAP{J } -\def\atfi@CURVETO{c } -\def\atfi@CURVETOV{v } -\def\atfi@CURVETOY{y } -\def\atfi@CLOSEPATH{h } -\def\atfi@SETLINEJOIN{j } -% \end{macrocode} -% -% \paragraph{File embedding} -% -% \begin{macrocode} -\define@key{AtFi@file}{Size}{% - \edef\atfi@params{\atfi@params/Size #1}% -} -% \end{macrocode} -% \begin{macro}{\atfi@embedfile} -% \begin{macrocode} -\def\atfi@embedfile#1{% - \ltx@IfUndefined{atfi@fileobj@#1}{% - \begingroup - \let\atfi@params\ltx@empty - \expandafter\let\expandafter\atfi@temp - \csname atfi@file@#1\endcsname - \ifx\atfi@temp\ltx@empty - \let\atfi@temp\relax - \fi - \ifx\atfi@temp\relax - \atfi@pdftexdata{#1}% - \else - \edef\x{% - \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% - }% - \x - \fi - \ifx\atfi@params\ltx@empty - \else - \edef\atfi@params{/Params<<\atfi@params>>}% - \fi - \immediate\pdfobj stream attr {% - /Type/EmbeddedFile% - \atfi@mimetype - \atfi@params - } file {#1}% - \expandafter - \xdef\csname atfi@fileobj@#1\endcsname{\the\pdflastobj}% - \endgroup - }{% - % file already embedded - }% -} -% \end{macrocode} -% \end{macro} -% -% \paragraph{Annotation appearance} -% -% \begin{macro}{\atfi@xform} -% input: \cs{atfi@appearancebox}, output: \cs{atfi@appearanceobj} -% \begin{macrocode} -\def\atfi@xform{% - \immediate\pdfxform\atfi@appearancebox - \edef\atfi@appearanceobj{\the\pdflastxform}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@xform@icon} -% \begin{macrocode} -\let\atfi@xform@icon\atfi@xform -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@refxform} -% \begin{macrocode} -\def\atfi@refxform#1{% - \pdfrefxform#1\relax -} -% \end{macrocode} -% \end{macro} -% -% \paragraph{File attachment annotation} -% -% \begin{macro}{\atfi@insert@file@annot} -% \begin{macrocode} -\def\atfi@insert@file@annot#1{% - \rule{0pt}{0pt}% - \ifatfi@appearance - \def\atfi@appearance@dict{% - /AP<<% - /N \atfi@appearanceobj\space 0 R% - /R \atfi@appearanceobj\space 0 R% - /D \atfi@appearanceobj\space 0 R% - >>% - }% - \else - \let\atfi@appearance@dict\ltx@empty - \fi - \ltx@IfUndefined{atfi@fsobj@#1}{% - \begingroup - \hypersetup{unicode=false}% - \atfi@pdfstringdef\atfi@file{#1}% - \immediate\pdfobj{% - <<% - /Type/Filespec% - /F(\atfi@file)% - \ifx\atfi@ucfilespec\ltx@empty - \else - /UF(\atfi@ucfilespec)% - \fi - /EF<<% - /F \@nameuse{atfi@fileobj@#1} 0 R% - >>% - >>% - }% - \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% - \the\pdflastobj - }% - \endgroup - }{% - }% - \pdfannot width \atfi@scale\atfi@appearancewidth - height \atfi@scale\atfi@appearanceheight - depth \atfi@scale\atfi@appearancedepth {% - /Subtype/FileAttachment% - \atfi@icon - \atfi@color@annot - \atfi@author - \atfi@date - \atfi@annotname - \atfi@description - \atfi@subject - \atfi@appearance@dict - /F \theatfi@flags - /FS \@nameuse{atfi@fsobj@#1} 0 R% - }% - \rule{0pt}{\atfi@appearanceheight}% - \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% - \rule{\atfi@appearancewidth}{0pt}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -%</pdftex> -% \end{macrocode} -% -% \subsection{luatex} -% \begin{macrocode} -%<*luatex> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{atfi-luatex.def}% - [2019/07/24 v2.9 attachfile2 driver for luaTeX (HO)]% -\protected\def\atfi@literal {\pdfextension literal} -\def\atfi@GSAVE{q } -\def\atfi@GRESTORE{Q } -\def\atfi@SETLINEWIDTH{w } -\def\atfi@LINETO{l } -\def\atfi@MOVETO{m } -\def\atfi@STROKE{S } -\def\atfi@FILL{f } -\def\atfi@FILLSTROKE#1#2{#1#2B } -\def\atfi@SETRGBCOLORSTROKE{RG } -\def\atfi@SETRGBCOLORFILL{rg } -\def\atfi@SETGRAYSTROKE{G } -\def\atfi@SETGRAYFILL{g } -\def\atfi@SETCMYKCOLORSTROKE{K } -\def\atfi@SETCMYKCOLORFILL{k } -\def\atfi@RECTFILL{re f } -\def\atfi@RECTSTROKEFILL#1#2#3{#1#2#3re B } -\def\atfi@SETMITERLIMIT{M } -\def\atfi@SETFLAT{i } -\def\atfi@SETLINECAP{J } -\def\atfi@CURVETO{c } -\def\atfi@CURVETOV{v } -\def\atfi@CURVETOY{y } -\def\atfi@CLOSEPATH{h } -\def\atfi@SETLINEJOIN{j } -\define@key{AtFi@file}{Size}{% - \edef\atfi@params{\atfi@params/Size #1}% -} -\def\atfi@embedfile#1{% - \ltx@IfUndefined{atfi@fileobj@#1}{% - \begingroup - \let\atfi@params\ltx@empty - \expandafter\let\expandafter\atfi@temp - \csname atfi@file@#1\endcsname - \ifx\atfi@temp\ltx@empty - \let\atfi@temp\relax - \fi - \ifx\atfi@temp\relax - \atfi@pdftexdata{#1}% - \else - \edef\x{% - \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% - }% - \x - \fi - \ifx\atfi@params\ltx@empty - \else - \edef\atfi@params{/Params<<\atfi@params>>}% - \fi - \immediate\pdfextension obj stream attr {% - /Type/EmbeddedFile% - \atfi@mimetype - \atfi@params - } file {#1}% - \expandafter - \xdef\csname atfi@fileobj@#1\endcsname{\the\numexpr\pdffeedback lastobj\relax}% - \endgroup - }{% - % file already embedded - }% -} -\def\atfi@xform{% - \immediate\saveboxresource\atfi@appearancebox - \edef\atfi@appearanceobj{\the\lastsavedboxresourceindex}% -} -\let\atfi@xform@icon\atfi@xform -\def\atfi@refxform#1{% - \useboxresource#1\relax -} -\def\atfi@insert@file@annot#1{% - \rule{0pt}{0pt}% - \ifatfi@appearance - \def\atfi@appearance@dict{% - /AP<<% - /N \atfi@appearanceobj\space 0 R% - /R \atfi@appearanceobj\space 0 R% - /D \atfi@appearanceobj\space 0 R% - >>% - }% - \else - \let\atfi@appearance@dict\ltx@empty - \fi - \ltx@IfUndefined{atfi@fsobj@#1}{% - \begingroup - \hypersetup{unicode=false}% - \atfi@pdfstringdef\atfi@file{#1}% - \immediate\pdfextension obj{% - <<% - /Type/Filespec% - /F(\atfi@file)% - \ifx\atfi@ucfilespec\ltx@empty - \else - /UF(\atfi@ucfilespec)% - \fi - /EF<<% - /F \@nameuse{atfi@fileobj@#1} 0 R% - >>% - >>% - }% - \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% - \the\numexpr\pdffeedback lastobj\relax - }% - \endgroup - }{% - }% - \pdfextension annot width \atfi@scale\atfi@appearancewidth - height \atfi@scale\atfi@appearanceheight - depth \atfi@scale\atfi@appearancedepth {% - /Subtype/FileAttachment% - \atfi@icon - \atfi@color@annot - \atfi@author - \atfi@date - \atfi@annotname - \atfi@description - \atfi@subject - \atfi@appearance@dict - /F \theatfi@flags - /FS \@nameuse{atfi@fsobj@#1} 0 R% - }% - \rule{0pt}{\atfi@appearanceheight}% - \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% - \rule{\atfi@appearancewidth}{0pt}% -} -%</luatex> -% \end{macrocode} -% -% \subsubsection{dvips} -% -% \begin{macrocode} -%<*dvips> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{atfi-dvips.def}% - [2019/07/24 v2.9 attachfile2 driver for dvips (HO)]% -% \end{macrocode} -% -% \paragraph{Macros for graphics data} -% -% \begin{macro}{\atfi@literal} -% \begin{macrocode} -\def\atfi@literal#1{% - \special{ps:atfi_dict begin{#1}atfi_?pdfmark end}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@header} -% \begin{macrocode} -\def\atfi@header#1{% - \special{! #1}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\atfi@header{% - userdict begin 20 dict dup /atfi_dict exch def end begin% - /atfi_?pdfmark systemdict % - dup/pdfmark known% - {% - /exec get def% - }{% - /pop get def% - } ifelse% - {% - % - % x y width height atfi_re -> - languagelevel 2 ge {% - /atfi_rectfill { rectfill } bind def% - /atfi_rectstroke { rectstroke } bind def% - }{% - /atfi_rect {% - /atfi_height exch def% - /atfi_width exch def% - /atfi_x exch def% - /atfi_y exch def % - newpath % - atfi_x atfi_y moveto % - atfi_x atfi_width add atfi_y lineto % - atfi_x atfi_width add atfi_y atfi_height add lineto % - atfi_x atfi_y atfi_height add lineto % - closepath% - } bind def% - /atfi_rectfill {% - atfi_rect fill% - } bind def% - /atfi_rectstroke {% - atfi_rect stroke% - } bind def% - } ifelse% - /atfi_curveto_v {% - currentpoint 6 2 roll curveto% - } bind def% - /atfi_curveto_y {% - 2 copy curveto% - } bind def% - % - % help macro for atfi_convert_date - /atfi_two {% - dup 10 lt% - {% - 1 string cvs % - exch 1 add exch% - }{% - 2 string cvs% - } ifelse % - putinterval% - } bind def% - % - % <seconds since 1970-01-01> atfi_convert_date -> (D:...Z) - /atfi_convert_date {% - dup% - /atfi_days exch 3600 idiv 24 idiv def% - % calc date part - /atfi_year 1970 def% - {% - atfi_year 400 mod 0 eq % - atfi_year 100 mod 0 ne % - atfi_year 4 mod 0 eq % - and or% - {366} {365} ifelse % - dup atfi_days lt% - {% - atfi_days exch sub /atfi_days exch def% - /atfi_year atfi_year 1 add def% - }{% - exit% - } ifelse% - } loop% - /atfi_month 1 def% - /atfi_days atfi_days 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 366 eq {29} {28} ifelse dup atfi_days lt% - {% - atfi_days exch sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 30 atfi_days lt% - {% - atfi_days 30 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 30 atfi_days lt% - {% - atfi_days 30 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 30 atfi_days lt% - {% - atfi_days 30 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 30 atfi_days lt% - {% - atfi_days 30 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def % - 31 atfi_days lt% - {% - atfi_days 31 sub /atfi_days exch def% - /atfi_month atfi_month 1 add def% - } if% - } if% - } if% - } if% - } if% - } if% - } if% - } if% - } if% - } if% - } { pop } ifelse% - }{ pop } ifelse % - % calc time part - 3600 24 mul mod % - dup 3600 idiv dup /atfi_hour exch def % - 3600 mul sub % - dup 60 idiv dup /atfi_min exch def % - 60 mul sub % - /atfi_sec exch def% - (D:19700101000000Z)% - dup 2 atfi_year 4 string cvs putinterval % - dup 6 atfi_month atfi_two % - dup 8 atfi_days atfi_two % - dup 10 atfi_hour atfi_two % - dup 12 atfi_min atfi_two % - dup 14 atfi_sec atfi_two% - } bind def % - % - % <filename> atfi_calc_checksum -> /CheckSum <checksum> - % or returns nothing, if MD5Encode is not given - false % - languagelevel 2 ge {% - (MD5Encode)% - { pop true or }% - (MD5Encode) length string% - /Filter % - resourceforall% - } if% - {% - /atfi_calc_checksum {% - /atfi_checksum 16 string def% - /atfi_file exch (r) file def% - /atfi_md5sum atfi_checksum /MD5Encode filter def % - % not too efficient to read and write byte by byte, - % using a buffer is probably faster - atfi_size {% - atfi_file read% - {% - atfi_md5sum exch write% - } if% - } repeat % - atfi_md5sum closefile % - atfi_file closefile% - /CheckSum atfi_checksum% - } bind def% - }{% - /atfi_calc_checksum { pop } bind def% - } ifelse% - % - /atfi_pttobp { 72.27 div 72 mul } bind def% - /atfi_pdftodvipsx { 72.27 div Resolution mul } bind def% - /atfi_pdftodvipsy { 72.27 div VResolution mul } bind def% - % - } atfi_?pdfmark % - end% -} -% \end{macrocode} -% \begin{macrocode} -\def\atfi@GSAVE{gsave } -\def\atfi@GRESTORE{grestore } -\def\atfi@SETLINEWIDTH{setlinewidth } -\def\atfi@LINETO{lineto } -\def\atfi@MOVETO{moveto } -\def\atfi@STROKE{stroke } -\def\atfi@FILL{fill } -\def\atfi@FILLSTROKE#1#2{gsave #1 fill grestore #2 stroke } -\def\atfi@SETRGBCOLORSTROKE{setrgbcolor } -\def\atfi@SETRGBCOLORFILL{setrgbcolor } -\def\atfi@SETGRAYSTROKE{setgray } -\def\atfi@SETGRAYFILL{setgray } -\def\atfi@SETCMYKCOLORSTROKE{setcmykcolor } -\def\atfi@SETCMYKCOLORFILL{setcmykcolor } -\def\atfi@RECTFILL{atfi_rectfill } -\def\atfi@RECTSTROKEFILL#1#2#3{% - #3% - #1% - gsave atfi_rectfill grestore % - #2% - #3% - atfi_rectstroke % - #1% -} -\def\atfi@SETMITERLIMIT{setmiterlimit } -\def\atfi@SETFLAT{setflat } -\def\atfi@SETLINECAP{setlinecap } -\def\atfi@CURVETO{curveto } -\def\atfi@CURVETOV{atfi_curveto_v } -\def\atfi@CURVETOY{atfi_curveto_y } -\def\atfi@CLOSEPATH{closepath } -\def\atfi@SETLINEJOIN{setlinejoin } -% \end{macrocode} -% -% \begin{macrocode} -\newcounter{atfi@obj} -\renewcommand*{\theatfi@obj}{% - {atfi_obj_\number\c@atfi@obj}% -} -% \end{macrocode} -% -% \paragraph{File embedding} -% -% Most values for Params dictionary found in the \xext{atfi} file -% have priority: -% \begin{itemize} -% \item Recalculation (md5sum, \dots) is avoided. -% \item An external script has more possibilities than programming -% at PostScript level (operating system, getting the date and -% time values of the file with correct interpretation. -% \item Exception: status is called to test file existence, thus -% we get the value of size for free. -% \end{itemize} -% \begin{macrocode} -\define@key{AtFi@file}{Size}{} -% \end{macrocode} -% \begin{macro}{\atfi@embedfile} -% \begin{macrocode} -\def\atfi@embedfile#1{% - \ltx@IfUndefined{atfi@fileobj@#1}{% - \atfi@pdfstringdef\atfi@psfilename{#1}% - \stepcounter{atfi@obj}% - \expandafter\xdef\csname atfi@fileobj@#1\endcsname{\theatfi@obj}% - \begingroup - \let\atfi@params\ltx@empty - \expandafter\let\expandafter\atfi@temp - \csname atfi@file@#1\endcsname - \ifx\atfi@temp\ltx@empty - \let\atfi@temp\relax - \fi - \ifx\atfi@temp\relax - \atfi@pdftexdata{#1}% - \else - \edef\x{% - \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% - }% - \x - \fi - \atfi@literal{% - /atfi_filename(\atfi@psfilename)def % - atfi_filename status% - {% -% \end{macrocode} -% ok: file found\\ -% save parameters of status command -% \begin{macrocode} - /atfi_created exch def% - /atfi_referenced exch def% - /atfi_size exch def % - pop % -% \end{macrocode} -%\begin{verbatim} -%drop parameter "pages" (storage space), never needed -%ghostscript: -% created: stat.st_ctime -% referenced: stat.st_mtime -% stat.st_ctime: interpretion depends on operating system: -% * unix: inode change time (not interesting) -% * win32: probably creation time -% --> /CreationDate -% stat.st_mtime: modification time --> /ModDate -% time values are seconds since 1970-01-01, GMT -%TODO: ghostscript offers "getenv" for getting the value -% of an environment variable. That could be used to -% to detect windows and settingthe /CreationDate entry. -%TODO: how are these values interpreted by other distiller -% programs? -%\end{verbatim} -% \begin{macrocode} - [% - /_objdef \theatfi@obj - /type/stream% - /OBJ pdfmark% - [% - \theatfi@obj - <<% - /Type/EmbeddedFile% - \atfi@mimetype - /Params% - <<% - \atfi@params - % - /Size atfi_size% - % - /product where% - {% - pop % -% \end{macrocode} -% check for ghostscript -% \begin{macrocode} - product (Ghostscript) search% - {% - pop pop pop % -% \end{macrocode} -% ghostscript is running -% \begin{macrocode} - \ifatfi@creationdate - \else - false % TODO: test for windows - {% - /CreationDate atfi_created atfi_convert_date% - } if% - \fi - \ifatfi@moddate - \else - /ModDate atfi_referenced atfi_convert_date% - \fi - } if% -% \end{macrocode} -% look for MD5Encode filter and calculate CheckSum -% \begin{macrocode} - } if % - \ifatfi@checksum - \else - atfi_filename atfi_calc_checksum% - \fi - >>% - >>% - /PUT pdfmark% - [% - \theatfi@obj - atfi_filename (r) file% - /PUT pdfmark% - [% - \theatfi@obj - /CLOSE pdfmark% - }{% -% \end{macrocode} -% error: file not found\\ -% currently nothing is done -% \begin{macrocode} - } ifelse% - }% - \endgroup - }{% -% \end{macrocode} -% file already embedded -% \begin{macrocode} - }% -} -% \end{macrocode} -% \end{macro} -% -% -% \paragraph{Annotation appearance} -% -% output: \cs{atfi@appearanceobj}\\ -% input: \cs{atfi@appearancebox}, \cs{atfi@icon@icon} -% \begin{macro}{atfi@xfrom@icon} -% \begin{macrocode} -\def\atfi@xform@icon{% - \stepcounter{atfi@obj}% - \edef\atfi@appearanceobj{\theatfi@obj}% - \atfi@literal{% - [% - /_objdef \atfi@appearanceobj - /BBox[% - 0 % - 0 % - \strip@pt\wd\atfi@appearancebox\space atfi_pttobp % - \strip@pt\dimexpr\dp\atfi@appearancebox - +\ht\atfi@appearancebox\relax\space atfi_pttobp% - ]% - /BP pdfmark % - \csname atfi@acro\atfi@icon@icon @data\endcsname - [% - /EP pdfmark% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@xform} -% output: \cs{atfi@appearanceobj}, -% input: \cs{atfi@appearancebox} -% \begin{macrocode} -\def\atfi@xform{% - \stepcounter{atfi@obj}% - \edef\atfi@appearanceobj{\theatfi@obj}% - \begingroup - \setbox\ltx@zero=\hbox{% - \atfi@literal{% - [% - /_objdef \atfi@appearanceobj - /BBox[% - currentpoint % - \strip@pt\dp\atfi@appearancebox\space sub % - currentpoint % - exch \strip@pt\wd\atfi@appearancebox\space add % - exch \strip@pt\ht\atfi@appearancebox\space add% - ]% - /BP pdfmark % - gsave % - currentpoint % - 2 copy translate % - 72.27 Resolution div 72.27 VResolution div neg scale % - exch neg exch neg translate% - }% - \usebox{\atfi@appearancebox}% - \atfi@literal{% - grestore% - [% - /EP pdfmark% - }% - }% - % do not allocate any space for xobject definition - \dp\ltx@zero=\z@ - \ht\ltx@zero=\z@ - \wd\ltx@zero=\z@ - \mbox{\usebox\ltx@zero}% - \endgroup -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@refxform} -% \begin{macrocode} -\def\atfi@refxform#1{% - \raisebox{-\atfi@appearancedepth}{% - \atfi@literal{% - gsave % - currentpoint translate % - Resolution 72 div VResolution neg 72 div scale% - [#1 /SP pdfmark % hash-ok - grestore% - }% - \makebox[\atfi@appearancewidth]{}% - }% - \rule{0pt}{\atfi@appearanceheight}% -} -% \end{macrocode} -% \end{macro} -% -% \paragraph{File attachment annotation} -% -% \begin{macro}{\atfi@insert@file@annot} -% \begin{macrocode} -\def\atfi@insert@file@annot#1{% - \rule{0pt}{0pt}% - \ifatfi@appearance - \def\atfi@appearance@dict{% - /AP<<% - /N \atfi@appearanceobj - /R \atfi@appearanceobj - /D \atfi@appearanceobj - >>% - }% - \else - \let\atfi@appearance@dict\ltx@empty - \fi - \ltx@IfUndefined{atfi@fsobj@#1}{% - \stepcounter{atfi@obj}% - \expandafter - \xdef\csname atfi@fsobj@#1\endcsname{\theatfi@obj}% - \begingroup - \hypersetup{unicode=false}% - \atfi@pdfstringdef\atfi@file{#1}% - \atfi@literal{% - [% - /_objdef \theatfi@obj - /type/dict% - /OBJ pdfmark% - [% - \theatfi@obj - <<% - /Type/Filespec% - /F(\atfi@file)% - \ifx\atfi@ucfilespec\ltx@empty - \else - /UF(\atfi@ucfilespec)% - \fi - /EF<<% - /F \csname atfi@fileobj@#1\endcsname - >>% - >>% - /PUT pdfmark% - }% - \endgroup - }{% - }% - \atfi@literal{% - [% - /Subtype/FileAttachment% - \atfi@icon - \atfi@color@annot - \atfi@author - \atfi@date - \atfi@annotname - \atfi@description - \atfi@subject - \atfi@appearance@dict - /F \theatfi@flags - /FS \csname atfi@fsobj@#1\endcsname - /Rect[% - currentpoint % - \strip@pt\dimexpr\atfi@scale\atfi@appearancedepth\relax - \space atfi_pdftodvipsy add % - currentpoint % - exch % - \strip@pt\dimexpr\atfi@scale\atfi@appearancewidth\relax - \space atfi_pdftodvipsx add % - exch % - \strip@pt\dimexpr\atfi@scale\atfi@appearanceheight\relax - \space atfi_pdftodvipsy sub % - ]% - /ANN pdfmark% - }% - \rule{0pt}{\atfi@appearanceheight}% - \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% - \rule{\atfi@appearancewidth}{0pt}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -%</dvips> -% \end{macrocode} -% -% \subsubsection{dvipdfmx} -% -% \begin{macrocode} -%<*dvipdfmx> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{atfi-dvipdfmx.def}% - [2019/07/24 v2.9 attachfile2 driver for dvipdfmx/XeTeX (HO)]% -% \end{macrocode} -% -% \paragraph{Macros for graphics data} -% -% \begin{macro}{\atfi@special} -% \begin{macrocode} -\def\atfi@special#1{% - \special{pdf:#1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@literal} -% \begin{macrocode} -\def\atfi@literal#1{% - \atfi@special{content #1}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\def\atfi@GSAVE{q } -\def\atfi@GRESTORE{Q } -\def\atfi@SETLINEWIDTH{w } -\def\atfi@LINETO{l } -\def\atfi@MOVETO{m } -\def\atfi@STROKE{S } -\def\atfi@FILL{f } -\def\atfi@FILLSTROKE#1#2{#1#2B } -\def\atfi@SETRGBCOLORSTROKE{RG } -\def\atfi@SETRGBCOLORFILL{rg } -\def\atfi@SETGRAYSTROKE{G } -\def\atfi@SETGRAYFILL{g } -\def\atfi@SETCMYKCOLORSTROKE{K } -\def\atfi@SETCMYKCOLORFILL{k } -\def\atfi@RECTFILL{re f } -\def\atfi@RECTSTROKEFILL#1#2#3{#1#2#3re B } -\def\atfi@SETMITERLIMIT{M } -\def\atfi@SETFLAT{i } -\def\atfi@SETLINECAP{J } -\def\atfi@CURVETO{c } -\def\atfi@CURVETOV{v } -\def\atfi@CURVETOY{y } -\def\atfi@CLOSEPATH{h } -\def\atfi@SETLINEJOIN{j } -% \end{macrocode} -% -% \begin{macrocode} -\newcounter{atfi@obj} -\renewcommand*{\theatfi@obj}{% - @atfi_obj_\number\c@atfi@obj -} -% \end{macrocode} -% -% \paragraph{File embedding} -% -% \begin{macrocode} -\define@key{AtFi@file}{Size}{% - \edef\atfi@params{\atfi@params/Size #1}% -} -% \end{macrocode} -% \begin{macro}{\atfi@embedfile} -% \begin{macrocode} -\def\atfi@embedfile#1{% - \ltx@IfUndefined{atfi@fileobj@#1}{% - \stepcounter{atfi@obj}% - \begingroup - \let\atfi@params\ltx@empty - \expandafter\let\expandafter\atfi@temp - \csname atfi@file@#1\endcsname - \ifx\atfi@temp\ltx@empty - \let\atfi@temp\relax - \fi - \ifx\atfi@temp\relax - \atfi@pdftexdata{#1}% - \else - \edef\x{% - \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% - }% - \x - \fi - \ifx\atfi@params\ltx@empty - \else - \edef\atfi@params{/Params<<\atfi@params>>}% - \fi - \edef\atfi@FILE{#1}% - \filename@parse\atfi@FILE - \ifx\filename@area\ltx@empty - \edef\atfi@FILE{./\atfi@FILE}% - \fi - \EdefEscapeString\atfi@FILE{\atfi@FILE}% - \atfi@special{fstream % - \theatfi@obj - (\atfi@FILE)% - <<% - /Type/EmbeddedFile% - \atfi@mimetype - \atfi@params - >>% - }% - \atfi@special{close \theatfi@obj}% - \expandafter - \xdef\csname atfi@fileobj@#1\endcsname{\theatfi@obj}% - \endgroup - }{% - % file already embedded - }% -} -% \end{macrocode} -% \end{macro} -% -% \paragraph{Annotation appearance} -% -% \begin{macro}{\atfi@xform} -% input: \cs{atfi@appearancebox}, output: \cs{atfi@appearanceobj} -% \begin{macrocode} -\def\atfi@xform{% - \stepcounter{atfi@obj}% - \smash{% - \rlap{% - \atfi@special{bxobj \theatfi@obj\space - width \the\wd\atfi@appearancebox\space - height \the\ht\atfi@appearancebox\space - depth \the\dp\atfi@appearancebox - }% - \usebox\atfi@appearancebox - \atfi@special{exobj}% - }% - }% - \edef\atfi@appearanceobj{\theatfi@obj}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\atfi@xform@icon} -% \begin{macrocode} -\let\atfi@xform@icon\atfi@xform -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\atfi@refxform} -% \begin{macrocode} -\def\atfi@refxform#1{% - \leavevmode - \atfi@special{uxobj #1}% -} -% \end{macrocode} -% \end{macro} -% -% \paragraph{File attachment annotation} -% -% \begin{macro}{\atfi@insert@file@annot} -% \begin{macrocode} -\def\atfi@insert@file@annot#1{% - \rule{0pt}{0pt}% - \ifatfi@appearance - \def\atfi@appearance@dict{% - /AP<<% - /N \atfi@appearanceobj - /R \atfi@appearanceobj - /D \atfi@appearanceobj - >>% - }% - \else - \let\atfi@appearance@dict\ltx@empty - \fi - \ltx@IfUndefined{atfi@fsobj@#1}{% - \begingroup - \ifxetex - \let\atfi@temp\Hy@Warning - \let\Hy@Warning\ltx@gobble - \fi - \hypersetup{unicode=false}% - \ifxetex - \let\Hy@Warning\atfi@temp - \fi - \atfi@pdfstringdef\atfi@file{#1}% - \stepcounter{atfi@obj}% - \atfi@special{obj \theatfi@obj <<% - /Type/Filespec% - /F(\atfi@file)% - \ifx\atfi@ucfilespec\ltx@empty - \else - /UF(\atfi@ucfilespec)% - \fi - /EF<<% - /F \@nameuse{atfi@fileobj@#1}% - >>% - >>% - }% - \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% - \theatfi@obj - }% - \endgroup - }{% - }% - \begingroup - \dimen@=\atfi@scale\atfi@appearancewidth - \edef\atfi@rule{width \the\dimen@}% - \dimen@=\atfi@scale\atfi@appearanceheight - \edef\atfi@rule{\atfi@rule\space height \the\dimen@}% - \dimen@=\atfi@scale\atfi@appearancedepth - \edef\atfi@rule{\atfi@rule\space depth \the\dimen@}% - \atfi@special{ann \atfi@rule - <<% - /Subtype/FileAttachment% - \atfi@icon - \atfi@color@annot - \atfi@author - \atfi@date - \atfi@annotname - \atfi@description - \atfi@subject - \atfi@appearance@dict - /F \theatfi@flags - /FS \@nameuse{atfi@fsobj@#1}% - >>% - }% - \endgroup - \rule{0pt}{\atfi@appearanceheight}% - \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% - \rule{\atfi@appearancewidth}{0pt}% -} -% \end{macrocode} -% \end{macro} -% -% -% \begin{macrocode} -%</dvipdfmx> -% \end{macrocode} -% -% \subsection{Perl script \xfile{pdfatfi.pl}} -% -% \begin{macrocode} -%<*pdfatfi> -% \end{macrocode} -% \begingroup\small -% \SpecialEscapechar\| -% \begin{macrocode} -#!/usr/bin/env perl -use strict; -$^W=1; # turn warning on -# -# pdfatfi.pl -# -# Copyright (C) 2005-2010, 2012 Heiko Oberdiek. -# -# This work may be distributed and/or modified under the -# conditions of the LaTeX Project Public License, either -# version 1.3c of this license or (at your option) any later -# version. This version of this license is in -# https://www.latex-project.org/lppl/lppl-1-3c.txt -# and the latest version of this license is in -# https://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". -# -# The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - -# -# See file "attachfile2.pdf" for a list of files that belong to -# this project. -# -# This file "pdfatfi.pl" may be renamed to "pdfatfi" -# for installation purposes. -# -my $prj = 'pdfatfi'; -my $file = "$prj.pl"; -my $program = uc($&) if $file =~ /^\w+/; -my $version = "2.9"; -my $date = "2019/07/24"; -my $author = "Heiko Oberdiek"; -my $copyright = "Copyright (c) 2005-2010, 2012 by $author."; -# -# History: -# 2005/05/21 v1.0: First release. -# 2006/08/16 v2.2: Included in DTX file of attachfile2.dtx. -# 2010/09/27 v2.6: Keys ModDateTZ and CreationDateTZ added. -# 2016/05/16 v2.8: Option --version added. -# 2019/07/24 v2.9: adapted version to attachfile2 version. -# - -use POSIX qw(strftime); # %z is used (GNU) -use Digest::MD5; - -### program identification -my $title = "$program $version, $date - $copyright\n"; - -### error strings -my $Error = "!!! Error:"; # error prefix - -### variables -my $atfifile; - -### option variables -my @bool = ("false", "true"); -$::opt_help = 0; -$::opt_quiet = 0; -$::opt_debug = 0; -$::opt_verbose = 0; -$::opt_version = 0; - -my $usage = <<"END_OF_USAGE"; -${title}Syntax: \L$program\E [options] <file[.atfi]> -Function: Help program for LaTeX package "attachfile2". -Options: (defaults:) - --help print usage - --version print version number - --(no)quiet suppress messages ($bool[$::opt_quiet]) - --(no)verbose verbose printing ($bool[$::opt_verbose]) - --(no)debug debug informations ($bool[$::opt_debug]) -END_OF_USAGE - -### process options -my @OrgArgv = @ARGV; -use Getopt::Long; -GetOptions( - "help!", - "version!", - "quiet!", - "debug!", - "verbose!", -) or die $usage; -!$::opt_help or die $usage; -if ($::opt_version) { - print "$prj $date v$version\n"; - exit(0); -} -@ARGV == 1 or die "$usage$Error Missing jobname!\n"; - -$::opt_quiet = 0 if $::opt_verbose; - -print $title unless $::opt_quiet; - -### get jobname -$atfifile = $ARGV[0]; -if (!-f $atfifile && -f "$atfifile.atfi") { - $atfifile .= ".atfi"; -} --f $atfifile or die "$Error File `$atfifile' not found!\n"; - -print "* job file = $atfifile\n" if $::opt_verbose; - -if ($::opt_debug) { - print <<"END_DEB"; -* OSNAME: $^O -* PERL_VERSION: $] -* ARGV: @OrgArgv -END_DEB -} - -my $tmpfile = $atfifile . ".tmp"; - -my $timezone = strftime "%z", localtime; - -sub gettz ($) { - my $time = shift; - my $tz = strftime "%z", localtime($time); - return '' unless $tz; - return 'Z' if $tz eq '+0000'; - $tz =~ s/^([+\-]\d\d)(\d\d)$/$1'$2'/; - return $tz; -} - -open(IN, $atfifile) or die "$Error Cannot open `$atfifile'!\n"; -open(OUT, ">$tmpfile") or die "$Error Cannot write `$tmpfile'!\n"; - -while(<IN>) { - # timezone - if (s/^(\\attachfile\@timezone\{).*(\})$/$1$timezone$2/) { - print "* timezone = $timezone\n" if $::opt_verbose; - } - - # file entry - if (/^\\attachfile\@file\[[^\]]*\]\{(.*)\}$/) { - my $hexfile = $1; - my $file = pack('H*', $hexfile); - my @s = stat($file); - if (@s == 0) { - print "!!! Warning: File `$file' not found!\n"; - } - else { - my $size = @s[7]; - my $mtime = @s[9]; - my $ctime = @s[10]; # inode change time - - my ($sec, $min, $hour, $mday, $mon, $year) = - localtime($mtime); - my $moddate = sprintf("%04d%02d%02d%02d%02d%02d", - $year + 1900, $mon + 1, $mday, - $hour, $min, $sec); - my $moddatetz = 'D:' . $moddate . gettz($mtime); - - # Manual page "perlport" says that "ctime" is creation - # time instead of inode change time for "Win32" and - # "Mac OS", but it is unsupported for "Mac OS X". - my $creationdate = ""; - my $creationdatetz = ""; - if ($^O eq 'MSWin32') { # cygwin? - ($sec, $min, $hour, $mday, $mon, $year) = - localtime($ctime); - $creationdate = sprintf("%04d%02d%02d%02d%02d%02d", - $year + 1900, $mon + 1, $mday, - $hour, $min, $sec); - $creationdatetz = - 'D:' . $creationdate . gettz($ctime); - } - - # md5 checksum - my $checksum = ""; - my $ctx = Digest::MD5->new; - if (open(FILE, $file)) { - $ctx->addfile(*FILE); - $checksum = $ctx->hexdigest; - close(FILE); - } - else { - print "!!! Warning: File `$file' cannot be read," - . " dropping checksum!\n"; - } - - $_ = "\\attachfile\@file[" - . "ModDateTZ=$moddatetz" - . ",Size=$size" - . ($checksum ? ",CheckSum=$checksum" : "") - . ($creationdatetz ? - ",CreationDateTZ=$creationdatetz" : - ($creationdate ? - ",CreationDate=$creationdate" : "")) - . "]{$hexfile}\n"; - if ($::opt_verbose) { - print "* file entry = $file\n"; - print " size = $size\n"; - print " moddate = $moddate\n"; - print " creationdate = $creationdate\n" - if $creationdate; - print " checksum = $checksum\n" if $checksum; - } - } - } - - print OUT $_; -} - -close(IN); -close(OUT); - -unlink($atfifile) or die "$Error Cannot delete old `$atfifile'!\n"; -rename $tmpfile, $atfifile - or die "$Error Cannot move `$tmpfile' to `$atfifile'!\n"; - -print "*** ready. ***\n" unless $::opt_quiet; - -__END__ -% \end{macrocode} -% \endgroup -% \begin{macrocode} -%</pdfatfi> -% \end{macrocode} -% -% -% \section{Installation} -% -% \subsection{Download} -% -% \paragraph{Package.} This package is available on -% CTAN\footnote{\CTANpkg{attachfile2}}: -% \begin{description} -% \item[\CTAN{macros/latex/contrib/oberdiek/attachfile2.dtx}] The source file. -% \item[\CTAN{macros/latex/contrib/oberdiek/attachfile2.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[\CTANinstall{install/macros/latex/contrib/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 attachfile2.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@{}} -% attachfile2.sty & tex/latex/oberdiek/attachfile2.sty\\ -% atfi-dvips.def & tex/latex/oberdiek/atfi-dvips.def\\ -% atfi-pdftex.def & tex/latex/oberdiek/atfi-pdftex.def\\ -% atfi-dvipdfmx.def & tex/latex/oberdiek/atfi-dvipdfmx.def\\ -% pdfatfi.pl & scripts/oberdiek/pdfatfi.pl\\ -% attachfile2.pdf & doc/latex/oberdiek/attachfile2.pdf\\ -% attachfile2.dtx & source/latex/oberdiek/attachfile2.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{Script installation} -% This package comes with a Perl script \xfile{pdfatfi.pl}. -% Install it somewhere so that it is executed, when it is called -% as \verb|pdfatfi| on the command line. Example for -% installing it under Linux: -% \begin{quote} -%\begin{verbatim} -%cp pdfatfi.pl /usr/local/bin/pdfatfi -%chmod +x /usr/local/bin/pdfatfi -%\end{verbatim} -% \end{quote} -% -% -% \subsection{Some details for the interested} -% -% \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{attachfile2.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 attachfile2.dtx -%makeindex -s gind.ist attachfile2.idx -%pdflatex attachfile2.dtx -%makeindex -s gind.ist attachfile2.idx -%pdflatex attachfile2.dtx -%\end{verbatim} -% \end{quote} -% -% \begin{thebibliography}{9} -% \bibitem{attachfile} -% Scott Pakin: \textit{The \xpackage{attachfile} package}; -% 2005/02/20 v1.2; -% \CTANpkg{attachfile}. -% -% \bibitem{embedfile} -% Heiko Oberdiek: \textit{The \xpackage{embedfile} package}; -% 2006/08/16 v1.0; -% \CTAN{macros/latex/contrib/oberdiek/embedfile.pdf}. -% -% \bibitem{pdfspec} -% Adobe Systems Incorporated: -% \href{https://www.adobe.com/devnet/pdf/pdf_reference.html}% -% {\textit{PDF Reference, Version 1.7}},% -% -% \bibitem{mime} -% Network Working Group: RFC 2046, \textit{Multipurpose Internet Mail Extensions (MIME) Part Two: -% Media Types}, November 1996; \url{http://www.rfc-editor.org/}. -% -% \bibitem{types} -% IANA (Internet Assigned Numbers Authority): -% \textit{MIME Media Types}, May 2006; -% \url{http://www.iana.org/assignments/media-types/}. -% -% \end{thebibliography} -% -% \begin{History} -% \begin{Version}{2005/02/23 v2.0} -% \item -% New options: \xoption{draft}/\xoption{final}. -% \item -% New option scale for scaling the annotation rectangle. -% \item -% Supported driver options: \xoption{pdftex}, \xoption{dvips}. -% \item -% Configuration file `attachfile.cfg' supported. -% \item -% Dependency of package calc dropped. -% \item -% \eTeX\ (\cs{numexpr}, \cs{dimexpr}) used. -% \item -% New auxiliary file \cs{jobname.atfi} to get data unavailable -% by (pdf)\TeX, controlled by \cs{nofiles} and option nofiles. -% \item -% Use of package \xpackage{prokvopt} (never released). -% \end{Version} -% \begin{Version}{2005/10/07 v2.1} -% \item -% Option \xoption{annotname} for naming annotations -% (this name can be used for embedded go-to actions). -% \end{Version} -% \begin{Version}{2006/08/17 v2.2} -% \item -% Use of package \xpackage{kvoptions} instead of \xpackage{prokvopt}. -% \item -% DTX framework. -% \item -% A little documentation. -% \end{Version} -% \begin{Version}{2007/04/11 v2.3} -% \item -% Line ends sanitized. -% \end{Version} -% \begin{Version}{2008/07/29 v2.4} -% \item -% Improved color support. Option \xoption{color} now understands -% the usual color specifications if package \xpackage{xcolor} is -% loaded. -% \end{Version} -% \begin{Version}{2009/09/25 v2.5} -% \item -% New option \xoption{ucfilespec} (since PDF 1.7). -% \item -% Fix: \xpackage{hyperref}'s option \xoption{unicode} is disabled -% for file names except for \xoption{ucfilespec}. -% \end{Version} -% \begin{Version}{2010/09/27 v2.6} -% \item -% Support for dvipdfmx added, new option \xoption{dvipdfmx} -% and alias option \xoption{xetex}. -% (Thanks Will Robertson for pointing to |\special{pdf:fstream ...}|). -% \item -% New option \xoption{driverfallback}. -% \item -% All options except driver options are local options, -% that means they are ignored as global options. -% \item -% Some options are disabled after they are used -% (driver options, \xoption{draft}, \xoption{final}, \xoption{nofiles}). -% \item -% Driver files renamed from \texttt{atfi<driver>.def} to -% \texttt{atfi-<driver>.def}. -% \item -% Bug fix: \cs{textattachfile} now adds an entry into -% the \xext{atfi} file. -% \item -% Program \xfile{pdfatfi.pl} sets modification and creation time with -% time zone, because the time zone offset might differ with -% the file date. -% \end{Version} -% \begin{Version}{2012/04/18 v2.7} -% \item -% Program \xfile{pdfatfi.pl}: Option \xoption{version} added. -% \end{Version} -% \begin{Version}{2016/05/16 v2.8} -% \item -% Documentation updates. -% \end{Version} -% \begin{Version}{2019/07/24 v2.9} -% \item -% Added luatex driver (UF, issue 69) -% \end{Version} -% \end{History} -% -% \PrintIndex -% -% \Finale -\endinput diff --git a/Master/texmf-dist/source/latex/oberdiek/atveryend.dtx b/Master/texmf-dist/source/latex/oberdiek/atveryend.dtx index 0c47c7950eb..00a9fe9808a 100644 --- a/Master/texmf-dist/source/latex/oberdiek/atveryend.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/atveryend.dtx @@ -1332,14 +1332,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/auxhook.dtx b/Master/texmf-dist/source/latex/oberdiek/auxhook.dtx index 37a1dc4aabd..206f3f26752 100644 --- a/Master/texmf-dist/source/latex/oberdiek/auxhook.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/auxhook.dtx @@ -451,14 +451,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/bigintcalc.dtx b/Master/texmf-dist/source/latex/oberdiek/bigintcalc.dtx index dbe43326cef..78156448dde 100644 --- a/Master/texmf-dist/source/latex/oberdiek/bigintcalc.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/bigintcalc.dtx @@ -4354,14 +4354,6 @@ $ \BIC@Temp 9{18\or27\or36\or45\or54\or63\or72\or81}% % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/bitset.dtx b/Master/texmf-dist/source/latex/oberdiek/bitset.dtx index cfb470b749e..9b810c7104d 100644 --- a/Master/texmf-dist/source/latex/oberdiek/bitset.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/bitset.dtx @@ -4049,14 +4049,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx b/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx index 6dc71d1a252..256379b43a0 100644 --- a/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/bmpsize.dtx @@ -3776,14 +3776,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx index 021ff10c4d7..79f0fad2b8b 100644 --- a/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/bookmark.dtx @@ -3113,14 +3113,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/catchfile.dtx b/Master/texmf-dist/source/latex/oberdiek/catchfile.dtx index 86bbfc2d83b..019eb4776a1 100644 --- a/Master/texmf-dist/source/latex/oberdiek/catchfile.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/catchfile.dtx @@ -924,14 +924,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/centernot.dtx b/Master/texmf-dist/source/latex/oberdiek/centernot.dtx index 44cefabee28..4ef3fda03f6 100644 --- a/Master/texmf-dist/source/latex/oberdiek/centernot.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/centernot.dtx @@ -364,14 +364,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/chemarr.dtx b/Master/texmf-dist/source/latex/oberdiek/chemarr.dtx index 13f584a7b8e..6e37198ed9d 100644 --- a/Master/texmf-dist/source/latex/oberdiek/chemarr.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/chemarr.dtx @@ -359,14 +359,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/classlist.dtx b/Master/texmf-dist/source/latex/oberdiek/classlist.dtx index cc2e65b46bd..7d15bd431de 100644 --- a/Master/texmf-dist/source/latex/oberdiek/classlist.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/classlist.dtx @@ -448,14 +448,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/colonequals.dtx b/Master/texmf-dist/source/latex/oberdiek/colonequals.dtx index 53ceae893c1..9506db54803 100644 --- a/Master/texmf-dist/source/latex/oberdiek/colonequals.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/colonequals.dtx @@ -472,14 +472,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/dvipscol.dtx b/Master/texmf-dist/source/latex/oberdiek/dvipscol.dtx index 22f9555e7d9..96ad58bcc16 100644 --- a/Master/texmf-dist/source/latex/oberdiek/dvipscol.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/dvipscol.dtx @@ -357,14 +357,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx b/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx index 6d4d2a00420..344ff89b8e3 100644 --- a/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/embedfile.dtx @@ -1904,14 +1904,6 @@ Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.% % \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} % @@ -2056,7 +2048,7 @@ Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.% % \bibitem{attachfile2} % Heiko Oberdiek: \textit{The \xpackage{attachfile2} package}; % 2006/08/16 v2.2; -% \CTAN{macros/latex/contrib/oberdiek/attachfile2.pdf}. +% \CTAN{macros/latex/contrib/attachfile2/attachfile2.pdf}. % % \bibitem{pdfspec} % Adobe Systems Incorporated: diff --git a/Master/texmf-dist/source/latex/oberdiek/engord.dtx b/Master/texmf-dist/source/latex/oberdiek/engord.dtx index 335c147520c..2a81c3a3e2b 100644 --- a/Master/texmf-dist/source/latex/oberdiek/engord.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/engord.dtx @@ -800,14 +800,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/enparen.dtx b/Master/texmf-dist/source/latex/oberdiek/enparen.dtx index 1bad9721316..5a8b66efd3e 100644 --- a/Master/texmf-dist/source/latex/oberdiek/enparen.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/enparen.dtx @@ -818,14 +818,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/eolgrab.dtx b/Master/texmf-dist/source/latex/oberdiek/eolgrab.dtx index 8862ed738ca..433219f4354 100644 --- a/Master/texmf-dist/source/latex/oberdiek/eolgrab.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/eolgrab.dtx @@ -867,14 +867,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx b/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx deleted file mode 100644 index be5938f44d4..00000000000 --- a/Master/texmf-dist/source/latex/oberdiek/epstopdf.dtx +++ /dev/null @@ -1,1602 +0,0 @@ -% \iffalse meta-comment -% -% File: epstopdf.dtx -% Version: 2016/05/15 v2.6 -% Info: Conversion with epstopdf on the fly -% -% Copyright (C) 2001, 2006-2010 by -% Heiko Oberdiek <heiko.oberdiek at googlemail.com> -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% https://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% https://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". -% -% The Current Maintainers of this work are -% Heiko Oberdiek and the Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% This work consists of the main source file epstopdf.dtx -% and the derived files -% epstopdf.sty, epstopdf.pdf, epstopdf.ins, epstopdf.drv, -% epstopdf-base.sty, epstopdf-test1.tex. -% -% Distribution: -% CTAN:macros/latex/contrib/oberdiek/epstopdf.dtx -% CTAN:macros/latex/contrib/oberdiek/epstopdf.pdf -% -% Unpacking: -% (a) If epstopdf.ins is present: -% tex epstopdf.ins -% (b) Without epstopdf.ins: -% tex epstopdf.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{epstopdf.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If epstopdf.drv is present: -% latex epstopdf.drv -% (b) Without epstopdf.drv: -% latex epstopdf.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 epstopdf.dtx -% makeindex -s gind.ist epstopdf.idx -% pdflatex epstopdf.dtx -% makeindex -s gind.ist epstopdf.idx -% pdflatex epstopdf.dtx -% -% Installation: -% TDS:tex/latex/oberdiek/epstopdf.sty -% TDS:tex/latex/oberdiek/epstopdf-base.sty -% TDS:doc/latex/oberdiek/epstopdf.pdf -% TDS:doc/latex/oberdiek/test/epstopdf-test1.tex -% TDS:source/latex/oberdiek/epstopdf.dtx -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \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: epstopdf 2016/05/15 v2.6 Conversion with epstopdf on the fly (HO)} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -Project: epstopdf -Version: 2016/05/15 v2.6 - -Copyright (C) 2001, 2006-2010 by - Heiko Oberdiek <heiko.oberdiek at googlemail.com> - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - https://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - https://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". - -The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - - -This work consists of the main source file epstopdf.dtx -and the derived files - epstopdf.sty, epstopdf.pdf, epstopdf.ins, epstopdf.drv, - epstopdf-base.sty, epstopdf-test1.tex. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \file{epstopdf.ins}{\from{epstopdf.dtx}{install}}% - \file{epstopdf.drv}{\from{epstopdf.dtx}{driver}}% - \usedir{tex/latex/oberdiek}% - \file{epstopdf.sty}{\from{epstopdf.dtx}{package}}% - \file{epstopdf-base.sty}{\from{epstopdf.dtx}{base}}% -% \usedir{doc/latex/oberdiek/test}% -% \file{epstopdf-test1.tex}{\from{epstopdf.dtx}{test1}}% - \nopreamble - \nopostamble -% \usedir{source/latex/oberdiek/catalogue}% -% \file{epstopdf-pkg.xml}{\from{epstopdf.dtx}{catalogue}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* files into a directory searched by TeX:} -\Msg{*} -\Msg{* epstopdf.sty, epstopdf-base.sty} -\Msg{*} -\Msg{* To produce the documentation run the file `epstopdf.drv'} -\Msg{* through LaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -%</install> -%<*ignore> -\fi -%</ignore> -%<*driver> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{epstopdf.drv}% - [2016/05/15 v2.6 Conversion with epstopdf on the fly (HO)]% -\documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/11/22] -\begin{document} - \DocInput{epstopdf.dtx}% -\end{document} -%</driver> -% \fi -% -% -% \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{epstopdf.drv} -% -% \title{The \xpackage{epstopdf} package} -% \date{2016/05/15 v2.6} -% \author{Heiko Oberdiek\thanks -% {Please report any issues at \url{https://github.com/ho-tex/oberdiek/issues}}} -% -% \maketitle -% -% \begin{abstract} -% This packages adds support of handling eps images -% to package \xpackage{graphics} or \xpackage{graphicx} -% with option \xoption{pdftex}. If an eps image is detected, -% epstopdf is automatically called to convert it to pdf format. -% \end{abstract} -% -% \tableofcontents -% -% \providecommand*{\xprogram}[1]{\textsf{#1}} -% -% \section{Documentation} -% -% \subsection{Introduction} -% -% \LaTeX\ provides its graphics bundle to include graphics files. -% Both packages \xpackage{graphics} or \xpackage{graphicx} may -% be used. the latter one loads the first and adds options -% in key value style for \cs{includegraphics}. -% -% Usually the drivers do not support all kind of graphics files. -% Other image types must be converted, before they become -% usuable. In case of driver \xprogram{dvips}, the graphics -% rule may contain a conversion rule. Then all that package -% \xpackage{graphics} must know is the bounding box, the command -% is passed to \xprogram{dvips} that calls it and embeds the -% converted image. -% -% However, \pdfTeX\ has its driver for PDF output already -% build in. It's graphics inclusion commands (\cs{pdfximage}) -% does not allow the execution of external commands. -% Therefore commands in the last argument of -% \cs{DeclareGraphicsRule} were of no use. -% But external programs can be called within \pdfTeX. -% This feature is called ``shell escape'' or ``write 18'' -% and must usually enabled explicitely because of security reasons. -% Now, this package \xpackage{epstopdf} hooks -% into package \xpackage{graphics}' code to catch -% that argument with the external command and executes it -% to convert the graphics file to a supported format and -% passes the control of graphics inclusion back to package -% \xpackage{graphics}. -% -% \subsection{Requirements} -% -% \begin{itemize} -% \item -% The feature \cs{write18} must be enabled. This allows the -% running of external programs during \TeX's compile run. -% Keep in mind that this is a security risk. The feature is an -% addition to \cs{TeX}. Mik\TeX, te\TeX, \TeX\ Live support it. -% In Web2C based \TeX\ distributions (te\TeX, \TeX\ Live) it can be -% enabled in the configuration file \xfile{texmf.cnf}: -% \begin{quote} -% |shell_escape = 1| -% \end{quote} -% Because of the security risk, it is better to do it on the -% command line only: -% \begin{quote} -% \texttt{--shell-escape} (te\TeX, \TeX\ Live)\\ -% \texttt{--enable-write18} (MiK\TeX) -% \end{quote} -% Example: -% \begin{quote} -% |pdflatex -shell-escape test.tex| -% \end{quote} -% \item -% The program \xprogram{epstopdf} for the conversion from EPS -% to PDF. However, other programs can -% be used and configured by \cs{DeclareGraphicsRule}. -% Example: -% \begin{quote} -% |\epstopdfDeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ -% | ps2pdf -dEPSCrop #1 \OutputFile|\\ -% |}| -% \end{quote} -% \end{itemize} -% -% \subsection{Usage} -% -% The package is loaded after graphic\{s,x\}, e.g.: -% \begin{quote} -% |\usepackage[pdftex]{graphicx}|\\ -% |\usepackage{epstopdf}| -% \end{quote} -% Now images with file name extension \xfile{.eps} are detected -% and supported using \cs{includegraphics}. -% -% If the graphics file name is explicitly specified with extension -% \xfile{.eps} the new rule for EPS files is called and -% the conversion performed. If option \xoption{update} is in force -% then the conversion step is dropped if the target file already -% exists and is not older then the EPS file. -% -% The situation is more complicate if the graphics file is -% given without file name extension. Then the \xpackage{graphics} -% package must search for a supported image file. -% The possible extensions are stored in the graphics extension -% list, that can be set by \cs{DeclareGraphicsExtensions}. -% The algorithm: -% \begin{quote} -% \def\>{\mbox{}\quad} -% function search( \meta{filebase} )\\ -% \>foreach \meta{ext} in \meta{graphics extensions}\\ -% \>\>foreach \meta{dir} in \meta{current directory}, \meta{\cs{graphicspath}}\\ -% \>\>\>\meta{file} := \meta{dir} + \meta{filebase} + \meta{ext}\\ -% \>\>\>if exist \meta{file}\\ -% \>\>\>\>return found\\ -% \>return not found -% \end{quote} -% Package \xpackage{epstopdf} puts \xfile{.eps} at the end of the -% graphics extension search list. This is the behaviour of option -% \xoption{append} that is enabled by default. -% That means, the conversion is called last -% unless a supported file type cannot be found earlier. This avoids -% unnecessary conversion steps that slow down the \LaTeX\ run. -% If you want to use option \xoption{update} and your \pdfTeX\ supports -% it, then an outdated PDF file also would be found earlier unless -% \xoption{suffix} is used that is the default since version 2.0. -% -% With an empty option \xoption{suffix} and option -% \xoption{prepend} there is a risk that an original PDF file is overwritten: -% -% If the original image file is the PDF file and there is also a generated -% EPS file, then the original PDF file can be regenerated (depending -% on the option settings) and the original PDF file gets lost. -% Therefore option \xoption{suffix} is introduced in version 1.9 -% to create a separate name space for generated output files. -% -% \textbf{Note:} Usually the conversion program needs the exact location -% of the image file. Usually the current directory works. -% Also if the image file is found using \cs{graphicspath}, the -% location is known. However, if the image is somewhere -% in a directory of environment variable |TEXINPUTS|, then -% the package does not know the exact location and the -% conversion program will not find the image file unless it -% implements a search using |TEXINPUTS| (program \xprogram{kpsewhich} -% may be of help in this task). -% -% \subsection{Options} -% -% Options can be given as package options or later using: -% \begin{declcs}{epstopdfsetup} \M{key value list} -% \end{declcs} -% \LaTeX\ expands the option list before passing the option list -% to the package's option handling code. This can fail -% for option \xoption{suffix} if it contains some of the macros -% described below. Use \cs{epstopdfsetup} after the package is loaded. -% Or load package \xpackage{kvoptions-patch} before. This package -% is also loaded by option \xoption{patch} of package \xpackage{kvoptions}. -% \LaTeX's option code is redefined to respect key value options and -% let the values untouched. -% -% \begin{description} -% \def\It#1{\item[\xoption{#1}:]}^^A -% \It{update} -% The conversion program is only called, if the target file -% does not exist or is older than the source image file. -% \It{append} -% Puts the extension \xfile{.eps} at the end of the graphics extension list -% (default). -% \It{prepend} -% Puts the extension \xfile{.eps} at the begin of the graphics extension list. -% \It{outdir} -% The converted file may put in an other output directory. -% The value of \xoption{outdir} must include the directory separator. -% Example for the current directory: -% \begin{quote} -% |\epstopdfsetup{outdir=./}| -% \end{quote} -% For other directories ensure, that they can be found. -% See \cs{graphicspath} or |TEXINPUTS|. -% \It{suffix} -% This option takes a string that is put between the file name base -% and the extension of the output file. Rationale: It can happen, -% that a PDF file is the original file and the EPS file the -% generated file. If now the package thinks, that the PDF file -% is the generated file, it will `regnerate' it. But in reality -% the original file is lost. Therefore I recommend to use this -% option always to generate a separate name space for generated -% files. Proposed value is \texttt{-generated} or \texttt{.generated}. -% The suffix \texttt{.generated} will also work here without the need for -% package \xpackage{grffile}). -% -% Example: -% \begin{quote} -% |\epstopdfsetup{suffix=-generated}|\\ -% Then \xfile{foo.eps} is converted to \xfile{foo-generated.pdf}. -% \end{quote} -% \cs{SourceExt} can be used inside the suffix string. -% It's will be replaced by the extension of the image source -% file without the leading dot, for instance: -% \begin{quote} -% |\epstopdfsetup{suffix=-\SourceExt-converted-to}|\\ -% \xfile{foo.eps} $\Rightarrow$ \xfile{foo-eps-converted-to.pdf} -% \end{quote} -% See also the next option \xoption{prefersuffix} that -% modifies the behaviour of option \xoption{suffix} in some -% cases. -% -% Default for \xoption{suffix} is `|-\SourceExt-converted-to|'. -% -% \It{prefersuffix} -% If a suffix is set by option \xoption{suffix}, then there can be -% two image file names that could be taken into account for inclusion: -% A image file name with the suffix string inside -% its name and a image file name without; e.g. for \xfile{foo.eps} -% the names could be: -% \begin{quote} -% \xfile{foo-suffix.pdf}, \xfile{foo.pdf} -% \end{quote} -% If option \xoption{perfersuffix} is turned on, the -% file \xfile{foo-suffix.pdf} and its generation is preferred -% over using \xfile{foo.pdf}. Otherwise \xfile{foo.pdf} is included -% without generating \xfile{foo-suffix.pdf}. -% The default of option \xoption{prefersuffix} is \texttt{true}. -% \It{program@epstopdf} -% The name for the conversion program from EPS to PDF, -% default is `|epstopdf|'. -% \It{verbose} -% It prints some information about the image in the \xfile{.log} file -% (default). -% \end{description} -% -% \subsection{Configuration} -% -% \subsubsection{System configuration file \xfile{epstopdf-sys.cfg}} -% -% If \xfile{epstopdf-sys} exists it is loaded at the end of the -% package \xpackage{epstopdf-base} and before the user configuration -% file. It's intended for TeX distributors. Thus they could add -% additional conversion rules (e.g., .gif -> .png) or set options. -% -% \subsubsection{User configuration file \xfile{epstopdf.cfg}} -% -% A configuration file \xfile{epstopdf.cfg} is loaded at the end -% of the package if it exists. It can be used for changing -% the default option setting. Example: -% \begin{quote} -% |\epstopdfsetup{verbose=false}| -% \end{quote} -% -% \subsubsection{Conversion program} -% -% You can use \cs{DeclareGraphicsRule} in a similar way as the -% route via \xprogram{dvips} to specify the conversion -% command line. -% The conversion argument starts with a back tick, followed -% by the conversion command including parameters. -% -% The whole conversion argument should also be wrapped inside -% \cs{epstopdfcall}. This reduces the problem with packages -% (e.g. \xpackage{pst-pdf}) that use the conversion argument -% and expands it. Macros \cs{SourceFile}, \cs{OutputFile}, and -% \cs{SourceExt} are not defined outside \xpackage{epstopdf-base}'s -% \cs{Gin@setfile} and error messages because of undefined -% command names are the result. If \cs{epstopdfcall} detects that -% it is called outside \xpackage{epstopdf-base}'s \cs{Gin@setfile} -% then it replaces the conversion argument by -% package \xpackage{graphics}'s -% default, usually the image file. -% -% The following macros are available inside: -% \begin{description} -% \def\It#1{\item[\cs{#1}:]} -% \It{OutputFile}: output file name (with known path and extension) -% \It{SourceFile}: source file name (with known path and extension), -% usually the same as |#1|, -% \It{SourceExt}: source extension without leading dot. -% \end{description} -% -% \paragraph{Conversion from EPS to PDF.} -% Other programs than \xprogram{epstopdf} can be used to convert from -% EPS to PDF. Example that uses \xprogram{Ghostscript}: -% \begin{quote} -% |\DeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ -% | \epstopdfcall{`ps2pdf -dEPSCrop #1 \noexpand\OutputFile}%|\\ -% |}| -% \end{quote} -% \cs{DeclareGraphicsRule} expands the argument, therefore \cs{noexpand} -% is necessary. As convenience package \xpackage{epstopdf-base} defines -% \cs{epstopdfDeclareGraphicsRule}. Then the conversion argument -% is not expanded, \cs{epstopdfcall} and the back tick are added: -% \begin{quote} -% |\epstopdfDeclareGraphicsRule{.eps}{pdf}{.pdf}{%|\\ -% | ps2pdf -dEPSCrop #1 \OutputFile|\\ -% |}| -% \end{quote} -% -% Also \cs{OutputFile} respects the setting of option \xoption{outdir}. -% -% \subsection{Other image formats} -% -% The support that package \xpackage{epstopdf} implements is not -% limited to EPS files. Other image conversions can be declared. -% The following example shows it for GIF images under Unix with -% ImageMagick's \xprogram{convert}: -%\begin{quote} -%\begin{verbatim} -%\epstopdfDeclareGraphicsRule{.gif}{png}{.png}{% -% convert #1 \OutputFile -%} -%\end{verbatim} -%\end{quote} -% The file extension \xfile{.gif} can be added to the extension list that -% package \xpackage{graphics} searches if the file extension -% is not given in \cs{includegraphics}. -% The list can be set by \cs{GraphicsExtensions}. -% \begin{quote} -% |\AppendGraphicsExtensions{.gif}|\\ -% or\\ -% |\PrependGraphicsExtensions{.gif}| -% \end{quote} -% -% \StopEventually{ -% } -% -% \section{Implementation} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% \subsection{Wrapper package} -% -% Reload check, especially if the package is not used with \LaTeX. -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode58=12 % : - \catcode64=11 % @ - \catcode123=1 % { - \catcode125=2 % } - \expandafter\let\expandafter\x\csname ver@epstopdf.sty\endcsname - \ifx\x\relax % plain-TeX, first loading - \else - \def\empty{}% - \ifx\x\empty % LaTeX, first loading, - % variable is initialized, but \ProvidesPackage not yet seen - \else - \expandafter\ifx\csname PackageInfo\endcsname\relax - \def\x#1#2{% - \immediate\write-1{Package #1 Info: #2.}% - }% - \else - \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% - \fi - \x{epstopdf}{The package is already loaded}% - \aftergroup\endinput - \fi - \fi -\endgroup% -% \end{macrocode} -% Package identification: -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode40=12 % ( - \catcode41=12 % ) - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode47=12 % / - \catcode58=12 % : - \catcode64=11 % @ - \catcode91=12 % [ - \catcode93=12 % ] - \catcode123=1 % { - \catcode125=2 % } - \expandafter\ifx\csname ProvidesPackage\endcsname\relax - \def\x#1#2#3[#4]{\endgroup - \immediate\write-1{Package: #3 #4}% - \xdef#1{#4}% - }% - \else - \def\x#1#2[#3]{\endgroup - #2[{#3}]% - \ifx#1\@undefined - \xdef#1{#3}% - \fi - \ifx#1\relax - \xdef#1{#3}% - \fi - }% - \fi -\expandafter\x\csname ver@epstopdf.sty\endcsname -\ProvidesPackage{epstopdf}% - [2016/05/15 v2.6 Conversion with epstopdf on the fly (HO)]% -% \end{macrocode} -% Larger catcode set because of configuration files needed. -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode123=1 % { - \catcode125=2 % } - \catcode64=11 % @ - \def\x{\endgroup - \expandafter\edef\csname ETE@AtEnd\endcsname{% - \endlinechar=\the\endlinechar\relax - \catcode13=\the\catcode13\relax - \catcode32=\the\catcode32\relax - \catcode35=\the\catcode35\relax - \catcode61=\the\catcode61\relax - \catcode64=\the\catcode64\relax - \catcode123=\the\catcode123\relax - \catcode125=\the\catcode125\relax - }% - }% -\x\catcode61\catcode48\catcode32=10\relax% -\catcode13=5 % ^^M -\endlinechar=13 % -\catcode35=6 % # -\catcode64=11 % @ -\catcode123=1 % { -\catcode125=2 % } -\def\TMP@EnsureCode#1#2{% - \edef\ETE@AtEnd{% - \ETE@AtEnd - \catcode#1=\the\catcode#1\relax - }% - \catcode#1=#2\relax -} -\TMP@EnsureCode{39}{12}% ' -\TMP@EnsureCode{40}{12}% ( -\TMP@EnsureCode{41}{12}% ) -\TMP@EnsureCode{42}{12}% * -\TMP@EnsureCode{45}{12}% - -\TMP@EnsureCode{47}{12}% / -\TMP@EnsureCode{91}{12}% [ -\TMP@EnsureCode{93}{12}% ] -\edef\ETE@AtEnd{\ETE@AtEnd\noexpand\endinput} -% \end{macrocode} -% -% \begin{macrocode} -\let\ETE@SavedAtEnd\ETE@AtEnd -\RequirePackage{epstopdf-base}[2016/05/15] -\let\ETE@AtEnd\ETE@SavedAtEnd -% \end{macrocode} -% -% \subsubsection{Option handling} -% -% \begin{macrocode} -\DeclareOption*{% - \expandafter\epstopdfsetup\expandafter{\CurrentOption}% -} -\ProcessOptions*\relax -% \end{macrocode} -% -% \begin{macrocode} -\ETE@AtEnd% -%</package> -% \end{macrocode} -% -% \subsection{Base package} -% -% \begin{macrocode} -%<*base> -% \end{macrocode} -% -% \subsection{Preparations} -% -% \subsubsection{Relead check and identification} -% -% Reload check, especially if the package is not used with \LaTeX. -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode58=12 % : - \catcode64=11 % @ - \catcode123=1 % { - \catcode125=2 % } - \expandafter\let\expandafter\x\csname ver@epstopdf-base.sty\endcsname - \ifx\x\relax % plain-TeX, first loading - \else - \def\empty{}% - \ifx\x\empty % LaTeX, first loading, - % variable is initialized, but \ProvidesPackage not yet seen - \else - \expandafter\ifx\csname PackageInfo\endcsname\relax - \def\x#1#2{% - \immediate\write-1{Package #1 Info: #2.}% - }% - \else - \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% - \fi - \x{epstopdf-base}{The package is already loaded}% - \aftergroup\endinput - \fi - \fi -\endgroup% -% \end{macrocode} -% Package identification: -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode40=12 % ( - \catcode41=12 % ) - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode47=12 % / - \catcode58=12 % : - \catcode64=11 % @ - \catcode91=12 % [ - \catcode93=12 % ] - \catcode123=1 % { - \catcode125=2 % } - \expandafter\ifx\csname ProvidesPackage\endcsname\relax - \def\x#1#2#3[#4]{\endgroup - \immediate\write-1{Package: #3 #4}% - \xdef#1{#4}% - }% - \else - \def\x#1#2[#3]{\endgroup - #2[{#3}]% - \ifx#1\@undefined - \xdef#1{#3}% - \fi - \ifx#1\relax - \xdef#1{#3}% - \fi - }% - \fi -\expandafter\x\csname ver@epstopdf-base.sty\endcsname -\ProvidesPackage{epstopdf-base}% - [2016/05/15 v2.6 Base part for package epstopdf]% -% \end{macrocode} -% -% \subsubsection{Catcodes} -% -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode123=1 % { - \catcode125=2 % } - \catcode64=11 % @ - \def\x{\endgroup - \expandafter\edef\csname ETE@AtEnd\endcsname{% - \endlinechar=\the\endlinechar\relax - \catcode13=\the\catcode13\relax - \catcode32=\the\catcode32\relax - \catcode35=\the\catcode35\relax - \catcode61=\the\catcode61\relax - \catcode64=\the\catcode64\relax - \catcode123=\the\catcode123\relax - \catcode125=\the\catcode125\relax - }% - }% -\x\catcode61\catcode48\catcode32=10\relax% -\catcode13=5 % ^^M -\endlinechar=13 % -\catcode35=6 % # -\catcode64=11 % @ -\catcode123=1 % { -\catcode125=2 % } -\def\TMP@EnsureCode#1#2{% - \edef\ETE@AtEnd{% - \ETE@AtEnd - \catcode#1=\the\catcode#1\relax - }% - \catcode#1=#2\relax -} -\TMP@EnsureCode{33}{12}% ! -\TMP@EnsureCode{39}{12}% ' -\TMP@EnsureCode{42}{12}% * -\TMP@EnsureCode{44}{12}% , -\TMP@EnsureCode{45}{12}% - -\TMP@EnsureCode{46}{12}% . -\TMP@EnsureCode{47}{12}% / -\TMP@EnsureCode{58}{12}% : -\TMP@EnsureCode{60}{12}% < -\TMP@EnsureCode{62}{12}% > -\TMP@EnsureCode{96}{12}% ` -\edef\ETE@AtEnd{\ETE@AtEnd\noexpand\endinput} -% \end{macrocode} -% -% \subsubsection{Load packages} -% -% \begin{macrocode} -\RequirePackage{infwarerr}[2007/09/09] -\RequirePackage{grfext}\relax -\RequirePackage{kvoptions}[2007/10/02] -\RequirePackage{pdftexcmds}[2007/11/11] -% \end{macrocode} -% -% \subsection{Checks} -% -% Check, whether package graphics is loaded -% (also graphicx loads graphics). -% Because miniltx.tex does not know \cs{@ifpackageloaded} -% we test for \cs{Gin@setfile} instead. -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname Gin@setfile\endcsname\relax - \@PackageWarningNoLine{epstopdf}{% - No graphics package \string`graphic{s,x}\string' loaded% - }% - \newcommand*{\epstopdfsetup}[1]{}% - \expandafter\ETE@AtEnd -\fi% -% \end{macrocode} -% -% Check, whether pdftex.def is loaded. \cs{ver@pdftex.def} is not -% available with miniltx.tex, thus we test for \cs{Gin@driver}. -% \begin{macrocode} -\begingroup - \def\x{luatex.def}% - \ifx\Gin@driver\x - \else - \def\x{pdftex.def}% - \ifx\Gin@driver\x - \else - \@PackageWarningNoLine{epstopdf}{% - Drivers other than `pdftex' and `luatex' are not supported% - }% - \endgroup - \newcommand*{\epstopdfsetup}[1]{}% - \expandafter\ETE@AtEnd - \fi% - \fi% -\endgroup -% \end{macrocode} -% -% Check, whether the shell escape feature is enabled. -% -% \begin{macrocode} -\begingroup - \expandafter\ifx\csname pdf@shellescape\endcsname\relax - \else - \ifnum\pdf@shellescape>0 % - \else - \@PackageWarningNoLine{epstopdf}{% - Shell escape feature is not enabled% - }% - \fi - \fi -\endgroup -% \end{macrocode} -% -% \subsection{Package loading} -% -% \begin{macrocode} -% \end{macrocode} -% -% \subsection{Options} -% -% \begin{macrocode} -\SetupKeyvalOptions{family=ETE,prefix=ETE@} -\DeclareBoolOption{update} -\DeclareBoolOption{verbose} -\newif\ifETE@prepend -\DeclareVoidOption{prepend}{\ETE@prependtrue} -\DeclareVoidOption{append}{\ETE@prependfalse} -\DeclareStringOption{outdir} -\DeclareStringOption{suffix} -\DeclareBoolOption{prefersuffix} -\DeclareStringOption{program@epstopdf} -% \end{macrocode} -% Options \xoption{disable} and \xoption{enable} are for testing -% only. Therefore they are not documented on purpose. -% \begin{macrocode} -\DeclareBoolOption{disable} -\DeclareComplementaryOption{enable}{disable} -% \end{macrocode} -% \begin{macrocode} -\newcommand*{\epstopdfsetup}{\setkeys{ETE}} -% \end{macrocode} -% -% \subsubsection{Default setting} -% -% \begin{macrocode} -\epstopdfsetup{% - verbose,% - enable,% - append,% - update,% - prefersuffix,% - suffix=-\SourceExt-converted-to,% - program@epstopdf=epstopdf% -} -% \end{macrocode} -% -% \subsection{Make and verbose} -% -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname pdf@filemoddate\endcsname\relax - \def\ETE@Make#1#2{% - \ifETE@update - \ETE@WarnModDate - \fi - \@firstofone - }% - \def\ETE@WarnModDate{% - \@PackageWarningNoLine{epstopdf}{% - \string\pdffilemoddate\space is not available,\MessageBreak - option `update' will be ignored% - }% - \global\let\ETE@WarnModDate\relax - }% - \def\ETE@FileInfo#1#2{#1 file: <#2>}% -\else - \def\ETE@Make#1#2{% - \ifETE@update - \ifnum\pdf@strcmp{\pdf@filemoddate{#1}}{\pdf@filemoddate{#2}}>0 % - \expandafter\expandafter\expandafter\@firstofone - \else - \@PackageInfoNoLine{epstopdf}{% - Output file is already uptodate% - }% - \expandafter\expandafter\expandafter\@gobble - \fi - \else - \expandafter\@firstofone - \fi - }% - \def\ETE@FileInfo#1#2{% - #1 file: <#2>% - \expandafter\expandafter\expandafter - \ETE@Date\pdf@filemoddate{#2}\@nil - \expandafter\expandafter\expandafter - \ETE@Size\pdf@filesize{#2}\@nil - }% - \def\ETE@Date#1\@nil{% - \ifx\\#1\\% - \else - \ETE@@Date#1\@nil - \fi - }% - \def\ETE@@Date#1:#2#3#4#5#6#7#8#9{% - \MessageBreak - \@spaces\space\space\space date: #2#3#4#5-#6#7-#8#9 % - \ETE@@Time - }% - \def\ETE@@Time#1#2#3#4#5#6#7\@nil{% - #1#2:#3#4:#5#6% - }% - \def\ETE@Size#1\@nil{% - \ifx\\#1\\% - \else - \MessageBreak - \@spaces\space\space\space size: #1 bytes% - \fi - }% -\fi -% \end{macrocode} -% -% \subsection{Adding conversion support} -% -% Patch \cs{Gin@setfile} to execute |#3|, if it contains -% a command. -% \begin{macrocode} -\expandafter\ifx\csname ETE@OrgGin@setfile\endcsname\relax - \let\ETE@OrgGin@setfile\Gin@setfile -\else - \@PackageError{epstopdf}{% - Command \string\ETE@OrgGin@setfile\space - already defined.\MessageBreak - }{% - Probably some package has included the code of this package% - \MessageBreak - instead of using \string\RequirePackage{epstopdf}.% - \MessageBreak - \@ehc - }% -\fi -\def\ETE@IfFileExists{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname grffile@IfFileExists\endcsname\relax - \expandafter\IfFileExists - \else - \global\let\ETE@IfFileExists\grffile@IfFileExists - \expandafter\grffile@IfFileExists - \fi -} -\def\ETE@Skip#1#2\x\fi\fi{% - \fi - \fi - \endgroup - \fi - \fi - #1% -} -\newif\ifETE@InsideSetfile -\newcommand*{\epstopdfcall}[1]{% - \ifETE@InsideSetfile - \expandafter\@firstoftwo - \else - \expandafter\@secondoftwo - \fi - {`#1}% - {\Gin@base\Gin@ext}% -} -\def\ETE@DefCommandLine#1{% - \edef\CommandLine{\expandafter\fi\if`#1}% -} -\def\ETE@DefX#1{% - \expandafter\expandafter\expandafter\def - \expandafter\expandafter\expandafter\x - \expandafter\expandafter\expandafter{% - \expandafter\fi\if`#1\relax\else - }% -} -\def\ETE@Gin@setfile#1#2#3{% - \ifETE@disable - \ETE@OrgGin@setfile{#1}{#2}{#3}% - \else - \begingroup - \ETE@InsideSetfiletrue - \ETE@DefX{#3}% - \expandafter\endgroup - \ifx\x\@empty - \ETE@OrgGin@setfile{#1}{#2}{#3}% - \else - \begingroup - \ETE@InsideSetfiletrue - \def\GraphicsType{#1}% - \def\GraphicsRead{#2}% - \ifETE@prefersuffix - \else - \ifx\ETE@suffix\@empty - \else - \ETE@IfFileExists{\Gin@base\GraphicsRead}{% - \ETE@Skip{% - \ETE@OrgGin@setfile{#1}{#2}{\Gin@base#2}% - }% - }{% - \let\next\relax - }% - \next - \fi - \fi - \ifx\Gin@ext\relax - \let\SourceExt\Gin@eext - \def\SourceFile{\Gin@base\Gin@eext}% - \else - \let\SourceExt\Gin@ext - \def\SourceFile{\Gin@base\Gin@ext}% - \fi - \edef\SourceExt{% remove dot - \expandafter\@cdr\SourceExt\@empty\@nil - }% - \let\OutputDirectory\ETE@outdir - \ifx\OutputDirectory\@empty - \edef\OutputFile{\ETE@GenerateName{\Gin@base}{#2}}% - \else - \begingroup - \filename@parse{\Gin@base#2}% - \edef\x{\endgroup - \def\noexpand\OutputFile{% - \ETE@GenerateName{% - \OutputDirectory\filename@base - }{#2}% - }% - }% - \x - \fi - \ETE@DefCommandLine{#3}% - \ifETE@verbose - \@PackageInfo{epstopdf}{% - \ETE@FileInfo{Source}\SourceFile\MessageBreak - \ETE@FileInfo{Output}\OutputFile\MessageBreak - Command: <\CommandLine>\MessageBreak - \string\includegraphics - }% - \fi - \ETE@Make\SourceFile\OutputFile{% - \pdf@system{\CommandLine}% - \ifETE@verbose - \@PackageInfoNoLine{epstopdf}{% - \ETE@FileInfo{Result}\OutputFile - }% - \fi - }% - \edef\x{\endgroup - \ifx\OutputDirectory\@empty - \else - \def\noexpand\Gin@base{% - \OutputDirectory\noexpand\filename@base - }% - \fi - \ifx\ETE@suffix\@empty - \else - \edef\noexpand\Gin@base{% - \noexpand\Gin@base\ETE@suffix - }% - \fi - \noexpand\ETE@OrgGin@setfile{% - \GraphicsType - }{% - \GraphicsRead - }{% - \OutputFile - }% - }% - \x - \fi - \fi -} -\let\Gin@setfile\ETE@Gin@setfile -\def\ETE@GenerateName#1#2{% - #1\ETE@suffix#2% -} -% \end{macrocode} -% -% \subsection{Declare graphics rule} -% -% \begin{macrocode} -\newcommand*{\epstopdfDeclareGraphicsRule}[4]{% - \ifx\\#4\\% - \@PackageError{epstopdf-base}{% - Conversion command is missing% - }\@ehc - \else - \begingroup - \@ifundefined{Gin@rule@#1}{% - }{% - \@PackageInfo{epstopdf-base}{% - Redefining graphics rule for `#1'% - }% - }% - \endgroup - \@namedef{Gin@rule@#1}##1{{#2}{#3}{\epstopdfcall{#4}}}% - \fi -} -% \end{macrocode} -% -% \cs{DeclareGraphicsRule} for .eps -% \begin{macrocode} -\epstopdfDeclareGraphicsRule{.eps}{pdf}{.pdf}{% - \ETE@epstopdf{#1}% -} -\def\ETE@epstopdf#1{% - \ETE@program@epstopdf\space - \ifcase\ifx\OutputDirectory\@empty - \ifx\ETE@suffix\@empty - 1% - \fi - \fi - 0 % - --outfile=\OutputFile\space - \fi - #1% -} -% \end{macrocode} -% -% \begin{macrocode} -\ifETE@prepend - \expandafter\PrependGraphicsExtensions -\else - \expandafter\AppendGraphicsExtensions -\fi -{.eps} -\let\ETE@prepend\@undefined -\DeclareVoidOption{prepend}{% - \PrependGraphicsExtensions{.eps}% -} -\let\ETE@append\@undefined -\DeclareVoidOption{append}{% - \AppendGraphicsExtensions{.eps}% -} -% \end{macrocode} -% -% \begin{macrocode} -\InputIfFileExists{epstopdf-sys.cfg}{}{} -\InputIfFileExists{epstopdf.cfg}{}{} -% \end{macrocode} -% -% \begin{macrocode} -\ETE@AtEnd% -%</base> -% \end{macrocode} -% -% \section{Test} -% -% \subsection{Preface for standard catcode check} -% -% \begin{macrocode} -%<*test1> -\input miniltx.tex\relax -\def\Gin@driver{pdftex.def} -\input graphicx.sty\relax -\resetatcatcode -%</test1> -% \end{macrocode} -% -% \subsection{Catcode checks for loading} -% -% \begin{macrocode} -%<*test1> -% \end{macrocode} -% \begin{macrocode} -\catcode`\{=1 % -\catcode`\}=2 % -\catcode`\#=6 % -\catcode`\@=11 % -\expandafter\ifx\csname count@\endcsname\relax - \countdef\count@=255 % -\fi -\expandafter\ifx\csname @gobble\endcsname\relax - \long\def\@gobble#1{}% -\fi -\expandafter\ifx\csname @firstofone\endcsname\relax - \long\def\@firstofone#1{#1}% -\fi -\expandafter\ifx\csname loop\endcsname\relax - \expandafter\@firstofone -\else - \expandafter\@gobble -\fi -{% - \def\loop#1\repeat{% - \def\body{#1}% - \iterate - }% - \def\iterate{% - \body - \let\next\iterate - \else - \let\next\relax - \fi - \next - }% - \let\repeat=\fi -}% -\def\RestoreCatcodes{} -\count@=0 % -\loop - \edef\RestoreCatcodes{% - \RestoreCatcodes - \catcode\the\count@=\the\catcode\count@\relax - }% -\ifnum\count@<255 % - \advance\count@ 1 % -\repeat - -\def\RangeCatcodeInvalid#1#2{% - \count@=#1\relax - \loop - \catcode\count@=15 % - \ifnum\count@<#2\relax - \advance\count@ 1 % - \repeat -} -\def\RangeCatcodeCheck#1#2#3{% - \count@=#1\relax - \loop - \ifnum#3=\catcode\count@ - \else - \errmessage{% - Character \the\count@\space - with wrong catcode \the\catcode\count@\space - instead of \number#3% - }% - \fi - \ifnum\count@<#2\relax - \advance\count@ 1 % - \repeat -} -\def\space{ } -\expandafter\ifx\csname LoadCommand\endcsname\relax - \def\LoadCommand{\input epstopdf.sty\relax}% -\fi -\def\Test{% - \RangeCatcodeInvalid{0}{47}% - \RangeCatcodeInvalid{58}{64}% - \RangeCatcodeInvalid{91}{96}% - \RangeCatcodeInvalid{123}{255}% - \catcode`\@=12 % - \catcode`\\=0 % - \catcode`\%=14 % - \LoadCommand - \RangeCatcodeCheck{0}{36}{15}% - \RangeCatcodeCheck{37}{37}{14}% - \RangeCatcodeCheck{38}{47}{15}% - \RangeCatcodeCheck{48}{57}{12}% - \RangeCatcodeCheck{58}{63}{15}% - \RangeCatcodeCheck{64}{64}{12}% - \RangeCatcodeCheck{65}{90}{11}% - \RangeCatcodeCheck{91}{91}{15}% - \RangeCatcodeCheck{92}{92}{0}% - \RangeCatcodeCheck{93}{96}{15}% - \RangeCatcodeCheck{97}{122}{11}% - \RangeCatcodeCheck{123}{255}{15}% - \RestoreCatcodes -} -\Test -\csname @@end\endcsname -\end -% \end{macrocode} -% \begin{macrocode} -%</test1> -% \end{macrocode} -% -% \section{Installation} -% -% \subsection{Download} -% -% \paragraph{Package.} This package is available on -% CTAN\footnote{\CTANpkg{epstopdf}}: -% \begin{description} -% \item[\CTAN{macros/latex/contrib/oberdiek/epstopdf.dtx}] The source file. -% \item[\CTAN{macros/latex/contrib/oberdiek/epstopdf.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[\CTANinstall{install/macros/latex/contrib/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 epstopdf.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@{}} -% epstopdf.sty & tex/latex/oberdiek/epstopdf.sty\\ -% epstopdf-base.sty & tex/latex/oberdiek/epstopdf-base.sty\\ -% epstopdf.pdf & doc/latex/oberdiek/epstopdf.pdf\\ -% test/epstopdf-test1.tex & doc/latex/oberdiek/test/epstopdf-test1.tex\\ -% epstopdf.dtx & source/latex/oberdiek/epstopdf.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{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{epstopdf.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 epstopdf.dtx -%makeindex -s gind.ist epstopdf.idx -%pdflatex epstopdf.dtx -%makeindex -s gind.ist epstopdf.idx -%pdflatex epstopdf.dtx -%\end{verbatim} -% \end{quote} -% -% \begin{History} -% \begin{Version}{2001/01/06 v1.0} -% \item -% First public version, -% published in the \pdfTeX\ mailing list. -% \end{Version} -% \begin{Version}{2001/02/04 v1.1} -% \item -% Minor documentation update. -% \item -% CTAN. -% \end{Version} -% \begin{Version}{2006/02/20 v1.2} -% \item -% DTX framework. -% \item -% Compatibility for \xfile{miniltx.tex}. -% \end{Version} -% \begin{Version}{2006/08/26 v1.3} -% \item -% Check for \cs{write18} if available and print a warning -% if the feature is not enabled. -% \end{Version} -% \begin{Version}{2007/04/26 v1.4} -% \item -% Documentation rewritten and extended. -% \end{Version} -% \begin{Version}{2007/10/02 v1.5} -% \item -% New option \xoption{update}: If the converted file exists, it will be only -% converted if it is out of date. -% \item -% Updating the extension list is delegated to package \xpackage{grfext}. -% Fine tuning is done by the new options \xoption{append}, \xoption{prepend}. -% \item -% New option \xoption{outdir} for changing the output directory. -% \item -% New option \xoption{verbose}. -% \item -% \cs{SourceFile} and \cs{OutputFile} introduced. -% \item -% Configuration file support added. -% \end{Version} -% \begin{Version}{2007/11/11 v1.6} -% \item -% Use of package \xpackage{pdftexcmds} for \LuaTeX\ support. -% \end{Version} -% \begin{Version}{2008/05/06 v1.7} -% \item -% Warning messages uses ``loaded'' instead of ``found''. -% \end{Version} -% \begin{Version}{2009/03/01 v1.8} -% \item -% Warning message for missing \xfile{pdftex.def} changed. -% \end{Version} -% \begin{Version}{2009/07/06 v1.9} -% \item -% Option \xoption{suffix} added. -% \end{Version} -% \begin{Version}{2009/07/07 v1.10} -% \item -% \cs{SourceExt} added. -% \item -% If option \xoption{suffix} is set, the inclusion of -% an image without the suffix namespace is preferred over generating the -% the image within the suffix namespace. -% \end{Version} -% \begin{Version}{2009/07/12 v2.0} -% \item -% New default settings. -% \item -% Package is split into \xpackage{epstopdf} that only takes package -% options and loads \xpackage{epstopdf-base} that does the work. -% \item -% \cs{epstopdfDeclareGraphicsRule} and \cs{epstopdfcall} added. -% \item -% \xfile{epstopdf-sys.cfg} is loaded before \xfile{epstopdf.cfg} -% if \xfile{epstopdf-sys.cfg} exists. -% \end{Version} -% \begin{Version}{2009/07/15 v2.1} -% \item -% Default setting: \xoption{verbose} is now turned on as the -% documentation for v2.0 said. -% \item -% Documentation fixes. -% \end{Version} -% \begin{Version}{2009/07/16 v2.2} -% \item -% Fixed redefined \cs{Gin@setfile}. -% \item -% Documentation extended for package options. -% \end{Version} -% \begin{Version}{2009/09/24 v2.3} -% \item -% Bug fix for the case that both option \xoption{suffix} and -% \xoption{outdir} are used. -% \end{Version} -% \begin{Version}{2009/10/17 v2.4} -% \item -% The name of the program `epstopdf' can be configured via -% the new option \xoption{program@epstopdf}. -% \end{Version} -% \begin{Version}{2016/05/15 v2.5} -% \item -% Wording of warning message fixed (Karl Berry). -% \item -% \cs{ETE@Gin@setfile} added (Karl Berry). -% \end{Version} -% \begin{Version}{2016/05/15 v2.6} -% \item -% luaTeX compatibility -% \end{Version} -% \end{History} -% -% \PrintIndex -% -% \Finale -\endinput diff --git a/Master/texmf-dist/source/latex/oberdiek/etexcmds.dtx b/Master/texmf-dist/source/latex/oberdiek/etexcmds.dtx index b34e4d9891f..ccbc0509514 100644 --- a/Master/texmf-dist/source/latex/oberdiek/etexcmds.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/etexcmds.dtx @@ -762,14 +762,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/fibnum.dtx b/Master/texmf-dist/source/latex/oberdiek/fibnum.dtx index 5fb29a91f21..2da91274108 100644 --- a/Master/texmf-dist/source/latex/oberdiek/fibnum.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/fibnum.dtx @@ -1014,14 +1014,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/flags.dtx b/Master/texmf-dist/source/latex/oberdiek/flags.dtx index 2de01a65a01..0be6f023d76 100644 --- a/Master/texmf-dist/source/latex/oberdiek/flags.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/flags.dtx @@ -507,14 +507,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/gettitlestring.dtx b/Master/texmf-dist/source/latex/oberdiek/gettitlestring.dtx index a99f0af4ee8..7af4516a661 100644 --- a/Master/texmf-dist/source/latex/oberdiek/gettitlestring.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/gettitlestring.dtx @@ -801,14 +801,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/grfext.dtx b/Master/texmf-dist/source/latex/oberdiek/grfext.dtx index 8ebd84fa4a2..f0f2910e83c 100644 --- a/Master/texmf-dist/source/latex/oberdiek/grfext.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/grfext.dtx @@ -972,14 +972,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hologo.dtx b/Master/texmf-dist/source/latex/oberdiek/hologo.dtx index 8b3d38914e7..8d4e216205f 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hologo.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hologo.dtx @@ -4732,14 +4732,6 @@ $ #1{\string ^^^^0395}{\string ^^^^03b5}% % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/holtxdoc.dtx b/Master/texmf-dist/source/latex/oberdiek/holtxdoc.dtx index 62debb1dae5..b08f46f77d2 100644 --- a/Master/texmf-dist/source/latex/oberdiek/holtxdoc.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/holtxdoc.dtx @@ -580,14 +580,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hopatch.dtx b/Master/texmf-dist/source/latex/oberdiek/hopatch.dtx index 259be514369..8782afcdf84 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hopatch.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hopatch.dtx @@ -720,14 +720,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hycolor.dtx b/Master/texmf-dist/source/latex/oberdiek/hycolor.dtx index 85f29039361..5370ed03c4a 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hycolor.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hycolor.dtx @@ -1996,14 +1996,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hypbmsec.dtx b/Master/texmf-dist/source/latex/oberdiek/hypbmsec.dtx index 60a716fca8c..e90890d3bbc 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hypbmsec.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hypbmsec.dtx @@ -634,14 +634,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx b/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx index 9ef57eb82eb..2a51a21d74b 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hypcap.dtx @@ -543,14 +543,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hypdestopt.dtx b/Master/texmf-dist/source/latex/oberdiek/hypdestopt.dtx index b8c9a76df06..e0d604d69a5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hypdestopt.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hypdestopt.dtx @@ -798,14 +798,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hypdoc.dtx b/Master/texmf-dist/source/latex/oberdiek/hypdoc.dtx index 7d375118127..b185b416b2a 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hypdoc.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hypdoc.dtx @@ -1179,14 +1179,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx b/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx index ecf5b50782a..ec03d08f3b5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hypgotoe.dtx @@ -522,14 +522,6 @@ Anker foobar is here. % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/hyphsubst.dtx b/Master/texmf-dist/source/latex/oberdiek/hyphsubst.dtx index 50e8de46363..1d16f8347e7 100644 --- a/Master/texmf-dist/source/latex/oberdiek/hyphsubst.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/hyphsubst.dtx @@ -763,14 +763,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/ifdraft.dtx b/Master/texmf-dist/source/latex/oberdiek/ifdraft.dtx index fb5e0a22bb4..6f4346cc3e8 100644 --- a/Master/texmf-dist/source/latex/oberdiek/ifdraft.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/ifdraft.dtx @@ -371,14 +371,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/iflang.dtx b/Master/texmf-dist/source/latex/oberdiek/iflang.dtx index f5d13032395..608411678f5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/iflang.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/iflang.dtx @@ -1023,14 +1023,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/infwarerr.dtx b/Master/texmf-dist/source/latex/oberdiek/infwarerr.dtx index 89003edc2c2..e95d9733d6e 100644 --- a/Master/texmf-dist/source/latex/oberdiek/infwarerr.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/infwarerr.dtx @@ -1036,14 +1036,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/inputenx.dtx b/Master/texmf-dist/source/latex/oberdiek/inputenx.dtx index 25688526bb0..cab72230e55 100644 --- a/Master/texmf-dist/source/latex/oberdiek/inputenx.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/inputenx.dtx @@ -11788,14 +11788,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/intcalc.dtx b/Master/texmf-dist/source/latex/oberdiek/intcalc.dtx index d52390fa743..226b69c92df 100644 --- a/Master/texmf-dist/source/latex/oberdiek/intcalc.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/intcalc.dtx @@ -4101,14 +4101,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/kvdefinekeys.dtx b/Master/texmf-dist/source/latex/oberdiek/kvdefinekeys.dtx index 67ebac712d1..2019ccc7205 100644 --- a/Master/texmf-dist/source/latex/oberdiek/kvdefinekeys.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/kvdefinekeys.dtx @@ -573,14 +573,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx b/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx index 54e188aed23..f79bbc09093 100644 --- a/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/kvoptions.dtx @@ -3075,14 +3075,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx b/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx index a467e2e8fba..9d6db6682fb 100644 --- a/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/kvsetkeys.dtx @@ -1893,14 +1893,6 @@ $ \x % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx b/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx index 8b0440d361d..4e230dca0d6 100644 --- a/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx @@ -992,14 +992,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/listingsutf8.dtx b/Master/texmf-dist/source/latex/oberdiek/listingsutf8.dtx index bc0389081db..e62f8892008 100644 --- a/Master/texmf-dist/source/latex/oberdiek/listingsutf8.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/listingsutf8.dtx @@ -625,14 +625,6 @@ public class ExampleUTF8 { % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx b/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx index 9dfd932ed7b..d0e75a14b76 100644 --- a/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/ltxcmds.dtx @@ -2940,14 +2940,6 @@ X=% % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/luacolor.dtx b/Master/texmf-dist/source/latex/oberdiek/luacolor.dtx index 65959b49822..310689bd882 100644 --- a/Master/texmf-dist/source/latex/oberdiek/luacolor.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/luacolor.dtx @@ -1024,14 +1024,6 @@ end % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/magicnum.dtx b/Master/texmf-dist/source/latex/oberdiek/magicnum.dtx index 0147bf1f054..8b2b087a890 100644 --- a/Master/texmf-dist/source/latex/oberdiek/magicnum.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/magicnum.dtx @@ -1377,14 +1377,6 @@ end % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/mleftright.dtx b/Master/texmf-dist/source/latex/oberdiek/mleftright.dtx index cc83370e41b..857d12cde0d 100644 --- a/Master/texmf-dist/source/latex/oberdiek/mleftright.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/mleftright.dtx @@ -751,14 +751,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins index 0646b1176a4..4438653f461 100644 --- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins +++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins @@ -1,8 +1,10 @@ % oberdiek.ins -% 2012/04/26 +% 2019/11/24 % -% Copyright (C) 1999, 2001, 2006 by -% Heiko Oberdiek <heiko.oberdiek at googlemail.com> +% Copyright (C) +% 1999, 2001, 2006 Heiko Oberdiek +% 2016-2019 Oberdiek Package Support Group +% https://github.com/ho-tex/oberdiek/issues % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -14,7 +16,9 @@ % % This work has the LPPL maintenance status "maintained". % -% This Current Maintainer of this work is Heiko Oberdiek. +% The Current Maintainers of this work are +% Heiko Oberdiek and the Oberdiek Package Support Group +% https://github.com/ho-tex/oberdiek/issues % % This work consists of the overview "oberdiek.pdf", its source % "oberdiek.tex", and the installation script "oberdiek.ins" @@ -28,7 +32,6 @@ \batchinput{askinclude.dtx} \batchinput{atbegshi.dtx} \batchinput{atenddvi.dtx} -\batchinput{attachfile2.dtx} \batchinput{atveryend.dtx} \batchinput{auxhook.dtx} \batchinput{bigintcalc.dtx} @@ -45,7 +48,6 @@ \batchinput{engord.dtx} \batchinput{enparen.dtx} \batchinput{eolgrab.dtx} -\batchinput{epstopdf.dtx} \batchinput{etexcmds.dtx} \batchinput{fibnum.dtx} \batchinput{flags.dtx} @@ -79,14 +81,12 @@ \batchinput{pagesel.dtx} \batchinput{pdfcol.dtx} \batchinput{pdfcolfoot.dtx} -\batchinput{pdfcolmk.dtx} \batchinput{pdfcolparallel.dtx} \batchinput{pdfcolparcolumns.dtx} \batchinput{pdfcrypt.dtx} \batchinput{pdfescape.dtx} \batchinput{pdflscape.dtx} \batchinput{pdfrender.dtx} -\batchinput{pdftexcmds.dtx} \batchinput{picture.dtx} \batchinput{pmboxdraw.dtx} \batchinput{protecteddef.dtx} diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex index 0b5cb9e7423..e22263796a8 100644 --- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex +++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex @@ -7,7 +7,7 @@ \newcommand*{\Author}{Heiko Oberdiek} \newcommand*{\Email}{ho-tex at tug.org} -\newcommand*{\Date}{2019/11/12} +\newcommand*{\Date}{2019/11/24} % Copyright (C) 2006-2016 by % Heiko Oberdiek @@ -189,8 +189,6 @@ [\entrysep] \entry{atenddvi}{2007/04/17}{1.1}{At end DVI hook}% [\entrysep] -\entry{attachfile2}{2019/07/24}{2.9}{Attach files into PDF}% -[\entrysep] \entry{atveryend}{2011/06/30}{1.8}{Hooks at the very end of document}% [\entrysep] \entry{auxhook}{2011/03/04}{1.3}{Hooks for auxiliary files}% @@ -223,8 +221,6 @@ [\entrysep] \entry{eolgrab}{2011/01/12}{1.0}{Catch arguments delimited by end of line}% [\entrysep] -\entry{epstopdf}{2010/02/09}{2.5}{Conversion with epstopdf on the fly}% -[\entrysep] \entry{etexcmds}{2011/02/16}{1.5}{Avoid name clashes with \hologo{eTeX} commands}% [\entrysep] \entry{fibnum}{2012/04/08}{1.0}{Fibonacci numbers}% @@ -297,8 +293,6 @@ [\entrysep] \entry{pdfcolfoot}{2012/01/02}{1.2}{Color stack for footnotes with \hologo{pdfTeX}}% [\entrysep] -\entry{pdfcolmk}{2008/08/11}{1.2}{Color support for \hologo{pdfTeX} via marks}% -[\entrysep] \entry{pdfcolparallel}{2010/01/11}{1.3}{Color stacks support for parallel}% [\entrysep] \entry{pdfcolparcolumns}{2010/01/11}{1.3}{Color stacks for parcolumns}% @@ -311,8 +305,6 @@ [\entrysep] \entry{pdfrender}{2010/01/28}{1.2}{Access to some PDF graphics parameters}% [\entrysep] -\entry{pdftexcmds}{2019/07/25}{0.30}{Utility functions of \hologo{pdfTeX} for \hologo{LuaTeX}}% -[\entrysep] \entry{picture}{2009/10/11}{1.3}{Dimens for picture macros}% [\entrysep] \entry{pmboxdraw}{2011/03/24}{1.1}{Poor man's box drawing characters}% @@ -425,19 +417,6 @@ to \cs{AtEndDocument}. \tocinclude{atenddvi} \newpage -\subsection{\pkgsectformat{attachfile2}} -\label{attachfile2} -\begin{abstract} -This package can be used to attach files to a PDF document. -It is a further development of Scott Pakin's package -\xpackage{attachfile} for \pdfTeX. Apart from bug fixes, -package \xpackage{attachfile2} adds support for \xoption{dvips}, -some new options, gets and writes meta information data about -the attached files. -\end{abstract} -\tocinclude{attachfile2} - -\newpage \subsection{\pkgsectformat{atveryend}} \label{atveryend} \begin{abstract} @@ -602,17 +581,6 @@ to catch an argument that is delimited by the line end. \tocinclude{eolgrab} \newpage -\subsection{\pkgsectformat{epstopdf}} -\label{epstopdf} -\begin{abstract} -This packages adds support of handling eps images -to package \xpackage{graphics} or \xpackage{graphicx} -with option \xoption{pdftex}. If an eps image is detected, -epstopdf is automatically called to convert it to pdf format. -\end{abstract} -\tocinclude{epstopdf} - -\newpage \subsection{\pkgsectformat{etexcmds}} \label{etexcmds} \begin{abstract} @@ -949,15 +917,6 @@ across pages. \tocinclude{pdfcolfoot} \newpage -\subsection{\pkgsectformat{pdfcolmk}} -\label{pdfcolmk} -\begin{abstract} -This package tries a solution for the missing color -stack of \pdfTeX. -\end{abstract} -\tocinclude{pdfcolmk} - -\newpage \subsection{\pkgsectformat{pdfcolparallel}} \label{pdfcolparallel} \begin{abstract} @@ -1016,15 +975,6 @@ provides an interface for setting these parameters. \end{abstract} \tocinclude{pdfrender} -\newpage -\subsection{\pkgsectformat{pdftexcmds}} -\label{pdftexcmds} -\begin{abstract} -\hologo{LuaTeX} provides most of the commands of \hologo{pdfTeX} 1.40. However -a number of utility functions are removed. This package tries to fill -the gap and implements some of the missing primitive using Lua. -\end{abstract} -\tocinclude{pdftexcmds} \newpage \subsection{\pkgsectformat{picture}} diff --git a/Master/texmf-dist/source/latex/oberdiek/pagegrid.dtx b/Master/texmf-dist/source/latex/oberdiek/pagegrid.dtx index 1efb0cde266..6e81bfaa7c5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pagegrid.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pagegrid.dtx @@ -917,14 +917,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pagesel.dtx b/Master/texmf-dist/source/latex/oberdiek/pagesel.dtx index acde4c62b92..161c25b8130 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pagesel.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pagesel.dtx @@ -670,14 +670,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfcol.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfcol.dtx index d99d11fa25a..3b08d0a6c19 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfcol.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfcol.dtx @@ -973,14 +973,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfcolfoot.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfcolfoot.dtx index be01c4650ee..b812a47dd40 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfcolfoot.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfcolfoot.dtx @@ -564,14 +564,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfcolmk.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfcolmk.dtx deleted file mode 100644 index fc74f05fb31..00000000000 --- a/Master/texmf-dist/source/latex/oberdiek/pdfcolmk.dtx +++ /dev/null @@ -1,1011 +0,0 @@ -% \iffalse meta-comment -% -% File: pdfcolmk.dtx -% Version: 2016/05/16 v1.3 -% Info: Color support for pdfTeX via marks -% -% Copyright (C) 2000, 2005-2008 by -% Heiko Oberdiek <heiko.oberdiek at googlemail.com> -% 2016 -% https://github.com/ho-tex/oberdiek/issues -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% https://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% https://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". -% -% The Current Maintainers of this work are -% Heiko Oberdiek and the Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% This work consists of the main source file pdfcolmk.dtx -% and the derived files -% pdfcolmk.sty, pdfcolmk.pdf, pdfcolmk.ins, pdfcolmk.drv. -% -% Distribution: -% CTAN:macros/latex/contrib/oberdiek/pdfcolmk.dtx -% CTAN:macros/latex/contrib/oberdiek/pdfcolmk.pdf -% -% Unpacking: -% (a) If pdfcolmk.ins is present: -% tex pdfcolmk.ins -% (b) Without pdfcolmk.ins: -% tex pdfcolmk.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{pdfcolmk.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If pdfcolmk.drv is present: -% latex pdfcolmk.drv -% (b) Without pdfcolmk.drv: -% latex pdfcolmk.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 pdfcolmk.dtx -% makeindex -s gind.ist pdfcolmk.idx -% pdflatex pdfcolmk.dtx -% makeindex -s gind.ist pdfcolmk.idx -% pdflatex pdfcolmk.dtx -% -% Installation: -% TDS:tex/latex/oberdiek/pdfcolmk.sty -% TDS:doc/latex/oberdiek/pdfcolmk.pdf -% TDS:source/latex/oberdiek/pdfcolmk.dtx -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \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: pdfcolmk 2016/05/16 v1.3 Color support for pdfTeX via marks (HO)} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -Project: pdfcolmk -Version: 2016/05/16 v1.3 - -Copyright (C) 2000, 2005-2008 by - Heiko Oberdiek <heiko.oberdiek at googlemail.com> - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - https://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - https://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". - -The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - - -This work consists of the main source file pdfcolmk.dtx -and the derived files - pdfcolmk.sty, pdfcolmk.pdf, pdfcolmk.ins, pdfcolmk.drv. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \file{pdfcolmk.ins}{\from{pdfcolmk.dtx}{install}}% - \file{pdfcolmk.drv}{\from{pdfcolmk.dtx}{driver}}% - \usedir{tex/latex/oberdiek}% - \file{pdfcolmk.sty}{\from{pdfcolmk.dtx}{package}}% - \nopreamble - \nopostamble -% \usedir{source/latex/oberdiek/catalogue}% -% \file{pdfcolmk.xml}{\from{pdfcolmk.dtx}{catalogue}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* file into a directory searched by TeX:} -\Msg{*} -\Msg{* pdfcolmk.sty} -\Msg{*} -\Msg{* To produce the documentation run the file `pdfcolmk.drv'} -\Msg{* through LaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -%</install> -%<*ignore> -\fi -%</ignore> -%<*driver> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{pdfcolmk.drv}% - [2016/05/16 v1.3 Color support for pdfTeX via marks (HO)]% -\documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/11/22] -\begin{document} - \DocInput{pdfcolmk.dtx}% -\end{document} -%</driver> -% \fi -% -% -% \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{pdfcolmk.drv} -% -% \title{The \xpackage{pdfcolmk} package} -% \date{2016/05/16 v1.3} -% \author{Heiko Oberdiek\thanks -% {Please report any issues at \url{https://github.com/ho-tex/oberdiek/issues}}} -% -% \maketitle -% -% \begin{abstract} -% This package tries a solution for the missing color -% stack of \pdfTeX. -% \end{abstract} -% -% \tableofcontents -% -% \section{Documentation} -% -% \subsection{Introduction} -% -% This package uses a mark register in order to solve the -% problem of a missing color stack of \pdfTeX\ prior 1.40.0. -% Since this version of \pdfTeX\ a color stack is available -% and supported by \xfile{pdftex.def} 2007/01/01 v0.04a. -% In this case this package is obsolete and the package -% stops its loading. -% -% \subsection{Background} -% -% After the Dante meeting (Clausthal 2000) I have started -% to experiment with the eTeX method of a \emph{colour} mark. -% One of the major problems is the understanding of the -% output routine and the need to rewrite it because of -% missing hooks. Currently I have made some tests in -% in onecolumn and twocolumn mode, but the state is -% experimental. -% -% \subsection{Limitations} -% -% \begin{itemize} -% \item Mark limitations: page breaks in math. -% \item \LaTeX's output routine is redefinded. -% \begin{itemize} -% \item Changes in the output routine of newer versions -% of LaTeX are not detected. -% \item Packages that change the output routine are not -% supported. -% \end{itemize} -% \item It does not support several independent text -% streams like footnotes. -% \item Limitations in float and marginpar support. -% \end{itemize} -% -% \subsection{Recommendation} -% -% \eTeX\ (for additional mark register) -% Without \eTeX\ \LaTeX's mark commands are redefined -% to store an additional color value. -% -% \subsection{Usage} -% -% Load after package color: -% \begin{quote} -% |\usepackage[pdftex]{color}|\\ -% |\usepackage{pdfcolmk}| -% \end{quote} -% -% \subsection{Compatibility} -% -% \begin{itemize} -% \item Load the following packages after \xpackage{pdfcolmk}: -% \begin{quote} -% \xpackage{mparhack.sty} -% \end{quote} -% \item Load the following packages before \xpackage{pdfcolmk}: -% \begin{quote} -% \xpackage{marn.sty}\\ -% \xpackage{newmarn.sty} -% \end{quote} -% \item Supported \cs{@addmarginpar} patch: -% \begin{quote} -% \xpackage{latex/base/latex.ltx}\\ -% \xpackage{memoir.cls}\\ -% \xpackage{poemscol/marn.sty}, \xpackage{poemscol/newmarn.sty}\\ -% \xpackage{mparhack.sty} -% \end{quote} -% \item Unsupported \cs{@addmarginpar} patch: -% \begin{quote} -% \xpackage{lineno.sty}\\ -% \xpackage{sttools/marginal.sty}\\ -% \xpackage{revtex4.cls} -% \end{quote} -% \end{itemize} -% -% \StopEventually{ -% } -% -% \section{Implementation} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% Package identification. -% \begin{macrocode} -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{pdfcolmk}% - [2016/05/16 v1.3 Color support for pdfTeX via marks (HO)] -% \end{macrocode} -% -% \begin{macrocode} -\@ifundefined{ver@pdftex.def}{% - \PackageWarningNoLine{pdfcolmk}{% - Nothing to fix, because \string`pdftex.def\string' not loaded% - }% - \endinput -}{} -\@ifpackageloaded{color}{}{% - \PackageWarningNoLine{pdfcolmk}{% - Nothing to fix, because \string`color.sty\string' not loaded% - }% - \endinput -} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname main@pdfcolorstack\endcsname\relax -\else - % pdftex.def >= 2007/01/01 0.04a and pdfTeX >= 1.40.0 - \begingroup - \let\on@line\@empty - \PackageInfo{pdfcolmk}{% - The color stack of pdfTeX \string>\string= 1.40 is used. % - Therefore\MessageBreak - this package is not necessary and not loaded% - }% - \endgroup - \expandafter\endinput -\fi - -\PackageInfo{pdfcolmk}{% - This package tries to simulate dvips's color stack\MessageBreak - for pdfTeX based on a mark register of e-TeX.\MessageBreak - It redefines LaTeX's output routine. Therefore\MessageBreak - use with care, no warranties% -} - -\ifx\marks\@undefined - - \let\pec@mark\mark - \let\pec@value\empty - \long\def\mark#1{% - \protected@xdef\pec@value{#1}% - \pec@setmark - }% - \def\pec@setmark{% - \begingroup - \@temptokena\expandafter{\pec@value}% - \pec@mark{{\current@color}\the\@temptokena}% - \endgroup - }% - \def\pec@getmark{% - \xdef\pec@botcolor{% - \expandafter\@firstofthree\botmark\@empty\@empty\@empty - }% - }% - \long\def\@firstofthree#1#2#3{#1}% - \CheckCommand{\@leftmark}[2]{#1}% - \CheckCommand{\@rightmark}[2]{#2}% - \CheckCommand*{\leftmark}{% - \expandafter\@leftmark\botmark\@empty\@empty - }% - \CheckCommand*{\rightmark}{% - \expandafter\@rightmark\firstmark\@empty\@empty - }% - \long\def\@leftmark#1#2#3{#2}% - \long\def\@rightmark#1#2#3{#3}% - \g@addto@macro\leftmark\@empty - \g@addto@macro\rightmark\@empty - -\else - - \RequirePackage{etex}[1998/03/26]% - \newmarks\pec@marks - \def\pec@setmark{\marks\pec@marks{\current@color}}% - \def\pec@getmark{\xdef\pec@botcolor{\botmarks\pec@marks}}% - -\fi -% \end{macrocode} -% -% \subsection{\cs{marginpar} fix} -% -% \begin{macrocode} -\chardef\pec@result\z@ -\def\pec@temp#1{% - \chardef\pec@result\@ne - \begingroup - \let\on@line\@empty - \PackageInfo{pdfcolmk}{% - Patch for \string\@addmarginpar\space applied (#1)% - }% - \endgroup -} -% \end{macrocode} -% -% \subsubsection{latex/base/latex.ltx} -% -% \begin{macrocode} -\def\pec@addmarginpar{% - \@next\@marbox\@currlist{% - \@cons\@freelist\@marbox - \@cons\@freelist\@currbox - }\@latexbug - \@tempcnta\@ne - \if@twocolumn - \if@firstcolumn - \@tempcnta\m@ne - \fi - \else - \if@mparswitch - \ifodd\c@page - \else - \@tempcnta\m@ne - \fi - \fi - \if@reversemargin \@tempcnta -\@tempcnta \fi - \fi - \ifnum\@tempcnta <\z@ \global\setbox\@marbox\box\@currbox \fi - \@tempdima\@mparbottom - \advance\@tempdima -\@pageht - \advance\@tempdima\ht\@marbox - \ifdim\@tempdima >\z@ - \@latex@warning@no@line{Marginpar on page \thepage\space moved}% - \else - \@tempdima\z@ - \fi - \global\@mparbottom\@pageht - \global\advance\@mparbottom\@tempdima - \global\advance\@mparbottom\dp\@marbox - \global\advance\@mparbottom\marginparpush - \advance\@tempdima -\ht\@marbox - \global\setbox\@marbox\vbox{% - \vskip \@tempdima - \box \@marbox - }% - \global \ht\@marbox \z@ - \global \dp\@marbox \z@ - \kern -\@pagedp - \nointerlineskip - \hb@xt@\columnwidth{% - \ifnum \@tempcnta >\z@ - \hskip\columnwidth - \hskip\marginparsep - \else - \hskip -\marginparsep - \hskip -\marginparwidth - \fi - \box\@marbox \hss - }% - \nointerlineskip - \hbox{\vrule \@height\z@ \@width\z@ \@depth\@pagedp}% -} -\ifx\pec@addmarginpar\@addmarginpar - \pec@temp{latex/base}% -\fi -% \end{macrocode} -% -% \subsubsection{memoir.cls} -% -% \begin{macrocode} -\def\pec@addmarginpar{% - \checkoddpage - \@next\@marbox\@currlist{% - \@cons\@freelist\@marbox - \@cons\@freelist\@currbox - }\@latexbug - \@tempcnta\@ne - \if@twocolumn - \if@firstcolumn - \@tempcnta\m@ne - \fi - \else - \if@mparswitch - \ifoddpage - \else - \@tempcnta\m@ne - \fi - \fi - \if@reversemargin - \@tempcnta -\@tempcnta - \fi - \fi - \ifnum\@tempcnta <\z@ - \global\setbox\@marbox\box\@currbox - \fi - \@tempdima\@mparbottom - \advance\@tempdima -\@pageht - \advance\@tempdima\ht\@marbox - \ifdim\@tempdima >\z@ - \@latex@warning@no@line{% - Marginpar on page \thepage\space moved by \the\@tempdima - }% - \else - \@tempdima\z@ - \fi - \global\@mparbottom\@pageht - \global\advance\@mparbottom\@tempdima - \global\advance\@mparbottom\dp\@marbox - \global\advance\@mparbottom\marginparpush - \advance\@tempdima -\ht\@marbox - \global\setbox\@marbox\vbox{% - \vskip \@tempdima - \box \@marbox - }% - \global \ht\@marbox \z@ - \global \dp\@marbox \z@ - \kern -\@pagedp - \nointerlineskip - \hb@xt@\columnwidth{% - \ifnum \@tempcnta >\z@ - \hskip\columnwidth - \hskip\marginparsep - \else - \hskip -\marginparsep - \hskip -\marginparwidth - \fi - \box\@marbox - \hss - }% - \nointerlineskip - \hbox{\vrule \@height\z@ \@width\z@ \@depth\@pagedp}% -}% -\ifx\pec@addmarginpar\@addmarginpar - \pec@temp{memoir.cls}% -\fi -% \end{macrocode} -% -% \subsubsection{poemscol/marn.sty, poemscol/newmarn.sty} -% -% \begin{macrocode} -\def\pec@addmarginpar{% - \@next \@marbox\@currlist{% - \@cons\@freelist\@marbox - \@cons\@freelist\@currbox - }\@latexbug - \global\advance\@mpar@count\m@ne - \@ifundefined{@marn@\the\@mpar@count @}{% was location logged last time? - \@tempcnta\@ne % NO: use original LaTeX logic - \if@twocolumn - \if@firstcolumn - \@tempcnta\m@ne - \fi - \else - \if@mparswitch - \ifodd\c@page - \else - \@tempcnta\m@ne - \fi - \fi - \if@reversemargin - \@tempcnta -\@tempcnta - \fi - \fi - }{% - \@tempcnta % YES: use record from last time to decide side. - \@nameuse{@marn@\the\@mpar@count @}% - \if@reversemargin -\fi \@ne - }% - \ifnum\@tempcnta <\z@ - \global\setbox\@marbox\box\@currbox - \global\let\@marnbottom\@mparbottoml - \else - \global\let\@marnbottom\@mparbottom - \fi - \@tempdima\@marnbottom \advance\@tempdima -\@pageht - \advance\@tempdima\ht\@marbox - \ifdim\@tempdima >\z@ - \@@warning{Marginpar on page \thepage\space moved}% - \else - \@tempdima\z@ - \fi - \global\@marnbottom\@pageht - \global\advance\@marnbottom\@tempdima - \global\advance\@marnbottom\dp\@marbox - \global\advance\@marnbottom\marginparpush - \advance\@tempdima -\ht\@marbox - \global\ht\@marbox\z@ - \global\dp\@marbox\z@ - \vskip -\@pagedp - \vskip\@tempdima\nointerlineskip - \hbox to\columnwidth{% - \ifnum \@tempcnta >\z@ - \hskip\columnwidth - \hskip\marginparsep - \else - \hskip -\marginparsep - \hskip -\marginparwidth - \fi - \if@filesw % record where this is for use next time: - \@marn@log\@mpar@count - \fi - \box\@marbox - \hss - }% - \nobreak %% RmS 91/06/21 \nobreak added - \vskip -\@tempdima - \nointerlineskip - \hbox{\vrule \@height\z@ \@width\z@ \@depth\@pagedp}% -} -\ifx\pec@addmarginpar\@addmarginpar - \pec@temp{poemscol/(new)marn.sty}% -\fi -% \end{macrocode} -% -% \subsubsection{refman/refart.cls, refnam/refrep.cls} -% -% \begin{macrocode} -\def\pec@addmarginpar{% - \@next\@marbox\@currlist{% - \@cons\@freelist\@marbox - \@cons\@freelist\@currbox - }\@latexbug - \@tempcnta\@ne - \if@twocolumn - \if@firstcolumn - \@tempcnta\m@ne - \fi - \else - \@tempcnta\m@ne - \fi - \ifnum\@tempcnta <\z@ - \global\setbox\@marbox\box\@currbox - \fi - \@tempdima\@mparbottom - \advance\@tempdima -\@pageht - \advance\@tempdima\ht\@marbox - \ifdim\@tempdima >\z@ - \@@warning{Marginpar on page \thepage\space moved}% - \else - \@tempdima\z@ - \fi - \global\@mparbottom\@pageht - \global\advance\@mparbottom\@tempdima - \global\advance\@mparbottom\dp\@marbox - \global\advance\@mparbottom\marginparpush - \advance\@tempdima -\ht\@marbox - \global\setbox\@marbox\vbox{% - \vskip \@tempdima \box \@marbox - }% - \global \ht\@marbox \z@ - \global \dp\@marbox \z@ - \kern -\@pagedp - \nointerlineskip - \hb@xt@\columnwidth{% - \ifnum \@tempcnta >\z@ - \hskip\columnwidth - \hskip\marginparsep - \else - \hskip -\marginparsep - \hskip -\marginparwidth - \fi - \box\@marbox - \hss - }% - \nointerlineskip - \hbox{\vrule \@height\z@ \@width\z@ \@depth\@pagedp}% -} -\ifx\pec@addmarginpar\@addmarginpar - \pec@temp{ref(art|rep).cls}% -\fi - -\ifcase\pec@result - \PackageInfo{pdfcolmk}{% - Fix for \string\@addmarginpar\space is omitted, % - because this variant\MessageBreak - of \string\@addmarginpar\space - is not recognized% - }% -\else - % apply patch for \@addmarginpar - \def\pec@PatchAddMarginpar#1\columnwidth#2#3\@nil{% - \pec@PatchAddMarginparI#2\@nil{#1}{#3}% - }% - \def\pec@PatchAddMarginparI#1\box\@marbox\hss#2\@nil#3#4{% - \def\@addmarginpar{% - #3% - \columnwidth{% - #1% - \pdfliteral{q}% - \rlap{% - \box\@marbox - }% - \pdfliteral{Q}% - \hss - #2% - }% - #4% - }% - }% - \expandafter\pec@PatchAddMarginpar\@addmarginpar\@nil -\fi -% \end{macrocode} -% -% \subsection{Color fix} -% -% \begin{macrocode} -\def\set@color{% - \pdfliteral{\current@color}% - \ifinner - \else - \pec@setmark - \fi - \aftergroup\reset@color -} -\def\reset@color{% - \pdfliteral{\current@color}% - \ifinner - \else - \pec@setmark - \fi -} - -\let\pec@botcolor\current@color - -\def\pec@PatchVBoxCCLV{% - \ifx\pec@botcolor\@empty - \else - \setbox\@cclv\vbox{% - \pdfliteral{\pec@botcolor}% - \unvbox\@cclv - }% - \fi - \pec@getmark -} - -\def\pec@PatchAlreadyInBox{% - \ifx\pec@botcolor\@empty - \else - \pdfliteral{\pec@botcolor}% - \fi - \pec@getmark -} - -\@ifclassloaded{memoir}{% - \expandafter\def\expandafter\mem@makecol\expandafter{% - \expandafter\pec@PatchVBoxCCLV - \mem@makecol - }% - \endinput -}{} - -\@ifclassloaded{seminar}{% - \newcommand\pec@org@makeslide{}% - \let\pec@org@makeslide\@makeslide - \def\@makeslide{% - \pec@PatchVBoxCCLV - \pec@org@makeslide - }% - \endinput -}{} - -\long\def\pec@output#1\@specialoutput\else#2\pec@end{% - \begingroup - \def\x{#2}% - \expandafter\endgroup - \ifx\x\@empty - \PackageWarningNoLine{pdfcolmk}{% - Unexpected \string\output\space routine detected,% - \MessageBreak - loading of package stopped% - }% - \expandafter\endinput - \fi -} -\expandafter\expandafter\expandafter\pec@output -\expandafter\@firstofone\the\output\@specialoutput\else\pec@end - -\long\def\pec@output#1\@specialoutput\else#2\pec@end{% - \output{% - #1\@specialoutput\else - \pec@PatchVBoxCCLV - #2% - }% -} -\expandafter\expandafter\expandafter\pec@output -\expandafter\@firstofone\the\output\pec@end -% \end{macrocode} -% -% \begin{macrocode} -%</package> -% \end{macrocode} -% -% \section{Installation} -% -% \subsection{Download} -% -% \paragraph{Package.} This package is available on -% CTAN\footnote{\CTANpkg{pdfcolmk}}: -% \begin{description} -% \item[\CTAN{macros/latex/contrib/oberdiek/pdfcolmk.dtx}] The source file. -% \item[\CTAN{macros/latex/contrib/oberdiek/pdfcolmk.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[\CTANinstall{install/macros/latex/contrib/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 pdfcolmk.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@{}} -% pdfcolmk.sty & tex/latex/oberdiek/pdfcolmk.sty\\ -% pdfcolmk.pdf & doc/latex/oberdiek/pdfcolmk.pdf\\ -% pdfcolmk.dtx & source/latex/oberdiek/pdfcolmk.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{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{pdfcolmk.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 pdfcolmk.dtx -%makeindex -s gind.ist pdfcolmk.idx -%pdflatex pdfcolmk.dtx -%makeindex -s gind.ist pdfcolmk.idx -%pdflatex pdfcolmk.dtx -%\end{verbatim} -% \end{quote} -% -% \begin{History} -% \begin{Version}{2000/08/27 v0.1} -% \item -% First published version in newsgroup \xnewsgroup{comp.text.tex}:\\ -% \URL{``\link{pdftex: bug with colors?}''}^^A -% {https://groups.google.com/group/comp.text.tex/msg/6f088e69e4085d2c} -% \end{Version} -% \begin{Version}{2000/09/02 v0.2} -% \item -% Next try. -% \end{Version} -% \begin{Version}{2000/09/02 v0.3} -% \item -% Solution without \eTeX\ added. -% \end{Version} -% \begin{Version}{2000/09/06 v0.4} -% \item -% Patch commands added. -% \item -% Patch for seminar.cls added. -% \end{Version} -% \begin{Version}{2000/09/06 v0.5} -% \item -% Bug fix: initialization of \cs{pec@value} added. -% \end{Version} -% \begin{Version}{2005/06/15 v0.6} -% \item -% Support for \cs{marginpar} added. -% See thread in \xnewsgroup{comp.text.tex}:\\ -% \URL{``\link{Using \cs{textcolor} and \cs{marginpar} together}''}^^A -% {https://groups.google.com/group/comp.text.tex/msg/38ed58f8845a2a4f} -% \end{Version} -% \begin{Version}{2005/07/09 v0.7} -% \item -% Output support added for \xpackage{memoir}, -% provided by Lars Madsen. -% \end{Version} -% \begin{Version}{2006/02/20 v0.8} -% \item -% Code is not changed. -% \item -% DTX framework. -% \end{Version} -% \begin{Version}{2007/01/01 v1.0} -% \item -% If \xfile{pdftex.def} \textgreater= 2007/01/01 v0.04a is used with -% \pdfTeX\ \textgreater= 1.40.0, then package \xpackage{pdfcolmk} is obsolete. -% \end{Version} -% \begin{Version}{2007/04/11 v1.1} -% \item -% Line ends sanitized. -% \end{Version} -% \begin{Version}{2008/08/11 v1.2} -% \item -% Code is not changed. -% \item -% URLs updated. -% \end{Version} -% \begin{Version}{2016/05/16 v1.3} -% \item -% Documentation updates. -% \end{Version} -% \end{History} -% -% \PrintIndex -% -% \Finale -\endinput diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfcolparallel.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfcolparallel.dtx index 755000fb169..4dc572d7851 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfcolparallel.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfcolparallel.dtx @@ -929,14 +929,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfcolparcolumns.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfcolparcolumns.dtx index ce340c0379a..db8b4cdb7c0 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfcolparcolumns.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfcolparcolumns.dtx @@ -612,14 +612,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfcrypt.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfcrypt.dtx index 39ed3c78e9a..ed5e896c870 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfcrypt.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfcrypt.dtx @@ -906,14 +906,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx index 3a77f65261c..391d608d3e8 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx @@ -2072,14 +2072,6 @@ $ \the\count\ltx@cclv % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdflscape.dtx b/Master/texmf-dist/source/latex/oberdiek/pdflscape.dtx index 547a06e1d3e..3df9d443279 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdflscape.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdflscape.dtx @@ -861,14 +861,6 @@ public class ExtractRotate { % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfrender.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfrender.dtx index 4bbcec9a2ad..ad095e871c7 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pdfrender.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pdfrender.dtx @@ -1696,14 +1696,6 @@ After % % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx b/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx deleted file mode 100644 index a7ce8e7c2a3..00000000000 --- a/Master/texmf-dist/source/latex/oberdiek/pdftexcmds.dtx +++ /dev/null @@ -1,2689 +0,0 @@ -% \iffalse meta-comment -% -% File: pdftexcmds.dtx -% Version: 2019/07/25 v0.30 -% Info: Utility functions of pdfTeX for LuaTeX -% -% Copyright (C) 2007, 2009-2011 by -% Heiko Oberdiek <heiko.oberdiek at googlemail.com> -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% https://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% https://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". -% -% The Current Maintainers of this work are -% Heiko Oberdiek and the Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% The Base Interpreter refers to any `TeX-Format', -% because some files are installed in TDS:tex/generic//. -% -% This work consists of the main source file pdftexcmds.dtx -% and the derived files -% pdftexcmds.sty, pdftexcmds.pdf, pdftexcmds.ins, pdftexcmds.drv, -% pdftexcmds.bib, pdftexcmds-test1.tex, pdftexcmds-test2.tex, -% pdftexcmds-test-shell.tex, pdftexcmds-test-escape.tex, -% oberdiek.pdftexcmds.lua, pdftexcmds.lua. -% -% Distribution: -% CTAN:macros/latex/contrib/oberdiek/pdftexcmds.dtx -% CTAN:macros/latex/contrib/oberdiek/pdftexcmds.pdf -% -% Unpacking: -% (a) If pdftexcmds.ins is present: -% tex pdftexcmds.ins -% (b) Without pdftexcmds.ins: -% tex pdftexcmds.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{pdftexcmds.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If pdftexcmds.drv is present: -% latex pdftexcmds.drv -% (b) Without pdftexcmds.drv: -% latex pdftexcmds.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 pdftexcmds.dtx -% bibtex pdftexcmds.aux -% makeindex -s gind.ist pdftexcmds.idx -% pdflatex pdftexcmds.dtx -% makeindex -s gind.ist pdftexcmds.idx -% pdflatex pdftexcmds.dtx -% -% Installation: -% TDS:tex/generic/oberdiek/pdftexcmds.sty -% TDS:scripts/oberdiek/oberdiek.pdftexcmds.lua -% TDS:scripts/oberdiek/pdftexcmds.lua -% TDS:doc/latex/oberdiek/pdftexcmds.pdf -% TDS:doc/latex/oberdiek/test/pdftexcmds-test1.tex -% TDS:doc/latex/oberdiek/test/pdftexcmds-test2.tex -% TDS:doc/latex/oberdiek/test/pdftexcmds-test-shell.tex -% TDS:doc/latex/oberdiek/test/pdftexcmds-test-escape.tex -% TDS:source/latex/oberdiek/pdftexcmds.dtx -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \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: pdftexcmds 2019/07/25 v0.30 Utility functions of pdfTeX for LuaTeX (HO)} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -Project: pdftexcmds -Version: 2019/07/25 v0.30 - -Copyright (C) 2007, 2009-2011 by - Heiko Oberdiek <heiko.oberdiek at googlemail.com> - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - https://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - https://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". - -The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - - -The Base Interpreter refers to any `TeX-Format', -because some files are installed in TDS:tex/generic//. - -This work consists of the main source file pdftexcmds.dtx -and the derived files - pdftexcmds.sty, pdftexcmds.pdf, pdftexcmds.ins, pdftexcmds.drv, - pdftexcmds.bib, pdftexcmds-test1.tex, pdftexcmds-test2.tex, - pdftexcmds-test-shell.tex, pdftexcmds-test-escape.tex, - oberdiek.pdftexcmds.lua, pdftexcmds.lua. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \file{pdftexcmds.ins}{\from{pdftexcmds.dtx}{install}}% - \file{pdftexcmds.drv}{\from{pdftexcmds.dtx}{driver}}% - \nopreamble - \nopostamble - \file{pdftexcmds.bib}{\from{pdftexcmds.dtx}{bib}}% - \usepreamble\defaultpreamble - \usepostamble\defaultpostamble - \usedir{tex/generic/oberdiek}% - \file{pdftexcmds.sty}{\from{pdftexcmds.dtx}{package}}% -% \usedir{doc/latex/oberdiek/test}% -% \file{pdftexcmds-test1.tex}{\from{pdftexcmds.dtx}{test1}}% -% \file{pdftexcmds-test2.tex}{\from{pdftexcmds.dtx}{test2}}% -% \file{pdftexcmds-test-shell.tex}{\from{pdftexcmds.dtx}{test-shell}}% -% \file{pdftexcmds-test-escape.tex}{\from{pdftexcmds.dtx}{test-escape}}% - \nopreamble - \nopostamble -% \usedir{source/latex/oberdiek/catalogue}% -% \file{pdftexcmds.xml}{\from{pdftexcmds.dtx}{catalogue}}% -} -\def\MetaPrefix{-- } -\def\defaultpostamble{% - \MetaPrefix^^J% - \MetaPrefix\space End of File `\outFileName'.% -} -\def\currentpostamble{\defaultpostamble}% -\generate{% - \usedir{scripts/oberdiek}% - \file{oberdiek.pdftexcmds.lua}{\from{pdftexcmds.dtx}{lua}}% - \file{pdftexcmds.lua}{\from{pdftexcmds.dtx}{lua}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* file into a directory searched by TeX:} -\Msg{*} -\Msg{* pdftexcmds.sty} -\Msg{*} -\Msg{* And install the following script files:} -\Msg{*} -\Msg{* oberdiek.pdftexcmds.lua, pdftexcmds.lua} -\Msg{*} -\Msg{* To produce the documentation run the file `pdftexcmds.drv'} -\Msg{* through LaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -%</install> -%<*bib> -@online{AndyThomas:Analog, - author={Thomas, Andy}, - title={Analog of {\texttt{\csname textbackslash\endcsname}pdfelapsedtime} for - {\hologo{LuaTeX}} and {\hologo{XeTeX}}}, - url={http://tex.stackexchange.com/a/32531}, - urldate={2011-11-29}, -} -%</bib> -%<*ignore> -\fi -%</ignore> -%<*driver> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{pdftexcmds.drv}% - [2019/07/25 v0.30 Utility functions of pdfTeX for LuaTeX (HO)]% -\documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/11/22] -\usepackage{paralist} -\usepackage{csquotes} -\usepackage[ - backend=bibtex, - bibencoding=ascii, - alldates=iso8601, -]{biblatex}[2011/11/13] -\bibliography{oberdiek-source} -\bibliography{pdftexcmds} -\begin{document} - \DocInput{pdftexcmds.dtx}% -\end{document} -%</driver> -% \fi -% -% -% \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{pdftexcmds.drv} -% -% \title{The \xpackage{pdftexcmds} package} -% \date{2019/07/25 v0.30} -% \author{Heiko Oberdiek\thanks -% {Please report any issues at \url{https://github.com/ho-tex/oberdiek/issues}}} -% -% \maketitle -% -% \begin{abstract} -% \hologo{LuaTeX} provides most of the commands of \hologo{pdfTeX} 1.40. However -% a number of utility functions are removed. This package tries to fill -% the gap and implements some of the missing primitive using Lua. -% \end{abstract} -% -% \tableofcontents -% -% \def\csi#1{\texttt{\textbackslash\textit{#1}}} -% -% \section{Documentation} -% -% Some primitives of \hologo{pdfTeX} \cite{pdftex-manual} -% are not defined by \hologo{LuaTeX} \cite{luatex-manual}. -% This package implements macro based solutions using Lua code -% for the following missing \hologo{pdfTeX} primitives; -% \begin{compactitem} -% \item \cs{pdfstrcmp} -% \item \cs{pdfunescapehex} -% \item \cs{pdfescapehex} -% \item \cs{pdfescapename} -% \item \cs{pdfescapestring} -% \item \cs{pdffilesize} -% \item \cs{pdffilemoddate} -% \item \cs{pdffiledump} -% \item \cs{pdfmdfivesum} -% \item \cs{pdfresettimer} -% \item \cs{pdfelapsedtime} -% \item |\immediate\write18| -% \end{compactitem} -% The original names of the primitives cannot be used: -% \begin{itemize} -% \item -% The syntax for their arguments cannot easily -% simulated by macros. The primitives using key words -% such as |file| (\cs{pdfmdfivesum}) or |offset| and |length| -% (\cs{pdffiledump}) and uses \meta{general text} for the other -% arguments. Using token registers assignments, \meta{general text} could -% be catched. However, the simulated primitives are expandable -% and register assignments would destroy this important property. -% (\meta{general text} allows something like |\expandafter\bgroup ...}|.) -% \item -% The original primitives can be expanded using one expansion step. -% The new macros need two expansion steps because of the additional -% macro expansion. Example: -% \begin{quote} -% |\expandafter\foo\pdffilemoddate{file}|\\ -% vs.\\ -% |\expandafter\expandafter\expandafter|\\ -% |\foo\pdf@filemoddate{file}| -% \end{quote} -% \end{itemize} -% -% \hologo{LuaTeX} isn't stable yet and thus the status of this package is -% \emph{experimental}. Feedback is welcome. -% -% \subsection{General principles} -% -% \begin{description} -% \item[Naming convention:] -% Usually this package defines a macro |\pdf@|\meta{cmd} if -% \hologo{pdfTeX} provides |\pdf|\meta{cmd}. -% \item[Arguments:] The order of arguments in |\pdf@|\meta{cmd} -% is the same as for the corresponding primitive of \hologo{pdfTeX}. -% The arguments are ordinary undelimited \hologo{TeX} arguments, -% no \meta{general text} and without additional keywords. -% \item[Expandibility:] -% The macro |\pdf@|\meta{cmd} is expandable if the -% corresponding \hologo{pdfTeX} primitive has this property. -% Exact two expansion steps are necessary (first is the macro -% expansion) except for \cs{pdf@primitive} and \cs{pdf@ifprimitive}. -% The latter ones are not macros, but have the direct meaning of the -% primitive. -% \item[Without \hologo{LuaTeX}:] -% The macros |\pdf@|\meta{cmd} are mapped to the commands -% of \hologo{pdfTeX} if they are available. Otherwise they are undefined. -% \item[Availability:] -% The macros that the packages provides are undefined, if -% the necessary primitives are not found and cannot be -% implemented by Lua. -% \end{description} -% -% \subsection{Macros} -% -% \subsubsection[Strings]{Strings \cite[``7.15 Strings'']{pdftex-manual}} -% -% \begin{declcs}{pdf@strcmp} \M{stringA} \M{stringB} -% \end{declcs} -% Same as |\pdfstrcmp{|\meta{stringA}|}{|\meta{stringB}|}|. -% -% \begin{declcs}{pdf@unescapehex} \M{string} -% \end{declcs} -% Same as |\pdfunescapehex{|\meta{string}|}|. -% The argument is a byte string given in hexadecimal notation. -% The result are character tokens from 0 until 255 with -% catcode 12 and the space with catcode 10. -% -% \begin{declcs}{pdf@escapehex} \M{string}\\ -% \cs{pdf@escapestring} \M{string}\\ -% \cs{pdf@escapename} \M{string} -% \end{declcs} -% Same as the primitives of \hologo{pdfTeX}. However \hologo{pdfTeX} does not -% know about characters with codes 256 and larger. Thus the -% string is treated as byte string, characters with more than -% eight bits are ignored. -% -% \subsubsection[Files]{Files \cite[``7.18 Files'']{pdftex-manual}} -% -% \begin{declcs}{pdf@filesize} \M{filename} -% \end{declcs} -% Same as |\pdffilesize{|\meta{filename}|}|. -% -% \begin{declcs}{pdf@filemoddate} \M{filename} -% \end{declcs} -% Same as |\pdffilemoddate{|\meta{filename}|}|. -% -% \begin{declcs}{pdf@filedump} \M{offset} \M{length} \M{filename} -% \end{declcs} -% Same as |\pdffiledump offset| \meta{offset} |length| \meta{length} -% |{|\meta{filename}|}|. Both \meta{offset} and \meta{length} must -% not be empty, but must be a valid \hologo{TeX} number. -% -% \begin{declcs}{pdf@mdfivesum} \M{string} -% \end{declcs} -% Same as |\pdfmdfivesum{|\meta{string}|}|. Keyword |file| is supported -% by macro \cs{pdf@filemdfivesum}. -% -% \begin{declcs}{pdf@filemdfivesum} \M{filename} -% \end{declcs} -% Same as |\pdfmdfivesum file{|\meta{filename}|}|. -% -% \subsubsection[Timekeeping]{Timekeeping \cite[``7.17 Timekeeping'']{pdftex-manual}} -% -% The timekeeping macros are based on Andy Thomas' work \cite{AndyThomas:Analog}. -% -% \begin{declcs}{pdf@resettimer} -% \end{declcs} -% Same as \cs{pdfresettimer}, it resets the internal timer. -% -% \begin{declcs}{pdf@elapsedtime} -% \end{declcs} -% Same as \cs{pdfelapsedtime}. It behaves like a read-only integer. -% For printing purposes it can be prefixed by \cs{the} or \cs{number}. -% It measures the time in scaled seconds (seconds multiplied with 65536) -% since the latest call of \cs{pdf@resettimer} or start of -% program/package. The resolution, the shortest time interval that -% can be measured, depends on the program and system. -% \begin{itemize} -% \item \hologo{pdfTeX} with |gettimeofday|: $\ge$ 1/65536\,s -% \item \hologo{pdfTeX} with |ftime|: $\ge$ 1\,ms -% \item \hologo{pdfTeX} with |time|: $\ge$ 1\,s -% \item \hologo{LuaTeX}: $\ge$ 10\,ms\\ -% (|os.clock()| returns a float number with two decimal digits in -% \hologo{LuaTeX} beta-0.70.1-2011061416 (rev 4277)). -% \end{itemize} -% -% \subsubsection[Miscellaneous]{Miscellaneous \cite[``7.21 Miscellaneous'']{pdftex-manual}} -% -% \begin{declcs}{pdf@draftmode} -% \end{declcs} -% If the \TeX\ compiler knows \cs{pdfdraftmode} or \cs{draftmode} -% (\hologo{pdfTeX}, -% \hologo{LuaTeX}), then \cs{pdf@draftmode} returns, whether -% this mode is enabled. The result is an implicit number: -% one means the draft mode is available and enabled. -% If the value is zero, then the mode is not active or -% \cs{pdfdraftmode} is not available. -% An explicit number is yielded by \cs{number}\cs{pdf@draftmode}. -% The macro cannot -% be used to change the mode, see \cs{pdf@setdraftmode}. -% -% \begin{declcs}{pdf@ifdraftmode} \M{true} \M{false} -% \end{declcs} -% If \cs{pdfdraftmode} is available and enabled, \meta{true} is -% called, otherwise \meta{false} is executed. -% -% \begin{declcs}{pdf@setdraftmode} \M{value} -% \end{declcs} -% Macro \cs{pdf@setdraftmode} expects the number zero or one as -% \meta{value}. Zero deactivates the mode and one enables the draft mode. -% The macro does not have an effect, if the feature \cs{pdfdraftmode} is not -% available. -% -% \begin{declcs}{pdf@shellescape} -% \end{declcs} -% Same as |\pdfshellescape|. It is or expands to |1| if external -% commands can be executed and |0| otherwise. In \hologo{pdfTeX} external -% commands must be enabled first by command line option or -% configuration option. In \hologo{LuaTeX} option |--safer| disables -% the execution of external commands. -% -% In \hologo{LuaTeX} before 0.68.0 \cs{pdf@shellescape} is not -% available due to a bug in |os.execute()|. The argumentless form -% crashes in some circumstances with segmentation fault. -% (It is fixed in version 0.68.0 or revision 4167 of \hologo{LuaTeX}. -% and packported to some version of 0.67.0). -% -% Hints for usage: -% \begin{itemize} -% \item Before its use \cs{pdf@shellescape} should be tested, -% whether it is available. Example with package \xpackage{ltxcmds} -% (loaded by package \xpackage{pdftexcmds}): -%\begin{quote} -%\begin{verbatim} -%\ltx@IfUndefined{pdf@shellescape}{% -% % \pdf@shellescape is undefined -%}{% -% % \pdf@shellescape is available -%} -%\end{verbatim} -%\end{quote} -% Use \cs{ltx@ifundefined} in expandable contexts. -% \item \cs{pdf@shellescape} might be a numerical constant, -% expands to the primitive, or expands to a plain number. -% Therefore use it in contexts where these differences does not matter. -% \item Use in comparisons, e.g.: -% \begin{quote} -% |\ifnum\pdf@shellescape=0 ...| -% \end{quote} -% \item Print the number: |\number\pdf@shellescape| -% \end{itemize} -% -% \begin{declcs}{pdf@system} \M{cmdline} -% \end{declcs} -% It is a wrapper for |\immediate\write18| in \hologo{pdfTeX} or -% |os.execute| in \hologo{LuaTeX}. -% -% In theory |os.execute| -% returns a status number. But its meaning is quite -% undefined. Are there some reliable properties? -% Does it make sense to provide an user interface to -% this status exit code? -% -% \begin{declcs}{pdf@primitive} \csi{cmd} -% \end{declcs} -% Same as \cs{pdfprimitive} in \hologo{pdfTeX} or \hologo{LuaTeX}. -% In \hologo{XeTeX} the -% primitive is called \cs{primitive}. Despite the current definition -% of the command \csi{cmd}, it's meaning as primitive is used. -% -% \begin{declcs}{pdf@ifprimitive} \csi{cmd} -% \end{declcs} -% Same as \cs{ifpdfprimitive} in \hologo{pdfTeX} or -% \hologo{LuaTeX}. \hologo{XeTeX} calls -% it \cs{ifprimitive}. It is a switch that checks if the command -% \csi{cmd} has it's primitive meaning. -% -% \subsubsection{Additional macro: \cs{pdf@isprimitive}} -% -% \begin{declcs}{pdf@isprimitive} \csi{cmd1} \csi{cmd2} \M{true} \M{false} -% \end{declcs} -% If \csi{cmd1} has the primitive meaning given by the primitive name -% of \csi{cmd2}, then the argument \meta{true} is executed, otherwise -% \meta{false}. The macro \cs{pdf@isprimitive} is expandable. -% Internally it checks the result of \cs{meaning} and is therefore -% available for all \hologo{TeX} variants, even the original \hologo{TeX}. -% Example with \hologo{LaTeX}: -%\begin{quote} -%\begin{verbatim} -%\makeatletter -%\pdf@isprimitive{@@input}{input}{% -% \typeout{\string\@@input\space is original\string\input}% -%}{% -% \typeout{Oops, \string\@@input\space is not the % -% original\string\input}% -%} -%\end{verbatim} -%\end{quote} -% -% \subsubsection{Experimental} -% -% \begin{declcs}{pdf@unescapehexnative} \M{string}\\ -% \cs{pdf@escapehexnative} \M{string}\\ -% \cs{pdf@escapenamenative} \M{string}\\ -% \cs{pdf@mdfivesumnative} \M{string} -% \end{declcs} -% The variants without |native| in the macro name are supposed to -% be compatible with \hologo{pdfTeX}. However characters with more than -% eight bits are not supported and are ignored. If \hologo{LuaTeX} is -% running, then its UTF-8 coded strings are used. Thus the full -% unicode character range is supported. However the result -% differs from \hologo{pdfTeX} for characters with eight or more bits. -% -% \begin{declcs}{pdf@pipe} \M{cmdline} -% \end{declcs} -% It calls \meta{cmdline} and returns the output of the external -% program in the usual manner as byte string (catcode 12, space with -% catcode 10). The Lua documentation says, that the used |io.popen| -% may not be available on all platforms. Then macro \cs{pdf@pipe} -% is undefined. -% -% \StopEventually{ -% } -% -% \section{Implementation} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% \subsection{Reload check and package identification} -% Reload check, especially if the package is not used with \LaTeX. -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode58=12 % : - \catcode64=11 % @ - \catcode123=1 % { - \catcode125=2 % } - \expandafter\let\expandafter\x\csname ver@pdftexcmds.sty\endcsname - \ifx\x\relax % plain-TeX, first loading - \else - \def\empty{}% - \ifx\x\empty % LaTeX, first loading, - % variable is initialized, but \ProvidesPackage not yet seen - \else - \expandafter\ifx\csname PackageInfo\endcsname\relax - \def\x#1#2{% - \immediate\write-1{Package #1 Info: #2.}% - }% - \else - \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% - \fi - \x{pdftexcmds}{The package is already loaded}% - \aftergroup\endinput - \fi - \fi -\endgroup% -% \end{macrocode} -% Package identification: -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode40=12 % ( - \catcode41=12 % ) - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode47=12 % / - \catcode58=12 % : - \catcode64=11 % @ - \catcode91=12 % [ - \catcode93=12 % ] - \catcode123=1 % { - \catcode125=2 % } - \expandafter\ifx\csname ProvidesPackage\endcsname\relax - \def\x#1#2#3[#4]{\endgroup - \immediate\write-1{Package: #3 #4}% - \xdef#1{#4}% - }% - \else - \def\x#1#2[#3]{\endgroup - #2[{#3}]% - \ifx#1\@undefined - \xdef#1{#3}% - \fi - \ifx#1\relax - \xdef#1{#3}% - \fi - }% - \fi -\expandafter\x\csname ver@pdftexcmds.sty\endcsname -\ProvidesPackage{pdftexcmds}% - [2019/07/25 v0.30 Utility functions of pdfTeX for LuaTeX (HO)]% -% \end{macrocode} -% -% \subsection{Catcodes} -% -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode123=1 % { - \catcode125=2 % } - \catcode64=11 % @ - \def\x{\endgroup - \expandafter\edef\csname pdftexcmds@AtEnd\endcsname{% - \endlinechar=\the\endlinechar\relax - \catcode13=\the\catcode13\relax - \catcode32=\the\catcode32\relax - \catcode35=\the\catcode35\relax - \catcode61=\the\catcode61\relax - \catcode64=\the\catcode64\relax - \catcode123=\the\catcode123\relax - \catcode125=\the\catcode125\relax - }% - }% -\x\catcode61\catcode48\catcode32=10\relax% -\catcode13=5 % ^^M -\endlinechar=13 % -\catcode35=6 % # -\catcode64=11 % @ -\catcode123=1 % { -\catcode125=2 % } -\def\TMP@EnsureCode#1#2{% - \edef\pdftexcmds@AtEnd{% - \pdftexcmds@AtEnd - \catcode#1=\the\catcode#1\relax - }% - \catcode#1=#2\relax -} -\TMP@EnsureCode{0}{12}% -\TMP@EnsureCode{1}{12}% -\TMP@EnsureCode{2}{12}% -\TMP@EnsureCode{10}{12}% ^^J -\TMP@EnsureCode{33}{12}% ! -\TMP@EnsureCode{34}{12}% " -\TMP@EnsureCode{38}{4}% & -\TMP@EnsureCode{39}{12}% ' -\TMP@EnsureCode{40}{12}% ( -\TMP@EnsureCode{41}{12}% ) -\TMP@EnsureCode{42}{12}% * -\TMP@EnsureCode{43}{12}% + -\TMP@EnsureCode{44}{12}% , -\TMP@EnsureCode{45}{12}% - -\TMP@EnsureCode{46}{12}% . -\TMP@EnsureCode{47}{12}% / -\TMP@EnsureCode{58}{12}% : -\TMP@EnsureCode{60}{12}% < -\TMP@EnsureCode{62}{12}% > -\TMP@EnsureCode{91}{12}% [ -\TMP@EnsureCode{93}{12}% ] -\TMP@EnsureCode{94}{7}% ^ (superscript) -\TMP@EnsureCode{95}{12}% _ (other) -\TMP@EnsureCode{96}{12}% ` -\TMP@EnsureCode{126}{12}% ~ (other) -\edef\pdftexcmds@AtEnd{% - \pdftexcmds@AtEnd - \escapechar=\number\escapechar\relax - \noexpand\endinput -} -\escapechar=92 % -% \end{macrocode} -% -% \subsection{Load packages} -% -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname RequirePackage\endcsname\relax - \def\TMP@RequirePackage#1[#2]{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname ver@#1.sty\endcsname\relax - \input #1.sty\relax - \fi - }% - \TMP@RequirePackage{infwarerr}[2007/09/09]% - \TMP@RequirePackage{ifluatex}[2010/03/01]% - \TMP@RequirePackage{ltxcmds}[2010/12/02]% - \TMP@RequirePackage{ifpdf}[2010/09/13]% -\else - \RequirePackage{infwarerr}[2007/09/09]% - \RequirePackage{ifluatex}[2010/03/01]% - \RequirePackage{ltxcmds}[2010/12/02]% - \RequirePackage{ifpdf}[2010/09/13]% -\fi -% \end{macrocode} -% -% \subsection{Without \hologo{LuaTeX}} -% -% \begin{macrocode} -\ifluatex -\else - \@PackageInfoNoLine{pdftexcmds}{LuaTeX not detected}% - \def\pdftexcmds@nopdftex{% - \@PackageInfoNoLine{pdftexcmds}{pdfTeX >= 1.30 not detected}% - \let\pdftexcmds@nopdftex\relax - }% - \def\pdftexcmds@temp#1{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdf#1\endcsname\relax - \pdftexcmds@nopdftex - \else - \expandafter\def\csname pdf@#1\expandafter\endcsname - \expandafter##\expandafter{% - \csname pdf#1\endcsname - }% - \fi - }% - \pdftexcmds@temp{strcmp}% - \pdftexcmds@temp{escapehex}% - \let\pdf@escapehexnative\pdf@escapehex - \pdftexcmds@temp{unescapehex}% - \let\pdf@unescapehexnative\pdf@unescapehex - \pdftexcmds@temp{escapestring}% - \pdftexcmds@temp{escapename}% - \pdftexcmds@temp{filesize}% - \pdftexcmds@temp{filemoddate}% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdfshellescape\endcsname\relax - \pdftexcmds@nopdftex - \ltx@IfUndefined{pdftexversion}{% - }{% - \ifnum\pdftexversion>120 % 1.21a supports \ifeof18 - \ifeof18 % - \chardef\pdf@shellescape=0 % - \else - \chardef\pdf@shellescape=1 % - \fi - \fi - }% - \else - \def\pdf@shellescape{% - \pdfshellescape - }% - \fi - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdffiledump\endcsname\relax - \pdftexcmds@nopdftex - \else - \def\pdf@filedump#1#2#3{% - \pdffiledump offset#1 length#2{#3}% - }% - \fi -% \end{macrocode} -% \begin{macrocode} - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdfmdfivesum\endcsname\relax - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname mdfivesum\endcsname\relax - \pdftexcmds@nopdftex - \else - \def\pdf@mdfivesum#{\mdfivesum}% - \let\pdf@mdfivesumnative\pdf@mdfivesum - \def\pdf@filemdfivesum#{\mdfivesum file}% - \fi - \else - \def\pdf@mdfivesum#{\pdfmdfivesum}% - \let\pdf@mdfivesumnative\pdf@mdfivesum - \def\pdf@filemdfivesum#{\pdfmdfivesum file}% - \fi -% \end{macrocode} -% \begin{macrocode} - \def\pdf@system#{% - \immediate\write18% - }% - \def\pdftexcmds@temp#1{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdf#1\endcsname\relax - \pdftexcmds@nopdftex - \else - \expandafter\let\csname pdf@#1\expandafter\endcsname - \csname pdf#1\endcsname - \fi - }% - \pdftexcmds@temp{resettimer}% - \pdftexcmds@temp{elapsedtime}% -\fi -% \end{macrocode} -% -% \subsection{\cs{pdf@primitive}, \cs{pdf@ifprimitive}} -% -% Since version 1.40.0 \hologo{pdfTeX} has \cs{pdfprimitive} and -% \cs{ifpdfprimitive}. And \cs{pdfprimitive} was fixed in -% version 1.40.4. -% -% \hologo{XeTeX} provides them under the name \cs{primitive} and -% \cs{ifprimitive}. \hologo{LuaTeX} knows both name variants, -% but they have possibly to be enabled first (|tex.enableprimitives|). -% -% Depending on the format TeX Live uses a prefix |luatex|. -% -% Caution: \cs{let} must be used for the definition of -% the macros, especially because of \cs{ifpdfprimitive}. -% -% \subsubsection{Using \hologo{LuaTeX}'s \texttt{tex.enableprimitives}} -% -% \begin{macrocode} -\ifluatex -% \end{macrocode} -% \begin{macro}{\pdftexcmds@directlua} -% \begin{macrocode} - \ifnum\luatexversion<36 % - \def\pdftexcmds@directlua{\directlua0 }% - \else - \let\pdftexcmds@directlua\directlua - \fi -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} - \begingroup - \newlinechar=10 % - \endlinechar=\newlinechar - \pdftexcmds@directlua{% - if tex.enableprimitives then - tex.enableprimitives( - 'pdf@', - {'primitive', 'ifprimitive', 'pdfdraftmode','draftmode'} - ) - tex.enableprimitives('', {'luaescapestring'}) - end - }% - \endgroup % -% \end{macrocode} -% -% \begin{macrocode} -\fi -% \end{macrocode} -% -% \subsubsection{Trying various names to find the primitives} -% -% \begin{macro}{\pdftexcmds@strip@prefix} -% \begin{macrocode} -\def\pdftexcmds@strip@prefix#1>{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\def\pdftexcmds@temp#1#2#3{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdf@#1\endcsname\relax - \begingroup - \def\x{#3}% - \edef\x{\expandafter\pdftexcmds@strip@prefix\meaning\x}% - \escapechar=-1 % - \edef\y{\expandafter\meaning\csname#2\endcsname}% - \expandafter\endgroup - \ifx\x\y - \expandafter\let\csname pdf@#1\expandafter\endcsname - \csname #2\endcsname - \fi - \fi -} -% \end{macrocode} -% -% \begin{macro}{\pdf@primitive} -% \begin{macrocode} -\pdftexcmds@temp{primitive}{pdfprimitive}{pdfprimitive}% pdfTeX, oldLuaTeX -\pdftexcmds@temp{primitive}{primitive}{primitive}% XeTeX, luatex -\pdftexcmds@temp{primitive}{luatexprimitive}{pdfprimitive}% oldLuaTeX -\pdftexcmds@temp{primitive}{luatexpdfprimitive}{pdfprimitive}% oldLuaTeX -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@ifprimitive} -% \begin{macrocode} -\pdftexcmds@temp{ifprimitive}{ifpdfprimitive}{ifpdfprimitive}% pdfTeX, oldLuaTeX -\pdftexcmds@temp{ifprimitive}{ifprimitive}{ifprimitive}% XeTeX, luatex -\pdftexcmds@temp{ifprimitive}{luatexifprimitive}{ifpdfprimitive}% oldLuaTeX -\pdftexcmds@temp{ifprimitive}{luatexifpdfprimitive}{ifpdfprimitive}% oldLuaTeX -% \end{macrocode} -% \end{macro} -% -% Disable broken \cs{pdfprimitive}. -% \begin{macrocode} -\ifluatex\else -\begingroup - \expandafter\ifx\csname pdf@primitive\endcsname\relax - \else - \expandafter\ifx\csname pdftexversion\endcsname\relax - \else - \ifnum\pdftexversion=140 % - \expandafter\ifx\csname pdftexrevision\endcsname\relax - \else - \ifnum\pdftexrevision<4 % - \endgroup - \let\pdf@primitive\@undefined - \@PackageInfoNoLine{pdftexcmds}{% - \string\pdf@primitive\space disabled, % - because\MessageBreak - \string\pdfprimitive\space is broken until pdfTeX 1.40.4% - }% - \begingroup - \fi - \fi - \fi - \fi - \fi -\endgroup -\fi -% \end{macrocode} -% -% \subsubsection{Result} -% -% \begin{macrocode} -\begingroup - \@PackageInfoNoLine{pdftexcmds}{% - \string\pdf@primitive\space is % - \expandafter\ifx\csname pdf@primitive\endcsname\relax not \fi - available% - }% - \@PackageInfoNoLine{pdftexcmds}{% - \string\pdf@ifprimitive\space is % - \expandafter\ifx\csname pdf@ifprimitive\endcsname\relax not \fi - available% - }% -\endgroup -% \end{macrocode} -% -% \subsection{\hologo{XeTeX}} -% -% Look for primitives \cs{shellescape}, \cs{strcmp}. -% \begin{macrocode} -\def\pdftexcmds@temp#1{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdf@#1\endcsname\relax - \begingroup - \escapechar=-1 % - \edef\x{\expandafter\meaning\csname#1\endcsname}% - \def\y{#1}% - \def\z##1->{}% - \edef\y{\expandafter\z\meaning\y}% - \expandafter\endgroup - \ifx\x\y - \expandafter\def\csname pdf@#1\expandafter\endcsname - \expandafter{% - \csname#1\endcsname - }% - \fi - \fi -}% -\pdftexcmds@temp{shellescape}% -\pdftexcmds@temp{strcmp}% -% \end{macrocode} -% -% \subsection{\cs{pdf@isprimitive}} -% -% \begin{macrocode} -\def\pdf@isprimitive{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname pdf@strcmp\endcsname\relax - \long\def\pdf@isprimitive##1{% - \expandafter\pdftexcmds@isprimitive\expandafter{\meaning##1}% - }% - \long\def\pdftexcmds@isprimitive##1##2{% - \expandafter\pdftexcmds@@isprimitive\expandafter{\string##2}{##1}% - }% - \def\pdftexcmds@@isprimitive##1##2{% - \ifnum0\pdftexcmds@equal##1\delimiter##2\delimiter=1 % - \expandafter\ltx@firstoftwo - \else - \expandafter\ltx@secondoftwo - \fi - }% - \def\pdftexcmds@equal##1##2\delimiter##3##4\delimiter{% - \ifx##1##3% - \ifx\relax##2##4\relax - 1% - \else - \ifx\relax##2\relax - \else - \ifx\relax##4\relax - \else - \pdftexcmds@equalcont{##2}{##4}% - \fi - \fi - \fi - \fi - }% - \def\pdftexcmds@equalcont##1{% - \def\pdftexcmds@equalcont####1####2##1##1##1##1{% - ##1##1##1##1% - \pdftexcmds@equal####1\delimiter####2\delimiter - }% - }% - \expandafter\pdftexcmds@equalcont\csname fi\endcsname - \else - \long\def\pdf@isprimitive##1##2{% - \ifnum\pdf@strcmp{\meaning##1}{\string##2}=0 % - \expandafter\ltx@firstoftwo - \else - \expandafter\ltx@secondoftwo - \fi - }% - \fi -} -\ifluatex -\ifx\pdfdraftmode\@undefined - \let\pdfdraftmode\draftmode -\fi -\else - \pdf@isprimitive -\fi -% \end{macrocode} -% -% \subsection{\cs{pdf@draftmode}} -% -% -% \begin{macrocode} -\let\pdftexcmds@temp\ltx@zero % -\ltx@IfUndefined{pdfdraftmode}{% - \@PackageInfoNoLine{pdftexcmds}{\ltx@backslashchar pdfdraftmode not found}% -}{% - \ifpdf - \let\pdftexcmds@temp\ltx@one - \@PackageInfoNoLine{pdftexcmds}{\ltx@backslashchar pdfdraftmode found}% - \else - \@PackageInfoNoLine{pdftexcmds}{% - \ltx@backslashchar pdfdraftmode is ignored in DVI mode% - }% - \fi -} -\ifcase\pdftexcmds@temp -% \end{macrocode} -% \begin{macro}{\pdf@draftmode} -% \begin{macrocode} - \let\pdf@draftmode\ltx@zero -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@ifdraftmode} -% \begin{macrocode} - \let\pdf@ifdraftmode\ltx@secondoftwo -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdftexcmds@setdraftmode} -% \begin{macrocode} - \def\pdftexcmds@setdraftmode#1{}% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\else -% \end{macrocode} -% \begin{macro}{\pdftexcmds@draftmode} -% \begin{macrocode} - \let\pdftexcmds@draftmode\pdfdraftmode -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@ifdraftmode} -% \begin{macrocode} - \def\pdf@ifdraftmode{% - \ifnum\pdftexcmds@draftmode=\ltx@one - \expandafter\ltx@firstoftwo - \else - \expandafter\ltx@secondoftwo - \fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@draftmode} -% \begin{macrocode} - \def\pdf@draftmode{% - \ifnum\pdftexcmds@draftmode=\ltx@one - \expandafter\ltx@one - \else - \expandafter\ltx@zero - \fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdftexcmds@setdraftmode} -% \begin{macrocode} - \def\pdftexcmds@setdraftmode#1{% - \pdftexcmds@draftmode=#1\relax - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\fi -% \end{macrocode} -% \begin{macro}{\pdf@setdraftmode} -% \begin{macrocode} -\def\pdf@setdraftmode#1{% - \begingroup - \count\ltx@cclv=#1\relax - \edef\x{\endgroup - \noexpand\pdftexcmds@@setdraftmode{\the\count\ltx@cclv}% - }% - \x -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdftexcmds@@setdraftmode} -% \begin{macrocode} -\def\pdftexcmds@@setdraftmode#1{% - \ifcase#1 % - \pdftexcmds@setdraftmode{#1}% - \or - \pdftexcmds@setdraftmode{#1}% - \else - \@PackageWarning{pdftexcmds}{% - \string\pdf@setdraftmode: Ignoring\MessageBreak - invalid value `#1'% - }% - \fi -} -% \end{macrocode} -% \end{macro} -% -% \subsection{Load Lua module} -% -% \begin{macrocode} -\ifluatex -\else - \expandafter\pdftexcmds@AtEnd -\fi% -% \end{macrocode} -% -% \begin{macrocode} -\ifnum\luatexversion<80 - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname RequirePackage\endcsname\relax - \def\TMP@RequirePackage#1[#2]{% - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname ver@#1.sty\endcsname\relax - \input #1.sty\relax - \fi - }% - \TMP@RequirePackage{luatex-loader}[2009/04/10]% - \else - \RequirePackage{luatex-loader}[2009/04/10]% - \fi -\fi -\pdftexcmds@directlua{% - require("pdftexcmds")% -} -\ifnum\luatexversion>37 % - \ifnum0% - \pdftexcmds@directlua{% - if status.ini_version then % - tex.write("1")% - end% - }>0 % - \everyjob\expandafter{% - \the\everyjob - \pdftexcmds@directlua{% - require("pdftexcmds")% - }% - }% - \fi -\fi -\begingroup - \def\x{2019/07/25 v0.30}% - \ltx@onelevel@sanitize\x - \edef\y{% - \pdftexcmds@directlua{% - if oberdiek.pdftexcmds.getversion then % - oberdiek.pdftexcmds.getversion()% - end% - }% - }% - \ifx\x\y - \else - \@PackageError{pdftexcmds}{% - Wrong version of lua module.\MessageBreak - Package version: \x\MessageBreak - Lua module: \y - }\@ehc - \fi -\endgroup -% \end{macrocode} -% -% \subsection{Lua functions} -% -% \subsubsection{Helper macros} -% -% \begin{macro}{\pdftexcmds@toks} -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname newtoks\endcsname\relax - \toksdef\pdftexcmds@toks=0 % -\else - \csname newtoks\endcsname\pdftexcmds@toks -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pdftexcmds@Patch} -% \begin{macrocode} -\def\pdftexcmds@Patch{0} -\ifnum\luatexversion>40 % - \ifnum\luatexversion<66 % - \def\pdftexcmds@Patch{1}% - \fi -\fi -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\ifcase\pdftexcmds@Patch - \catcode`\&=14 % -\else - \catcode`\&=9 % -% \end{macrocode} -% \begin{macro}{\pdftexcmds@PatchDecode} -% \begin{macrocode} - \def\pdftexcmds@PatchDecode#1\@nil{% - \pdftexcmds@DecodeA#1^^A^^A\@nil{}% - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdftexcmds@DecodeA} -% \begin{macrocode} - \def\pdftexcmds@DecodeA#1^^A^^A#2\@nil#3{% - \ifx\relax#2\relax - \ltx@ReturnAfterElseFi{% - \pdftexcmds@DecodeB#3#1^^A^^B\@nil{}% - }% - \else - \ltx@ReturnAfterFi{% - \pdftexcmds@DecodeA#2\@nil{#3#1^^@}% - }% - \fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdftexcmds@DecodeB} -% \begin{macrocode} - \def\pdftexcmds@DecodeB#1^^A^^B#2\@nil#3{% - \ifx\relax#2\relax% - \ltx@ReturnAfterElseFi{% - \ltx@zero - #3#1% - }% - \else - \ltx@ReturnAfterFi{% - \pdftexcmds@DecodeB#2\@nil{#3#1^^A}% - }% - \fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\fi -% \end{macrocode} -% -% \begin{macrocode} -\ifnum\luatexversion<36 % -\else - \catcode`\0=9 % -\fi -% \end{macrocode} -% -% \subsubsection[Strings]{Strings \cite[``7.15 Strings'']{pdftex-manual}} -% -% \begin{macro}{\pdf@strcmp} -% \begin{macrocode} -\long\def\pdf@strcmp#1#2{% - \directlua0{% - oberdiek.pdftexcmds.strcmp("\luaescapestring{#1}",% - "\luaescapestring{#2}")% - }% -}% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\pdf@isprimitive -% \end{macrocode} -% \begin{macro}{\pdf@escapehex} -% \begin{macrocode} -\long\def\pdf@escapehex#1{% - \directlua0{% - oberdiek.pdftexcmds.escapehex("\luaescapestring{#1}", "byte")% - }% -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@escapehexnative} -% \begin{macrocode} -\long\def\pdf@escapehexnative#1{% - \directlua0{% - oberdiek.pdftexcmds.escapehex("\luaescapestring{#1}")% - }% -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@unescapehex} -% \begin{macrocode} -\def\pdf@unescapehex#1{% -& \romannumeral\expandafter\pdftexcmds@PatchDecode - \the\expandafter\pdftexcmds@toks - \directlua0{% - oberdiek.pdftexcmds.toks="pdftexcmds@toks"% - oberdiek.pdftexcmds.unescapehex("\luaescapestring{#1}", "byte", \pdftexcmds@Patch)% - }% -& \@nil -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@unescapehexnative} -% \begin{macrocode} -\def\pdf@unescapehexnative#1{% -& \romannumeral\expandafter\pdftexcmds@PatchDecode - \the\expandafter\pdftexcmds@toks - \directlua0{% - oberdiek.pdftexcmds.toks="pdftexcmds@toks"% - oberdiek.pdftexcmds.unescapehex("\luaescapestring{#1}", \pdftexcmds@Patch)% - }% -& \@nil -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@escapestring} -% \begin{macrocode} -\long\def\pdf@escapestring#1{% - \directlua0{% - oberdiek.pdftexcmds.escapestring("\luaescapestring{#1}", "byte")% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@escapename} -% \begin{macrocode} -\long\def\pdf@escapename#1{% - \directlua0{% - oberdiek.pdftexcmds.escapename("\luaescapestring{#1}", "byte")% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@escapenamenative} -% \begin{macrocode} -\long\def\pdf@escapenamenative#1{% - \directlua0{% - oberdiek.pdftexcmds.escapename("\luaescapestring{#1}")% - }% -} -% \end{macrocode} -% \end{macro} -% -% \subsubsection[Files]{Files \cite[``7.18 Files'']{pdftex-manual}} -% -% \begin{macro}{\pdf@filesize} -% \begin{macrocode} -\def\pdf@filesize#1{% - \directlua0{% - oberdiek.pdftexcmds.filesize("\luaescapestring{#1}")% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@filemoddate} -% \begin{macrocode} -\def\pdf@filemoddate#1{% - \directlua0{% - oberdiek.pdftexcmds.filemoddate("\luaescapestring{#1}")% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@filedump} -% \begin{macrocode} -\def\pdf@filedump#1#2#3{% - \directlua0{% - oberdiek.pdftexcmds.filedump("\luaescapestring{\number#1}",% - "\luaescapestring{\number#2}",% - "\luaescapestring{#3}")% - }% -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@mdfivesum} -% \begin{macrocode} -\long\def\pdf@mdfivesum#1{% - \directlua0{% - oberdiek.pdftexcmds.mdfivesum("\luaescapestring{#1}", "byte")% - }% -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@mdfivesumnative} -% \begin{macrocode} -\long\def\pdf@mdfivesumnative#1{% - \directlua0{% - oberdiek.pdftexcmds.mdfivesum("\luaescapestring{#1}")% - }% -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@filemdfivesum} -% \begin{macrocode} -\def\pdf@filemdfivesum#1{% - \directlua0{% - oberdiek.pdftexcmds.filemdfivesum("\luaescapestring{#1}")% - }% -}% -% \end{macrocode} -% \end{macro} -% -% \subsubsection[Timekeeping]{Timekeeping \cite[``7.17 Timekeeping'']{pdftex-manual}} -% -% \begin{macro}{\protected} -% \begin{macrocode} -\let\pdftexcmds@temp=Y% -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname protected\endcsname\relax - \pdftexcmds@directlua0{% - if tex.enableprimitives then % - tex.enableprimitives('', {'protected'})% - end% - }% -\fi -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname protected\endcsname\relax - \let\pdftexcmds@temp=N% -\fi -% \end{macrocode} -% \end{macro} -% \begin{macro}{\numexpr} -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname numexpr\endcsname\relax - \pdftexcmds@directlua0{% - if tex.enableprimitives then % - tex.enableprimitives('', {'numexpr'})% - end% - }% -\fi -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname numexpr\endcsname\relax - \let\pdftexcmds@temp=N% -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\ifx\pdftexcmds@temp N% - \@PackageWarningNoLine{pdftexcmds}{% - Definitions of \ltx@backslashchar pdf@resettimer and% - \MessageBreak - \ltx@backslashchar pdf@elapsedtime are skipped, because% - \MessageBreak - e-TeX's \ltx@backslashchar protected or % - \ltx@backslashchar numexpr are missing% - }% -\else -% \end{macrocode} -% -% \begin{macro}{\pdf@resettimer} -% \begin{macrocode} - \protected\def\pdf@resettimer{% - \pdftexcmds@directlua0{% - oberdiek.pdftexcmds.resettimer()% - }% - }% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pdf@elapsedtime} -% \begin{macrocode} - \protected\def\pdf@elapsedtime{% - \numexpr - \pdftexcmds@directlua0{% - oberdiek.pdftexcmds.elapsedtime()% - }% - \relax - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\fi -% \end{macrocode} -% -% \subsubsection{Shell escape} -% -% \begin{macro}{\pdf@shellescape} -% -% \begin{macrocode} -\ifnum\luatexversion<68 % -\else - \protected\edef\pdf@shellescape{% - \numexpr\directlua{tex.sprint(% - \number\catcodetable@string,status.shell_escape)}\relax} -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pdf@system} -% \begin{macrocode} -\def\pdf@system#1{% - \directlua0{% - oberdiek.pdftexcmds.system("\luaescapestring{#1}")% - }% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pdf@lastsystemstatus} -% \begin{macrocode} -\def\pdf@lastsystemstatus{% - \directlua0{% - oberdiek.pdftexcmds.lastsystemstatus()% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\pdf@lastsystemexit} -% \begin{macrocode} -\def\pdf@lastsystemexit{% - \directlua0{% - oberdiek.pdftexcmds.lastsystemexit()% - }% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\catcode`\0=12 % -% \end{macrocode} -% -% \begin{macro}{\pdf@pipe} -% Check availability of |io.popen| first. -% \begin{macrocode} -\ifnum0% - \pdftexcmds@directlua{% - if io.popen then % - tex.write("1")% - end% - }% - =1 % - \def\pdf@pipe#1{% -& \romannumeral\expandafter\pdftexcmds@PatchDecode - \the\expandafter\pdftexcmds@toks - \pdftexcmds@directlua{% - oberdiek.pdftexcmds.toks="pdftexcmds@toks"% - oberdiek.pdftexcmds.pipe("\luaescapestring{#1}", \pdftexcmds@Patch)% - }% -& \@nil - }% -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\pdftexcmds@AtEnd% -%</package> -% \end{macrocode} -% -% \subsection{Lua module} -% -% \begin{macrocode} -%<*lua> -% \end{macrocode} -% -% \begin{macrocode} -oberdiek = oberdiek or {} -local pdftexcmds = oberdiek.pdftexcmds or {} -oberdiek.pdftexcmds = pdftexcmds -local systemexitstatus -function pdftexcmds.getversion() - tex.write("2019/07/25 v0.30") -end -% \end{macrocode} -% -% \subsubsection[Strings]{Strings \cite[``7.15 Strings'']{pdftex-manual}} -% -% \begin{macrocode} -function pdftexcmds.strcmp(A, B) - if A == B then - tex.write("0") - elseif A < B then - tex.write("-1") - else - tex.write("1") - end -end -local function utf8_to_byte(str) - local i = 0 - local n = string.len(str) - local t = {} - while i < n do - i = i + 1 - local a = string.byte(str, i) - if a < 128 then - table.insert(t, string.char(a)) - else - if a >= 192 and i < n then - i = i + 1 - local b = string.byte(str, i) - if b < 128 or b >= 192 then - i = i - 1 - elseif a == 194 then - table.insert(t, string.char(b)) - elseif a == 195 then - table.insert(t, string.char(b + 64)) - end - end - end - end - return table.concat(t) -end -function pdftexcmds.escapehex(str, mode) - if mode == "byte" then - str = utf8_to_byte(str) - end - tex.write((string.gsub(str, ".", - function (ch) - return string.format("%02X", string.byte(ch)) - end - ))) -end -% \end{macrocode} -% See procedure |unescapehex| in file \xfile{utils.c} of \hologo{pdfTeX}. -% Caution: |tex.write| ignores leading spaces. -% \begin{macrocode} -function pdftexcmds.unescapehex(str, mode, patch) - local a = 0 - local first = true - local result = {} - for i = 1, string.len(str), 1 do - local ch = string.byte(str, i) - if ch >= 48 and ch <= 57 then - ch = ch - 48 - elseif ch >= 65 and ch <= 70 then - ch = ch - 55 - elseif ch >= 97 and ch <= 102 then - ch = ch - 87 - else - ch = nil - end - if ch then - if first then - a = ch * 16 - first = false - else - table.insert(result, a + ch) - first = true - end - end - end - if not first then - table.insert(result, a) - end - if patch == 1 then - local temp = {} - for i, a in ipairs(result) do - if a == 0 then - table.insert(temp, 1) - table.insert(temp, 1) - else - if a == 1 then - table.insert(temp, 1) - table.insert(temp, 2) - else - table.insert(temp, a) - end - end - end - result = temp - end - if mode == "byte" then - local utf8 = {} - for i, a in ipairs(result) do - if a < 128 then - table.insert(utf8, a) - else - if a < 192 then - table.insert(utf8, 194) - a = a - 128 - else - table.insert(utf8, 195) - a = a - 192 - end - table.insert(utf8, a + 128) - end - end - result = utf8 - end -% \end{macrocode} -% this next line added for current luatex; this is the only -% change in the file. eroux, 28apr13. (v 0.21) -% \begin{macrocode} - local unpack = _G["unpack"] or table.unpack - tex.settoks(pdftexcmds.toks, string.char(unpack(result))) -end -% \end{macrocode} -% See procedure |escapestring| in file \xfile{utils.c} of \hologo{pdfTeX}. -% \begin{macrocode} -function pdftexcmds.escapestring(str, mode) - if mode == "byte" then - str = utf8_to_byte(str) - end - tex.write((string.gsub(str, ".", - function (ch) - local b = string.byte(ch) - if b < 33 or b > 126 then - return string.format("\\%.3o", b) - end - if b == 40 or b == 41 or b == 92 then - return "\\" .. ch - end -% \end{macrocode} -% Lua 5.1 returns the match in case of return value |nil|. -% \begin{macrocode} - return nil - end - ))) -end -% \end{macrocode} -% See procedure |escapename| in file \xfile{utils.c} of \hologo{pdfTeX}. -% \begin{macrocode} -function pdftexcmds.escapename(str, mode) - if mode == "byte" then - str = utf8_to_byte(str) - end - tex.write((string.gsub(str, ".", - function (ch) - local b = string.byte(ch) - if b == 0 then -% \end{macrocode} -% In Lua 5.0 |nil| could be used for the empty string, -% But |nil| returns the match in Lua 5.1, thus we use -% the empty string explicitly. -% \begin{macrocode} - return "" - end - if b <= 32 or b >= 127 - or b == 35 or b == 37 or b == 40 or b == 41 - or b == 47 or b == 60 or b == 62 or b == 91 - or b == 93 or b == 123 or b == 125 then - return string.format("#%.2X", b) - else -% \end{macrocode} -% Lua 5.1 returns the match in case of return value |nil|. -% \begin{macrocode} - return nil - end - end - ))) -end -% \end{macrocode} -% -% \subsubsection[Files]{Files \cite[``7.18 Files'']{pdftex-manual}} -% -% \begin{macrocode} -function pdftexcmds.filesize(filename) - local foundfile = kpse.find_file(filename, "tex", true) - if foundfile then - local size = lfs.attributes(foundfile, "size") - if size then - tex.write(size) - end - end -end -% \end{macrocode} -% See procedure |makepdftime| in file \xfile{utils.c} of \hologo{pdfTeX}. -% \begin{macrocode} -function pdftexcmds.filemoddate(filename) - local foundfile = kpse.find_file(filename, "tex", true) - if foundfile then - local date = lfs.attributes(foundfile, "modification") - if date then - local d = os.date("*t", date) - if d.sec >= 60 then - d.sec = 59 - end - local u = os.date("!*t", date) - local off = 60 * (d.hour - u.hour) + d.min - u.min - if d.year ~= u.year then - if d.year > u.year then - off = off + 1440 - else - off = off - 1440 - end - elseif d.yday ~= u.yday then - if d.yday > u.yday then - off = off + 1440 - else - off = off - 1440 - end - end - local timezone - if off == 0 then - timezone = "Z" - else - local hours = math.floor(off / 60) - local mins = math.abs(off - hours * 60) - timezone = string.format("%+03d'%02d'", hours, mins) - end - tex.write(string.format("D:%04d%02d%02d%02d%02d%02d%s", - d.year, d.month, d.day, d.hour, d.min, d.sec, timezone)) - end - end -end -function pdftexcmds.filedump(offset, length, filename) - length = tonumber(length) - if length and length > 0 then - local foundfile = kpse.find_file(filename, "tex", true) - if foundfile then - offset = tonumber(offset) - if not offset then - offset = 0 - end - local filehandle = io.open(foundfile, "rb") - if filehandle then - if offset > 0 then - filehandle:seek("set", offset) - end - local dump = filehandle:read(length) - pdftexcmds.escapehex(dump) - filehandle:close() - end - end - end -end -function pdftexcmds.mdfivesum(str, mode) - if mode == "byte" then - str = utf8_to_byte(str) - end - pdftexcmds.escapehex(md5.sum(str)) -end -function pdftexcmds.filemdfivesum(filename) - local foundfile = kpse.find_file(filename, "tex", true) - if foundfile then - local filehandle = io.open(foundfile, "rb") - if filehandle then - local contents = filehandle:read("*a") - pdftexcmds.escapehex(md5.sum(contents)) - filehandle:close() - end - end -end -% \end{macrocode} -% -% \subsubsection[Timekeeping]{Timekeeping \cite[``7.17 Timekeeping'']{pdftex-manual}} -% -% The functions for timekeeping are based on -% Andy Thomas' work \cite{AndyThomas:Analog}. -% Changes: -% \begin{itemize} -% \item Overflow check is added. -% \item |string.format| is used to avoid exponential number -% representation for sure. -% \item |tex.write| is used instead of |tex.print| to get -% tokens with catcode 12 and without appended \cs{endlinechar}. -% \end{itemize} -% \begin{macrocode} -local basetime = 0 -function pdftexcmds.resettimer() - basetime = os.clock() -end -function pdftexcmds.elapsedtime() - local val = (os.clock() - basetime) * 65536 + .5 - if val > 2147483647 then - val = 2147483647 - end - tex.write(string.format("%d", val)) -end -% \end{macrocode} -% -% \subsubsection[Miscellaneous]{Miscellaneous \cite[``7.21 Miscellaneous'']{pdftex-manual}} -% -% \begin{macrocode} -function pdftexcmds.shellescape() - if os.execute then - if status - and status.luatex_version - and status.luatex_version >= 68 then - tex.write(os.execute()) - else - local result = os.execute() - if result == 0 then - tex.write("0") - else - if result == nil then - tex.write("0") - else - tex.write("1") - end - end - end - else - tex.write("0") - end -end -function pdftexcmds.system(cmdline) - systemexitstatus = nil - texio.write_nl("log", "system(" .. cmdline .. ") ") - if os.execute then - texio.write("log", "executed.") - systemexitstatus = os.execute(cmdline) - else - texio.write("log", "disabled.") - end -end -function pdftexcmds.lastsystemstatus() - local result = tonumber(systemexitstatus) - if result then - local x = math.floor(result / 256) - tex.write(result - 256 * math.floor(result / 256)) - end -end -function pdftexcmds.lastsystemexit() - local result = tonumber(systemexitstatus) - if result then - tex.write(math.floor(result / 256)) - end -end -function pdftexcmds.pipe(cmdline, patch) - local result - systemexitstatus = nil - texio.write_nl("log", "pipe(" .. cmdline ..") ") - if io.popen then - texio.write("log", "executed.") - local handle = io.popen(cmdline, "r") - if handle then - result = handle:read("*a") - handle:close() - end - else - texio.write("log", "disabled.") - end - if result then - if patch == 1 then - local temp = {} - for i, a in ipairs(result) do - if a == 0 then - table.insert(temp, 1) - table.insert(temp, 1) - else - if a == 1 then - table.insert(temp, 1) - table.insert(temp, 2) - else - table.insert(temp, a) - end - end - end - result = temp - end - tex.settoks(pdftexcmds.toks, result) - else - tex.settoks(pdftexcmds.toks, "") - end -end -% \end{macrocode} -% \begin{macrocode} -%</lua> -% \end{macrocode} -% -% \section{Test} -% -% \subsection{Catcode checks for loading} -% -% \begin{macrocode} -%<*test1> -% \end{macrocode} -% \begin{macrocode} -\catcode`\{=1 % -\catcode`\}=2 % -\catcode`\#=6 % -\catcode`\@=11 % -\expandafter\ifx\csname count@\endcsname\relax - \countdef\count@=255 % -\fi -\expandafter\ifx\csname @gobble\endcsname\relax - \long\def\@gobble#1{}% -\fi -\expandafter\ifx\csname @firstofone\endcsname\relax - \long\def\@firstofone#1{#1}% -\fi -\expandafter\ifx\csname loop\endcsname\relax - \expandafter\@firstofone -\else - \expandafter\@gobble -\fi -{% - \def\loop#1\repeat{% - \def\body{#1}% - \iterate - }% - \def\iterate{% - \body - \let\next\iterate - \else - \let\next\relax - \fi - \next - }% - \let\repeat=\fi -}% -\def\RestoreCatcodes{} -\count@=0 % -\loop - \edef\RestoreCatcodes{% - \RestoreCatcodes - \catcode\the\count@=\the\catcode\count@\relax - }% -\ifnum\count@<255 % - \advance\count@ 1 % -\repeat - -\def\RangeCatcodeInvalid#1#2{% - \count@=#1\relax - \loop - \catcode\count@=15 % - \ifnum\count@<#2\relax - \advance\count@ 1 % - \repeat -} -\def\RangeCatcodeCheck#1#2#3{% - \count@=#1\relax - \loop - \ifnum#3=\catcode\count@ - \else - \errmessage{% - Character \the\count@\space - with wrong catcode \the\catcode\count@\space - instead of \number#3% - }% - \fi - \ifnum\count@<#2\relax - \advance\count@ 1 % - \repeat -} -\def\space{ } -\expandafter\ifx\csname LoadCommand\endcsname\relax - \def\LoadCommand{\input pdftexcmds.sty\relax}% -\fi -\def\Test{% - \RangeCatcodeInvalid{0}{47}% - \RangeCatcodeInvalid{58}{64}% - \RangeCatcodeInvalid{91}{96}% - \RangeCatcodeInvalid{123}{255}% - \catcode`\@=12 % - \catcode`\\=0 % - \catcode`\%=14 % - \LoadCommand - \RangeCatcodeCheck{0}{36}{15}% - \RangeCatcodeCheck{37}{37}{14}% - \RangeCatcodeCheck{38}{47}{15}% - \RangeCatcodeCheck{48}{57}{12}% - \RangeCatcodeCheck{58}{63}{15}% - \RangeCatcodeCheck{64}{64}{12}% - \RangeCatcodeCheck{65}{90}{11}% - \RangeCatcodeCheck{91}{91}{15}% - \RangeCatcodeCheck{92}{92}{0}% - \RangeCatcodeCheck{93}{96}{15}% - \RangeCatcodeCheck{97}{122}{11}% - \RangeCatcodeCheck{123}{255}{15}% - \RestoreCatcodes -} -\Test -\csname @@end\endcsname -\end -% \end{macrocode} -% \begin{macrocode} -%</test1> -% \end{macrocode} -% -% \subsection{Test for \cs{pdf@isprimitive}} -% -% \begin{macrocode} -%<*test2> -\catcode`\{=1 % -\catcode`\}=2 % -\catcode`\#=6 % -\catcode`\@=11 % -\input pdftexcmds.sty\relax -\def\msg#1{% - \begingroup - \escapechar=92 % - \immediate\write16{#1}% - \endgroup -} -\long\def\test#1#2#3#4{% - \begingroup - #4% - \def\str{% - Test \string\pdf@isprimitive - {\string #1}{\string #2}{...}: % - }% - \pdf@isprimitive{#1}{#2}{% - \ifx#3Y% - \msg{\str true ==> OK.}% - \else - \errmessage{\str false ==> FAILED}% - \fi - }{% - \ifx#3Y% - \errmessage{\str true ==> FAILED}% - \else - \msg{\str false ==> OK.}% - \fi - }% - \endgroup -} -\test\relax\relax Y{} -\test\foobar\relax Y{\let\foobar\relax} -\test\foobar\relax N{} -\test\hbox\hbox Y{} -\test\foobar@hbox\hbox Y{\let\foobar@hbox\hbox} -\test\if\if Y{} -\test\if\ifx N{} -\test\ifx\if N{} -\test\par\par Y{} -\test\hbox\par N{} -\test\par\hbox N{} -\csname @@end\endcsname\end -%</test2> -% \end{macrocode} -% -% \subsection{Test for \cs{pdf@shellescape}} -% -% \begin{macrocode} -%<*test-shell> -\catcode`\{=1 % -\catcode`\}=2 % -\catcode`\#=6 % -\catcode`\@=11 % -\input pdftexcmds.sty\relax -\def\msg#{\immediate\write16} -\def\MaybeEnd{} -\ifx\luatexversion\UnDeFiNeD -\else - \ifnum\luatexversion<68 % - \ifx\pdf@shellescape\@undefined - \msg{SHELL=U}% - \msg{OK (LuaTeX < 0.68)}% - \else - \msg{SHELL=defined}% - \errmessage{Failed (LuaTeX < 0.68)}% - \fi - \def\MaybeEnd{\csname @@end\endcsname\end}% - \fi -\fi -\MaybeEnd -\ifx\pdf@shellescape\@undefined - \msg{SHELL=U}% -\else - \msg{SHELL=\number\pdf@shellescape}% -\fi -\ifx\expected\@undefined -\else - \ifx\expected\relax - \msg{EXPECTED=U}% - \ifx\pdf@shellescape\@undefined - \msg{OK}% - \else - \errmessage{Failed}% - \fi - \else - \msg{EXPECTED=\number\expected}% - \ifnum\pdf@shellescape=\expected\relax - \msg{OK}% - \else - \errmessage{Failed}% - \fi - \fi -\fi -\csname @@end\endcsname\end -%</test-shell> -% \end{macrocode} -% -% \subsection{Test for escape functions} -% -% \begin{macrocode} -%<*test-escape> -\catcode`\{=1 % -\catcode`\}=2 % -\catcode`\#=6 % -\catcode`\^=7 % -\catcode`\@=11 % -\errorcontextlines=1000 % -\input pdftexcmds.sty\relax -\def\msg#1{% - \begingroup - \escapechar=92 % - \immediate\write16{#1}% - \endgroup -} -% \end{macrocode} -% \begin{macrocode} -\begingroup - \catcode`\@=11 % - \countdef\count@=255 % - \def\space{ }% - \long\def\@whilenum#1\do #2{% - \ifnum #1\relax - #2\relax - \@iwhilenum{#1\relax#2\relax}% - \fi - }% - \long\def\@iwhilenum#1{% - \ifnum #1% - \expandafter\@iwhilenum - \else - \expandafter\ltx@gobble - \fi - {#1}% - }% - \gdef\AllBytes{}% - \count@=0 % - \catcode0=12 % - \@whilenum\count@<256 \do{% - \lccode0=\count@ - \ifnum\count@=32 % - \xdef\AllBytes{\AllBytes\space}% - \else - \lowercase{% - \xdef\AllBytes{\AllBytes^^@}% - }% - \fi - \advance\count@ by 1 % - }% -\endgroup -% \end{macrocode} -% \begin{macrocode} -\def\AllBytesHex{% - 000102030405060708090A0B0C0D0E0F% - 101112131415161718191A1B1C1D1E1F% - 202122232425262728292A2B2C2D2E2F% - 303132333435363738393A3B3C3D3E3F% - 404142434445464748494A4B4C4D4E4F% - 505152535455565758595A5B5C5D5E5F% - 606162636465666768696A6B6C6D6E6F% - 707172737475767778797A7B7C7D7E7F% - 808182838485868788898A8B8C8D8E8F% - 909192939495969798999A9B9C9D9E9F% - A0A1A2A3A4A5A6A7A8A9AAABACADAEAF% - B0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF% - C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF% - D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF% - E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF% - F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF% -} -\ltx@onelevel@sanitize\AllBytesHex -\expandafter\lowercase\expandafter{% - \expandafter\def\expandafter\AllBytesHexLC - \expandafter{\AllBytesHex}% -} -\begingroup - \catcode`\#=12 % - \xdef\AllBytesName{% - #01#02#03#04#05#06#07#08#09#0A#0B#0C#0D#0E#0F% - #10#11#12#13#14#15#16#17#18#19#1A#1B#1C#1D#1E#1F% - #20!"#23$#25&'#28#29*+,-.#2F% - 0123456789:;#3C=#3E?% - @ABCDEFGHIJKLMNO% - PQRSTUVWXYZ#5B\ltx@backslashchar#5D^_% - `abcdefghijklmno% - pqrstuvwxyz#7B|#7D\string~#7F% - #80#81#82#83#84#85#86#87#88#89#8A#8B#8C#8D#8E#8F% - #90#91#92#93#94#95#96#97#98#99#9A#9B#9C#9D#9E#9F% - #A0#A1#A2#A3#A4#A5#A6#A7#A8#A9#AA#AB#AC#AD#AE#AF% - #B0#B1#B2#B3#B4#B5#B6#B7#B8#B9#BA#BB#BC#BD#BE#BF% - #C0#C1#C2#C3#C4#C5#C6#C7#C8#C9#CA#CB#CC#CD#CE#CF% - #D0#D1#D2#D3#D4#D5#D6#D7#D8#D9#DA#DB#DC#DD#DE#DF% - #E0#E1#E2#E3#E4#E5#E6#E7#E8#E9#EA#EB#EC#ED#EE#EF% - #F0#F1#F2#F3#F4#F5#F6#F7#F8#F9#FA#FB#FC#FD#FE#FF% - }% -\endgroup -\ltx@onelevel@sanitize\AllBytesName -\edef\AllBytesFromName{\expandafter\ltx@gobble\AllBytes} -\begingroup - \def\|{|}% - \edef\%{\ltx@percentchar}% - \catcode`\|=0 % - \catcode`\#=12 % - \catcode`\~=12 % - \catcode`\\=12 % - |xdef|AllBytesString{% - \000\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017% - \020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037% - \040!"#$|%&'\(\)*+,-./% - 0123456789:;<=>?% - @ABCDEFGHIJKLMNO% - PQRSTUVWXYZ[\\]^_% - `abcdefghijklmno% - pqrstuvwxyz{||}~\177% - \200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217% - \220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237% - \240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257% - \260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277% - \300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317% - \320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337% - \340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357% - \360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377% - }% -|endgroup -\ltx@onelevel@sanitize\AllBytesString -% \end{macrocode} -% \begin{macrocode} -\def\Test#1#2#3{% - \begingroup - \expandafter\expandafter\expandafter\def - \expandafter\expandafter\expandafter\TestResult - \expandafter\expandafter\expandafter{% - #1{#2}% - }% - \ifx\TestResult#3% - \else - \newlinechar=10 % - \msg{Expect:^^J#3}% - \msg{Result:^^J\TestResult}% - \errmessage{\string#2 -\string#1-> \string#3}% - \fi - \endgroup -} -\def\test#1#2#3{% - \edef\TestFrom{#2}% - \edef\TestExpect{#3}% - \ltx@onelevel@sanitize\TestExpect - \Test#1\TestFrom\TestExpect -} -\test\pdf@unescapehex{74657374}{test} -\begingroup - \catcode0=12 % - \catcode1=12 % - \test\pdf@unescapehex{740074017400740174}{t^^@t^^At^^@t^^At}% -\endgroup -\Test\pdf@escapehex\AllBytes\AllBytesHex -\Test\pdf@unescapehex\AllBytesHex\AllBytes -\Test\pdf@escapename\AllBytes\AllBytesName -\Test\pdf@escapestring\AllBytes\AllBytesString -% \end{macrocode} -% \begin{macrocode} -\csname @@end\endcsname\end -%</test-escape> -% \end{macrocode} -% -% \section{Installation} -% -% \subsection{Download} -% -% \paragraph{Package.} This package is available on -% CTAN\footnote{\CTANpkg{pdftexcmds}}: -% \begin{description} -% \item[\CTAN{macros/latex/contrib/oberdiek/pdftexcmds.dtx}] The source file. -% \item[\CTAN{macros/latex/contrib/oberdiek/pdftexcmds.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[\CTANinstall{install/macros/latex/contrib/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 pdftexcmds.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@{}} -% pdftexcmds.sty & tex/generic/oberdiek/pdftexcmds.sty\\ -% oberdiek.pdftexcmds.lua & scripts/oberdiek/oberdiek.pdftexcmds.lua\\ -% pdftexcmds.lua & scripts/oberdiek/pdftexcmds.lua\\ -% pdftexcmds.pdf & doc/latex/oberdiek/pdftexcmds.pdf\\ -% test/pdftexcmds-test1.tex & doc/latex/oberdiek/test/pdftexcmds-test1.tex\\ -% test/pdftexcmds-test2.tex & doc/latex/oberdiek/test/pdftexcmds-test2.tex\\ -% test/pdftexcmds-test-shell.tex & doc/latex/oberdiek/test/pdftexcmds-test-shell.tex\\ -% test/pdftexcmds-test-escape.tex & doc/latex/oberdiek/test/pdftexcmds-test-escape.tex\\ -% pdftexcmds.dtx & source/latex/oberdiek/pdftexcmds.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{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{pdftexcmds.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 pdftexcmds.dtx -%bibtex pdftexcmds.aux -%makeindex -s gind.ist pdftexcmds.idx -%pdflatex pdftexcmds.dtx -%makeindex -s gind.ist pdftexcmds.idx -%pdflatex pdftexcmds.dtx -%\end{verbatim} -% \end{quote} -% -% \printbibliography[ -% heading=bibnumbered, -% ] -% -% \begin{History} -% \begin{Version}{2007/11/11 v0.1} -% \item -% First version. -% \end{Version} -% \begin{Version}{2007/11/12 v0.2} -% \item -% Short description fixed. -% \end{Version} -% \begin{Version}{2007/12/12 v0.3} -% \item -% Organization of Lua code as module. -% \end{Version} -% \begin{Version}{2009/04/10 v0.4} -% \item -% Adaptation for syntax change of \cs{directlua} in -% \hologo{LuaTeX} 0.36. -% \end{Version} -% \begin{Version}{2009/09/22 v0.5} -% \item -% \cs{pdf@primitive}, \cs{pdf@ifprimitive} added. -% \item -% \hologo{XeTeX}'s variants are detected for -% \cs{pdf@shellescape}, \cs{pdf@strcmp}, \cs{pdf@primitive}, -% \cs{pdf@ifprimitive}. -% \end{Version} -% \begin{Version}{2009/09/23 v0.6} -% \item -% Macro \cs{pdf@isprimitive} added. -% \end{Version} -% \begin{Version}{2009/12/12 v0.7} -% \item -% Short info shortened. -% \end{Version} -% \begin{Version}{2010/03/01 v0.8} -% \item -% Required date for package \xpackage{ifluatex} updated. -% \end{Version} -% \begin{Version}{2010/04/01 v0.9} -% \item -% Use \cs{ifeof18} for defining \cs{pdf@shellescape} between -% \hologo{pdfTeX} 1.21a (inclusive) and 1.30.0 (exclusive). -% \end{Version} -% \begin{Version}{2010/11/04 v0.10} -% \item -% \cs{pdf@draftmode}, \cs{pdf@ifdraftmode} and -% \cs{pdf@setdraftmode} added. -% \end{Version} -% \begin{Version}{2010/11/11 v0.11} -% \item -% Missing \cs{RequirePackage} for package \xpackage{ifpdf} added. -% \end{Version} -% \begin{Version}{2011/01/30 v0.12} -% \item -% Already loaded package files are not input in \hologo{plainTeX}. -% \end{Version} -% \begin{Version}{2011/03/04 v0.13} -% \item -% Improved Lua function \texttt{shellescape} that also -% uses the result of \texttt{os.execute()} (thanks to Philipp Stephani). -% \end{Version} -% \begin{Version}{2011/04/10 v0.14} -% \item -% Version check of loaded module added. -% \item -% Patch for bug in \hologo{LuaTeX} between 0.40.6 and 0.65 that -% is fixed in revision 4096. -% \end{Version} -% \begin{Version}{2011/04/16 v0.15} -% \item -% \hologo{LuaTeX}: \cs{pdf@shellescape} is only supported -% for version 0.70.0 and higher due to a bug, \texttt{os.execute()} -% crashes in some circumstances. Fixed in \hologo{LuaTeX} -% beta-0.70.0, revision 4167. -% \end{Version} -% \begin{Version}{2011/04/22 v0.16} -% \item -% Previous fix was not working due to a wrong catcode of digit -% zero (due to easily support the old \cs{directlua0}). -% The version border is lowered to 0.68, because some -% beta-0.67.0 seems also to work. -% \end{Version} -% \begin{Version}{2011/06/29 v0.17} -% \item -% Documentation addition to \cs{pdf@shellescape}. -% \end{Version} -% \begin{Version}{2011/07/01 v0.18} -% \item -% Add Lua module loading in \cs{everyjob} for \hologo{iniTeX} -% (\hologo{LuaTeX} only). -% \end{Version} -% \begin{Version}{2011/07/28 v0.19} -% \item -% Missing space in an info message added (Martin M\"unch). -% \end{Version} -% \begin{Version}{2011/11/29 v0.20} -% \item -% \cs{pdf@resettimer} and \cs{pdf@elapsedtime} added -% (thanks Andy Thomas). -% \end{Version} -% \begin{Version}{2016/05/10 v0.21} -% \item -% local unpack added -% (thanks \'{E}lie Roux). -% \end{Version} -% \begin{Version}{2016/05/21 v0.22} -% \item -% adjust \cs{textbackslas}h usage in bib file for biber bug. -% \end{Version} -% \begin{Version}{2016/10/02 v0.23} -% \item -% add file.close to lua filehandles (github pull request). -% \end{Version} -% \begin{Version}{2017/01/29 v0.24} -% \item -% Avoid loading luatex-loader for current luatex. (Use -% pdftexcmds.lua not oberdiek.pdftexcmds.lua to simplify file -% search with standard require) -% \end{Version} -% \begin{Version}{2017/03/19 v0.25} -% \item -% New \cs{pdf@shellescape} for Lua\TeX, see github issue 20. -% \end{Version} -% \begin{Version}{2018/01/21 v0.26} -% \item -% use rb not r mode for file open github issue 34. -% \end{Version} -% \begin{Version}{2018/01/30 v0.27} -% \item -% \cs{pdf@mdfivesum} for \hologo{XeTeX} -% \end{Version} -% \begin{Version}{2018/09/07 v0.28} -% \item -% Fix catcode regime in luatex sprint for \cs{pdf@shellescape} GH issue 45 -% \end{Version} -% \begin{Version}{2018/09/10 v0.29} -% \item -% Actually do the fix described above in the code, not just document it. -% \end{Version} -% \begin{Version}{2019/07/25 v0.30} -% \item -% remove uses of module function, see PR70 -% \end{Version} -% \end{History} -% -% \PrintIndex -% -% \Finale -\endinput diff --git a/Master/texmf-dist/source/latex/oberdiek/picture.dtx b/Master/texmf-dist/source/latex/oberdiek/picture.dtx index 139ce8c2d6b..ceff2dea9a4 100644 --- a/Master/texmf-dist/source/latex/oberdiek/picture.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/picture.dtx @@ -629,14 +629,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/pmboxdraw.dtx b/Master/texmf-dist/source/latex/oberdiek/pmboxdraw.dtx index 113fe799bff..35c476f4572 100644 --- a/Master/texmf-dist/source/latex/oberdiek/pmboxdraw.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/pmboxdraw.dtx @@ -5416,14 +5416,6 @@ $ \kern.5\pmbd@C % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/protecteddef.dtx b/Master/texmf-dist/source/latex/oberdiek/protecteddef.dtx index 7c9dca3a37a..0b86d8b03f5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/protecteddef.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/protecteddef.dtx @@ -855,14 +855,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/refcount.dtx b/Master/texmf-dist/source/latex/oberdiek/refcount.dtx index dc6df6b5c71..7e242274f37 100644 --- a/Master/texmf-dist/source/latex/oberdiek/refcount.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/refcount.dtx @@ -1342,14 +1342,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/rerunfilecheck.dtx b/Master/texmf-dist/source/latex/oberdiek/rerunfilecheck.dtx index 94732005d41..2cb3cbd52b5 100644 --- a/Master/texmf-dist/source/latex/oberdiek/rerunfilecheck.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/rerunfilecheck.dtx @@ -874,14 +874,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/resizegather.dtx b/Master/texmf-dist/source/latex/oberdiek/resizegather.dtx index b335070f087..afc9808fb26 100644 --- a/Master/texmf-dist/source/latex/oberdiek/resizegather.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/resizegather.dtx @@ -826,14 +826,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/rotchiffre.dtx b/Master/texmf-dist/source/latex/oberdiek/rotchiffre.dtx index eab273787fc..747aee813ed 100644 --- a/Master/texmf-dist/source/latex/oberdiek/rotchiffre.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/rotchiffre.dtx @@ -1158,14 +1158,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/scrindex.dtx b/Master/texmf-dist/source/latex/oberdiek/scrindex.dtx index 8b754c2297c..ddda8f22c12 100644 --- a/Master/texmf-dist/source/latex/oberdiek/scrindex.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/scrindex.dtx @@ -570,14 +570,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/selinput.dtx b/Master/texmf-dist/source/latex/oberdiek/selinput.dtx index 36cbd1b5ded..2c536b648dd 100644 --- a/Master/texmf-dist/source/latex/oberdiek/selinput.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/selinput.dtx @@ -816,14 +816,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx b/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx index 6d85677a0af..760d8d5a004 100644 --- a/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx @@ -968,14 +968,6 @@ by/a/very_long_long_long_path.html}% % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/settobox.dtx b/Master/texmf-dist/source/latex/oberdiek/settobox.dtx index 59f07638aca..1ba8c60fb1f 100644 --- a/Master/texmf-dist/source/latex/oberdiek/settobox.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/settobox.dtx @@ -580,14 +580,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/soulutf8.dtx b/Master/texmf-dist/source/latex/oberdiek/soulutf8.dtx index a239f608a1d..fc97c5e7257 100644 --- a/Master/texmf-dist/source/latex/oberdiek/soulutf8.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/soulutf8.dtx @@ -1708,14 +1708,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/stackrel.dtx b/Master/texmf-dist/source/latex/oberdiek/stackrel.dtx index c04ba1f2e52..50119e54241 100644 --- a/Master/texmf-dist/source/latex/oberdiek/stackrel.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/stackrel.dtx @@ -338,14 +338,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/stampinclude.dtx b/Master/texmf-dist/source/latex/oberdiek/stampinclude.dtx index 62b3d2cf4fc..d20f2da6b15 100644 --- a/Master/texmf-dist/source/latex/oberdiek/stampinclude.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/stampinclude.dtx @@ -480,14 +480,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx b/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx index 7236faf7561..97205537518 100644 --- a/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx @@ -6604,14 +6604,6 @@ $ \fi % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/tabularht.dtx b/Master/texmf-dist/source/latex/oberdiek/tabularht.dtx index 559084a35f7..010fc42e692 100644 --- a/Master/texmf-dist/source/latex/oberdiek/tabularht.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/tabularht.dtx @@ -1025,14 +1025,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/tabularkv.dtx b/Master/texmf-dist/source/latex/oberdiek/tabularkv.dtx index 3c3fc3f48c4..d9a3335250a 100644 --- a/Master/texmf-dist/source/latex/oberdiek/tabularkv.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/tabularkv.dtx @@ -343,14 +343,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/telprint.dtx b/Master/texmf-dist/source/latex/oberdiek/telprint.dtx index 8d81cf81f1b..329a7b3dc23 100644 --- a/Master/texmf-dist/source/latex/oberdiek/telprint.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/telprint.dtx @@ -773,14 +773,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/thepdfnumber.dtx b/Master/texmf-dist/source/latex/oberdiek/thepdfnumber.dtx index 98b65bbccf6..2195b327459 100644 --- a/Master/texmf-dist/source/latex/oberdiek/thepdfnumber.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/thepdfnumber.dtx @@ -1432,14 +1432,6 @@ $ \else\ifnum`#2=46 % . % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/transparent.dtx b/Master/texmf-dist/source/latex/oberdiek/transparent.dtx index c9a4ca231f4..701e643a061 100644 --- a/Master/texmf-dist/source/latex/oberdiek/transparent.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/transparent.dtx @@ -455,14 +455,6 @@ Hello World % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/twoopt.dtx b/Master/texmf-dist/source/latex/oberdiek/twoopt.dtx index f63139d4a69..f4528af8120 100644 --- a/Master/texmf-dist/source/latex/oberdiek/twoopt.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/twoopt.dtx @@ -422,14 +422,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx b/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx index 1fd992554e3..d11090da70b 100644 --- a/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/uniquecounter.dtx @@ -848,14 +848,6 @@ and the derived files % \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} % diff --git a/Master/texmf-dist/source/latex/oberdiek/zref.dtx b/Master/texmf-dist/source/latex/oberdiek/zref.dtx index d8e7070cd2c..0a8e7f05051 100644 --- a/Master/texmf-dist/source/latex/oberdiek/zref.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/zref.dtx @@ -7,7 +7,7 @@ % Copyright (C) 2006-2012 by % Heiko Oberdiek <heiko.oberdiek at googlemail.com> % 2016 -% https://github.com/ho-tex/oberdiek/issueso +% https://github.com/ho-tex/oberdiek/issues % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -6423,14 +6423,6 @@ the height difference of the two baselines is % \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} % |