diff options
author | Karl Berry <karl@freefriends.org> | 2013-02-27 00:27:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-02-27 00:27:25 +0000 |
commit | ea3dd0f8322415638a00cbf860ff0cbc5bd00e9b (patch) | |
tree | e7c427eee61bac7a17479444851b6b0b5fafd205 /Master/texmf-dist/tex | |
parent | 9f7c646a94369523ce7ca5a77e110c543abaf9c1 (diff) |
xlop (26feb13)
git-svn-id: svn://tug.org/texlive/trunk@29236 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/xlop/xlop.tex | 88 |
1 files changed, 78 insertions, 10 deletions
diff --git a/Master/texmf-dist/tex/generic/xlop/xlop.tex b/Master/texmf-dist/tex/generic/xlop/xlop.tex index 48d52947c01..057cea4540a 100644 --- a/Master/texmf-dist/tex/generic/xlop/xlop.tex +++ b/Master/texmf-dist/tex/generic/xlop/xlop.tex @@ -1,5 +1,5 @@ -\def\fileversion{0.24} -\def\filedate{2011/04/15} +\def\fileversion{0.25} +\def\filedate{2013/02/26} %% %% xlop.tex: %% eXtra Large OPeration macros for Generic TeX. @@ -154,6 +154,9 @@ \def\op@string@last{last} \def\op@string@left{left} \def\op@string@none{none} +% add 0.25 +\def\op@string@None{None} +% end add 0.25 \def\op@string@nonzero{nonzero} \def\op@string@right{right} \def\op@string@russian{russian} @@ -331,11 +334,18 @@ \let\op@displayintermediary\op@string@nonzero \else\ifx\@tempa\op@string@none \let\op@displayintermediary\op@string@none +% add 0.25 + \else\ifx\@tempa\op@string@None + \let\op@displayintermediary\op@string@None +% end 0.25 \else - \op@error{Parameter style accept only `all', `none', and `nonzero'.^^J +% modification 0.25 + \op@error{Parameter style accept only `all', `none', `None', and + `nonzero'.^^J \space Here, the value is `#1'}% - {Value must be `all', `none', or `nonzero'}% - \fi\fi\fi + {Value must be `all', `none', `None', or `nonzero'}% + \fi\fi\fi\fi +% end modification 0.25 } \newif\ifop@lastcarry \def\pOP@lastcarry#1{\edef\@tempa{#1}% @@ -915,7 +925,7 @@ \xdef\op@@export{\op@decimalsepsymbol\op@@export}% % add 0.24 \fi - % en add 0.24 + % end add 0.24 \op@count@i=0 \loop \ifnum\op@count@i<\OP@tmp@i @@ -996,6 +1006,36 @@ \@namexdef{OP@#1@w}{\the\op@count@i}% \endgroup } +% add 0.25 +\def\op@unzeroleft#1{% + \begingroup + \op@count@z=\@nameuse{OP@#1@i}\relax + \op@count@i=\@nameuse{OP@#1@w}\relax + \op@count@ii=\@nameuse{OP@#1@i}\relax + \loop + \ifnum\op@count@z>1\relax + \ifnum\@nameuse{OP@#1@\the\op@count@i}=0\relax + \advance\op@count@ii by-1 + \else + \op@count@z=0 + \fi + \advance\op@count@z by-1 + \advance\op@count@i by-1 + \repeat + \@namexdef{OP@#1@i}{\the\op@count@ii}% + \ifnum\@nameuse{OP@#1@i}=1\relax + \ifnum\@nameuse{OP@#1@d}=0\relax + \ifnum\@nameuse{OP@#1@1}=0 + \@namexdef{OP@#1@s}{0}% + \fi + \fi + \fi + \op@count@i=\@nameuse{OP@#1@i}\relax + \advance\op@count@i by\@nameuse{OP@#1@d}\relax + \@namexdef{OP@#1@w}{\the\op@count@i}% + \endgroup +} +% end add 0.25 \def\opcopy#1#2{% \op@split{#1}{a}% \ifop@error @@ -1596,6 +1636,11 @@ \op@unzero{b}% \fi \op@mul{a}{b}{r}% +% add 0.25 + \ifop@deletezero + \op@unzeroleft{r}% + \fi +% end add 0.25 \ifnum\OP@b@i=1 \expandafter\if\csname OP@b@\OP@b@w\endcsname0 \ifnum\OP@r@i>1 @@ -1633,6 +1678,12 @@ \op@againfalse \fi \fi +% add 0.25 + \ifx\op@displayintermediary\op@string@None + \op@againfalse +%% \op@unzero{r}% + \fi +% end add 0.25 \global\op@count@z=0\relax \ifop@again \op@count@ii=0\relax @@ -2260,8 +2311,14 @@ \advance\op@count@i by1 \hbox{% \ifx\op@displayintermediary\op@string@none\else - \kern\opcolumnwidth - \advance\op@count@i by1 +% add 0.25 + \ifx\op@displayintermediary\op@string@None\else +% end add 0.25 + \kern\opcolumnwidth + \advance\op@count@i by1 +% add 0.25 + \fi +% end add 0.25 \fi \ifop@dividendbridge \vrule width0pt depth0pt height\oplineheight @@ -2280,6 +2337,10 @@ \op@count@ii=1\relax \ifx\op@displayintermediary\op@string@none \advance\op@count@i by-1\relax +% add 0.25 + \else\ifx\op@displayintermediary\op@string@None + \advance\op@count@i by-1\relax +% end add 0.25 \else \op@count@iv=\@nameuse{OP@q@\the\op@count@z}\relax \op@count@iii=\op@count@i @@ -2298,7 +2359,9 @@ \op@display{intermediarystyle.1}% {T\the\op@count@iv}% }% - \fi +% modif 0.25 + \fi\fi +% end modif 0.25 {\global\setbox4=\hbox{}\setbox4=\box4}% \loop \advance\op@count@z by-1 @@ -2353,6 +2416,9 @@ }% \advance\op@count@ii by1\relax \ifx\op@displayintermediary\op@string@none +% add 0.25 + \else\ifx\op@displayintermediary\op@string@None +% end add 0.25 \else \op@count@iii=\op@count@i \advance\op@count@iii by-\@nameuse{OP@T\the\op@count@iv @w}% @@ -2379,7 +2445,9 @@ \op@display{intermediarystyle.\the\op@count@ii}% {T\the\op@count@iv}% }% - \fi +% modif 0.25 + \fi\fi +% end modif 0.25 \fi \repeat \advance\op@count@i by-1 |