added g as valid string format value
authoroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Tue, 19 Nov 2002 22:33:09 +0000 (22:33 +0000)
committeroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Tue, 19 Nov 2002 22:33:09 +0000 (22:33 +0000)
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@168 a5681a0c-68f1-0310-ab6d-d61299d08faa

doc/rrdgraph-old.pod
doc/rrdgraph_graph.src
src/rrd_graph.c

index b464c42..eb0456f 100644 (file)
@@ -399,7 +399,7 @@ message but not a I<vname> fourtytwo that's always equal to 42.
 
 Calculate the chosen consolidation function I<CF> over the data-source
 variable I<vname> and C<printf> the result to stdout using I<format>.
-In the I<format> string there should be a '%lf' or '%le' marker in the
+In the I<format> string there should be a '%lf', '%le' or'%lg' marker in the
 place where the number should be printed.
 
 If an additional '%s' is found AFTER the marker, the value will be scaled
index 5b163d4..aa116f5 100644 (file)
@@ -85,15 +85,21 @@ B<%%> just prints a literal '%' character
 
 =item *
 
-B<%#.#le> (where # is an optional number) prints like 1.2346e+04
+B<%#.#le> prints like 1.2346e+04. Optional numbers # are field width and
+decimal precision
 
 =item *
 
-B<%#.#lf> prints like 12345.6789
+B<%#.#lf> prints like 12345.6789, with optional field width and precision
 
 =item *
 
-B<%s> place this after B<%le> or B<%lf>.  This will be replaced by the
+B<%#.#lg> prints like 12345.6789, with optional field width and number of
+significant digits
+
+=item *
+
+B<%s> place this after B<%le>, B<%lf> or B<%lg>. This will be replaced by the
 appropriate SI magnitude unit and the value will be scaled
 accordingly (123456 -> 123.456 k)
 
index 8d21d70..b895225 100644 (file)
@@ -3064,9 +3064,9 @@ int bad_format(char *fmt) {
                  if (*ptr == '.') ptr++;
                  while (*ptr >= '0' && *ptr <= '9') ptr++;
   
-                 /* Either 'le' or 'lf' must follow here */
+                 /* Either 'le', 'lf' or 'lg' must follow here */
                  if (*ptr++ != 'l') return 1;
-                 if (*ptr == 'e' || *ptr == 'f') ptr++;
+                 if (*ptr == 'e' || *ptr == 'f' || *ptr == 'g') ptr++;
                  else return 1;
                  n++;
             }