diff options
author | Hans Hagen <pragma@wxs.nl> | 2018-06-24 21:49:41 +0200 |
---|---|---|
committer | Context Git Mirror Bot <phg42.2a@gmail.com> | 2018-06-24 21:49:41 +0200 |
commit | 00e28123f9c3e7393ea0a49052bc0a3b91a0db4f (patch) | |
tree | 7fecbc23e4f5a783d6d26d58edaf0481d4a17feb /tex/context/base/mkiv/util-str.lua | |
parent | a80891cbf45f9705865ea2774b4e1abdcd36dbf9 (diff) | |
download | context-00e28123f9c3e7393ea0a49052bc0a3b91a0db4f.tar.gz |
2018-06-24 18:36:00
Diffstat (limited to 'tex/context/base/mkiv/util-str.lua')
-rw-r--r-- | tex/context/base/mkiv/util-str.lua | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/tex/context/base/mkiv/util-str.lua b/tex/context/base/mkiv/util-str.lua index f575050ff..576e1f491 100644 --- a/tex/context/base/mkiv/util-str.lua +++ b/tex/context/base/mkiv/util-str.lua @@ -47,7 +47,7 @@ end if not number then number = { } end -- temp hack for luatex-fonts -local stripper = patterns.stripzeros +local stripper = patterns.stripzero local newline = patterns.newline local endofstring = patterns.endofstring local whitespace = patterns.whitespace @@ -368,6 +368,7 @@ end -- automatic %...a 'whatever' (string, table, ...) -- automatic %...A "whatever" (string, table, ...) -- zap %...z skip +-- stripped %...N %...N -- comma/period real %...m -- period/comma real %...M -- formatted float %...k n.m @@ -612,7 +613,7 @@ local sequenced=table.sequenced local formattednumber=number.formatted local sparseexponent=number.sparseexponent local formattedfloat=number.formattedfloat -local stripper=lpeg.patterns.stripzeros +local stripper=lpeg.patterns.stripzero ]] else @@ -640,7 +641,7 @@ else formattednumber = number.formatted, sparseexponent = number.sparseexponent, formattedfloat = number.formattedfloat, - stripper = lpeg.patterns.stripzeros, + stripper = lpeg.patterns.stripzero, } end @@ -914,7 +915,7 @@ end -- return format("tostring(tonumber(a%s) or a%s)",n,n) -- end -local format_N = function() -- strips leading and trailing zeros (also accepts string) +local format_N = function(f) -- strips leading and trailing zeros (also accepts string) n = n + 1 if not f or f == "" then return format("(((a%s > -0.0000000005 and a%s < 0.0000000005) and '0') or ((a%s %% 1 == 0) and format('%%i',a%s)) or lpegmatch(stripper,format('%%.9f',a%s)))",n,n,n,n,n) |