Skip to content

Instantly share code, notes, and snippets.

@vmanyushin
Forked from mgedmin/show-all-256-colors.py
Created June 25, 2013 10:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vmanyushin/5857553 to your computer and use it in GitHub Desktop.
Save vmanyushin/5857553 to your computer and use it in GitHub Desktop.
#!/usr/bin/python
def hrun(start, width, padding=0):
return [None] * padding + range(start, start+width) + [None] * padding
def vrun(start, width, height, padding=0):
return [hrun(s, width, padding)
for s in range(start, start+width*height, width)]
layout = [
vrun(0, 8, 2), # 16 standard xterm colors
vrun(16, 6, 6*6, 1), # 6x6x6 color cube
vrun(16 + 6*6*6, 8, 3), # 24 grey levels
]
def fg_seq(color):
return '\033[38;5;%dm' % color
def bg_seq(color):
return '\033[48;5;%dm' % color
reset_seq = '\033[0m'
def color_bar(seq, color, trail):
if color is None:
return '%s %s' % (reset_seq, trail)
else:
return '%s %03d%s' % (seq(color), color, trail)
for block in layout:
print
for row in block:
fg_bar = ''.join(color_bar(fg_seq, color, '') for color in row)
bg_bar = ''.join(color_bar(bg_seq, color, ' ') for color in row)
print '%s%s %s%s' % (fg_bar, reset_seq, bg_bar, reset_seq)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment