title: Is it possible for child processes in Node.js to preserve colored output?
body: <p>I am writing my first Node.js command line tool using <a href="https://www.npmjs.com/package/liftoff" rel="noreferrer">Liftoff</a>. One of the important steps in my application is to copy some files and folders to the user's cwd. I am using <a href="https://www.npmjs.com/package/exeq" rel="noreferrer">exeq</a> to accomplish this. It runs a series of commands:</p>
  
  <ul>
  <li><strong><code>cd app</code></strong> - cd to <code>cwd/app/</code> where the gulpfile.js and package.json reside</li>
  <li><strong><code>npm install</code></strong> - install dependencies</li>
  <li><strong><code>gulp</code></strong> - run gulp</li>
  </ul>
  
  <p>Functionally, exeq does exactly what I want it to do. It executes those three commands in sequence and does so successfully. My problem is that exeq does not preserve colored output, so the logs from <code>npm install</code> and <code>gulp</code> are plain white text, making them very difficult to parse.</p>
  
  <p>My research thus far has not turned up an alternative node package that does the job nor a clear method for preserving colored output with my current setup. I did get a lead from someone that this may be a problem with the environment and that I need a way to tell exeq it's in an environment that supports colored output. Unfortunately, exeq doesn't appear to have any options or arguments, so I have no idea how to go about doing that.</p>
  
  <p>Is this a limitation of node child processes, or is there a way to preserve the colored output?</p>