docs: function ansiCode(style) {
    if (exports.plain) return '';
  
    var colors = {
      black: 0,
      red: 1,
      green: 2,
      yellow: 3,
      blue: 4,
      magenta: 5,
      cyan: 6,
      white: 7
    };
  
    var fgIntensity = {
      normal: 30,
      high: 90
    }
  
    var bgIntensity = {
      normal: 40,
      high: 100
    };
  
    var decoration = {
      bold: '1;',
      underline: '4;'
    };
  
    var foreground_background = style.split(':');
    var foreground = foreground_background[0].split('+');
    var fg = foreground[0];
    var fgStyle = foreground[1];
  
    var background = 0, bg = 0, bgStyle = '';
    if (foreground_background[1]) {
      background = foreground_background[1].split('+');
      bg = background[0];
      bgStyle = background[1];
    }
  
    var code = '\033[';
    var base = fgIntensity.normal;
  
    if (fgStyle) {
      if (fgStyle.indexOf('b') >= 0) code += decoration.bold;
      if (fgStyle.indexOf('u') >= 0) code += decoration.underline;
      base = fgStyle.indexOf('h') >= 0 ? fgIntensity.high : fgIntensity.normal;
    }
    code += (base + colors[fg]).toString() + ';';
  
    var base = 0;
    if (bg) {
      base = (bgStyle && bgStyle === 'h') ? bgIntensity.high : bgIntensity.normal;
      code += (base + colors[bg]).toString() + ';';
    }
  
    code = code.slice(0, -1) + 'm'; // remove last ';'
  
  
    return code;
  }