From 91c33b1407e62540d3dc7e38c92e666dfaa0c7ac Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 15 Jan 2021 21:50:38 +0000 Subject: fcolumn (15jan21) git-svn-id: svn://tug.org/texlive/trunk@57428 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty | 89 +++++++++++++++++++------ 1 file changed, 67 insertions(+), 22 deletions(-) (limited to 'Master/texmf-dist/tex/latex/fcolumn') diff --git a/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty b/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty index 479dff097a2..336bdd7e5d9 100644 --- a/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty +++ b/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% Copyright (C) 2015--2019 by Edgar Olthof +%% Copyright (C) 2015--2021 by Edgar Olthof %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -20,20 +20,21 @@ %% and version 1.3 or later is part of all distributions of %% LaTeX version 1999/12/01 or later. \ProvidesPackage{fcolumn} - [2019/04/24 v1.2 Automatic Currency Package (EHTO)] + [2021/01/14 v1.3 Automatic Currency Package (EHTO)] \NeedsTeXFormat{LaTeX2e} \RequirePackage{array}[v2.4k] + \newif\ifstrict@ccounting \strict@ccountingfalse \DeclareOption{strict}{\strict@ccountingtrue} \ProcessOptions -\newcolumntype{F}[3]{>{\b@fi{#1}{#2}{#3}}r<{\e@fi}} -\newcolumntype{f}{F{.}{,}{3,2}} +\newcolumntype{F}[4]{>{\b@fi{#1}{#2}{#3}{#4}}r<{\e@fi}} +\newcolumntype{f}{F{.}{,}{3,2}{}} \newcount\FCsc@l \FCsc@l=0 \newcount\FCtc@l \FCtc@l=0 \newif\ifwiths@p \def\geldm@cro#1#2{\withs@pfalse \afterassignment\g@ldm@cro\count@#1\relax{#2}} -\def\g@ldm@cro#1\relax#2{\ifnum#2<0 \ifstrict@ccounting (\else -\fi - \count2=-#2 \else\count2=#2 +\def\g@ldm@cro#1\relax#2{\FCform@t{\ifnum#2<0 \ifstrict@ccounting (\else + -\fi \count2=-#2 \else\count2=#2 \fi \count4=\ifx\relax#1\relax 2 \else \@gobble#1\relax\fi \count3=0 @@ -58,7 +59,7 @@ \rlap{)~!}\else\rlap{~!}\fi\else\ifstrict@ccounting \rlap{\phantom{)}~!}\else\rlap{~!}\fi\fi \else \ifnum#2<0 \ifstrict@ccounting\rlap{)}\fi\fi -\fi} +\fi}} \def\g@ldens#1{{\count3=\count2 \count0=#1 \ifnum\count0<1 \count0=3 \fi \loop \ifnum\count0>0 \divide\count2 by 10 \advance\count0 by \m@ne @@ -103,7 +104,9 @@ \ifnum\count0<0 \let\FCs@gn=\m@ne \PackageError{fcolumn}{Register overflow}{Overflow occurred - in fcolumn \number\FCsc@l. Check your table.}% + in fcolumn \number\FCsc@l. You can press now and I'll + proceed,\MessageBreak but check your table. The offending entry is + indicated with an exclamation\MessageBreak mark in the output.}% \else\let\FCs@gn=\@ne \fi \fi @@ -112,12 +115,12 @@ \global\csname FCwd@\romannumeral\FCsc@l\endcsname=\wd0 \fi\unhbox0} \newcount\FC@l \newcount\FC@r -\def\FC@chklist{} \def\setucc@de#1#2\relax{\uccode`\~=`#1 } -\def\b@fi#1#2#3{% +\def\assignform@t#1,#2,#3\end{\def\FCform@t{#1}\def\FCform@tt{#1#2}} +\def\b@fi#1#2#3#4{% \def\sep@xt##1##2\end{\def\sep@rator{{##1}}}% \sep@xt#1\end\def\decim@lmark{{#2}}% -\def\sp@l{#3}\global\advance\FCsc@l by \@ne +\def\sp@l{#3}\assignform@t#4,,\end \global\advance\FCsc@l by \@ne \global\FC@l=0 \global\FC@r=1 \let\FCs@gn=\@ne\relax \setbox0\hbox\bgroup$% \uccode`\~=`0\relax \uppercase{\def~}{\restorem@thcodes \global\FC@l=0} @@ -157,7 +160,7 @@ \mathcode`\8=\mathcode`- \mathcode`\9=\mathcode`- } \def\e@fi{\ifnum\mathcode`\0=\mathcode`- \global\FC@r=\m@ne\fi$\egroup \ifnum\FC@r>0 - \ifnum\FC@r<10 \multiply\FC@r by 10 \fi + \ifnum\FC@r<10 \FC@r=10 \fi \def\i@ts##1##2{\count0=##2} \afterassignment\i@ts\count@\sp@l \loop\ifnum\count0>0 \multiply\FC@l by 10 @@ -207,19 +210,14 @@ \def\@mksumline#1{\gdef\s@ml@ne{}\@lastchclass 4 \@firstamptrue \global\FCsc@l=0 \let\prr@sult=\relax -\@temptokena{#1} -\@tempswatrue +\@temptokena{#1}\@tempswatrue \@whilesw\if@tempswa\fi{\@tempswafalse\the\NC@list}% -\count0\m@ne -\let\the@toks\relax -\prepnext@tok +\count0\m@ne\let\the@toks\relax\prepnext@tok \expandafter \@tfor \expandafter \@nextchar \expandafter :\expandafter =\the\@temptokena \do {\@testpach - \ifcase \@chclass \@classfz - \or \or \@classfii \or - \or \or \or \or \or \or \or \@classfx \fi - \@lastchclass\@chclass}% + \ifcase \@chclass \@classfz \or \or \@classfii \or \or \or \or \or + \or \or \or \@classfx \fi\@lastchclass\@chclass}% \xdef\s@ml@ne{\s@ml@ne\noexpand\aut@check\noexpand\\}} \def\@addtosumline#1{\xdef\s@ml@ne{\s@ml@ne #1}} \def\@classfx{\if@firstamp \@firstampfalse \else \@addtosumline &\fi} @@ -256,7 +254,7 @@ \newdimen\s@mlinesep \def\sumline{\@ifnextchar[\s@mline{\s@mline[2pt]}} \def\s@mline[#1]{\global\s@mlinesep=#1 \s@ml@ne} -\def\prr@sult{$\egroup \let\e@fi=\relax +\def\prr@sult{$\egroup \let\e@fi=\relax \let\FCform@t=\FCform@tt \setbox0=\hbox{$\geldm@cro{\sp@l}{\number\csname FCtot@\romannumeral\FCsc@l\endcsname}$}% \ifdim\wd0>\csname FCwd@\romannumeral\FCsc@l\endcsname @@ -271,6 +269,7 @@ FCtot@\romannumeral\FCsc@l\endcsname}$}% \global\csname FCwd@\romannumeral\FCsc@l\endcsname=\z@ \advance\FCsc@l by \m@ne\repeat} \def\resetsumline{\noalign{\res@tsumline}} +\def\FC@chklist{} \def\aut@check{\ifx\@empty\FC@chklist\relax \ifodd\FCsc@l\else \count0=\@ne \count1=\FCsc@l @@ -294,6 +293,52 @@ FCtot@\romannumeral\FCsc@l\endcsname}$}% \repeat} \def\fre@t#1,#2;#3\end{\count0=#1 \count1=#2 \xdef\FC@chklist{#3}} \def\checkfcolumns#1#2{\noalign{\xdef\FC@chklist{\FC@chklist #1,#2;}}} +\ifx\longtable\@undefined + \PackageWarning{fcolumn}{fcolumn is loaded without longtable. That's + OK, but\MessageBreak if you want to load longtable as well, make sure + \MessageBreak it is done before loading fcolumn} +\fi +\def\LT@array[#1]#2{% + \refstepcounter{table}\stepcounter{LT@tables}% + \if l#1 \LTleft\z@\LTright\fill + \else\if r#1 \LTleft\fill\LTright\z@ + \else\if c#1 \LTleft\fill\LTright\fill + \fi\fi\fi + \let\LT@mcol\multicolumn\let\LT@@tabarray\@tabarray\let\LT@@hl\hline + \def\@tabarray{\let\hline\LT@@hl \LT@@tabarray}% + \let\\\LT@tabularcr\let\tabularnewline\\% + \def\newpage{\noalign{\break}}% + \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}% + \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}% + \let\hline\LT@hline\let\kill\LT@kill\let\caption\LT@caption + \@tempdima\ht\strutbox\let\@endpbox\LT@endpbox + \ifx\extrarowheight\@undefined + \let\@acol\@tabacol\let\@classz\@tabclassz\let\@classiv\@tabclassiv + \def\@startpbox{\vtop\LT@startpbox}\let\@@startpbox + \@startpbox\let\@@endpbox\@endpbox\let\LT@LL@FM@cr\@tabularcr + \else + \advance\@tempdima\extrarowheight \col@sep\tabcolsep + \let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr + \fi + \setbox\@arstrutbox\hbox{\vrule\@height\arraystretch\@tempdima + \@depth\arraystretch\dp\strutbox\@width\z@}% + \let\@sharp##\let\protect\relax + \begingroup + \@mkpream{#2}% + \xdef\LT@bchunk{% + \global\advance\c@LT@chunks\@ne\global\LT@rows\z@ + \setbox\z@\vbox\bgroup\LT@setprevdepth\tabskip\LTleft + \noexpand\halign to\hsize\bgroup\tabskip\z@\@arstrut + \@preamble\tabskip\LTright\cr}% + \endgroup + \begingroup + \@mksumline{#2}% + \endgroup + \res@tsumline + \everycr{\noalign{\global\FCsc@l=0 }}% + \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols + \LT@make@row\m@th\let\par\@empty + \lineskip\z@\baselineskip\z@\LT@bchunk} \endinput %% %% End of file `fcolumn.sty'. -- cgit v1.2.3