diff options
author | Karl Berry <karl@freefriends.org> | 2017-07-27 21:26:37 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-07-27 21:26:37 +0000 |
commit | 489bf93080c55ee77ca42507502afcbfdec203aa (patch) | |
tree | c4fe2f155d614279d3d821534d46f270786d7769 /Master | |
parent | fe6cc7d43e9608cb5bb2533480000837d7cf4827 (diff) |
bnumexpr (27jul17)
git-svn-id: svn://tug.org/texlive/trunk@44901 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/bnumexpr/README | 43 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/bnumexpr/README.md | 129 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.pdf | bin | 76851 -> 78656 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.tex | 50 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/bnumexpr/bnumexprchanges.tex | 76 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/bnumexpr/bnumexpr.dtx | 104 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/bnumexpr/bnumexpr.ins | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/bnumexpr/bnumexpr.sty | 6 |
8 files changed, 347 insertions, 63 deletions
diff --git a/Master/texmf-dist/doc/latex/bnumexpr/README b/Master/texmf-dist/doc/latex/bnumexpr/README index 74d6c9fbf4e..2d0ac851765 100644 --- a/Master/texmf-dist/doc/latex/bnumexpr/README +++ b/Master/texmf-dist/doc/latex/bnumexpr/README @@ -1,8 +1,8 @@ Source: bnumexpr.dtx -Version: v1.2a, 2015/10/14 (doc: 2015/10/14) +Version: v1.2b, 2017/07/09 (doc: 2017/07/09) Author: Jean-Francois Burnol Info: Expressions with big integers -License: LPPL 1.3c or later +License: LPPL 1.3c @@ -11,38 +11,38 @@ README: USAGE, INSTALLATION, LICENSE Usage -The package bnumexpr allows _expandable_ computations with big integers, -the four infix operators +, -, *, / (which does rounded division), the -power operators ^ or **, the factorial !, the truncated division //, and -its associated modulo /:. +The package bnumexpr allows _expandable_ computations with big integers +and the four infix operators +, -, *, / (which does rounded integer +division) familiar from the \numexpr e-TeX parser. + +Besides extending the scope to arbitrarily big numbers (and having a +more complete syntax, for example -(1) is legal input), it adds the +truncated division operator //, and its associated modulo /:, the power +operator ^ (or equivalently **), and the factorial post-fix operator !. +The space character as well as the underscore character _ both may serve +to optionally separate digits in long numbers, for better readability of +the input. For example: - \thebnumexpr (92874927979^5-3197927979^6)/30!\relax + \thebnumexpr ( 92_874_927_979^5 - 31_9792_7979^6 ) / 30!\relax -outputs -4006240736596543944035189. +expands (in two steps) to -4006240736596543944035189. The \relax ending token is mandatory and will be removed as a result of the evaluation. -The expression parser is scaled-down from \xinttheiiexpr...\relax from -package xintexpr [1], it does not handle boolean operators, conditional -branching, variables and recognizes no functions. +The expression parser is scaled-down from the \xinttheiiexpr...\relax +parser as provided by package xintexpr[1]: it does not handle boolean +operators, dummy or user defined variables, functions, etc... By default the underlying arithmetic macros are the ones provided by -package xintcore [2] (its release 1.2 is required). - -[1] http://www.ctan.org/pkg/xint -[2] http://www.ctan.org/pkg/xint +package xintcore[2] (its release 1.2 is required). bnumexpr has only one option _custom_ which says to not load xintcore, and a command \bnumexprsetup to inform the package which macros to use if not those from xintcore. -This is a breaking release: some options and commands from v1.1 are not -defined anymore (as \bnumexprsetup provides a new interface), and -documents which used them will need updating. - Notice that the possibility not to use the xintcore macros might be removed in the future: perhaps a future release will maintain during computations a private internal representation (especially taylored @@ -102,7 +102,7 @@ Files bnumexpr.tex, bnumexprchanges.tex, README.md may be discarded. License -Copyright (C) 2014-2015 by Jean-Francois Burnol +Copyright (C) 2014-2017 by Jean-Francois Burnol This Work may be distributed and/or modified under the conditions of the LaTeX Project Public License 1.3c. @@ -123,3 +123,6 @@ files bnumexpr.sty, bnumexpr.pdf, bnumexpr.ins, bnumexpr.tex, bnumexprchanges.tex, README.md +[1] http://www.ctan.org/pkg/xint + +[2] http://www.ctan.org/pkg/xint diff --git a/Master/texmf-dist/doc/latex/bnumexpr/README.md b/Master/texmf-dist/doc/latex/bnumexpr/README.md new file mode 100644 index 00000000000..9499d9ff475 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bnumexpr/README.md @@ -0,0 +1,129 @@ + +| Source: bnumexpr.dtx +| Version: v1.2b, 2017/07/09 (doc: 2017/07/09) +| Author: Jean-Francois Burnol +| Info: Expressions with big integers +| License: LPPL 1.3c + +README: [Usage], [Installation], [License] +========================================== + +Usage +----- + +The package `bnumexpr` allows _expandable_ computations with big +integers and the four infix operators `+`, `-`, `*`, `/` (which does +rounded integer division) familiar from the `\numexpr` e-TeX parser. + +Besides extending the scope to arbitrarily big numbers (and having a +more complete syntax, for example `-(1)` is legal input), it adds the +truncated division operator `//`, and its associated modulo `/:`, the +power operator `^` (or equivalently `**`), and the factorial post-fix +operator `!`. The space character as well as the underscore character +`_` both may serve to optionally separate digits in long numbers, for +better readability of the input. + +For example: + + \thebnumexpr ( 92_874_927_979^5 - 31_9792_7979^6 ) / 30!\relax + +expands (in two steps) to `-4006240736596543944035189`. + +The `\relax` ending token is mandatory and will be removed as a +result of the evaluation. + +The expression parser is scaled-down from the `\xinttheiiexpr...\relax` +parser as provided by package xintexpr[^1]: it does not handle boolean +operators, dummy or user defined variables, functions, etc... + +By default the underlying arithmetic macros are the ones provided +by package xintcore[^1] (its release 1.2 is required). + +bnumexpr has only one option _custom_ which says to not load +xintcore, and a command `\bnumexprsetup` to inform the package +which macros to use if not those from xintcore. + +Notice that the possibility not to use the xintcore macros might be +removed in the future: perhaps a future release will maintain during +computations a private internal representation (especially taylored +either for the xintcore macros or new ones which would be included +within `bnumexpr.sty` itself) and the constraints this implies may +render optional use of other macros impossible. + +[^1]: <http://www.ctan.org/pkg/xint> + +Installation +------------ + +Obtain `bnumexpr.dtx` (and possibly, `bnumexpr.ins` and the `README`) +from CTAN: + +> <http://www.ctan.org/pkg/bnumexpr> + +Both `"tex bnumexpr.ins"` and `"tex bnumexpr.dtx"` extract from +`bnumexpr.dtx` the following files: + +`bnumexpr.sty` + : this is the style file. + +`README.md` + : reconstitutes this README. + +`bnumexprchanges.tex` + : lists changes from the initial version. + +`bnumexpr.tex` + : can be used to generate the documentation: + + : - with latex+dvipdfmx: `"latex bnumexpr.tex"` (thrice) then + `"dvipdfmx bnumexpr.dvi"`. + + : Ignore dvipdfmx warnings, but if the pdf file has problems with + fonts (possibly from an old dvipdfmx), use then rather pdflatex. + + : - with pdflatex: `"pdflatex bnumexpr.tex"` (thrice). + + : In both cases files `README.md` and `bnumexprchanges.tex` must + be present in the same repertory. + +without `bnumexpr.tex`: + : `"pdflatex bnumexpr.dtx"` (thrice) extracts all files and + simultaneously generates the pdf documentation. + +Finishing the installation: + + bnumexpr.sty --> TDS:tex/latex/bnumexpr/ + + bnumexpr.dtx --> TDS:source/latex/bnumexpr/ + bnumexpr.ins --> TDS:source/latex/bnumexpr/ + + bnumexpr.pdf --> TDS:doc/latex/bnumexpr/ + README --> TDS:doc/latex/bnumexpr/ + +Files `bnumexpr.tex`, `bnumexprchanges.tex`, `README.md` may be +discarded. + +License +------- + +Copyright (C) 2014-2017 by Jean-Francois Burnol + +| This Work may be distributed and/or modified under the +| conditions of the LaTeX Project Public License 1.3c. +| This version of this license is in + +> <http://www.latex-project.org/lppl/lppl-1-3c.txt> + +| and version 1.3 or later is part of all distributions of +| LaTeX version 2005/12/01 or later. + +This Work has the LPPL maintenance status "author-maintained". + +The Author and Maintainer of this Work is Jean-Francois Burnol. + +This Work consists of the main source file `bnumexpr.dtx` +and the derived files + + bnumexpr.sty, bnumexpr.pdf, bnumexpr.ins, bnumexpr.tex, + bnumexprchanges.tex, README.md + diff --git a/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.pdf b/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.pdf Binary files differindex 578db750660..45a69953cf0 100644 --- a/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.pdf +++ b/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.pdf diff --git a/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.tex b/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.tex new file mode 100644 index 00000000000..909752ddce0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bnumexpr/bnumexpr.tex @@ -0,0 +1,50 @@ +%% +%% This is file `bnumexpr.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bnumexpr.dtx (with options: `drv') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from bnumexpr.tex. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file bnumexpr.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +%% --------------------------------------------------------------- +\def\bnedocdate {2017/07/09}% package bnumexpr documentation date +\def\bnepackdate{2017/07/09}% package bnumexpr date +\def\bneversion {1.2b} % package bnumexpr version +%% --------------------------------------------------------------- +%% The bnumexpr package: Expressions with big integers +%% Copyright (C) 2014-2017 by Jean-Francois Burnol +%% +%% latex bnumexpr.tex (thrice) && dvipdfmx bnumexpr.dvi +%% to produce bnumexpr.pdf +%% +%% or pdflatex bnumexpr.tex (no need to change \Withdvipdfmx toggle, +%% pdf engine will be detected automatically) +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bnumexpr.tex}% +[\bnepackdate\space v\bneversion\space driver file for % + bnumexpr documentation (JFB)]% +\PassOptionsToClass{a4paper,fontsize=11pt}{scrdoc} +\chardef\Withdvipdfmx 1 % +\chardef\NoSourceCode 0 % replace 0 by 1 for not including source code +\input bnumexpr.dtx +%%% Local Variables: +%%% mode: latex +%%% End: +\endinput +%% +%% End of file `bnumexpr.tex'. diff --git a/Master/texmf-dist/doc/latex/bnumexpr/bnumexprchanges.tex b/Master/texmf-dist/doc/latex/bnumexpr/bnumexprchanges.tex new file mode 100644 index 00000000000..a28c1ee08a7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bnumexpr/bnumexprchanges.tex @@ -0,0 +1,76 @@ +%% +%% This is file `bnumexprchanges.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bnumexpr.dtx (with options: `changes') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from bnumexprchanges.tex. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file bnumexpr.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +%% --------------------------------------------------------------- +%% The bnumexpr package: Expressions with big integers +%% Copyright (C) 2014-2017 by Jean-Francois Burnol +%% +\item[1.2b (2017/07/09)] + \begin{itemize} + \item the |_| may be used to separate visually blocks of digits in long + numbers. + \end{itemize} + +\item[1.2a (2015/10/14)] + \begin{itemize} + \item requires \xintcorename |1.2| or later (if not using option |custom|). + \item additions to the syntax: factorial |!|, truncated division + |//|, its associated modulo |/:| and |**| as alternative to |^|. + \item all options removed except |custom|. + \item new command |\bnumexprsetup| which replaces the commands such as + |\bnumexprusesbigintcalc|. + \item the parser is no more limited to numbers with at most 5000 digits. + \end{itemize} + +\item[1.1b (2014/10/28)] + \begin{itemize} + \item README converted to |markdown/pandoc| syntax, + \item the package now loads only |xintcore|, which belongs to |xint| bundle + version |1.1| and extracts from the earlier |xint| package the core arithmetic + operations as used by |bnumexpr|. + \end{itemize} + +\item[1.1a (2014/09/22)] + \begin{itemize} + \item added |l3bigint| option to use experimental \LaTeX3 + package of the same name, + + \item added Changes and Readme sections to the documentation, + + \item better |\BNE_protect| mechanism for use of + |\bnumexpr...\relax| inside an |\edef| (without |\bnethe|). Previous one, + inherited from |xintexpr.sty 1.09n|, assumed that the |\.=<digits>| dummy + control sequence encapsulating the computation result had |\relax| + meaning. But removing this assumption was only a matter of letting + |\BNE_protect| protect two, not one, tokens. This will be backported to + next version of \xintexprname, naturally (done with |xintexpr.sty 1.1|). + \end{itemize} + +\item[1.1 (2014/09/21)] First release. This is down-scaled from the + (development version of) \xintexprname. Motivation came the previous day + from a chat with \textsc{Joseph Wright} over big int status in \LaTeX3. + The |\bnumexpr...\relax| parser can be used on top of big int macros of + one's choice. Functionalities limited to the basic operations. I leave + the power operator |^| as an option. +\endinput +%% +%% End of file `bnumexprchanges.tex'. diff --git a/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.dtx b/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.dtx index 7b7b67c6c23..180eda3beba 100644 --- a/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.dtx +++ b/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.dtx @@ -1,21 +1,21 @@ % -*- coding: iso-latin-1; time-stamp-format: "%02d-%02m-%:y at %02H:%02M:%02S %Z" -*- %<*dtx> -\def\bnedtxtimestamp {Time-stamp: <14-10-2015 at 16:24:00 CEST>} +\def\bnedtxtimestamp {Time-stamp: <26-07-2017 at 23:19:38 CEST>} \iffalse %</dtx> %<*drv> %% --------------------------------------------------------------- -\def\bnedocdate {2015/10/14} % package bnumexpr documentation date -\def\bnepackdate{2015/10/14} % package bnumexpr date -\def\bneversion {1.2a} % package bnumexpr version +\def\bnedocdate {2017/07/09}% package bnumexpr documentation date +\def\bnepackdate{2017/07/09}% package bnumexpr date +\def\bneversion {1.2b} % package bnumexpr version %</drv> %<*readme>-------------------------------------------------------- | Source: bnumexpr.dtx -| Version: v1.2a, 2015/10/14 (doc: 2015/10/14) +| Version: v1.2b, 2017/07/09 (doc: 2017/07/09) | Author: Jean-Francois Burnol | Info: Expressions with big integers -| License: LPPL 1.3c or later +| License: LPPL 1.3c README: [Usage], [Installation], [License] ========================================== @@ -24,22 +24,29 @@ Usage ----- The package `bnumexpr` allows _expandable_ computations with big -integers, the four infix operators `+`, `-`, `*`, `/` (which does -rounded division), the power operators `^` or `**`, the factorial -`!`, the truncated division `//`, and its associated modulo `/:`. +integers and the four infix operators `+`, `-`, `*`, `/` (which does +rounded integer division) familiar from the `\numexpr` e-TeX parser. + +Besides extending the scope to arbitrarily big numbers (and having a +more complete syntax, for example `-(1)` is legal input), it adds the +truncated division operator `//`, and its associated modulo `/:`, the +power operator `^` (or equivalently `**`), and the factorial post-fix +operator `!`. The space character as well as the underscore character +`_` both may serve to optionally separate digits in long numbers, for +better readability of the input. For example: - \thebnumexpr (92874927979^5-3197927979^6)/30!\relax + \thebnumexpr ( 92_874_927_979^5 - 31_9792_7979^6 ) / 30!\relax -outputs `-4006240736596543944035189`. +expands (in two steps) to `-4006240736596543944035189`. The `\relax` ending token is mandatory and will be removed as a result of the evaluation. -The expression parser is scaled-down from `\xinttheiiexpr...\relax` -from package xintexpr[^1], it does not handle boolean operators, -conditional branching, variables and recognizes no functions. +The expression parser is scaled-down from the `\xinttheiiexpr...\relax` +parser as provided by package xintexpr[^1]: it does not handle boolean +operators, dummy or user defined variables, functions, etc... By default the underlying arithmetic macros are the ones provided by package xintcore[^1] (its release 1.2 is required). @@ -48,10 +55,6 @@ bnumexpr has only one option _custom_ which says to not load xintcore, and a command `\bnumexprsetup` to inform the package which macros to use if not those from xintcore. -This is a breaking release: some options and commands from `v1.1` -are not defined anymore (as `\bnumexprsetup` provides a new -interface), and documents which used them will need updating. - Notice that the possibility not to use the xintcore macros might be removed in the future: perhaps a future release will maintain during computations a private internal representation (especially taylored @@ -115,7 +118,7 @@ discarded. License ------- -Copyright (C) 2014-2015 by Jean-Francois Burnol +Copyright (C) 2014-2017 by Jean-Francois Burnol | This Work may be distributed and/or modified under the | conditions of the LaTeX Project Public License 1.3c. @@ -140,10 +143,16 @@ and the derived files %<*!readme> %% --------------------------------------------------------------- %% The bnumexpr package: Expressions with big integers -%% Copyright (C) 2014-2015 by Jean-Francois Burnol +%% Copyright (C) 2014-2017 by Jean-Francois Burnol %% %</!readme> %<*changes>------------------------------------------------------- +\item[1.2b (2017/07/09)] + \begin{itemize} + \item the |_| may be used to separate visually blocks of digits in long + numbers. + \end{itemize} + \item[1.2a (2015/10/14)] \begin{itemize} \item requires \xintcorename |1.2| or later (if not using option |custom|). @@ -196,7 +205,7 @@ and the derived files \NeedsTeXFormat{LaTeX2e} \ProvidesFile{bnumexpr.tex}% [\bnepackdate\space v\bneversion\space driver file for % - bnumexpr documentation (jfB)]% + bnumexpr documentation (JFB)]% \PassOptionsToClass{a4paper,fontsize=11pt}{scrdoc} \chardef\Withdvipdfmx 1 % \chardef\NoSourceCode 0 % replace 0 by 1 for not including source code @@ -534,8 +543,9 @@ Package \bnumname provides |\thebnumexpr...\relax| which is analogous to factorials, truncated division, modulo, and comma separated expressions. Examples: -\noindent\bneshow {1208637867168*(2187917891279+3109197072870)}% -\bneshow {(1380891090-30018902902)*(108319083901-10982903890)}% +\noindent\bneshow {1_208_637_867_168*(2_187_917_891_279+3_109_197_072_870)}% +\bneshow {(13_8089_1090-300_1890_2902)*(1083_1908_3901-109_8290_3890)}% +\bneshow{(92_874_927_979**5-31_9792_7979**6)/30!}% \bneshow {30!/20!/21/22/23/24/25/(26*27*28*29)}% \bneshow {13^50//12^50, 13^50/:12^50}% \bneshow {13^50/12^50, 12^50}% @@ -586,6 +596,9 @@ differences between |\bnumexpr| and |\numexpr|: \item |\bnumexpr -(1+1)\relax| is legal contrarily to |\numexpr -(1+1)\relax| which raises an error. + +\item the |_| is legal within the digits composing a number and is silently + ignored. \end{enumerate} An important thing to keep in mind is that if one has a calculation @@ -602,21 +615,27 @@ boolean operators, square roots and other functions, variables, hexadecimal inputs, etc... it may be slightly faster when handling complicated expressions as it does not have to check so many things. -I recall from the documentation of \xintexprname that there is a -potential impact on the memory of \TeX{} (the string pool, the hash -table) because each intermediate number is stored as a dummy control -sequence name during processing. After thousands of evaluations with -numbers having hundreds of digits parts of the \TeX{} memory will become -saturated and end the \verb?latex|pdflatex? run (but the problem can in theory be -avoided through the use of a ``bigger'' |pdfetex| compiled with enlarged -memory parameters). Anyhow, computations with thousands of digits take -time, and this is probably a more stringent constraint. - -If the same expression needs to be evaluated again and again tens of -thousands of times, it may be necessary to drop use of \bnumname and -either use directly the macros from package \xintcorename, or apply -|\xintNewIIExpr| from package \xintexprname to first construct the -possibly very complicated nested macro. +The documentation of \xintexprname explains that there is an +impact on the memory of \TeX{} (the string pool, the hash table) as each +intermediate number is stored as a dummy control sequence name during +processing. After thousands of evaluations with numbers having hundreds of +digits, parts of the \TeX{} memory can become saturated and end the +\verb?latex|pdflatex? run, but the problem can be avoided via enlarged memory +parameters for |pdftex|, as made possible by modern TeX installations. +Anyhow, computations with thousands of digits take time, and this is probably +a more stringent constraint. + +If the same operations need to be repeated again and again tens of thousands +of times on varying (big) numbers, the memory problem mentioned above may be +avoided by using nested macros rather than |\bnumexpr| or |\xintexpr| +expressions. Utility |\xintNewIIExpr| from package \xintexprname can be used +to construct the possibly very complicated nested macro from a given +expression with the needed operators and usual {\catcode`# 12 |#1, #2, #3, + ...|} placeholders. + +% je voulais dire qu'une telle macro pouvait être préparée séparément, mais il +% faudrait expliquer qu'il faut récupérer son \meaning, et j'ai le problème de +% mes \romannumeral`&&@ maintenant... note 2015/10/27. Donc je laisse tomber. The \eTeX{} extensions are required (this is the default on all modern installations for \verb?latex|pdflatex? and also for \verb?xelatex|lualatex?). @@ -662,6 +681,9 @@ with truncated division |//|. The factorial postfix |!| has highest precedence. The minus signs inherit the precedence level of the previously encountered infix operators. +The underscore |_| can be used to separated digits in long numbers, for +readability of the input. + \section{Option custom, \csh{bnumexprsetup}}\label{sec:options} Package \bnumname needs that some big integer engine provides the macros @@ -758,7 +780,7 @@ The sole package option is |custom|: it tells \bnumname not to load % \subsection{Package identification and catcode setup} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}% -\ProvidesPackage{bnumexpr}[2015/10/14 v1.2a Expressions with big integers (jfB)]% +\ProvidesPackage{bnumexpr}[2017/07/09 v1.2b Expressions with big integers (JFB)]% \edef\BNErestorecatcodes {\catcode`\noexpand\!\the\catcode`\! \catcode`\noexpand\?\the\catcode`\? \catcode`\noexpand\_\the\catcode`\_ @@ -961,6 +983,7 @@ The sole package option is |custom|: it tells \bnumname not to load \def\BNE_scanint_endbycs#1#2\BNE_scanint_d{\endcsname #1}% \def\BNE_scanint_c\string #1\BNE_scanint_d {% + \if _#1\xint_dothis{\expandafter\BNE_scanint_d\xint_gobble_i}\fi \ifcat a#1\xint_dothis{\endcsname*}\fi % tacit multiplication \xint_orthat {\expandafter\endcsname \string}#1% }% @@ -977,6 +1000,7 @@ The sole package option is |custom|: it tells \bnumname not to load \def\BNE_gobz_scanint_endbycs#1#2\BNE_scanint_d{0\endcsname #1}% \def\BNE_gobz_scanint_c\string #1\BNE_scanint_d {% + \if _#1\xint_dothis\BNE_gobz_scanint_d\fi \ifcat a#1\xint_dothis{0\endcsname*#1}\fi % tacit multiplication \if 0#1\xint_dothis\BNE_gobz_scanint_d\fi \xint_orthat {0\expandafter\endcsname \string#1}% @@ -1247,7 +1271,7 @@ The sole package option is |custom|: it tells \bnumname not to load Right bracket \] Circumflex \^ Underscore \_ Grave accent \` Left brace \{ Vertical bar \| Right brace \} Tilde \~} -\CheckSum {861} +\CheckSum {871} \makeatletter\check@checksum\makeatother \Finale %% End of file xint.dtx diff --git a/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.ins b/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.ins index 21f9c79e120..28cd4ffc185 100644 --- a/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.ins +++ b/Master/texmf-dist/source/latex/bnumexpr/bnumexpr.ins @@ -22,7 +22,7 @@ %% in the same archive or directory.) %% --------------------------------------------------------------- %% The bnumexpr package: Expressions with big integers -%% Copyright (C) 2014-2015 by Jean-Francois Burnol +%% Copyright (C) 2014-2017 by Jean-Francois Burnol %% %% tex bnumexpr.ins will extract bnumexpr.sty from bnumexpr.dtx %% diff --git a/Master/texmf-dist/tex/latex/bnumexpr/bnumexpr.sty b/Master/texmf-dist/tex/latex/bnumexpr/bnumexpr.sty index 03e6dad670c..a0b271bb5a0 100644 --- a/Master/texmf-dist/tex/latex/bnumexpr/bnumexpr.sty +++ b/Master/texmf-dist/tex/latex/bnumexpr/bnumexpr.sty @@ -22,10 +22,10 @@ %% in the same archive or directory.) %% --------------------------------------------------------------- %% The bnumexpr package: Expressions with big integers -%% Copyright (C) 2014-2015 by Jean-Francois Burnol +%% Copyright (C) 2014-2017 by Jean-Francois Burnol %% \NeedsTeXFormat{LaTeX2e}% -\ProvidesPackage{bnumexpr}[2015/10/14 v1.2a Expressions with big integers (jfB)]% +\ProvidesPackage{bnumexpr}[2017/07/09 v1.2b Expressions with big integers (JFB)]% \edef\BNErestorecatcodes {\catcode`\noexpand\!\the\catcode`\! \catcode`\noexpand\?\the\catcode`\? \catcode`\noexpand\_\the\catcode`\_ @@ -161,6 +161,7 @@ \def\BNE_scanint_endbycs#1#2\BNE_scanint_d{\endcsname #1}% \def\BNE_scanint_c\string #1\BNE_scanint_d {% + \if _#1\xint_dothis{\expandafter\BNE_scanint_d\xint_gobble_i}\fi \ifcat a#1\xint_dothis{\endcsname*}\fi % tacit multiplication \xint_orthat {\expandafter\endcsname \string}#1% }% @@ -177,6 +178,7 @@ \def\BNE_gobz_scanint_endbycs#1#2\BNE_scanint_d{0\endcsname #1}% \def\BNE_gobz_scanint_c\string #1\BNE_scanint_d {% + \if _#1\xint_dothis\BNE_gobz_scanint_d\fi \ifcat a#1\xint_dothis{0\endcsname*#1}\fi % tacit multiplication \if 0#1\xint_dothis\BNE_gobz_scanint_d\fi \xint_orthat {0\expandafter\endcsname \string#1}% |