[pypy-commit] pypy default: Automated merge with ssh://bitbucket.org/pypy/pypy

krono noreply at buildbot.pypy.org
Mon Feb 10 00:25:33 CET 2014


Author: Tobias Pape <tobias at netshed.de>
Branch: 
Changeset: r69111:b224e605f614
Date: 2014-02-10 00:00 +0100
http://bitbucket.org/pypy/pypy/changeset/b224e605f614/

Log:	Automated merge with ssh://bitbucket.org/pypy/pypy

diff --git a/rpython/tool/ansiramp.py b/rpython/tool/ansiramp.py
--- a/rpython/tool/ansiramp.py
+++ b/rpython/tool/ansiramp.py
@@ -3,14 +3,16 @@
 
 def hsv2ansi(h, s, v):
     # h: 0..1, s/v: 0..1
-    if s < 0.001:
+    if s < 0.1:
         return int(v * 23) + 232
     r, g, b = map(lambda x: int(x * 5), colorsys.hsv_to_rgb(h, s, v))
     return 16 + (r * 36) + (g * 6) + b
 
 def ramp_idx(i, num):
-    h = 0.57 + float(i)/num
-    s = float(num - i) / i if i > (num * 0.85) else 1
+    assert num > 0
+    i0 = float(i) / num
+    h = 0.57 + i0
+    s = 1 - pow(i0,3)
     v = 1
     return hsv2ansi(h, s, v)
 
@@ -18,3 +20,10 @@
     return [ramp_idx(i, num) for i in range(num)]
 
 ansi_ramp80 = ansi_ramp(80)
+
+if __name__ == '__main__':
+    import sys
+    from py.io import ansi_print
+    colors = int(sys.argv[1]) if len(sys.argv) > 1 else 80
+    for col in range(colors):
+        ansi_print('#', "38;5;%d" % ramp_idx(col, colors), newline=False, flush=True)


More information about the pypy-commit mailing list