summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-11-28 23:51:04 +0000
committerKarl Berry <karl@freefriends.org>2010-11-28 23:51:04 +0000
commit41862aee3f93850e517e176a9c6879670e1ff68b (patch)
treeec8c17bb9e9111f46519e0d02ae44fff5aad7f50
parent424ade50e036f3d865a1283f25173efa4e90bd37 (diff)
new latex package fileinfo (28nov10)
git-svn-id: svn://tug.org/texlive/trunk@20590 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/CONTENTs.txt17
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/README39
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/README.txt39
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/docsrc/README.tex11
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/docsrc/makedoc.cfg41
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/docsrc/myfilist.tex134
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/docsrc/readprov.tex129
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/gather.tex8
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/myfilist.pdfbin0 -> 156733 bytes
-rw-r--r--Master/texmf-dist/doc/latex/fileinfo/readprov.pdfbin0 -> 155848 bytes
-rw-r--r--Master/texmf-dist/tex/latex/fileinfo/myfilist.sty137
-rw-r--r--Master/texmf-dist/tex/latex/fileinfo/readprov.sty193
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rw-r--r--Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/fileinfo.tlpsrc0
15 files changed, 750 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/fileinfo/CONTENTs.txt b/Master/texmf-dist/doc/latex/fileinfo/CONTENTs.txt
new file mode 100644
index 00000000000..602be4ff8fd
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/CONTENTs.txt
@@ -0,0 +1,17 @@
+
+ *File List*
+readprov.sty 2010/11/27 v0.3 file infos without loading (UL)
+myfilist.sty 2010/11/27 v0.3 \listfiles -- mine only (UL)
+readprov.tex 2010/11/27 documenting readprov.sty
+myfilist.tex 2010/11/27 documenting myfilist.sty
+ makedoc.cfg 2010/11/26 documentation settings
+ README.tex 2010/11/27 make README.pdf
+fifinddo.sty 2010/11/25 v0.42 filtering TeX(t) files by TeX (UL)
+ makedoc.sty 2010/03/30 v0.4 TeX input from *.sty (UL)
+niceverb.sty 2010/11/09 v0.41a minimize doc markup (UL)
+ gather.tex 2010/11/27 collect file infos
+ ***********
+
+ List made at 2010/11/27, 21:25
+ from script file gather.tex
+
diff --git a/Master/texmf-dist/doc/latex/fileinfo/README b/Master/texmf-dist/doc/latex/fileinfo/README
new file mode 100644
index 00000000000..04c9eff3fa8
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/README
@@ -0,0 +1,39 @@
+ == README for the `fileinfo' bundle ==
+
+This bundle has packages `readprov.sty' and `myfilist.sty'.
+
+`readprov.sty'
+
+ renders \GetFileInfo from LaTeX's `doc.sty' (without the
+ latter being required), as well as new robust (expandable)
+ variants of it, usable with files that are not really
+ loaded (they are quit when their file info is found,
+ cf. the `zwgetfdate' package). So, e.g., you can describe
+ packages that are incompatible with each other or with
+ packages that your document uses. You even can report about
+ various class files.
+
+ Such packages then also appear with LaTeX's \listfiles.
+ You may consider this a bug ...
+
+`myfilist.sty'
+
+ makes this "bug" a feature. In a "TeX script," you can choose
+ some files and their order. Their names can be output into a
+ plain text file with their dates, version ids, and one-line
+ descriptions, formatted in the way \listfiles does it after
+ a LaTeX run. This way you can get an overview of, e.g., some
+ package bundle ...
+
+ (So this is quite different from `dateiliste'.)
+
+`readprov' and `myfilist' are licensed according to the LaTeX
+Project Public License (see files; NO WARRANTY!). They are
+author-maintained.
+
+The two packages are described in more detail in `readprov.pdf'
+and `myfilist.pdf'. These documentation files also serve to
+demonstrate some .txt->.tex functionality of the `nicetext' bundle.
+
+2010/11/28, U.L., http://contact-ednotes.sty.de.vu
+
diff --git a/Master/texmf-dist/doc/latex/fileinfo/README.txt b/Master/texmf-dist/doc/latex/fileinfo/README.txt
new file mode 100644
index 00000000000..04c9eff3fa8
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/README.txt
@@ -0,0 +1,39 @@
+ == README for the `fileinfo' bundle ==
+
+This bundle has packages `readprov.sty' and `myfilist.sty'.
+
+`readprov.sty'
+
+ renders \GetFileInfo from LaTeX's `doc.sty' (without the
+ latter being required), as well as new robust (expandable)
+ variants of it, usable with files that are not really
+ loaded (they are quit when their file info is found,
+ cf. the `zwgetfdate' package). So, e.g., you can describe
+ packages that are incompatible with each other or with
+ packages that your document uses. You even can report about
+ various class files.
+
+ Such packages then also appear with LaTeX's \listfiles.
+ You may consider this a bug ...
+
+`myfilist.sty'
+
+ makes this "bug" a feature. In a "TeX script," you can choose
+ some files and their order. Their names can be output into a
+ plain text file with their dates, version ids, and one-line
+ descriptions, formatted in the way \listfiles does it after
+ a LaTeX run. This way you can get an overview of, e.g., some
+ package bundle ...
+
+ (So this is quite different from `dateiliste'.)
+
+`readprov' and `myfilist' are licensed according to the LaTeX
+Project Public License (see files; NO WARRANTY!). They are
+author-maintained.
+
+The two packages are described in more detail in `readprov.pdf'
+and `myfilist.pdf'. These documentation files also serve to
+demonstrate some .txt->.tex functionality of the `nicetext' bundle.
+
+2010/11/28, U.L., http://contact-ednotes.sty.de.vu
+
diff --git a/Master/texmf-dist/doc/latex/fileinfo/docsrc/README.tex b/Master/texmf-dist/doc/latex/fileinfo/docsrc/README.tex
new file mode 100644
index 00000000000..ce26748edb5
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/docsrc/README.tex
@@ -0,0 +1,11 @@
+\ProvidesFile{README.tex}[2010/11/27 make README.pdf]
+\listfiles
+
+\documentclass[12pt]{article}
+\usepackage{verbatim}
+\pagestyle{empty}
+\begin{document}
+\vspace*{-2\baselineskip}
+\enlargethispage{1\baselineskip}
+\verbatiminput{README.txt}
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/fileinfo/docsrc/makedoc.cfg b/Master/texmf-dist/doc/latex/fileinfo/docsrc/makedoc.cfg
new file mode 100644
index 00000000000..0dfda857b69
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/docsrc/makedoc.cfg
@@ -0,0 +1,41 @@
+\ProvidesFile{makedoc.cfg}[2010/11/26 documentation settings]
+
+\author{Uwe L\"uck\thanks{\url{http://contact-ednotes.sty.de.vu}}}
+% \author{Uwe L\"uck---{\tt http://contact-ednotes.sty.de.vu}}
+
+%% hyperref:
+\RequirePackage{ifpdf}
+\usepackage[%
+ \ifpdf
+ bookmarksnumbered,
+% bookmarks=false,
+% bookmarksopen,
+% pdfpagemode=UseNone,
+% pdfstartpage=10,
+% pdfstartview=FitH,
+ citebordercolor={.6 1 .6},
+ filebordercolor={1 .6 1},
+ linkbordercolor={1 .9 .7},
+% urlbodercolor={1 0 0},
+ \else
+ draft
+ \fi
+]{hyperref}
+
+%% struts for wide border colors:
+\makeatletter
+ \let\@strut@tocline\@dottedtocline
+ \renewcommand*{\@dottedtocline}[4]{%
+ \@strut@tocline{#1}{#2}{#3}{\mathstrut#4\mathstrut}}
+ \let\@strut@section\l@section
+ \renewcommand*{\l@section}[1]{%
+ \@strut@section{\mathstrut#1\mathstrut}}
+\makeatother
+
+\RequirePackage{niceverb}[2010/03/20]
+
+\errorcontextlines=4
+\pagestyle{headings}
+
+\endinput
+
diff --git a/Master/texmf-dist/doc/latex/fileinfo/docsrc/myfilist.tex b/Master/texmf-dist/doc/latex/fileinfo/docsrc/myfilist.tex
new file mode 100644
index 00000000000..a7498f2791a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/docsrc/myfilist.tex
@@ -0,0 +1,134 @@
+\ProvidesFile{myfilist.tex}[2010/11/27 documenting myfilist.sty]
+\title{\textsf{myfilist}\\---\\
+ List Infos on just the Files\\You Want to Know About%
+ \GetFileInfo{myfilist.sty}\thanks{%
+ This file describes version
+ \textcolor{blue}{\fileversion} % \textbf{\fileversion}
+ of \textsf{\filename} as of \filedate.}}
+\listfiles
+
+%% Preprocessing:
+\RequirePackage{makedoc}
+\CopyFDconditionFromTo{PScomment}{comment}
+% \MainDocParser{\ProcessInputWith{PScomment}}
+%% Replacements:
+\SetPatternCodes{\MakeOther\\\MakeOther\ } %% CARE!
+\MakeExpandableAllReplacer{LaTeX2e}{LaTeX2e }{\LaTeXe }{LEAVE}
+% \MakeExpandableAllReplacer{TeX}{\TeX }{\TeX{} }{LEAVE}
+\PrependExpandableAllReplacer{log}{ .log}{ `.log'}
+\PrependExpandableAllReplacer{tex}{ .tex}{ `.tex'}
+\PrependExpandableAllReplacer{cls}{ .cls}{ `.cls'}
+\PrependExpandableAllReplacer{sty}{ .sty}{ `.sty'}
+\PrependExpandableAllReplacer{NOTE}{NOTE: }{\textbf{Note: }}
+\SetPatternCodes{\MakeOther\\} %% less care needed
+\PrependExpandableAllReplacer{dots}{...}{$\dots$}
+\PrependExpandableAllReplacer{provf}{\ProvidesFile}{`\ProvidesFile'}
+\PrependExpandableAllReplacer{loads}{"loads"}{``loads''}
+\PrependExpandableAllReplacer{USAGE}{USAGE:}{\section{Usage}}
+\PrependExpandableAllReplacer{IMPLEM}
+ {IMPLEMENTATION:}{\section{Implementation}}
+\PrependExpandableAllReplacer{gather}
+ {gather.tex}{`gather.tex'}
+\PrependExpandableAllReplacer{readprov.pdf}
+ {readprov.pdf}{`readprov.pdf'}
+\PrependExpandableAllReplacer{readprov-} %% 2010/11/26
+ {readprov-.sty}{readprov.sty}
+\PrependExpandableAllReplacer{readprov}
+ {readprov.sty}{'readprov.sty'}
+\PrependExpandableAllReplacer{myfilist-} %% 2010/11/26
+ {myfilist-.sty}{myfilist.sty}
+\PrependExpandableAllReplacer{myfilist}
+ {myfilist.sty}{'myfilist.sty'}
+\PrependExpandableAllReplacer{rungather}[\MakeOther\ ]%
+{run gather.tex}{\emph{run} gather.tex}
+ %% <- TODO \PrependStandardEnhancement...
+\SetCorrectHookJobLast
+\ResetPatternCodes
+
+\MainDocParser{\ProcessInputWith{PScomment}}
+\LaTeXresultFile{myfilist.doc}
+\MakeCloseDoc{myfilist.sty}
+ %% <- we must NOT read mdoccorr.cfg here!
+ %% (or put the above setup into a new one!) ->
+% \MakeJobDoc{0}{\ProcessInputWith{PScomment}}
+
+%% Typesetting:
+\documentclass{article}
+\usepackage{color} %% for highlighting package version!? TODO
+\usepackage{readprov}
+\ReadPackageInfos{myfilist}
+\input{makedoc.cfg}
+\usepackage{wiki}
+%% TeX markup inserted by the txt-to-TeX function must be
+%% declared here for using 'niceverb''s ``auto mode".
+\AddToNoVerbList{\LaTeXe\dots\textbf\emph}
+\begingroup \MakeActive\"
+ \gdef\fineDQ{``\begingroup
+ \let\do\MakeOther \dospecials \tt
+ \def"{\endgroup''}}%
+\endgroup
+
+\pagestyle{headings}
+\usepackage{parskip}
+
+\begin{document}
+
+\maketitle
+
+\begin{abstract}\sloppy\noindent
+ 'myfilist' addresses lazy file versions management,
+ when you move your package or chapter files through
+ various computers and various directories and after a while
+ wonder where the most recent versions are.
+
+ Like Paul Ebermann's
+ 'dateiliste',\footnote{\url{http://ctan.org/pkg/dateiliste}}
+ 'myfilist' varies \LaTeX's `\listfiles'
+ for listing file (especially version) informations.
+ Differences to 'dateiliste' and \LaTeX\ are:
+ \begin{enumerate}
+ \item You choose the files (and their order) to be listed;
+ \item indeed: this has very little to do with files used in
+ typesetting some document;
+ \item output is just screen, `.log', or a `.txt'-type file
+ that you choose.
+ \end{enumerate}
+
+ The code of this package is two years old; presenting it \emph{now} is
+ a kind of study on improving
+ 'nicetext''s\footnote{\url{http://ctan.org/pkg/nicetext}}
+ `txt'-to-\LaTeX\ processing after 'nicetext v0.4'
+ (aim was to do this without modifying the documented file,
+ yet I did not obey this ruly strictly here).
+ The new idea is adding 'wiki.sty''s ``environments''
+ feature to 'makedoc' and 'niceverb''s ``auto mode"
+ in order to interprete `txt' comment indents in the package file,
+ while 'wiki.sty''s \emph{font} switching
+ still is not compatible with 'niceverb''s. Easy script
+ commands for achieving this are still missing (sorry; see the code
+ in 'myfilist.tex' that achieved the present formatting.)
+\end{abstract}
+
+\pagebreak
+\tableofcontents
+
+\section{Installing}
+The file '\jobname.sty' is provided ready, installation only requires
+putting it somewhere where \TeX\ finds it
+(which may need updating the filename data
+ base).\footnote{\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf}}
+\section{File Info Header}
+
+\sloppy
+\wikiEnvironments %% TODO fails with "or" 2010/03/31
+\MakeActiveLetHere\"\fineDQ %% fails with "loads"
+\AutoCmdInput{myfilist.doc}
+\nowikiEnvironments
+
+\section{Example}
+`gather.tex' for the present bundle has been as follows
+ %% TODO 2010/11/27:
+(added development versions of 'fifinddo.sty' etc.):
+\verbatiminput{gather} %% 2010/11/27
+
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/fileinfo/docsrc/readprov.tex b/Master/texmf-dist/doc/latex/fileinfo/docsrc/readprov.tex
new file mode 100644
index 00000000000..8d8253d422a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/docsrc/readprov.tex
@@ -0,0 +1,129 @@
+\ProvidesFile{readprov.tex}[2010/11/27 documenting readprov.sty]
+
+\title{\textsf{readprov}\\---\\Get File Info without Loading%
+% \GetFileInfo{readprov.sty}%
+% \ReadFileInfos{readprov.sty}% %% \NeedsTeXFormat
+ \thanks{%
+ This file describes
+% \protect\GetFileInfo{readprov.sty}% %% FAILS!
+ version
+% \textbf{\fileversion} of \textsf{\filename} as of \filedate.}%
+ \textcolor{blue}{\UseVersionOf{readprov.sty}}
+ of \textsf{readprov.sty} as of \UseDateOf{readprov.sty}.}%
+} %% <- TODO macro in makedoc.cfg
+\listfiles
+
+%% Preprocessing:
+\RequirePackage{makedoc}
+\CopyFDconditionFromTo{PScomment}{comment}
+\MainDocParser{\ProcessInputWith{PScomment}}
+%% Replacements:
+\StartPrependingChain
+\SetPatternCodes{\MakeOther\\\MakeOther\ } %% CARE!
+% \PrependExpandableAllReplacer{tex}{ .tex}{ `.tex'}
+\PrependExpandableAllReplacer{sty}{ .sty}{ `.sty'}
+\PrependExpandableAllReplacer{cls}{.cls}{`.cls'}
+\PrependExpandableAllReplacer{etc}{etc. }{etc.\ }
+% \PrependExpandableAllReplacer{etc...}{etc. ...}{etc.\ $\dots$}
+\SetPatternCodes{\MakeOther\\} %% less care needed
+\PrependExpandableAllReplacer{LaTeX}{LaTeX}{\LaTeX}
+\PrependExpandableAllReplacer{xpbl}{expandable}{\emph{expandable}}
+\PrependExpandableAllReplacer{rob}{robust}{\emph{robust}}
+\PrependExpandableAllReplacer{frag}{fragile}{\emph{fragile}}
+\PrependExpandableAllReplacer{doc}{doc.sty}{'doc.sty'}
+\PrependExpandableAllReplacer{myfilist}{myfilist.sty}{'myfilist.sty'}
+\PrependExpandableAllReplacer{readprov}{readprov.sty}{'readprov.sty'}
+\PrependExpandableAllReplacer{provf}{\ProvidesFile}{`\ProvidesFile'}
+\PrependExpandableAllReplacer{NOTE}{NOTE:}{\paragraph{Note:}}
+% \PrependExpandableAllReplacer{Note}{Note:}{\emph{Note:} }
+\PrependExpandableAllReplacer{prov}{provided}{\emph{provided}}
+\PrependExpandableAllReplacer{*fail*}{*fail*}{\emph{fail}}
+\PrependExpandableAllReplacer{INSTALL}{INSTALL:}{\section{Installation}}
+\PrependExpandableAllReplacer{USAGE}{USAGE:}{\section{Usage}}
+\PrependExpandableAllReplacer{IMPLEM}
+ {IMPLEMENTATION:}{\section{Implementation}}
+\PrependExpandableAllReplacer{LOAD}{LOADING:}
+ {\paragraph{Loading:}}
+\PrependExpandableAllReplacer{INS}{INSERTING:}
+ {\paragraph{Inserting:}}
+\PrependExpandableAllReplacer{READ}{EXTRACTING:}
+ {\paragraph{Extracting:}}
+\PrependExpandableAllReplacer{TODO}{TODO}
+ {\textcolor{blue}{TODO}}
+\SetPatternCodes{\MakeOther\\\MakeOther\$}
+\PrependExpandableAllReplacer{dots}{...}{$\dots$}
+\SetCorrectHookJobLast
+\ResetPatternCodes
+
+\LaTeXresultFile{readprov.doc}
+\MakeCloseDoc{readprov.sty}
+ %% <- we must NOT read mdoccorr.cfg here!
+ %% (or put the above setup into a new one!) ->
+% \MakeJobDoc{0}{\ProcessInputWith{PScomment}}
+
+%% Typesetting:
+\documentclass{article}
+\usepackage{color} %% for highlighting package version!? TODO
+\input{makedoc.cfg}
+\usepackage{readprov}
+% \ReadFileInfos{report.cls} %% WORKS! 2010/11/27
+\usepackage{wiki}
+\begingroup \MakeActive\"
+ \gdef\fineDQ{``\begingroup
+ \let\do\MakeOther \dospecials \tt
+ \def"{\endgroup''}}%
+\endgroup
+% \makeatletter \MakeLetter\_
+
+\pagestyle{headings}
+% \usepackage{parskip}
+
+\begin{document}
+
+\maketitle
+
+\begin{abstract}\sloppy\noindent
+'readprov.sty'
+ renders `\GetFileInfo' from \LaTeX's
+ 'doc.sty'\footnote{\url{http://ctan.org/pkg/doc}}
+ (without the latter being required)
+ and new robust (expandable) variants of it,
+ usable with files that are not really loaded
+ (they are quit when their file info is found, cf. the 'zwgetfdate'
+ package\footnote{\url{httpref://ctan.org/pkg/zwgetfdate}}).
+ So, e.g., you can describe packages that are incompatible
+ with each other or with packages that your document uses.
+ You even can report about various class files.
+
+ Such packages then also appear with \LaTeX's `\listfiles'.
+ You may consider this a bug $\dots$
+'myfilist.sty'
+ makes it a feature (see `myfilist.pdf').
+\end{abstract}
+
+% \pagebreak
+\tableofcontents
+
+\section{Installing}
+The file '\jobname.sty' is provided ready, installation only requires
+putting it somewhere where \TeX\ finds it
+(which may need updating the filename data
+ base).\footnote{\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf}}
+
+\section{File Info Header}
+
+\sloppy
+\makeatletter
+ \newcommand*{\docnewline}{\leavevmode\@normalcr[\topsep]}
+ %% <- \leavevmode for use with \paragraph.
+ %% sometimes needs to be preceded by a space.
+\makeatother
+\AddToNoVerbList{%
+ \LaTeX\emph\dots\quad\paragraph\texttt\textcolor\\}
+\MakeActiveLetHere\"\fineDQ
+\let\\\docnewline
+%% CARE! from next line on, code line indents are special!
+\wikiEnvironments %% TODO fails with "or" 2010/03/31
+\AutoCmdInput{readprov.doc}
+
+\end{document}
diff --git a/Master/texmf-dist/doc/latex/fileinfo/gather.tex b/Master/texmf-dist/doc/latex/fileinfo/gather.tex
new file mode 100644
index 00000000000..4428ece92da
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/gather.tex
@@ -0,0 +1,8 @@
+\RequirePackage{myfilist}
+\ProvidesFile{gather.tex}[2010/11/27 collect file infos]
+\EmptyFileList[readprov.sty,myfilist.sty]
+\ReadPackageInfos{readprov,myfilist}
+\ReadFileInfos{readprov.tex,myfilist.tex,makedoc.cfg,README.tex}
+\ReadPackageInfos{fifinddo,makedoc,niceverb}
+\ReadFileInfos{gather}
+\ListInfos[CONTENTs.txt]
diff --git a/Master/texmf-dist/doc/latex/fileinfo/myfilist.pdf b/Master/texmf-dist/doc/latex/fileinfo/myfilist.pdf
new file mode 100644
index 00000000000..0324be07362
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/myfilist.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/fileinfo/readprov.pdf b/Master/texmf-dist/doc/latex/fileinfo/readprov.pdf
new file mode 100644
index 00000000000..9c71e89ae5a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/fileinfo/readprov.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/fileinfo/myfilist.sty b/Master/texmf-dist/tex/latex/fileinfo/myfilist.sty
new file mode 100644
index 00000000000..2a8a976fa97
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/fileinfo/myfilist.sty
@@ -0,0 +1,137 @@
+\def \filename {myfilist.sty} %% macro package for LaTeX,
+
+%% modifies \listfiles to choose files to be listed and
+%% list them in a chosen file.
+
+\def \fileversion {0.3} \def \filedate {2010/11/27}
+
+%% copyright (C) 2008, 2010 Uwe Lueck,
+%% http://www.contact-ednotes.sty.de.vu
+%% -- author-maintained in the sense of LPPL below.
+%%
+%% This file can be redistributed and/or modified under
+%% the terms of the LaTeX Project Public License; either
+%% version 1.3a of the License, or any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% We did our best to help you, but there is NO WARRANTY.
+%%
+%% Please report bugs, problems, and suggestions via
+%%
+%% http://www.contact-ednotes.sty.de.vu
+%%
+% USAGE:
+%
+% Write a script file like gather.tex which you should have received
+% together with myfilist.sty. We use LaTeX2e (required!), yet (in
+% general) not for typesetting a document, therefore the script file
+% needn't contain \documentclass. myfilist.sty is loaded by
+%
+% \RequirePackage{myfilist}
+%
+% instead of \usepackage{myfilist}. Usually you don't want to have
+% myfilist.sty in the list, so type
+%
+% \EmptyFileList
+%
+% next; or type it after some additional \RequirePackage... for
+% packages you want to use but not list.
+%
+% Next list the names of the files
+% whose informations you want to get as arguments of
+%
+% \ReadFileInfos or \ReadPackageInfos or \ReadClassInfo
+%
+% With the latter two, you can omit ".sty" or ".cls" as with
+% \usepackage and \documentclass. With the first one, the file name
+% extension ".tex" may be omitted. The two first commands accept lists
+% with commas as separators almost like with \usepackage (currently we
+% must use "%" to hide a line break in the script, and there must be
+% no spaces in the list).---For more details on these commands,
+% please see readprov.pdf.
+%
+% The list of files is actually printed in the transcript .log
+% and on screen on
+%
+% \ListInfos
+%
+% The list can additionally be written into a plain text file,
+%
+% \ListInfos[filelist.txt]
+%
+% as an example; i.e., you can use the brackets to tell which file is
+% to contain your list of files. The file informations appear in the
+% order of their names in your script file.
+%
+% \ListInfos concludes, ends the job, anything following in the
+% script file will be ignored.---All of this requires %% 2010/04/02
+% that you run gather.tex or your other script file, about as
+%
+% latex gather
+%
+% To list files that were loaded earlier in a different order,
+% list them in an \emph{optional argument} of \EmptyFileList, e.g.,
+% % trick avoiding main replacement 2010/11/26:
+%
+% \EmptyFileList[myfilist-.sty,readprov-.sty]
+%
+% NOTE: myfilist.sty (in its present state) is unable to list files
+% that don't contain \ProvidesPackage, \ProvidesClass, or
+% \ProvidesFile. myfilist.sty "loads" files to extract version
+% informations, but quits them as soon as it has found one of these
+% LaTeX2e commands.
+%
+% IMPLEMENTATION:
+
+\NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc.
+\ProvidesPackage{myfilist}
+ [\filedate\space v\fileversion \space
+ \string\listfiles\space-- mine only (UL)]
+
+% |\ReadFileInfos|, |\ReadPackageInfos|, and |\ReadClassInfo|
+% are implemented in readprov.sty:
+\RequirePackage{readprov}[2010/11/26]
+
+% |\EmptyFileList[<read-again-files>]| %% opt. arg. 2010/11/26
+\newcommand{\EmptyFileList}[1][]{%
+ \let\@filelist\@gobble
+ \@for\@tempa:=#1\do{%
+ \global \expandafter \let \csname ver@\@tempa\endcsname \relax}}
+% |\ListInfos[<external output file>]|
+\newcommand*{\ListInfos}[1][]{%
+ \ifx$#1$\@dofilelist\else
+ \newwrite\file@of@filelist
+ \immediate\openout\file@of@filelist=#1\relax
+ \def\typeout##1{%
+ \read@@typeout{##1}%
+ \immediate\write\file@of@filelist{##1}}%
+ \@dofilelist
+ %% made at:
+ \@tempcnta\time \@tempcntb\@tempcnta
+ \divide\@tempcnta 60 \count@\@tempcnta
+ \multiply\count@ 60 \advance\@tempcntb -\count@
+ \typeout{ List made at
+ \the\year/\two@digits{\the\month}/\two@digits{\the\day},
+ \two@digits{\the\@tempcnta}:\two@digits{\the\@tempcntb}^^J
+ from script file \jobname.tex^^J}%% TODO ".tex"!? 2008/03/19
+ \immediate\closeout\file@of@filelist
+ \fi
+ \stop}
+ %% <- TODO how to suppress first empty line? 2008/03/16
+ %% -> TODO more general style of output file 2008/03/19
+\let\read@@typeout\typeout
+\listfiles
+
+\endinput
+
+%% VERSION HISTORY
+v0.1 2008/03/19 created file "readprov.sty"
+ 2008/03/23 smart file name separation, \ifx$ for \ifcat$
+ 2008/05/22 typo ist -> it
+v0.2 2010/04/03 renamed "myfiles.sty";
+ broke long lines etc. for doc
+SENT TO CTAN -- declined
+v0.2a 2010/04/08 undoubled \NeedsTeXFormat, copyright updated
+v0.3 2010/11/26 split off from "myfiles.sty", opt. arg. for
+ \EmptyFileList, doc. reworked
+ 2010/11/27 some USAGE clarifications
diff --git a/Master/texmf-dist/tex/latex/fileinfo/readprov.sty b/Master/texmf-dist/tex/latex/fileinfo/readprov.sty
new file mode 100644
index 00000000000..662ce7e13ef
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/fileinfo/readprov.sty
@@ -0,0 +1,193 @@
+%% readprov.sty
+%% --
+%% get file infos without reading the entire file
+
+\def \fileversion {0.3} \def \filedate {2010/11/27}
+
+%% copyright (C) 2008, 2010 Uwe Lueck,
+%% http://www.contact-ednotes.sty.de.vu
+%% -- author-maintained in the sense of LPPL below.
+%%
+%% This file can be redistributed and/or modified under
+%% the terms of the LaTeX Project Public License; either
+%% version 1.3c of the License, or any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% We did our best to help you, but there is NO WARRANTY.
+%%
+%% Please report bugs, problems, and suggestions via
+%%
+%% http://www.contact-ednotes.sty.de.vu
+%%
+% USAGE:
+%
+% LOADING: The functionality of readprov.sty is activated by
+% \usepackage{readprov}
+% or
+% \RequirePackage{readprov}
+% (this one may precede \documentclass) in the document preamble.
+% 'readprov' does not have any package options.
+%
+% INSERTING: Recall that \\
+% %
+% |\GetFileInfo{<filename>}| (including extension)\\
+% %
+% from LaTeX's doc.sty sets macro \filename to <filename>
+% (including extension) and furthermore sets macros
+% \filedate, \fileversion, and \fileinfo
+% to the \emph{date}, \emph{version}, and further \emph{info}
+% associated with <filename> earlier ``some way'' ...
+% \ This means that file <filename> has been \input before
+% and identified itself by \ProvidesFile, \ProvidesPackage,
+% or \ProvidesClass.
+%
+% 'readprov' simply copies \GetFileInfo from doc.sty
+% so the same functionality is provided independently of
+% other doc.sty features---without loading LaTeX's doc.sty.
+%
+% % new 2010/11/27:
+% Unfortunately, \GetFileInfo is fragile, it is especially
+% unhelpful for referring to \emph{two} packages in the same
+% \thanks footnote. So we introduce (do compare 'zwgetfdate'!)\\
+% |\UseDateOf{<filename>}|\quad |\UseVersionOf{<filename>}|\quad
+% (with extension)\\
+% These commands are robust (even expandable). Instead of
+% $$\GetFileInfo{<filename>}\fileversion{}\texttt{ as of }\filedate$$
+% you can type
+% $$\UseFileVersionOf{<filename>}\texttt{ as of }\UseFileDateOf{<filename>}$$
+%
+% EXTRACTING: \GetFileInfo, \UseDateOf, and \UseVersionOf need the data
+% from \ProvidesPackage, \ProvidesClass, or \ProvidesFile.
+% Instead of getting them by \usepackage, \documentclass, or \input,
+% they can be obtained with the following commands.
+% \\
+% |\ReadFileInfos{<list-of-filenames>}| (with extensions)\\
+% applies to all kinds of files---provided such a file contains
+% such a \Provide... command.
+% \\
+% |\ReadPackageInfos{<list-of-filenames>}| (without extensions)\\
+% searches .sty files from <list-of-filenames> for \ProvidesPackage.
+%
+% The two former commands accept lists with commas as separators
+% almost like with \usepackage (currently we must use "%"
+% to hide a line break in the script,
+% and there must be no spaces in the list).
+% \\
+% |\ReadClassInfo{<filename>}| (without extension)\\
+% searches <filename>.cls for \ProvidesClass.
+% At present [TODO] it can be used once only,
+% and only for use with myfilist.sty.
+% But you can use \ReadFileInfos for reporting on \emph{various}
+% classes, even in a document!
+%
+% NOTE: (i)~So far, [TODO] the \Read... commands explained before
+% do not work after `\begin{document}'
+% (with rare exceptions, \NeedTeXFormat is one
+% obstacle---may be 'zwgetfdate' really is better).
+% (ii)~Those \Read... commands execute \GetFileInfo
+% (with the final file from the list). So you may be lucky to get
+% the intended \filename, \filedate, \fileversion, and \fileinfo
+% without using \GetFileInfo. The chance is the better the
+% later the \Read... command is used, best right before
+% `\begin{document}'. Even then it may *fail*---when the latter
+% command loads a package redefining \filedate etc. ...
+%
+% IMPLEMENTATION:
+
+\NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc.
+\ProvidesPackage{readprov}
+ [\filedate\space v\fileversion \space
+ file infos without loading (UL)]
+% INSERTING: \\
+% |\GetFileInfo{<filename>}| (with extension)\\ % \ %
+% just was stolen from Standard LaTeX's doc.sty
+% (before I varied it).
+% It is fragile.
+\def\GetFileInfo#1{%
+ \def\filename{#1}%
+ \def\@tempb##1 ##2 ##3\relax##4\relax{%
+ \def\filedate{##1}%
+ \def\fileversion{##2}%
+ \def\fileinfo{##3}}%
+% Here was:
+% \edef\@tempa{\csname ver@#1\endcsname}%
+% \expandafter\@tempb\@tempa\relax? ? \relax\relax}
+% We can do it a little more elegant with the internals
+% (that vary the original \GetFileInfo)
+% for our new \UseDateOf and \UseVersionOf:
+ \read@file@info\@tempb{#1}}
+% (Will be overwritten without warning
+% when doc.sty is loaded afterwards.)
+\newcommand*{\read@file@info}[2]{% new 2010/11/27
+ \expandafter \expandafter \expandafter
+ #1\csname ver@#2\endcsname \relax? ? \relax\relax}
+% |\UseDateof{<filename>}| is robust (expandable):
+\newcommand*{\UseDateOf}{\read@file@info\read@file@date}
+% The internal reading commands vary `\@tempb'
+% from the original \GetFileInfo:
+\def\read@file@date #1 #2\relax#3\relax{#1}
+% |\UseVersionOf{<filename>}| is robust (expandable) as well:
+\newcommand*{\UseVersionOf}{\read@file@info\read@file@version}
+\def\read@file@version#1 #2 #3\relax#4\relax{#2}
+% EXTRACTING: \\
+% |\ReadPackageInfos{<list-of-filenames>}| without extensions:
+\newcommand*{\ReadPackageInfos}{%
+ \read@package@infos\RequirePackage{sty}}
+% `\@pkgextension' and `\@clsextension' are bad
+% for using `\filename' in the document (`\@onlypreamble').
+% \\
+% |\ReadClassInfo{<filename>}| without extension:
+\newcommand*{\ReadClassInfo}{%
+ \read@package@infos\LoadClass{cls}}
+\newcommand*{\read@package@infos}[3]{%
+ %% #1 \Req.../Load..., #2 extension, #3 name list
+ \begingroup %% 2010/11/26
+ \let\@pr@videpackage\read@pr@videpackage
+ #1{#3}%
+ \endgroup \GetFileInfo{#3.#2}% %% 2010/11/26
+}
+ %% <- TODO more classes 2008/03/16
+\def\read@pr@videpackage[#1]{%
+ \expandafter\xdef\csname ver@\@currname.\@currext\endcsname{#1}%
+ \ifx\@currext\@clsextension
+ \typeout{Document Class: \@gtempa\space#1}%
+ \else
+ \wlog{Package: \@gtempa\space#1}%
+ \fi
+ \endinput}%
+ %% <- TODO \let\read@@... and just add \endinput 2008/03/19
+% |\ReadFileInfos{<list-of-filenames>}| with extensions:
+\newcommand*{\ReadFileInfos}[1]{%
+ \begingroup
+ \def\@providesfile##1[##2]{%
+ %% <- cf. second/final LaTeX def. 2008/03/19
+ \wlog{File: ##1 ##2}%
+ \expandafter\xdef\csname ver@##1\endcsname{##2}%
+ \endgroup \endinput}%
+ %% <- TODO \let\read@@... and just add
+ %% \endgroup\endinput 2008/03/19
+ %% 2008/03/19:
+ \def\ProvidesClass ##1{\ProvidesFile{##1.\@clsextension}}%
+ \def\ProvidesPackage##1{\ProvidesFile{##1.\@pkgextension}}%
+ \@for\@tempa:=#1\do{%
+ \edef\@tempa{\expandafter\read@no@spaces\@tempa\@nil}%
+ \input{\@tempa}%
+ \global\let\@gtempa\@tempa} %% 2010/11/26
+ \endgroup
+ \GetFileInfo\@gtempa %% 2010/11/26
+}
+\def\read@no@spaces#1#2\@nil{#1#2} %% 2008/03/23
+\endinput
+
+%% VERSION HISTORY
+v0.1 2008/03/19 created file "readprov.sty"
+ 2008/03/23 smart file name separation, \ifx$ for \ifcat$
+ 2008/05/22 typo ist -> it
+v0.2 2010/04/03 renamed "myfiles.sty";
+ broke long lines etc. for doc
+v0.3 2010/11/25 split off from former "myfiles.sty",
+ added \GetFileInfo
+ 2010/11/26 automatic \GetFileInfo
+ 2010/11/27 new/real documentation; more \newcommand*s;
+ \GetFileInfo redefined, \Use...;
+ \docnewline -> \\; NOTE etc.
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index 547546a38ff..2ee66d043af 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -134,7 +134,7 @@ my @TLP_working = qw(
faktor fancybox fancyhdr fancynum fancypar fancyref fancytooltips fancyvrb
FAQ-en fbs featpost fenixpar
feyn feynmf fge fig4latex figbas figbib figflow figsize
- filecontents filehook findhyph fink first-latex-doc
+ filecontents filehook fileinfo findhyph fink first-latex-doc
fix2col fixfoot fixme fixpdfmag
fjodor
flabels flacards flagderiv flashcards flashmovie flippdf float floatrow
diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
index b6f4588edba..b30a573a29c 100644
--- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
@@ -223,6 +223,7 @@ depend fancytooltips
depend figsize
depend filecontents
depend filehook
+depend fileinfo
depend fink
depend fixfoot
depend fixme
diff --git a/Master/tlpkg/tlpsrc/fileinfo.tlpsrc b/Master/tlpkg/tlpsrc/fileinfo.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/fileinfo.tlpsrc