3 changed files with 3 additions and 192 deletions
@ -1,122 +0,0 @@
|
||||
#!/usr/bin/env python3 |
||||
#pylint: disable=C0111 |
||||
|
||||
import os |
||||
import re |
||||
import sys |
||||
import yaml |
||||
|
||||
CONFNAME = '.termcolors.yaml' |
||||
ESCAPES = { |
||||
'colorspec': '{};rgb:{}/{}/{}', |
||||
# 'fgspec': '10;rgb:{}/{}/{}', |
||||
# 'bdspec': '706;rgb:{}/{}/{}', |
||||
# 'bgspec': '11;rgb:{}/{}/{}', |
||||
|
||||
'default': '\033]4;{}\033\\', |
||||
'screen': '\033P\033]4;{}\007\033\\', |
||||
'tmux': '\033Ptmux;\033\033]4;{}\007\033\\' |
||||
} |
||||
DEFAULT = { |
||||
16: '#000000', 76: '#5fd700', 136: '#af8700', 196: '#ff0000', |
||||
17: '#00005f', 77: '#5fd75f', 137: '#af875f', 197: '#ff005f', |
||||
18: '#000087', 78: '#5fd787', 138: '#af8787', 198: '#ff0087', |
||||
19: '#0000af', 79: '#5fd7af', 139: '#af87af', 199: '#ff00af', |
||||
20: '#0000d7', 80: '#5fd7d7', 140: '#af87d7', 200: '#ff00d7', |
||||
21: '#0000ff', 81: '#5fd7ff', 141: '#af87ff', 201: '#ff00ff', |
||||
22: '#005f00', 82: '#5fff00', 142: '#afaf00', 202: '#ff5f00', |
||||
23: '#005f5f', 83: '#5fff5f', 143: '#afaf5f', 203: '#ff5f5f', |
||||
24: '#005f87', 84: '#5fff87', 144: '#afaf87', 204: '#ff5f87', |
||||
25: '#005faf', 85: '#5fffaf', 145: '#afafaf', 205: '#ff5faf', |
||||
26: '#005fd7', 86: '#5fffd7', 146: '#afafd7', 206: '#ff5fd7', |
||||
27: '#005fff', 87: '#5fffff', 147: '#afafff', 207: '#ff5fff', |
||||
28: '#008700', 88: '#870000', 148: '#afd700', 208: '#ff8700', |
||||
29: '#00875f', 89: '#87005f', 149: '#afd75f', 209: '#ff875f', |
||||
30: '#008787', 90: '#870087', 150: '#afd787', 210: '#ff8787', |
||||
31: '#0087af', 91: '#8700af', 151: '#afd7af', 211: '#ff87af', |
||||
32: '#0087d7', 92: '#8700d7', 152: '#afd7d7', 212: '#ff87d7', |
||||
33: '#0087ff', 93: '#8700ff', 153: '#afd7ff', 213: '#ff87ff', |
||||
34: '#00af00', 94: '#875f00', 154: '#afff00', 214: '#ffaf00', |
||||
35: '#00af5f', 95: '#875f5f', 155: '#afff5f', 215: '#ffaf5f', |
||||
36: '#00af87', 96: '#875f87', 156: '#afff87', 216: '#ffaf87', |
||||
37: '#00afaf', 97: '#875faf', 157: '#afffaf', 217: '#ffafaf', |
||||
38: '#00afd7', 98: '#875fd7', 158: '#afffd7', 218: '#ffafd7', |
||||
39: '#00afff', 99: '#875fff', 159: '#afffff', 219: '#ffafff', |
||||
40: '#00d700', 100: '#878700', 160: '#d70000', 220: '#ffd700', |
||||
41: '#00d75f', 101: '#87875f', 161: '#d7005f', 221: '#ffd75f', |
||||
42: '#00d787', 102: '#878787', 162: '#d70087', 222: '#ffd787', |
||||
43: '#00d7af', 103: '#8787af', 163: '#d700af', 223: '#ffd7af', |
||||
44: '#00d7d7', 104: '#8787d7', 164: '#d700d7', 224: '#ffd7d7', |
||||
45: '#00d7ff', 105: '#8787ff', 165: '#d700ff', 225: '#ffd7ff', |
||||
46: '#00ff00', 106: '#87af00', 166: '#d75f00', 226: '#ffff00', |
||||
47: '#00ff5f', 107: '#87af5f', 167: '#d75f5f', 227: '#ffff5f', |
||||
48: '#00ff87', 108: '#87af87', 168: '#d75f87', 228: '#ffff87', |
||||
49: '#00ffaf', 109: '#87afaf', 169: '#d75faf', 229: '#ffffaf', |
||||
50: '#00ffd7', 110: '#87afd7', 170: '#d75fd7', 230: '#ffffd7', |
||||
51: '#00ffff', 111: '#87afff', 171: '#d75fff', 231: '#ffffff', |
||||
52: '#5f0000', 112: '#87d700', 172: '#d78700', 232: '#080808', |
||||
53: '#5f005f', 113: '#87d75f', 173: '#d7875f', 233: '#121212', |
||||
54: '#5f0087', 114: '#87d787', 174: '#d78787', 234: '#1c1c1c', |
||||
55: '#5f00af', 115: '#87d7af', 175: '#d787af', 235: '#262626', |
||||
56: '#5f00d7', 116: '#87d7d7', 176: '#d787d7', 236: '#303030', |
||||
57: '#5f00ff', 117: '#87d7ff', 177: '#d787ff', 237: '#3a3a3a', |
||||
58: '#5f5f00', 118: '#87ff00', 178: '#d7af00', 238: '#444444', |
||||
59: '#5f5f5f', 119: '#87ff5f', 179: '#d7af5f', 239: '#4e4e4e', |
||||
60: '#5f5f87', 120: '#87ff87', 180: '#d7af87', 240: '#585858', |
||||
61: '#5f5faf', 121: '#87ffaf', 181: '#d7afaf', 241: '#606060', |
||||
62: '#5f5fd7', 122: '#87ffd7', 182: '#d7afd7', 242: '#666666', |
||||
63: '#5f5fff', 123: '#87ffff', 183: '#d7afff', 243: '#767676', |
||||
64: '#5f8700', 124: '#af0000', 184: '#d7d700', 244: '#808080', |
||||
65: '#5f875f', 125: '#af005f', 185: '#d7d75f', 245: '#8a8a8a', |
||||
66: '#5f8787', 126: '#af0087', 186: '#d7d787', 246: '#949494', |
||||
67: '#5f87af', 127: '#af00af', 187: '#d7d7af', 247: '#9e9e9e', |
||||
68: '#5f87d7', 128: '#af00d7', 188: '#d7d7d7', 248: '#a8a8a8', |
||||
69: '#5f87ff', 129: '#af00ff', 189: '#d7d7ff', 249: '#b2b2b2', |
||||
70: '#5faf00', 130: '#af5f00', 190: '#d7ff00', 250: '#bcbcbc', |
||||
71: '#5faf5f', 131: '#af5f5f', 191: '#d7ff5f', 251: '#c6c6c6', |
||||
72: '#5faf87', 132: '#af5f87', 192: '#d7ff87', 252: '#d0d0d0', |
||||
73: '#5fafaf', 133: '#af5faf', 193: '#d7ffaf', 253: '#dadada', |
||||
74: '#5fafd7', 134: '#af5fd7', 194: '#d7ffd7', 254: '#e4e4e4', |
||||
75: '#5fafff', 135: '#af5fff', 195: '#d7ffff', 255: '#eeeeee' |
||||
} |
||||
|
||||
def get_colors(): |
||||
colors = {'default': DEFAULT} |
||||
confpath = os.path.join(os.environ['HOME'], CONFNAME) |
||||
|
||||
try: |
||||
with open(confpath) as conf: |
||||
colors.update(yaml.load(conf.read())) |
||||
except FileNotFoundError: |
||||
err = 'Config file {} is missing.\n'.format(confpath) |
||||
sys.stderr.write(err) |
||||
|
||||
try: |
||||
colorscheme = sys.argv[1] |
||||
assert colorscheme in colors |
||||
except (AssertionError, IndexError): |
||||
err = 'Usage: {} {{{}}}\n'.format(sys.argv[0], '|'.join(colors.keys())) |
||||
sys.stderr.write(err) |
||||
sys.exit(1) |
||||
|
||||
return colors[colorscheme] |
||||
|
||||
def main(): |
||||
colorscheme = get_colors() |
||||
if 'tmux' in os.environ['TERM']: |
||||
terminal = 'tmux' |
||||
elif 'screen' in os.environ['TERM']: |
||||
terminal = 'screen' |
||||
else: |
||||
terminal = 'default' |
||||
|
||||
def colorlist(): |
||||
for color in colorscheme: |
||||
rgb = re.findall('[0-9a-fA-F]{2}', colorscheme[color]) |
||||
yield ESCAPES['colorspec'].format(color, *rgb) |
||||
|
||||
colorstring = ESCAPES[terminal].format(';'.join(colorlist())) |
||||
sys.stdout.write(colorstring) |
||||
|
||||
if __name__ == '__main__': |
||||
main() |
@ -1,69 +0,0 @@
|
||||
gotham256: |
||||
17: '#091f2e' |
||||
18: '#0a3749' |
||||
24: '#245361' |
||||
44: '#33859E' |
||||
60: '#4e5166' |
||||
67: '#888ca6' |
||||
78: '#2aa889' |
||||
81: '#599cab' |
||||
122: '#99d1ce' |
||||
124: '#c23127' |
||||
194: '#d3ebe9' |
||||
214: '#edb443' |
||||
232: '#0c1014' |
||||
233: '#11151c' |
||||
gruvbox: |
||||
24: '#076678' |
||||
66: '#427b58' |
||||
72: '#689d6a' |
||||
88: '#9d0006' |
||||
96: '#8f3f71' |
||||
100: '#79740e' |
||||
106: '#98971a' |
||||
108: '#8ec07c' |
||||
109: '#83a598' |
||||
124: '#cc241d' |
||||
130: '#af3a03' |
||||
132: '#b16286' |
||||
136: '#b57614' |
||||
142: '#b8bb26' |
||||
166: '#d65d0e' |
||||
167: '#fb4934' |
||||
172: '#d79921' |
||||
175: '#d3869b' |
||||
208: '#fe8019' |
||||
214: '#fabd2f' |
||||
223: '#ebdbb2' |
||||
228: '#f2e5bc' |
||||
229: '#fdf4c1' |
||||
230: '#f9f5d7' |
||||
234: '#1d2021' |
||||
235: '#282828' |
||||
236: '#32302f' |
||||
237: '#3c3836' |
||||
239: '#504945' |
||||
241: '#665c54' |
||||
243: '#7c6f64' |
||||
244: '#928374' |
||||
245: '#928374' |
||||
246: '#a89984' |
||||
248: '#bdae93' |
||||
250: '#d5c4a1' |
||||
solarized: |
||||
00: '#073642' |
||||
01: '#dc322f' |
||||
02: '#859900' |
||||
03: '#b58900' |
||||
04: '#268bd2' |
||||
05: '#d33682' |
||||
06: '#2aa198' |
||||
07: '#eee8d5' |
||||
08: '#002b36' |
||||
09: '#cb4b16' |
||||
10: '#586e75' |
||||
11: '#657b83' |
||||
12: '#839496' |
||||
13: '#6c71c4' |
||||
14: '#93a1a1' |
||||
15: '#fdf6e3' |
Loading…
Reference in new issue