\ProvidesFile{readprov.tex}[2012/03/18 documenting readprov.sty]
% \ProvidesFile{readprov.tex}[2011/01/29 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}                        %% star 2012/03/18
  %% <- 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'\urlfoot{CtanPkgRef}{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\urlfoot{CtanPkgRef}{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}
