/* globals ansispan:true */ ansispan = function(str) { str = str.replace(/>/g, '>'); str = str.replace(/`; // // `\033[Xm` == `\033[0;Xm` sets foreground color to `X`. // str = str.replace( new RegExp(`\0o33\\[${ ansi }m`, 'g'), span ).replace( new RegExp(`\0o33\\[0;${ ansi }m`, 'g'), span ); }); // // `\033[1m` enables bold font, `\033[22m` disables it // str = str.replace(/\033\[1m/g, '').replace(/\033\[22m/g, ''); // // `\033[3m` enables italics font, `\033[23m` disables it // str = str.replace(/\033\[3m/g, '').replace(/\033\[23m/g, ''); str = str.replace(/\033\[m/g, ''); str = str.replace(/\033\[0m/g, ''); return str.replace(/\033\[39m/g, ''); }; ansispan.foregroundColors = { '30': 'gray', '31': 'red', '32': 'lime', '33': 'yellow', '34': '#6B98FF', '35': '#FF00FF', '36': 'cyan', '37': 'white' };