summaryrefslogtreecommitdiff
path: root/content/resources/colors.py
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2014-05-18 16:28:47 +0200
committerSébastien Dailly <sebastien@chimrod.com>2014-05-18 16:28:47 +0200
commit6c1e296de08cb4cbf2f30eb87dd20a7d1b1fefd8 (patch)
tree822380a239d7b728256a6bad85af882aadf2d746 /content/resources/colors.py
parentc718a079865cc9c8ea42003431be147be9bfb46e (diff)
New article for theming terminal
Diffstat (limited to 'content/resources/colors.py')
-rw-r--r--content/resources/colors.py56
1 files changed, 56 insertions, 0 deletions
diff --git a/content/resources/colors.py b/content/resources/colors.py
new file mode 100644
index 0000000..25ade58
--- /dev/null
+++ b/content/resources/colors.py
@@ -0,0 +1,56 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+import sys
+import colorsys
+
+def define(saturation, value):
+
+ def showColor(hue):
+ return colorsys.hsv_to_rgb(hue, saturation, value)
+
+ return showColor
+
+def showColor(theme, hue):
+
+ r, g, b = theme(hue / 360.)
+ return "#%02x%02x%02x" % (int(r*256), int(g*256), int(b*256))
+
+if __name__ == "__main__":
+
+ if len(sys.argv) < 5:
+ print "Usage :"
+ print "color.py SHIFT LIGHT_SATURATION DARK_SATURATION LIGHT_VALUE DARK_VALUE"
+ sys.exit(1)
+
+ shift = int(sys.argv[1])
+ light_s = int(sys.argv[2])/100.
+ dark_s = int(sys.argv[3])/100.
+ light_v = int(sys.argv[4])/100.
+ dark_v = int(sys.argv[5])/100.
+
+ colors = {
+
+ 1 : 0, # red
+ 3 : 60, # yellow
+ 2 : 120, # green
+ 6 : 180, # cyan
+ 4 : 240, # blue
+ 5 : 300, # magenta
+
+ }
+
+ dark_theme = define(dark_s, dark_v)
+ light_theme = define(light_s, light_v)
+ for (name, value) in colors.iteritems():
+
+ dark = showColor(dark_theme, value - shift)
+ light = showColor(light_theme, value - shift)
+
+ print "urxvt.color%d : %s" % (name, dark)
+ print "urxvt.color%d : %s" % (name+8, light)
+
+ print "XTerm*color%d : %s" % (name, dark)
+ print "XTerm*color%d : %s" % (name+8, light)
+
+