GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — bashplotlib/bashplotlib/utils/helpers.py at master · naturalneuralnet/bashplotlib Expand file tree/ Copy pathhelpers.pyMore file actions 96 lines (77 loc) · 2.23 KB / Copy pathhelpers.pyFile metadata and controls96 lines (77 loc) · 2.23 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 #!/usr/bin/evn python # -*- coding: utf-8 -*- """ Various helpful function for bashplotlib """ import sys isiterable = lambda x: hasattr(x, '__iter__') or hasattr(x, '__getitem__') bcolours = { "white": '\033[97m', "aqua": '\033[96m', "pink": '\033[95m', "blue": '\033[94m', "yellow": '\033[93m', "green": '\033[92m', "red": '\033[91m', "grey": '\033[90m', "black": '\033[30m', "default": '\033[39m', "ENDC": '\033[39m', } colour_help = ', '.join([colour for colour in bcolours if colour != "ENDC"]) def get_colour(colour): """ Get the escape code sequence for a colour """ return bcolours.get(colour, bcolours['ENDC']) def printcolour(text, sameline=False, colour=get_colour("ENDC")): """ Print color text using escape codes """ if sameline: sep = '' else: sep = '\n' sys.stdout.write(get_colour(colour) + text + bcolours["ENDC"] + sep) def drange(start, stop, step=1.0, include_stop=False): """ Generate between 2 numbers w/ optional step, optionally include upper bound """ if step == 0: step = 0.01 r = start if include_stop: while r <= stop: yield r r += step r = round(r, 10) else: while r < stop: yield r r += step r = round(r, 10) def abbreviate(labels, rfill=' '): """ Abbreviate labels without introducing ambiguities. """ max_len = max(len(l) for l in labels) for i in range(1, max_len): abbrev = [l[:i].ljust(i, rfill) for l in labels] if len(abbrev) == len(set(abbrev)): break return abbrev def box_text(text, width, title_align, offset=0 ): """ Return text inside an ascii textbox """ aligned_text = text.center(width) if title_align == "center": aligned_text = text.center(width) elif title_align == "left": aligned_text = text.ljust(width) elif title_align == "right": aligned_text = text.rjust(width) box = " " * offset + "+" + "-" * (width) + "+" + "\n" box += " " * offset + "|" + aligned_text + "|" + "\n" box += " " * offset + "+" + "-" * (width) + "+" return box |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |