Skip to content

Instantly share code, notes, and snippets.

@veganaize
Forked from ssbarnea/test_ansi.py
Created June 17, 2017 00:42
Show Gist options
  • Save veganaize/10b7a00242b9e2cb0b32efda5c0f06c0 to your computer and use it in GitHub Desktop.
Save veganaize/10b7a00242b9e2cb0b32efda5c0f06c0 to your computer and use it in GitHub Desktop.
ANSI support detection code for Python.
#!/usr/bin/env python
import sys, os, time, platform
sample_ansi = '\x1b[31mRED' + '\x1b[33mYELLOW' + '\x1b[32mGREEN' + '\x1b[35mPINK' + '\x1b[0m' + '\n'
for handle in [sys.stdout, sys.stderr]:
if (hasattr(handle, "isatty") and handle.isatty()) or \
('TERM' in os.environ and os.environ['TERM']=='ANSI'):
if platform.system()=='Windows' and not ('TERM' in os.environ and os.environ['TERM']=='ANSI'):
handle.write("Windows console, no ANSI support.\n")
else:
handle.write("ANSI output enabled.\n")
handle.write(sample_ansi)
else:
handle.write("ANSI output disabled.\n")
handle.write("\n\n")
handle.flush()
time.sleep(0.2)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment