super powered
printf
&util.format
equivalent string formatting, with locals & chainable modifiers.
Install
npm install --production --save furmat
API
furmat([options])
- options (
Object
, optional): configuration object- chalk (
Boolean
, optional): enable/disable Chalk modifiers Default: true - locals (
Object
, optional): locals object (key => value
pairs) - modifers (
Object
, optional): modifiers object (name => function
pairs)
- chalk (
Returns: Function
The string formatting function.
const format = console
the above example should output:
Hello A
The returned function behaves in an identical manner to util.format
, with additional abilities to process locals
& modifiers
The first argument is a string that contains zero or more placeholders. Each placeholder is replaced with the converted value from its corresponding argument. Supported placeholders are:
%s
- String.%d
- Number (both integer and float).%j
- JSON. Replaced with the string'[Circular]'
if the argument contains circular references.%
- single percent sign ('%'). This does not consume an argument.
If the placeholder does not have a corresponding argument, the placeholder is not replaced.
// 'foo:%s:bar'
If there are more arguments than placeholders, the extra arguments are converted to strings with util.inspect()
and these strings are concatenated, delimited by a space.
// 'foo:bar baz'
you can add predefined locals
and modify placeholders & locals by attaching modifiers
:
Modifiers
Modifiers are references to named functions meant to modify the placeholder,
example
const format =
output
THIS WILL BECOME UPPER CASED | this will become lower cased
you can also chain modifiers:
output
A | b
Chalk Styles Modifiers
Fürmat includes Chalk Styles modifiers, which are useful for console logging. See oh-my-log
.
example
const format =
you can disable the Chalk modifiers by simply setting the chalk
option to false:
const format =
Locals
Locals are named variable references that behave in an identical manner to placeholders, but with a pre-defined value set at the time of creating the furmat
function
example
const format =
output
Will the real Slim Shady please stand up?
you can also attach modifiers
to locals
:
const format =
output
Will the real slim shady PLEASE STAND UP?
License: ISC • Copyright: ahmadnassri.com • Github: @ahmadnassri • Twitter: @ahmadnassri