Terminal color utility
Project description
Theme Manager for Scripts
The Theme Manager script facilitates easy management and validation of themes for your scripts, particularly focusing on the themes.d
directory configuration and usage of the Theme
object.
Configuration
themes.d Directory
The themes.d
directory serves as the repository for your theme files. By default, the Theme Manager looks for theme files in this directory unless specified otherwise.
Configuration File (hue.config)
The configuration file hue.config
stores essential settings for the Theme Manager, including:
default_theme
: Specifies the default theme to load if none is specified explicitly.themes_dir
: Defines the directory where theme files (*.theme
) are stored.manifest_file
: Indicates the file (MANIFEST
) containing theme hashes for validation.log_file
: Path to the log file (theme.log
) for recording theme management activities.
Ensure hue.config
is correctly configured to align with your environment and requirements.
Usage
Importing the Theme Object
To utilize themes in your script, import the Theme
object from the src
module:
from src import Theme
Managing Themes
Loading a Theme
You can load a theme using its file name or the default theme specified in hue.config
:
theme_manager = ThemeManager()
theme = theme_manager.get_theme_instance('my_theme.theme') # Load specific theme
Validating a Theme
Validate a theme against its hash in the manifest file to ensure integrity:
theme_manager = ThemeManager()
valid = theme_manager.validate_theme('my_theme.theme') # Validate specific theme
Useful Tidbits
- Dynamic Theme Loading: Themes are dynamically loaded and can be swapped during runtime based on your application's needs.
- Logging: The Theme Manager logs activities to
theme.log
, providing visibility into theme loading and validation operations. - Extensibility: Customize
hue.config
and extend theTheme
class as per your project's thematic requirements.
Example
hue import ThemeManager
# Initialize ThemeManager instance
theme_manager = ThemeManager()
theme_manager.setup_logging()
# Load and validate a specific theme
theme = theme_manager.get_theme_instance('my_theme.theme')
if theme:
print(f"Loaded theme: {theme.list_theme_attributes()}")
# Validate the loaded theme
valid = theme_manager.validate_theme('my_theme.theme')
if valid:
print("Theme validated successfully.")
else:
print("Failed to validate theme.")
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file huefy-1.2.2.tar.gz
.
File metadata
- Download URL: huefy-1.2.2.tar.gz
- Upload date:
- Size: 11.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07e94796c51eb72aa5af9fb8efa0bad8615ebac223e6c3c8a768cc9653beabef |
|
MD5 | ab990c3ee68f3fca522f3cc1aa2cd8d2 |
|
BLAKE2b-256 | 3b86abe5b35c31600fd0935994718fd83327ef45d7eed17e5790f3df327f11b8 |
File details
Details for the file huefy-1.2.2-py3-none-any.whl
.
File metadata
- Download URL: huefy-1.2.2-py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b226463a24a419e05f932c3949e071a4277005ca07756477dc4b87ba9d3f334 |
|
MD5 | 77d2796ec3854e3c3a2b2a013de0ad02 |
|
BLAKE2b-256 | b9a161c8d64638e7203a281b453157f1be4c9985ee5ab234cde4050c14d5384a |