You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.6 KiB
83 lines
1.6 KiB
5 years ago
|
#!/usr/bin/env node
|
||
|
// Relies on this being installed: https://github.com/F1LT3R/ansi-to-svg
|
||
|
const {stdin} = process;
|
||
|
|
||
|
const ansiToSVG = require('ansi-to-svg')
|
||
|
|
||
|
getStdin = async () => {
|
||
|
let result = '';
|
||
|
|
||
|
if (stdin.isTTY) {
|
||
|
return result;
|
||
|
}
|
||
|
|
||
|
stdin.setEncoding('utf8');
|
||
|
|
||
|
for await (const chunk of stdin) {
|
||
|
result += chunk;
|
||
|
}
|
||
|
|
||
|
return result;
|
||
|
};
|
||
|
|
||
|
(async () => {
|
||
|
// Returns an SVG string
|
||
|
console.log(ansiToSVG(await getStdin(), {
|
||
|
// Defaults to 2x for Retina compatibility
|
||
|
scale: 2,
|
||
|
|
||
|
// Font settings
|
||
|
fontFace: 'Courier',
|
||
|
fontSize: 14,
|
||
|
lineHeight: 18,
|
||
|
|
||
|
// Padding
|
||
|
paddingTop: 5,
|
||
|
paddingLeft: 5,
|
||
|
paddingBottom: 5,
|
||
|
paddingRight: 5,
|
||
|
|
||
|
// Supply an iTerm2 Color file
|
||
|
colors: './base16-flat-dark-f1lt3r-256.itermcolors',
|
||
|
|
||
|
// Or override the default colors
|
||
|
// (all defaults shown here)
|
||
|
colors: {
|
||
|
black: '#000000',
|
||
|
red: '#B22222',
|
||
|
green: '#32CD32',
|
||
|
yellow: '#DAA520',
|
||
|
blue: '#4169E1',
|
||
|
magenta: '#9932CC',
|
||
|
cyan: '#008B8B',
|
||
|
white: '#D3D3D3',
|
||
|
gray: '#A9A9A9',
|
||
|
redBright: '#FF4500',
|
||
|
greenBright: '#ADFF2F',
|
||
|
yellowBright: '#FFFF00',
|
||
|
blueBright: '#87CEEB',
|
||
|
magentaBright: '#FF00FF',
|
||
|
cyanBright: '#00FFFF',
|
||
|
whiteBright: '#FFFFFF',
|
||
|
bgBlack: '#000000',
|
||
|
bgRed: '#B22222',
|
||
|
bgGreen: '#32CD32',
|
||
|
bgYellow: '#DAA520',
|
||
|
bgBlue: '#4169E1',
|
||
|
bgMagenta: '#9932CC',
|
||
|
bgCyan: '#008B8B',
|
||
|
bgWhite: '#D3D3D3',
|
||
|
bgGray: '#A9A9A9',
|
||
|
bgRedBright: '#FF0000',
|
||
|
bgGreenBright: '#ADFF2F',
|
||
|
bgYellowBright: '#FFFF00',
|
||
|
bgBlueBright: '#87CEEB',
|
||
|
bgMagentaBright: '#FF00FF',
|
||
|
bgCyanBright: '#00FFFF',
|
||
|
bgWhiteBright: '#FFFFFF',
|
||
|
backgroundColor: '#000000',
|
||
|
foregroundColor: '#D3D3D3'
|
||
|
}
|
||
|
}))
|
||
|
})();
|