From b68e0ccf5237727f3822fa70206213e3da5f9515 Mon Sep 17 00:00:00 2001 From: "Azalea (on HyDEV-Daisy)" Date: Sun, 3 Jul 2022 13:02:39 -0400 Subject: [PATCH] [+] Add reference for default brightness --- hyfetch/constants.py | 6 ++++++ hyfetch/main.py | 4 ++-- hyfetch/presets.py | 5 ++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/hyfetch/constants.py b/hyfetch/constants.py index cda8d8d7..526146fe 100644 --- a/hyfetch/constants.py +++ b/hyfetch/constants.py @@ -30,6 +30,7 @@ _/\_\_ _/_/\_ |##| (_( |##|""".strip('\n') TEST_ASCII_WIDTH = max(len(line) for line in TEST_ASCII.split('\n')) +DEFAULT_DARK_L = 0. @dataclass class GlobalConfig: @@ -42,5 +43,10 @@ class GlobalConfig: def light_dark(self) -> Literal['light', 'dark']: return 'light' if self.is_light else 'dark' + def default_lightness(self, term: Literal['light', 'dark'] | None = None) -> float: + if term is None: + term = self.light_dark() + return 0.65 if term.lower() == 'dark' else 0.4 + GLOBAL_CFG = GlobalConfig(color_mode='8bit', override_distro=None, debug=False, is_light=False) diff --git a/hyfetch/main.py b/hyfetch/main.py index 332b90fe..8f453f16 100755 --- a/hyfetch/main.py +++ b/hyfetch/main.py @@ -146,14 +146,14 @@ def create_config() -> Config: # Print cats num_cols = TERM_LEN // (TEST_ASCII_WIDTH + 2) ratios = [col / (num_cols - 1) for col in range(num_cols)] - ratios = [r * 0.6 + 0.2 for r in ratios] + ratios = [(r * 0.4 + 0.1) if is_light else (r * 0.4 + 0.5) for r in ratios] lines = [ColorAlignment('horizontal').recolor_ascii(TEST_ASCII.replace( '{txt}', f'{r * 100:.0f}%'.center(5)), _prs.set_light_dl(r, light_dark)).split('\n') for r in ratios] [printc(' '.join(line)) for line in zip(*lines)] while True: print() - printc('Which brightness level look the best? (Default: unset)') + printc(f'Which brightness level look the best? (Default: left blank = {GLOBAL_CFG.default_lightness(light_dark):.2f} for {light_dark} mode)') lightness = input('> ').strip().lower() or None # Parse lightness diff --git a/hyfetch/presets.py b/hyfetch/presets.py index 01eb7d55..0551fca3 100644 --- a/hyfetch/presets.py +++ b/hyfetch/presets.py @@ -124,15 +124,14 @@ class ColorProfile: at_least, at_most = (True, None) if term.lower() == 'dark' else (None, True) return self.set_light_raw(light, at_least, at_most) - def set_light_dl_def(self, term: LightDark = GLOBAL_CFG.light_dark()): + def set_light_dl_def(self, term: LightDark | None = None): """ Set default lightness with respect to dark/light terminals :param term: Terminal color (can be "dark" or "light") :return: New color profile (original isn't modified) """ - light = 0.65 if term.lower() == 'dark' else 0.4 - return self.set_light_dl(light, term) + return self.set_light_dl(GLOBAL_CFG.default_lightness(term), term) def unique_colors(self) -> ColorProfile: """