Sha256: c9ab3dcb11850a3eede7291bf63e73d01139260c7d8f72e378171e66b7db0a19
Contents?: true
Size: 1.56 KB
Versions: 3
Compression:
Stored size: 1.56 KB
Contents
var ansispan = function (str) { Object.keys(ansispan.foregroundColors).forEach(function (ansi) { // // `\033[Xm` == `\033[0;Xm` sets foreground color to `X`. // str = str.replace( new RegExp('\033\\[' + ansi + 'm', 'g'), '<span style="color: ' + ansispan.foregroundColors[ansi] + '">' ).replace( new RegExp('\033\\[0;' + ansi + 'm', 'g'), '<span style="color: ' + ansispan.foregroundColors[ansi] + '">' ).replace( new RegExp('\033\\[1;' + ansi + 'm', 'g'), '<span style="color: ' + ansispan.brightForegroundColors[ansi] + '">' ); }); // // `\033[1m` enables bold font, `\033[22m` disables it or \033[0m` resets // str = str.replace(/\033\[1m/g, '<b>').replace(/\033\[22m/g, '</b>'); str = str.replace(/\033\[1m/g, '<b>').replace(/\033\[0m/g, '</b>'); // // `\033[3m` enables italics font, `\033[23m` disables it or \033[0m resets // str = str.replace(/\033\[3m/g, '<i>').replace(/\033\[23m/g, '</i>'); str = str.replace(/\033\[3m/g, '<i>').replace(/\033\[0m/g, '</i>'); str = str.replace(/\033\[m/g, '</span>'); return str.replace(/\033\[39m/g, '</span>'); }; ansispan.foregroundColors = { '30': 'black', '31': 'red', '32': 'green', '33': 'yellow', '34': '#00bbbb', '35': 'purple', '36': 'cyan', '37': 'white' }; ansispan.brightForegroundColors = { '30': 'black', '31': 'red', '32': 'green', '33': 'yellow', '34': '#00bbbb', '35': 'purple', '36': 'cyan', '37': 'white' }; if (typeof module == "object" && typeof window == "undefined") { module.exports = ansispan; }
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
torquebox-console-0.1.4 | public/ansispan.js |
torquebox-console-0.1.3 | public/ansispan.js |
torquebox-console-0.1.2 | public/ansispan.js |