You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					47 lines
				
				1.3 KiB
			
		
		
			
		
	
	
					47 lines
				
				1.3 KiB
			| 
											3 years ago
										 | # extsprintf: extended POSIX-style sprintf
 | ||
|  | 
 | ||
|  | Stripped down version of s[n]printf(3c).  We make a best effort to throw an | ||
|  | exception when given a format string we don't understand, rather than ignoring | ||
|  | it, so that we won't break existing programs if/when we go implement the rest | ||
|  | of this. | ||
|  | 
 | ||
|  | This implementation currently supports specifying | ||
|  | 
 | ||
|  | * field alignment ('-' flag), | ||
|  | * zero-pad ('0' flag) | ||
|  | * always show numeric sign ('+' flag), | ||
|  | * field width | ||
|  | * conversions for strings, decimal integers, and floats (numbers). | ||
|  | * argument size specifiers.  These are all accepted but ignored, since | ||
|  |   Javascript has no notion of the physical size of an argument. | ||
|  | 
 | ||
|  | Everything else is currently unsupported, most notably: precision, unsigned | ||
|  | numbers, non-decimal numbers, and characters. | ||
|  | 
 | ||
|  | Besides the usual POSIX conversions, this implementation supports: | ||
|  | 
 | ||
|  | * `%j`: pretty-print a JSON object (using node's "inspect") | ||
|  | * `%r`: pretty-print an Error object | ||
|  | 
 | ||
|  | # Example
 | ||
|  | 
 | ||
|  | First, install it: | ||
|  | 
 | ||
|  |     # npm install extsprintf | ||
|  | 
 | ||
|  | Now, use it: | ||
|  | 
 | ||
|  |     var mod_extsprintf = require('extsprintf'); | ||
|  |     console.log(mod_extsprintf.sprintf('hello %25s', 'world')); | ||
|  | 
 | ||
|  | outputs: | ||
|  | 
 | ||
|  |     hello                     world | ||
|  | 
 | ||
|  | # Also supported
 | ||
|  | 
 | ||
|  | **printf**: same args as sprintf, but prints the result to stdout | ||
|  | 
 | ||
|  | **fprintf**: same args as sprintf, preceded by a Node stream.  Prints the result | ||
|  | to the given stream. |