title: Get output colored text with Popen
body: <p>I'm using popen to make a plugin, this plugin used a external program who shows some colored text in the output.</p>
  
  <p>The output is something like this:</p>
  
  <pre><code>avr-g++ -o .pioenvs\uno\FrameworkArduino\HardwareSerial.o -c -std=gnu++11 -fno-exceptions -fno-threadsafe-statics -g -Os -Wall -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO_ARCH_AVR -DARDUINO_AVR_UNO -DARDUINO=10607 -I.pioenvs\uno\FrameworkArduino -I.pioenvs\uno\FrameworkArduinoVariant .pioenvs\uno\FrameworkArduino\HardwareSerial.cpp    
  avr-g++ -o .pioenvs\uno\FrameworkArduino\HardwareSerial0.o -c -std=gnu++11 -fno-exceptions -fno-threadsafe-statics -g -Os -Wall -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO_ARCH_AVR -DARDUINO_AVR_UNO -DARDUINO=10607 -I.pioenvs\uno\FrameworkArduino -I.pioenvs\uno\FrameworkArduinoVariant .pioenvs\uno\FrameworkArduino\HardwareSerial0.cpp
  =============================================
  Path\file.cpp: in function 'void loop()':
  Path\file.cpp:23:2 error: expected ';' before '}' token
  }
  ^
  =============================================
  </code></pre>
  
  <p>All inside "=" is in red and yellow.</p>
  
  <p>When I run the command in the command console, I can see the full output, but when I use Popen I only can get the uncolored text</p>
  
  <p>This is how I'm using Popen</p>
  
  <pre><code>process = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE, cwd=self.cwd, universal_newlines=True, shell=True)
  output = process.communicate()
  
  stdout = output[0]
  stderr = output[1]
  
  print(stdout)
  print(stderr)
  </code></pre>
  
  <p>I would like to get the text even if it's not  colored, the important is to get the full log.</p>
  
  <p>Any suggestion will be appreciated</p>