twitst4tz

twitter statistics web application
Log | Files | Refs | README | LICENSE

README.md (1357B)


      1 # extsprintf: extended POSIX-style sprintf
      2 
      3 Stripped down version of s[n]printf(3c).  We make a best effort to throw an
      4 exception when given a format string we don't understand, rather than ignoring
      5 it, so that we won't break existing programs if/when we go implement the rest
      6 of this.
      7 
      8 This implementation currently supports specifying
      9 
     10 * field alignment ('-' flag),
     11 * zero-pad ('0' flag)
     12 * always show numeric sign ('+' flag),
     13 * field width
     14 * conversions for strings, decimal integers, and floats (numbers).
     15 * argument size specifiers.  These are all accepted but ignored, since
     16   Javascript has no notion of the physical size of an argument.
     17 
     18 Everything else is currently unsupported, most notably: precision, unsigned
     19 numbers, non-decimal numbers, and characters.
     20 
     21 Besides the usual POSIX conversions, this implementation supports:
     22 
     23 * `%j`: pretty-print a JSON object (using node's "inspect")
     24 * `%r`: pretty-print an Error object
     25 
     26 # Example
     27 
     28 First, install it:
     29 
     30     # npm install extsprintf
     31 
     32 Now, use it:
     33 
     34     var mod_extsprintf = require('extsprintf');
     35     console.log(mod_extsprintf.sprintf('hello %25s', 'world'));
     36 
     37 outputs:
     38 
     39     hello                     world
     40 
     41 # Also supported
     42 
     43 **printf**: same args as sprintf, but prints the result to stdout
     44 
     45 **fprintf**: same args as sprintf, preceded by a Node stream.  Prints the result
     46 to the given stream.