summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/fcolumn
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-03-12 22:29:57 +0000
committerKarl Berry <karl@freefriends.org>2015-03-12 22:29:57 +0000
commitcf2cbc512e7c8f18c61eb6604adc68155cf468a3 (patch)
tree4067b822d8e8b264f26a72bb756bde0918fab843 /Master/texmf-dist/tex/latex/fcolumn
parent9ee15011dd21d634837d8a1f8b76f0378fcabcf8 (diff)
fcolumn (12mar15)
git-svn-id: svn://tug.org/texlive/trunk@36499 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/fcolumn')
-rw-r--r--Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty189
1 files changed, 189 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty b/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty
new file mode 100644
index 00000000000..f0c7225d080
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/fcolumn/fcolumn.sty
@@ -0,0 +1,189 @@
+%%
+%% This is file `fcolumn.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% fcolumn.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2015 by Edgar Olthof
+%%
+%% This file may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.2 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.2 or later is part of all distributions of
+%% LaTeX version 1999/12/01 or later.
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{fcolumn}
+ [2015/03/07 v1.0 automatic currency package]
+\RequirePackage{array}
+\newcolumntype{F}[3]{>{\b@fi{#1}{#2}{#3}}r<{\e@fi}}
+\newcolumntype{f}{F{.}{,}{3,2}}
+\newcount\FCsc@l \FCsc@l0
+\newcount\FCtc@l \FCtc@l0
+\newcount\g@lda
+\newcount\g@ldb
+\newif\ifwiths@p
+\newif\ifstrictaccounting \strictaccountingfalse
+\def\geldm@cro#1#2{\withs@pfalse
+ \afterassignment\g@ldm@cro\count@#2\relax{#1}}
+\def\g@ldm@cro#1\relax#2{%
+ \ifnum#2<0 \ifstrictaccounting(\else-\fi\g@lda=-#2 \else\g@lda=#2 \fi
+ \ifx\relax#1\relax\g@ldb=2 \else \g@ldb\@gobble#1\relax\fi
+ \loop
+ \ifnum\g@ldb>0 \divide\g@lda by 10 \advance\g@ldb by \m@ne
+ \repeat
+ \g@ldens{\the\count@}%
+ \ifx\relax#1\relax\g@ldb=2 \else \g@ldb\@gobble#1\relax\fi
+ \ifnum\g@ldb>0\decim@lmark
+ \ifnum#2>0 \g@lda=-#2\else\g@lda=#2 \fi
+ \loop
+ \ifnum\g@ldb>0 \divide\g@lda by 10 \advance\g@ldb by \m@ne
+ \repeat
+ \ifx\relax#1\relax\g@ldb=2 \else \g@ldb\@gobble#1\relax\fi
+ \loop
+ \ifnum\g@ldb>0 \multiply\g@lda by 10 \advance\g@ldb by \m@ne
+ \repeat
+ \ifnum#2>0 \advance\g@lda by #2
+ \else \advance\g@lda by -#2
+ \fi
+ \ifx\relax#1\relax\g@ldb=2 \else \g@ldb\@gobble#1\relax\fi
+ \zerop@d{\number\g@ldb}{\number\g@lda}%
+ \fi
+ \ifnum#2<0 \ifstrictaccounting\rlap{)}\fi\fi}
+\def\g@ldens#1{{\g@ldb=\g@lda \count0=#1
+ \loop
+ \ifnum\count0>0
+ \divide\g@lda by 10
+ \advance\count0 by \m@ne
+ \repeat
+ \ifnum\g@lda>0 \g@ldens{#1}\fi
+ \count0=#1
+ \loop
+ \ifnum\count0>0
+ \multiply\g@lda by 10
+ \advance\count0 by \m@ne
+ \repeat
+ \g@lda=-\g@lda
+ \advance\g@lda by \g@ldb \du@zendprint{#1}}}
+\def\du@zendprint#1{\ifwiths@p\sep@rator\zerop@d{#1}{\number\g@lda}%
+ \else\zerop@d{1}{\number\g@lda}\fi
+ \global\withs@ptrue}
+\def\zerop@d#1#2{{\count0=1 \count1=#2
+ \loop
+ \divide \count1 by 10
+ \ifnum\count1>0 \advance\count0 by 1
+ \repeat
+ \loop
+ \ifnum\count0<#1 0\advance\count0 by 1
+ \repeat
+ \number#2}}
+\def\zetg@ld#1#2{\global\advance\csname
+ FCtot@\romannumeral\FCsc@l\endcsname by #1
+ \setbox0=\hbox{$\geldm@cro{#1}{#2}$}%
+ \ifdim\wd0>\csname FCwd@\romannumeral\FCsc@l\endcsname
+ \global\csname FCwd@\romannumeral\FCsc@l\endcsname=\wd0
+ \fi\unhbox0}
+\def\check#1#2{\noalign{\ifnum\csname FCtot@\romannumeral#1\endcsname=
+ \csname FCtot@\romannumeral#2\endcsname\else
+ \message{Columns #1 and #2 do not balance!}\fi}}
+\newcount\bedr@g
+\def\b@fi#1#2#3{\def\sep@rator{{#1}}\def\decim@lmark{{#2}}%
+ \let\ignorespaces=\@empty \def\sp@l{#3}\global\advance\FCsc@l by \@ne
+ \bedr@g=}
+\def\e@fi{\relax \zetg@ld{\number\bedr@g}{\sp@l}}
+\def\@xarraycr{\@ifnextchar [%
+ \@argarraycr {\ifnum 0=`{}\fi \cr\noalign{\global\FCsc@l=0 }}}
+\def\@array[#1]#2{%
+ \@tempdima \ht \strutbox
+ \advance \@tempdima by\extrarowheight
+ \setbox \@arstrutbox \hbox{\vrule
+ \@height \arraystretch \@tempdima
+ \@depth \arraystretch \dp \strutbox
+ \@width \z@}%
+ \begingroup
+ \@mkpream{#2}%
+ \xdef\@preamble{\noexpand \ialign \@halignto
+ \bgroup \@arstrut \@preamble
+ \tabskip \z@ \cr}%
+ \endgroup
+ \begingroup
+ \@mksumline{#2}%
+ \endgroup
+ \res@tsumline
+ \@arrayleft
+ \if #1t\vtop \else \if#1b\vbox \else \vcenter \fi \fi
+ \bgroup
+ \let \@sharp ##\let \protect \relax
+ \lineskip \z@
+ \baselineskip \z@
+ \m@th
+ \let\\\@arraycr \let\tabularnewline\\\let\par\@empty \@preamble}
+\let\@@array=\@array
+\def\@mksumline#1{\gdef\sumline{}
+ \@lastchclass 4 \@firstamptrue
+ \global\FCsc@l=\z@
+ \let\prr@sult=\relax
+ \@temptokena{#1}
+ \@tempswatrue
+ \@whilesw\if@tempswa\fi{\@tempswafalse\the\NC@list}%
+ \count@\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}%
+ \xdef\sumline{\sumline\noexpand\\}}
+\def\@addtosumline#1{\xdef\sumline{\sumline #1}}
+\def\@classfx{\if@firstamp \@firstampfalse \else \@addtosumline &\fi}
+\def\@classfz{\ifnum\@chnum<\thr@@ \@classfx\fi}
+\def\@classfii{\ifnum\@lastchclass=8
+ \edef\t@stm{\expandafter\string\@nextchar}
+ \edef\t@stn{\string\e@fi}
+ \ifx\t@stm\t@stn
+ \@addtosumline{\prr@sult}
+ \global\advance\FCsc@l by \@ne
+ \ifnum\FCsc@l>\FCtc@l
+ \expandafter\ifx\csname FCtot@\romannumeral\FCsc@l\endcsname\relax
+ \expandafter\newcount\csname FCtot@\romannumeral\FCsc@l\endcsname
+ \else
+ \message{\noexpand\FCtot@\romannumeral\FCsc@l already exists.}
+ \fi
+ \expandafter\ifx\csname FCwd@\romannumeral\FCsc@l\endcsname\relax
+ \expandafter\newdimen\csname FCwd@\romannumeral\FCsc@l\endcsname
+ \global\FCtc@l=\FCsc@l
+ \else
+ \message{\noexpand\FCwd@\romannumeral\FCsc@l already exists.}
+ \fi
+ \fi
+ \fi
+\fi}
+\def\leeg{0\relax \let\e@fi=\relax}
+\def\prr@sult{\leeg
+ \setbox0=\hbox{$\geldm@cro{\number\csname
+ FCtot@\romannumeral\FCsc@l\endcsname}{\sp@l}$}%
+ \ifdim\wd0>\csname FCwd@\romannumeral\FCsc@l\endcsname
+ \global\csname FCwd@\romannumeral\FCsc@l\endcsname=\wd0
+ \fi
+ \vbox{\hbox to \csname
+ FCwd@\romannumeral\FCsc@l\endcsname{\hrulefill}\vskip2pt
+ \hbox to \csname
+ FCwd@\romannumeral\FCsc@l\endcsname{\hfil\unhbox0}}}
+\def\res@tsumline{\FCsc@l\FCtc@l \loop\ifnum\FCsc@l>0
+ \global\csname FCtot@\romannumeral\FCsc@l\endcsname=0
+ \global\csname FCwd@\romannumeral\FCsc@l\endcsname=0pt
+ \advance\FCsc@l by \m@ne \repeat}
+\def\resetsumline{\noalign{\res@tsumline}}
+\endinput
+%%
+%% End of file `fcolumn.sty'.