From: Jon Harper Date: Sun, 26 Feb 2017 14:15:47 +0000 (+0100) Subject: formatting: fix missing '+' for %+e with negative exponent X-Git-Tag: 0.98~839 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=e1df9df735e0e2300e70494743327e141f729a24 formatting: fix missing '+' for %+e with negative exponent --- diff --git a/basis/formatting/formatting-tests.factor b/basis/formatting/formatting-tests.factor index 8433ac5fe7..0b1ff20a97 100755 --- a/basis/formatting/formatting-tests.factor +++ b/basis/formatting/formatting-tests.factor @@ -39,6 +39,7 @@ IN: formatting.tests { " +1.0E+01" } [ 10 "%+10.1E" sprintf ] unit-test { "-001.0E+01" } [ -10 "%+010.1E" sprintf ] unit-test { "+001.0E+01" } [ 10 "%+010.1E" sprintf ] unit-test +{ "+001.0E-01" } [ 0.1 "%+010.1E" sprintf ] unit-test { "ff" } [ 0xff "%x" sprintf ] unit-test { "FF" } [ 0xff "%X" sprintf ] unit-test diff --git a/basis/formatting/formatting.factor b/basis/formatting/formatting.factor index f98d1a04e3..5d811f7803 100644 --- a/basis/formatting/formatting.factor +++ b/basis/formatting/formatting.factor @@ -47,7 +47,7 @@ pad-align = ("-")? => [[ \ pad-tail \ pad-head ? ]] pad-width = ([0-9])* => [[ >digits ]] pad = pad-align pad-char pad-width => [[ >quotation dup first 0 = [ drop [ ] ] when ]] -sign_ = [+ ] => [[ '[ dup CHAR: - swap index [ _ prefix ] unless ] ]] +sign_ = [+ ] => [[ '[ dup first CHAR: - = [ _ prefix ] unless ] ]] sign = (sign_)? => [[ [ ] or ]] width_ = "." ([0-9])* => [[ second >digits '[ _ short head ] ]]