summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/fcolumn
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-01-15 21:50:38 +0000
committerKarl Berry <karl@freefriends.org>2021-01-15 21:50:38 +0000
commit91c33b1407e62540d3dc7e38c92e666dfaa0c7ac (patch)
tree211c007a01c74c3ae7b3903f9d9354e50322d682 /Master/texmf-dist/tex/latex/fcolumn
parentbb1287249aff0088d92988cb8bb8af4849f12381 (diff)
fcolumn (15jan21)
git-svn-id: svn://tug.org/texlive/trunk@57428 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/fcolumn')
-rw-r--r--Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty89
1 files changed, 67 insertions, 22 deletions
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 <enter> 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'.