| /* |
| * format.js: `util.format` enhancement to allow custom formatting parameters. |
| * |
| * (C) 2012, Nodejitsu Inc. |
| * MIT LICENSE |
| * |
| */ |
| |
| var util = require('util'); |
| |
| exports = module.exports = function(str) { |
| var formats = [].slice.call(arguments, 1, 3); |
| |
| if (!(formats[0] instanceof Array && formats[1] instanceof Array) || arguments.length > 3) |
| return util.format.apply(null, arguments); |
| |
| var replacements = formats.pop(), |
| formats = formats.shift(); |
| |
| formats.forEach(function(format, id) { |
| str = str.replace(new RegExp(format), replacements[id]); |
| }); |
| |
| return str; |
| }; |