text: var Transform = require('../../common/transform.js'),
      color = require('./util.js');
      colors = { debug: ['gray'], info: ['purple' ], warn: [ 'yellow', true ], error: [ 'red', true ] },
      logger = new Transform();
  
  logger.write = function(name, level, args) {
    var fn = console.log;
    if(level != 'debug' && console[level]) {
      fn = console[level];
    }
  
    var subset = [], i = 0;
    if(level != 'info') {
      for(; i < args.length; i++) {
        if(typeof args[i] != 'string') break;
      }
      fn.apply(console, [ '%c'+name +' '+ args.slice(0, i).join(' '), color.apply(color, colors[level]) ].concat(args.slice(i)));
    } else {
      fn.apply(console, [ '%c'+name, color.apply(color, colors[level]) ].concat(args));
    }
  };
  
  // NOP, because piping the formatted logs can only cause trouble.
  logger.pipe = function() { };
  
  module.exports = logger;
  