From 5f05568158ac9b005570e3fd43d01d038c01d4dd Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 10 Dec 2022 20:57:22 +0000 Subject: nicefilelist (10dec22) git-svn-id: svn://tug.org/texlive/trunk@65235 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/nicefilelist/README | 56 ++-- .../texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt | 23 +- .../doc/latex/nicefilelist/nicefilelist.RLS | 10 + .../doc/latex/nicefilelist/nicefilelist.pdf | Bin 647513 -> 599529 bytes .../source/latex/nicefilelist/nicefilelist.tex | 331 +++++++++++---------- .../source/latex/nicefilelist/provonly.fd | 4 +- .../source/latex/nicefilelist/srcfiles.tex | 4 +- .../texmf-dist/source/latex/nicefilelist/wrong.prv | 2 +- .../tex/latex/nicefilelist/nicefilelist.RLS | 9 - .../tex/latex/nicefilelist/nicefilelist.sty | 75 +++-- 10 files changed, 279 insertions(+), 235 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.RLS delete mode 100644 Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS diff --git a/Master/texmf-dist/doc/latex/nicefilelist/README b/Master/texmf-dist/doc/latex/nicefilelist/README index 6b2707e7bda..ab4964ab742 100644 --- a/Master/texmf-dist/doc/latex/nicefilelist/README +++ b/Master/texmf-dist/doc/latex/nicefilelist/README @@ -1,35 +1,37 @@ - README for the `nicefilelist' package - \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' -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 + \listfiles Alignment with Date and Version Columns + © Uwe Lück 2012/10/30 (deceased June 2020, + 2022-12-05 v0.8a patched by H.-Martin Münch, + original package version 0.7a has been archived at + https://web.archive.org/web/20221205210517/ + https://mirror.mwt.me/ctan/install/macros/ + latex/contrib/nicefilelist.tds.zip) + +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. -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. +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 +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' - http://ctan.org/pkg/latexfileinfo-pkgs + https://ctan.org/pkg/latexfileinfo-pkgs -describes `nicefilelist' in a more general context. A file -`nicefilelist.RLS' provides release information accessible by +describes `nicefilelist' in a more general context. A file +`nicefilelist.RLS' provides release information accessible by packages described there. - LICENSE: The package file `nicefilelist.sty' and the documentation files @@ -37,9 +39,9 @@ The package file `nicefilelist.sty' and the documentation files modified under the terms of the LaTeX Project Public License; either version 1.3c of the License, or any later version, see - http://www.latex-project.org/lppl.txt + https://www.latex-project.org/lppl.txt -There is NO WARRANTY -- no responsibility can be accepted +There is NO WARRANTY -- no responsibility can be accepted when your monitor bursts. The `nicefilelist' package is author-maintained in the sense of @@ -47,14 +49,8 @@ this license. The latest public version of the package is available at - http://mirror.ctan.org/macros/latex/contrib/nicefilelist/ + https://mirror.ctan.org/macros/latex/contrib/nicefilelist/ A TDS version of the package is available as - http://mirror.ctan.org/install/macros/latex/contrib/nicefilelist.tds.zip - -Please report bugs, problems, suggestions, and bad English via - - http://www.contact-ednotes.sty.de.vu - - + https://mirror.ctan.org/install/macros/latex/contrib/nicefilelist.tds.zip \ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt b/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt index 193b1ad9de8..6209222cfbb 100644 --- a/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt +++ b/Master/texmf-dist/doc/latex/nicefilelist/SrcFILEs.txt @@ -1,12 +1,11 @@ - *File List* -----RELEASE.--- -- -- -- -- -- -nicefilelist.RLS 2012/12/12 v0.7a [wrap], `mono' typo, vs. +nicefilelist.RLS 2022/12/05 v0.8a date: dashes OK -----PACKAGE.--- -- -- -- -- -- -nicefilelist.sty 2012/12/12 v0.7a more file list alignment (UL) +nicefilelist.sty 2022/12/05 v0.8a more file list alignment (UL) ------DOCSRC.--- -- -- -- -- -- -nicefilelist.tex 2012/12/12 -- documenting nicefilelist.sty - srcfiles.tex 2012/10/30 -- file infos -> SrcFILEs.txt +nicefilelist.tex 2022/12/05 -- documenting nicefilelist.sty + srcfiles.tex 2022/12/05 -- file infos -> SrcFILEs.txt --------DEMO.--- -- -- -- -- -- provonly.fd -- -- -- -- no date, no version, but a lot of info, look how that is wrapped! @@ -18,15 +17,13 @@ nicefilelist.tex 2012/12/12 -- documenting nicefilelist.sty readprov.sty 2012/11/22 v0.5 file infos without loading (UL) fifinddo.sty 2012/11/17 v0.61 filtering TeX(t) files by TeX (UL) makedoc.sty 2012/08/28 v0.52 TeX input from *.sty (UL) - niceverb.sty 2012/11/27 v0.51 minimize doc markup (UL) - texlinks.sty 2012/12/08 v0.71 TeX-related links (UL) - makedoc.cfg 2012/11/30 -- documentation settings + niceverb.sty 2015/11/21 v0.62 minimize doc markup (UL) + texlinks.sty 2015/07/20 v0.83 TeX-related links (UL) + makedoc.cfg 2013/03/25 -- documentation settings mdoccorr.cfg 2012/11/13 -- `makedoc' local typographical corrections -not-so-much.--- -- -- -- -- -- - kvsetkeys.sty 2009/07/30 v1.5 Key value parser with default handler - support (HO) + kvsetkeys.sty 2019/12/15 v1.18 Key value parser (HO) *********** - List made at 2012/12/12, 23:52 - from script file srcfiles.tex - + List made at 2022/12/05, 16:05 + from script file srcfiles.tex \ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.RLS b/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.RLS new file mode 100644 index 00000000000..a40c48ea2ba --- /dev/null +++ b/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.RLS @@ -0,0 +1,10 @@ +\ProvidesFile{nicefilelist.RLS} %% RELEASE INFO + [{2022/12/05 v0.8a date: dashes OK}] + [{2012/12/12 v0.7a [wrap], `mono' typo, vs.}] + [{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] }] + [2012/05/20 v0.3 Kabelschacht reimplementation] + [2012/03/29 v0.2 reimpl.: much within \string\typeout] + [2012/03/23 v0.1(a) initial] \ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.pdf b/Master/texmf-dist/doc/latex/nicefilelist/nicefilelist.pdf index ebf7a8743e3..ec61c396013 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 8cb96438578..61681852f7e 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/nicefilelist.tex +++ b/Master/texmf-dist/source/latex/nicefilelist/nicefilelist.tex @@ -1,4 +1,4 @@ -\ProvidesFile{nicefilelist.tex}[2012/12/12 documenting nicefilelist.sty] +\ProvidesFile{nicefilelist.tex}[2022/12/05 documenting nicefilelist.sty] \title{\pkg{\huge nicefilelist.sty }\\---\\\cs{listfiles} Alignment for Connoisseurs\thanks{This document describes version @@ -9,7 +9,7 @@ {\SectionLevelTwoParseInput} } \documentclass[fleqn]{article}%% TODO paper dimensions!? \input{makedoc.cfg} %% shared formatting settings -\usepackage[wrap]{nicefilelist} \listfiles +\usepackage[wrap]{nicefilelist} \listfiles %% <- 2012/10/30 try without 'myfilist' \MDkeywords{Package management, document management, plain text output} \sloppy @@ -18,83 +18,82 @@ \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 +'nicefilelist.sty' can keep separate columns for (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'. +(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 +% 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), +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 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. +% 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 +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 +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 -in the base filename. By contrast, 'nicefilelist' does not provide -arguments for \cs{listfiles}, rather column widths for basename, extension, -and version number are determined by \emph{templates} using -\CtanPkgRef{monofill}{monofill.sty}. As a ``template" for doing this, -see the initial settings in Sec.~\ref{sec:templates}. +\CtanPkgRef{longnamefilelist}{longnamefilelist.sty} equips +\cs{listfiles} with an optional argument for the maximum number of characters +in the base filename. By contrast, 'nicefilelist' does not provide +arguments for \cs{listfiles}, rather column widths for basename, extension, +and version number are determined by \emph{templates} using +\CtanPkgRef{monofill}{monofill.sty}. As a ``template" for doing this, +see the initial settings in section~\ref{sec:templates}. (Such settings must precede the \cs{listfiles command}) -So 'nicefilelist''s \emph{user interface} (at present) does not \emph{extend} +So 'nicefilelist''s \emph{user interface} (at present) does not \emph{extend} 'longnamefilelist''s user interface. -Using 'monofill' is a very different approach than the one of 'longnamefilelist'. -'nicefilelist' is more powerful than 'longnamefilelist', but is not based on it -in any way. It does not make sense to load both packages, they just overwrite -each other's behaviour of \cs{listfiles}. +Using 'monofill' is a very different approach than the one of 'longnamefilelist'. +'nicefilelist' is more powerful than 'longnamefilelist', but is not based on it +in any way. It does not make sense to load both packages, they just overwrite +each other's behaviour of \cs{listfiles}. -'longnamefilelist' may become ``obsolete" by the present package, -unless one finds that its version of \cs{listfiles} looks fine enough +'longnamefilelist' may become ``obsolete" by the present package, +unless one finds that its version of \cs{listfiles} looks fine enough and it is easier to understand and to use than 'nicefilelist'. \subsection{Installing} The file 'nicefilelist.sty' is provided ready, installation only requires putting it somewhere where \TeX\ finds it -(which may need updating the filename data - base).\urlfoot{ukfaqref}{inst-wlcf} +(which may need updating the filename data base). \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 +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 (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 +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 (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'. +before `\documentclass' or when you don't use `\documentclass'. \subsection{Choosing Settings} %% new 2012/10/29 \label{sec:set} @@ -104,94 +103,116 @@ before `\documentclass' or when you don't use `\documentclass'. \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 +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, +The fixed usual format `YYYY/MM/DD' +or `YYYY-MM-DD' (accepted by \LaTeX\ since 2017-03-08) +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 +text will appear in the ``date" column, determined by a macro +|\NFLnodate|. +\pagebreak + +Using the filemod package, it is possible to use the date +of a file which does not explicitly declare a date: + +\begin{verbatim} +\makeatletter +\RequirePackage{filemod}% +\renewcommand*\thefilemoddate[3]{#1-#2-#3} +\renewcommand*{\NFLnodate}{\filemodprintdate{% + \filename@area\filename@base.\filename@ext}} +\makeatother +\renewcommand*{\NFLnotfound}{% + \NFLnodate\NFLspaceII\NFLnoversion\NFLspaceIII} +\end{verbatim} + +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. +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}. +is required in real life, see the example in section~\ref{sec:short}. +(But there exist extensions .info and .mkii and versions +v4.6.3.1 (fontawesome.sty).) -The spaces between the columns are determined by macros -|\NFLspaceI|, |\NFLspaceII|, and |\NFLspaceIII|, -see Section~\ref{sec:templates} for the defaults. +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 \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 +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 +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}.) +(Details and implementation are in section~\ref{sec:opt}.) +\pagebreak -If you are not happy with the column width that 'hardwrap' +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 +(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 +(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 +\[|\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 +(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 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). -Therefore \cs{listfiles} must be modified earlier---or \emph{issued} earlier, +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). +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---first---distribution of +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 @@ -201,7 +222,7 @@ was generated by running the following file `srcfiles.tex' with \LaTeX: \cs{ProvidesFile}\{srcfiles.tex\}[2012/03/23 ~ file infos -\empty> SrcFILEs.txt] \cs{RequirePackage}\{nicefilelist\} -\%\% INSERT MODIFICATIONS OF INITIAL +\%\% INSERT MODIFICATIONS OF INITIAL \%\% \verb+`nicefilelist'/`monofill'+ SETTINGS HERE! \cs{RequirePackage}\{myfilist\} \%\% documentation: @@ -214,23 +235,23 @@ was generated by running the following file `srcfiles.tex' with \LaTeX: \cs{ReadFileInfos}\{srcfiles\} \cs{ListInfos}[SrcFILEs.txt] \end{quotation} -Note the lines where to place \strong{custom} modifications of settings -for alignment (Section~\ref{sec:templates}) or failure displays -(Section~\ref{sec:fail}). +Note the lines where to place \strong{custom} modifications of settings +for alignment (section~\ref{sec:templates}) or failure displays +(section~\ref{sec:fail}). The previous code mentions the following files: \begin{description} - \item[`provonly.fd'] has a proper `\ProvidesFile' line without date, - for seeing what happens in the date and version columns. - It also was a test for the case that there are fewer + \item[`provonly.fd'] has a proper `\ProvidesFile' line without date, + for seeing what happens in the date and version columns. + It also was a test for the case that there are fewer characters than a date has, and there is no blank space. \item[`wrong.prv'] has a `\ProvidesFile' line with wrong file name. \item[`empty.f'] just is an empty file. - \item[`utopia.xyz'] is not present at all, you get an error when you remove + \item[`utopia.xyz'] is not present at all, you get an error when you remove the comment mark. \end{description} -Moreover, my `.tex' files have dates, but not version numbers, -so you see what happens then: +Moreover, my `.tex' files have dates, but not version numbers, +so you see what happens then: \vskip\topsep \begin{small}\tt \obeyspaces\obeylines @@ -240,7 +261,7 @@ nicefilelist.sty 2012/03/23 v0.1 \rlap{more file list alignment (UL)} ~ myfilist.sty 2011/01/30 v0.3a \rlap{\cs{listfiles} -- mine only (UL)} ~ readprov.sty 2010/11/27 v0.3 \rlap{file infos without loading (UL)} nicefilelist.tex 2012/03/23 -- \rlap{documenting nicefilelist.sty} -~ provonly.fd -- -- -- -- such +~ provonly.fd -- -- -- -- such ~ wrong.prv * NOT FOUND * ~ empty.f * NOT FOUND * ~ srcfiles.tex 2012/03/23 -- file infos -> SrcFILEs.txt @@ -258,7 +279,7 @@ nicefilelist.tex 2012/03/23 -- \rlap{documenting nicefilelist.sty} In the above example, the 'myfilist' command `\EmptyFileList' was missing---it was not intended there. Usually however, %% is -> was 2012/10/29 -it \emph{is} intended, i.e., the following sequence of +it \emph{is} intended, i.e., the following sequence of lines is wanted: \begin{quotation}\tt\small \expandafter\def\expandafter\{\expandafter{\string{} @@ -269,35 +290,37 @@ lines is wanted: \cs{RequirePackage}\{myfilist\} \cs{EmptyFileList}[] \end{quotation} -Here you also see usage of package option |[r]| for -release numbers and the adjustment +Here you also see usage of package option |[r]| for +release numbers and the adjustment \[|\MFfieldtemplate{f-base}{}|\] -according to Section~\ref{sec:templates}. +according to section~\ref{sec:templates}. -With v0.5, the last three code lines in the snippet above -can be replaced by +With v0.5, the last three code lines in the snippet above +can be replaced by \[|\MaxBaseEmptyList{}[]|\] ---``optionally" without `[]'. -This may save the user from worrying about usage -with 'myfilist'. +This may save the user from worrying about usage +with 'myfilist'. \DontAddQuotes -'nicefilelist' formats file lists nicely -even when base filenames have eight characters at most, +\pagebreak + +'nicefilelist' formats file lists nicely +even when base filenames have eight characters at most, what \LaTeX's original `\listfiles' was made for. v0.6 simplifies this case by a star version of `\MaxBaseEmptyList': \pagebreak[2] \[|\MaxBaseEmptyList*|\] -works like `\MaxBaseEmptyList{nicefile}' (eight characters)---still, -optional `[]' may follow. This feature is demonstrated +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 most recent version of the accompanying `SrcFILEs.txt' contains the following: \bigskip \begingroup \footnotesize @@ -310,24 +333,24 @@ the following: This exemplifies \begin{enumerate} \item \strong{wrapping} of `provonly.fd''s and \ctanpkgref{kvsetkeys}\file{.sty} - file info within the \strong{caption} column + 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 + \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}, + 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 + 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} +\end{enumerate} % -The above `SrcFILEs.txt' has been generated from the following version +The above `SrcFILEs.txt' has been generated from the following version of the \TeX\ script `srcfiles.tex': \bigskip \hrule @@ -341,48 +364,48 @@ of the \TeX\ script `srcfiles.tex': \subsection{Package File Header (Legalese)} \input{nicefilelist.doc} -% \pagebreak %% 2012/09/30 rm. 2012/10/29 +\pagebreak \section{Credits} \begin{enumerate} %% 2012/05/20 - \item It was \ctanpkgauref{muench-hm}{\textsc{Martin M\"unch}} - who pointed out the shortcomings + \item It was \ctanpkgauref{muench-hm}{\textsc{Martin M\"{u}nch}} + who pointed out the shortcomings of 'longnamefilelist' that the present package addresses---thanks! %% 2012/05/20: - \item For \textsc{Alois Kabelschacht}---whose idea in + \item For \textsc{Alois Kabelschacht}---whose idea in TUGboat~\textbf{8}~\#2\footnote{\tugbartref{tb08-2/tb18kabel}{% ``&\expandafter\ vs.\ %% .\ 2012/12/12 - &\let\ and &\def\ in Conditionals + &\let\ and &\def\ in Conditionals and a Generalization of PLAIN's &\loop,"} - TUGboat Vol.~8 (1987), No.~2, pp.~184f. + TUGboat Vol.~8 (1987), No.~2, pp.~184f. (\urlhttpref{tug.org/TUGboat/tb08-2/tb18kabel.pdf})} is used for v0.3---cf.\ the \ctanpkgref{dowith} documentation. + %% 2012/05/18: + \item Another idea from \textsc{Martin M\"{u}nch}: wrapping inside caption column. + Implemented by UL with help of \ctanpkgref{hardwrap} as option |wrap|. \end{enumerate} \section{Missing} % \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} +% \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} - \end{document} VERSION HISTORY 2012/03/20 for v0.1 started -2012/03/22 trying something +2012/03/22 trying something 2012/03/23 for v0.1a without "aligning the dots" etc. -2012/05/18 for v0.30 Legalize -> Legalese; add. TODO "wrapping"; +2012/05/18 for v0.30 Legalize -> Legalese; add. TODO "wrapping"; ref. to `latexfileinfo-pkgs' 2012/05/20 for v0.31 mention Kabelschacht 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 "Mnch", one item less missing, MDabstract, +2012/10/29 for v0.7 "M\"{u}nch", one item less missing, MDabstract, usage restructured and extended 2012/10/30 \listfiles 2012/12/12 for v0.7a vs.\ +2022/12/05 for v0.8a accepts also the new date format \ No newline at end of file diff --git a/Master/texmf-dist/source/latex/nicefilelist/provonly.fd b/Master/texmf-dist/source/latex/nicefilelist/provonly.fd index 52aa2c3604b..357896e8f8f 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/provonly.fd +++ b/Master/texmf-dist/source/latex/nicefilelist/provonly.fd @@ -1,4 +1,4 @@ -%\ProvidesFile{provonly.fd}[2012/03/22 v0.11a such] +%\ProvidesFile{provonly.fd}[2022/12/05 v0.11a such] %\ProvidesFile{provonly.fd}[such] \ProvidesFile{provonly.fd}[no date, no version, but a lot of info, - look how that is wrapped!] + look how that is wrapped!] \ No newline at end of file diff --git a/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex b/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex index 795e982e7d9..359d5bd3231 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex +++ b/Master/texmf-dist/source/latex/nicefilelist/srcfiles.tex @@ -1,5 +1,5 @@ \ProvidesFile{srcfiles.tex} - [2012/10/30 file infos -> SrcFILEs.txt] + [2022/12/05 file infos -> SrcFILEs.txt] \RequirePackage[r,wrap]{nicefilelist} \RequirePackage{filedate} \MaxBaseEmptyList{nicefilelist} @@ -31,4 +31,4 @@ \CheckDateOfPDFmod{nicefilelist.RLS} \CheckDateOfPDFmod{srcfiles.tex} %\stop -\NoBottomLines \ListInfos[SrcFILEs.txt] +\NoBottomLines \ListInfos[SrcFILEs.txt] \ No newline at end of file diff --git a/Master/texmf-dist/source/latex/nicefilelist/wrong.prv b/Master/texmf-dist/source/latex/nicefilelist/wrong.prv index 166454f5c82..33aaae4e5e0 100644 --- a/Master/texmf-dist/source/latex/nicefilelist/wrong.prv +++ b/Master/texmf-dist/source/latex/nicefilelist/wrong.prv @@ -1 +1 @@ -\ProvidesFile{diffname.prv}[2012/03/23 v0.1 wrong] +\ProvidesFile{diffname.prv}[2022/12/05 v0.1 wrong] \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS deleted file mode 100644 index 42734de8957..00000000000 --- a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.RLS +++ /dev/null @@ -1,9 +0,0 @@ -\ProvidesFile{nicefilelist.RLS} %% RELEASE INFO - [{2012/12/12 v0.7a [wrap], `mono' typo, vs.}] - [{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] }] - [2012/05/20 v0.3 Kabelschacht reimplementation] - [2012/03/29 v0.2 reimpl.: much within \string\typeout] - [2012/03/23 v0.1(a) initial] diff --git a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty index 87d66f48860..aa82af7f271 100644 --- a/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty +++ b/Master/texmf-dist/tex/latex/nicefilelist/nicefilelist.sty @@ -1,20 +1,20 @@ \NeedsTeXFormat{LaTeX2e}[1994/12/01] -\ProvidesPackage{nicefilelist}[2012/12/12 v0.7a +\ProvidesPackage{nicefilelist}[2022/12/05 v0.8a 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 -- +%% Copyright (C) 2012 Uwe Lück (deceased June 2020) %% -%% 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. +%% 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.3c or later is part of all distributions of +%% LaTeX version 2005-12-01 or later. +%% %% -%% Please report bugs, problems, and suggestions via %% -%% http://www.contact-ednotes.sty.de.vu %% %% === Alignment Settings === %% \label{sec:templates} @@ -40,6 +40,7 @@ \MFfieldtemplate{f-ext}{tex} \MFfieldtemplate{f-version}{v0.11a} %% We are not supporting version numbers greater than 9 at present---sorry! (TODO) +%% \pagebreak %% %% |\NFLspaceI|, |\NFLspaceII|, and |\NFLspaceIII| %% determine the space between the four @@ -89,7 +90,7 @@ %% %% 2012/10/30: %% \emph{Without} it expands to `\typeout' \newcommand*{\NFL@filerow}{\typeout} -%% ---`\let' does'nt work with 'myfilist''s redefinition of +%% ---`\let' doesn't work with 'myfilist''s redefinition of %% `\typeout'. %% \emph{With} `[wrap]', `\NFL@filerow' applies 'hardwrap''s %% `\HardWrap': @@ -219,9 +220,12 @@ \else \expandafter \@secondoftwo \fi}% %% Dealing with |\NFL@date@or@rest{}| before `\NFL@maybe@three': \def\NFL@date@or@rest##1{% - \NFL@if@date{##1}{##1}{\NFL@no@date@version##1}}% -%% |\NFL@if@date{}{}{}| ... - \def\NFL@if@date##1{\NFL@slashes##1\NFL@xi xyzxyzxyzx\@nil}% + \NFL@if@dateS{##1}{##1}{% + \NFL@if@dateD{##1}{##1}{\NFL@no@date@version##1}% + }% + }% +%% |\NFL@if@dateS{}{}{}| ... slashes + \def\NFL@if@dateS##1{\NFL@slashes##1\NFL@xi xyzxyzxyzx\@nil}% %% |\NFL@slashes| checks that there are slashes at the expected places: \def\NFL@slashes##1##2##3##4##5##6##7##8{% \NFL@ifx@kbl##5/% @@ -230,6 +234,17 @@ %% This especially happens when is empty. %% Digit candidates back: {##1##2##3##4##6##7}}% +%% Since 2017-03-08 \LaTeX\ accepts dates formatted as +%% yyyy-mm-dd instead of yyyy/mm/dd. +%% Currently both formats are valid. +%% Therefore the nicefilelist package needs to +%% also accept ``-" (dash) instead of ``/" (slash) as separator. + \def\NFL@if@dateD##1{\NFL@dashes##1\NFL@xi xyzxyzxyzx\@nil}% + \def\NFL@dashes##1##2##3##4##5##6##7##8{% + \NFL@ifx@kbl##5-% + {\NFL@ifx@kbl##8-\NFL@ten@only\NFL@false}% + \NFL@false + {##1##2##3##4##6##7}}% %% If the word is a date, we now have taken 6 of the 8 digits. %% \[|\NFL@ten@only{}Q|\] %% takes the two remaining and then a thing that should be `Q' @@ -239,7 +254,7 @@ %% Finally checking digits: ##1##2##3\@nnil}% %% |\NFL@digits| is a loop through single tokens: - \def\NFL@digits##1{% + \def\NFL@digits##1{% \NFL@ifx@kbl##1\@nnil\NFL@true{% \NFL@if@digit@code##1<0\NFL@false{% \NFL@if@digit@code##1>9\NFL@false\NFL@digits @@ -267,12 +282,19 @@ %% if contains a version id. Otherwise ```_'" %% is considered a ``caption" only. \def\NFL@maybe@three##1##2{% - \NFL@if@date{##1}% - {##1\NFLspaceII - \NFL@space@split{##2}% - \NFL@maybe@version@rest - \NFL@version@or@rest}% - {\NFL@no@date@version##1 ##2}}% + \NFL@if@dateS{##1}% + {##1\NFLspaceII + \NFL@space@split{##2}% + \NFL@maybe@version@rest + \NFL@version@or@rest}% + {\NFL@if@dateD{##1}% + {##1\NFLspaceII + \NFL@space@split{##2}% + \NFL@maybe@version@rest + \NFL@version@or@rest}% + {\NFL@no@date@version##1 ##2}}}% +%% \pagebreak +%% %% |\NFL@version@or@rest{}|: \def\NFL@version@or@rest##1{% \NFL@if@version{##1}% @@ -353,4 +375,9 @@ v0.7 2012/10/13 "updating" date in \Provides...! sec:test below sec:opt, mentioning `url' 2012/10/30 correcting \NFL@filerow without wrapping, doc.: |...| in sec:opt -v0.7a 2012/12/12 doc. monospace -> monofill +v0.7a 2012/12/12 doc. monospace -> monofill; archived at: + https://web.archive.org/web/20221205210517/ + https://mirror.mwt.me/ctan/install/macros/ + latex/contrib/nicefilelist.tds.zip +v0.8a 2022/12/05 Accepting also dashes instead of dashes in date + (one-time fix by H.-Martin Münch) \ No newline at end of file -- cgit v1.2.3