diff options
author | Micah Lee <micah@micahflee.com> | 2021-05-02 15:13:50 -0700 |
---|---|---|
committer | Micah Lee <micah@micahflee.com> | 2021-05-02 15:13:50 -0700 |
commit | 94d5544bdaddb2b8d7fcd6491ee2f0c01d25fd04 (patch) | |
tree | f9422e5783c06c5f3f741af50894f188255bb67a /cli/onionshare_cli | |
parent | 7554d0e3fdccfd766ab5fea70a0160b4aa0e1a5a (diff) | |
download | onionshare-94d5544bdaddb2b8d7fcd6491ee2f0c01d25fd04.tar.gz onionshare-94d5544bdaddb2b8d7fcd6491ee2f0c01d25fd04.zip |
Use colorama for terminal colors, to get Windows support
Diffstat (limited to 'cli/onionshare_cli')
-rw-r--r-- | cli/onionshare_cli/common.py | 214 |
1 files changed, 94 insertions, 120 deletions
diff --git a/cli/onionshare_cli/common.py b/cli/onionshare_cli/common.py index 4cb2c72a..e7293675 100644 --- a/cli/onionshare_cli/common.py +++ b/cli/onionshare_cli/common.py @@ -29,6 +29,9 @@ import time import shutil from pkg_resources import resource_filename +import colorama +from colorama import Fore, Back, Style + from .settings import Settings @@ -43,18 +46,11 @@ class Common: The Common object is shared amongst all parts of OnionShare. """ - C_RESET = "\033[0m" - C_BG_PURPLE = "\033[45m" - C_BOLD = "\033[01m" - C_WHITE = "\033[97m" - C_LIGHTGRAY = "\033[37m" - C_DARKGRAY = "\033[90m" - C_LIGHTPURPLE = "\033[95m" - C_DARKPURPLE = "\033[35m" - def __init__(self, verbose=False): self.verbose = verbose + colorama.init(autoreset=True) + # The platform OnionShare is running on self.platform = platform.system() if self.platform.endswith("BSD") or self.platform == "DragonFly": @@ -90,219 +86,195 @@ class Common: ╰───────────────────────────────────────────╯ """ + if self.platform == "Windows": + pass + else: + pass + print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY - + "╭───────────────────────────────────────────╮" - + self.C_RESET + Back.MAGENTA + Fore.WHITE + "╭───────────────────────────────────────────╮" ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_WHITE + + Fore.WHITE + "▄▄█████▄▄" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▄████▀▀▀████▄" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▀▀█▀ ▀██▄ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_WHITE + + Fore.WHITE + "▄█▄ ▀██▄ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▄█████▄ ███" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " -+- " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ███ ▀█████▀ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▀██▄ ▀█▀ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_WHITE + + Fore.WHITE + "▀██▄ ▄█▄▄" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " * " - + self.C_WHITE + + Fore.WHITE + "▀████▄▄▄████▀ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▀▀█████▀▀ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTPURPLE + + Fore.LIGHTMAGENTA_EX + " -+- * " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▄▀▄ ▄▀▀ █ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " █ █ ▀ ▀▄ █ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " █ █ █▀▄ █ ▄▀▄ █▀▄ ▀▄ █▀▄ ▄▀▄ █▄▀ ▄█▄ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_WHITE + + Fore.WHITE + " ▀▄▀ █ █ █ ▀▄▀ █ █ ▄▄▀ █ █ ▀▄█ █ ▀▄▄ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY - + "│ │" - + self.C_RESET + Back.MAGENTA + Fore.WHITE + "│ │" ) left_spaces = (43 - len(self.version) - 1) // 2 right_spaces = left_spaces if left_spaces + len(self.version) + right_spaces < 43: right_spaces += 1 print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTGRAY + + Fore.WHITE + f"{' '*left_spaces}v{self.version}{' '*right_spaces}" - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY - + "│ │" - + self.C_RESET + Back.MAGENTA + Fore.WHITE + "│ │" ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY + Back.MAGENTA + + Fore.WHITE + "│" - + self.C_LIGHTGRAY + + Fore.WHITE + " https://onionshare.org/ " - + self.C_LIGHTGRAY + + Fore.WHITE + "│" - + self.C_RESET ) print( - self.C_BG_PURPLE - + self.C_LIGHTGRAY - + "╰───────────────────────────────────────────╯" - + self.C_RESET + Back.MAGENTA + Fore.WHITE + "╰───────────────────────────────────────────╯" ) print() @@ -319,9 +291,11 @@ class Common: """ if self.verbose: timestamp = time.strftime("%b %d %Y %X") - final_msg = f"{self.C_DARKGRAY}[{timestamp}]{self.C_RESET} {self.C_LIGHTGRAY}{module}.{func}{self.C_RESET}" + final_msg = f"{Fore.BLACK + Style.BRIGHT}[{timestamp}]{Style.RESET_ALL} {Fore.WHITE + Style.DIM}{module}.{func}{Style.RESET_ALL}" if msg: - final_msg = f"{final_msg}{self.C_LIGHTGRAY}: {msg}{self.C_RESET}" + final_msg = ( + f"{final_msg}{Fore.WHITE + Style.DIM}: {msg}{Style.RESET_ALL}" + ) print(final_msg) def get_resource_path(self, filename): |