From a97d2805b1765e500c738dd1b5f16b96f066f2e6 Mon Sep 17 00:00:00 2001 From: eval Nya <60149113+nexplorer-3e@users.noreply.github.com> Date: Mon, 3 Jul 2023 23:51:29 +0800 Subject: [PATCH] tools: chore: add extract_color.py dump ansi code number from neofetch script --- tools/extract_color.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 tools/extract_color.py diff --git a/tools/extract_color.py b/tools/extract_color.py new file mode 100644 index 00000000..bab3b1fe --- /dev/null +++ b/tools/extract_color.py @@ -0,0 +1,33 @@ +import re, json + +distro_color = {} + + +def color(colornum): # see neofetch color() + reset = "\e[0m" + ascii_bold = "\e[1m" + if colornum == "fg" or colornum == "7": + return f"\e[37m{reset}" + if colornum == "#": + pass # TODO + if int(colornum) >= 0 and int(colornum) < 7: + return f"{reset}\e[3{colornum}m" + return f"\e38;5;{colornum}m" + + +with open("neofetch") as f: + s = f.read() +l = iter(s.split("\n")) +for i in l: + p = re.search(r'"\D+"\*\)', i) + if p is None: + continue + distros = re.sub(r"\"|\)|\*", "", i.strip(" ")).split("|") + c = next(l).strip(" ") + if "set_colors" not in c: + continue + colors = c.split(" ")[1:] + for dist in distros: + distro_color[dist.strip(" ").rstrip(" ")] = colors +with open("distcolor.json", "w") as f: + json.dump(distro_color, f)