Skip to content

Instantly share code, notes, and snippets.

@jaxxreal
Created September 21, 2016 21:06
Show Gist options
  • Select an option

  • Save jaxxreal/28b77606531b46e04ae4a4d89dfd3f87 to your computer and use it in GitHub Desktop.

Select an option

Save jaxxreal/28b77606531b46e04ae4a4d89dfd3f87 to your computer and use it in GitHub Desktop.

Revisions

  1. jaxxreal created this gist Sep 21, 2016.
    39 changes: 39 additions & 0 deletions spriter.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,39 @@
    var fs = require('fs');
    var path = require('path');
    var sys = require('sys');
    var exec = require('child_process').exec;

    makeSprite();
    console.log('start watching');

    exec('svgo -f ./src/assets/icons' , () => {
    fs.watch(`${__dirname}/src/assets/icons`, (eventType, filename) => {
    if (filename) {
    console.log(`filename provided: ${filename}`);
    } else {
    console.log('filename not provided');
    }
    makeSprite();
    });
    makeSprite();
    });


    function makeSprite() {
    console.log('rebuild started...');
    exec('svg-sprite-generate -d ./src/assets/icons -o sprite.svg',
    (error, stdout, stderr) => {
    if (error !== null) {
    return console.log('exec error: ' + error);
    }
    try {
    const svgSprite = fs.readFileSync(path.resolve(`${__dirname}/sprite.svg`), "utf-8");
    console.log('rebuild complete!');
    } catch (err) {
    console.info("Check sprite file!");
    }
    });
    }