Nonstop Perpetual Motion

    ansi-styles-template

    1.0.0 • Public • Published

    ansi-styles-template

    npm version Build Status

    Use ANSI styles in template notation

    Installation

    npm install ansi-styles-template

    Usage

    Basic usage

    const {template} = require('ansi-styles-template');
     
    const str = '{red}Bloody..{/red}';
     
    console.log(template(str));  // -> "\u001b[31mBloody..\u001b[39m"

    Built-in styles

    The styles available as tags conform to ansy-styles.

    Or dump replacementMap in the following way, you can confirm more certainly.

    const {replacementMap} = require('ansi-styles-template');
     
    console.log(replacementMap);
    // ->
    //   Map {
    //     'reset' => { opener: '\u001b[0m', closer: '\u001b[0m' },
    //     'bold' => { opener: '\u001b[1m', closer: '\u001b[22m' },
    //     'dim' => { opener: '\u001b[2m', closer: '\u001b[22m' },
    //     'italic' => { opener: '\u001b[3m', closer: '\u001b[23m' },
    //     'underline' => { opener: '\u001b[4m', closer: '\u001b[24m' },
    //     'inverse' => { opener: '\u001b[7m', closer: '\u001b[27m' },
    //     'hidden' => { opener: '\u001b[8m', closer: '\u001b[28m' },
    //     'strikethrough' => { opener: '\u001b[9m', closer: '\u001b[29m' },
    //     'black' => { opener: '\u001b[30m', closer: '\u001b[39m' },
    //     'red' => { opener: '\u001b[31m', closer: '\u001b[39m' },
    //     'green' => { opener: '\u001b[32m', closer: '\u001b[39m' },
    //     'yellow' => { opener: '\u001b[33m', closer: '\u001b[39m' },
    //     'blue' => { opener: '\u001b[34m', closer: '\u001b[39m' },
    //     'magenta' => { opener: '\u001b[35m', closer: '\u001b[39m' },
    //     'cyan' => { opener: '\u001b[36m', closer: '\u001b[39m' },
    //     'white' => { opener: '\u001b[37m', closer: '\u001b[39m' },
    //     'gray' => { opener: '\u001b[90m', closer: '\u001b[39m' },
    //     'redBright' => { opener: '\u001b[91m', closer: '\u001b[39m' },
    //     'greenBright' => { opener: '\u001b[92m', closer: '\u001b[39m' },
    //     'yellowBright' => { opener: '\u001b[93m', closer: '\u001b[39m' },
    //     'blueBright' => { opener: '\u001b[94m', closer: '\u001b[39m' },
    //     'magentaBright' => { opener: '\u001b[95m', closer: '\u001b[39m' },
    //     'cyanBright' => { opener: '\u001b[96m', closer: '\u001b[39m' },
    //     'whiteBright' => { opener: '\u001b[97m', closer: '\u001b[39m' },
    //     'bgBlack' => { opener: '\u001b[40m', closer: '\u001b[49m' },
    //     'bgRed' => { opener: '\u001b[41m', closer: '\u001b[49m' },
    //     'bgGreen' => { opener: '\u001b[42m', closer: '\u001b[49m' },
    //     'bgYellow' => { opener: '\u001b[43m', closer: '\u001b[49m' },
    //     'bgBlue' => { opener: '\u001b[44m', closer: '\u001b[49m' },
    //     'bgMagenta' => { opener: '\u001b[45m', closer: '\u001b[49m' },
    //     'bgCyan' => { opener: '\u001b[46m', closer: '\u001b[49m' },
    //     'bgWhite' => { opener: '\u001b[47m', closer: '\u001b[49m' },
    //     'bgBlackBright' => { opener: '\u001b[100m', closer: '\u001b[49m' },
    //     'bgRedBright' => { opener: '\u001b[101m', closer: '\u001b[49m' },
    //     'bgGreenBright' => { opener: '\u001b[102m', closer: '\u001b[49m' },
    //     'bgYellowBright' => { opener: '\u001b[103m', closer: '\u001b[49m' },
    //     'bgBlueBright' => { opener: '\u001b[104m', closer: '\u001b[49m' },
    //     'bgMagentaBright' => { opener: '\u001b[105m', closer: '\u001b[49m' },
    //     'bgCyanBright' => { opener: '\u001b[106m', closer: '\u001b[49m' },
    //     'bgWhiteBright' => { opener: '\u001b[107m', closer: '\u001b[49m' } }

    API

    template(str, options = {})

    Arguments

    • str: string
      • A string to be replaced
    • options.leftBrace: string
      • Default: "{"
    • options.rightBrace: string
      • Default: "}"
    • options.strict: boolean
      • Default: false
      • Whether to throw an error if an unknown tag matches

    Install

    npm i ansi-styles-template

    DownloadsWeekly Downloads

    1,406

    Version

    1.0.0

    License

    MIT

    Last publish

    Collaborators

    • kjirou