code: function colorRgbHandler( r , g , b ) {
  	var c , rgb ;
  
  	if ( typeof r === 'string' ) {
  		rgb = termkit.hexToRgba( r ) ;
  		r = rgb.r ; g = rgb.g ; b = rgb.b ;
  	}
  
  	if (
  		typeof r !== 'number' || isNaN( r ) ||
  		typeof g !== 'number' || isNaN( g ) ||
  		typeof b !== 'number' || isNaN( b ) ||
  		r < 0 || r > 255 || g < 0 || g > 255 || b < 0 || b > 255
  	) {
  		return '' ;
  	}
  
  	if ( ! this.root.esc.color24bits.na && ! this.root.esc.color24bits.fb ) {
  		// The terminal supports 24bits! Yeah!
  		return this.root.format( this.root.esc.color24bits.on , r , g , b ) ;
  	}
  
  	if ( ! this.root.esc.color256.na && ! this.root.esc.color256.fb ) {
  		// The terminal supports 256 colors
  
  		// Convert to 0..5 range
  		r = Math.floor( r * 6 / 256 + adjustFloor ) ;
  		g = Math.floor( g * 6 / 256 + adjustFloor ) ;
  		b = Math.floor( b * 6 / 256 + adjustFloor ) ;
  
  		c = Math.floor( 16 + r * 36 + g * 6 + b ) ;
  
  		// min:16 max:231
  		//if ( c < 16 || c > 231 ) { return '' ; }
  
  		return this.root.format( this.root.esc.color256.on , c ) ;
  	}
  
  	// The terminal does not support 256 colors, fallback
  	c = this.root.registerForRgb( r , g , b , 0 , 15 ) ;
  	return this.root.format( this.root.esc.color.on , c ) ;
  }
docs: /* Internal/private functions