From 8dc52a532a6669338dd11500832d8c703dfa9688 Mon Sep 17 00:00:00 2001 From: Landon Curt Noll Date: Mon, 20 Jun 2022 19:20:34 -0700 Subject: [PATCH] Fix comma.cal to avoid leading 0's and tilde's --- cal/comma.cal | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/cal/comma.cal b/cal/comma.cal index 9136ec2..08b68b5 100644 --- a/cal/comma.cal +++ b/cal/comma.cal @@ -138,6 +138,8 @@ define str_comma(x, group, decimal) local frac_str; /* fraction as a string */ local frac_len; /* number of digits in frac_str including leading 0. */ local ret; /* string to return */ + local config_leadzero; /* config("leadzero") to restore */ + local config_tilde; /* config("tilde") to restore */ local i; /* @@ -173,9 +175,15 @@ define str_comma(x, group, decimal) /* * convert digits + * + * Avoid printing ~ and leading zeros for factional part. */ int_str = strprintf("%d", integer); + config_leadzero = config("leadzero", 0); + config_tilde = config("tilde", 0); frac_str = strprintf("%d", fraction); + config("leadzero", config_leadzero),; + config("tilde", config_tilde),; /* * determine number of digits in the integer part @@ -245,7 +253,7 @@ define str_comma(x, group, decimal) * * Skip over the leading 0. in frac_str */ - ret += substr(frac_str, 3, frac_len-2); + ret += substr(frac_str, 2, frac_len-1); } /*