summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/fileinfo/myfilist.sty
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 /Master/texmf-dist/tex/latex/fileinfo/myfilist.sty
parent424ade50e036f3d865a1283f25173efa4e90bd37 (diff)
new latex package fileinfo (28nov10)
git-svn-id: svn://tug.org/texlive/trunk@20590 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/fileinfo/myfilist.sty')
-rw-r--r--Master/texmf-dist/tex/latex/fileinfo/myfilist.sty137
1 files changed, 137 insertions, 0 deletions
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