From 2769c57ab6c21c58cd9ba299282200a870e912f8 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 31 Oct 2012 21:45:40 +0000 Subject: nicefilelist (31oct12) git-svn-id: svn://tug.org/texlive/trunk@28141 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/nicefilelist/README | 24 ++- .../texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt | 33 ++- .../doc/latex/nicefilelist/nicefilelist.pdf | Bin 371996 -> 649104 bytes .../source/latex/nicefilelist/nicefilelist.tex | 234 +++++++++++++++++---- .../source/latex/nicefilelist/provonly.fd | 6 +- .../source/latex/nicefilelist/srcfiles.tex | 50 +++-- .../tex/latex/nicefilelist/nicefilelist.RLS | 1 + .../tex/latex/nicefilelist/nicefilelist.sty | 99 ++++++--- 8 files changed, 342 insertions(+), 105 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/nicefilelist/README b/Master/texmf-dist/doc/latex/nicefilelist/README index 2eca8f9193b..6b2707e7bda 100644 --- a/Master/texmf-dist/doc/latex/nicefilelist/README +++ b/Master/texmf-dist/doc/latex/nicefilelist/README @@ -1,20 +1,25 @@ README for the `nicefilelist' package - "\listfiles Alignment for Connoisseurs" - (C) Uwe Lueck 2012/05/20 + \listfiles Alignment with Date and Version Columns + (C) Uwe Lueck 2012/10/30 -While `longnamefilelist.sty' improves LaTeX's \listfiles with respect -to long base filenames only, the present `nicefilelist.sty' +While `longnamefilelist.sty' improves LaTeX's \listfiles with +respect to long base filenames only, the present `nicefilelist.sty' can keep separate columns for (i) date (ii) version, and (iii) "caption" (don't write caption text in date column), their alignment not being disturbed by short filename extensions such as `.fd'. This is achieved basing on the `monofill' package. -Thus `nicefilelist' is more "powerful" than `longnamefilelist', the -former however is an "extension" of the latter neither with respect -to implementation nor with respect to user interface. +v0.7 offers a package option `[wrap]' for automatic word wrapping +within the caption column, using the `hardwrap' package, so +filenames and captions can be quite long without disturbing the +alignment. + +As opposed to the `dateiliste' package, this is about the plain +text output in the `.log' file or, with `myfilist', as a stand- +alone plain text file. The package `latexfileinfo-pkgs' @@ -34,7 +39,8 @@ either version 1.3c of the License, or any later version, see http://www.latex-project.org/lppl.txt -There is NO WARRANTY (it's rather experimental development). +There is NO WARRANTY -- no responsibility can be accepted +when your monitor bursts. The `nicefilelist' package is author-maintained in the sense of this license. @@ -47,7 +53,7 @@ A TDS version of the package is available as http://mirror.ctan.org/install/macros/latex/contrib/nicefilelist.tds.zip -Please report bugs, problems, and suggestions via +Please report bugs, problems, suggestions, and bad English via http://www.contact-ednotes.sty.de.vu diff --git a/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt b/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt index c92c8c1f2cf..b7e44c75b8e 100644 --- a/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt +++ b/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt @@ -1,17 +1,32 @@ *File List* -nicefilelist.sty 2012/10/03 v0.6 more file list alignment (UL) - monofill.sty 2012/03/29 v0.1a monospace alignment (UL) - myfilist.sty 2012/10/11 v0.6 \listfiles -- mine only (UL) - readprov.sty 2012/03/20 v0.3b file infos without loading (UL) -nicefilelist.tex 2012/10/11 -- documenting nicefilelist.sty - provonly.fd -- -- -- -- such +-----RELEASE.--- -- -- -- -- -- +nicefilelist.RLS 2012/10/30 r0.7 v0.7 [wrap] option +-----PACKAGE.--- -- -- -- -- -- +nicefilelist.sty 2012/10/30 v0.7 more file list alignment (UL) +------DOCSRC.--- -- -- -- -- -- +nicefilelist.tex 2012/10/30 -- documenting nicefilelist.sty + srcfiles.tex 2012/10/30 -- file infos -> SrcFILEs.txt +--------DEMO.--- -- -- -- -- -- + provonly.fd -- -- -- -- no date, no version, but a lot of info, + look how that is wrapped! wrong.prv * NOT FOUND * empty.f * NOT FOUND * - srcfiles.tex 2012/05/20 -- file infos -> SrcFILEs.txt -nicefilelist.RLS 2012/10/11 r0.6 v0.6 \MaxBaseEmptyList* +--------USED.--- -- -- -- -- -- + hardwrap.sty 2011/02/12 v0.2 Hard wrap messages + myfilist.sty 2012/10/25 v0.7 \listfiles -- mine only (UL) + readprov.sty 2012/03/20 v0.3b file infos without loading (UL) + fifinddo.sty 2012/08/27 v0.6 filtering TeX(t) files by TeX (UL) + makedoc.sty 2012/08/28 v0.52 TeX input from *.sty (UL) + niceverb.sty 2012/09/27 v0.5 minimize doc markup (UL) + texlinks.sty 2012/05/13 v0.6 TeX-related links (UL) + makedoc.cfg 2012/10/29 -- documentation settings + mdoccorr.cfg 2011/12/03 -- makedoc local typographical corrections +-not-so-much.--- -- -- -- -- -- + kvsetkeys.sty 2009/07/30 v1.5 Key value parser with default handler + support (HO) *********** - List made at 2012/10/11, 16:33 + List made at 2012/10/30, 20:12 from script file srcfiles.tex diff --git a/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.pdf b/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.pdf index a83c1d15cda..bdc308855f7 100644 Binary files a/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.pdf and b/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.pdf differ diff --git a/Master/texmf-dist/source/latex/nicefilelist/nicefilelist.tex b/Master/texmf-dist/source/latex/nicefilelist/nicefilelist.tex index d7fda80e25d..3f12835d7d5 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/nicefilelist.tex +++ b/Master/texmf-dist/source/latex/nicefilelist/nicefilelist.tex @@ -1,38 +1,56 @@ -\ProvidesFile{nicefilelist.tex}[2012/10/11 documenting nicefilelist.sty] +\ProvidesFile{nicefilelist.tex}[2012/10/30 documenting nicefilelist.sty] \title{\pkg{\huge nicefilelist.sty }\\---\\\cs{listfiles} Alignment for Connoisseurs\thanks{This document describes version \textcolor{blue}{\UseVersionOf{\jobname.sty}} of \pkg{\jobname.sty} as of \UseDateOf{\jobname.sty}.}} -% \listfiles { \RequirePackage{makedoc} \ProcessLineMessage{} - \MakeJobDoc{19}%% 2012/03/21 + \MakeJobDoc{18}%% 2012/10/30 {\SectionLevelTwoParseInput} } \documentclass[fleqn]{article}%% TODO paper dimensions!? \input{makedoc.cfg} %% shared formatting settings -% \ReadPackageInfos{nicefilelist} -\usepackage{nicefilelist} +\usepackage[wrap]{nicefilelist} \listfiles +%% <- 2012/10/30 try without 'myfilist' +\MDkeywords{Package management, document management, plain text output} \sloppy \begin{document} \maketitle -\begin{abstract}\noindent +\begin{MDabstract} While \CtanPkgRef{longnamefilelist}{longnamefilelist.sty} improves \LaTeX's \cs{listfiles} with respect to long base filenames only, 'nicefilelist.sty' can keep separate columns for -(i)~date (ii)~version, and (iii)~``caption" +(i)~date, (ii)~version, and (iii)~``caption" %% 1st , 2012/10/30 (don't write caption text in date column), their alignment not being disturbed by short filename extensions such as `.fd'. This is achieved basing on the \ctanpkgref{monofill} package. -Thus 'nicefilelist' is more ``powerful" than 'longnamefilelist', -the former however is an ``extension" of the latter -neither with respect to implementation nor with respect to user interface. -\end{abstract} +% Thus 'nicefilelist' is more ``powerful" than 'longnamefilelist', +% the former however is an ``extension" of the latter +% neither with respect to implementation nor with respect to user interface. + +%% <- 2012/10/29 -> +v0.7 offers a package option `[wrap]' for automatic word wrapping within +the caption column (using the \ctanpkgref{hardwrap} package), +so filenames and captions can be quite long without disturbing alignment. + +As opposed to the \ctanpkgref{dateiliste} package, this is about the +\meta{plain text} output in the `.log' file or, with \ctanpkgref{myfilist}, +as a stand-alone plain text file. + +\MDaddtoabstract{Related packages:} Cf.~\ctanpkgref{latexfileinfo-pkgs}. +\end{MDabstract} \tableofcontents \section{Features and Usage} -We are describing relations to, ahm, related packages---rather brief{}ly. -The \ctanpkgref{latexfileinfo-pkgs} package provides a more general overview. -%% <- 2012/05/18 +% We are describing relations to, ahm, related packages---rather brief{}ly. +% The \ctanpkgref{latexfileinfo-pkgs} package provides a more general overview. +% %% <- 2012/05/18 +%% 2012/10/29: +Additionally or also ``complementarily" to the presentation given here, +the functionality of the package is summarized in the file +`latexfileinfo_pkgs.htm' from the \ctanpkgref{latexfileinfo-pkgs}, +in a comparison with packages resembling 'nicefilelist' in +certain respects. + \subsection{Relation to 'longnamefilelist.sty'} \CtanPkgRef{longnamefilelist}{longnamefilelist.sty} equips \cs{listfiles} with an optional argument for the maximum number of characters @@ -61,37 +79,121 @@ putting it somewhere where \TeX\ finds it base).\urlfoot{ukfaqref}{inst-wlcf} \subsection{Calling} - +%% restructured for v0.7 2012/10/29: Below the `\documentclass' line(s) and above `\begin{document}', you load 'nicefilelist.sty' (as usually) by \[`\usepackage{nicefilelist}'\] +or by +\[`\usepackage[]{nicefilelist}'\] +where may be `r', `wrap', or `r,wrap'~\dots---see +summaries in sections~\ref{sec:set} and \ref{sec:opt} +on the package options and an example in Section~\ref{sec:short}. Alternatively---e.g., for use with \ctanpkgref{myfilist} from the -\ctanpkgref{fileinfo} bundle, see~Sec.~\ref{sec:myfilist}, +\ctanpkgref{fileinfo} bundle (in a ``\TeX~script"), see Section~\ref{sec:myfilist}, or in order to include the `.cls' file in the list---you may load it by \[`\RequirePackage{nicefilelist}'\] +or by +\[`\RequirePackage[]{nicefilelist}'\] before `\documentclass' or when you don't use `\documentclass'. -As of v0.4, there is a package option |[r]| in order to place -strings like `r0.4' in the column reserved for version numbers. -You get this functionality by -\[`\usepackage[r]{nicefilelist}'\] -or -\[`\RequirePackage[r]{nicefilelist}'\] -See Section~\ref{sec:opt} for more information. +\subsection{Choosing Settings} %% new 2012/10/29 +\label{sec:set} + +\subsubsection{The Columns, Their Widths, and Their ``Missing" Content} +\label{sec:cols} + +\AddQuotes %% 2012/10/29 + +The 'nicefilelist' package considers the listing from `\listfiles' +a five-column table, the columns being (reserved for) \ +(i)~the base filename, \ (ii)~the filename extension, \ +(iii)~the date, \ +(iv)~the version (or with option `[r]': the release) number, and \ +(v)~the caption \ of a \LaTeX\ source file. The filename base column +is right-adjusted, the other ones are left-adjusted. +Date, version, and caption are made up from the argument in +\[|\Provides{.}[|]\] +where is `Class', `Package', or `File'. + +The fixed usual format `YYYY/MM/DD' for the date is assumed; +in fact, when doesn't start according to this format, +it is assumed that no date is given, and some ``missing'' +text will appear in the ``date" column, determined by a macro +|\NFLnodate|. The version number +(or ``string") must follow in format `v.', +otherwise some ``missing" text appears in the ``version" column, +determined by a macro |\NFLnoversion|. +What remains is placed in the ``caption" column. +|\NFLnotfound| determines an alternative filling +in the case that cannot be obtained. +See the default settings for these ``failure" texts in +Section~\ref{sec:fail}. + +The column widths for filename base and extension +and the column width for version or release +are determined using the \ctanpkgref{monofill} package. +They have ``field identifiers" |f-base|, |f-ext|, +and |f-version| respectively. The respective widths are +determined by templates in +\[|\MDfieldtemplate{}{}|\] +See Section~\ref{sec:templates} for the default settings. +Probably only adjusting the width for \emph{base} filenames +is required in real life, see the example in Section~\ref{sec:short}. + +The spaces between the columns are determined by macros +|\NFLspaceI|, |\NFLspaceII|, and |\NFLspaceIII|, +see Section~\ref{sec:templates} for the defaults. + +\DontAddQuotes %% 2012/10/29 -\subsection{Usage and Sample with 'myfilist.sty'} +\subsubsection{The Caption Column} +The width of the caption column (unfortunately) is determined by +the stuff enumerated above and the width of the console output window or screen. +With long filenames and long captions, the result may look poor. +the \emph{characters} that don't fit into the line may continue +at left end of the window or screen, disturbing the appearance +of a ``table"---unless you use package option |[wrap]|. +The latter requires the \ctanpkgref{hardwrap} package by +Will Robertson and Kevin Godby +(``\Wikienref{not invented here}"). This package tries to determine +the screen width by some subtle tests, and until it finds something +better, it assumes a width of 80 characters (I suppose). +'hardwrap' does \wikienref{Word wrap}{\emph{word wrapping}}, +i.e., it doesn't just put \emph{characters} not fitting into the +next line, but entire \emph{words}. Moreover, it allows inserting +some ``newline sequence" before the first word that is too much, +and we use this feature here to put the next word into the +\emph{caption column} rather than at the beginning of the next line. +(Details and implementation are in Section~\ref{sec:opt}.) + +If you are not happy with the column width that 'hardwrap' +chooses, but want to assume your own width +(e.g., your width, measured by your doctor, divided by the + width of one character), +compute its difference to 1 +(maybe by your electronic calculator, or an emulation, or + a Lua script, cf.~\ctanpkgref{lualatex-doc}, or by + \ctanpkgref{bigintcalc}), and enter +the 'hardwrap' instruction +\[|\setmaxprintline{}|\] +when 'hardwrap' or 'nicefilelist' have been loaded +\emph{and} before the internal macro `\@dofilelist' is run +(which happens at the end of the document or when + \ctanpkgref{myfilist}'s `\ListInfos' is issued, for instance). + +\subsection{Usage and Samples with 'myfilist.sty'} \label{sec:myfilist} \subsubsection{Basically} -In order to get a reduced and/or rearranged list of used files +In order to get a reduced and/or rearranged list of file infos with the \ctanpkgref{myfilist} package, `nicefilelist.sty' must be loaded earlier than `myfilist.sty'. This is due to a kind of limitation of the latter, - it \emph{issues} `\listfiles' (TODO). + it \emph{issues} `\listfiles' (\TODO). Therefore \cs{listfiles} must be modified earlier---or \emph{issued} earlier, in this case the \cs{listfiles} in `myfilist.sty' does nothing. -The file `SrcFILEs.txt' accompanying the distribution of 'longnamefilelist', -e.g., can be generated by running the following file `srcfiles.tex' -with \LaTeX: +The file `SrcFILEs.txt' accompanying the---first---distribution of +'nicefilelist' %% corr., was `longname'; `first' etc. 2012/10/29 +was generated by running the following file `srcfiles.tex' with \LaTeX: \begin{quotation}\tt\small \expandafter\def\expandafter\{\expandafter{\string{} \expandafter\def\expandafter\}\expandafter{\string}} @@ -113,7 +215,8 @@ with \LaTeX: \cs{ListInfos}[SrcFILEs.txt] \end{quotation} Note the lines where to place \strong{custom} modifications of settings -for alignment (Sec.~\ref{sec:templates}) or failure displays (Sec.~\ref{sec:failure}). +for alignment (Section~\ref{sec:templates}) or failure displays +(Section~\ref{sec:fail}). The previous code mentions the following files: \begin{description} @@ -154,7 +257,7 @@ nicefilelist.tex 2012/03/23 -- \rlap{documenting nicefilelist.sty} \AddQuotes %% 2012/10/11 In the above example, the 'myfilist' command `\EmptyFileList' -is missing---it is not intended there. Usually however, +was missing---it was not intended there. Usually however, %% is -> was 2012/10/29 it \emph{is} intended, i.e., the following sequence of lines is wanted: \begin{quotation}\tt\small @@ -169,9 +272,7 @@ lines is wanted: Here you also see usage of package option |[r]| for release numbers and the adjustment \[|\MFfieldtemplate{f-base}{}|\] -according to Section~\ref{sec:templates}. While there are also -field identifiers |f-ext| and |f-version|, it seems that only -|f-base| varies between real-life applications. +according to Section~\ref{sec:templates}. With v0.5, the last three code lines in the snippet above can be replaced by @@ -192,14 +293,59 @@ works like `\MaxBaseEmptyList{nicefile}' (eight characters)---still, optional `[]' may follow. This feature is demonstrated with \ctanpkgref{inputtrc} v/r0.3. +\subsubsection{Sample with Wrapped Caption Column} %% 2012/10/30 + +\AddQuotes + +The most recent version of the accompanying `SrcFILEs.txt' contains +the following: +\bigskip +\begingroup \footnotesize +\hrule +\verbatiminput{SrcFILEs.txt} +\hrule +\endgroup +\bigskip + +This exemplifies +\begin{enumerate} + \item \strong{wrapping} of `provonly.fd''s and \ctanpkgref{kvsetkeys}\file{.sty} + file info within the \strong{caption} column + using 'nicefilelist''s `[wrap]' option, + \item inserted ``\strong{comments}" from \ctanpkgref{myfilist}'s `\FileListRemark', + \item a file `nicefilelist.RLS' for a \strong{release summary}. This is to track + what has happened most recently, whether the most recent release + has been installed (system-wide), or (for me) whether most recent versions + of package and documentation have been released. + When such an `.RLS' file is installed together with packages + in the `tex' subtree of a \acro{TDS}, the release summary can be + accessed quickly as a \strong{terminal display} + by one of the packages \ctanpkgref{ltxfileinfo}, + \ctanpkgref{latexfileversion}, or \ctanpkgref{typeoutfileinfo}. + One aim of the `[wrap]' option is allowing longer ``release captions" + (looking fine in the package file list) than fit into a small part + of a single line. +\end{enumerate} +% +The above `SrcFILEs.txt' has been generated from the following version +of the \TeX\ script `srcfiles.tex': +\bigskip +\hrule +\verbatiminput{srcfiles.tex} +\smallskip +\hrule + +\DontAddQuotes + \section{Implementation} \subsection{Package File Header (Legalese)} \input{nicefilelist.doc} -\pagebreak %% 2012/09/30 +% \pagebreak %% 2012/09/30 rm. 2012/10/29 \section{Credits} \begin{enumerate} %% 2012/05/20 - \item It was \textsc{Martin Muench} who pointed out the shortcomings + \item It was \ctanpkgauref{muench-hm}{\textsc{Martin M\"unch}} + who pointed out the shortcomings of 'longnamefilelist' that the present package addresses---thanks! %% 2012/05/20: \item For \textsc{Alois Kabelschacht}---whose idea in @@ -212,14 +358,15 @@ with \ctanpkgref{inputtrc} v/r0.3. \end{enumerate} \section{Missing} -\begin{enumerate} - \item The package once might provide \ctanpkgref{keyval}-style +% \begin{enumerate} %% rm. 2012/10/29 +% \item + The package once might provide \ctanpkgref{keyval}-style optional arguments for \cs{listfiles} or even call \cs{listfiles} automatically with 'keyval' package options. - %% 2012/05/18: - \item Another idea from \textsc{Martin Muench}: wrapping inside caption column. - Can \ctanpkgref{hardwrap} help? -\end{enumerate} +% %% 2012/05/18: +% \item Another idea from \textsc{Martin Muench}: wrapping inside caption column. +% Can \ctanpkgref{hardwrap} help? +% \end{enumerate} \end{document} @@ -234,3 +381,6 @@ VERSION HISTORY 2012/05/20 for v0.4 on new package option [r] 2012/09/30 for v0.5 \MaxBaseEmptyList, doc. \pagebreak 2012/10/11 for v0.6 \MaxBaseEmptyList*, \AddQuotes +2012/10/29 for v0.7 "Mnch", one item less missing, MDabstract, + usage restructured and extended +2012/10/30 \listfiles diff --git a/Master/texmf-dist/source/latex/nicefilelist/provonly.fd b/Master/texmf-dist/source/latex/nicefilelist/provonly.fd index 2b07688d8dc..52aa2c3604b 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/provonly.fd +++ b/Master/texmf-dist/source/latex/nicefilelist/provonly.fd @@ -1,2 +1,4 @@ -% \ProvidesFile{provonly.fd}[2012/03/22 v0.11a such] -\ProvidesFile{provonly.fd}[such] +%\ProvidesFile{provonly.fd}[2012/03/22 v0.11a such] +%\ProvidesFile{provonly.fd}[such] +\ProvidesFile{provonly.fd}[no date, no version, but a lot of info, + look how that is wrapped!] diff --git a/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex b/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex index 75cb27a5f82..795e982e7d9 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex +++ b/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex @@ -1,18 +1,34 @@ -\ProvidesFile{srcfiles.tex}[2012/05/20 file infos -> SrcFILEs.txt] -\RequirePackage[r]{nicefilelist} -\RequirePackage[no-bot]{myfilist} -% \EmptyFileList[nicefilelist.sty] %%% [readprov.sty,myfilist.sty] -%% packages: -% \ReadPackageInfos{nicefilelist} -%% documentation: -\ReadFileInfos{nicefilelist} -%% Test: +\ProvidesFile{srcfiles.tex} + [2012/10/30 file infos -> SrcFILEs.txt] +\RequirePackage[r,wrap]{nicefilelist} +\RequirePackage{filedate} +\MaxBaseEmptyList{nicefilelist} + [nicefilelist.sty,% + readprov.sty,myfilist.sty,% + hardwrap.sty] +\FileListRemark[ -- ]{-----RELEASE.---} +\ReadFileInfos{nicefilelist.RLS} +\FileListRemark[ -- ]{-----PACKAGE.---} +\ReadPackageInfos{nicefilelist} +\FileListRemark[ -- ]{------DOCSRC.---} +\ReadFileInfos{nicefilelist,srcfiles.tex} +\FileListRemark[ -- ]{--------DEMO.---} \ReadFileInfos{provonly.fd,wrong.prv,empty.f} -% \ReadFileInfos{utopia.xxx} -%% documentation settings and auxiliaries: -% \ReadPackageInfos{fifinddo,makedoc,niceverb} -% \ReadFileInfos{makedoc.cfg,mdoccorr.cfg} -\ReadFileInfos{srcfiles} -\ReadFileInfos{nicefilelist.RLS} %% 2012/05/18 -\ListInfos[SrcFILEs.txt] - +%\ReadFileInfos{utopia.xxx} +%\FileListRemark[ -- ]{DOCUTILITIES.---} +%\FileListRemark[ -- ]{usedNICETEXT.---} +\FileListRemark[ -- ]{--------USED.---} +\ReadPackageInfos{hardwrap, + myfilist,readprov, + fifinddo,makedoc,niceverb,texlinks} +\ReadFileInfos{makedoc.cfg,mdoccorr.cfg} +\FileListRemark[ -- ]{-not-so-much.---} +\ReadPackageInfos{kvsetkeys} +%\NoStopListInfos[SrcFILEs.txt] +%\EqualityMessages +\CheckDateOfPDFmod{nicefilelist.sty} +\CheckDateOfPDFmod{nicefilelist.tex} +\CheckDateOfPDFmod{nicefilelist.RLS} +\CheckDateOfPDFmod{srcfiles.tex} +%\stop +\NoBottomLines \ListInfos[SrcFILEs.txt] diff --git a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS index 8b607c243c4..a6c36907693 100644 --- a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS +++ b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS @@ -1,4 +1,5 @@ \ProvidesFile{nicefilelist.RLS} %% RELEASE INFO + [{2012/10/30 r0.7 v0.7 [wrap] option}] [{2012/10/11 r0.6 v0.6 \string\MaxBaseEmptyList*}] [2012/10/01 r0.5 v0.5 \string\MaxBaseEmptyList] [{2012/05/20 r0.4 v0.4 Kabelschacht + [r] }] diff --git a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty index 5e1a6787cd5..2ee4194c1cd 100644 --- a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty +++ b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty @@ -1,7 +1,6 @@ \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{nicefilelist}[2012/10/03 v0.6 +\ProvidesPackage{nicefilelist}[2012/10/30 v0.7 more file list alignment (UL)] - %% Copyright (C) 2012 Uwe Lueck, %% http://www.contact-ednotes.sty.de.vu %% -- author-maintained in the sense of LPPL below -- @@ -17,11 +16,14 @@ %% %% http://www.contact-ednotes.sty.de.vu %% -%% === Alignment Settings === +%% === Alignment Settings === %% \label{sec:templates} %% We use the \ctanpkgref{monofill} package for alignment of plain text: -\RequirePackage{monofill} +\RequirePackage{monofill}[2012/10/29] %% See its documentation for details. +%% %% <- added 2012/10/29 -> +%% The `[wrap]' option provided by 'nicefilelist' v0.7 requires +%% 'monofill' v0.2 as of 2012-10-29. %% %% We support three alignment ``fields" according to the terminology of \pkg{monofill}. %% Their ids are |f-base| for base filenames, |f-ext| for filename extensions, @@ -46,8 +48,8 @@ \newcommand*{\NFLspaceII} { \space} \newcommand*{\NFLspaceIII}{ } %% -%% === Failure Displays === -%% \label{sec:failure} +%% === Failure Displays === +%% \label{sec:fail} %% was failure 2012/10/29 %% |\NFLnodate| is displayed in place of a file date if it seems %% not to be given (configurable): \newcommand*{\NFLnodate}{ -- \space-- --} @@ -61,23 +63,9 @@ %% \cs{Provides.\empty..} command: \newcommand*{\NFLnotfound}{ * NOT FOUND *} %% -%% === Safe Tests === -%% \label{sec:safe} -%% For fairly safe tests, we brief{}ly use an exotic version of `Q' -%% (similarly to \ctanpkgref{ifmptarg}): -\catcode`\Q=7 \let\NFL@criterion=Q \catcode`\Q=11 -%% %% 2012/03/27: -%% It appears to me that expandable tests like the ones employed here -%% never are perfectly safe; you only can say that it is safe with a -%% source meeting certain conditions. \ctanpkgref{fifinddo} originally -%% was made for ``plain text," to be read from files without assigning -%% \TeX's special category codes. \emph{Here} we assume that the source -%% (text in \cs{Provides.\empty..} arguments) will never contain such a -%% ``funny `Q'". -%% -%% === Package Option `[r]' === +%% === Package Options === %% \label{sec:opt} -%% v0.4 offers package option `[r]' that allows strings with `r' +%% v0.4 offers package option |[r]| that allows strings with `r' %% |...| 2012/10/30 %% in place of `v', for ``release." `\NFL@v@digit''s definition %% therefore depends ... we use |\@listfiles| for a ``message" %% there. For the original restricted functionality, it expands @@ -93,11 +81,64 @@ \noexpand\NFL@false}% }% } +%% v0.7 offers package option |[wrap]| for automatical wrapping within %% |...| 2012/10/30 +%% the "captions" column, based on Will Robertson's and Kevin Godby's +%% \ctanpkgref{hardwrap} package. The difference between this option +%% and the functionality without is controlled by the macro +%% `\NFL@filerow'. +%% %% 2012/10/30: +%% \emph{Without} it expands to `\typeout' +\newcommand*{\NFL@filerow}{\typeout} +%% ---`\let' does'nt work with 'myfilist''s redefinition of +%% `\typeout'. +%% \emph{With} `[wrap]', `\NFL@filerow' applies 'hardwrap''s +%% `\HardWrap': +\DeclareOption{wrap}{% + \renewcommand*{\NFL@filerow}[1]{% + \HardWrap\typeout\hw@maxprintline\relax{^^J% + \MFrightinfield\space{f-base} % + \MFleftinfield \space{f-ext}% + \NFLspaceI\@spaces\space\@spaces\space \NFLspaceII + \MFrightinfield\space{f-version}\NFLspaceIII}{% + #1}}% +%% Alignment of filenames with 'hardwrap' seems to need + \renewcommand*{\MFfillelement}{\MFotherspace} +%% from \ctanpkgref{monospace} v0.2. +} +%% The display width is controlled by 'hardwrap''s counter +%% `\hw@maxprintline'. Unless 'hardwrap' finds something special, +%% its content is 79, corresponding to a display width of +%% 80 characters (I believe---counting the leftmost character +%% as \qtd{0}, as editors like to do). You can choose a different +%% content value by 'hardwrap''s +%% \[|\setmaxprintline{}|\] \ProcessOptions +%% The next `\ifx' is to check whether `[wrap]' has been demanded +%% and 'hardwrap' is needed: +\ifx\NFL@filerow\typeout \else + \RequirePackage{hardwrap} +\fi %% +%% === Safe Tests === %% below options 2012/10/29 +%% \label{sec:safe} +%% For fairly safe tests, we brief{}ly use an exotic version of `Q' +%% (similarly to \ctanpkgref{ifmptarg} and \ctanpkgref{url}): +\catcode`\Q=7 \let\NFL@criterion=Q \catcode`\Q=11 +%% %% 2012/03/27: +%% It appears to me that expandable tests like the ones employed here +%% never are perfectly safe; you only can say that it is safe with a +%% source meeting certain conditions. \ctanpkgref{fifinddo} originally +%% was made for ``plain text," to be read from files without assigning +%% \TeX's special category codes. \emph{Here} we assume that the source +%% (text in \cs{Provides.\empty..} arguments) will never contain such a +%% ``funny `Q'". +%% %% === Redefining \cs{listfiles} === %% Similarly to original \LaTeX, |\listfiles| carries almost everything -%% that is needed for the file list only: +%% that is needed for the file list only. 2012-10-29: little point +%% in this, perhaps, in that the package should be loaded when +%% running `\listfiles' is intended---TODO. Or maybe it is loaded +%% \emph{just in case?} \renewcommand*{\listfiles}{% \let\listfiles\relax %% ---this clears memory. Now \LaTeX\ doesn't collect file names for @@ -127,7 +168,7 @@ \edef\@tempa{\filename@area\filename@base}% %% Actually I would like to be able to do even the filename parsing %% expandably---for all systems, `texsys.cfg'!?? TODO - \typeout{% + \NFL@filerow{% %% Now all parsing and checking must be expandable. \NFL@make@macro@arg\MFrightinfield\@tempa {f-base}.% \NFL@make@macro@arg\MFleftinfield \filename@ext{f-ext}% @@ -262,7 +303,7 @@ {\NFL@place@version{##1}\NFLspaceIII##2}% {\NFLnoversion@\NFLspaceIII##1 ##2}}% } -%% === Shorthand for 'myfilist' === +%% === Shorthand for 'myfilist' === %% \[|\MaxBaseEmptyList{}[]|\] %% (v0.5) or %% \[|\MaxBaseEmptyList*[]|\] @@ -275,7 +316,7 @@ %% So |\maxBaseEmptyList| is like former `\MaxBaseEmptyList' %% without expecting a star---available to users. %% -%% === Leaving the Package File === +%% === Leaving the Package File === \endinput %% %% === VERSION HISTORY === @@ -306,3 +347,9 @@ v0.4 2012/05/20 option [r] v0.5 2012/09/30 \MaxBaseEmptyList v0.6 2012/10/03 \MaxBaseEmptyLists first arg. only optional 2012/10/11 ... bad with 2nd opt. arg., * +v0.7 2012/10/13 "updating" date in \Provides...! + 2012/10/28 \HardWrap first try + 2012/10/29 \HardWrap newline material -> [wrap] + sec:test below sec:opt, mentioning `url' + 2012/10/30 correcting \NFL@filerow without wrapping, + doc.: |...| in sec:opt -- cgit v1.2.3