diff options
Diffstat (limited to 'macros/luatex/latex/luatruthtable/luatruthtable.sty')
-rw-r--r-- | macros/luatex/latex/luatruthtable/luatruthtable.sty | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/macros/luatex/latex/luatruthtable/luatruthtable.sty b/macros/luatex/latex/luatruthtable/luatruthtable.sty index 7f57bbe254..c839b98700 100644 --- a/macros/luatex/latex/luatruthtable/luatruthtable.sty +++ b/macros/luatex/latex/luatruthtable/luatruthtable.sty @@ -1,9 +1,9 @@ -% luaset package -% version 1.1 +% The luatruthtable package +% Authors: Chetan Shirore and Ajit Kumar +% Version 1.2, Date=15-Aug-2023 % Licensed under LaTeX Project Public License v1.3c or later. The complete license text is available at http://www.latex-project.org/lppl.txt. -%Authors: Chetan Shirore and Dr. Ajit Kumar -\ProvidesPackage{luatruthtable}[1.1] +\ProvidesPackage{luatruthtable}[1.2] \RequirePackage{xkeyval} \RequirePackage{amsmath} \RequirePackage{luacode} @@ -263,6 +263,8 @@ local res="" local sep=" & " trtext = trtext or "$T$" fltext = fltext or "$F$" +local str0 = string.gsub(str0, "%s+", "") +local str = string.gsub(str, "%s+", "") for variables in string.gmatch(str0, '([^,]+)') do vars[countvars] = variables countvars = countvars + 1 @@ -276,16 +278,14 @@ end local n =#vars for i =1,2^n do itr = toBinary(i,n) - for j=1, #itr do names[vars[j]] = itr[j] end - for k = 1, #expr do res= res ..sep.. load("return " .. expr[k],nil,"t",names)() end if i~=2^n then -eval = eval .. table.concat(toBinary(i,n)," & ") .. res .."\\\\" +eval = table.concat(toBinary(i,n)," & ") .. res .."\\\\" ..eval else eval = eval .. table.concat(toBinary(i,n)," & ") .. res end @@ -305,14 +305,14 @@ end \end{luacode*} % ========= KEY DEFINITIONS ========= -\define@key{luatruthtable}{trtext}{\def\luatrtbl@trtext{#1}} -\define@key{luatruthtable}{fltext}{\def\luatrtbl@fltext{#1}} +\define@key{luatruthtable}{trtext}{\def\luatrtbl@trtext{#1}}% +\define@key{luatruthtable}{fltext}{\def\luatrtbl@fltext{#1}}% % ========= KEY DEFAULTS ========= \setkeys{luatruthtable}{trtext=$T$,fltext=$F$}% % ========= Defining Command ========= \newcommand{\luaTruthTable}[3][]{% - \setkeys{luatruthtable}{#1} + \setkeys{luatruthtable}{#1}% \directlua{tex.sprint(truthTable(\luastringN{#2},\luastringN{#3},'\luatrtbl@trtext','\luatrtbl@fltext'))}} % \endinput |