diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-06-11 22:09:44 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-06-11 22:09:44 +1000 |
| commit | 63040f68b7098ba2cf7b83ab878420debe75cfb1 (patch) | |
| tree | 57760739fa541802c95cb79f2905d0dc9fad12a2 /src/caelestia/utils/theme.py | |
| parent | feat: theme spicetify (diff) | |
| download | caelestia-cli-63040f68b7098ba2cf7b83ab878420debe75cfb1.tar.gz caelestia-cli-63040f68b7098ba2cf7b83ab878420debe75cfb1.tar.bz2 caelestia-cli-63040f68b7098ba2cf7b83ab878420debe75cfb1.zip | |
feat: theme fuzzel
Diffstat (limited to 'src/caelestia/utils/theme.py')
| -rw-r--r-- | src/caelestia/utils/theme.py | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/caelestia/utils/theme.py b/src/caelestia/utils/theme.py index acca868..c4e9899 100644 --- a/src/caelestia/utils/theme.py +++ b/src/caelestia/utils/theme.py @@ -19,6 +19,13 @@ def gen_scss(colours: dict[str, str]) -> str: return scss +def gen_replace(colours: dict[str, str], template: Path) -> str: + template = template.read_text() + for name, colour in colours.items(): + template = template.replace(f"${name}", colour) + return template + + def c2s(c: str, *i: list[int]) -> str: """Hex to ANSI sequence (e.g. ffffff, 11 -> \x1b]11;rgb:ff/ff/ff\x1b\\)""" return f"\x1b]{';'.join(map(str, i))};rgb:{c[0:2]}/{c[2:4]}/{c[4:6]}\x1b\\" @@ -91,12 +98,13 @@ def apply_discord(scss: str) -> None: def apply_spicetify(colours: dict[str, str]) -> None: - template = (templates_dir / "spicetify.ini").read_text() + template = gen_replace(colours, templates_dir / "spicetify.ini") + try_write(config_dir / "spicetify/Themes/caelestia/color.ini", template) - for name, colour in colours.items(): - template = template.replace(f"${name}", colour) - try_write(config_dir / "spicetify/Themes/caelestia/color.ini", template) +def apply_fuzzel(colours: dict[str, str]) -> None: + template = gen_replace(colours, templates_dir / "fuzzel.ini") + try_write(config_dir / "fuzzel/fuzzel.ini", template) def apply_colours(colours: dict[str, str]) -> None: @@ -104,3 +112,4 @@ def apply_colours(colours: dict[str, str]) -> None: apply_hypr(gen_conf(colours)) apply_discord(gen_scss(colours)) apply_spicetify(colours) + apply_fuzzel(colours) |